| 按键 | 解释 |
|---|---|
| h,j,k,l | 左,右,上,下 |
| 按键 | 解释 |
|---|---|
| w,W,b,B | 向前,向后一个词 |
| e,E | 词尾 |
| (,) | 下一个,前一个句子的开头 |
| {,} | 下一个,前一个段落的开头 |
| [[, ]] | 下一个,前一个小节的开头 |
| 按键 | 解释 |
|---|---|
| 0,$ | 所在行的最前,最后位置 |
| ^ | 所在行的第一个非空字符位置 |
| +,- | 下一,前一行的第一个字符位置 |
| H | 屏幕显示区内最顶端一行 |
| M | 屏幕显示区内中间一行 |
| L | 屏幕显示区内最底端一行 |
| 按键 | 解释 |
|---|---|
| [Ctrl]F, [Ctrl]B | 向前,向后滚动一个屏幕显示范围 |
| [Ctrl]D, [Ctrl]U | 向下,向上滚动半个屏幕显示范围 |
| [Ctrl]E, [Ctrl]Y | 在窗口下方,上方再多显示一行 |
| z[Enter] | 滚动屏幕,直到光标在屏幕最上方 |
| z. | 滚动屏幕,直到光标在屏幕中间 |
| z- | 滚动屏幕,直到光标在屏幕最下方 |
| 按键 | 解释 |
|---|---|
| **/**pattern | 向前搜索字符pattern |
| **?**pattern | 向后搜索字符pattern |
| n,N | 在相同,不同的搜索方向上搜索上一次搜索的字符 |
| fx | 在所在行向前搜索字符x |
| Fx | 在所在行向后搜索字符x |
| ; | 重复执行上一个当前行搜索 |
| , | 重复执行上一个当前行搜索,但以相反的方向 |
| 按键 | 解释 |
|---|---|
| [Ctrl]G | 显示当前行号 |
| :set nu | 显示所有行号 |
| :set nonu | 取消显示所有行号 |
| nG | 移动到行号是n的一行 |
| G | 移动到当前文件的最后一行 |
| 按键 | 解释 |
|---|---|
| mx | 标记当前位置为x |
| **`**x | 移动光标至标记x |
| `` | 返回上一个标记 |
| **'**x | 移动到包含标记x的一行的开头 |
| '' | 返回包含上一个标记的一行的开头 |
| 按键 | 解释 |
|---|---|
| i,a | 在光标前,后输入内容 |
| I,A | 在光标行首,尾输入内容 |
| o,O | 在光标的下,上开启新行,输入内容 |
| 按键 | 解释 |
|---|---|
| r | 替换光标所在字符一次 |
| ~ | 更改大小写 |
| cm | 在移动范围为m的区域内更改文本,移动范围请查阅光标移动命令。(如:cw 为更改下一个词) |
| cc | 更改当前行 |
| C | 更改至行尾的内容 |
| R | 一直替换光标所在字符,直到按下[ESC]结束 |
| s | 删除当前字符,并继续输入 |
| S | 删除当前行,并继续输入 |
| 按键 | 解释 |
|---|---|
| x | 删除当前字符 |
| X | 删除光标左边的字符 |
| dm | 在移动范围为m的区域内删除文本,移动范围请查阅光标移动命令。(如:dw 为删除下一个词) |
| dd | 删除当前行 |
| D | 删除至行尾的内容 |
| p,P | 将删除的内容插入在光标前,后位置 |
| 按键 | 解释 |
|---|---|
| ym | 在移动范围为m的区域内拷贝文本,移动范围请查阅光标移动命令。(如:yw 为拷贝下一个词) |
| yy,Y | 拷贝当前行 |
| p,P | 将拷贝的内容插入在光标前,后位置 |
| 按键 | 解释 |
|---|---|
| . | 重复上一个编辑操作 |
| u | 撤销上一个编辑操作 |
| U | 撤销当前行的编辑操作 |
| J | 将光标所在行与下一行结合成同一行 |
| 按键 | 解释 |
|---|---|
| ZZ | 保存并退出 |
| :x | 保存并退出 |
| :wq | 保存("write" 写入)并退出 |
| :w | 保存文件 |
| :w! | 保存文件(强制) |
| :30,60w newfile | 将从第30行到第60行的内容保存为新文件,叫做newfile |
| :30,60w>> file | 将从第30行到第60行的内容保存添加至文件file |
| :q | 退出 |
| :q! | 退出,放弃所有更改 |
| :e! | 放弃自上次保存后的所有修改 |