From e50aa2a6c65453067ae3554157fdd31ac8af6168 Mon Sep 17 00:00:00 2001 From: Björn Linse Date: Tue, 4 Jun 2019 13:12:57 +0200 Subject: normal: Don't exit CTRL-O mode after processing K_EVENT --- test/functional/insert/ctrl_o_spec.lua | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'test') diff --git a/test/functional/insert/ctrl_o_spec.lua b/test/functional/insert/ctrl_o_spec.lua index fbdff8a3a0..543d0a7d68 100644 --- a/test/functional/insert/ctrl_o_spec.lua +++ b/test/functional/insert/ctrl_o_spec.lua @@ -5,6 +5,7 @@ local eval = helpers.eval local expect = helpers.expect local feed = helpers.feed local insert = helpers.insert +local meths = helpers.meths describe('insert-mode Ctrl-O', function() before_each(clear) @@ -40,4 +41,14 @@ describe('insert-mode Ctrl-O', function() feed('ooo') expect('hello oooworld') end) + + it("doesn't cancel Ctrl-O mode when processing event", function() + feed('iHello World') + eq({mode='niI', blocking=false}, meths.get_mode()) -- fast event + eq(2, eval('1+1')) -- causes K_EVENT key + eq({mode='niI', blocking=false}, meths.get_mode()) -- still in ctrl-o mode + feed('dd') + eq({mode='i', blocking=false}, meths.get_mode()) -- left ctrl-o mode + expect('') -- executed the command + end) end) -- cgit