17 vim 掌握宏
凡是可以重复的,都可以重复
宏(macro) 就像我们在编程中所写的函数,可以封装/录制一系列操作,等到再次需要的时候,直接调用宏来完成任务即可。
录制和使用宏
q
+ [字母]:开始录制,并把当前一次的录制命名为 [字母];如qa
,则当前录制的宏操作名称为a
,如qq
,宏操作则为q
;录制完后,再输入q
则退出录制:req
+ [字母]:查看录制好的名为 [字母] 的宏操作@
+ [字母]:调用名为 [字母] 的宏操作@@
:调用最后一次执行的宏操作- [数字] +
@
+ [字母]:以 [数字] 次数重复执行名称为 [字母] 的宏操作 q
+ [大写字母]:在对应名为 [字母] 的宏操作后追加命令;比如我们录制一个宏操作为 a,他的功能是删除每行的第一个单词;则我们首先录制改宏操作:qa^diw
;录制完后发现我们删除了第一个单词后,还需要把光标移到下一行,这时我们可以键入qAj
,即在宏操作 a 后面追加个j
命令,就可以使用追加后的宏了
技巧
- 先规范好光标的位置
- 移动时使用相对位置
- 比如 w/e/textObject 是相对位置
- jkhl 就是绝对位置
todo
案例说明 tbc
更多详细技巧在实际使用中不断摸索