vim-快捷键一览表


【基本操作】
快捷键功能
Esc从当前模式转换到“普通模式”。所有的键对应到命令。
i“插入模式”用于插入文字。回归按键的本职工作。
:“命令行模式”   Vim 希望你输入类似于保存该文档命令的地方

【方向键】
快捷键功能
h光标向左移动一个字符
j 或 Ctrl   + J光标向下移动一行
k 或 Ctrl   + P光标向上移动一行
l光标向右移动一个字符
0(数字   0)移动光标至本行开头
$移动光标至本行末尾
^移动光标至本行第一个非空字符处
w向前移动一个词   (上一个字母和数字组成的词之后)
W向前移动一个词   (以空格分隔的词)
5w向前移动五个词
b向后移动一个词   (下一个字母和数字组成的词之前)
B向后移动一个词   (以空格分隔的词)
5b向后移动五个词
G移动至文件末尾
gg移动至文件开头

【浏览文档】
快捷键功能
(跳转到上一句
)跳转到下一句
{跳转到上一段
}跳转到下一段
[[跳转到上一部分
]]跳转到下一部分
[]跳转到上一部分的末尾
][跳转到上一部分的开头

【插入文本】
快捷键功能
a在光标后插入文本
A在行末插入文本
i在光标前插入文本
o(小写字母   o)在光标下方新开一行
O(大写字母   O)在光标上方新开一行

【特殊插入】
快捷键功能
:r [filename]在光标下方插入文件   [filename] 的内容
:r   ![command]执行命令   [command] ,并将输出插入至光标下方

【删除文本】
快捷键功能
x删除光标处字符
dw删除一个词
d0删至行首
d$删至行末
d)删至句末
dgg删至文件开头
dG删至文件末尾
dd删除该行
3dd删除三行

【简单替换文本】
快捷键功能
r{text}将光标处的字符替换成   {text}
R进入覆写模式,输入的字符将替换原有的字符

【复制/粘贴文本】
快捷键功能
yy复制当前行至存储缓冲区
["x]yy复制当前行至寄存器   x
p在当前行之后粘贴存储缓冲区中的内容
P在当前行之前粘贴存储缓冲区中的内容
["x]p在当前行之后粘贴寄存器   x 中的内容
["x]P在当前行之前粘贴寄存器   x 中的内容

【撤销/重做操作】
快捷键功能
u撤销最后的操作
Ctrl+r重做最后撤销的操作

【搜索和替换】
快捷键功能
/search_text检索文档,在文档后面的部分搜索   search_text
?search_text检索文档,在文档前面的部分搜索   search_text
n移动到后一个检索结果
N移动到前一个检索结果
:%s/original/replacement检索第一个   “original” 字符串并将其替换成 “replacement”
:%s/original/replacement/g检索并将所有的   “original” 替换为 “replacement”
:%s/original/replacement/gc检索出所有的   “original” 字符串,但在替换成 “replacement” 前,先询问是否替换

【书签】
快捷键功能
m {a-zA-Z}在当前光标位置设置书签,书签名可用一个大小写字母({a-zA-Z})
:marks列出所有书签
{a-zA-Z}跳转到书签   {a-zA-Z}

【选择文本】
快捷键功能
v进入逐字可视模式
V进入逐行可视模式
Esc退出可视模式

【改动选择文本】
快捷键功能
~切换大小写
d删除一个词
c变更
y复制
>右移
<左移
!通过外部命令进行过滤

【保存并退出】
快捷键功能
:q退出   Vim,如果文件已被修改,将退出失败
:w保存文件
:w   new_name用   new_name 作为文件名保存文件
:wq保存文件并退出   Vim
:q!退出   Vim,不保存文件改动
ZZ退出   Vim,如果文件被改动过,保存改动内容
ZQ与   :q! 相同,退出 Vim,不保存文件改动


翻译整理自:https://www.maketecheasier.com/vim-keyboard-shortcuts-cheatsheet/