Vim編輯器五大模式介紹

在公司中想拿高薪,不止要會寫程式碼喲,還要會自己配置檔案(除非特大公司,有人幹這事的),這裡的配置檔案肯定是linux環境當中的(預設大家會使用常用的linux命令)。

Vim 的幾種模式

Vim 和普通的編輯器有一點非常大的區別,或者是本質的區別:Vim 是有不同的模式(狀態)的。

普通的編輯器,你一開啟就可以進行輸入(打字)了,很符合直覺,開啟就會用,就好像使用 Word 一樣。

但是 Vim 和他們不一樣,你開啟 Vim 之後,是處於一種無法編輯的狀態中的,這是 Vim 的普通模式,在這種狀態下,你是無法輸入文字的,只能執行一些指令。

在普通模式(預設模式)下,你可以使用

h,j,k,l

這四個按鍵來移動游標,這四個鍵分別代表

左,下,上,右

如果想輸入文字,你需要按下鍵盤上的

i

鍵,才能進入可編輯的狀態,即 Vim 的插入模式,才能像使用普通編輯器一樣打字。

可以說,正是由於 Vim 有不同的模式,才使得 Vim 的編輯效率遠超其他編輯器。

模式是 Vim 的基礎

,這裡有必要先介紹一下 Vim 的幾種模式。

Vim 五種模式:

普通模式 / 預設模式

:執行 Vim 的指令,如移動游標,複製、刪除 、貼上文字等等,不能進行輸入(打字)。

插入模式 / 編輯模式

:進行文字輸入(打字),和普通編輯器一樣。

替換模式

:進行字元替換。

可視模式 / 選擇模式

:進行文字選擇。

命令模式

:在 Vim 底部最後一行中輸入命令,按回車並執行。

接下來介紹

如何進入 / 退出

以上這幾種狀態,我會把所有方式都列舉出來,但是現在你只需使用最簡單的一種方式即可。

在開始之前,請連續按幾次 Esc 鍵,保證你處於普通模式。

無論你現在在任何模式下,按 Esc 鍵可以讓你回到普通模式,這句話一定要記牢!遇事不決 Esc!

普通模式 > 插入模式

Vim編輯器五大模式介紹

要從普通模式進入插入模式,最簡單的方法就是按

i

鍵,你可以理解為 “insert”,按過 i 鍵之後,你就可以打字了。

除此之外,你還可以:

i/I

:在游標前面 / 行首插入

a/A

:在游標後面 / 行尾插入

o/O

:在下 / 上一行行首插入

在插入模式下按 Ctrl-o 可進入普通模式,在此模式下可以執行一次普通模式命令,然後就又回到插入模式。

在繼續學習之前,請先輸入一些文字(最好是英文), 以供後續的操作使用。

另外,如果操作過程中,你不知道自己處於什麼模式了,那就連續按幾次 Esc, 回到普通模式,再繼續進行操作。

普通模式 > 替換模式

在普通模式下,按

r

鍵(小寫)可進入替換模式,你可以理解為“replace”,此時你再次輸入的字元,可以替換游標處的那個字元。

如果你想連續替換多個字元,則按 R 鍵(大寫,即 Shift+r),此時你的輸入會不斷地替換游標處的字元。

想退出持續替換模式,按 Esc 即可。

除此之外,你還可以:

數字 r

:將游標所在位置向後 n 個字元都替換掉,例如:3rs 可以把游標向後的三個字元都替換成 s。

在持續替換模式中可使用 Insert 鍵在持續替換模式和插入模式中切換。

普通模式 > 可視模式

Vim編輯器五大模式介紹

在普通模式下,按

v

鍵可進入可視模式(選擇模式),你可以理解為“visual”,進入可視模式後,你可以選擇一些文字,此時你使用 h、j、k、l 鍵,可以改變選擇的區域。

當你選擇了一些文字後,可以使用一些執行命令操作你選擇的文字,這個後面再介紹。

要退出可視模式,按 Esc 鍵或者 v 鍵。

除此之外,你還可以:

V

:進入行選擇模式,整行整行地進行選擇。

Ctrl-q

:進入塊選擇模式。在這個模式下,你可以以”塊” 或者說 “列” 的方式選擇文字。本來快捷鍵是 Ctrl+v, 但是在 Windows 上,Vim 會模仿 Windows 快捷鍵,Ctrl-v 是貼上,所以使用 Ctrl-q 進入“塊”選擇模式。

普通模式 > 命令模式

Vim編輯器五大模式介紹

在普通模式下,按

:

鍵(即 Shift+;) 即可進入命令模式,此時游標會跑到編輯器的最底部。

你可以輸入一些命令,按回車執行,執行完命令之後自動回到普通模式,或者你可以直接按 Esc 回到普通模式。

其他模式 > 普通模式

任何模式下,你都可以按 Esc 回到普通模式,一次不行就多按幾次,遇事不決 Esc。

OK,現在你想一下記住這麼多模式以及進入方法,肯定是比較困難的。

這裡說一下,

Vim 不是學會的,是用會的

(公司當中也只是用到皮毛)。

與其學怎麼操作,不如按照教程自己多做幾次,多用幾次自然就記住了,不用擔心把 Vim 折騰壞了,大不了重灌。