我想在开放缓冲区的每一行上运行一个我刚刚记录在寄存器“x
”中的宏,从光标到缓冲区的末尾,在vim中。我该怎么做?
我知道我可以重播宏n次:
15@x
...或者只是按住@
直到我到达最后一行,但我想点击几下击键并完成它。
提前致谢。
答案 0 :(得分:89)
就我个人而言
VG:normal @x
编辑:将寄存器更改为您指定的寄存器。
答案 1 :(得分:58)
你可以(在命令模式下)
:%normal @x
答案 2 :(得分:22)
制作递归宏:
qa@aq
例如:
qa0gUwj@aq
它将使用单个@a UPCASE从当前行到文件末尾的第一个单词。 但请确保“寄存器为空:
let @a=""
答案 3 :(得分:9)
999999@x
,除非你有一个非常大的缓冲区......
答案 4 :(得分:-1)
来自vim wiki,缩短版本: qqqqq记录宏 @qq完成录制 @q执行它(并将运行到文件末尾)