Skip to content

nvim guide shortcut tips

ES edited this page Jul 16, 2026 · 1 revision

常用快捷键技巧

面向日常使用的本配置专属快捷键速查。通用 Vim 操作见 Wiki 的 0103,键位定义开发见 Keymap Guide


1. 前置:Leader 键

本配置 Leader 键为空格 Space。很多快捷键是「先按空格,再按一两个键」,例如:

  • <Space>- 横向分屏
  • <Space>| 纵向分屏
  • <Space>wd 关闭当前窗口

按一下空格后稍停,若启用了 which-key 会提示该前缀下所有可用快捷键


2. 模式与退出

操作 快捷键 说明
退出插入模式 jk 插入模式下输入 jk 等价于 Esc,手不用离开主键盘区
智能 Esc Esc 普通模式下:先关闭所有浮窗(补全、菜单等),若无浮窗则清除搜索高亮

3. 窗口与分屏

操作 快捷键 说明
切换窗口焦点 Ctrl+w h/j/k/l Neovim 内置,左/下/上/右窗口
横向分屏 <Space>- 当前窗口下方新开一屏
纵向分屏 <Space>| 当前窗口右侧新开一屏
关闭当前窗口 <Space>wd 关闭当前分屏,不关 buffer

技巧:分屏后习惯用 Ctrl+w h/j/k/l 在窗口间跳转,比鼠标更高效


4. Buffer 切换

操作 快捷键 说明
上一个 / 下一个 buffer [b / ]b Neovim 0.11+ 内置,等价于 :bprevious / :bnext
第一个 / 最后一个 buffer [B / ]B 内置,等价于 :brewind / :blast
智能关闭 buffer <Space>bd 浮窗 / 分屏 / buffer 快速关闭
关闭左/右侧 buffer <Space>bh / <Space>bl bufferline 提供
关闭其他 / 全部 <Space>bo / <Space>ba

注意H / L 保留为 Vim 原生的「跳到屏幕顶 / 底」,不再用于 buffer 切换


5. 行与编辑

操作 快捷键 说明
上/下移动当前行 Alt+Down / Alt+Up 普通模式下移动当前行,可重复按
上/下移动选中行 可视模式下 Alt+Down / Alt+Up 多行选中后整体上移/下移
缩进/反缩进选中块 Tab / Shift+Tab 在可视模式下,保持选中并缩进
删除/修改不占剪贴板 d / c / x d = delete,c = change;内容进入“黑洞”寄存器,不会覆盖系统剪贴板。复制用 y = yank

技巧:需要“删掉这段并粘贴到别处”时,用 y 复制后再 d 删除,或先 d 再到目标处用 "0p 从复制寄存器粘贴


6. 剪贴板

操作 快捷键 说明
复制到系统剪贴板 可视模式下 Ctrl+c 选中后按,可与终端、浏览器等互通;SSH 时本机复制多为 Ctrl+Shift+C

从系统剪贴板粘贴仍用 Vim 默认:"+p(普通模式)或 "+P(在光标前粘贴)


7. 导航

操作 快捷键 说明
上一/下一光标位置 Alt+Left / Alt+Right 类似“前进/后退”,跳转历史
向下/上滚动 5 行 Ctrl+e / Ctrl+y 本配置改为每次 5 行,便于细调视图
跳到第 N 行 NggNG:N 100gg:100 到第 100 行
跳到文件头/尾 gg / G 第一行 / 最后一行

行内导航(Vim 内置):

  • 0 行首第一个字符,^ 行首非空白
  • $ 行尾
  • w 下一词首,b 上一词首,e 当前/下一词尾
  • f<char> / F<char> 本行下一/上一处字符,; / , 重复/反向

8. 结构化跳转(Tree-sitter)

基于语法树的智能跳转,按 [(prev)或 ](next) + 标识符。比正则搜索更准、更快

跳转目标 英文助记 上一个 下一个 说明
函数调用 function [f ]f 调用名,如 foo()f
函数调用结尾 Function end [F ]F 函数调用末尾(>)
变量声明 variable [v ]v 变量名,如 let a = 1a
变量声明结尾 Variable end [V ]V 赋值右侧末尾
字符串 string [s ]s 字符串字面量开头(" / ' / `
字符串结尾 String end [S ]S 字符串结尾引号
XML/HTML 标签,Markdown 标题 tag / title [t ]t 标签开头 <
标签结尾,Markdown 标题 Tag / Title end [T ]T 标签结尾 >
诊断 diagnostic [d ]d 上/下一个 LSP 诊断
诊断结尾 Diagnostic end [D ]D 跳到诊断行结尾位置
属性(对象键值对 / JSX 属性 / CSS 声明 / JSON / YAML / TOML 键值对) property [p ]p 对象/JSON/TOML 的 key: value、JSX 属性、CSS 声明
属性结尾 Property end [P ]P

Vim 原生 ]/[ 跳转

跳转目标 上一个 下一个 说明
方法开头 [m ]m 按花括号识别 Java 风格方法,不依赖 Tree-sitter
方法结尾 [M ]M 按花括号识别 Java 风格方法
C 注释边界 [/[* ]/]* 上一个 /* 开头 / 下一个 */ 结尾
Git hunk [c ]c 当前配置由 gitsigns 提供;diff 窗口中保留原生 diff 跳转

重复上一次跳转; / ,(前进/后退)


9. 保存

操作 快捷键 说明
保存当前文件 :w 或配置中的 <C-s> 仅当前 buffer
保存所有缓冲区 Ctrl+Alt+S 所有已修改 buffer 写入磁盘;部分终端对 Ctrl+Alt 支持不好,可改用 :wa

插件提供的键位(如 LSP、文件树、模糊查找等)多在各自插件配置或 :help 中说明,按一次 <Space> 也可快速浏览当前前缀下的映射

Clone this wiki locally