-- Test Virtual replace mode. local n = require('test.functional.testnvim')() local feed = n.feed local clear, feed_command, expect = n.clear, n.feed_command, n.expect describe('Virtual replace mode', function() setup(clear) -- luacheck: ignore 621 (Indentation) it('is working', function() -- Make sure that backspace works, no matter what termcap is used. feed_command('set t_kD=x7f t_kb=x08') -- Use vi default for 'smarttab' feed_command('set nosmarttab') feed('ggdGa') feed('abcdefghi') feed('jklmn') feed('opqrst') feed('uvwxyz') feed('gg') feed_command('set ai') feed_command('set bs=2') feed('gR0 1') feed('A') feed('BCDEFGHIJ') feed('KL') feed('MNO') feed('PQRG') feed_command('ka') feed('o0') feed('abcdefghi') feed('jklmn') feed('opqrst') feed('uvwxyz') feed([['ajgR0 1]]) feed('A') feed('BCDEFGHIJ') feed('KL') feed('MNO') feed( 'PQR:$' ) feed('iabcdefghijkl0gRAB......CDEFGHI.Jo:') feed('iabcdefghijklmnopqrst0gRABIJKLMNOQR') -- Assert buffer contents. expect([=[ 1 A BCDEFGHIJ KL MNO PQR 1 abcdefghi jk lmn opq rst uvwxyz AB......CDEFGHI.Jkl AB IJKLMNO QRst]=]) end) end)