跳到主要内容

Vim / Neovim

Vim 与 Neovim 是模态编辑器,所有操作围绕「模式切换」展开,熟练后能在不离开主键区的情况下完成绝大部分编辑动作。

模式

模式进入用途
普通(Normal)Esc移动、删除、复制等命令
插入(Insert)i / a / o输入文本
可视(Visual)v / V / Ctrl-V选取
命令(Command):执行 Ex 命令

基础移动与编辑

h j k l " 左/下/上/右
w b e " 按单词前进/后退/到词尾
0 $ " 行首/行尾
gg G " 文件首/文件尾
i a o " 进入插入模式(光标前/后/下一行)
dd yy p " 删除/复制当前行,粘贴
u Ctrl-R " 撤销/重做

d/y 与移动命令组合可操作任意范围,例如 d$ 删除到行尾,y3w 复制三个单词。

常用 Ex 命令

:w " 保存
:q / :q! " 退出 / 强制退出
:e <file> " 打开文件
:%s/foo/bar/g " 全文替换
:s/foo/bar/g " 当前行替换
/pattern " 向下搜索
?pattern " 向上搜索
:nohlsearch " 清除搜索高亮

配置文件

Vim 使用 ~/.vimrc,Neovim 推荐使用 ~/.config/nvim/init.lua(Lua 语法,更强大):

-- init.lua
vim.opt.number = true
vim.opt.relativenumber = true
vim.opt.tabstop = 2
vim.opt.shiftwidth = 2
vim.opt.expandtab = true
vim.keymap.set("n", "<leader>w", ":w<CR>")

LSP 与 Treesitter

Neovim 内置 LSP 客户端,配合 nvim-lspconfig 启用各语言服务后,可在编辑器内完成跳转、补全、重命名、诊断。Treesitter 提供增量解析的语法高亮与代码结构树,显著提升高亮准确度与导航能力。