X.Org portable

De Disposition de clavier francophone et ergonomique bépo

Il est possible d'activer/désactiver à la volée la disposition bépo sous tout système utilisant X.org. C’est utile par exemple en itinérance ou en l'absence des droits d'administration (ce qui empêche de réaliser une installation définitive). Pour ce faire, vous pouvez utiliser soit une interface graphique, pratique en itinérance, soit la ligne de commande.

Attention

OpenSolaris (avant OpenIndiana) utilise un format différent pour décrire une disposition. On peut essayer de remplacer le contenu de fr-dvorak-bepo.xkb par celui du prévu pour OpenSolaris, utiliser la méthode xmodmap ou faire une installation définitive.

Interface graphique

Après avoir téléchargé et décompressé la dernière version pour xkb (infos), double-cliquez sur clavier_bepo. Votre clavier est maintenant configuré avec la dernière version de la disposition bépo !

Pour repasser à la configuration de clavier précédente, double-cliquez simplement sur clavier_precedent.

Ligne de commande

Il vous faut commencer par télécharger la dernière version pour xkb (infos). Décompressez-la où vous voulez ! Dans cette archive, vous trouverez :

  • les licences : CC-SA-BY.txt et GFDL.txt ;
  • une documentation : LISEZ_MOI.txt (sensiblement la même chose qu’ici, mais vous pouvez y jeter un coup d'œil) ;
  • deux disposition différentes :
    • fr-dvorak-bepo.xkb : disposition pour les systèmes disposant d’une version d’Xorg postérieure ou égale à la version 7.0 ;
    • fr-dvorak-bepo-xorglegacy.xkb : disposition pour les systèmes disposant d’une version d’Xorg antérieure à la version 7.0 ;
  • un fichier XCompose pour obtenir tous les symboles en touche morte (pas indispensable mais très utile).

Une fois dans le répertoire contenant ces fichiers :

  • Pour les systèmes disposant d’une version d’X.Org postérieure ou égale à la version 7.0 :
xkbcomp -w0 fr-dvorak-bepo.xkb $DISPLAY
  • Pour les systèmes disposant d’une version d’X.Org antérieure à la version 7.0 :
xkbcomp -w0 fr-dvorak-bepo.xorglegacy.xkb $DISPLAY

Si vous souhaitez profiter de toutes les touches mortes (en particulier pour les symboles monétaires et les lettres barrées), faites aussi :

cat XCompose >> ~/.XCompose

Il est possible d'avoir la disposition bépo dès l'ouverture de la session, en appelant xkbcomp dans le fichier ~/.xprofile, en ajoutant la ligne suivante :

xkbcomp -w0 ~/fr-dvorak-bepo.xkb $DISPLAY

Si vous avez besoin, par la suite, de revenir à la disposition AZERTY (par exemple pour passer la main à un collègue), vous pouvez utiliser la commande :

setxkbmap fr

Le fr est l’azerty français, le be est l’azerty belge. Voir l’utilisation de setxkbmap pour trouver le code a utiliser pour les autres dispositions.

Alternative avec xmodmap

(Méthode dépréciée)

Si les méthodes précédentes ne fonctionnent pas, une autre méthode (cependant dépréciée) consiste à créer un fichier décrivant pour chaque touche physique son comportement à l'écran. La synthaxe est la suivante «keycode # = 1 2 3 4 5» :

  • # le numéro de la touche physique (indépendant du clavier)
  • 1 comportement lors d'un simple clic
  • 2 shift + clic
  • 3 alt gr + clic
  • 4 ??
  • 5 alt gr + shift + clic

Exemple pour la touche «O» en bépo : keycode 27 = o O oe OE oe

Attention ! Selon votre distribution, il se peut que la syntaxe soit : «keycode # = 1 2 1 2 3 4 5». Pour le savoir, il suffit de taper dans la console :

 $ xmodmap -pke | more

Vous pouvez générer le fichier pour bépo depuis un pc l'utilisant :

 $ xmodmap -pke > bepo.pke

Ou alors récupérer directement le fichier ici [1].

Vous pouvez en profiter pour changer des raccourcis si cela vous arrange !

Enfin, pour utiliser un fichier fichier.pke, il suffit d'exécuter dans un terminal, la commande :

 $ xmodmap fichier.pke

Attention : selon le système d'exploitation, les touches Ctrl, AltGr, … sont définis differemment. Pour connaître les valeurs, dans un terminal :

 $ xmodmap
shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)                               # ctrl left
mod1        Alt_L (0x40),  Meta_L (0xcd)                                      # alt left
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf) # touche «Windows» left
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)                      # altgr

Pour Altgr par exemple, la valeur peut être ISO_Level3_Shift ou Mode_switch.