CLI-Tool
sxyazi/yazi avatar
sxyazi/yazi

Yazi: Terminal-Dateimanager mit konfigurierbarer Navigation

💥 Blitzschneller Terminal-Dateimanager, geschrieben in Rust, basierend auf asynchroner E/A.

42.202 Sterne1.018 ForksRustMIT

Auf einen Blick

Was ist das?
Yazi: deutscher Überblick über dokumentierte Funktionen, Einstieg und Grenzen.
Für wen ist es gedacht?
Geeignet für Leser, deren Aufgabe zum dokumentierten Umfang von Yazi passt. Ungeeignet als Ersatz für eine Prüfung der eigenen Umgebung.
Darf ich es kommerziell nutzen?
Ja. MIT ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
Wird es noch gepflegt?
Ja. Das Repository hat innerhalb des letzten Tages neue Commits erhalten.
In welcher Sprache ist es geschrieben?
Hauptsächlich Rust, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Yazi: Einsatz und Umfang 1

Yazi ist ein in Rust geschriebener Terminal-Dateimanager, der auf nicht blockierender asynchroner I/O basiert. Der Name bedeutet Ente. Das README sagt, das Projekt ziele darauf ab, eine effiziente, benutzerfreundliche und anpassbare Dateiverwaltung zu bieten. Das Repository verlinkt außerdem einen Artikel mit dem Titel Why is Yazi Fast?, der die internen Abläufe erklärt, aber dieser Artikel ist nicht Teil dieses Repositorys. Das Projekt befindet sich in der öffentlichen Beta und kann als täglicher Treiber verwendet werden, aber es wird intensiv weiterentwickelt und es sind breaking changes zu erwarten. Die Homepage des Repositorys ist yazi-rs.github.io und der Standardzweig ist main, aber das README enthält keine Installationsbefehle oder Benchmark-Zahlen; die Installation wird über die Dokumentation beschrieben. Das README enthält außerdem ein Warp-Sponsoring-Banner und einen Dank an das RustRover-Team für Open-Source-Lizenzen, was beides nichts mit der Funktionalität zu tun hat.

Yazi: Dokumentierte Funktionen 2

Das README betont vollständige asynchrone Unterstützung: Alle I/O-Operationen sind asynchron und CPU-Aufgaben werden auf mehrere Threads verteilt, um verfügbare Ressourcen zu nutzen. Es beschreibt auch ein leistungsfähiges asynchrones Aufgabenplanungs- und Verwaltungssystem mit Echtzeit-Fortschrittsmeldungen, Aufgabenabbruch und interner Aufgabenpriorisierung. Der Dateimanager verfügt über integrierte Code-Hervorhebung und Bilddekodierung und nutzt einen Vorlademechanismus, um das Laden von Bild- und normalen Dateien zu beschleunigen. Diese Details zeigen, dass Geschwindigkeit ein zentrales Thema ist, aber das README enthält keine Benchmark-Zahlen. Das asynchrone Design betrifft auch Aufgabenabbruch und Priorität, sodass Benutzer bei langen Operationen Fortschritt sehen können, aber die Implementierungsdetails erfordern das Lesen des Codes oder des separaten Artikels. Der Planungsalgorithmus wird im README nicht angegeben.

Yazi: Architektur und Datenpfade 3

Die Bildvorschau hängt vom Terminal ab. Yazi bietet integrierte Unterstützung für mehrere Protokolle: kitty unicode Vorschaubereichs, iTerm2 inline images, Sixel graphics und kitty old protocol. Das README listet die spezifischen Versionsanforderungen für jedes Terminal auf. Beispielsweise benötigt kitty Version 0.28.0 oder höher, Windows Terminal benötigt 1.22.10352.0 oder höher und Rio benötigt 0.3.9 oder höher. Auf X11 oder Wayland ist Überzug++ erforderlich, und der Fallback für andere Terminals verwendet Chafa, um ASCII-Kunst (Unicode-Blöcke) zu erzeugen; Chafa 1.16.0 oder neuer wird benötigt. Weitere unterstützte Terminals sind WezTerm, Konsole, foot, Ghostty, st with Sixel patch, Warp, Tabby, VSCode, Black Box und Bobcat; die Tabelle im README zeigt den jeweiligen Status. Außerdem wird das alte kitty-Protokoll von Terminals wie Konsole verwendet, während iTerm2-Inline-Bilder auch von WezTerm und Warp genutzt werden. Weitere Details finden Sie in der vom README verlinkten Bildvorschau-Dokumentation. Diese Versionsanforderungen stammen aus dem README und wurden hier nicht verifiziert.

Yazi: Erster lokaler Test 4

