Vim 编辑器速查手册

Vim 是高效的文本编辑器,掌握它可以大幅提升编辑效率。

模式切换

基本模式

  • 普通模式 (Normal):默认模式,用于移动和命令
  • 插入模式 (Insert):输入文本
  • 可视模式 (Visual):选择文本
  • 命令模式 (Command):执行命令

进入插入模式

i  - 光标前插入
a  - 光标后插入
I  - 行首插入
A  - 行尾插入
o  - 下方新行
O  - 上方新行

退出插入模式

Esc 或 Ctrl+[

移动光标

基本移动

h  - 左
j  - 下
k  - 上
l  - 右

单词移动

w  - 下一个词首
b  - 上一个词首
e  - 当前词尾
W  - 下一个词首(空格分隔)
B  - 上一个词首(空格分隔)

行内移动

0  - 行首
^  - 首个非空字符
$  - 行尾
f{char}  - 移动到字符
F{char}  - 反向移动到字符
t{char}  - 移动到字符前
;  - 重复 f/t
,  - 反向重复 f/t

屏幕移动

H  - 屏幕顶部
M  - 屏幕中间
L  - 屏幕底部
Ctrl+d  - 向下半屏
Ctrl+u  - 向上半屏
Ctrl+f  - 向下一屏
Ctrl+b  - 向上一屏

文件移动

gg  - 文件开头
G   - 文件末尾
{n}G 或 :{n}  - 第 n 行

编辑操作

删除

x   - 删除字符
dd  - 删除整行
dw  - 删除到词尾
d$  - 删除到行尾
d0  - 删除到行首
D   - 删除到行尾(同 d$)

复制粘贴

yy  - 复制整行
yw  - 复制到词尾
y$  - 复制到行尾
p   - 在光标后粘贴
P   - 在光标前粘贴

修改

r{char}  - 替换单个字符
R   - 进入替换模式
cw  - 修改到词尾
cc  - 修改整行
c$  - 修改到行尾
C   - 修改到行尾(同 c$)
s   - 删除字符并插入
S   - 删除整行并插入

撤销重做

u      - 撤销
Ctrl+r - 重做
.      - 重复上次操作

可视模式

进入可视模式

v   - 字符选择
V   - 行选择
Ctrl+v  - 块选择

选择后操作

d  - 删除选中
y  - 复制选中
c  - 修改选中
>  - 缩进
<  - 反缩进

搜索替换

搜索

/{pattern}  - 向下搜索
?{pattern}  - 向上搜索
n   - 下一个匹配
N   - 上一个匹配
*   - 搜索光标下的词
#   - 反向搜索光标下的词

替换

:s/old/new/      - 替换当前行第一个
:s/old/new/g     - 替换当前行所有
:%s/old/new/g    - 替换全文所有
:%s/old/new/gc   - 替换全文,逐个确认

文件操作

保存退出

:w   - 保存
:q   - 退出
:wq  - 保存并退出
:q!  - 强制退出不保存
ZZ   - 保存并退出
ZQ   - 强制退出不保存

多文件

:e file   - 打开文件
:bn  - 下一个缓冲区
:bp  - 上一个缓冲区
:ls  - 列出缓冲区
:sp file  - 水平分屏打开
:vsp file - 垂直分屏打开

窗口操作

Ctrl+w s  - 水平分屏
Ctrl+w v  - 垂直分屏
Ctrl+w h/j/k/l  - 切换窗口
Ctrl+w q  - 关闭窗口
Ctrl+w =  - 均等窗口大小

实用技巧

宏录制

q{register}  - 开始录制到寄存器
q            - 停止录制
@{register}  - 播放宏
@@           - 重复上次宏

标记

m{a-z}  - 设置标记
'{a-z}  - 跳转到标记行
`{a-z}  - 跳转到标记位置

折叠

zf{motion}  - 创建折叠
za  - 切换折叠
zo  - 打开折叠
zc  - 关闭折叠
zR  - 打开所有折叠
zM  - 关闭所有折叠

总结

Vim 的学习曲线陡峭,但掌握后效率极高。