日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

在vimrc中设置record

發布時間:2025/3/8 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在vimrc中设置record 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在vimrc中設置record

Vim的record功能在大量重復操作的場景下非常實用,但是,一般我們都要每次進入Vim時重新錄制record。而對于一些非常常用的record,我們想讓它永久地保持,我們知道這種需求需要借助Vim的配置文件vimrc。但是具體怎么操作呢,筆者在走了一些彎路之后將設置方法記錄下來,希望能對大家有幫助。

我們以添加 Python 單行注釋為例,這需要我們在每一行前面添加:#。

錄制record的方法我們已經比較熟悉了,不熟悉的同學可參考:Vim 重復操作的宏錄制。

我們知道Vim中的record是錄制保存在寄存器中的,以寄存器 q 為例,整個錄制的鍵位順序為:

以下代碼都是鍵盤的全部操作,包括在常規模式和插入模式下,模式切換的按鍵也體現在代碼中

<ESC>qqI#<ESC>j0q

這樣我們就將添加單行注釋的record錄制在了寄存器 q 中,只需 n@q 即可完成 n 行單行注釋。

那么,我們要怎樣把它保存到 vimrc 中呢?實際上,我們可以通過 :registers 命令來查看當前各個寄存器的值。其中寄存器 q 的值如下:

--- Registers --- ... "q I#^[j0 ...

可以看到 <ESC> 被替換成了 ^[,并且需要注意:這里的 ^[ 是有顏色的,筆者的機器上這里是藍色的。這一段q 的值就是我們需要添加到 vimrc 中的。

具體怎么添加呢?我們打開 vimrc 文件,并將上面的record重新錄制一遍,然后鍵入:

<ESC>"qp

我們會發現寄存器的值輸出在了文本中。我們只要將這個值賦給某個寄存器就可以了。但是一定要注意:不能直接將已經錄制的寄存器的值復制粘貼給某個我們想要長久保持的寄存器。可以試一下,這樣的話像 ^[ 這樣的鍵是沒有顏色標識的,這樣我們 @ 執行 record 的話只會輸出一段字符串。

假設我們將錄制好的record存放在寄存器 q 中,我們想要長期將該record放在寄存器 m 中,可行的做法是這樣:

<ESC>olet @m = "<ESC>"qpa""<ESC>

也就是說,我們必須通過 "qp 來將錄制在寄存器 q 中的值輸出出來,而不能直接復制文本

這樣編輯完 vimrc 文件之后,保存退出。再次Vim打開一個文件,可驗證長期record生效。

Ref:

https://blog.easwy.com/archives/vi-tip-of-using-recording/

總結

以上是生活随笔為你收集整理的在vimrc中设置record的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。