Vim中的宏

qa                  开始录制名字为 a 的宏
q                   结束录制宏
@a                  播放名字为 a 的宏
@@                  播放上一个宏
@:                  重复上一个ex命令(即冒号命令)

宏操作在 vim 中(甚至任何编辑器中)属于比较复杂的操作了,如果前面的内容都已经掌握了,那么你 已经可以算是一个 vim 高手了,所以,这位高手,我们不妨再来进阶一下吧。

还记得上一章中把文本转成数组的例子吧,我们还做同样的事,不过这次是用宏来操作。

12gg 跳转到准备开始处理的起始行,按指示进行操作,先看效果后解释。

var myArray = [
 qa 开启宏录制前方高能连续按 I<单引号><Esc>A<单引号><逗号><Esc>jq7@a
我也要
我也要
我也要
我也要
我也要
我也要
我也要
];

OMG! 发生了什么,有没有惊出一身冷汗,之前两次块操作的结果瞬间就完成了,最后再简单做些收尾工作, 去掉最后一行的逗号,集体缩进一下,搞定!

下面来解释一下刚才的操作:

Tips:@@ 再次唤起最后一次执行的宏。


日常工作中频繁用到的和不怎么用得上的在这七章中应该都已经涉及到了,如果 vim 中遇到了什么问题, 或者教程中遗漏了什么常规操作,欢迎在 issues 中提出来,我会尽我所能给予回答 或完善到教程中。