مدير ملفات طرفية سريع البرق مكتوب بلغة Rust، مبني على I/O غير متزامن. يتميز بمعاينات الصور، والعمليات الجماعية، واختصارات لوحة المفاتيح على طراز Vim، ونظام إضافات Lua، وتكامل مع ripgrep وfd وfzf وzoxide.
| المنصة | الأمر |
|---|
| macOS (Homebrew) | brew install yazi ffmpegthumbnailer poppler fd ripgrep fzf zoxide font-symbols-only-nerd-font |
| Arch Linux | sudo pacman -S yazi ffmpegthumbnailer poppler fd ripgrep fzf zoxide |
| Ubuntu/Debian | التنزيل من إصدارات GitHub |
| Fedora/RHEL | sudo dnf install yazi |
| Windows (Scoop) | scoop install yazi |
| Windows (Winget) | winget install sxyazi.yazi |
| Cargo (All platforms) | cargo install --locked yazi-fm yazi-cli |
| Nix | nix-env -iA nixpkgs.yazi |
التبعيات الاختيارية للميزات الكاملة: ffmpegthumbnailer (صور مصغرة للفيديو)، poppler (معاينة PDF)، fd، ripgrep، fzf، zoxide، ImageMagick، 7-Zip/unar.
التشغيل: شغل yazi أو yazi /path/to/dir
| مفتاح | الوصف |
|---|
h | الانتقال إلى الدليل الأب |
l أو Enter | فتح الملف أو الدخول إلى الدليل |
j | تحريك المؤشر لأسفل |
k | تحريك المؤشر لأعلى |
J | تحريك المؤشر 5 أسطر لأسفل |
K | تحريك المؤشر 5 أسطر لأعلى |
g g | القفز إلى العنصر الأول |
G | القفز إلى العنصر الأخير |
H | العودة في السجل |
L | التقدم في السجل |
~ | الانتقال إلى الدليل الرئيسي |
Backspace | الانتقال إلى الدليل الأب |
z | القفز عبر zoxide (بحث دليل غامض) |
Z | القفز عبر fzf |
| مفتاح | الوصف |
|---|
o | فتح الملف المحدد بالبرنامج الافتراضي |
O | فتح الملف تفاعليًا (اختيار البرنامج) |
y | نسخ (copy) الملفات المحددة |
x | قص الملفات المحددة |
p | لصق الملفات المنسوخة/المقصوصة |
P | اللصق مع الكتابة فوق |
d | نقل الملفات المحددة إلى سلة المهملات |
D | حذف الملفات المحددة نهائيًا |
a | إنشاء ملف أو دليل جديد (إلحاق / للدليل) |
r | إعادة تسمية الملف المحدد |
c | إعادة تسمية مع المؤشر في البداية |
. | تبديل إظهار الملفات المخفية |
| مفتاح | الوصف |
|---|
Space | تبديل الاختيار على العنصر الحالي |
v | الدخول إلى الوضع البصري (اختيار نطاق) |
V | الدخول إلى الوضع البصري (إلغاء اختيار نطاق) |
Ctrl+a | اختيار جميع العناصر |
Ctrl+r | اختيار عكسي (تبديل الكل) |
Esc | إلغاء الاختيار / الخروج من الوضع البصري |
| مفتاح | الوصف |
|---|
/ | البحث في الدليل الحالي |
? | البحث للخلف |
n | القفز إلى المطابقة التالية في البحث |
N | القفز إلى المطابقة السابقة في البحث |
f | تصفية الدليل الحالي (إظهار المطابق فقط) |
s | البحث في الملفات باستخدام fd عبر الأدلة الفرعية |
S | البحث في محتويات الملفات باستخدام ripgrep |
| مفتاح | الوصف |
|---|
,m | الترتيب حسب وقت التعديل |
,M | الترتيب حسب وقت التعديل (عكسي) |
,c | الترتيب حسب وقت الإنشاء |
,C | الترتيب حسب وقت الإنشاء (عكسي) |
,e | الترتيب حسب الامتداد |
,E | الترتيب حسب الامتداد (عكسي) |
,a | الترتيب أبجديًا |
,A | الترتيب أبجديًا (عكسي) |
,n | الترتيب طبيعيًا (واعي بالأرقام) |
,N | الترتيب طبيعيًا (عكسي) |
,s | الترتيب حسب الحجم |
,S | الترتيب حسب الحجم (عكسي) |
,r | الترتيب عشوائيًا |
| مفتاح | الوصف |
|---|
t | إنشاء علامة تبويب جديدة |
1-9 | التبديل إلى علامة تبويب حسب الرقم |
[ | التبديل إلى علامة التبويب السابقة |
] | التبديل إلى علامة التبويب التالية |
{ | تبديل علامة التبويب مع السابقة |
} | تبديل علامة التبويب مع التالية |
| مفتاح | الوصف |
|---|
Space (على عدة) | اختيار ملفات متعددة، ثم استخدام y/x/d |
r | إعادة التسمية (استخدام على الاختيار لإعادة التسمية الجماعية) |
- اختر الملفات باستخدام
Space أو الوضع البصري (v)
- اضغط
r لفتح إعادة التسمية الجماعية في $EDITOR
- عدل أسماء الملفات في المحرر
- احفظ وأغلق — Yazi يطبق جميع إعادات التسمية
يوفر Yazi معاينات مدمجة للعديد من أنواع الملفات:
| نوع الملف | المعاينة |
|---|
| الصور (PNG, JPG, إلخ.) | معاينة صورة مضمنة (في الطرفيات المدعومة) |
| الفيديوهات | معاينة صورة مصغرة (يتطلب ffmpegthumbnailer) |
| ملفات PDF | معاينة الصفحة الأولى (يتطلب poppler) |
| النص/الكود | معاينة مع تمييز الصيغة |
| الأرشيفات | قائمة المحتويات |
| الأدلة | قائمة الملفات الفرعية |
الطرفيات المدعومة لمعاينة الصور: Kitty، iTerm2، WezTerm، Ghostty، foot، Konsole، Windows Terminal، VSCode، Warp.
| الملف | الغرض |
|---|
~/.config/yazi/yazi.toml | الإعدادات العامة |
~/.config/yazi/keymap.toml | اختصارات لوحة المفاتيح المخصصة |
~/.config/yazi/theme.toml | الألوان والأنماط |
~/.config/yazi/init.lua | تهيئة الإضافات |
[manager]
show_hidden = false # إظهار dotfiles افتراضيًا
sort_by = "natural" # natural, alphabetical, size, modified, created, extension
sort_dir_first = true # الأدلة قبل الملفات
linemode = "size" # المعلومات المعروضة بجانب اسم الملف: size, mtime, permissions, none
[preview]
max_width = 1000 # أقصى عرض للمعاينة
max_height = 1000 # أقصى ارتفاع للمعاينة
image_quality = 75 # جودة JPEG للصور المصغرة
[opener]
# فاتحات ملفات مخصصة
edit = [{ run = 'nvim "$@"', block = true }]
open = [{ run = 'open "$@"' }] # macOS: open, Linux: xdg-open
أضف إلى تكوين الشِل الخاص بك حتى يضعك الخروج من Yazi في آخر دليل زرته:
Bash/Zsh:
function y() {
local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd
yazi "$@" --cwd-file="$tmp"
if cwd="$(command cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
builtin cd -- "$cwd"
fi
rm -f -- "$tmp"
}
Fish:
function y
set tmp (mktemp -t "yazi-cwd.XXXXXX")
yazi $argv --cwd-file="$tmp"
if set cwd (command cat -- $tmp); and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
builtin cd -- "$cwd"
end
rm -f -- $tmp
end
# تثبيت إضافة
ya pack -a owner/plugin-name
# تحديث جميع الإضافات
ya pack -u
# قائمة الإضافات المثبتة
ya pack -l
الإضافات الشائعة: تكامل حالة git، استخراج الأرشيف، معالجة الصور، معاينات مخصصة.
# التشغيل في دليل محدد
yazi ~/projects
# تصفح ملفات سريع مع معاينات الصور
yazi ~/photos
# سير عمل إعادة التسمية الجماعية
# 1. التنقل إلى الدليل
# 2. اختيار الملفات باستخدام Space أو v
# 3. الضغط على r لإعادة التسمية الجماعية في المحرر
| الميزة | Yazi | ranger | lf | nnn |
|---|
| اللغة | Rust | Python | Go | C |
| Async I/O | نعم | لا | لا | لا |
| معاينة الصور | أصلي | نعم | إضافة | إضافة |
| نظام الإضافات | Lua | Python | Shell | Shell |
| السرعة | سريع جدًا | متوسط | سريع | سريع جدًا |
| إعادة التسمية الجماعية | مدمج | مدمج | خارجي | خارجي |
| اختصارات Vim | نعم | نعم | نعم | لا |