Yazi - trình quản lý file cho người thích dùng bàn phím
I. Giới thiệu
Nếu bạn từng cảm thấy Windows Explorer chậm chạp khi xử lý hàng trăm nghìn file, thì Yazi có thể là thứ bạn đang tìm.
Yazi là một trình quản lý file chạy trên terminal, được viết bằng Rust, tập trung vào:
- ⚡ Tốc độ
- ⌨️ Trải nghiệm thuần bàn phím
- 🧩 Khả năng tùy biến cao
Trước khi đi sâu, mình muốn cho bạn thấy điểm mạnh lớn nhất của Yazi: tốc độ.
Demo thực tế
Thông tin test:
- OS: Windows 11
- Dung lượng: 1.22TB / 3.63TB
- Số lượng: ~207k files, ~8k folders
- Từ khóa tìm:
config
Windows Explorer mất ~14 giây
Yazi mất ~1 giây
Explorer
Yazi
Sự khác biệt là cực kỳ rõ ràng.
II. Yazi dành cho ai?
Yazi không phải cho tất cả mọi người.
Bạn sẽ thấy nó cực kỳ phù hợp nếu:
- Bạn thích làm việc bằng bàn phím ⌨️
- Bạn dùng terminal thường xuyên
- Bạn quen với Vim / Neovim
- Bạn làm việc với nhiều file (log, code, config...)
Ngược lại, nếu bạn:
- Thích kéo-thả
- Phụ thuộc thumbnail hình ảnh
- Không muốn học phím tắt
- Tính chất công việc đặc thù: chuột phải gửi file qua zalo, sử đổi quyền...
→ thì Explorer vẫn hợp hơn.
III. Cài đặt nhanh
1. Terminal
Yazi cần terminal hỗ trợ hiển thị tốt:
- kitty
- wezterm
- windows terminal (>= v1.22)
2. Cài Yazi
scoop install yazi
Cài thêm (khuyến nghị):
scoop install ffmpeg 7zip jq poppler fd ripgrep fzf zoxide resvg imagemagick
Giải thích nhanh:
fd: tìm file theo tênripgrep: tìm nội dung filefzf: fuzzy searchzoxide: nhớ lịch sử thư mụcffmpeg,poppler,imagemagick…: phục vụ preview
IV. Bắt đầu nhanh với Yazi
Chạy:
yazi
Các thao tác cơ bản:
| Phím | Chức năng |
|---|---|
| h / j / k / l | di chuyển |
| Enter / o | mở file |
| y / p | copy / paste |
| d | xóa |
| q | thoát |
Chỉ cần vọc tầm 5 phút là đã có thể thành thạo với người chưa quen.
V. Các tính năng nổi bật
Cách phím tắt mình liệt kê phí dưới là các phim tắt mình hay dùng, không phải là tất cả các phím tắt mà yazi hỗ trợ
1. Preview file
- Preview được nhiều loại file (zip, folder, text…)
- Có thể cuộn lên/xuống nội dung file bằng J hoặc K
Preview
2. Di chuyển kiểu Vim
- Yazi không có toàn bộ phím tắt di chuyển của vim, nhưng các phím tắt cơ bản như h/j/k/l được tích hợp mặc định
Di chuyển
3. Thao tác file
| Key | Action |
|---|---|
| o | mở |
| O | mở với tùy chọn |
| y | copy |
| x | cut |
| p | paste |
| d | xóa mềm |
| D | xóa vĩnh viễn |
| a | tạo file |
| r | đổi tên |
4. Chọn nhiều file
| Key | Action |
|---|---|
| Space | chọn |
| v | visual mode |
| Ctrl + a | chọn hết |
| Ctrl + r | đảo chọn |
5. Tìm kiếm & lọc
| Key | Action |
|---|---|
| f | lọc |
| / | tìm |
| n / N | next / prev |
| s | tìm theo tên |
| S | tìm nội dung |
6. Sắp xếp
| Key | Action |
|---|---|
| ,m / ,M | theo thời gian |
| ,b / ,B | theo ngày tạo |
| ,e / ,E | theo loại file |
| ,a / ,A | theo tên |
7. Tabs & task
| Key | Action |
|---|---|
| t | tab mới |
| 1–9 | chuyển tab |
| Ctrl + c | đóng tab |
8. Shell integration
| Key | Action |
|---|---|
| ; | chạy lệnh |
| ~ / F1 | help |
| q | thoát |
VI. Vì sao Yazi nhanh?
Yazi nhanh vì nó làm ít việc hơn Explorer — và làm cực kỳ hiệu quả.
Cụ thể:
-
⚡ Chạy trên terminal → không tốn render UI phức tạp
-
⚡ Lazy loading → chỉ load thứ cần thiết
-
⚡ Async → không bị “đơ” khi mở folder lớn
-
⚡ Không làm việc thừa:
- không thumbnail
- không metadata nặng
- không shell extension
Explorer làm nhiều thứ hơn → nên chậm hơn
VII. So sánh với Windows Explorer
| Tiêu chí | Yazi | Explorer |
|---|---|---|
| Tốc độ | ⚡ Rất nhanh | Chậm khi nhiều file |
| Keyboard | Hỗ trợ nhiều | Hạn chế |
| Preview | Nhiều hơn | Ít hơn |
| Drag & drop | ❌ | ✅ |
| Tùy biến | Cao | Thấp |
VIII. Thiết lập (config)
1. Mở file với nhiều ứng dụng
# config\yazi.toml
# Tùy chọn ứng dụng
[opener]
# mở trong explorer
reveal = [
{ run = 'explorer /select,"%s"', desc = "Reveal", orphan = true, for = "windows" }
]
paint = [
{ run = 'cmd /c start "" mspaint "%s"', desc = "MS Paint", orphan = true, for = "windows" }
]
honeyview = [
{ run = 'cmd /c start "" "C:\\Program Files\\Honeyview\\Honeyview.exe" "%s"', desc = "Honeyview", orphan = true, for = "windows" }
]
affinity = [
{ run = 'cmd /c start "" "C:\\Program Files\\WindowsApps\\Canva.Affinity_3.0.3.4027_x64__8a0j1tnjnt4a4\\App\\Affinity.exe" "%s"', desc = "Affinity Photo", orphan = true, for = "windows" }
]
# mở bằng ứng dụng mặc định
open = [
{ run = 'cmd /c start "" "%s"', desc = "Open", orphan = true, for = "windows" }
]
# mở bằng cursor
cursor = [
{ run = 'cursor %*', desc = "Cursor" }
]
[open]
prepend_rules = [
{ mime = "image/*", use = [ "honeyview", "paint", "affinity", "reveal" ] }, # ảnh
{ mime = "text/*", use = [ "open", "cursor", "reveal" ] }, # file text
{ url = "*", use = [ "open", "reveal" ] }, # mặc định còn lại
]
2. Hiển thị dung lượng file
# config\yazi.toml
[mgr]
linemode = "size"
3. Nén / giải nén
# config\keymap.toml
[[mgr.prepend_keymap]]
on = [ "c", "a", "a" ]
run = "plugin compress"
desc = "Archive selected files"
[[mgr.prepend_keymap]]
on = [ "c", "a", "p" ]
run = "plugin compress -p"
desc = "Archive selected files (password)"
[[mgr.prepend_keymap]]
on = [ "c", "a", "h" ]
run = "plugin compress -ph"
desc = "Archive selected files (password+header)"
[[mgr.prepend_keymap]]
on = [ "c", "a", "l" ]
run = "plugin compress -l"
desc = "Archive selected files (compression level)"
[[mgr.prepend_keymap]]
on = [ "c", "a", "u" ]
run = "plugin compress -phl"
desc = "Archive selected files (password+header+level)"
[[mgr.prepend_keymap]]
on = [ "c", "x", "x" ]
run = 'shell "7z x %*"'
desc = "Extract here"
[[mgr.prepend_keymap]]
on = [ "c", "x", "o" ]
run = 'shell "7z x %* -o*"'
desc = "Extract to folder"
4. Theme
Cài đặt bằng ya
ya pkg add Chromium-3-Oxide/everforest-medium
# config\theme.toml
[flavor]
dark = "everforest-medium"
light = "everforest-medium"
[icon]
conds = [
{ if = "dir", text = "", fg = "#C0FF85" },
]
Danh sách các theme (flavor) duy trì bởi cộng đồng: https://github.com/yazi-rs/flavors
IX. Tổng kết
Yazi không cố thay thế hoàn toàn Explorer.
Nhưng nếu bạn là dev, hoặc người thích tối ưu workflow:
Yazi gần như là một “upgrade tự nhiên”.