La disposition clavier du dvorak-fr distribuée par Xorg dans les distributions Linux a changé il y a peu. En voilà les raisons, et un moyen de revenir à la disposition précédente.
Depuis presque 3 ans, je me suis mis à une disposition en dvorak-fr (voir http://clavier-dvorak.org/wiki/Accueil pour plus de détails sur le dvorak). L’effort (relatif) pour changer de disposition clavier, est nettement compensé par le confort d’une frappe a dix doigts. Bref.
Lors d’une mise à jour de la distribution Linux Debian utilisé au travail, la disposition de certaines touches ont été changé. En particulier, toutes celles utilisées pour la programmation : /*_;$|.
La raison ? Si le dvorak-us est standardisé par l’ANSI depuis des lustres, ce n’est pas le cas du dvorak-fr. Une proposition de Francis Leboutte a été remarqué en 2001. Une modification de cette proposition a été réalisé par Josselin Mouette par la suite et intégré dans les versions de Xorg. C’est donc sur la version de Josselin Mouette que j’ai appris le dvorak-fr, et j’en suis d’ailleurs très content. Or Josselin Mouette n’a semble-t’il jamais demandé la permission de Francis Leboutte pour modifier la disposition de dvorak-fr. Cette dernière est en effet protégée par une licence non-libre CC-BY-NC-ND .
Pour cette seule raison, les développeurs de Xorg ont remplacé le dvorak-fr de J. Mouette, par celui de F. Leboutte. Et donc, en faisant un update, je me suis donc retrouvé avec une disposition clavier changée.
J’ai bien essayé d’utiliser la disposition de F. Leboutte. Mais franchement, l’utilisation de la touche morte pour les accents, et les accolades ‘{‘ et ‘}’ me sont très pénible. Je trouve aussi la disposition des opérateurs ‘/’, ‘+’, ‘-’ et ‘*’ remarquablement illogique.
J’ai aussi essayé le dvorak-bépo, mais les changements sont trop important pour que je fasse l’effort aujourd’hui sans qu’une question de fond soit réglé auparavant :
comment une distribution libre comme une Debian peut-elle distribuer un fichier non-modifiable, et non-utilisable commercialement (rappelons que libre ne veut en aucun cas dire gratuit comme le montre Redhat depuis de nombreuses années par exemple) ? Par ailleurs, est-il possible de fournir la disposition de J. Mouette sous un autre nom ?
Enfin, pour ceux qui souhaite revenir à la disposition de J. Mouette sous Linux, la procédure à suivre est la suivante (nécessite les droits de root) :
Récupérer le paquet xkb-data-legacy de la Debian :
$ wget -O /tmp/xkb-data-legacy.tar.gz http://ftp.de.debian.org/debian/pool/main/x/xkb-data-legacy/xkb-data-legacy_1.0.1.orig.tar.gz
$ tar xvf /tmp/xkb-data-legacy.tar.gz -C /tmp/ xkb-data-legacy-1.0.1/symbols/pc/fr
$ vi /tmp/xkb-data-legacy-1.0.1/symbols/pc/fr
Cette dernière instruction vous permet d’éditer le fichier (utiliser emacs, nano, gedit ou kate si vous n’aimez pas vi). Pour ma part, je renomme l’entrée dvorak-fr en dvorak-mouette. Pour cela cherchez les lignes suivantes :
// Keymap Dvorak pour le Français
// par Josselin Mouette .
partial alphanumeric_keys
xkb_symbols “dvorak” {
Et remplacez cette dernière ligne par :
xkb_symbols "dvorak-mouette" {
N’oubliez pas de sauvegarder, évidemment. Dernière chose, intégrer votre modification dans Xorg. Là, il faut repérer où se trouve le fichier ‘fr’ dans votre distribution. Pour cela utilisez les commandes suivantes :
$ locate fr|grep xkb
ou encore
$ find / -name 'fr' | grep xkb
Cette dernière instruction sera probablement assez longue…
Chez moi (une Gentoo), le fichier en question se trouve dans
/usr/share/X11/xkb/symbols/fr
Lorsque vous aurez trouvé ce fichier, renommez-le (afin de ne pas le perdre) :
$ sudo cp /usr/share/X11/xkb/symbols/fr /usr/share/X11/xkb/symbols/fr.bak
Enfin, copiez le votre à la place :
$ sudo cp /tmp/xkb-data-legacy-1.0.1/symbols/pc/fr /usr/share/X11/xkb/symbols/fr
$
Si vous utilisez un environnement comme KDE ou Gnome (j’ai pas essayé sous Gnome), vous devriez pouvoir choisir ce nouveau layout (sous KDE, j’utilise Kxkb).
L’inconvénient de cette méthode c’est de s’assurer que lors des prochaines mise à jour de la distribution, le fichier ‘fr’ ne sera pas remplacé par une nouvelle version ne contenant pas le dvorak de J. Mouette. J’ai donc sauvegardé mon fichier ‘fr’ modifié au cas où.
NB : il y a surement une méthode plus simple à base de setxkbmap, xkbcomp, mais je n’ai pas réussi à la faire fonctionner. Pour information, xmodmap modifie une disposition existante. En ce qui me concerne (clavier QWERTY à la base), je n’ai pas non plus réussi à faire fonctionner le dvorak version J. Mouette par cette méthode.