Vim 模式

Tydora 内置可选的 Vim 模式(LazyVim 风格),在源码模式与即时渲染模式下都提供完整的 normal / insert / visual 三态编辑,并附带 Leader 菜单(which-key)与 tmux 风格的窗格导航。

Note

Vim 模式默认关闭,关闭时不影响任何现有功能。可在设置的「Vim 模式」标签中开启。

开启与配置

打开设置(Ctrl+,)→「Vim 模式」标签:

设置项 默认值 说明
启用 Vim 模式 关闭 总开关
Leader 键 空格 normal 模式下按此键弹出 Leader 菜单;源码模式与即时渲染模式统一
菜单超时自动关闭 3000 ms Leader 菜单无操作自动关闭的时间
冲突快捷键让渡 见下 逐项决定冲突键交给 Vim 还是留给 App

配置保存在独立的 localStorage 键中,与快捷键设置互不干扰。

三态编辑

  • normal:移动、删除、复制、跳转等命令模式
  • insert:正常输入
  • visual:选区操作

源码模式与即时渲染模式均支持完整三态;即时渲染模式下 Vim 命令通过 TipTap 适配层执行,文本编辑命令(dw、ciw、yy 等)与原生 Vim 体验一致。

Leader 菜单

在 normal 模式按 Leader 键(默认空格)弹出 which-key 风格的菜单,再按对应键执行:

键 功能
e 切换文件树(侧栏)
空格 / o 打开文件(快速打开)
s 全局搜索
m 切换编辑模式
\ 水平分屏
- 垂直分屏
x 关闭窗格
h j k l 焦点左 / 下 / 上 / 右
H J K L 把当前窗格移动到最左 / 最下 / 最上 / 最右
/ 或 p 命令面板

前缀键提示

按 g、z、m、t 等前缀键时,也会弹出对应的 which-key 提示,列出该前缀下的原生 Vim 子命令(如 gg、gU、zz、zt)。提示仅作视觉引导,按键仍由 Vim 扩展原生执行。

窗格导航

normal 模式下用 Ctrl+h / Ctrl+j / Ctrl+k / Ctrl+l 在窗格之间切换焦点,与 tmux 的习惯一致。

文件树导航(neo-tree 风格)

当焦点在侧栏文件树时,Vim 模式提供一套文件树专用键位:

键 功能
j / k 向下 / 向上移动高亮(不会打开文件)
h / Backspace 折叠当前目录
l / Enter / o 展开目录或打开文件
H / G 跳到首项 / 末项
p 跳到父级目录
W / E 全部折叠 / 全部展开
C 折叠当前分支
a / % 新建文件
A 新建文件夹
r 重命名
d 删除
D / c 创建副本
x 移动到…
y 复制路径
\ / - 在分屏中打开(左右 / 上下)

冲突快捷键让渡

Vim 与 App 的部分快捷键天然冲突。开启 Vim 后,可在设置页逐项选择让渡给谁(默认值如下):

快捷键 App 功能 Vim 含义 默认
Ctrl+D 删除线 向下翻半页 让渡给 Vim
Ctrl+U 代码块 向上翻半页 让渡给 Vim
Ctrl+E 行内代码 向下滚动一行 让渡给 Vim
Ctrl+H 替换 光标左移 / 退格 让渡给 Vim
Ctrl+F 查找 向下翻整页 让渡给 Vim
Ctrl+W 关闭窗格 窗口操作前缀 让渡给 Vim
Ctrl+O 快速打开 跳转列表后退 让渡给 Vim
Ctrl+G 知识图谱 显示文件信息 让渡给 Vim
Ctrl+P 命令面板 向上移动一行 保留给 App
Tip

让渡只在 Vim 的 normal / visual 模式下生效,且焦点在编辑器内时才算数。若你更依赖某个 App 快捷键,把它改为「关闭」即可让 App 快捷键照常生效。

相关文档