On se tutoie ?

Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - typematrix

Fil des billets - Fil des commentaires

mardi, mai 26 2009

Utiliser plusieurs claviers avec des mapping différents sous X.org

Les deux techniques présentées sont différentes selon la version de X.org utilisée.
Les versions de X.org >= 1.5 supportent l'hotplugging, en passant par HAL ; les versions précédentes non.

Pour connaître sa version de X:

X -version

Avec HAL

Pour lister les périphériques détectés par HAL:

lshal

Copie le fichier /usr/share/hal/fdi/policy/10osvendor/10-keymap.fdi dans /etc/hal/fdi/policy/.

Voici mon fichier une fois modifié:

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keymap">
      <append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
    </match>
 
    <match key="info.capabilities" contains="input.keys">
      <merge key="input.xkb.rules" type="string">base</merge>
 
      <merge key="input.xkb.model" type="string">keyboard</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.xkb.model" type="string">evdev</merge>
      </match>
 
      <match key="info.product" string="TypeMatrix.com USB Keyboard">
              <merge key="input.xkb.variant" type="string">bepo</merge>
      </match>
      <match key="info.product" string="USB Multimedia Keyboard">
              <merge key="input.xkb.variant" type="string">latin9</merge>
      </match>
 
      <merge key="input.xkb.layout" type="string">fr</merge>
    </match>
  </device>
</deviceinfo>

La partie:

<match key="info.product" string="TypeMatrix.com USB Keyboard">
    <merge key="input.xkb.variant" type="string">bepo</merge>
</match>

spécifie que pour mon clavier TypeMatrix je souhaite une variante bépo.
Pour l'autre j'utilise du latin9.

Pour configurer ton fichier il faut reprendre les informations issues de lshal.
Les claviers sont repérables par leur info.capabilities qui contiennent 'input.keyboard'.

Une fois repérés il reste à récupérer la chaîne info.product (TypeMatrix.com USB Keyboard et USB Multimedia Keyboard dans mon cas) et configurer le fichier /etc/hal/fdi/policy/10-keymap.fdi avec.

Sans HAL:

Pour lister uniquement les périphériques d'entrée (souris, clavier, joystick...):

xinput list --short

On récupère l'identifiant du device qui nous intéresse et, par exemple:

setxkbmap -device 0 fr bepo
setxkbmap -device 1 fr latin9

L'inconvénient c'est que le changement n'est pas persistant lors de chaque redémarrage.

mardi, avril 28 2009

Clavier Typematrix et skin bépo.

J'ai reçu vendredi dernier mon clavier Typematrix que j'avais commandé avec la commande groupée sur clavier-dvorak.org.

À propos de l'installation

Sous Archlinux, la distribution que j'utilise, il suffit d'être à jour, X.org contient déjà la disposition bépo. Un petit setxkbmap fr bepo suffit. Sous OSX, il faut installer le layout qui va bien.

À propos du clavier

Mes pré-requis dans le choix du clavier était d'avoir un clavier assez compact, sans pavé numérique, avec un placement des touches en colonnes.

Voilà un peu la tête du monstre, je l'ai pris en dvorak-us de base:

typematrix-dvorak

Avec une skin bépo noire:

typematrix-bepo

Initialement on devait le reçevoir fin février mais il y a eu quelques complications, notamment dans la fabrication des skins. Malgré tout nous avons toujours été tenu au courant de l'avancé de la commande.

En terme de dimensions ce clavier est très fin et peu large ; il fait environ 1cm d'épaisseur pour une largeur égale à celle d'un portable 13"3.

Ce n'est pas un clavier sans fil mais usb ce qui, je trouve, est plutôt un avantage. Fini les contraintes de piles.
Et puis à moyen terme c'est typiquement le type de clavier que l'on peut emporter avec soit si on est amené à travailler sur un ordinateur autre que le sien.

À l'usage

Ce clavier est vraiment très confortable, et très silencieux. La frappe s'apparente à une frappe sur les claviers d'ordinateurs portables. La skin donne un aspect peau de pêche au toucher ; on aime ou pas.
Typematrix fabrique aussi des skins vierges, la classe quand on connaît son clavier par coeur :-).
D'ailleurs il y a une nouvelle commande groupée pour l'achat de skins.

Le premier avantage qui saute aux yeux à la main c'est que la souris est beaucoup plus accessible, grâce aux faibles dimensions du clavier.

