我有一个包含一堆行的文件。我录制了一个在单行上执行操作的宏。我想在文件中的所有剩余行上重复该宏。有没有快速的方法来做到这一点?
我尝试了 Ctrl+Q,突出显示一组行,然后按 @@,但这似乎没有效果。
最佳答案
使用normal Ex模式下的命令在多行/所有行上执行宏:
执行第 5 行至第 10 行寄存器 a 中存储的宏。
:5,10norm! @a
从第 5 行到文件末尾执行寄存器 a 中存储的宏。
:5,$norm! @a
在所有行上执行寄存器a中存储的宏。
:%norm! @a
在匹配模式的所有行上执行寄存器a中的宏存储。
:g/pattern/norm! @a
要在可视选择的行上执行宏,请按 V 和 j 或 k 直至选择所需区域。然后输入 :norm! @a
并观察显示的以下输入行。
:'<,'>norm! @a
在 vim 中输入 :help normal 来阅读更多内容。
关于vim - 在 Vim 中,如何将宏应用于一组行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/390174/