我知道: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