[Tips] Zoomer et dé-zoomer dans urxvt

Un billet court pour expliquer rapidement comment zoomer et dézoomer dans un terminal urxvt (rxvt-unicode).

L'objectif est le même que ctrl+/- dans un navigateur : modifier la taille des caractères dynamiquement.

Le code de base est le suivant :

printf '\\33]50;%s\\007' "xft:Terminus:pixelsize=XX"

Note : XX correspondant à la taille en pixels de la font (Terminus dans mon cas).

On va donc faire une première fonction qui va lancer cette commande à la volée. De mon coté j'utilise ZSH mais si vous préférez Bash ça sera sensiblement la même chose.

zoom() {
	printf '\\33]50;%s\\007' "xft:Terminus:pixelsize=$1"
}

Après avec recharger la conf de votre interpréteur de commande, vous pourrez la tester comme ça :

$ zoom 15
$ zoom 20

On va maintenant ajouter deux autres fonctions qui vont augmenter et diminuer progressivement la taille (à la manière d'un navigateur).

URXVT_SIZE=20
URXVT_PROGRESS_SIZE=5
 
zp() {
	URXVT_SIZE=$(echo "$URXVT_SIZE+$URXVT_PROGRESS_SIZE" | bc )
	zoom $URXVT_SIZE
}
 
zm() {
	URXVT_SIZE=$(echo "$URXVT_SIZE-$URXVT_PROGRESS_SIZE" | bc )
	zoom $URXVT_SIZE
}

Après rechargement de la conf, vous zoomerez avec la commande "zp" (zoom plus) et dé-zoomerez avec "zm" (zoom moins).

Pratique non ?

Vus : 2161
Publié par Simon Vieille : 144