Dvorak 键盘 + Vim 操作逻辑 + Yazi 完整指南

在配置 Yazi 文件管理器时,发现自己对 Vim 术语(yank/paste/visual mode)不熟悉,同时作为 Dvorak 键盘用户,需要理解键盘布局对终端工具的影响。这篇文章是我整理的完整指南。


一、什么是 Dvorak 键盘布局

背景

大多数人用的键盘是 QWERTY 布局(看键盘左上角前六个字母)。QWERTY 是 1873 年为打字机设计的,目的是减少机械卡键,而不是打字效率。

Dvorak(发明者 August Dvorak,1936 年)是一种为打字效率和人体工学优化的键盘布局:

  • 最常用的字母放在主行(Home Row),手指不需要频繁移动
  • 元音字母 (A, O, E, U, I) 在左手主行
  • 常用辅音 (D, H, T, N, S) 在右手主行
  • 理论上 70% 的英文打字在主行完成(QWERTY 只有 32%)

QWERTY vs Dvorak 对照

QWERTY:
  Q W E R T Y U I O P
  A S D F G H J K L ;
  Z X C V B N M , . /

Dvorak:
  ' , . P Y F G C R L
  A O E U I D H T N S
  ; Q J K X B M W V Z

对终端工具的影响

关键点:Vim/Yazi 的快捷键是按字母含义设计的,不是按物理位置

  • j = down, k = up — 这些在 Dvorak 上的物理位置和 QWERTY 完全不同
  • 但因为你按的是字母 j/k(不管它在键盘哪里),功能是一样的
  • macOS 的键盘设置已经处理了映射,你只需要记住字母

Option 键配置

Ghostty 配置中有 macos-option-as-alt = left,这是为了让左 Option 键作为 Alt 使用(给 tmux/vim 用),右 Option 保留德语特殊字符输入。这和 Dvorak 是兼容的。


二、Vim 操作逻辑(Yazi 继承了这套体系)

Yazi 的所有快捷键都来自 Vim 编辑器的操作哲学。理解 Vim 的逻辑,就理解了 Yazi。

2.1 Vim 的核心思想:动词 + 名词

Vim 不是"按一个键做一个事",而是组合命令

动作(verb) + 对象(noun) = 操作

例如:

  • d (delete) + w (word) = 删除一个单词
  • y (yank) + 3j (3 lines down) = 复制 3 行

2.2 模式(Modes)

Vim 有多个模式,Yazi 继承了部分:

模式Vim 中Yazi 中
Normal默认模式,执行命令默认模式,浏览文件
Insert输入文字不适用(Yazi 不编辑文件)
Visual选择文本区域v 进入,用方向键批量选文件
Command: 开头的命令不适用

2.3 Vim 术语 → Yazi 对照表

这是最重要的部分。Vim 有一套自己的术语,和日常用语不同:

Vim 术语日常说法Yazi 中的功能按键
yank复制 (Ctrl+C)标记文件准备复制y
unyank取消复制清除复制标记Y
cut剪切 (Ctrl+X)标记文件准备移动x
paste粘贴 (Ctrl+V)执行复制/移动到当前目录p
delete/remove删除移到垃圾桶d
toggle选中/取消标记文件(多选用)Space
visual mode批量选择进入连续选择模式v
escape取消取消选中/搜索/过滤Esc

2.4 为什么叫 “yank” 而不是 “copy”?

历史原因:Vim 的前身 vi(1976 年)设计时,c 已经被用于 “change”(修改)命令。所以用 y(yank = 猛拉)表示复制。这个术语一直沿用至今。

2.5 Yank vs Select(容易混淆)

操作按键效果右上角显示取消方式
Select(选中)Space标记文件(蓝色高亮),用于批量操作数字(白色)Esc
Yank(复制)y标记文件准备复制到其他目录数字(绿色)Y
Cut(剪切)x标记文件准备移动到其他目录数字(红色)Y

工作流示例 — 复制 3 个文件到另一个目录:

  1. Space 选中第 1 个文件
  2. j 移动到下一个
  3. Space 选中第 2 个
  4. j 再移动
  5. Space 选中第 3 个
  6. y 对所有选中文件执行 yank(复制标记)
  7. 导航到目标目录(h 返回上级,l 进入子目录)
  8. p 粘贴(实际执行文件复制)

