Le fichier se nomme ~/.XCompose. Linux va par défaut au-delà de Windows qui n’est même pas fichu de permettre d’entrer au clavier un É ou un å, mais on grimpe encore d’un niveau.
Le préalable est d’avoir défini la touche « Compose » (Multi_key).
Sur ma Debian, ça semble par défaut la touche avec le logo Windows à gauche.
Toujours par défaut, Compose-t-, doit déjà donner un ţ (té cedille, qui pourrait servir en français après tout),
et Compose-o-a un å danois. En expérimentant un peu hasard on trouve plein de choses (®, ¥, ¡, «).
Les nombreuses combinaisons pérvues par défaut sont dans /usr/share/X11/locale/
(il faut fouiller un peu ; un fichier compose.dir définit quels sous-répertoires sont utilisés par la locale en cours,
mais fr_FR.UTF-8 a les mêmes combinaisons que en_US).
Je peux définir dans mon ~/.XCompose local n’importe quelle combinaison de touche pour générer un caractère parmi ceux pas prévus, ou changer la combinaison de touche si l’existante ne me semble pas intuitive :
<Multi_key> <g> <e> : "ε" U03B5 # GREEK SMALL LETTER EPSILON
<Multi_key> <less> <minus> <greater> : "↔" U2194 # LEFT RIGHT ARROW
<Multi_key> <e> <e> <e> : "ᵉ"
<Multi_key> <e> <r> : "ᵉʳ"
<Multi_key> <0> <1> : "⁻" # U207B
<Multi_key> <0> <0> : "⁰" U2070 # SUPERSCRIPT ZERO
(etc.)
Exemples d’utilisation :
« un angström, c’est 10⁻¹⁰ m »
« 1ᵉʳ »
Je peux rajouter des texte entiers que je tape toutes les 30 secondes :
<Multi_key> <s><s><w> : "SELECT * FROM WHERE "
<Multi_key> <p><g> : "PostgreSQL"
Oui il faut retenir les combinaison de touche, mais ce n’est pas forcément plus long que d’aller chercher dans le logiciel de la table caractère ou les copier-coller de Wikipédia. Et si j’utilise souvent, je retiens 1.
Le plus beau est que les combinaisons sont alors valables dans toutes les applications, y compris tous les éditeurs (je ne suis fixé sur aucun, hors chacun gère séparément ses propres snippets), et y compris les sessions ssh vers d’autres machines où je n’ai pas le droit d’installer ou configurer quoi que ce soit.
Seul truc à ne pas oublier pour expérimenter, il faut une incantation au début du fichier pour ne pas perdre la configuration existante, et un mode d’emploi sommaire :
include "%L"
# Pour modifier une touche seule -> voir .Xmodmap
# toute modif impose "ibus restart", mais pas besoin de redémarrer X ou la console
# Exemples : https://github.com/kragen/xcompose
Et effectivement, la prise en compte est immédiate après ibus restart.
J’avais déjà parlé de .XCompose il y a une éternité mais ça semblait un peu moins pratique à configurer en 2006,
en tout cas il semble qu’il fallait modifier les fichiers de la distribution.
Références
- Page de manuel avec les fichiers de config globaux en bas
- Plein d’exemples de combinaisons de touches dans le dépôt de Kragen
- Liste des caractères spéciaux sur Wikipédia
-
Et à mon âge il faut entraîner sa mémoire. ↩︎

Derniers commentaires