|

FZF : trouvez n’importe quoi plus vite dans le terminal

📌 FZF est un sélecteur fuzzy pour le terminal qui transforme des listes de fichiers, d’historique ou de résultats de recherche en interface interactive. C’est simple, rapide, et franchement bien plus agréable qu’un enchaînement de grep, cut et xargs.

Le cœur de FZF tient en une idée très propre: vous lui envoyez une liste en entrée, il vous laisse la filtrer en temps réel, puis il renvoie la ligne choisie en sortie. C’est exactement le genre d’outil Unix qui paraît minimal au départ, puis qui finit par s’inviter partout. Je trouve l’approche très élégante, parce qu’elle ne force pas un workflow unique. Elle s’adapte à ce que vous avez déjà.

La page officielle le résume bien: FZF sert à sélectionner des fichiers, naviguer dans l’historique de commandes, prévisualiser des données, parcourir des ensembles complexes et construire des menus interactifs. Autrement dit, il ne remplace pas vos outils habituels. Il leur donne une couche d’interaction beaucoup plus fluide.

  • ⚡ Installation simple via Homebrew, gestionnaires Linux ou binaire officiel
  • 🧠 Fuzzy matching rapide sur des listes de toutes tailles
  • 🔌 Intégration native avec Bash, Zsh, Fish, Nushell, Vim et Neovim
  • 👀 Prévisualisation en temps réel pour voir avant d’ouvrir
  • 🧰 Mode programmable avec --bind, become, reload et autres actions

Ce qui m’intéresse le plus, ce n’est pas seulement la recherche fuzzy. C’est la façon dont FZF devient une brique de composition. La doc montre des cas très concrets: ouvrir un fichier, choisir une branche Git, lancer ripgrep en mode interactif, ou créer un sélecteur de répertoires avec z ou zoxide. On n’a pas affaire à un gadget. On a une petite machine à accélérer le terminal.

Les intégrations sont solides. Avec CTRL-T, CTRL-R et ALT-C, vous récupérez fichiers, historique et dossiers sans quitter la ligne de commande. Dans les shells compatibles, l’autocomplétion fuzzy vous évite aussi une bonne partie des frappes répétitives. Et si vous utilisez Vim ou Neovim, le plugin officiel s’insère proprement dans le flux.

FZF reste aussi très lisible dans ses choix. L’installation est documentée proprement, les modes d’affichage --height et --popup couvrent les usages de terminal classique comme tmux/Zellij, et la syntaxe de recherche permet de mélanger fuzzy, exact et exclusions. Le projet est mature, actif, et largement adopté: le dépôt GitHub affiche plus de 81k étoiles et une publication récente 0.74.1.

Je pense que c’est un de ces outils qu’on adopte d’abord pour un cas précis, puis qu’on finit par utiliser partout. Pour moi, c’est souvent le signe qu’un projet a trouvé la bonne abstraction.

Sources

Publications similaires

Laisser un commentaire