我知道:bufdo
命令,并试图将它与我记录的宏(@a
)结合在每个头文件的适当位置添加一个#include I' d加载。但是,我找不到在每个缓冲区上运行宏的简单方法。有没有办法通过ex模式执行宏,这是:bufdo
需要什么?还是有我失踪的另一个命令?在vim中的所有缓冲区中运行一个宏
26
A
回答
31
你能做到这样的:
:bufdo execute "normal @a" | write
正常命令将运行宏,但必须使用execute运行,否则管道字符将被解释为正常模式字符。
0
我唯一可以想到的方法是将:w
和:bn
命令添加到宏中,以便它自动保存并移动到下一个缓冲区。然后我可以通过输入[email protected]
在其他52个缓冲区上运行该命令。这工作,但对我来说是一个非常不同的概念模型比:bufdo
,我希望别人会指出我的方向更类似于:bufdo
。
11
相关问题
- 1. 在Vim的缓冲区中运行R
- 2. 在vim中通过缓冲区继续执行一个宏
- 3. 在vim缓冲区的每一行上运行vim命令
- 4. Vim - 如何在所有缓冲区中运行非正常模式命令?
- 5. 所有emacs缓冲区中的行号
- 6. 刷新缓冲区中的所有文件在vim
- 7. 如何在VIM的开放缓冲区上运行vim脚本
- 8. 区分Vim中的隐藏缓冲区和活动缓冲区
- 9. 重播一个vim宏,直到缓冲区结束
- 10. VIM中没有缓冲区3?
- 11. 在Vim中写入时缓冲区中没有行
- 12. 在vim脚本中从缓冲区中删除一行
- 13. 在Vim缓冲区中的Python?
- 14. 删除VIM中的所有空缓冲区
- 15. 在Vim中重置缓冲区
- 16. 如何在Vim中复制缓冲区?
- 17. 在nasm宏中创建缓冲区?
- 18. VimL:如何通过缓冲区名称知道Vim在哪个缓冲区中
- 19. vim:每次缓冲区更改时运行一些代码
- 20. Vim Ack在当前缓冲区中打开第一个文件
- 21. Vim:丢失缓冲区中的文件
- 22. Vim的通过现有的所有缓冲区
- 23. vim中的缓冲区和寄存器有什么区别?
- 24. 从vim会话中删除缓冲区
- 25. 在Vim中保存“所有打开的缓冲区列表”的变量?
- 26. 在Vim中,有没有办法将当前行号复制到缓冲区中?
- 27. 在emacs中的所有打开的缓冲区上运行keep-lines命令
- 28. vim:移动到缓冲区?
- 29. 刷新Vim缓冲区
- 30. vi,vim缓冲区溢出
看看http://stackoverflow.com/questions/1291962/replay-a-vim-macro-until-end-of-buffer 编辑:别提这 – gruntled 2010-06-11 16:07:16
@gruntled:感谢您的链接。我忽略了这个问题,因为这个问题似乎并不适用,但这些技术应该可以工作。我投票结束了这个。 – 2010-06-11 16:09:32