esc
- 从其他模式返回普通模式Ctrl + [
- 同esc
,但是更顺手
<C-o>
- 允许执行一次普通模式中的命令,然后回到插入模式
该模式是一种特殊模式,该模式仅存在于插入模式时使用
<C-o>
命令以及执行普通模式命令之前这段时间,在进入该模式后,一旦执行了普通模式中的命令,该模式立即结束并进入插入模式。
v
- 进入 字符可视模式(-- VISUAL --)V
- 进入 行可视模式(-- VISUAL LINE --)<C-v>
- 进入 列块可视模式(-- VISUAL BLOCK --),用于表格操作会比较方便<C-v>
进入的 visual block 模式支持列操作,可以通过此模式进行批量的缩进、注释、append 等操作:
" example
<Ctrl-v> " Ctrl+v
10j " 向下移动选中10行
<Shift-i> " 进入插入模式
// " 插入 // - JavaScript 注释
<esc> " 返回普通模式
f{char}
- 从光标所在位置向后查找第一个匹配的字符 {char}F{char}
- 从光标所在位置向前查找第一个匹配的字符 {char}t{char}
- 从光标所在位置向后查找第一个匹配的字符 {char},光标停留在匹配字符之前的字符上T{char}
- 从光标所在位置向后查找第一个匹配的字符 {char},光标停留在匹配字符之后的字符上
*
- 向后查找光标当前所在单词#
- 向前查找光标当前所在单词/
- 向后查找/
之后输入的单词?
- 向前查找?
之后输入的单词
n
- 重复上一次查找,包含*
#
/
和?
N
- 同 n,只不过方向相反;
- 重复上一次查找,包含f
F
t
T
,
- 同;
,只不过方向相反
Ctrl + O
- 跳转到光标之前所在的位置Ctrl + I
- 跳转到光标之后所在的位置%
- 跳转到跟光标所在括号(()``[]``{}
)匹配的括号gd
- 跳转到变量的声明位置
<C-v>
- 使用字符编码输入;十进制:<C-v>97
,十六进制:<C-v>u0076
<C-k>{char1}{char2}
- 使用二合字母插入不常用的字符,查看帮助文档:h digraph-table
:#,#s/old/new/g
-#,#
表示行号,在行号指定的范围内替换:%s/old/new/g
- 全局替换:%s/old/new/gc
- 全局替换,但是会弹框提示询问是否替换R
- 进入替换模式,从光标所在字符一直向后替换,知道按 esc 键返回普通模式c{motion}
- 删除 {motion} 指定范围的内容并进入插入模式
<C-h>
- 删除光标前的一个字符<C-w>
- 删除光标前的一个 word<C-u>
- 删除至行首
<C-r>{register}
- 在插入模式中,将指定寄存器中的内容插入到光标所在位置,{register} 指 寄存器 id<C-v>065
- 插入 ASCii 编码代表的字符<C-v>u{1234}
- 插入十六进制编码代表的字符<C-v>{char}
- 插入普通字符<C-k>{char1}{char2}
- 二合字母插入
二合字母插入是指用两个字符来表示一个特殊字符,例如
¡
这符号,可以用!I
这两个字符来表示;Vim 中可以通过:h digraph-table
命令来查看二合字母列表。
.
- 重复上一次修改,这里的修改是指对文件内容的修改,比如x
,d
,c
等命令,以及插入模式中对文件内容的修改n
- 重复*
、#
、/
、?
查找过程N
- 反向重复*
、#
、/
、?
查找过程;
- 重复f
、F
、t
、T
查找过程,
- 反向重复f
、F
、t
、T
查找过程
=
- 格式化当前行>>
- 向右缩进一格(一个 tab 的缩进)<<
- 向左缩进一格(一个 tab 的缩进)>G
- 将当前至文档末尾的所有行向右缩进一个层级(一个 tab 的缩进)
gg=G
- 整个文件格式化2,5>
- 第二到第五行向右缩进一个空格2,5<
- 第二到第五行向左缩进一个空格
g~
- 大小写反转(大 -> 小,小 -> 大)gu
- 当前字符转换为小写gU
- 当前字符转换为大写
~
- 大小写反转(大 -> 小,小 -> 大)u
- 当前字符转换为小写U
- 当前字符转换为大写
gUaw
- 整个单词大写gUap
- 整个段落大写
gv
- 选中上次高亮选中的文本范围o
- 可视模式中用于切换选中区域的移动端(可视模式一端固定另一端可以移动,o
可以用来切换哪一端可以移动)
{number}<C-a>
- 跳转到光标之后的第一个数字,并将数字的值增加 {number}{number}<C-x>
- 跳转到光标之后的第一个数字,并将数字的值减少 {number}
<C-r>=
- 该命令会调用 表达式寄存器,允许在屏幕下方输入数学表达式,点<CR>
后会将计算结果插入到光标当前所在的位置
<C-G>
- 显示文件路径信息 & cursor 在文件中位置的信息ga
- 在屏幕下方展示光标所在字符的编码
:! + cmd
- 执行外部命令,这里的cmd
指在 shell 中可以运行的命令;可以执行任意外部指令,也允许带参数
:r filename
- 将 filename 文件的内容插入到光标所在行的下面:r !ls
- 将 ls 命令的结果插入到光标所在行的下面
hls
/hlsearch
- 高亮搜索匹配项is
/incsearch
- 显示部分匹配ic
/ignorecase
- 忽略大小写spell
- 开启拼写检查
关闭该 option 只需要在 option 之前加上 no
。
本文只是记录作者自己不太熟悉但是感觉会用到的快捷键,并不是比较完善的 cheatsheets;如果想看比较完备的 cheatsheets,请移步 韦易笑 整理的 awsome-cheetsheets。
- GitHub
- Email: web.taox@gmail.com