全部文章

Vim / Neovim 入门

Vim 模式切换、常用操作、配置文件与 Neovim 现代化配置

目录 20 节

Vim / Neovim 入门

Vim 是终端下最强大的文本编辑器之一,Neovim 是其现代化分支。

这页适合做“从不会退出到能稳定编辑”的入门路线。学 Vim 最容易劝退人的地方,不是功能太多,而是前期模式切换和肌肉记忆没建立,所以一定要先学最小高频集。

推荐练习顺序

建议按下面顺序掌握:

  1. 先搞懂 Normal / Insert / Command 三种核心模式
  2. 再练移动、删除、复制、保存退出
  3. 然后补搜索替换、文本对象、批量编辑
  4. 最后再进入插件、LSP、现代化 Neovim 配置

只要先把“进、改、存、退”这几步练顺,后面扩展就会轻松很多。

安装

# Windows
scoop install neovim

# macOS
brew install neovim

# Ubuntu
apt install neovim -y

模式

模式进入方式说明
NormalEsc默认,导航
Inserti / a输入文字
Visualv / V选择文本
Command:执行命令

基础操作

移动

h j k l        ← ↓ ↑ →
w / b          下/上一个单词
0 / $          行首/行尾
gg / G         文件首/尾
Ctrl+d / Ctrl+u  半页下/上

编辑

i              光标前插入
a              光标后插入
o / O          下/上方新建行
x              删除字符
dd             删除整行
yy             复制整行
p              粘贴
u              撤销
Ctrl+r         重做

搜索替换

/keyword       向下搜索
?keyword       向上搜索
n / N          下/上一个匹配
:%s/old/new/g  全局替换
:s/old/new/g   当前行替换

文件操作

:w             保存
:q             退出
:wq            保存退出
:q!            强制退出不保存
:e file.txt    打开文件

实用技巧

ciw            修改当前单词
ci"            修改引号内内容
di(            删除括号内内容
.              重复上一次操作
*              搜索光标下的单词
ggVG           全选
>>  /  <<      缩进/取消缩进

多行编辑

Ctrl+v         进入列选择模式
选择行 → I     在每行前插入
选择行 → A     在每行后追加

Neovim 配置

配置文件位置:~/.config/nvim/init.lua(Linux/macOS)或 ~/AppData/Local/nvim/init.lua(Windows)

-- 基础设置
vim.opt.number = true          -- 行号
vim.opt.relativenumber = true  -- 相对行号
vim.opt.tabstop = 2            -- Tab 宽度
vim.opt.shiftwidth = 2         -- 缩进宽度
vim.opt.expandtab = true       -- Tab 转空格
vim.opt.clipboard = "unnamedplus"  -- 系统剪贴板
vim.opt.ignorecase = true      -- 搜索忽略大小写
vim.opt.smartcase = true       -- 有大写时区分
vim.opt.termguicolors = true   -- 真彩色

推荐发行版

不想从零配置可以直接用:

发行版说明
LazyVim开箱即用,模块化
AstroNvim美观,社区活跃
NvChad轻量快速

VS Code Vim 扩展

在 VS Code 中使用 Vim 键位:

// settings.json
{
  "vim.useSystemClipboard": true,
  "vim.hlsearch": true,
  "vim.leader": "<space>"
}

什么时候用 VS Code Vim,什么时候用 Neovim

  • VS Code Vim:适合想保留 VS Code 生态,但开始建立 Vim 操作习惯的人
  • Neovim:适合长期终端工作流、远程开发、tmux 配合使用场景

很多人会先在 VS Code 里练操作,再逐步迁移到原生 Neovim,这是一条很自然的路线。

常见问题

不会退出

先记住最关键的三个:

Esc
:wq
:q!

打字时一直乱跳

通常是因为还停留在 Normal 模式。想输入文字时,先按 ia 进入 Insert 模式。

一开始太难,坚持不下来

建议不要一上来追求全量替代 VS Code。先在小文件、配置文件、SSH 临时编辑里使用 Vim,练熟后再慢慢扩大使用范围。

延伸阅读

参考链接

阅读建议
  • - 先读标题和摘要,再结合目录决定从哪个章节开始精读。
  • - 看到具体命令、配置或步骤时,尽量在自己的环境里同步验证。
  • - 这类文档通常和本地环境有关,建议同时打开终端或编辑器对照操作。
适合谁看
  • - 希望把零散经验整理成长期可复用工作流的人
  • - 正在搭建开发环境、统一工具链或排查构建问题的开发者
  • - 希望阅读时顺手建立自己的操作清单或收藏体系的人
执行前检查
  • - 先浏览标题、摘要和目录,带着问题阅读会更高效
  • - 确认本机 Node、包管理器、终端和仓库依赖版本是否一致
  • - 如果页面里提到相关文档,尽量一起打开对照,效果通常更完整
同类内容
← 上一篇UnoCSS / Tailwind CSS 速查