使用 vim 也有一段時(shí)間了,但是經(jīng)常會(huì)忘記一些不是那么常用,但是很實(shí)用的一些功能,在此做個(gè)記錄,方便后續(xù)查閱。

圖片來(lái)源https://blog.csdn.net/eroswang/article/details/2137766
宏
在 命令模式下,按 q 開(kāi)始錄制,然后在按 a ,將錄制的內(nèi)容存儲(chǔ)到 a 鍵中,然后執(zhí)行你需要錄制的的操作,譬如 dd 刪除一行,最后按 q ,表示結(jié)束錄制。然后運(yùn)行宏,@a 即可運(yùn)行錄制在 a 鍵中的宏,如果在前面加上數(shù)字,則表示執(zhí)行多次,譬如 100@a ,表示執(zhí)行 100 次錄制在 a 鍵中的宏。當(dāng)然,錄制的內(nèi)容不一定只能存儲(chǔ)在 a 鍵中,也可以放到其他鍵中,操作與放在 a 鍵中類似。
光標(biāo)移動(dòng)
字符 & 單詞移動(dòng)
【h、j、k、l】控制光標(biāo)左、下、上、右移一格
【w、e、b】單詞此間的跳轉(zhuǎn)
【f + char】跳轉(zhuǎn)到當(dāng)前行出現(xiàn) char 的地方,f 表示從當(dāng)前位置往前查找,F(xiàn) 表示從當(dāng)前位置往后查找
【*】跳轉(zhuǎn)到后一個(gè)與當(dāng)前光標(biāo)所在位置的字符串相同的位置
【#】跳轉(zhuǎn)到前一個(gè)與當(dāng)前光標(biāo)所在位置的字符串相同的位置
【^】跳轉(zhuǎn)到當(dāng)前行第一次出現(xiàn)非空格的位置
【$】挑戰(zhàn)到當(dāng)前行行尾
【0】跳轉(zhuǎn)到當(dāng)前行行首
相對(duì)屏幕移動(dòng)
【ctrl+b】屏幕往“后”移動(dòng)一頁(yè)
【ctrl+f】屏幕往“前”移動(dòng)一頁(yè)
【ctrl+e】屏幕逐行上滾
【ctrl+y】屏幕逐行下滾
【H】光標(biāo)移動(dòng)到屏幕的首行
【L】光標(biāo)移動(dòng)到屏幕尾行
【M】光標(biāo)移動(dòng)到屏幕中間
【zt】將當(dāng)前行移置頂
【zz】將當(dāng)前行移到屏幕中部
【zb】將當(dāng)前行移到移到底部
【G】移動(dòng)到這個(gè)文件的最后一行
【nG】移動(dòng)到這個(gè)文件的第n行(可配合:set nu)
【gg】移動(dòng)到這個(gè)文件的第一行,相當(dāng)于命令1G
【n<Enter>】光標(biāo)向下移動(dòng)n行
選擇
【v】進(jìn)入選擇模式
【V】選擇當(dāng)前行,行選中模式
【v + i + "】選擇“”中間的部分,不包括 “”
【v + a + "】選在“”中間部分和 “”
這里的 “ 可以換成 {, [ ,( 等等,含義類似。
單詞轉(zhuǎn)換
【gu】變小寫
【gU】變大寫
【~】將光標(biāo)下的字母改變大小寫
【3~】將光標(biāo)位置開(kāi)始的3個(gè)字母改變其大小寫
【g~~】改變當(dāng)前行字母的大小寫
【U】 將可視模式下選擇的字母全改寫成大寫字母
【u】將可視模式下選擇的字母全改成小寫字母
【gUU】 將當(dāng)前行的字母改成大寫
【guu】將當(dāng)前行的字母改成小寫
【3gUU】 將從光標(biāo)開(kāi)始到下面3行字母改成大寫
【gUw】將那個(gè)光標(biāo)下的單詞改成大寫
【guw】將光標(biāo)下的單詞改成小寫