Mais le plus gros changement est l'alignement des touches en colonnes. Je ne sais pas si c'est parce que je change de disposition en même temps ou non mais je trouve qu'on s'y habitue très vite (et on n'a pas envie de revenir en arrière).

Ça limite énormément les fautes de frappes, car ça donne l'impression que la touche que l'on cherche « tombe » sous le doigt.

Ca peut paraître anodin mais ça change beaucoup de choses par rapport au positionnement des doigts.
Chacun des 8 doigts positionné (les 2 pouces se trouve sur la barre espace) a facilement accès à sa touche, la touche du dessus et celle du dessous alors qu'en azerty on a potentiellement deux touches en dessous et deux touches au dessus du fait du non-alignement.
Du coup chaque doigt a ses touches bien définies et ne risque pas de faire des km inutiles.

À propos du mapping

    J'avais depuis longtemps en tête de changer de disposition mais je voulais que ça s'accompagne d'un changement de clavier physique pour ne passer céder à la tentation de revenir en arrière.
Pour être honnête, c'est difficile de changer de mapping du jour au lendemain. Je suis passé d'un peu plus de 300 caractères minutes à ~50-60…laisse moi te dire qu'une lettre par seconde c'est très lent.

Concernant mon choix de disposition je souhaitais trouver le meilleur compromis entre une disposition facilitant le développement et une disposition facilitant l'écriture en français. J'ai éliminé d'emblée le qwerty qui ne possède pas les accents de façon native et je ne trouvais pas pratique d'avoir les chiffres en accès direct.
L'azerty n'étant vraiment pas réputé pour la disposition judicieuse de ses touches il restait le dvorak-fr et le bépo.

Finalement j'ai chosi la disposition bépo car elle me semble la plus logique et la plus productive.
En effet le bépo n'utilise pas de touche morte, contrairement au dvorak-fr.
De plus le placement des signes me semble plein de bon sens ; par exemple on a toutes les opérandes mathématiques à la suite les unes des autres (+-/*=%), les deux parenthèses sont elles aussi côte à cote avec les crochets en alt.

Pour le développement le $@,. et () sont en accès direct, mais pas les {}, et |.

L'apprentissage

Passer d'un azerty à touches non alignées à un bépo en touches en colonnes est assez…frustrant quand on commence à taper.

La disposition des touches en elle même va très vite à apprendre, du fait qu'on peut facilement « déduire » le placement des touches.

Grosso modo, et à quelques exceptions prêt on a d'un côté les voyelles et la ponctuation (à gauche) et de l'autre les consonnes.

Mais c'est là qu'on se rend compte que ce n'est pas le fait de connaître l'emplacement des touches qui nous rend rapide mais les automatismes que l'on a acquis.

Je ne connais pas la disposition azerty par coeur, même si je pense que je serais capable de la retrouver, alors que je connais déjà celle du bépo après seulement quelques jours.
Pourtant je suis, pour le moment, plus rapide en azerty.

J'ai décidé d'essayer d'apprendre de la meilleure des manières, c'est à dire en ne regardant pas le clavier et plaçant correctement mes dix doigts, ce que je n'ai jamais fait en azerty.

Je me suis fait un petit papier en dessous de l'écran mais une fois la disposition apprise ce n'est pas très utile.

À l'usage on se rend compte que les mains ne bougent quasiment pas. Une fois l'index gauche calé sur l'ergot de la touche 'e' et l'index droit sur celui de la touche 't' on a facilement accès à tout (excepté le w sur le typematrix, saleté d'auriculaire trop court :-)).

La deuxième impression que l'on a en tapant est un sentiment de frustration.
Savoir où sont les touches et avoir quelquechose à taper en étant désespérement lent c'est réellement frustrant.
J'essaie d'utiliser le clavier au maximum pour m'y accoutumer mais en terme de productivité il m'est impossible de l'utiliser toute la journée sinon mes clients risquent de me taper dessus :-).

Les avantages

  • Les touches shift sont grandes et de même taille de chaque côté du clavier. Sur mon azerty je n'utilisais que le shift de gauche, pas pratique quand on veut mettre en majuscule une lettre juste à côté de ce shift.
  • Les touches backspace et suppr n'ont pas le même comportement, la touche backspace supprime le contenu précédant le curseur et la touche suppr celui suivant le curseur.
  • Ces deux touches, en plus de la touche entrée, sont au milieu du clavier et peuvent donc être atteintes indifféremment par la main gauche ou droite.
  • Plus besoin de combinaisons à trois doigts pour faire des caractères accentués majuscules (ÀÉÈÇ), qui ont leur place dans la langue de molière.
  • Avec la disposition bépo j'ai l'impression que les mains gauches et droites travaillent beaucoup plus à tour de rôle, lettre par lettre, tandis qu'en azerty il me semble que les mains s'alternent par séquences.

Les inconvénients

  • Le principal que j'ai relevé pour le moment c'est la difficulté d'accès au 'w'. Un peu dommage car le 'w' est utile pour fermer des fenêtres notamment. En azerty le C-w est un raccourci très rapide à exécuter.
  • Quand on positionne bien ses mains je trouve qu'il est facile d'accèder aux touches du dessus mais beaucoup moins à celle du dessous, ça oblige à replier son doigt vers l'intérieur, je ne sais pas si c'est une question d'habitude ou non.
  • Certains touches ne fonctionnent pas sous Mac. Les lanceurs d'applications courriels, calculette, browser ne fonctionnent pas. Plus gênant les très pratiques copier - coller n'ont aucun effet non plus. Le problème c'est qu'elles ne sont même pas reconnues, donc on ne peut pas les utiliser dans des triggers avec Quicksilver par exemple.
  • Il est difficile de s'adapter au fait qu'il y a ait « encore » une ligne en dessous de la ligne espace. Au début on cherche systématiquement la touche ctrl en bas à gauche alors que c'est la touche fn qui s'y trouve. La touche ctrl est juste au dessus.
  • Apprendre une nouvelle disposition demande beaucoup d'efforts, dont on ne peut pas voir l'intérêt à court terme, il est très tentant de se décourager.

Question(s)

Oublie t-on complètement sa disposition précédente quand on apprend une nouvelle ?
Pas du tout, en tout cas pas pour le moment. Je pense que comme pour tout, si on ne pratique pas on risque de perdre ses automatismes mais ce n'est pas l'affaire de quelques heures ni jours.

Conclusion

C'est un vrai challenge de changer de disposition de clavier et j'espère vraiment y arriver.
Je me donne un mois pour ne plus utiliser du tout mon autre clavier et 3 pour atteindre la même vitesse de frappe.
Concernant le clavier je le recommande chaudement, il est vraiment très agréable.