2011-06-29 112 views
2

假設我記錄了一個有很多命令和特殊字符的長宏。可能性是我在某處發生了錯誤:)如何編輯宏,更正錯誤並再次保存?VIM宏編輯

例如:

我想複製行,然後由一個增加它的數字。

宏這是

yyp/\d<C-A> 

,但它被保存爲

yyp/\d^M^A 

,我不能看到這個特殊字符,當我粘貼寄存器。當我想複製一個寄存器時,我也必須使用'let'來播放,因爲標準粘貼屏幕和複製到另一個寄存器不起作用。我如何有效地編輯註冊特殊字符?

謝謝

回答

5

你是什麼意思,當你說你「看不見特殊字符」?什麼特殊字符?您應該可以看到^A^M的罰款,分別代表<C-A><carriage return>。這就是你需要的。

所以,只要將寄存器粘貼到緩衝區。然後編輯並返回到一個寄存器並執行一個普通的宏。如果你想編輯<C-A>作爲別的東西,比如說<C-E>,那麼只需要刪除出現在粘貼上的^A,然後按<C-V><C-E>(或<C-Q><C-E>,如果你在windows上兼容windows的兼容性)就可以加入<C-E>。它會顯示爲^E,但這就是應該如此。

+0

哦,我的,謝謝你。問題是我在插入模式時粘貼了註冊表,所以我看不到這個^ M和^ A。 – shime

0

在插入模式下按<C-r><C-r>q(這裏q是寄存器名稱)。執行:h ctrl-r_ctrl-r查看詳情。