Vim 的核心是 模式,不同模式下按键的功能完全不同。请务必记住你当前处于哪种模式。
Vim 的几种主要模式
-
普通模式:打开文件后默认进入的模式,用于移动光标、复制、粘贴、删除等操作。按
<Esc>可以从其他模式返回。 -
插入模式:在此模式下可以输入文本。按
i,a,o等键进入。 -
可视模式:相当于“选择”模式,用于高亮选取文本块。按
v(字符选择)、V(行选择)、Ctrl+v(块选择)进入。 -
命令模式:用于执行保存、退出、搜索替换等命令。在普通模式下按
:进入。
一、基础必备(生存技能)
这些命令是使用 Vim 必须掌握的。
1. 模式切换
| 快捷键 | 功能描述 |
|---|---|
i | 在光标前进入插入模式 |
a | 在光标后进入插入模式 |
o | 在当前行下方新建一行并进入插入模式 |
I | 在行首进入插入模式 |
A | 在行尾进入插入模式 |
O | 在当前行上方新建一行并进入插入模式 |
v | 进入字符可视模式 |
V | 进入行可视模式 |
Ctrl + v | 进入块可视模式 |
Esc 或 Ctrl + [ | 返回普通模式 |
2. 保存与退出(在命令模式下)
| 命令 | 功能描述 |
|---|---|
:w | 保存文件 |
:q | 退出 Vim |
:q! | 强制退出,不保存修改 |
:wq 或 :x | 保存并退出 |
ZZ | (普通模式下)保存并退出 |
3. 光标移动(在普通模式下)
| 快捷键 | 功能描述 |
|---|---|
h j k l | 左、下、上、右(强烈推荐使用,代替方向键) |
w | 移动到下一个单词开头 |
b | 移动到上一个单词开头 |
0 | 移动到行首 |
^ | 移动到行首的第一个非空白字符 |
$ | 移动到行尾 |
gg | 移动到文件第一行 |
G | 移动到文件最后一行 |
5G 或 :5 | 移动到第 5 行 |
Ctrl + f | 向下翻页 |
Ctrl + b | 向上翻页 |
二、高效编辑(核心技巧)
1. 删除、复制与粘贴
| 快捷键 | 功能描述 |
|---|---|
x | 删除光标下的字符 |
dd | 删除/剪切当前行 |
5dd | 删除/剪切从当前行开始的 5 行 |
dw | 删除一个单词 |
d$ 或 D | 删除从光标到行尾 |
yy | 复制当前行 |
5yy | 复制从当前行开始的 5 行 |
yw | 复制一个单词 |
p | 在光标后/下方粘贴 |
P | 在光标前/上方粘贴 |
u | 撤销 |
Ctrl + r | 重做 |
2. 搜索与替换
| 快捷键/命令 | 功能描述 |
|---|---|
/pattern | 向后搜索 pattern |
?pattern | 向前搜索 pattern |
n | 继续搜索下一个 |
N | 继续搜索上一个 |
:%s/old/new/g | 全局替换:将文件中所有的 old 替换为 new |
:%s/old/new/gc | 全局替换,但每次替换前询问确认 |
:s/old/new/g | 替换当前行的所有 old |
三、进阶技巧(提升效率)
1. 组合操作(Vim 的灵魂)
Vim 的强大之处在于 操作符 + 动作命令 的组合。
-
操作符:
d(删除),y(复制),c(修改并进入插入模式) -
动作命令:
w(单词),$(行尾),t)(直到)字符)
| 快捷键 | 功能描述 |
|---|---|
cw | 删除从光标到单词结尾并进入插入模式(非常常用!) |
ct" | 删除从光标到 " 字符之间的内容并进入插入模式 |
daw | 删除一个单词(包括周围空格) |
di" | 删除 "" 双引号内部的内容 |
ci[ | 删除 [] 中括号内部的内容并进入插入模式 |
yap | 复制一个段落 |
2. 分屏与标签页
| 命令/快捷键 | 功能描述 |
|---|---|
:sp file | 水平分屏打开另一个文件 |
:vsp file | 垂直分屏打开另一个文件 |
Ctrl + w + w | 在分屏间切换 |
:tabnew file | 在新标签页打开文件 |
gt | 切换到下一个标签页 |
gT | 切换到上一个标签页 |
3. 其他实用技巧
| 快捷键/命令 | 功能描述 |
|---|---|
. | 重复上一次的修改操作(神键!) |
* | 高亮选中当前光标下的单词,并向后搜索 |
>> | 向右缩进当前行 |
<< | 向左缩进当前行 |
== | 自动缩进当前行 |
Ctrl + n / Ctrl + p | 在插入模式下代码补全 |
四、实用命令模式命令
| 命令 | 功能描述 |
|---|---|
:set number 或 :set nu | 显示行号 |
:set nonumber 或 :set nonu | 隐藏行号 |
:set hlsearch 或 :set hls | 高亮搜索结果 |
:noh | 暂时关闭当前的高亮显示 |
:set autoindent 或 :set ai | 开启自动缩进 |
:help <command> | 查看命令的帮助文档 |
学习建议
-
循序渐进:先熟练掌握第一部分“基础必备”的所有命令。
-
摆脱鼠标:强迫自己使用
h/j/k/l移动光标。 -
多用组合:理解“操作符+动作命令”的思想,尝试使用
daw,ci"等组合。 -
善用帮助:遇到不熟悉的命令,随时使用
:help <command>查看官方文档。
将这张表打印出来或在旁边放一份,边用边学,很快你就能体会到 Vim 带来的高效和乐趣!
596

被折叠的 条评论
为什么被折叠?



