From a200ce0d8580f40a36c313a26db2377c1812abe2 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Thu, 12 May 2022 23:38:26 +0800 Subject: vim-patch:8.2.4941: '[ and '] marks may be wrong after undo (#18539) Problem: '[ and '] marks may be wrong after undo. Solution: Adjust the '[ and '] marks if needed. (closes vim/vim#10407, closes vim/vim#1281) https://github.com/vim/vim/commit/82444cefa3fef87624a078ea86a72af7ef4ef42e --- src/nvim/testdir/test_undo.vim | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/nvim/testdir/test_undo.vim') diff --git a/src/nvim/testdir/test_undo.vim b/src/nvim/testdir/test_undo.vim index 30e00e7ad4..848860649e 100644 --- a/src/nvim/testdir/test_undo.vim +++ b/src/nvim/testdir/test_undo.vim @@ -733,4 +733,21 @@ func Test_undofile_cryptmethod_blowfish2() set undofile& undolevels& cryptmethod& endfunc +func Test_undo_mark() + new + " The undo is applied to the only line. + call setline(1, 'hello') + call feedkeys("ggyiw$p", 'xt') + undo + call assert_equal([0, 1, 1, 0], getpos("'[")) + call assert_equal([0, 1, 1, 0], getpos("']")) + " The undo removes the last line. + call feedkeys("Goaaaa\", 'xt') + call feedkeys("obbbb\", 'xt') + undo + call assert_equal([0, 2, 1, 0], getpos("'[")) + call assert_equal([0, 2, 1, 0], getpos("']")) + bwipe! +endfunc + " vim: shiftwidth=2 sts=2 expandtab -- cgit