我知道: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. 所有emacs緩衝區中的行號
- 3. 刷新緩衝區中的所有文件在vim
- 4. 如何在VIM的開放緩衝區上運行vim腳本
- 5. 區分Vim中的隱藏緩衝區和活動緩衝區
- 6. 重播一個vim宏,直到緩衝區結束
- 7. 在vim腳本中從緩衝區中刪除一行
- 8. 在Vim緩衝區中的Python?
- 9. 在Vim中重置緩衝區
- 10. vim:每次緩衝區更改時運行一些代碼
- 11. Vim的通過現有的所有緩衝區
- 12. 從vim會話中刪除緩衝區
- 13. 在Vim中保存「所有打開的緩衝區列表」的變量?
- 14. 在Vim中,有沒有辦法將當前行號複製到緩衝區中?
- 15. vim:移動到緩衝區?
- 16. vi,vim緩衝區溢出
- 17. 如何在Vim的整個緩衝區中應用新的textwidth
- 18. Vim:打開一個新的緩衝區,其中包含當前匹配模式的文件的所有行
- 19. 如何關閉在vim窗口中未顯示的所有緩衝區?
- 20. vim - '轉到上一個緩衝區'中斷
- 21. 在1個vim緩衝區中編輯多個文件
- 22. 將所有文本複製到vim中的新選項卡或緩衝區中
- 23. 在vim中:如何在打開緩衝區後自動運行`z.`?
- 24. Vim-airline關閉緩衝區/退出vim
- 25. 如何在vim中關閉緩衝區時執行命令?
- 26. Emacs在所有緩衝區中截斷行
- 27. 將一個緩衝區中的點移動到與另一個緩衝區中的點相同的行號
- 28. vim在現有選項卡中打開緩衝區
- 29. VIM:搜索替換了所有可寫緩衝區
- 30. 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