Mercurial > vim
view src/testdir/test_textobjects.vim @ 11478:29a781fd3f27 v8.0.0622
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
commit https://github.com/vim/vim/commit/c5e2b040b490c2f4dd50c945840bc176bfcccb29
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jun 5 16:37:07 2017 +0200
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Problem: Using a text object to select quoted text fails when 'selection'
is set to "exclusive". (Guraga)
Solution: Swap cursor and visual start position. (Christian Brabandt,
closes #1687)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 05 Jun 2017 16:45:03 +0200 |
parents | ae45d497868f |
children | 44aa2997239d |
line wrap: on
line source
" Test for textobjects if !has('textobjects') finish endif set belloff=all func CpoM(line, useM, expected) new if a:useM set cpoptions+=M else set cpoptions-=M endif call setline(1, a:line) call setreg('"', '') normal! ggfrmavi)y call assert_equal(getreg('"'), a:expected[0]) call setreg('"', '') normal! `afbmavi)y call assert_equal(getreg('"'), a:expected[1]) call setreg('"', '') normal! `afgmavi)y call assert_equal(getreg('"'), a:expected[2]) q! endfunc func Test_inner_block_without_cpo_M() call CpoM('(red \(blue) green)', 0, ['red \(blue', 'red \(blue', '']) endfunc func Test_inner_block_with_cpo_M_left_backslash() call CpoM('(red \(blue) green)', 1, ['red \(blue) green', 'blue', 'red \(blue) green']) endfunc func Test_inner_block_with_cpo_M_right_backslash() call CpoM('(red (blue\) green)', 1, ['red (blue\) green', 'blue\', 'red (blue\) green']) endfunc func Test_quote_selection_selection_exclusive() new call setline(1, "a 'bcde' f") set selection=exclusive exe "norm! fdvhi'y" call assert_equal('bcde', @") set selection&vim bw! endfunc