參考 https://mp.weixin.qq.com/s/bnqTgPYoKqZ9iBUkfSZrRQ
Vim 是被 Linux 管理員和開發(fā)者廣泛使用的最流行和功能強(qiáng)大的編輯器之一。它可以通過高度的自定義配置來提高文本編輯效率。它是在眾多 Unix 默認(rèn)安裝的 Vi 編輯器的升級版。
什么是 Vim
Vim 通常被稱為“程序員的編輯器”,但并不限于此,它也可用于編輯任何類型的文件。它具有許多功能,例如:多次撤銷、多窗口和緩沖區(qū)、語法高亮、命令行編輯、文件名補(bǔ)全、可視選擇等等。你可以使用:help命令來獲取在線幫助。
理解 Vim 的模式
如果你正在使用插入模式,你會在編輯器的底部看到 INSERT 。如果編輯器底部沒有顯示任何內(nèi)容,或者在編輯器底部顯示了文件名,則處于 “命令模式”。
命令模式下的光標(biāo)移動
Vim 快捷鍵允許你使用不同的方式來移動光標(biāo):
? G – 跳轉(zhuǎn)到文件最后一行
? gg – 跳轉(zhuǎn)到文件首行
? $ – 跳轉(zhuǎn)到行末尾
? 0 (數(shù)字 0) – 跳轉(zhuǎn)到行開頭
? w – 跳轉(zhuǎn)到下一個(gè)單詞的開始(單詞的分隔符可以是空格或其他符號)
? W – 跳轉(zhuǎn)到下一個(gè)單詞的開始(單詞的分隔符只能是空格)
? b – 跳轉(zhuǎn)到下一個(gè)單詞的末尾(單詞的分隔符可以是空格或其他符號)
? B – 跳轉(zhuǎn)到下一個(gè)單詞的末尾(單詞的分隔符只能是空格)
? PgDn鍵 – 向下移動一頁
? PgUp鍵 – 向上移動一頁
? Ctrl+d – 向下移動半頁
?Ctrl+u – 向上移動半頁
插入模式:插入文字
下面的 Vim 快捷鍵允許你根據(jù)需要在光標(biāo)的不同位置插入內(nèi)容。
? i– 在光標(biāo)之前插入
? a – 在光標(biāo)之后插入
? I– 在光標(biāo)所在行的開頭插入。當(dāng)光標(biāo)位于行中間時(shí),這個(gè)鍵很有用
? A – 在光標(biāo)所在行的末尾插入。
? o– 在光標(biāo)所在行的下面插入新行
? O – 在光標(biāo)所在行的上面插入新行
?ea – 在單詞的末尾插入
拷貝、粘貼和刪除一行
? yy – 復(fù)制一行
? p/ P – 將內(nèi)容粘貼到光標(biāo)之后 / 之前
? dd – 刪除一行
? dw– 刪除一個(gè)單詞
在 Vim 中搜索和替換匹配的模式
? /模式 – 向后搜索給定的模式
? ?模式 – 向前搜索給定的模式
? n– 向后重復(fù)搜索之前給定的模式
? N– 向前重復(fù)搜索之前給定的模式
? :%s/舊模式/新模式/g– 將文件中所有的舊模式替換為新模式
? :s/舊模式/新模式/g – 將當(dāng)前行中所有的舊模式替換為新模式
? :%s/舊模式/新模式/gc– 逐個(gè)詢問是否文件中的舊模式替換為新模式
如何在 Vim 編輯器中跳轉(zhuǎn)到特定行
根據(jù)需求以兩種方式達(dá)到該目的,如果你不知道行號,建議采用第一種方法。
通過打開文件并運(yùn)行下面的命令來顯示行號
:set number
當(dāng)設(shè)置好顯示行號后,按 :n跳轉(zhuǎn)到相應(yīng)的行號。例如,如果你想跳轉(zhuǎn)到第 15 行,請輸入:
:15
如果已經(jīng)知道行號,請使用以下方法在打開文件時(shí)直接跳轉(zhuǎn)到相應(yīng)行。例如,如果在打開文件時(shí)直接跳轉(zhuǎn)到 20 行,請輸入下面的命令:
$ vim +20 [文件名]
撤銷操作/恢復(fù)上一次操作/重復(fù)上一次操作
? u– 撤銷更改
?Ctrl+r – 恢復(fù)更改
?. – 重復(fù)上一條命令
保存和退出 Vim
? :w – 保存更改但不退出 vim
?:wq – 寫并退出
? :q!– 強(qiáng)制退出