mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.1.0668: no test for overstrike mode in the command line
Problem: No test for overstrike mode in the command line. Solution: Add a test. (Dominique Pelle, closes #3742)
This commit is contained in:
parent
2f21fa8743
commit
c0676bab92
@ -581,4 +581,33 @@ func Test_setcmdpos()
|
||||
call assert_equal(1, setcmdpos(3))
|
||||
endfunc
|
||||
|
||||
func Test_cmdline_overstrike()
|
||||
let encodings = has('multi_byte') ? [ 'latin1', 'utf8' ] : [ 'latin1' ]
|
||||
let encoding_save = &encoding
|
||||
|
||||
for e in encodings
|
||||
exe 'set encoding=' . e
|
||||
|
||||
" Test overstrike in the middle of the command line.
|
||||
call feedkeys(":\"01234\<home>\<right>\<right>ab\<right>\<insert>cd\<enter>", 'xt')
|
||||
call assert_equal('"0ab1cd4', @:)
|
||||
|
||||
" Test overstrike going beyond end of command line.
|
||||
call feedkeys(":\"01234\<home>\<right>\<right>ab\<right>\<insert>cdefgh\<enter>", 'xt')
|
||||
call assert_equal('"0ab1cdefgh', @:)
|
||||
|
||||
" Test toggling insert/overstrike a few times.
|
||||
call feedkeys(":\"01234\<home>\<right>ab\<right>\<insert>cd\<right>\<insert>ef\<enter>", 'xt')
|
||||
call assert_equal('"ab0cd3ef4', @:)
|
||||
endfor
|
||||
|
||||
if has('multi_byte')
|
||||
" Test overstrike with multi-byte characters.
|
||||
call feedkeys(":\"テキストエディタ\<home>\<right>\<right>ab\<right>\<insert>cd\<enter>", 'xt')
|
||||
call assert_equal('"テabキcdエディタ', @:)
|
||||
endif
|
||||
|
||||
let &encoding = encoding_save
|
||||
endfunc
|
||||
|
||||
set cpo&
|
||||
|
@ -799,6 +799,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
668,
|
||||
/**/
|
||||
667,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user