Afficher des images dans lf avec Kitty et Tmux

samedi 3 janvier 2026 · 2 minutes · 341 mots

Animation lf terminal file manager affichant des images

Le problème

Lorsqu’on utilise lf (le gestionnaire de fichiers en terminal) avec Kitty et Tmux, l’affichage des prévisualisations d’images pose souvent problème : des résidus graphiques restent affichés à l’écran lors du passage d’une prévisualisation à une autre, rendant l’interface illisible.

Affichage incorrecte dans lf terminal file manager des images

Après plusieurs essais, j’ai trouvé une solution qui semble bien fonctionner. Elle repose sur trois éléments :

  1. La commande redraw de lf
  2. L’absence de script cleaner
  3. L’événement on-select de lf

Viewing images without issues

Configuration de lf

Voici la configuration à ajouter dans votre fichier lfrc :

1set previewer ~/.local/bin/lfpreview
2cmd on-select &{{
3  exec lf -remote 'send redraw'
4}}

Le script de prévisualisation (previewer) sera détaillé plus loin. L’élément clé ici est l’utilisation de on-select pour demander à lf de se redessiner à chaque sélection. C’est cette commande qui effectue le nettoyage du terminal et assure un affichage propre des prévisualisations.

Le script de prévisualisation

Créez le fichier ~/.local/bin/lfpreview avec le contenu suivant :

 1#!/bin/sh
 2draw() {
 3  kitten icat --stdin no --transfer-mode memory \
 4  --place "${w}x${h}@${x}x${y}" "$1" </dev/null >/dev/tty
 5}
 6
 7file="$1"
 8w="$2"
 9h="$3"
10x="$4"
11y="$5"
12
13case "$(file -Lb --mime-type "$file")" in
14  image/*)
15    draw "$file"
16  ;;
17  application/pdf)
18    pdftoppm -f 1 -singlefile "$file" "/tmp/lfoutput"
19    draw "/tmp/lfoutput.ppm"
20  ;;
21  *)
22    less "$1"
23  ;;
24esac
25
26exit 1 # do not cache

N’oubliez pas de le rendre exécutable :

1chmod +x ~/.local/bin/lfpreview

Cette version est simplifiée et gère :

  • Les images (via kitten icat)
  • Les PDF (conversion de la première page en image)
  • Les autres fichiers (affichage via less)

Points importants

Le exit 1 en fin de script est crucial : il indique à lf de ne pas mettre les prévisualisations en cache. Sans cela, le mécanisme de rafraîchissement ne fonctionnerait pas correctement, car lf réutiliserait les prévisualisations cachées au lieu de réafficher l’image à chaque sélection.

Conclusion

Cette configuration fonctionne bien dans mon cas d’usage, mais il est possible qu’elle nécessite des ajustements selon votre environnement. N’hésitez pas à adapter le script de prévisualisation pour gérer d’autres types de fichiers selon vos besoins.

Howto Linux Tmux Kitty Lf