mirror of
https://github.com/neovim/neovim.git
synced 2025-09-05 19:08:15 +00:00

Problem: vim-tiny fails on CTRL-X/CTRL-A
(Rob Foehl, after 9.1.0172)
Solution: Move #ifdefs, so that after changing the line in del_bytes,
the cached textlen value is invalidated
closes: vim/vim#15178
03acd4761b
Co-authored-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
57 lines
1.2 KiB
Lua
57 lines
1.2 KiB
Lua
-- Test for sourcing a file with CTRL-V's at the end of the line
|
||
|
||
local n = require('test.functional.testnvim')()
|
||
|
||
local clear, feed, insert = n.clear, n.feed, n.insert
|
||
local feed_command, expect = n.feed_command, n.expect
|
||
|
||
describe('028', function()
|
||
before_each(clear)
|
||
|
||
it('CTRL-V at the end of the line is working', function()
|
||
insert([[
|
||
firstline
|
||
map __1 afirst
|
||
map __2 asecond
|
||
map __3 athird
|
||
map __4 afourth
|
||
map __5 afifth
|
||
map __1 asdX
|
||
map __2 asdXX
|
||
map __3 asdXX
|
||
map __4 asdXXX
|
||
map __5 asdXXX
|
||
lastline]])
|
||
|
||
feed(':%s/X/<C-v><C-v>/g<cr>')
|
||
feed(':/firstline/+1,/lastline/-1w! Xtestfile<cr>')
|
||
feed_command('so Xtestfile')
|
||
feed_command('%d')
|
||
feed('Gmm__1<Esc><Esc>__2<Esc>__3<Esc><Esc>__4<Esc>__5<Esc>')
|
||
feed(":'m,$s/<C-v><C-@>/0/g<cr>")
|
||
|
||
expect([[
|
||
sd
|
||
map __2 asdsecondsdsd0map __5 asd0fifth]])
|
||
end)
|
||
|
||
it('CTRL-X/CTRL-A is working', function()
|
||
insert([[
|
||
12352
|
||
|
||
12354]])
|
||
feed_command('/12352')
|
||
feed('<C-A>')
|
||
feed_command('/12354')
|
||
feed('<C-X>')
|
||
expect([[
|
||
12353
|
||
|
||
12353]])
|
||
end)
|
||
|
||
teardown(function()
|
||
os.remove('Xtestfile')
|
||
end)
|
||
end)
|