diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-04-29 20:50:14 +0800 |
---|---|---|
committer | zeertzjq <zeertzjq@outlook.com> | 2022-04-29 21:12:48 +0800 |
commit | 98f62a2cfa98363217fdfcf96b6c636e91dba84d (patch) | |
tree | e3b037813de3eb2f0133608d2a5d3df6bd9ef123 /test/functional/ex_cmds/cmd_map_spec.lua | |
parent | 8c548c9e5416b4e25b51c018ceaa433756ee99b1 (diff) | |
download | rneovim-98f62a2cfa98363217fdfcf96b6c636e91dba84d.tar.gz rneovim-98f62a2cfa98363217fdfcf96b6c636e91dba84d.tar.bz2 rneovim-98f62a2cfa98363217fdfcf96b6c636e91dba84d.zip |
feat(mappings): allow special keys and modifiers in <Cmd> mapping
Diffstat (limited to 'test/functional/ex_cmds/cmd_map_spec.lua')
-rw-r--r-- | test/functional/ex_cmds/cmd_map_spec.lua | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/test/functional/ex_cmds/cmd_map_spec.lua b/test/functional/ex_cmds/cmd_map_spec.lua index 64cf53dfa9..dbbfadabd8 100644 --- a/test/functional/ex_cmds/cmd_map_spec.lua +++ b/test/functional/ex_cmds/cmd_map_spec.lua @@ -93,7 +93,7 @@ describe('mappings with <Cmd>', function() {2:E5521: <Cmd> mapping must end with <CR> before second <Cmd>} | ]]) - command('noremap <F3> <Cmd><F3>let x = 2<cr>') + command('noremap <F3> <Cmd>let x = 3') feed('<F3>') screen:expect([[ ^some short lines | @@ -103,22 +103,37 @@ describe('mappings with <Cmd>', function() {1:~ }| {1:~ }| {1:~ }| - {2:E5522: <Cmd> mapping must not include <F3> key} | + {2:E5520: <Cmd> mapping must end with <CR>} | ]]) + eq(0, eval('x')) + end) - command('noremap <F3> <Cmd>let x = 3') + it('allows special keys and modifiers', function() + command('noremap <F3> <Cmd>normal! <Down><CR>') feed('<F3>') screen:expect([[ - ^some short lines | - of test text | + some short lines | + ^of test text | {1:~ }| {1:~ }| {1:~ }| {1:~ }| {1:~ }| - {2:E5520: <Cmd> mapping must end with <CR>} | + | + ]]) + + command('noremap <F3> <Cmd>normal! <C-Right><CR>') + feed('<F3>') + screen:expect([[ + some short lines | + of ^test text | + {1:~ }| + {1:~ }| + {1:~ }| + {1:~ }| + {1:~ }| + | ]]) - eq(0, eval('x')) end) it('works in various modes and sees correct `mode()` value', function() |