forked from aniani/vim
60 lines
1011 B
Plaintext
60 lines
1011 B
Plaintext
Tests for undo tree.
|
||
Since this script is sourced we need to explicitly break changes up in
|
||
undo-able pieces. Do that by setting 'undolevels'.
|
||
|
||
STARTTEST
|
||
:" Delete three characters and undo
|
||
Gx:set ul=100
|
||
x:set ul=100
|
||
x:.w! test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
:"
|
||
:/^111/w >>test.out
|
||
:" Delete three other characters and go back in time step by step
|
||
$x:set ul=100
|
||
x:set ul=100
|
||
x:.w >>test.out
|
||
:sleep 1
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
g-:.w >>test.out
|
||
10g+:.w >>test.out
|
||
:"
|
||
:/^222/w >>test.out
|
||
:" Delay for three seconds and go some seconds forward and backward
|
||
:sleep 2
|
||
Aa:set ul=100
|
||
Ab:set ul=100
|
||
Ac:set ul=100
|
||
:.w >>test.out
|
||
:ear 1s
|
||
:.w >>test.out
|
||
:ear 3s
|
||
:.w >>test.out
|
||
:later 1s
|
||
:.w >>test.out
|
||
:later 1h
|
||
:.w >>test.out
|
||
:"
|
||
:" test undojoin
|
||
Goaaaa:set ul=100
|
||
obbbbu:.w >>test.out
|
||
obbbb:set ul=100
|
||
:undojoin
|
||
occccu:.w >>test.out
|
||
:qa!
|
||
ENDTEST
|
||
|
||
1111 -----
|
||
2222 -----
|
||
|
||
123456789
|