vim常用操作

vim共有3種模式,分別爲一般模式、編輯模式和指令列模式。其中,使用vim打開一篇文檔默認進入一般模式,在此模式下可以進行一般的操作;通過按(i、I、a、A、r、R)鍵進入編輯模式,可以對文本內容進行編輯,而按ESC鍵回到一般模式;通過按(:、/、?)等鍵進入指令列模式,可以輸入指令進行查找、保存等操作,同樣,按ESC鍵回到一般模式。

需要注意的是,編輯模式、指令列模式都可以和一般模式進行切換,但編輯模式和指令列模式之間不可以直接切換。

另外,本文中,每個命令後面的‘:’不是命令本身,請注意。

一、光標的移動命令

使用vim打開文檔後,默認進入一般模式。此時可以使用不同的按鍵快速移動光標。

k,j,h,l:上下左右光標移動命令,也就是右手在鍵盤上放置的位置部分,當然也支持使用鍵盤的上下左右鍵進行移動。

另外,如果想快速移動光標,也可以按下n(kjhl),n代表數字。比如按下20k,則光標向上移動20行。

ctrl+f:屏幕向下移動一頁,當然也支持pagedown。

ctrl+b:屏幕向上移動一頁,當然也支持pageup。

0:數字0可以使光標快速移向本行行首,當然也支持home鍵。

$:此按鍵可以使光標快速移向本行行尾,當然也支持end鍵。

G:光標移動到最後一行。

nG :n爲行數,該命令立即使光標跳到指定行。

gg:光標快速移動到文件的第一行。

n<Enter>:光標向下移動n行

二、選擇命令

在一般模式下,可以按相應的命令,以進行選擇。

v:按下v鍵,可以進行選擇。此時再通過上下左右鍵移動光標,則可以按字符選擇。

V:按下V鍵,可以進行按行選擇。

ctrl+v:此時可以進行區域的選擇。相當於在word下按着alt進行選擇。

y:將選擇好的複製。

d:將選擇好的刪除

三、編輯命令

1)刪除命令

x,X:在一行中,x代表向後刪除一個字符(類似del鍵),而X代表向前刪除一個字符(類似backspace鍵)

nx:n爲數字,代表連續刪除後面的n個字符

dd:刪除光標所在的行

ndd:刪除n行(包含光標所在行,向下的n行)。

2)查找命令

在一般模式下,輸入相應命令可進入指令列模式,以進行查找。

/string:從光標處向下查找string這個關鍵字

?string:從光標處向上查找string這個關鍵字

n:當查找後,按n可重複查找

N:當查找後,按N可反向重複查找

3)替換命令

:n1,n2s/old/new/g:n1與n2爲數字。此命令表示在行n1和行n2之間查找old關鍵字,並替換爲new。

:1,$s/old/new/g:此命令表示從1行開始直到最後一行,查找old關鍵字,並替換爲new。

另外,在上述兩個命令中,如果在g後面加上c,則表示每次替換需要用戶的確認。

4)複製命令

yy:複製一行

nyy:複製n行

5)粘貼命令

p,P:p表示從光標所在行的下一行開始粘貼,而P表示從光標所在行的上一行開始粘貼

6) 插入命令

在一般模式下,可以按不同的按鍵以進入編輯模式,進行文檔的修改。

i,I:此兩個命令代表從一般模式進入插入模式。其中,i表示從目前光標所在處插入,I代表從光標所在行的第一個非空格符處插入。進入插入模式後,文檔的右下角會出現“INSERT”提示。

a,A:此兩個命令也可進入插入模式。其中,a代表從目前光標的下一字符處開始插入,而A代表從光標所在的末尾開始插入。

o,O:此兩個命令也可以進入插入模式。其中,o代表在目前光標所在行下插入一行,而O代表在目前光標所在行上插入一行。

r,R:此兩個命令可以從一般模式進入替換模式。其中,r會替換光標所在字符1次就自動退回一般模式,而R可以一直替換。

進入插入模式後,當然也支持鍵盤上的上下左右、enter、home等鍵的操作。

7)反悔命令

u:相當於Windows下的ctrl+z,即反悔一次。可多次反悔。

ctrl+r:相當於Windows下的ctrl+主,即重做反悔的上一個動作。

.:小數點命令,代表重做前一個動作。需要注意的是,它和ctrl+r是不同的。ctrl+r代表反悔後的重做,而小數點命令是重做前一個動作。

四、多文檔的編輯

可以使用vim一次打開多個文檔,也可以將同一個文檔打開多次。

當打開兩個或以上的文檔的時候,可以使用相應的按鍵進入多文檔的編輯。

:n:編輯下一個檔案

:N:編輯上一個檔案

:files:列出目前vim開啓的所有檔案

另外,vim也支持多窗口顯示。即在同一個屏幕上同時顯示多個文檔的情況。

在一般模式下,按下:sp命令可再次打開該文檔並多窗口顯示,按下:sp filename命令,可打開filename那個文檔並多窗口顯示。

當多窗口顯示後,有以下命令可以操作。

ctrl+w+k或ctrl+w+↑:切換到上面的窗口

ctrl+w+j或ctrl+w+↓:切換到下面的窗口

五、保存退出

在一般模式下,通過按相應的按鍵,可以進入指令列模式,即可以在屏幕下方輸入相應指令,完成保存退出等功能。

1)顯示/關閉行號

:set nu:在所有行之前顯示行號

:set nonu:關閉所有行之前的行號

2)保存退出

:q:退出vim

:q!:不保存修改,強行退出vim

:w:保存修改過的文件內容

:wq:保存修改內容並退出vi

:wq [filename]:將文檔存爲filename,相當於“另存爲”。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章