转自:http://coolshell.cn/articles/5426.htmlhtml
基本命令:shell
i
→ Insert 模式,按 ESC
回到 Normal 模式.x
→ 删当前光标所在的一个字符。:wq
→ 存盘 + 退出 (:w
存盘, :q
退出) (陈皓注::w 后能够跟文件名)dd
→ 删除当前行,并把删除的行存到剪贴板里p
→ 粘贴剪贴板简单的移动光标vim
0
→ 数字零,到行头^
→ 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)$
→ 到本行行尾g_
→ 到本行最后一个不是blank字符的位置。/pattern
→ 搜索pattern
的字符串(陈皓注:若是搜索出多个匹配,可按n键到下一个)
拷贝/粘贴 (陈皓注:p/P均可以,p是表示在当前位置以后,P表示在当前位置以前)code
P
→ 粘贴yy
→ 拷贝当前行
Undo/Redoorm
u
→ undo<C-r>
→ redo
打开/保存/退出/改变文件(Buffer)htm
:e <path/to/file>
→ 打开一个文件:w
→ 存盘:saveas <path/to/file>
→ 另存为<path/to/file>
:x
,ZZ
或:wq
→ 保存并退出 (:x
表示仅在须要时保存,ZZ不须要输入冒号并回车):q!
→ 退出不保存:qa!
强行退出全部的正在编辑的文件,就算别的文件有更改。:bn
和:bp
→ 你能够同时打开不少文件,使用这两个命令来切换下一个或上一个文件。(陈皓注:我喜欢使用:n到下一个文件)
让咱们看一下vim是怎么重复本身的:字符串
.
→ (小数点) 能够重复上一次的命令你要让你的光标移动更有效率,你必定要了解下面的这些命令,千万别跳过。it
G
→ 到第 N 行 (陈皓注:注意命令中的G是大写的,另我通常使用 : N 到第N行,如 :137 到第137行)gg
→ 到第一行。(陈皓注:至关于1G,或 :1)G
→ 到最后一行。w
→ 到下一个单词的开头。e
→ 到下一个单词的结尾。最强的光标移动:io
%
: 匹配括号移动,包括(
,{
,[
. (陈皓注:你须要把光标先移到括号上)*
和#
: 匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词(*是下一个,#是上一个)
你必定要记住光标的移动,由于不少命令均可以和这些移动光标的命令连动。不少命令均可以以下来干:效率
<start position><command><end position>
例如 0y$
命令意味着:
0
→ 先到行头y
→ 从这里开始拷贝$
→ 拷贝到本行最后一个字符
d