mirror of
https://github.com/neovim/neovim.git
synced 2025-09-27 13:38:34 +00:00
vim-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 vim/vim#3742)
c0676bab92
This commit is contained in:
@@ -522,4 +522,33 @@ func Test_setcmdpos()
|
|||||||
call assert_equal(1, setcmdpos(3))
|
call assert_equal(1, setcmdpos(3))
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_cmdline_overstrike()
|
||||||
|
let encodings = has('multi_byte') ? [ '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&
|
set cpo&
|
||||||
|
Reference in New Issue
Block a user