我们所用的Vim快捷键都是在普通模式下进行的,拥有移动光标的快捷,明显提高了效率。在码字的过程中,我们可以把鼠标扔到一边了。不过,开头我还是要拿出笔默写的~~~
一、Vim光标操作
快捷键 | 功能描述 |
---|---|
h | 光标向左移动 |
j | 光标向下移动 |
k | 光标向上移动 |
l | 光标向右移动 |
gg(1G) | 移动光标到行首 |
G | 移动光标到行末 |
nG | n为数字,把光标移动到第n行 |
N[Enter] | n为数字,向下移动n行 |
/word | 向下寻找一个名为word的字符串 |
0或功能[Home] | 光标移动到最前面的字符处 |
$或功能键[End] | 光标移动到最末尾的字符处 |
:n1,n2s/word1/word2/g | n1,n2为数字。利用word2代替word1字符串 |
:1,$s/word1/word2/g | 从首行到末行,利用word2代替word1字符串 |
:1,$s/word1/word2/gc | 从首行到末行,利用word2代替word1字符串,提示用户是否替换 |
n | 复前一个查找的操作。一般会向下查找相同的字符串 |
N | 和上面的查找操作相反,会反向查找前面的一个查找操作 |
n<space> | n为数字,空格键是代表往右移动n个字符 |
[ Ctrl + f ] | 屏幕向下移动翻页 |
[ Ctrl + b] | 屏幕向上移动翻页 |
二、删除,复制,粘贴
快捷键 | 功能描述 |
x,X | x为向后删除一个字符,X为向前删除一个字符 |
dd | 删除光标所在的整行 |
ndd | n为数字。删除光标所在向下的n行。 |
yy | 复制光标所在的那一行 |
nyy | n为数字。复制光标所在的向下n行。 |
p,P | p为粘贴在光标所在行之后,P为粘贴在光标所在行之前 |
[Ctrl + r] | 重做上一个操作 |
J | 删除换行符,可以将两行并为一行 |
u | 撤销上一步操作,可以多次使用u回到未修改前 |
三、普通模式切换到插入模式快捷键
i,I | 进入插入模式: i为当前光标进入,I为当前所在行的第一个非空格符插入 |
a,A | 进入插入模式: a为从目前光标的所在的下一个字符插入,A从光标所在行的最后一个字符插入 |
o,O | 进入插入模式: o为目前光标所在的下一行进行插入新的一行,O为在目前光标所在处的上一行插入新的一行 |
r,R | 进入替换模式: r为替换光标所在字符一次,而R会一直替换光标所在的文字字符,直到退出替换模式 |
四、Vim的保存和退出
编辑指令 | 功能描述 |
:q! | 不保存,强制退出 |
:wq | 保存并退出 |
:q | 离开vim |
ZZ | 保存并退出 |
:w[Filename] | 将编辑的数据保存到另一个文件中 比如":w b.txt "=>另存为b.txt |
:r[Filename] | 在编辑模式中,读入另一个文件的内容,把Filename中的内容加载到编辑的数据中。 |
:n1,n2 w [Filename] | 把n1到n2之间的内容保存在Filename文件中 |
:set nu | 显示行号 |
:set nonu | 与set nu相反,取消行号 |