forked from aniani/vim
Problem: When test 40 fails because of a bad build it may leave files
behind that cause it to fail later.
Solution: Let the file names start with "X".
64 lines
1.5 KiB
Plaintext
64 lines
1.5 KiB
Plaintext
Test for "*Cmd" autocommands
|
||
|
||
STARTTEST
|
||
:so small.vim
|
||
:/^start/,$w! Xxx " write lines below to Xxx
|
||
:au BufReadCmd XtestA 0r Xxx|$del
|
||
:e XtestA " will read text of Xxd instead
|
||
:au BufWriteCmd XtestA call append(line("$"), "write")
|
||
:w " will append a line to the file
|
||
:r XtestA " should not read anything
|
||
: " now we have:
|
||
: " 1 start of Xxx
|
||
: " 2 test40
|
||
: " 3 end of Xxx
|
||
: " 4 write
|
||
:au FileReadCmd XtestB '[r Xxx
|
||
:2r XtestB " will read Xxx below line 2 instead
|
||
: " 1 start of Xxx
|
||
: " 2 test40
|
||
: " 3 start of Xxx
|
||
: " 4 test40
|
||
: " 5 end of Xxx
|
||
: " 6 end of Xxx
|
||
: " 7 write
|
||
:au FileWriteCmd XtestC '[,']copy $
|
||
4GA1
|
||
:4,5w XtestC " will copy lines 4 and 5 to the end
|
||
:r XtestC " should not read anything
|
||
: " 1 start of Xxx
|
||
: " 2 test40
|
||
: " 3 start of Xxx
|
||
: " 4 test401
|
||
: " 5 end of Xxx
|
||
: " 6 end of Xxx
|
||
: " 7 write
|
||
: " 8 test401
|
||
: " 9 end of Xxx
|
||
:au FILEAppendCmd XtestD '[,']w! test.out
|
||
:w >>XtestD " will write all lines to test.out
|
||
:$r XtestD " should not read anything
|
||
:$w >>test.out " append "end of Xxx" to test.out
|
||
:au BufReadCmd XtestE 0r test.out|$del
|
||
:sp XtestE " split window with test.out
|
||
5Goasdf:"
|
||
:au BufWriteCmd XtestE w! test.out
|
||
:wall " will write other window to test.out
|
||
: " 1 start of Xxx
|
||
: " 2 test40
|
||
: " 3 start of Xxx
|
||
: " 4 test401
|
||
: " 5 end of Xxx
|
||
: " 6 asdf
|
||
: " 7 end of Xxx
|
||
: " 8 write
|
||
: " 9 test401
|
||
: " 10 end of Xxx
|
||
: " 11 end of Xxx
|
||
:qa!
|
||
ENDTEST
|
||
|
||
start of Xxx
|
||
test40
|
||
end of Xxx
|