VIM的基本模式
1.一般模式
一进入VIM就是处于一般模式(命令模式),该模式下只能输入指令,不能输入文字。这些指令可能是让光标移动的指令,也可能是删除指令或取代指令。
2.编辑模式
输入"i"就会进入编辑模式(插入模式),此时在状态列会有`INSERT`字样。在该模式下才可以输入文字,按<kbd>Esc</kbd>键又会回到命令模式
3.底行模式
输入 `:`就会进入底行模式,此时坐下角会有一个冒号,等待输入命令。按<kbd>Esc</kbd>键就可以返回命令模式。
VIM的基本操作
VIM的命令行模式操作
1.进入插入模式
-
i:光标前插入在光标左侧输入正文。
-
I:在光标所在行的开头输入正文。
-
a:光标后插入在光标右侧输入正文。
-
A:在光标所在行的末尾输入正文。
-
o:在光标所在行的下一行增添新行。
-
O:在光标所在行的上一行增添新行。
2.移动光标
-
hjkl:左、下、上、右。
-
Ctrl+B:在文件中向上移动一页(相当于PageUp键)
-
Ctrl+F:在文件中向下移动一页(相当于PageDown键)
-
G:移到文件最后。
-
H:将光标移动到屏幕最上行(Highest)
-
nH:将光标移到屏幕的第n行。
-
M:将光标移到屏幕的中间。
-
L:将光标移到屏幕的最下行。
-
nL:将光标移动到屏幕的倒数第n行。
-
w:在指定行内右移光标,到下一个字的开头。
-
e:在指定行内右移光标,到下一个字的末尾。
-
b:在指定行内左移光标,到前一个字的开头。
-
0:左移光标,到本行的开头。
-
$:右移光标,到本行的末尾。、
-
^:移动光标,到本行的第一个非空字符。
3.删除
-
x:删除光标所指的当前的字符
-
nx:删除光标所指的前n个字符
-
:1,#d:删除行1至行#的文字
-
X:删除光标前面一个字符。
-
D:删除至行尾
-
dw:删除光标右侧的字。
-
ndw:删除光标右侧的n个字。
-
db:删除光标左侧的字。
-
ndb:删除光标左侧的n个字。
-
dd:删除光标所在行。
-
ndd:删除n行内容。
4.更改
-
cw:更改光标处之字到此一单词之字尾处。
-
c#w:如c3w表示更改3个单词。
-
cc:修改行。
5.取代
-
r:取代光标处之字符
-
R:取代字符直到按Esc键为止。
6.复制和粘贴
-
yw:复制光标之字到字尾至缓存区。
-
yy:复制光标所在之行至缓存区。
-
#yy:如5yy,复制光标所在之处以下5行至缓冲区。
-
P:把缓冲区的资料粘贴在所在行之后。
-
p:把缓冲区的资料粘贴在所在行之前。
7.撤销
- u:undo,复原至上一动作。
8.重复上一个命令
- .: :重复上一个命令
VIM的底行模式的操作
1.退出命令
-
:wq或:x,先保存再退出VIM。
-
:w 或:w filename :保存/保存为filename名的文件。
-
:q :退出
-
:q!或:quit :不保存退出VIM。
-
:wq! :强制保存,并退出。
2.显示和取消行号
-
:set nu:显示行号。
-
:set nonu:不显示行号。
3.字符搜索
-
:/str :正向搜索
-
:?str :反向搜索
-
:/str/ w file :正向搜索,并将第一个包含字符串str的行写入file文件
-
:/str1,/str2/w file :正向搜索,并将包含字符串str1的行至包含字符串str2的行写入file文件
4.删除正文
-
:d :删除光标所在行
-
:3 d :删除3行
-
:.,$ d :删除当前行至正文的末尾
-
:/str1/,str2/d :删除从字符串str1到str2的所有行。
5.恢复文件
- :recover :恢复文件