vim配置分享/快速上手指南
2026年4月4日 · 543 字 · 3 分钟
本文将 Vim 视为一种高度可组合的“编程语言”,深度解析了“动词+名词”的核心交互逻辑与多模态操作架构。内容涵盖从基础位移到宏录制、修饰符等进阶技巧,并集成了 CapsLock 改键映射及 .vimrc 生产力配置实战。通过打通从终端到浏览器的全域 Vim 生态,旨在帮助开发者彻底摆脱鼠标依赖,重塑极致的文本编辑效率。
Vim Note
学习目标
- 避免离开键盘热键,避免使用鼠标,提高开发效率
学习资源
- Missing Semester - 3. Vim 编辑器
- 大佬们的学习笔记
- vim自带的vimtutor
配置
- 键位映射
- 插件配置
特色
- 多模态编辑器:
- <ESC>正常模式:在文件中四处移动光标进行修改
- i 插入模式:插入文本
- r 替换模式:替换文本
- v 可视化模式(一般,V 行,<C-v>块):选中文本块
- : 命令模式:用于执行命令
- Vim的接口是一种编程语言: Vim 的接口本身也是一个程序语言:键入操作(以及其助记名) 是命令,这些命令也是可组合的。
基本操作
一、缓存,标签页,窗口
- Vim 会维护一系列打开的文件,称为 “缓存”。一个 Vim 会话包含一系列 标签页,每个标签页包含 一系列 窗口(分隔面板)。每个窗口显示一个缓存
- 跟网页浏览器等其他你熟悉的程序不一样的是, 缓存和窗口不是一一对应的关系; 窗口只是缓冲区的视图。一个缓存可以在 多个 窗口打开,甚至在同一 个标签页内的多个窗口打开。这个功能其实很好用,比如可以 查看同一个文件的不同部分。
- 分屏:
:sp(水平) |:vsp(垂直)。窗口只是缓存的视图,可同时查看同文件的不同部分。
二、命令行
:q退出(关闭窗口):w保存(写):wq保存然后退出:e{文件名} 打开要编辑的文件:ls显示打开的缓存:help {标题}打开帮助文档:help :w打开:w命令的帮助文档:help w打开w移动的帮助文档
三、指令组成
1. 名词 - Noun
尽量放弃方向键,使用
hjkl保持手指在主键区。
- 基础:
h(左)j(下)k(上)l(右) - 单词:
w(下个词首) |b(词初) |e(词尾) - 行内:
0(绝对行初) |^(第一个非空字符) |$(行尾) - 垂直:
gg(文件头) |G(文件尾) |{行数}G(跳至指定行) - 查找:
f{字符}(行内向前找字符) |t{字符}(找字符前一个位置) - 搜索:
/{正则表达式}(向下搜索) |?(向上搜索) |n/N(跳至下/上一个匹配)
2. 动词 - Verb
i进入插入模式 |o/O在下方/上方新开一行并进入插入模式d{移动}删除(如dw删词,d$删至行尾)c{移动}改变(删除并进入插入模式,如cw改写单词)y复制 (Yank) |p粘贴 (Paste)u撤销 |<C-r>重做x删除单个字符 |s替换单个字符
- 在 Visual (可视) 模式下:选中一段文字后按 U,选中的内容会全部变大写。
三、 Vim 编程语言
Vim 的强大源于这个公式:[数字] + [修饰符] + [动词] + [名词]
1. 计数 (Count)
3w向后移动 3 个单词。5j向下移动 5 行。10dd删除 10 行。
2. 修饰符 (Modifiers)
用于定义操作范围:i (inner - 内部) 或 a (around - 周围)。
ci(改变当前括号()内部的内容。di"删除双引号内的字符串。da{删除整个花括号块(含花括号本身)。
3. 宏 (Macro)
- 宏录制:
q{a}开始录制到寄存器a。- 执行一系列复杂操作。
q停止录制。@{a}重放操作(配合数字如100@a批量处理)。
四、 个人配置与扩展
1. 配置文件 .vimrc
Vim 的灵魂在于自定义。
可以说,一个好的配置决定了vim是古老编辑器还是现代实用工具()
建议手动维护,不要盲目复制他人配置。
- 必改映射: 建议将
<CapsLock>(大小写锁定) 映射为<ESC>,极大缓解手指压力。
(后文附修改方法)
- 核心插件推荐:
ctrlp.vim:模糊搜索文件。NERDTree:树形文件浏览器。vim-easymotion:远距离光标“瞬移”。
2. 生态延伸
- Shell:
set -o vi让命令行支持 Vim 快捷键。 - 浏览器: 安装
Vimium(Chrome) 或Tridactyl(Firefox) 实现纯键盘冲浪。
(但是我还是贴出我的配置hhh大家按需选用)
首先就是我改了windows系统设置,把大写锁定映射成了esc
方法如下
下载并安装 Microsoft PowerToys 如果你还没有安装,可以通过以下几种方式获取:
- 官方下载: 前往 GitHub PowerToys 发布页面 下载最新的
.exe安装包。 - 应用商店: 在 Windows 11 的 Microsoft Store 中搜索 “PowerToys” 并安装。
- 命令行安装: 打开终端(PowerShell),输入:
winget install Microsoft.PowerToys
安装完成后,按以下步骤操作:
- 打开 PowerToys 设置: 在任务栏右下角找到 PowerToys 图标并双击,或从开始菜单搜索打开。
- 进入键盘管理器: 在左侧菜单栏中找到 键盘管理器 (Keyboard Manager),确保顶部的开关处于“开启”状态。
- 重新映射键: 点击中间部分的 重新映射键 (Remap a key)。
- 添加映射关系:
- 点击左侧的加号
+。 - 在左侧的 选择 (Select) 下拉框中找到
Caps Lock(或者直接点击“按下”,然后在键盘上按一下大写锁定键)。 - 在右侧的 发送 (To send) 下拉框中选择
Esc(同理可以点击“按下”后按一下 Esc 键)。
- 点击左侧的加号
- 保存设置: 点击右上角的“确定”。
" --- 基础设置 ---
set nocompatible " 关闭 Vi 兼容模式,解锁 Vim 更多功能
syntax on " 开启语法高亮
set shortmess+=I " 启动时不显示欢迎界面(捐赠提示等)
set number " 显示行号
set relativenumber " 显示相对行号(方便 5j, 10k 这种跳转)
set laststatus=2 " 总是显示状态栏
set ruler " 打开状态栏标尺
set backspace=indent,eol,start " 允许在自动缩进、行尾、插入点前使用退格键
set hidden " 允许在未保存当前文件的情况下切换缓冲区(Buffer)
set mouse+=a " 开启鼠标支持
set smartindent " 智能自动缩进
set autoindent " 新行自动继承上一行的缩进
set shiftwidth=4 " 设置自动缩进时,每一级缩进4个空格的宽度
set tabstop=4 " 设定 tab 长度为 4
set hlsearch " 搜索时高亮匹配项
" 输入 :noh 可以临时关闭高亮
set autochdir " 自动切换当前目录为当前文件所在的目录
set showcmd " 在右下角显示当前输入的命令(比如输入 d 时会显示)
set wildmenu " 命令行模式下的补全增强(以列表形式展示选项)
set nobackup " 不生成备份文件 (~ 文件)
set noswapfile " 不生成交换文件 (.swp 文件)
" --- 搜索优化 ---
set ignorecase " 搜索时忽略大小写
set smartcase " 如果搜索词包含大写,则自动转为大小写敏感
set incsearch " 边输入边显示匹配结果
" --- 快捷键与行为调整 ---
" 禁用 Q 键,防止误入容易卡住的 Ex 模式
nmap Q <Nop>
let mapleader=" " " 设置空格为 Leader 键
" 按空格 + w 保存,按空格 + q 退出
nnoremap <leader>w :w<CR>
nnoremap <leader>q :q<CR>
" 按空格 + nh 取消搜索高亮
nnoremap <leader>nh :nohlsearch<CR>
" 禁用声音提示(报错时不会发出叮叮声)
set noerrorbells visualbell t_vb=
将vimrc文件保存到~/.vimrc文件中(~指的是c:/
在命令行唤起vim,输入:echo $MYVIMRC可以检查识别出的配置文件的路径
五、 练习建议
- 初级: 运行终端指令
vimtutor(或:Tutor),完成 30 分钟互动教学。 - 中级: 强制在所有编辑任务(笔记、代码、README)中使用 Vim,忍受最初 20 小时的低效期。
- 高级: 当你觉得某个操作太慢时,去搜“Vim better way for…”,永远有新命令等着你。