diff options
| author | zeertzjq <zeertzjq@outlook.com> | 2022-01-13 18:26:36 +0800 |
|---|---|---|
| committer | zeertzjq <zeertzjq@outlook.com> | 2022-01-14 07:31:21 +0800 |
| commit | e1b557d9130c94f72c2d836bf814a884c470809f (patch) | |
| tree | 2cf2f5bb7ba1e498f91f1eeb13c3ada821d97776 /src/nvim/testdir/test_virtualedit.vim | |
| parent | 9b04336445c85b5bc4920d18072066e8ad01d6af (diff) | |
| download | rneovim-e1b557d9130c94f72c2d836bf814a884c470809f.tar.gz rneovim-e1b557d9130c94f72c2d836bf814a884c470809f.tar.bz2 rneovim-e1b557d9130c94f72c2d836bf814a884c470809f.zip | |
vim-patch:8.1.2375: no suffucient testing for registers
Problem: No suffucient testing for registers.
Solution: Add more test cases. (Yegappan Lakshmanan, closes vim/vim#5296)
Fix that "p" on last virtual column of tab inserts spaces.
https://github.com/vim/vim/commit/6f1f0ca3edf395102ff3109c998d81300c8be3c9
This patch doesn't actually change any behavior in Nvim, because Nvim
always has vartabs feature.
I modified a line in the test because of #6137.
Diffstat (limited to 'src/nvim/testdir/test_virtualedit.vim')
| -rw-r--r-- | src/nvim/testdir/test_virtualedit.vim | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_virtualedit.vim b/src/nvim/testdir/test_virtualedit.vim index 8f992f7501..0a218898ed 100644 --- a/src/nvim/testdir/test_virtualedit.vim +++ b/src/nvim/testdir/test_virtualedit.vim @@ -81,6 +81,48 @@ func Test_edit_change() normal Cx call assert_equal('x', getline(1)) bwipe! + set virtualedit= +endfunc + +" Test for pasting before and after a tab character +func Test_paste_in_tab() + new + let @" = 'xyz' + set virtualedit=all + call append(0, "a\tb") + call cursor(1, 2, 6) + normal p + call assert_equal("a\txyzb", getline(1)) + call setline(1, "a\tb") + call cursor(1, 2) + normal P + call assert_equal("axyz\tb", getline(1)) + + " Test for virtual block paste + call setreg('"', 'xyz', 'b') + call setline(1, "a\tb") + call cursor(1, 2, 6) + normal p + call assert_equal("a\txyzb", getline(1)) + call setline(1, "a\tb") + call cursor(1, 2, 6) + normal P + call assert_equal("a xyz b", getline(1)) + + " Test for virtual block paste with gp and gP + call setline(1, "a\tb") + call cursor(1, 2, 6) + normal gp + call assert_equal("a\txyzb", getline(1)) + call assert_equal([0, 1, 6, 0, 12], getcurpos()) + call setline(1, "a\tb") + call cursor(1, 2, 6) + normal gP + call assert_equal("a xyz b", getline(1)) + call assert_equal([0, 1, 12, 0 ,12], getcurpos()) + + bwipe! + set virtualedit= endfunc " Insert "keyword keyw", ESC, C CTRL-N, shows "keyword ykeyword". |