diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-05-28 10:49:44 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-05-28 10:49:44 +0100 |
commit | e6f13b473cf2c270e4eab214e09be9825320c11b (patch) | |
tree | 3905eaf26b380ff2304fb3679280bd98fa01bdd1 /src/testdir/test_changelist.vim | |
parent | 5a6ec10cc80ab02eeff644ab19b82312630ea855 (diff) |
patch 8.2.5035: when splitting a window the changelist position movesv8.2.5035
Problem: When splitting a window the changelist position moves.
Solution: Set the changelist index a bit later. (closes #10493)
Diffstat (limited to 'src/testdir/test_changelist.vim')
-rw-r--r-- | src/testdir/test_changelist.vim | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/testdir/test_changelist.vim b/src/testdir/test_changelist.vim index f429968218..3bb22a89b8 100644 --- a/src/testdir/test_changelist.vim +++ b/src/testdir/test_changelist.vim @@ -1,5 +1,40 @@ " Tests for the changelist functionality +" When splitting a window the changelist position is wrong. +" Test the changelist position after splitting a window. +" Test for the bug fixed by 7.4.386 +func Test_changelist() + let save_ul = &ul + enew! + call append('$', ['1', '2']) + exe "normal i\<C-G>u" + exe "normal Gkylpa\<C-G>u" + set ul=100 + exe "normal Gylpa\<C-G>u" + set ul=100 + normal gg + vsplit + normal g; + call assert_equal([3, 2], [line('.'), col('.')]) + normal g; + call assert_equal([2, 2], [line('.'), col('.')]) + call assert_fails('normal g;', 'E662:') + new + call assert_fails('normal g;', 'E664:') + %bwipe! + let &ul = save_ul +endfunc + +" Moving a split should not change its changelist index. +func Test_changelist_index_move_split() + exe "norm! iabc\<C-G>u\ndef\<C-G>u\nghi" + vsplit + normal 99g; + call assert_equal(0, getchangelist('%')[1]) + wincmd L + call assert_equal(0, getchangelist('%')[1]) +endfunc + " Tests for the getchangelist() function func Test_changelist_index() edit Xfile1.txt |