Yazi 备忘清单

这份快速参考备忘单整理了 Yazi 终端文件管理器的安装、启动、快捷键、配置、插件、主题和常见排错用法

入门

介绍

Yazi 是一个使用 Rust 编写的终端文件管理器,支持异步文件操作、预览、Vim 风格快捷键、插件和主题扩展。

$ yazi
$ yazi ~/Projects
$ yazi --help

默认使用三栏视图:父目录、当前目录和预览面板。推荐把它与 shell wrapper 搭配使用,这样退出后可以回到 Yazi 中最后所在目录。

安装

系统命令
Arch Linuxsudo pacman -S yazi ffmpeg 7zip jq poppler fd ripgrep fzf zoxide resvg imagemagick
Homebrewbrew install yazi ffmpeg-full sevenzip jq poppler fd ripgrep fzf zoxide resvg imagemagick-full font-symbols-only-nerd-font
MacPortssudo port install yazi ffmpeg 7zip jq poppler fd ripgrep fzf zoxide ImageMagick
Windows Scoopscoop install yazi
Windows WinGetwinget install sxyazi.yazi
Snapsudo snap install yazi --classic
Flatpakflatpak run io.github.sxyazi.yazi
PyPIpipx install yazi-bin
Cargocargo install --force yazi-build
源码构建cargo build --release --locked

发行版包多数由社区维护,版本可能滞后。需要最新版本时可使用官方 GitHub Releases、nightly 或源码构建。

可选依赖

工具用途
file文件类型检测,必需
nerd-fonts推荐,显示图标
ffmpeg视频缩略图
7-Zip压缩包预览和解压
jqJSON 预览
popplerPDF 预览
fd文件名搜索
ripgrep文件内容搜索
fzf快速目录跳转
zoxide智能目录跳转

Windows 注意事项

Yazi 依赖 file(1) 检测 MIME 类型。Windows 上官方推荐使用 Git for Windows 附带的 file.exe

$env:YAZI_FILE_ONE = "C:\Program Files\Git\usr\bin\file.exe"

如果使用 Scoop 安装 Git,路径通常是:

$env:YAZI_FILE_ONE = "$env:USERPROFILE\scoop\apps\git\current\usr\bin\file.exe"

设置后重启终端。官方不推荐通过 Scoop 或 Chocolatey 单独安装 file,因为它们可能无法正确处理 Unicode 文件名。

Shell Wrapper

直接运行 yazi 退出后不会改变当前 shell 的目录。使用 wrapper 后,按 q 退出会切换到 Yazi 退出时所在目录,按 Q 退出则不切换。

function y() {
  local tmp="$(mktemp -t "yazi-cwd.XXXXXX")"
  yazi "$@" --cwd-file="$tmp"
  if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
    builtin cd -- "$cwd"
  fi
  rm -f -- "$tmp"
}

把函数放入对应 shell 的配置文件后,使用 y 启动。

快捷键

导航

键位操作
h, 返回父目录
j, 光标下移
k, 光标上移
l, 进入目录
K预览向上滚动 5 个单位
J预览向下滚动 5 个单位
gg跳到顶部
G跳到底部
z通过 fzf 进入目录或显示文件
Z通过 zoxide 进入目录
gSpace交互式输入路径跳转

选择

键位操作
Space切换当前项选择状态
v进入可视选择模式
V进入可视取消选择模式
Ctrl + a全选
Ctrl + r反选
Esc取消选择

文件操作

键位操作
o, Enter打开选中文件
O, Shift + Enter交互式打开选中文件
Tab显示文件信息
y复制选中文件
x剪切选中文件
p粘贴
P覆盖粘贴
Y, X取消复制/剪切状态
d移到回收站
D永久删除
a新建文件或目录
r重命名
.显示或隐藏隐藏文件

Shell 与链接

键位操作
;执行 shell 命令
:执行阻塞式 shell 命令
-创建绝对路径符号链接
_创建相对路径符号链接
Ctrl + -创建硬链接

复制路径

键位操作
cc复制文件路径
cd复制目录路径
cf复制文件名
cn复制不带扩展名的文件名

搜索与过滤

