Urxvt

De ArchwikiFR

rxvt-unicode est un émulateur de terminal largement configurable, très rapide et extensible. Entre autres, il permet de se lancer en service afin d'avoir des ressources partagées entre les différents terminaux.

Installation

pacman -S rxvt-unicode

Configuration

urxvt se configure à l'aide des ressources X11 (xrdb, $HOME/.Xdefaults, $HOME/.Xresources), la meilleure source pour avoir la liste des ressources disponibles étant la page de manuel :

man urxvt

-> rxvt-unicode resources (en)

Le principe est simple, il suffit de rajouter la ligne concernant la ressource à modifier au $HOME/.Xdefaults et de relancer le terminal.

Nous allons en voir quelques exemples avec quand cela est possible l'équivalent en ligne de commande pour un seul lancement et éventuellement l'équivalent pour le changer en direct.

Vraie transparence

Si vous avez un gestionnaire de compositing, ou un gestionnaire de fenêtres gérant le composite :

urxvt -depth 32 -bg rgba:5555/5555/5555/aaaa
Fichier: ~/.Xdefaults
URxvt.depth:      32
URxvt.background: rgba:5555/5555/5555/aaaa

ou encore :

urxvt -depth 32 -bg rgba:[60]black
Fichier: ~/.Xdefaults
URxvt.depth:      32
URxvt.background: rgba:[60]black

Pour changer la couleur de l'arrière plan en direct :

echo -e '\033]11;[80]black\007'

Police

urxvt -fn xft:Monospace-12
URxvt.font: xft:Monospace-12
echo -e '\033]50;xft:Monospace-12\007'


Raccourcis

Vous pouvez configurer des raccourcis spécifiques, par exemple, pour passer d'un terminal transparent à un terminal opaque :

URxvt.keysym.Control-t: command:\033]11;[80]#000\007
URxvt.keysym.Control-M-t: command:\033]11;#000\007

Ainsi ctrl + t rendra le terminal transparent, ctrl + alt + t opaque.

Extensions perl

Lien cliquable

URxvt.perl-ext-common:  default,matcher
URxvt.url-launcher:     firefox
URxvt.matcher.button:   3

Vous pourrez ouvrir un lien en cliquant dessus avec le bouton droit de la souris (mettez 2 pour le bouton du milieu, et 1 pour le bouton gauche).

Onglets

URxvt.perl-ext-common:  default,tabbed

Pour se déplacer dans les onglets, c'est shift + flèche droite/gauche, shift + flèche du bas pour en créer.

Ressources spécifiques à un terminal

Il est possible d'avoir des ressources différentes selon le terminal du moment que les terminaux sont lancés avec des noms différents :

urxvt

lancera un terminal avec un nom de classe par défaut:

$ xprop | grep -i class
WM_CLASS(STRING) = "urxvt", "URxvt"
urxvt -name irssi # et par exemple y lancer irssi avec l'option -e

aura comme classe:

$ xprop | grep -i class
WM_CLASS(STRING) = "irssi", "URxvt"

URxvt est le nom de classe commun à tous les terminaux urxvt.

Ainsi, les lignes suivantes :

irssi.geometry: 120x44+0+24
irssi.background: grey
URxvt.background: [60]black

permettront d'avoir une console pour irssi de taille particulière et avec une couleur différente des autres consoles.

Mode service

Il est possible de partager les ressources (cpu/ram... non les ressources X11) des différentes consoles urxvt en le lançant en tant que service :

urxvtd -q -o -f

Et pour chaque nouvelle console, la lancer avec :

urxvtc