1.Vim 的三大核心模式
(1)Normal 模式(普通模式)
默认进入的模式,用于移动、复制、删除、跳转等操作。
按 Esc 随时回到 Normal 模式。
(2)Insert 模式(插入模式)
用于输入文本。
进入方式:
| 指令 | 含义 |
|---|---|
i |
在光标前插入 |
a |
在光标后插入 |
I |
在行首插入 |
A |
在行尾插入 |
o |
在下一行新开一行插入 |
O |
在上一行新开一行插入 |
(Insert 模式用 Esc 退出)
(3) Visual 模式(可视模式)
用于选中文本。
| 指令 | 含义 |
|---|---|
v(小写) |
字符可视模式 |
V(大写) |
行可视模式 |
Ctrl + v |
块可视模式(矩形选择) |
2.移动光标(Motion)
基础移动
| 指令 | 说明 |
|---|---|
h |
左 |
j |
下 |
k |
上 |
l |
右 |
w |
下一个单词开头 |
b |
上一个单词开头 |
e |
当前/下一个单词结尾 |
0(数字) |
行首 |
$ |
行尾 |
gg |
文件开头 |
G |
文件末尾 |
:n |
跳到第 n 行 |
高级跳转
| 指令 | 说明 |
|---|---|
% |
匹配跳转括号 (){}[] |
} |
下一个段落 |
{ |
上一个段落 |
fx |
跳到下一个字符 x |
tx |
跳到 x 的前一格 |
3.文本编辑(Edit)
删除(delete)
| 指令 | 说明 |
|---|---|
x |
删除光标字符 |
dw |
删除单词 |
dd |
删除整行 |
d$ |
删除到行尾 |
d0 |
删除到行首 |
复制(yank)
| 指令 | 说明 |
|---|---|
yy |
复制整行 |
yw |
复制一个单词 |
y$ |
复制到行尾 |
粘贴(put)
| 指令 | 说明 |
|---|---|
p(小写) |
在光标后粘贴 |
P(大写) |
在光标前粘贴 |
替换(replace)
| 指令 | 说明 |
|---|---|
rX |
用 X 替换光标字符 |
R |
进入 overwrite 模式 |
4.撤销与重做
| 指令 | 说明 |
|---|---|
u(小写) |
撤销 |
Ctrl + r |
重做 |
U(大写) |
撤销整个行的修改 |
5.搜索与替换
搜索(Search)
| 指令 | 说明 |
|---|---|
/keyword |
向下搜索 |
?keyword |
向上搜索 |
n |
下一个 |
N |
上一个 |
替换(Substitute)
单行替换
:s/旧/新/
全文替换
:%s/旧/新/g
交互确认
:%s/旧/新/gc
6.插件管理(基本)
打开文件
:e 文件名
保存文件
:w
保存并退出
:wq
不保存退出
:q!
分屏(超好用)
| 指令 | 说明 |
|---|---|
:sp |
水平分屏 |
:vsp |
垂直分屏 |
Ctrl + w + w |
切换窗口 |
Ctrl + w + h/j/k/l |
定向切换 |
7.批量缩进与格式化
| 指令 | 说明 |
|---|---|
>> |
当前行右缩进 |
<< |
当前行左缩进 |
= |
自动格式化(常与可视模式选中使用) |
8. 宏(Macro)------高阶神器
| 指令 | 说明 |
|---|---|
qX |
开始录制宏到寄存器 X |
q |
结束录制 |
@X |
执行宏 X |
@@ |
重复上次宏 |
9.常用组合指令示例(非常实用)
| 组合指令 | 作用 |
|---|---|
d2w |
删除两个单词 |
y3j |
复制下面三行 |
3dd |
删除三行 |
ci( |
修改括号内部内容 |
di" |
删除双引号内内容 |
:%s/foo/bar/g |
全文替换 |