mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Merge pull request #22303 from zeertzjq/vim-9.0.1315
vim-patch:9.0.1315: escaping for completion of map command not properly tested
This commit is contained in:
commit
bb369a14f3
@ -1194,7 +1194,7 @@ static char *translate_mapping(char_u *str, int cpo_flags)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (c == ' ' || c == '\t' || c == Ctrl_J || c == Ctrl_V
|
if (c == ' ' || c == '\t' || c == Ctrl_J || c == Ctrl_V
|
||||||
|| (c == '\\' && !cpo_bslash)) {
|
|| c == '<' || (c == '\\' && !cpo_bslash)) {
|
||||||
ga_append(&ga, cpo_bslash ? Ctrl_V : '\\');
|
ga_append(&ga, cpo_bslash ? Ctrl_V : '\\');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2720,7 +2720,7 @@ func Test_autocmd_bufreadpre()
|
|||||||
close
|
close
|
||||||
close
|
close
|
||||||
call delete('XAutocmdBufReadPre.txt')
|
call delete('XAutocmdBufReadPre.txt')
|
||||||
" set cpo-=g
|
set cpo-=g
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
" FileChangedShell tested in test_filechanged.vim
|
" FileChangedShell tested in test_filechanged.vim
|
||||||
|
@ -330,17 +330,21 @@ func Test_map_completion()
|
|||||||
call assert_equal('"map <Left>', getreg(':'))
|
call assert_equal('"map <Left>', getreg(':'))
|
||||||
call feedkeys(":map <A-Left>\<Tab>\<Home>\"\<CR>", 'xt')
|
call feedkeys(":map <A-Left>\<Tab>\<Home>\"\<CR>", 'xt')
|
||||||
call assert_equal("\"map <A-Left>\<Tab>", getreg(':'))
|
call assert_equal("\"map <A-Left>\<Tab>", getreg(':'))
|
||||||
|
call feedkeys(":map <M-Left>\<Tab>\<Home>\"\<CR>", 'xt')
|
||||||
|
call assert_equal("\"map <M-Left>x", getreg(':'))
|
||||||
unmap ,f
|
unmap ,f
|
||||||
unmap ,g
|
unmap ,g
|
||||||
unmap <Left>
|
unmap <Left>
|
||||||
unmap <A-Left>x
|
unmap <A-Left>x
|
||||||
|
|
||||||
set cpo-=< cpo-=B cpo-=k
|
set cpo-=< cpo-=k
|
||||||
map <Left> left
|
map <Left> left
|
||||||
call feedkeys(":map <L\<Tab>\<Home>\"\<CR>", 'xt')
|
call feedkeys(":map <L\<Tab>\<Home>\"\<CR>", 'xt')
|
||||||
call assert_equal('"map <Left>', getreg(':'))
|
call assert_equal('"map <Left>', getreg(':'))
|
||||||
call feedkeys(":map <M\<Tab>\<Home>\"\<CR>", 'xt')
|
call feedkeys(":map <M\<Tab>\<Home>\"\<CR>", 'xt')
|
||||||
" call assert_equal("\"map <M\<Tab>", getreg(':'))
|
call assert_equal("\"map <M\<Tab>", getreg(':'))
|
||||||
|
call feedkeys(":map \<C-V>\<C-V><M\<Tab>\<Home>\"\<CR>", 'xt')
|
||||||
|
call assert_equal("\"map \<C-V><Middle>x", getreg(':'))
|
||||||
unmap <Left>
|
unmap <Left>
|
||||||
|
|
||||||
" set cpo+=<
|
" set cpo+=<
|
||||||
@ -369,7 +373,7 @@ func Test_map_completion()
|
|||||||
call feedkeys(":map <L\<Tab>\<Home>\"\<CR>", 'xt')
|
call feedkeys(":map <L\<Tab>\<Home>\"\<CR>", 'xt')
|
||||||
call assert_equal('"map <Left>', getreg(':'))
|
call assert_equal('"map <Left>', getreg(':'))
|
||||||
unmap <Left>
|
unmap <Left>
|
||||||
" set cpo-=k
|
set cpo-=k
|
||||||
|
|
||||||
call assert_fails('call feedkeys(":map \\\\%(\<Tab>\<Home>\"\<CR>", "xt")', 'E53:')
|
call assert_fails('call feedkeys(":map \\\\%(\<Tab>\<Home>\"\<CR>", "xt")', 'E53:')
|
||||||
|
|
||||||
|
@ -68,15 +68,20 @@ endfunc
|
|||||||
func Test_cpo_B()
|
func Test_cpo_B()
|
||||||
let save_cpo = &cpo
|
let save_cpo = &cpo
|
||||||
new
|
new
|
||||||
|
imap <buffer> x<Bslash>k Test
|
||||||
set cpo-=B
|
set cpo-=B
|
||||||
iabbr <buffer> abc ab\<BS>d
|
iabbr <buffer> abc ab\<BS>d
|
||||||
exe "normal iabc "
|
exe "normal iabc "
|
||||||
call assert_equal('ab<BS>d ', getline(1))
|
call assert_equal('ab<BS>d ', getline(1))
|
||||||
|
call feedkeys(":imap <buffer> x\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||||
|
call assert_equal('"imap <buffer> x\\k', @:)
|
||||||
%d
|
%d
|
||||||
set cpo+=B
|
set cpo+=B
|
||||||
iabbr <buffer> abc ab\<BS>d
|
iabbr <buffer> abc ab\<BS>d
|
||||||
exe "normal iabc "
|
exe "normal iabc "
|
||||||
call assert_equal('abd ', getline(1))
|
call assert_equal('abd ', getline(1))
|
||||||
|
call feedkeys(":imap <buffer> x\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||||
|
call assert_equal('"imap <buffer> x\k', @:)
|
||||||
close!
|
close!
|
||||||
let &cpo = save_cpo
|
let &cpo = save_cpo
|
||||||
endfunc
|
endfunc
|
||||||
@ -195,7 +200,8 @@ func Test_cpo_f()
|
|||||||
set cpo+=f
|
set cpo+=f
|
||||||
read test_cpoptions.vim
|
read test_cpoptions.vim
|
||||||
call assert_equal('test_cpoptions.vim', @%)
|
call assert_equal('test_cpoptions.vim', @%)
|
||||||
close!
|
|
||||||
|
bwipe!
|
||||||
let &cpo = save_cpo
|
let &cpo = save_cpo
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
@ -428,7 +434,7 @@ func Test_cpo_O()
|
|||||||
let &cpo = save_cpo
|
let &cpo = save_cpo
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
" Test for the 'p' flag in 'cpo' is in the test_lispwords.vim file.
|
" Test for the 'p' flag in 'cpo' is in the test_lispindent.vim file.
|
||||||
|
|
||||||
" Test for the 'P' flag in 'cpo' (appending to a file sets the current file
|
" Test for the 'P' flag in 'cpo' (appending to a file sets the current file
|
||||||
" name)
|
" name)
|
||||||
@ -444,7 +450,8 @@ func Test_cpo_P()
|
|||||||
set cpo+=P
|
set cpo+=P
|
||||||
write >> XfileCpoP
|
write >> XfileCpoP
|
||||||
call assert_equal('XfileCpoP', @%)
|
call assert_equal('XfileCpoP', @%)
|
||||||
close!
|
|
||||||
|
bwipe!
|
||||||
call delete('XfileCpoP')
|
call delete('XfileCpoP')
|
||||||
let &cpo = save_cpo
|
let &cpo = save_cpo
|
||||||
endfunc
|
endfunc
|
||||||
|
Loading…
Reference in New Issue
Block a user