说明
- C-字母 = Ctrl + 字母
- char = 任意字符
开始编辑
insert
| 按键 |
功能 |
说明 |
| i(I) |
insert |
当前位置插入(当前行前) |
| a(A) |
append |
当前字符后面插入(当前行后) |
| o(O) |
open a line below |
当前行的下面(当前行上面) |
模式
| 模式 |
功能 |
说明 |
| 普通模式(ESC) |
normal |
操作和移动 |
| 插入模式(i,a,o) |
insert |
编辑 |
| 命令模式(:) |
command |
执行命令 |
| 可视模式(v,V,C-v) |
visual |
选择 |
可视模式
visual
| 按键 |
说明 |
| v |
选中字符 |
| V |
选中当前行 |
| C-v |
方块选择 |
插入模式技巧
insert
| 按键 |
功能 |
说明 |
| C-h |
删除 |
上一个字符 |
| C-w |
删除 |
当前单词 |
| C-u |
删除 |
当前行(终端可使用) |
| C-a |
移动到开头 |
终端 |
| C-e |
移动到结尾 |
终端 |
切换insert和normal模式
| 按键 |
功能 |
说明 |
| C-[ |
切换到normal |
代替ESC |
| C-c |
切换到normal |
代替ESC |
| gi |
跳转到上一次编辑的位置操作 |
|
普通模式
normal
快速移动
| 按键 |
功能 |
说明 |
| hjkl |
移动 |
上下左右 |
| w(W) |
移动 |
下一个单词开头 |
| e(E) |
移动 |
下一个单词结尾 |
| b(B) |
移动 |
上一个单词开头 |
大写以空白格为分隔符
行间搜索移动
| 按键 |
功能 |
说明 |
| f{char}(F) |
跳转 |
跳转到char上(往前搜) |
| t{char} |
跳转 |
跳转到char前一个字符 |
| ; or , |
继续 |
继续查找 |
水平移动
| 按键 |
功能 |
说明 |
| 0 |
移动 |
移动到行首 |
| $ |
移动 |
移动到行尾 |
页面移动
| 按键 |
功能 |
说明 |
| gg |
移动 |
文件开头 |
| G |
移动 |
文件结尾 |
| C-o |
移动 |
快速返回上一位置 |
| H/M/L |
移动 |
屏幕开头/中间/尾 |
| C-u |
翻页 |
上 |
| C-f |
翻页 |
下 |
| zz |
翻页 |
中间 |
删除命令
| 按键 |
功能 |
说明 |
| {number}x |
删除 |
删除一个字符 |
| diw |
delete |
删除一个单词(不删除空格) |
| dw |
删除word |
删除一个单词 |
| {number}dd |
删除 |
删除当前行 |
| dt{符号} |
删除 |
删除符号之间的内容 |
| d |
删除 |
直接删除选中部分 |
快速修改
| 按键 |
功能 |
说明 |
| r(R) |
替换 |
替换一个字符(替换后面一个字符) |
| c{任意命令} |
改变 |
删除然后进入i |
| caw |
改变 |
删除并改变一个单词 |
| s(S) |
替换 |
删除当前字符,然后进入i(删除整行) |
| u |
回退 |
撤销 |
| C-r |
回退 |
前进 |
查询
| 按键 |
功能 |
说明 |
| / or ? |
查询 |
|
| n or N |
移动 |
下 /上 |
| * / # |
移动 |
前 / 后 |
Text Object
[ number ]< command >[ text object ]
| 按键 |
功能 |
| viw |
选中一个单词 |
| vaw |
选中一个单词(周围) |
| caw |
修改一个单词 |
| ci+符号 |
删除符号内的内容 |
| ... |
|
寄存器
复制粘贴
normal
| 按键 |
功能 |
| y(yy) |
复制(复制一行) |
| p |
粘贴 |
| ” + y |
复制到系统剪切板 |
insert
宏
| 按键 |
功能 |
| q{char} |
录制宏,并存在a中 |
| q |
结束录制宏 |
| :normal @{char} |
批量恢复录制 |
| @{char} |
恢复录制 |
示例:
[]中间为示例操作流程
[
- I{char}当前行前加入char (例子)
- A{char}当前行后加入char(例子)
]
- q 结束录制
- 恢复录制@a
- 行选需要操作的文本
- :normal @a