我正在嘗試創建一個宏以全局使用它。我對任何文件插入該命令我的.vimrc文件如何用vim命令創建一個宏?
let @c='<esc>:r c.c'
或
let @c=':r c.c'
但在這兩種情況下,當我使用 「@c」 只打印「C> :r cc'上的文件
我正在嘗試創建一個宏以全局使用它。我對任何文件插入該命令我的.vimrc文件如何用vim命令創建一個宏?
let @c='<esc>:r c.c'
或
let @c=':r c.c'
但在這兩種情況下,當我使用 「@c」 只打印「C> :r cc'上的文件
嘗試在宏的末尾添加「^M
」,然後「@c
」應該有效。其他':@c
'應該像ebenezer提到的那樣工作。您應該使用按Ctrl +V輸入插入 '^M
'。
let @c=':r c.c^M'
最好的方法是首先記錄宏,然後將其保存到.vimrc
。 如果這些不起作用,您可以使用"cp
檢查您的註冊c
的內容,並查看是否有遺漏。
如果要在宏中包含特殊字符(如Escape或Enter),請使用非文字字符串(雙引號,而不是單引號)和正確的語法。見:help expr-string
。您可以使用原始特殊字符,如@Amit所示,但這會使您的vimrc文件難以閱讀。
假設你開始在普通模式下,想鍵入@Ç,沒有必要用一個轉義開始。
出於測試目的,我想
:let @c = ":echo 'foo'\<CR>"
和它的工作如預期。我甚至在我的vimrc文件中添加了這一行(不帶領導:),以確保並以此方式進行測試。這應該工作:
:let @c = ":r c.c\<CR>"