diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/normal.c | 1 | ||||
-rw-r--r-- | src/nvim/testdir/test_visual.vim | 9 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/nvim/normal.c b/src/nvim/normal.c index ffcf659d28..4c3d7d58de 100644 --- a/src/nvim/normal.c +++ b/src/nvim/normal.c @@ -3277,6 +3277,7 @@ static void clearop(oparg_T *oap) oap->regname = 0; oap->motion_force = NUL; oap->use_reg_one = false; + motion_force = NUL; } static void clearopbeep(oparg_T *oap) diff --git a/src/nvim/testdir/test_visual.vim b/src/nvim/testdir/test_visual.vim index 9c62bdb16e..dbabdcf427 100644 --- a/src/nvim/testdir/test_visual.vim +++ b/src/nvim/testdir/test_visual.vim @@ -861,6 +861,15 @@ func Test_visual_block_mode() set tabstop& shiftwidth& endfunc +func Test_visual_force_motion_feedkeys() + onoremap <expr> i- execute('let g:mode = mode(1)') + call feedkeys('dvi-', 'x') + call assert_equal('nov', g:mode) + call feedkeys('di-', 'x') + call assert_equal('no', g:mode) + ounmap i- +endfunc + " Test block-insert using cursor keys for movement func Test_visual_block_insert_cursor_keys() new |