![be3adf70f1fd72a541d2a49efc2eb078.png](https://img-blog.csdnimg.cn/img_convert/be3adf70f1fd72a541d2a49efc2eb078.png)
php中文网最新课程
每日17点准时技术干货分享
![108c9e9314a34715a7ff8eee0d9787f5.png](https://img-blog.csdnimg.cn/img_convert/108c9e9314a34715a7ff8eee0d9787f5.png)
本文为php中文网认证作者:“齐天大圣”投稿,欢迎加入php中文网有偿投稿计划!
先看以下两个场景,批量注释多行代码及缩进多行代码。这两个场景是我们日常开发中经常遇到的。如果是使用IDE的话,批量注释多行代码只要选定这些行后,然后使用ctrl+/即可。缩进的话,也是选定行然后按tab键就行了。但是,如果是使用vim编辑器的话,这些操作就不是这么来完成的了。
今天,和大家介绍下vim下强大的工具——宏。使用他,可以完成许多意想不到的功能哦!
从字面上很难理解宏的意思,其实你就理解成批处理就行了,把宏看成许多命令的集合。然后这些命令集合可以多次执行。
使用宏
宏的使用分为录制以及回放。vim使用q键来开始录制,同时也是一q作为宏的结束按键。
使用q{register}选择需要保持的寄存器,这个寄存器的功能就是把录制的命令保存在其中。
使用@{register}回放寄存器内的命令集合。如想多次播放宏,可以使用数字+@{register},如10@a。
实战
宏的介绍就这么多,现在我们来完成刚开始所说的需求吧。首先,完成批量注释代码的功能。这里,我们先不用宏来完成,而是使用块选择及命令行模式来完成该需求。对于第二个需求,我们才使用宏去完成。
下面是一段代码:
我们选择去将free方法给注释掉。
首先我们来到第70行,在普通模式下按下70G来到70行。按下V进入块选择模式,然后移动光标选择所有的想要注释的行。输入:进入命令行模式,输入normal 0i//,然后按下enter键。
下面,我们再来用宏来完成另一个需求——批量缩进。
![425b66211b768c99c527e769f06eeaeb.png](https://img-blog.csdnimg.cn/img_convert/425b66211b768c99c527e769f06eeaeb.png)
![4f0f121270da4b8dd9ea9ee1b0f68061.png](https://img-blog.csdnimg.cn/img_convert/4f0f121270da4b8dd9ea9ee1b0f68061.png)
▼