diff options
| author | zeertzjq <zeertzjq@outlook.com> | 2022-05-05 07:23:27 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-05-05 07:23:27 +0800 |
| commit | beb8f484891f5361cc2ee757b93b4e4aba228612 (patch) | |
| tree | d8055e292e6c3a6936f01e137f6ea87add838dbf /src/nvim/testdir/test_mapping.vim | |
| parent | 6798f1fab0244ee535675fa9100945eec074e6e4 (diff) | |
| download | rneovim-beb8f484891f5361cc2ee757b93b4e4aba228612.tar.gz rneovim-beb8f484891f5361cc2ee757b93b4e4aba228612.tar.bz2 rneovim-beb8f484891f5361cc2ee757b93b4e4aba228612.zip | |
vim-patch:8.2.4867: listing of mapping with K_SPECIAL is wrong (#18419)
Problem: Listing of mapping with K_SPECIAL is wrong.
Solution: Adjust escaping of special characters. (closes vim/vim#10351)
https://github.com/vim/vim/commit/ac402f4d64bec6b6efd809fef52f5b34627bf947
Avoid overshadowing.
Cherry-pick Test_list_mapping() from Vim patches 8.2.{0148,2994}.
Fix rhs_is_noop.
Diffstat (limited to 'src/nvim/testdir/test_mapping.vim')
| -rw-r--r-- | src/nvim/testdir/test_mapping.vim | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_mapping.vim b/src/nvim/testdir/test_mapping.vim index 752b1700d0..b5158295b4 100644 --- a/src/nvim/testdir/test_mapping.vim +++ b/src/nvim/testdir/test_mapping.vim @@ -464,6 +464,40 @@ func Test_list_mappings() call assert_equal(['n ,n <Nop>'], \ execute('nmap ,n')->trim()->split("\n")) + " verbose map + call assert_match("\tLast set from .*/test_mapping.vim line \\d\\+$", + \ execute('verbose map ,n')->trim()->split("\n")[1]) + + " character with K_SPECIAL byte in rhs + nmap foo … + call assert_equal(['n foo …'], + \ execute('nmap foo')->trim()->split("\n")) + + " modified character with K_SPECIAL byte in rhs + nmap foo <M-…> + call assert_equal(['n foo <M-…>'], + \ execute('nmap foo')->trim()->split("\n")) + + " character with K_SPECIAL byte in lhs + nmap … foo + call assert_equal(['n … foo'], + \ execute('nmap …')->trim()->split("\n")) + + " modified character with K_SPECIAL byte in lhs + nmap <M-…> foo + call assert_equal(['n <M-…> foo'], + \ execute('nmap <M-…>')->trim()->split("\n")) + + " map to CTRL-V + exe "nmap ,k \<C-V>" + call assert_equal(['n ,k <Nop>'], + \ execute('nmap ,k')->trim()->split("\n")) + + " map with space at the beginning + exe "nmap \<C-V> w <Nop>" + call assert_equal(['n <Space>w <Nop>'], + \ execute("nmap \<C-V> w")->trim()->split("\n")) + nmapclear endfunc |