众所周知,q
它用于开始录制和终止录制宏。
不幸的是,我正在尝试记录一系列命令,其中包括 command q:
,并且宏(自然)在q
.
有没有办法可以记录一系列命令,包括q
在正常模式下键入的命令?
更新:我尝试重新映射q
到其他内容并将另一个字母映射到q
,但这似乎破坏了q
我尝试记录的实际命令的功能。
您可以执行:
Ctrl+f打开命令历史记录窗口而不停止录制。
好吧,您已经得到了公认的答案,我只是提到了另一个录制宏的技巧,以便您可以q:
在宏中拥有:
你可以按:ctrl-f
,或者如果你真的爱q:
,你可以:
例如:
let @q='5j5kq:<c-v><up><c-v><enter>j'
5j5k
什么都不做,例如。
200@q
将在接下来的 200 行中执行最后一个命令。如果您的最后一个命令将一些参数(如当前行号或当前行(文本))传递给函数。它也会起作用。
如果要在宏中编辑命令行,则需要在<c-v><enter>
按下按键序列之前。
因为<c-v><up><c-v><enter>
,你真的需要这样输入,而不是纯文本。
但从我的角度来看,普通任务不需要这些技巧。