Mercurial > vim
view src/testdir/test40.in @ 7092:64e30831fa42 v7.4.858
commit https://github.com/vim/vim/commit/aa23b379421aa214e6543b06c974594a25799b09
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Sep 8 18:46:31 2015 +0200
patch 7.4.858
Problem: It's a bit clumsy to execute a command on a list of matches.
Solution: Add the ":ldo", ":lfdo", ":cdo" and ":cfdo" commands. (Yegappan
Lakshmanan)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 08 Sep 2015 19:00:05 +0200 |
parents | ad7b6062a7f4 |
children |
line wrap: on
line source
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