Vim完全可以用鍵盤進行操作。本文將常用的按鍵歸納總結。
第一部分:一般模式可用的按鈕,如光標移動、復制粘貼、查找替換等
移動光標的方法
h, j, k, l | 光標向左,下,上,右移動 |
Ctrl + f / b | 屏幕向下/上移動 |
Ctrl + d / u | 屏幕向下/上移動半頁 |
0 | 移動到一行的最前面 |
$ | 移動到一行的最后面字符 |
H / M / L | 移動到屏幕最上方/中央/最下方那一行的第一個字符 |
G | 移動到文件的最后一行 |
nG / ngg | 移動到文件的第n行 |
gg | 移動到文件的第一行 |
n[Enter] | 向下移動n行 |
查找與替換
/word | 向下查找word字符串 |
?word | 向上查找word字符串 |
n | 代表重復前一個查找動作 |
N | 代表反向重復前一個查找動作 |
: s/old/new | 將第一個old替換為new |
: s/old/new/g | 將一行中所有的old替換為new |
:n1, n2s/word1/word2/g | 將行n1與n2之間的word1替換為word2 |
:%s/old/new/g | 將文件所有的old替換為new |
:%s/old/new/gc | 替換前要求確認 |
刪除、復制與粘貼
x/X | 向后/前刪除一個字符 |
nx | 連續刪除n個字符 |
dd | 刪除整行 |
ndd | 刪除n行 |
d1G | 刪除光標所在到第一行數據 |
dG | 刪除光標所在到最后一行數據 |
d$ | 刪除光標所在到該行最后一個字符 |
d0 | 刪除光標所在到該行最前面一個字符 |
yy | 復制光標所在的一行 |
nyy | 向下復制n行 |
y1G | 復制光標所在到第一行數據 |
yG | 復制光標所在到最后一行數據 |
y$ | 復制光標所在到該行最后一個字符 |
y0 | 復制光標所在到該行最前面一個字符 |
p/P | 粘貼數據在光標下/上一行 |
J | 將光標所在行與下一行數據結合成同一行 |
u | 回撤前一操作 |
Ctrl + r | 重做前一操作 |
. | 重復前一個操作 |
第二部分:一般模式切換到編輯模式
進入插入或替換的編輯模式
i, I | 進入插入模式: i從當前光標所在處插入,I在目前所在行的第一個非空格符處插入 |
a, A | 進入插入模式: a從當前光標所在的下一個字符插入,A從光標所在行的最后一個字符后插入 |
o, O | 進入插入模式: o從當前光標所在行的下一行插入新的一行;O正好相反,從上一行插入新行 |
r, R | 進入替換模式: r只會替換光標所在的那一個字符一次;R會一直替換光標所在文字,直到Esc |
塊選擇
v | 字符選擇,將光標經過的地方反白選擇 |
V | 行選擇,將光標經過的行反白選擇 |
Ctrl + v | 塊選擇,可以用長方形選擇數據 |
y | 將反白的地方復制 |
d | 刪除反白的地方 |
多窗口
:sp filename | 打開新窗口,如果有加filename,新窗口打開新文件,否則打開相同文件 |
Ctrl + w + s/v | 水平/垂直分割打開新窗口 |
Ctrl + w + h/j/k/l | 光標移動到左/下/上/右窗口 |
Ctrl + w + q | 退出窗口 |