LEAF : un visualiseur Markdown dans le terminal avec le rendu d’une interface graphique

https://leaf.rivolink.mg/

https://github.com/RivoLink/leaf

📌 LEAF est un visualiseur Markdown en terminal qui affiche fichiers et flux avec coloration syntaxique, tableaux, maths LaTeX, diagrammes Mermaid et navigation interactive — sans quitter la ligne de commande.

L’outil ouvre un fichier Markdown et le restitue avec une mise en forme riche : titres hiérarchisés, blocs de code colorés pour plus de 40 langages, tableaux en boîtes Unicode, formules LaTeX converties en symboles et diagrammes Mermaid rendus en art ASCII. Le résultat ressemble à une interface graphique, mais reste entièrement dans le terminal.

La navigation repose sur des raccourcis vim — j/k pour défiler, d/u pour paginer, g/G pour sauter en haut ou en bas. Une barre latérale de sommaire suit la section active, la recherche plein texte s’active avec / et les correspondances s’affichent en surbrillance. Le sélecteur de fichiers fuzzy (Ctrl+P) ou le navigateur de répertoire (–picker) permettent d’ouvrir n’importe quel fichier sans connaître son chemin exact.

  • 🎨 Coloration syntaxique pour 40+ langages
  • 📐 Tableaux Unicode avec alignement de colonnes
  • 🧮 Maths LaTeX inline et bloc
  • 🔀 Diagrammes Mermaid en art ASCII
  • 👁️ Mode watch avec rechargement automatique
  • 🔍 Recherche plein texte avec surbrillance
  • 📑 Sommaire latéral avec suivi de section
  • 🎭 4 thèmes intégrés + thèmes personnalisés TOML

Le mode watch recharge le fichier automatiquement à chaque sauvegarde, en conservant la position de défilement. L’intégration éditeur (Ctrl+E) ouvre le fichier dans vim, nano, VS Code ou tout éditeur détecté dans le PATH, puis recharge l’aperçu au retour.

Le support stdin permet de canaliser la sortie de n’importe quel outil CLI directement dans leaf — y compris les agents IA comme Claude ou ChatGPT. Le mode inline (--inline) restitue le Markdown en stdout avec couleurs ANSI, ce qui en fait un moteur de rendu utilisable dans les pipes et les aperçus fzf.

Les thèmes personnalisés s’écrivent en TOML, en héritant d’un preset intégré et en surchargeant les couleurs souhaitées. Les complétions shell sont disponibles pour bash, zsh, fish et PowerShell via leaf --auto-complete.

L’ensemble est écrit en Rust, publié sous licence MIT et disponible sur macOS (Intel et Apple Silicon), Linux (x64 et ARM), Windows et Android via Termux. La mise à jour se fait par leaf --update avec vérification SHA256 du binaire téléchargé.

Concrètement, LEAF s’inscrit dans une logique de lecture immersive plutôt que de défilement brut : le terminal devient un espace de consultation structuré, avec les attributs d’une interface graphique — navigation, recherche, thèmes — sans jamais quitter la ligne de commande.

Sources

Publications similaires

Laisser un commentaire