image.png

常用命令总结

选择

v 从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束。
V 从光标当前行开始,光标经过的行都会被选中,再按一下V结束。
Ctrl + v 从光标当前位置开始,选中光标起点和终点所构成的矩形区域,再按一下Ctrl + v结束。
ggVG 选中全部的文本, 其中gg为跳到行首,V选中整行,G末尾
选中后就可以用编辑命令对其进行编辑,如
d 删除
y 复制 (默认是复制到”寄存器)
p 粘贴 (默认从”寄存器取出内容粘贴)

操作

删除字符

将光标移到该字符上按下”x”。

删除一行

“dd”删除一整行内容

删除换行符

“J”可以把两行合并为一行,相当于两行之间的换行符被删除了

撤销

“u”可以撤消上一次的操作。

重做

用”CTRL-R”(重做)来反转撤消的动作

追加

“i”命令可以在当前光标之前插入文本。
“a”命令可以在当前光标之后插入文本。
“o”命令可以在当前行的下面另起一行,并使当前模式转为Insert模式。
“O”命令(注意是大写的字母O)将在当前行的上面另起一行。

退出

“ZZ”命令保存当前文件并退出Vim

放弃编辑

丢弃所有的修改并退出,用命令”:q!”。用”:e!”命令放弃所有修改并重新载入该文件的原始内容。

以Word为单位的移动

使用”w”命令可以将光标向前移动一个word的首字符上;比如”3w”将光标向前移动3个words。”b”命令则将光标向后移动到前一个word的首字符上。

移动到行首或行尾

“$”命令将光标移动到当前行行尾。
“^”命令将光标移动到当前行的第一个非空白字符上。

移动到指定行

用”G”命令指定一个命令计数,这个命令就会把光标定位到由命令计数指定的行上。比如”33G”就会把光标置于第33行上。没有指定命令计数作为参数的话, “G”会把光标定位到最后一行上。
在命令”%”之前指定一个命令计数比如”50%”将会把光标定位在文件的中间. “90%”跳到接近文件尾的地方。
“H”,”M”,”L”,分别将光标跳转到第一行,中间行,结尾行部分。

当前的位置

使用CTRL-G命令。
“set number”在每行的前面显示一个行号。
关闭行号用命令”:set nonumber”。
“:set ruler”在Vim窗口的右下角显示当前光标位置。

滚屏

滚动一行”CTRL-E”和”CTRL-Y”
移动半屏”CTRL-U”和”CTRL-D”
滚动整屏”CTRL-F”和 “CTRL-B”

简单搜索

“?|/string”命令可用于搜索一个字符串。”n”查找上次查找的字符串的下一个位置
如果查找内容忽略大小写”set ignorecase”, 精确匹配”set noignorecase” 。

查找word

光标word上然后按下”*”键
如果你用”/the”来查找Vim也会匹配到”there”。要查找作为独立单词的”the”使用如下命令:”/the>“。”>“是一个特殊的记法,它只匹配一个word的结束处。近似地,”\<”匹配到一个word的开始处。

高亮显示搜索结果

“:set hlsearch”,关闭这一功能:”:set nohlsearch”。

改变文本

x 代表dl(删除当前光标下的字符)
X 代表dh(删除当前光标左边的字符)
D 代表d$(删除到行尾的内容)
C 代表c$(修改到行尾的内容)
s 代表cl(修改一个字符)
S 代表cc(修改一整行)
命令”3dw”和”d3w”都是删除3个word。第一个命令”3dw”可以看作是删除一个word的操作执行3次;第二个命令”d3w”是一次删除3个word。

替换单个字符

“r”等待你键入下一个字符用以替换当前光标下的那个字符。

重复改动

“.”命令会重复上一次做出的改动。


参考

https://www.cnblogs.com/yangjig/p/6014198.html
http://www.runoob.com/linux/linux-vim.html