键位操作
f过滤当前目录
/查找下一个文件
?查找上一个文件
n跳到下一个匹配项
N跳到上一个匹配项
s使用 fd 按名称搜索文件
S使用 ripgrep 按内容搜索文件
Ctrl + s取消当前搜索

排序

键位操作
,m按修改时间排序
,M按修改时间倒序
,b按创建时间排序
,B按创建时间倒序
,e按扩展名排序
,E按扩展名倒序
,a按字母排序
,A按字母倒序
,n自然排序
,N自然倒序
,s按大小排序
,S按大小倒序
,r随机排序

标签页

键位操作
t新建标签页
1 ... 9切换到第 N 个标签页
[上一个标签页
]下一个标签页
{与上一个标签页交换
}与下一个标签页交换
Ctrl + c关闭当前标签页

配置

配置文件

文件说明
yazi.toml通用配置
keymap.toml快捷键配置
theme.toml配色配置
init.luaLua 初始化脚本
package.toml插件和主题锁定信息

Unix-like 系统配置目录为 ~/.config/yazi/,Windows 配置目录为 %AppData%\yazi\config\。也可以通过 YAZI_CONFIG_HOME 使用自定义配置目录。

显示隐藏文件

# yazi.toml
[mgr]
show_hidden = true

Yazi 已内置默认配置,只需要在自己的配置文件里写入要覆盖的片段。

布局比例

# yazi.toml
[mgr]
ratio = [1, 4, 3]

ratio 控制父目录、当前目录、预览面板的宽度比例。某一栏设为 0 可隐藏该栏,但至少需要保留一个非零面板。

keymap.toml 层

说明
mgr文件列表
tasks任务管理器
spot文件信息查看
pick选择组件,例如“打开方式”
input输入组件,例如创建、重命名
confirm确认对话框
cmp补全组件
help帮助菜单

追加快捷键

# keymap.toml
[[mgr.prepend_keymap]]
on = "<C-a>"
run = "toggle_all --state=on"
desc = "Select all files"

[[mgr.append_keymap]]
on = [ "g", "b" ]
run = "cd ~/Books"
desc = "Go to books"

prepend_keymap 优先级高于默认快捷键,append_keymap 优先级低于默认快捷键。若要完全替换默认快捷键,可使用 keymap

插件与主题

ya 命令

$ ya --help

ya 是 Yazi 的辅助命令,负责插件管理、主题管理和 DDS 消息发布订阅等功能。yayazi 版本必须一致。

安装 Flavor

$ ya pkg add yazi-rs/flavors:catppuccin-mocha

如果只想使用某个 flavor,theme.toml 中通常只需要 [flavor] 配置;需要微调时再添加覆盖项。

插件管理

$ ya pkg add owner/my-plugin
$ ya pkg add yazi-rs/plugins:git
$ ya pkg list
$ ya pkg install
$ ya pkg upgrade
$ ya pkg delete yazi-rs/plugins:git

ya pkg 会把插件复制到配置目录,并更新 package.toml 来锁定版本。

锁定插件版本

# package.toml
[[plugin.deps]]
use = "owner/my-plugin"
rev = "=9a1129c"
hash = "d81b64a39432fcd6224cd75d296e7510"

rev 前加 = 可固定插件版本,避免 ya pkg upgrade 自动升级。

Flavors

# theme.toml
[flavor]
dark = "catppuccin-mocha"
light = "catppuccin-mocha"

Flavor 是可复用的预制主题,通常放在 flavors/ 子目录中,并可由 ya pkg 管理。用户自己的 theme.toml 会覆盖 flavor 的同名配置。

排错

检查帮助

$ yazi --help
$ ya --help

先确认 yaziya 都在 PATH 中,并且两者版本一致。

Windows 无法识别类型

$env:YAZI_FILE_ONE = "C:\Program Files\Git\usr\bin\file.exe"

如果预览或类型检测异常,优先确认 YAZI_FILE_ONE 是否指向 Git for Windows 附带的 file.exe

配置目录调试

$ YAZI_CONFIG_HOME=~/.config/yazi-alt yazi

用独立配置目录启动可以排查现有配置、插件或主题是否导致问题。

主题校验

$ taplo check --schema https://yazi-rs.github.io/schemas/theme.json theme.toml

Flavor 或主题不生效时,检查字段是否与当前 Yazi 版本兼容。