1
0
forked from aniani/vim

patch 8.2.4867: listing of mapping with K_SPECIAL is wrong

Problem:    Listing of mapping with K_SPECIAL is wrong.
Solution:   Adjust escaping of special characters. (closes #10351)
This commit is contained in:
zeertzjq
2022-05-04 18:51:43 +01:00
committed by Bram Moolenaar
parent 47d4e317f8
commit ac402f4d64
4 changed files with 41 additions and 19 deletions

View File

@@ -482,6 +482,26 @@ func Test_list_mappings()
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
nmapfoo
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>'],