vim简介——编辑器之神
vim是一个文本编辑器,被称为编辑器之神,但与之强大功能所对应的,是陡峭的学习曲线
很多人学习vim都是从入门到放弃,之后便将其束之高阁。但是掌握之后,你将感受到vim哲学与效率的巨大提升
在学习之前需要明确的几点:
-
学习vim在开始是痛苦的
-
只有多用才会熟练
-
克服的一切困难都是值得的
快速入门
下面是vim的一个快速使用示范:
-
在命令行中键入
vim 1.cpp
,会直接进入vim的普通模式(Normal Pattern),此时是无法输入文字的 -
按下
i
,便进入了编辑模式(Insert Pattern),在编辑模式下,方可键入文字 -
输入文字
-
按下
ESC
,输入:wq
,我们便回到了命令行,并且成功完成了文件的编辑
vim模式
在上面我们可以发现,vim具有普通模式和编辑模式(这是最常用的模式),不同的模式具有不同的特点,这是vim的特性,也是我们初学会感受到别扭的地方
在普通模式下不可以插入文字,只能输入命令。要想进行编辑,需要切换到插入模式
vim打开之后即进入普通模式,**在vim的普通模式下,所有的键都是功能键。**对于以下不同情景的目的,有不同的按键帮助我们提升效率
对于以下特殊情景,不同的快捷键可以快速移动光标。比如输入2 G,即可移动到第二行
常用命令
移动到特定位置:
按键 | 功能 |
---|---|
0 | 光标移动到行首 |
$ | 光标移动到行尾部 |
gg | 光标移动到文件的第一个字符 |
G | 光标移动到文件的最后一个字符 |
n G | 光标移动到第n行 |
w | 光标移动到下个单词的开始 |
e | 光标移动到本单词最后一个字母 |
b | 光标移动到本单词的第一个字母 |
上下左右:
除了上下左右箭头可以移动之外,vim支持使用hjkl
进行光标的移动,分别对应
按键 | 功能 |
---|---|
h 或 左箭头键 | 光标向左移动一个字符 |
j 或 向下箭头 | 光标向下移动一个字符 |
k 或 向上箭头 | 光标向上移动一个字符 |
l 或 向右箭头 | 光标向右移动一个字符 |
字符串匹配
输入/
之后,可以输入text
,之后光标会移动到text首次出现的地方,在这之后:
按键 | 功能 |
---|---|
n | 光标移动到下一个text出现的地方 |
N | 光标移动到前一个text出现的地方 |
替换
普通模式,可以替换单个字母,方式很简单,先按下r,然后输入要替换的字母即可
删除
按键 | 功能 |
---|---|
dw | 删除光标到下个单词的开始处所有文本 |
de | 删除光标到本单词的结束处所有文本 |
d2w | 删除光标到后面第二个单词的开始处所有文本 |
撤销
按键 | 功能 |
---|---|
u | 撤销 |
ctrl+r | 撤销你的撤销 |
拷贝/粘贴
按键 | 功能 |
---|---|
yy | 拷贝当前行 |
p | 在当前位置后面粘贴 |
P | 在当前位置的下一行粘贴 |
普通模式切换到插入模式
按键 | 功能 |
---|---|
a | 在光标后插入 |
o | 在当前行后面插入一个新行 |
O | 在当前行前面插入一个新行 |
保存/退出
保存/退出都要在命令模式下完成
按键 | 功能 |
---|---|
:w | 仅保存 |
:q | 退出 |
:wq | 保存且退出 |