版权声明:转载请注明出处!谢谢! https://blog.csdn.net/qq_28114615/article/details/86668562
目录
进入vim的方式很简单,比如说现在要用vim打开test.cpp,只需要在命令行中输入vim test.cpp即可,其他的像txt等文件也是一样的。
vim 共分为三种模式,分别是普通模式,插入模式和命令模式。
下面来分别总结一下三种模式下的常用键位:
1 普通模式
1.1 光标移动
1.2 搜索替换
键位 | 描述 |
---|---|
/word | 在当前文档中光标之后搜索字符串"word“ |
?word | 在当前文档中光标之前搜索字符串”word" |
n | 重复前一个搜索动作 |
N | 重复前一个搜索动作的反向动作 |
:n1,n2/word1/word2/g | 将第n1行和第n2行之间的字符串word1,并将其以字符串word2进行替换 |
:n,$s/word1/word2/g | 将第n行到最后一行间的字符串word1以字符串word2进行替换(n的缺省值为1) |
:n,$s/word1/word2/gc | 与上述相同,在替换前会对用户进行询问 |
1.3 删除、复制、粘贴
键位 | 描述 |
---|---|
x | 小写,向后删除一个字符 |
X | 大写,向前删除一个字符 |
nx | 数字+x,连续向后删除 n 个字符,nX同 |
dd | 删除光标所在的一整行 |
ndd | 数字+dd,删除从光标所在行开始的向下 n 行 |
dG | 删除光标以后的所有数据 |
d$ | 删除光标所在行中光标之后的所有数据 |
d0 | 删除光标所在行中光标之前的所有数据 |
yy | 复制光标所在行 |
nyy | 复制光标所在行开始向下的n行 |
y1G | 复制光标所在行到第一行的所有数据 |
yG | 复制光标所在行到最后一行的所有数据 |
y0 | 复制光标之前到行首的所有数据 |
y$ | 复制光标之后到行尾的所有数据 |
p | 将复制的数据粘贴到下一行 |
P | 将复制的数据粘贴到上一行 |
J | 将光标所在行与下一行结合为一行 |
u | 撤销 |
Ctrl+r | 恢复 |
. | 小数点,重复上一个动作 |
1.4 注释、取消注释
1.4.1 注释
①Ctrl+v进入块选择模式;
②选中所要注释的行(不用将整行选中,只要选中需要注释的行的一部分即可);
③大写字母I进入插入模式,进入后勿动光标;
④在光标处输入" // ";
⑤按两下ESC,此时就注释成功了。
1.4.2 取消注释
①Ctrl+v进入块选择模式;
②选中要注释的行所在的注释符(只选中注释符);
③按d键即可删除注释符。
2 插入模式
键位 | 描述 |
---|---|
i | 进入输入模式,从光标所在处输入 |
I | 进入输入模式,从光标所在行第一个非空格符处输入 |
a | 进入输入模式,从光标所在处的下一个字符处输入 |
A | 进入输入模式,从光标所在行的最后一个字符处输入 |
o | 进入输入模式,从光标所在行的下一行开辟新行进行输入 |
O | 进入输入模式,从光标所在行的上一行开辟新行进行输入 |
s | 进入输入模式,并删除光标所在处字符 |
S | 进入输入模式,并清空光标所在行的所有数据 |
r | 进入替代模式,输入的字符替代光标处字符,Backspace可删除字符 |
R | 进入替代模式,输入的字符替代光标处字符,Backspace可恢复原字符 |
3 命令模式
进入方式 | 在普通模式下输入英文字符“ : ” |
---|---|
键位 | 描述 |
w | 保存文档 |
q | 退出Vim |
q! | 不保存退出Vim |
wq | 保存后退出Vim |
ZZ | 若无改动则不保存退出;若有改动则保存后退出 |
w filename | 文档另存为filename |
r filename | 将文档filename读入光标所在行的下一行 |
n1,n2 w filename | 将第n1行到第n2行的内容保存到filename中 |
! command | 暂时退出Vim,执行command命令 |
set nu | 显示行号 |
set nonu | 取消行号 |
set cindent | 自动缩进 |