Vim 模式理解:普通 / 插入 / 可视 / 命令行 / 选择
更新时间:2026-08-30。本文是
languages/vim/主题入门层第 3 篇,理解模式是学 Vim 的分水岭。
本文要回答的问题
- Vim 到底有哪几种模式?各自是干嘛的?
- 为什么进 Vim 不能直接打字,要按
i? - 模式之间怎么切?切错了怎么回普通模式?
一、为什么要有模式
普通编辑器(如记事本)只有一种状态:你敲字就输入。Vim 把"移动光标"和"输入文字"分成两个模式——这个设计来自它前身 Vi(1976 年),那时候键盘没有方向键,移动也必须靠字母键,于是"移动"成了主模式。
核心收益:绝大多数时间你应该在普通模式(用来移动、删除、复制),只在要打字时才进插入模式。这跟"鼠标点一下再打字"是一个道理,但全程不用离开键盘。
二、四种核心模式
| 模式 | 进入键 | 在里面干什么 | 退出回普通模式 |
|---|---|---|---|
| 普通 Normal | Esc(或从别的模式) | 移动、删除、复制、粘贴、查找 | — |
| 插入 Insert | i / a / o 等 | 打字输入内容 | Esc |
| 可视 Visual | v / V / Ctrl-v | 选中文本块,再对其操作 | Esc |
| 命令行 Command-line | : / / / ? | 输入 Ex 命令、搜索 | Esc 或执行完 |
还有个**选择模式(Select)**一般碰不到,是可视模式的一个变体,这里先不管。
三、怎么切换(一张图就够)
记住一个锚点:Esc 永远把你带回普通模式。不管在哪个模式懵了,连按 Esc 就回到安全区。
四、进入插入模式的几种姿势
不只是 i,不同进入键决定"光标落在哪":
| 按键 | 含义 | 光标位置 |
|---|---|---|
i | insert | 在光标前插入 |
a | append | 在光标后插入 |
I | 行首插入 | 跳到行首再插入 |
A | 行尾插入 | 跳到行尾再插入 |
o | open below | 下方新开一行插入 |
O | open above | 上方新开一行插入 |
五、怎么确认自己在哪个模式
- 左下角状态栏:空 = 普通模式;
-- INSERT --= 插入;-- VISUAL --= 可视;-- SELECT --= 选择。 - 什么提示都没有、敲字母变命令 → 普通模式(正常)。
六、与本站主线衔接
一句话总结
Vim 把"移动"和"输入"拆成普通/插入两种主模式,绝大多数时间待在普通模式、只在打字时进插入模式;Esc 是回普通模式的万能键——理解这一点,Vim 的陡峭曲线就削平了一半。
上一篇:Vim 安装与第一步 下一篇:Vim 移动命令