Yazi enthält ein gleichzeitiges Plugin-System. UI-Plugins können den Großteil der Benutzeroberfläche umschreiben, und es gibt Funktions-Plugins sowie benutzerdefinierte Previewer, Preloader, Spotter und Fetcher, die alle als Lua-Schnipsel geschrieben sind. Es gibt auch ein virtuelles Dateisystem für die Fernverwaltung von Dateien, benutzerdefinierte VFS-Anbieter und benutzerdefinierte Suchmaschinen. Ein Datenverteilungsdienst basiert auf einer Client-Server-Architektur, benötigt jedoch keinen zusätzlichen Serverprozess, und integriert ein auf Lua basierendes Publish-Subscribe-Modell, um Kommunikation zwischen Instanzen und Zustandspersistenz zu erreichen. Ein Paketmanager installiert Plugins und Themes mit einem Befehl, hält sie aktuell oder pinnt sie auf eine bestimmte Version. Plugin-System und virtuelles Dateisystem erweitern das Verhalten des Dateimanagers, aber das README enthält keine Beispiele oder API-Dokumentation für Plugins; diese finden Sie auf der Dokumentationsseite. Auch praktische Anwendungsfälle des Datenverteilungsdienstes werden im README nicht ausgeführt.

Yazi: Konfiguration im Betrieb 5

Das README listet Integrationen mit ripgrep, fd, fzf und zoxide auf. Es beschreibt auch Vim-ähnliche input-, pick-, confirm-, which- und notify-Komponenten sowie automatische Vervollständigung für cd-Pfade. Multi-Tab-Unterstützung und Auswahl über Verzeichnisse hinweg sind enthalten, ebenso wie scrollbare Vorschau für Videos, PDFs, Archive, Code, Verzeichnisse und mehr. Weitere Dateioperationen umfassen Stapel-Umbenennen und Erstellen, Archiv-Extraktion, visuellen Modus, Dateiauswahl, Git-Integration und Mount-Manager, wobei die letzten beiden aus einem separaten Plugin-Repository stammen. Das Themasystem, Mausunterstützung, Drag and Drop, Papierkorb, benutzerdefinierte Layouts, CSI u, OSC 52 und CSI 2031 werden ebenfalls erwähnt. Das README beschreibt jede Funktion nur in einem Satz und gibt keine Tastenkürzel oder Beispielkonfigurationen an. Konfigurationsdetails für die integrierten Werkzeuge werden im README ebenfalls nicht erläutert, und das tatsächliche Verhalten dieser Funktionen müsste getestet werden.

Yazi: Grenzen der README 6

Yazi wird unter der MIT-Lizenz vertrieben, wie im README und in der Lizenzdatei angegeben. Die Lizenz gewährt das Recht, Kopien der Software zu verwenden, zu kopieren, zu modifizieren, zu fusionieren, zu veröffentlichen, zu verteilen, zu unterlizenzieren und zu verkaufen, sofern der Urheberrechtshinweis und der Genehmigungshinweis in allen Kopien oder wesentlichen Teilen enthalten sind. Die Software wird wie sie ist ohne jegliche Gewährleistung bereitgestellt, und die Lizenz begründet keine Support- oder Sicherheitsgarantien. Dokumentationslinks führen zu den Installations- und Funktionsseiten, und es gibt Discord- und Telegram-Diskussionsgruppen, eine hauptsächlich auf Englisch und eine hauptsächlich auf Chinesisch. Das Projekt befindet sich in der öffentlichen Beta und wird aktiv weiterentwickelt, daher sollten Benutzer mit breaking changes rechnen. Die Repository-Metadaten zeigen derzeit 41062 Sterne, 969 Forks und 64 offene Issues, aber diese Zahlen spiegeln nur den aktuellen Stand wider. Der Haftungsausschluss bedeutet, dass Benutzer das Risiko der Nutzung tragen. Für einen ersten Yazi-Test verwendest du yazi.toml und kontrollierst keymap.toml; das Ergebnis muss zu den in der README beschriebenen Dateien oder Ausgaben passen. Yazi eignet sich damit für eine klar abgegrenzte Prüfung, nicht für eine Annahme über unbeschriebene Betriebsbedingungen.

Redaktionelles Fazit

Geeignet für Leser, deren Aufgabe zum dokumentierten Umfang von Yazi passt. Ungeeignet als Ersatz für eine Prüfung der eigenen Umgebung. Starte mit yazi.toml, kontrolliere keymap.toml und halte die konkrete Ausgabe sowie cargo install --locked yazi-fm fest, bevor du den Einsatz entscheidest.

Offizielle Quellen

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community-Notizen

Community-Notizen