VIM常用命令
VIM在命令行环境中(比如操作VPS)非常实用,习惯之后对工作效率的提高大有裨益。但是剑一天不用,锈的也是很快的。前几天在终端中偶然发现了命令vimtutor,该教程非常巧妙简洁,整个教程操作一遍只需要半个小时左右,基本的操作就很熟悉了。现在将其小节汇总于下,方便记忆。
浏览命令
- 光标在屏幕文本中的移动既可以用箭头键,也可以使用 - hjkl字母键。- h (左移) j (下行) k (上行) l (右移)
- 欲进入 Vim 编辑器(从命令行提示符),请输入:vim 文件名 - <回车>
- 欲退出 Vim 编辑器,请输入 - <ESC>- :q!- <回车>放弃所有改动。 或者输入- <ESC>- :wq- <回车>保存改动。
- 在正常模式下删除光标所在位置的字符,请按: - x
- 欲插入或添加文本,请输入: - i 输入欲插入文本 <ESC> 在光标前插入文本- A 输入欲添加文本 <ESC> 在一行后添加文本
特别提示:按下 
删除和撤销
- 欲从当前光标删除至下一个单词,请输入: - dw
- 欲从当前光标删除至当前行末尾,请输入: - d$
- 欲删除整行,请输入: - dd
- 欲重复一个动作,请在它前面加上一个数字: - 2w
- 在正常模式下修改命令的格式是: - operator- [number]- motion其中:- operator- 操作符,代表要做的事情,比如 d 代表删除- [number]- 可以附加的数字,代表动作重复的次数- motion- 动作,代表在所操作的文本上的移动,例如 w 代表单词(word), $ 代表行末等等。
- 欲移动光标到行首,请按数字0键:0 
- 欲撤消以前的操作,请输入: - u(小写的u) 欲撤消在一行中所做的改动,请输入:- U(大写的U) 欲撤消以前的撤消命令,恢复以前的操作结果,请输入:- CTRL-R
更改类命令
- 要重新置入已经删除的文本内容,请按小写字母 - p键。该操作可以将已删除的文本内容置于光标之后。如果最后一次删除的是一个整行,那么该行将置于当前光标所在行的下一行。
- 要替换光标所在位置的字符,请输入小写的 - r和要替换掉原位置字符的新字符即可。
- 更改类命令允许您改变从当前光标所在位置直到动作指示的位置中间的文本。比如输入 - ce可以替换当前光标到单词的末尾的内容;输入- c$可以替换当前光标到行末的内容。
- 更改类命令的格式是: - c [number] motion
搜索、替换和跳转
- CTRL-G用于显示当前光标所在位置和文件状态信息。- G用于将光标跳转至文件最后一行。 先敲入一个行号然后输入大写- G则是将光标移动至该行号代表的行。- gg用于将光标跳转至文件第一行。
- 输入 - /然后紧随一个字符串是在当前所编辑的文档中正向查找该字符串。 输入- ?然后紧随一个字符串则是在当前所编辑的文档中反向查找该字符串。 完成一次查找之后按- n键是重复上一次的命令,可在同一方向上查 找下一个匹配字符串所在;或者按大写- N向相反方向查找下一匹配字符串所在。- CTRL-O带您跳转回较旧的位置,- CTRL-I则带您到较新的位置。
- 如果光标当前位置是括号(、)、[、]、{、},按 - %会将光标移动到配对的括号上。
- 在一行内替换头一个字符串 old 为新的字符串 new,请输入 - :s/old/new在一行内替换所有的字符串 old 为新的字符串 new,请输入- :s/old/new/g在两行内替换所有的字符串 old 为新的字符串 new,请输入- :#,#s/old/new/g在文件内替换所有的字符串 old 为新的字符串 new,请输入- :%s/old/new/g进行全文替换时询问用户确认每个替换需添加 c 标志- :%s/old/new/gc
与外部的交互
- :!command用于执行一个外部命令 command。 请看一些实际例子: (MS-DOS) | (Unix) | comment
—————-|—————— |————- :!dir | :!ls | - 用于显示当前目录的内容。 :!del FILENAME | :!rm FILENAME | - 用于删除名为 FILENAME 的文件。
- :w FILENAME可将当前 VIM 中正在编辑的文件保存到名为 FILENAME 的文件中。
- v motion :w FILENAME可将当前编辑文件中可视模式下选中的内容保存到文件FILENAME 中。
- :r FILENAME可提取磁盘文件 FILENAME 并将其插入到当前文件的光标位置后面。
- :r !dir可以读取 dir 命令的输出并将其放置到当前文件的光标位置后面。
复制粘贴和插入
- 输入小写的 - o可以在光标下方打开新的一行并进入插入模式。 输入大写的- O可以在光标上方打开新的一行。
- 输入小写的 - a可以在光标所在位置之后插入文本。 输入大写的- A可以在光标所在行的行末之后插入文本。
- e命令可以使光标移动到单词末尾。
- 操作符 - y复制文本,- p粘贴先前复制的文本。
- 输入大写的 - R将进入替换模式(相当于按下- Insert键),直至按- <ESC>键回到正常模式。
- 输入 - :set xxx可以设置 xxx 选项。一些有用的选项如下: ‘ic’ ‘ignorecase’ 查找时忽略字母大小写 ‘is’ ‘incsearch’ 查找短语时显示部分匹配 ‘hls’ ‘hlsearch’ 高亮显示所有的匹配短语 选项名可以用完整版本,也可以用缩略版本。
- 在选项前加上 no 可以关闭选项: :set noic 
帮助
- 输入 - :help或者按- <F1>键或- <Help>键可以打开帮助窗口。
- 输入 - :help cmd可以找到关于 cmd 命令的帮助。
- 输入 - CTRL-W- CTRL-W可以使您在窗口之间跳转。
- 输入 - :q以关闭帮助窗口
- 您可以创建一个 vimrc 启动脚本文件用来保存您偏好的设置。 
- 当输入 : 命令时,按 - CTRL-D可以查看可能的补全结果。按- <TAB>可以使用一个补全。