(一)以下都是對光標(biāo)位置的操作:
h 向左
j? 向下
k 向上
l? 向右
0? 行首,第一個字符之前(注:這是數(shù)字零 )
^ 行首(第一個非空字符處)
$ 行尾
gg 全文第一行第一個字符處
G 最后一行開頭第一個字符處
nG? 第n行開頭第一個字符處
w? 后移一個字(單詞)
nw? 后移n個字(單詞)
b? ? 前移一個字(單詞)
nb? 前移n個字(單詞)
(二)以下是有關(guān)復(fù)制畜眨、粘貼命令:
yy 復(fù)制當(dāng)前行
nyy 復(fù)制從當(dāng)前行開始向下n行
yw? 復(fù)制當(dāng)前單詞
nyw 復(fù)制人當(dāng)前單詞開始向后n個單詞
p? 粘貼
dd? 剪切當(dāng)前行
ndd 剪切從當(dāng)前行起向下n行
(三)刪除
x? 冊除光標(biāo)所在的字符
nx 刪除從光標(biāo)所在字符起向后n個字符
X? 刪除光標(biāo)前面的字符
nX 刪除光標(biāo)前面n個字符
dw? 刪除光標(biāo)所在的字(單詞)
ndw 刪除從光標(biāo)所在的字(單詞)起向后的n個字(單詞)
dd? 刪除當(dāng)前行(其實(shí)是剪切)
ndd 刪除從當(dāng)前行起向下n行(也是剪切)
(四)光標(biāo)插入的位置
i? ? 在當(dāng)前光標(biāo)所在字符的前面開始插入新字符
I? ? 在行首開始位置插入新字符
a? ? 在當(dāng)前光標(biāo)所在字符的后面開始插入新字符
A? ? 在行尾位置開始插入新字符
o? ? 在光標(biāo)所在的當(dāng)前行的下面插入一 行并可以開始插入新字符
O? ? 在光標(biāo)所在的當(dāng)前行的上面插入一行,并可以開始插入新字符。
(五)其他常用命令:
r? ? 替換光標(biāo)所在的字符觉鼻,如當(dāng)前光標(biāo)在a字符上,那么在命令式下按rg,那么a就會被換成g.
R? ? 替換光標(biāo)所到之處的字符,直至按下“Esc“為止。
u? ? 撤銷上次操作
U? ? 撤銷所有改變
.? ? ? 重復(fù)上一次的命令
ZZ? 保存文檔后退出
%
(六)
以下與光標(biāo)無關(guān):
ctrl b 向上翻一頁
ctrl f? 向下翻一頁
ctrl u 向上翻半頁
ctrl d 向下翻半頁
ctrl y 向上翻一行
ctrl e 向下翻一行
以上都涉及到的命令行模式(又叫視圖模式咐扭、普通模式、初始模式)或插入模式滑废,但是有點(diǎn)可以肯定的是蝗肪,都是以命令行模式(又叫視圖模式、普通模式策严、初始模式)開始的穗慕。
vim有三種模式? 命令行模式(又叫視圖模式、普通模式妻导、初始模式)和插入模式和底行模式逛绵。要進(jìn)放入 插入模式或底行模式怀各,都必須從 命令行模式(又叫視圖模式、普通模式术浪、初始模式)開始瓢对。比如說,現(xiàn)在要從插入模式進(jìn)入底行模式胰苏,那么首先要從插入模式回到命令行模式(又叫視圖模式硕蛹、普通模式、初始模式)【插入模式和底行模式按Esc鍵就可以回退視圖模式】硕并,再從視圖模式進(jìn)入底行模式法焰,反之亦然。
命令行模式(又叫視圖模式倔毙、普通模式埃仪、初始模式)——("i","I","o","O","a","A")——>插入模式
命令行模式(又叫視圖模式、普通模式陕赃、初始模式)<——("Esc")——插入模式
命令行模式(又叫視圖模式卵蛉、普通模式、初始模式)——(":","/","?")——>底行模式
命令行模式(又叫視圖模式么库、普通模式傻丝、初始模式)<——("Esc")——底行模式
最后來看看底行模式:
保存、退出
q? ? 退出
q!? ? 強(qiáng)制退出
w? ? 保存
w fileName? ? 另存為fileName文件
w诉儒!fileName? 強(qiáng)制另存為fileName文件
r fileName? ? 在當(dāng)前光標(biāo)所在的位置讀入另一個文件的內(nèi)容葡缰。
wq? ? 保存并退出
x? ? ? ? 保存并退出
x!? ? ? 強(qiáng)制保存并退出
查找
/? ? 向下查找匹配字符串功能
?? ? 向前查找匹配字符串功能
替換
s/pattern1/pattern2/g? ? 把當(dāng)前光標(biāo)所在行的字符串pattern1替換成pattern2
%s/pattern1/pattern2/g? ? 把所有行的字符串pattern1替換成pattern2
num1,num2? s/pattern1/pattern2/g? ? 把第num1行到第num2行的字符串pattern1替換成pattern2