Des couleurs dans ton less
Le mardi 22 septembre 2015 par Benjamin BoudoirQuand j'ai besoin d'ouvrir un fichier que je ne modifie pas, j'aime bien less. Mais je fini souvent par ressortir emacs, parce que l'absence de coloration syntaxique est complexe sur certains documents (genre, XML le maudit).
Donc voici un petite manip bien sympatique... On commence par installer python-pygments (sous Debian et CentOS) pour récupérer pygmentize. Puis, on va se créer un fichier ~/.lessfilter :
#!/bin/sh
list=$(pygmentize -L | grep -Eo '\*\.[a-z0-9]*')
ext=$(echo "$1" | rev | cut -d'.' -f1 | rev)
echo "$list" | grep -q "^\*\.$ext\$"
if [ "$?" -eq 0 ]
then
pygmentize -f 256 "$1"
elif [ "$1" = .bashrc ] || \
[ "$1" = .bash_aliases ] || \
[ "$1" = .bash_environment ] || \
grep -q "#\!/bin/bash" "$1"
then
pygmentize -f 256 -l sh "$1"
else
exit 1
fi
exit 0
Qu'on rend exécutable.
Et ensuite on ajoute quelques lignes a son ~/.bashrc :
export LESS='-R'
export LESSOPEN='|~/.lessfilter %s'
Et tadam !
Je m'inspire totalement de cet article, j'ai un peu modifié le comportement du lessfilter pour que ce soit pygment qui me donne les extensions gérées et pas que je les rentre à la main.