aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui/input_spec.lua
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-04-27 16:54:59 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-04-29 15:51:04 +0800
commit04a437b280b13bd33c37e99c46403198126d5343 (patch)
tree93fd9f8d10e43d309c31655614d3c6927dda535b /test/functional/ui/input_spec.lua
parent096923e99067ba81d1f8f6bc5927920a1f5cceee (diff)
downloadrneovim-04a437b280b13bd33c37e99c46403198126d5343.tar.gz
rneovim-04a437b280b13bd33c37e99c46403198126d5343.tar.bz2
rneovim-04a437b280b13bd33c37e99c46403198126d5343.zip
vim-patch:8.2.4504: when there is a partially matching map full map may not work
Problem: When there is a partially matching map and modifyOtherKeys is active a full map may not work. Solution: Only simplify modifiers when there is no matching mapping. (closes vim/vim#8792) https://github.com/vim/vim/commit/196c3850dbe95247f7aa1b0000a5cae625a99ef2 Omit test as it sends terminal codes. Use a Lua test instead.
Diffstat (limited to 'test/functional/ui/input_spec.lua')
-rw-r--r--test/functional/ui/input_spec.lua11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/functional/ui/input_spec.lua b/test/functional/ui/input_spec.lua
index d137049d55..25fc9cdcd1 100644
--- a/test/functional/ui/input_spec.lua
+++ b/test/functional/ui/input_spec.lua
@@ -275,6 +275,17 @@ it('mixing simplified and unsimplified keys can trigger mapping vim-patch:8.2.09
expect('c-a')
end)
+it('unsimplified mapping works when there was a partial match vim-patch:8.2.4504', function()
+ command('set timeoutlen=10')
+ command('nnoremap <C-J> a')
+ command('nnoremap <NL> x')
+ command('nnoremap <C-J>x <Nop>')
+ funcs.setline(1, 'x')
+ -- CTRL-J b should have trigger the <C-J> mapping and then insert "b"
+ feed('<C-J>b<Esc>')
+ expect('xb')
+end)
+
describe('input non-printable chars', function()
after_each(function()
os.remove('Xtest-overwrite')