符號(hào) | 說明 | |
---|---|---|
[n]+ | 向下跳n行百匆,例如 10+ 表示向下跳10行 | |
[n]- | 向上跳n行,例如 10- 表示向上跳10行 | |
[n]G | 跳到行號(hào)為n的行寄症,例如 100G矩动,表示跳到行號(hào)為100的行 | |
G | 跳轉(zhuǎn)到最后一行 | |
ctrl+g | 顯示當(dāng)前行信息 | |
gg | 移至文本開頭 | |
w | 移動(dòng)到下一個(gè)單詞(word) | |
W | 移動(dòng)到下一個(gè)空白分隔的單詞 | |
b | 移動(dòng)到單詞的開頭(begin) | |
B | 移動(dòng)到空格分隔的單詞開頭 | |
e | 移動(dòng)到單詞的結(jié)尾(end) | |
E | 移動(dòng)到空格分隔的單詞的結(jié)尾 | |
h | Backspace 向左 | |
j | Enter 向下 | |
k | -(減號(hào)) 向上 | |
l | 空格鍵 向右 | |
gj | 移動(dòng)到一段內(nèi)的下一行 | |
gk | 移動(dòng)到一段內(nèi)的上一行 | |
+或Enter | 把光標(biāo)移至下一行第一個(gè)非空白字符 | |
- | 把光標(biāo)移至上一行第一個(gè)非空白字符 | |
( | 前移1句 | |
) | 后移1句 | |
{ | 前移1段 | |
} | 后移1段 | |
^ | 移動(dòng)到當(dāng)前行的第一個(gè)非空格處 | |
[n]| | 移動(dòng)到當(dāng)前行的第n列悲没,例如20 | 示姿,代表移動(dòng)到當(dāng)前行的第20列 |
$ | 移動(dòng)到當(dāng)前行的行尾 | |
g_ | 到本行最后一個(gè)不是blank字符的位置 | |
f[c] | 把光標(biāo)移到同一行的下一個(gè)c字符處 | |
F[c] | 把光標(biāo)移到同一行的上一個(gè)c字符處 | |
t[c] | 把光標(biāo)移到同一行的下一個(gè)c字符前 | |
T[c] | 把光標(biāo)移到同一行的上一個(gè)c字符后 | |
t, | 到逗號(hào)前的第一個(gè)字符栈戳。逗號(hào)可以變成其它字符 | |
[3]f[a] | 在當(dāng)前行查找第三個(gè)出現(xiàn)的a | |
F T | 和 f t 一樣子檀,只不過是相反方向 | |
0 | 移動(dòng)到行首 | |
g0 | 移到光標(biāo)所在屏幕行行首 | |
^ | 移動(dòng)到本行第一個(gè)非空白字符 | |
g^ | 同 ^ ,但是移動(dòng)到當(dāng)前屏幕行第一個(gè)非空字符處 | |
$ | 移動(dòng)到行尾 | |
g$ | 移動(dòng)光標(biāo)所在屏幕行行尾 |
符號(hào) | 說明 |
---|---|
在屏幕中移動(dòng) | |
H | 移動(dòng)到屏幕頂端的行 |
M | 移動(dòng)到屏幕中央的行 |
L | 移動(dòng)到屏幕底端的行 |
[n]H | 移動(dòng)到屏幕頂端往下的第n行 |
[n]L | 移動(dòng)到屏幕頂端往上的第n行 |
滾屏 | |
ctrl+f | 往前滾動(dòng)一屏 |
ctrl+b | 往后滾動(dòng)一屏 |
ctrl+d | 往前滾動(dòng)半屏 |
ctrl+u | 往后滾動(dòng)半屏 |
ctrl+e | 往后滾動(dòng)一行 |
ctrl+y | 往前滾動(dòng)一行 |
n% | 到文件n%的位置 |
zz | 將當(dāng)前行移動(dòng)到屏幕中央 |
zt | 將當(dāng)前行移動(dòng)到屏幕頂端 |
zb | 將當(dāng)前行移動(dòng)到屏幕底端 |
復(fù)制粘貼 | |
yy | 將當(dāng)前行復(fù)制到緩存區(qū) |
[n]yy | 將當(dāng)前行向下n行復(fù)制到緩沖區(qū) |
yw | 復(fù)制從光標(biāo)開始到詞尾的字符 |
[n]yw | 復(fù)制從光標(biāo)開始的n個(gè)單詞 |
y^ | 復(fù)制從光標(biāo)到行首的內(nèi)容 |
y$ | 復(fù)制從光標(biāo)到行尾的內(nèi)容 |
ggvGy | 全部復(fù)制 |
p | 粘貼剪切板里的內(nèi)容在光標(biāo)后 |
P(大寫) | 粘貼剪切板里的內(nèi)容在光標(biāo)前 |
y[n]l | 向右復(fù)制n個(gè)字符 |
y[n]h | 向左復(fù)制n個(gè)字符 |
y[n]w | 向前復(fù)制n個(gè)字符 |
y[n]b | 向后復(fù)制n個(gè)字符 |
yH | 從當(dāng)前行復(fù)制到屏幕頂端 |
yL | 從當(dāng)前行復(fù)制到屏幕底端 |
查找 | |
/name | 向后查找 |
?name | 向前查找 |
n | 配合查找命令使用,向下搜索前一個(gè)搜素動(dòng)作 |
N | 配合查找命令使用归薛,向上搜索前一個(gè)搜索動(dòng)作 |
shift+* | 快捷正則匹配當(dāng)前單詞主籍,按n下一個(gè) |
編輯 | |
a | 從光標(biāo)所在之后開始插入 |
A | 從光標(biāo)所在行的末尾開始插入 |
o | 在光標(biāo)所在的下方添加一行 |
O | 在光標(biāo)所在的上方添加一行 |
i | 從光標(biāo)所在之處開始插入 |
I | 在當(dāng)前行的開始處添加文本(非空字符的行首) |
cc | 刪除整行從頭開始編輯 |
c0 | 從光標(biāo)處修改到本行開頭 |
c$ | 從光標(biāo)處修改到本行結(jié)尾 |
:s/old/new | 用new替換行中首次出現(xiàn)的old |
:s/old/new/g | 用new替換行中所有的old |
:n,m s/old/new/g | 用new替換從n到m行里所有的old |
:%s/old/new/g | 用new替換當(dāng)前文件里所有的old |
舉例: 在命令模式下如 5a,然后輸入編輯的內(nèi)容逛球,再按ESC返回需忿, 則該內(nèi)容會(huì)重復(fù)5次。對(duì)o, i等同于適用 |
|
r | 替換單個(gè)字符涕烧,4r汗洒,然后輸入內(nèi)容,可以連續(xù)替換后面的4個(gè)字母 |
R | 連續(xù)替換 |
J | 合并光標(biāo)所在行及下一行為一行溢谤,4J世杀,合并4行 |
~ | 改變當(dāng)前字母的大小寫,4~蛛壳,可以改變后面4個(gè)字母的大小寫 |
刪除 | |
dd | 刪除當(dāng)前行 |
[n]dd | 向下刪除當(dāng)前行在內(nèi)的n行所刀,例如:1000dd,刪除1000行 |
d$ | 刪除光標(biāo)位置到本行結(jié)尾 |
d0 | 刪除光標(biāo)位置到本行開頭 |
x | 刪除當(dāng)前字符 |
[n]x | 刪除從光標(biāo)開始的n個(gè)字符 |
撤銷 | |
u | 撤銷上一步操作 |
U | 撤銷對(duì)當(dāng)前行的所有操作 |
ctrl+r | 重做 |
. | 重復(fù) |
e! | 全文恢復(fù) |
[n]u | 取消一(n)個(gè)改動(dòng) |
:undo 5 | 撤銷5個(gè)改變 |
:undolist | 你的撤銷歷史 |
:earlier 4m | 回到4分鐘前 |
:later 55s | 前進(jìn)55秒 |
打開文件 | |
vim -r file | 恢復(fù)上次異常退出的文件; |
vim -R file | 以只讀的方式打開文件斩披,但可以強(qiáng)制保存; |
vim -M file | 以只讀的方式打開文件斩祭,不可以強(qiáng)制保存; |
vim -y num file | 將編輯窗口的大小設(shè)為num行耳奕; |
vim + file | 從文件的末尾開始屋群; |
vim +num file | 從第num行開始坏挠; |
vim +/string file | 打開file,并將光標(biāo)停留在第一個(gè)找到的string上降狠。 |