正常模式(Normal Mode)
浏览和修改文本内容,一般的,打开 Vim 都是正常模式。在任何模式下,只要按下 Esc 键就可以返回正常模式。
| 命令 | 作用(解释) |
|---|---|
| h | 表示往左 |
| j | 表示往下 |
| k | 表示往右 |
| l | 表示往上 |
| ctrl + f | 上一页 |
| ctrl + b | 下一页 |
| w,e / W,E | 跳到单词的后面,小写包括标点 |
| b,B | 单词为单位往前跳动光标,小写包含标点 |
| o | 开启新的一行 |
| ^ | 一行的开始 |
| $ | 一行的结尾 |
| gg | 文档的第一行 |
| [N]G | 文档的第 N 行或者最后一行 |
| dd | 删除一行 |
| dw | 删除一个单词 |
| x | 删除后一个字符 |
| X | 删除前一个字符 |
| D | 删除一行最后一个字符 |
| [N]yy | 复制一行或者 N 行 |
| yw | 复制一个单词 |
| p | 粘贴 |
| u | 撤销上一步操作 |
| ctrl+ r | 恢复上一步操作 |
| . | 重复最后一个命令 |
| /pattern | 向光标下搜索字符串,可以是正则表达式 |
| ?pattern | 向光标上搜索字符串 |
| n | 向下搜索前一个搜素动作 |
| N | 向上搜索前一个搜索动作 |
插入模式(Insert Mode)
向文本中添加内容
| 命令 | 作用(解释) |
|---|---|
| i | 插入到光标前面 |
| I | 插入到行的开始位置 |
| a | 插入到光标的后面 |
| A | 插入到行的最后位置 |
| o, O | 新开一行 |
| Esc | 关闭插入模式 |
视觉模式 (Visual Mode)
相当于高亮选取文本后的普通模式,可视模式具有子模式,以行为单位进行选取的可视行模式,使用 “V” 键进入(也就是 Shift+v );和以块为单位进行选取的可视块模式,使用 “Ctrl+v” 键进入。
| 命令 | 作用(解释) |
|---|---|
| v | 选中一个或多个字符 |
| V | 选中行 |
| ctrl+ v | 选中列 |
命令模式 (Command Mode)
操作文本文件(而不是操作文本文件的内容),例如保存文件;或者用来改变编辑器本身的状态,例如设定多栏窗口、标签或者退出编辑器
| 命令 | 作用(解释) |
|---|---|
| :set nu | 显示行号 |
| :set nonu | 取消显示行号 |
| :set paste | 设置粘贴模式 |
| :%s/old/new/g | 全文替换 |
| :w | 保存 |
| :wq, :x | 保存并关闭 |
| :q | 关闭(已保存) |
| :q! | 强制关闭 |
| :split | 水平方向分割出一个窗口 |
| :vsplit | 垂直方向分割出一个窗口 |
| :close | 关闭窗口 |
| ctrl+ w | 切换窗口, h 到左边窗口,j 到下方窗口,k 到上方窗口,l 到右边窗口 |