yaourt paginé et en couleur

extrait du wiki de archlinux.fr :

Yaourt est un programme en ligne de commande qui interface les fonctions de pacman et makepkg pour la gestion des paquets sous Arch Linux.

Cet outil bien connu des archers est particulièrement utile dans son mode interactif combinant recherche et installation (qui est du reste le mode par défaut). Pour les débianeux essayez d'imaginer un apt-cache search en couleur vous permettant de sélectionner dans le résultat le ou les paquet(s) à installer (peut-être cela existe-t-il).

Toutefois la recherche s'effectuant tant sur le nom du paquet que sur sa description, et intégrant d'office tous les paquets du dépôt des utilisateurs AUR, le nombre de lignes résultant peut vite devenir important. Et même gênant car le plus souvent ce qui nous intéresse est au sommet de la liste, provenant des dépôts officiels (core, extra, community, multilib) quand les dernières lignes que nous voyons, au moment de saisir le numéro des paquets à installer, ne contiennent que des paquets AUR. Dans un émulateur de terminal en mode graphique c'est le recours assuré à l'ascenseur ou à la molette !

Une solution est la pagination en utilisant une commande comme more, less ou most. Il existe pour cela l'option --pager. Extrait de la page man :

--pager
           Use $PAGER to show search results.

Il faut donc préalablement définir $PAGER :

export PAGER=less

ainsi la commande yaourt --pager monpaquet vous permettra de naviguer dans la liste avec les touches de paginations. Il suffira d'appuyer sur la touche q pour sortir de less et de se voir demander de saisir sa sélection.

Parfait.... mais il y a encore un petit quelque-chose à régler : la sortie n'est plus en couleur, l'option --pager désactivant cette caractéristique. Elle peut se rétablir avec l'option --color mais il faut alors demander à less d'autoriser les caractères spéciaux, ce qui se fait par l'option -r ⇒ export PAGER="less -r"

Et comme la commande finale (yaourt --color --pager) est un peu longue je me suis fait un alias et j'ai mis tout ça dans mon .bashrc :

export PAGER="less -r"
alias fromage="yaourt --color --pager"
Vus : 912
Publié par Vincent Gay : 38