三、Yazi 完整操作手册

3.1 导航

按键功能助记
j下移一行j 的尾巴向下
k上移一行k 的头向上
J下移 5 行大写 = 加速
K上移 5 行大写 = 加速
lEnter进入目录 / 打开文件l = 向右(进入)
h返回上级目录h = 向左(返回)
g g跳到列表顶部go to top
G跳到列表底部Go to bottom

3.2 搜索和过滤

按键功能
/过滤当前目录(输入关键词,只显示匹配的文件)
s搜索文件名(用 fd,跨子目录)
S搜索文件内容(用 ripgrep)
f查找(find),增量跳转到匹配文件

3.3 文件操作

按键功能注意事项
y复制(yank)文件只是标记,还没复制
Y取消复制标记(unyank)
x剪切文件只是标记,还没移动
p粘贴(执行复制/移动)到目标目录后按
d删除(移到垃圾桶)会弹出确认
D永久删除危险!无法恢复
a新建文件/目录名字以 / 结尾 = 目录
r重命名
Space选中/取消选中多文件操作前先选

3.4 预览和查看

按键功能
Tab打开 Spot(详细信息面板)
上下箭头或 J/K(预览中)滚动预览内容
.显示/隐藏隐藏文件

3.5 自定义快捷跳转

按键目录
~主目录
g p~/Projects_WSL
g d~/Downloads
g b~/Blog
g s~/secretary

3.6 Tab(标签页)

按键功能
t新建标签页
1-9切换到第 N 个标签
[ / ]上一个/下一个标签

3.7 复制文件路径(不是复制文件本身)

按键序列复制内容
c c文件完整路径
c d所在目录路径
c f文件名
c n文件名(不含扩展名)

3.8 排序

按键序列排序方式
, m按修改时间
, s按大小
, a按字母
, n自然排序
, e按扩展名

四、Ghostty 分屏操作

快捷键功能
Cmd+D右侧新分屏
Cmd+Shift+D下方新分屏
Cmd+Left/Right/Up/Down在分屏间切换焦点
Cmd+Shift+H当前分屏向左扩大
Cmd+Shift+L当前分屏向右扩大
Cmd+Shift+F全屏/恢复当前分屏
Cmd+Shift+,热重载配置

五、常见误区和易混淆点

5.1 Escape 不清除 yank

Escape 只清除:选中(Space)、搜索、过滤、Visual 模式。 清除 yank 必须用 Y(大写)。

5.2 y 不是立即复制

y 只是"标记",真正的复制在你按 p 的时候才发生。这和 Finder 不同(Finder 的 Cmd+C 也是标记,但感觉上是"立即复制")。

5.3 hjkl 的方向

    k (上)
h (左)   l (右)
    j (下)

助记:j 长得像向下的箭头(j 的尾巴向下弯)。

5.4 配置文件注意事项

  • Yazi v26.x 配置节名是 [mgr],不是旧版的 [manager]
  • sort_by 的值是 "mtime",不是 "modified"
  • 配置错误会导致整个文件静默失效,用 yazi --debug 诊断
  • 修改配置后需要退出 Yazi(q)重新进入才能生效

六、日常工作流速查

浏览项目文件

y → Cmd+D 分屏 → 左侧 Yazi 浏览 → 右侧 Claude Code 工作
Cmd+Left/Right 在两边切换

找到一个文件并打开

s → 输入文件名 → Enter 跳到文件 → Enter 打开

复制文件到另一个目录

Space 选文件 → y 标记复制 → 导航到目标 → p 粘贴

查看文件路径并复制

c c → 路径已复制到剪贴板

快速跳转常用目录

g p → Projects   g b → Blog   g s → Secretary   ~ → Home

备注

  • Yazi 在 Ghostty 中运行时支持图片预览(Kitty 图形协议)
  • Yazi 内置帮助:在 Yazi 中按 ?F1 可看所有快捷键
  • Yazi 配置目录:~/.config/yazi/
  • Ghostty 配置:~/.config/ghostty/config

如果这篇文章对你有帮助,欢迎请我喝杯咖啡,支持我继续创作更多内容。

Buy me a coffee