Vim 快捷键参考

提升你的 Vim 使用效率,快速掌握常用快捷键

快捷键 描述
h 向左移动一个字符
j 向下移动一行
k 向上移动一行
l 向右移动一个字符
w 移动到下一个单词的开头
b 移动到上一个单词的开头
e 移动到下一个单词的结尾
ge 移动到上一个单词的结尾
0 移动到行首
$ 移动到行尾
^ 移动到行首的第一个非空白字符
gg 移动到文件开头
G 移动到文件结尾
H 移动到屏幕顶部
M 移动到屏幕中间
L 移动到屏幕底部
Ctrl+f 向前翻一页
Ctrl+b 向后翻一页
Ctrl+d 向下翻半页
Ctrl+u 向上翻半页
% 跳转到匹配的括号
H 移动到屏幕顶部
M 移动到屏幕中间
L 移动到屏幕底部
f{char} 向右查找本行下一个{char}字符
F{char} 向左查找本行上一个{char}字符
t{char} 向右移动到{char}字符前
T{char} 向左移动到{char}字符后
; 重复上一次f/t/F/T命令
, 反向重复上一次f/t/F/T命令
} 跳到下一段落开头
{ 跳到上一段落开头
nG 跳转到第n行
:n 跳转到第n行(命令模式)
快捷键 描述
i 在当前光标位置前插入
I 在当前行首插入
a 在当前光标位置后插入
A 在当前行尾插入
o 在当前行下方插入新行
O 在当前行上方插入新行
s 删除当前字符并进入插入模式
S 删除当前行并进入插入模式
r 替换当前字符(不进入插入模式)
R 进入替换模式
C 删除从光标到行尾的内容并进入插入模式
cc 删除整行并进入插入模式
gi 跳转到上次插入模式离开的位置并进入插入模式
Ctrl+o 插入模式下临时执行普通模式命令
Ctrl+r 插入寄存器内容
快捷键 描述
u 撤销上一步操作
Ctrl+r 重做上一步撤销的操作
yy 复制当前行
dd 删除当前行(剪切)
p 在光标后粘贴
P 在光标前粘贴
x 删除当前字符
X 删除前一个字符
dw 删除到下一个单词开头
d$ 删除到行尾
d0 删除到行首
J 将下一行与当前行合并
~ 切换当前字符大小写
gU+motion 将指定区域转为大写
gu+motion 将指定区域转为小写
g~+motion 切换指定区域字符大小写
>>> 增加当前行缩进
<<< 减少当前行缩进
.> 重复上一次的缩进操作
>>[n]j 增加当前行及下面n行的缩进
>>[n]k 增加当前行及上面n行的缩进
:[n],[m]> 增加第n行到第m行的缩进
v+移动键+> 对选中区域增加缩进
v+移动键+ < 对选中区域减少缩进
gg+G+> 对整个文件增加缩进
gg+G+ < 对整个文件减少缩进
快捷键 描述
/pattern 向前搜索指定模式
?pattern 向后搜索指定模式
n 继续向前搜索
N 继续向后搜索
:set hls 高亮显示搜索结果
:set nohls 取消高亮显示搜索结果
:nohlsearch 临时取消高亮显示
:s/old/new 替换当前行的第一个匹配项
:s/old/new/g 替换当前行的所有匹配项
:%s/old/new/g 替换整个文件的所有匹配项
快捷键 描述
ma 在当前位置设置标记a
`a 跳转到标记a的位置
A-Z 设置全局标记(可在不同文件间跳转)
`` 跳转到上一次编辑的位置
`. 跳转到最后一次修改的位置
`" 跳转到最后一次退出文件的位置
`[ 跳转到上一次修改的起始位置
`: 跳转到上一次执行命令的位置
快捷键 描述
:w 保存文件
:wq 保存并退出
:x 保存并退出(与:wq相同)
:q 退出(如果文件未修改)
:q! 强制退出(不保存修改)
:w newfile 另存为新文件
:saveas newfile 另存为新文件
:r filename 在当前位置插入文件内容
:r !command 在当前位置插入命令输出
:e filename 编辑新文件
:e! 重新加载当前文件(丢弃修改)
:f filename 重命名当前文件
快捷键 描述
:buffers 列出所有缓冲区
:bnext 切换到下一个缓冲区
:bprev 切换到上一个缓冲区
:bfirst 切换到第一个缓冲区
:blast 切换到最后一个缓冲区
:bdelete 删除当前缓冲区
:bd! 强制删除当前缓冲区
:windo 对所有窗口执行命令
快捷键 描述
:split 水平分割窗口
:vsplit 垂直分割窗口
Ctrl+w+s 向下分割窗口
Ctrl+w+v 向右分割窗口
Ctrl+w+h 切换到左侧窗口
Ctrl+w+j 切换到下方窗口
Ctrl+w+k 切换到上方窗口
Ctrl+w+l 切换到右侧窗口
Ctrl+w+c 关闭当前窗口
Ctrl+w+o 只保留当前窗口
快捷键 描述
:tabnew 新建标签页
:tabclose 关闭当前标签页
:tabnext 切换到下一个标签页
:tabprev 切换到上一个标签页
:tabfirst 切换到第一个标签页
:tablast 切换到最后一个标签页
:tabmove 移动当前标签页
快捷键 描述
:help 打开帮助文档
Ctrl+c 在帮助文档中关闭当前窗口
Ctrl+d 在帮助文档中向下滚动
Ctrl+u 在帮助文档中向上滚动
Ctrl+f 在帮助文档中查找
:q 退出帮助文档