Yazi : Explorateur de fichiers en mode terminal pour développeurs

Présentation de l'outil

yazi est un gestionnaire de fichiers destiné au terminal, conçu en Rust. Il se distingue par sa rapidité d'exécution et son interface utilisateur riche en fonctionnalités. L'outil offre une expérience de navigation proche des explorateurs graphiques tout en restant pleinement intégré à l'environnement console.

Points forts :

  • Performance : Développé en Rust, il garantit un chargement quasi instantané des répertoires.
  • Dispositions multiples : L'interface se compose par défaut de trois volets — arborescence, liste et aperçu — permettant une vue d'ensemble du système de fichiers.
  • Traitement asynchrone : Les opérations coûteuses (génération d'aperçus, parcours d'arborescences volumineuses) s'exécutent en arrière-plan sans bloquer l'interface.
  • Raccourcis inspirés de Vim : Navigation fluide avec j/k, sauts rapides via G/gg, et bien d'autres combinaisons.
  • Aperçu de fichiers multimédias : Prise en charge des images, vidéos et documents PDF (nécessite des outils externes).

Le dépôt officiel se trouve sur GitHub : github.com/sxyazi/yazi

Méthodes d'installation

Compilation depuis les sources

Cette approche fonctionne sur tous les systèmes où Rust est disponible.

Étape 1 — Installer le compilateur Rust :

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup update

Étape 2 — Récupérer le code source et compiler :

git clone https://github.com/sxyazi/yazi.git
cd yazi
cargo build --release --locked

Étape 3 — Déplacer le binaire compilé vers un répertoire accessible :

sudo cp ./target/release/yazi /usr/local/bin/

Installation via gestionnaires de paquets

Pour les systèmes disposant d'un gestionnaire de paquets, l'installation est encore plus directe :

Système Commande
macOS / Linux (Homerbew) brew install yazi
Arch Linux sudo pacman -S yazi
Fedora / CentOS sudo dnf install yazi
Debian / Ubuntu sudo apt install yazi

Prise en main

Lancement et structure de l'interface

Pour démarrer l'outil, il suffit de taper :

yazi

L'écran se divise en trois zones distinctes :

  • Volet gauche : Vue arborescente des répertoires.
  • Volet central : Contenu du répertoire courant.
  • Volet droit : Aperçu du fichier sélectionné.

Raccourcis de navigation fondamentaux

Touche Action
j / k Déplacement vertical du curseur
h / l Remonter d'un niveau / Entrer dans un répertoire
G Aller à la fin de la liste
gg Revenir au début de la liste
Ctrl+d Défiler d'une demi-page vers le bas
Ctrl+u Défiler d'une demi-page vers le haut
x Supprimer l'élément sélectionné
r Renommer un fichier ou dossier
y Copier l'élément sélectionné
p Coller le contenu du presse-papiers

Fonctionnalités avancées

Touche Description
? ou ~ Ouvrir la documentation d'aide intégrée
/ Activer le mode recherche (filtrage de fichiers)
a Afficher ou masquer les fichiers cachés
g puis espace Passer en mode saut rapide (Goto)
Entrée Ouvrir un fichier ou accéder à un répertoire
q Quitter l'application

Saut rapide vers un répertoire

La combinaison g suivie d'un espace déclenche le mode Goto. Il suffit alors de saisir le chemin souhaité pour s'y rendre instantanément.

g [espace] /chemin/vers/dossier

Personnalisation

Le fichier de configuration principal se situe à l'emplacement ~/.config/yazi/yazi.toml. Voici un exemple de configuration où l'éditeur par défaut est remplacé par Neovim et les proportions des volets sont ajustées :

[opener]
edit = [
  { run = 'nvim "$@"', block = true, for = "unix" },
]

[mgr]
ratio = [1, 2, 5]

Dans cet exemple, la répartition des colonnes passe de [1, 4, 3] (valeurs par défaut) à [1, 2, 5], accordant davantage d'espace à la prévisualisation.

Intégration dans l'environnement shell

Afin de conserver le répertoire courant après avoir quitté yazi, il est recommandé de configurer une fonction shell. Cette technique permet de changer automatiquement de répertoire de travail dans le terminal parent :

Exemple pour Bash ou Zsh — ajouter dans le fichier de configuration du shell :

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

Cette fonction crée un fichier temporaire pour stocker le dernier répertoire visité, puis effectue le changement de répertoire automatiquement à la fermeture de yazi.

Outils complémentaires pour l'aperçu

L'aperçu de fichiers repose sur des programmes externes. Pour bénéficier de la totalité des fonctionnalités, voici les outils recommandés :

Usage Outil suggéré
Coloration syntaxique bat
Affichage d'images/vidéos ueberzug ou chafa
Décompression d'archives unzip, tar

Installation de bat pour la coloration syntaxique :

# Debian / Ubuntu
sudo apt install bat

Étiquettes: yazi tui file-manager Rust terminal

Publié le 3 juillet à 21h09