aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMagnus Groß <magnus.gross@rwth-aachen.de>2021-10-03 16:15:28 +0200
committerMagnus Groß <magnus.gross@rwth-aachen.de>2021-11-18 11:23:18 +0100
commitfc3e5caefd2896f37f50222ca0b0c3a46f83deca (patch)
treef32d1bf3e779b3a61f2bf022e28694538e66e928
parent69bd1e4e36fa3e3f604740c92b15b13141520822 (diff)
downloadrneovim-fc3e5caefd2896f37f50222ca0b0c3a46f83deca.tar.gz
rneovim-fc3e5caefd2896f37f50222ca0b0c3a46f83deca.tar.bz2
rneovim-fc3e5caefd2896f37f50222ca0b0c3a46f83deca.zip
vim-patch:8.2.3462: ModeChanged only uses one character for new_mode and old_mode
Problem: The ModeChanged event only uses one character for the new_mode and old_mode values. Solution: Pass one as first argument to mode(). (issue vim/vim#8856) https://github.com/vim/vim/commit/d85931e67316e824878000d0ead122553ccef3a4
-rw-r--r--src/nvim/testdir/test_edit.vim6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/nvim/testdir/test_edit.vim b/src/nvim/testdir/test_edit.vim
index 75e30502b8..40cee63064 100644
--- a/src/nvim/testdir/test_edit.vim
+++ b/src/nvim/testdir/test_edit.vim
@@ -1655,7 +1655,7 @@ func Test_mode_changes()
func! TestMode()
call assert_equal(g:mode_seq[g:index], get(v:event, "old_mode"))
call assert_equal(g:mode_seq[g:index + 1], get(v:event, "new_mode"))
- call assert_equal(mode(), get(v:event, "new_mode"))
+ call assert_equal(mode(1), get(v:event, "new_mode"))
let g:index += 1
endfunc
@@ -1667,7 +1667,11 @@ func Test_mode_changes()
au ModeChanged V:v :call DoIt()
call feedkeys("Vv\<esc>", 'tnix')
call assert_equal(4, g:count)
+ call assert_equal(len(g:mode_seq) - 1, g:index)
+ let g:index = 0
+ let g:mode_seq = ['n', 'i', 'niI', 'i', 'n']
+ call feedkeys("a\<C-O>l\<esc>", 'tnix')
call assert_equal(len(g:mode_seq) - 1, g:index)
au! ModeChanged