持续更新vim命令
复制操作:
单行复制命令:
yy:复制当前整行的内容到vi缓冲区
多行复制命令:
1.nyy:复制当前行到第n行的内容到vi缓冲区
2.命令模式下输入a,by:复制a行到b行的内容到vi缓冲区
3.命令模式下输入a,bcoc:复制从a行到b行的内容到c行的后面
4.光标移到其实行,输入ma,光标移到结束行,输入mb,光标移到粘帖行,输入mc,然后在命令行里面输入'a,'bco'c
(把co改成m就成了剪切)
复制单词:
yw:复制当前光标所在位置到单词尾字符的内容到vi缓存区,相当于复制一个单词
nyw:复制n个单词
y$复制光标所在位置到行尾内容到缓存区
y^复制光标所在位置到行首内容到缓存区
撤销命令:
u:取消最近一次的操作,可以使用多次来恢复原有的操作
U:取消所有操作
Ctrl+R:可以恢复对使用u命令的操作
删除操作(命令模式使用):
x删除光标处的单个字符
dd删除光标所在行
dw删除当前字符到单词尾包括空格的所有字符
#x例如3x删除光标处向右的三个字符
#dd例如3dd从当前行开始向下删除三行文本
查找命令:
至上而下的查找:
/要查找的字符窜,其中/代表从光标所在位置起开始查找,例如:/work
至下而上的查找:
?要查找的字符窜例如:?work
替换:
:s/old/new用new替换行中首次出现的old
:s/old/new/g用new替换行中所有出现的old
:#,#s/old/new/g用new替换从第#行到第#行中出现的old
:%s/old/new/g用new替换整篇中出现的old
如果替换的范围较大时,在所有的命令尾加一个c命令,强制每个替换需要用户进行确认,例如:s/old/new/c或s/old/new/gc
vim中非常好用的命令:
%:跳转到配对的括号去
[[:跳转到代码块的开头去(但要求代码块中'{'必须单独占一行)
gD:跳转到局部变量的定义处
'':跳转到光标上次停靠的地方,是两个',而不是一个"
mx:设置书签,x只能是a-z的26个字母
`x:跳转到书签处("`"是1左边的键)
>+空格:增加缩进,"x>"表示增加以下x行的缩进
<+空格:减少缩进,"x<"表示减少以下x行的缩进