Vim编辑器是Vi编辑器的升级版,Vi支持的所有语法都可在Vim中使用
I
:编辑模式,通过方向键控制光标移动
ECS
:直接按ESC,退出编辑模式进入normal模式
:e
:重新加载当前文档
:e!
:重新加载当前文档,并丢弃已做的改动
:w
:保存修改。
:wq
:保存退出,即使文件没有被修改也强制写入,并更新文件的修改时间
ZZ
:保存退出。
:x
:类似于:wq
,保存退出,仅当文件被修改时才写入
:q
:如果未进行任何更改,不保存退出
:q!
: 退出并销毁所做的任何更改
以下移动都是在normal模式下,编辑模式通过上下左右按键控制移动。
0:移动到行首。g0:移到光标所在屏幕行行首。gg:到文件头部。G:到文件尾部。h或者退格: 左移一个字符;l或者空格: 右移一个字符;j: 下移一行;k: 上移一行;gj: 移动到一段内的下一行;gk: 移动到一段内的上一行;+或者Enter: 把光标移至下一行第一个非空白字符。-: 把光标移至上一行第一个非空白字符。w: 前移一个单词,光标停在下一个单词开头;W: 移动下一个单词开头,但忽略一些标点;e: 前移一个单词,光标停在下一个单词末尾;E: 移动到下一个单词末尾,如果词尾有标点,则移动到标点;b: 后移一个单词,光标停在上一个单词开头;B: 移动到上一个单词开头,忽略一些标点;ge: 后移一个单词,光标停在上一个单词末尾;gE: 同 ge ,不过‘单词’包含单词相邻的标点。^: 移动到本行第一个非空白字符。: 移动到行尾。g: 移动光标所在屏幕行行尾。n|: 移到递n列上。nG: 到文件第n行。H: 移到屏幕最顶端一行。M: 移到屏幕中间一行。L: 移到屏幕最底端一行。
p: 在光标之后粘贴。P: 在光标之前粘贴。d: 删除(剪切)在可视模式下选中的文本。d或者D: 删除(剪切)当前位置到行尾的内容。d0: 删除(剪切)当前位置到行首的内容d1G或者dgg: 剪切光标以上的所有行。dG: 剪切光标以下的所有行。y: 复制在可视模式下选中的文本。yy或者Y: 复制整行文本。y: 从光标当前位置复制到行尾。y0: 从光标当前位置复制到行首。y1G或ygg: 复制光标以上的所有行。yG: 复制光标以下的所有行。
[7] u
:取消7个改动。
:undo 7
:撤销7个改变。
:undolist
:查看撤销历史。
:earlier 7m
:回到7分钟前
:later 7s
:前进7秒
ctrl + r
:重做最后的改动。
U
:取消当前行中所有的改动。