技巧70-在一组文件中执行宏

建立目标文件列表

:args *.lua
  • 显示参数列表中的内容
:args

录制宏

  • 在开始录制前,首先要确保光标已经位于参数列表中的第一个文件中
:first
  • 正常录制宏

以并行方式执行此宏

  • 先丢弃录制宏时的修改,防止批量执行时对第一个缓冲区执行了2次。
:edit!
  • 执行宏
:argdo normal @a

以串行方式执行宏

qA 追加宏录制
:next 打开下一个缓冲区文件
q 结束宏录制
22@q 批量运行宏

保存所有文件的改动

  • 方法1
:argdo write
  • 方法2
:wall
  • 方法3
qA
:wnext
q

结论

  • 多个缓冲区执行宏的时候,串行的方式比并行的更好一些,出错了,更容易发现。