Une variante ergonomique de QWERTY pour les développeurs francophones et les typographes exigeants.
Plus efficace qu’AZERTY pour le français : toutes les lettres du français se font dans la zone alphabétique de 3×10 touches, via une unique touche morte sur la home row qui permet une typographie soignée : majuscules accentuées, lettres entrelacées, guillemets et apostrophe typographiques…
Plus ergonomique que QWERTY pour coder : les symboles de programmation sont disponibles à leur emplacement habituel en QWERTY, mais ils sont également accessibles dans cette zone de 3×10 touches via la couche AltGr.
Lafayette permet ainsi de se passer totalement des touches excentrées. C’est un gain de confort immédiat sur un clavier standard et cela permet l’utilisation des claviers (très) compacts, pour rechercher la meilleure ergonomie possible.
Plutôt que d’avoir une touche morte par accent comme habituellement, Lafayette dispose d’une seule touche morte pour tous les accents utilisés en français :
Toutes les lettres utilisées en français peuvent ainsi être saisies dans le pavé alpha de 3×10 touches — ce qu’aucune disposition standard ne permet (AZERTY, QWERTZ suisse, QWERTY québécois, Bépo…).
Lafayette permet une typographie beaucoup plus précise qu’AZERTY :
Les ponctuations doubles ;:!?
étant en Shift, il
est facile de les faire précéder d’une espace insécable : on maintient
Shift, on presse Espace puis la ponctuation, on
relâche Shift.
La couche AltGr contient tous les symboles utilisés en programmation :
… soit 28 symboles. On ajoute ;:
dans les deux places
restantes afin de faciliter les enchaînements.
Cette couche AltGr a été conçue avec l’équipe Ergo‑L selon les principes suivants :
<>{()}
sont sur les touches les
plus confortables (WEASDF) ; $%^&*
sous 45678. La rangée des chiffres est identique à celle du QWERTY-US ; mais en Lafayette elle présente deux particularités :
!@#$%^&*()
sont déjà présents (et plus
accessibles) dans la couche AltGr ; «»
et
„“”
. Lafayette permet une ergonomie plus poussée que les dispositions optimisées telles que Dvorak ou Bépo.
De nos jours, c’est de loin le plus gros gain ergonomique qu’on puisse faire avec un clavier : n’utiliser aucune touche qui soit à plus d’une touche d’écart de la position de repos.
Conformément à ce principe, la plupart des claviers ergonomiques modernes ne disposent que de 6 colonnes de touches par main. En n’utilisant que le pavé principal de 3×10 touches pour toutes les lettres et tous les symboles de programmation, Lafayette permet de conserver Shift, Tab, Enter, Backspace sur les colonnes extérieures sans compromettre l’approche 1DFH.
Dvorak et Bépo sont optimisées, en disposant les touches fréquentes au plus proche des positions de repos ; alors que Lafayette se veut ergonomique, en supprimant toutes les extensions de doigt susceptibles de causer des troubles musculo-squelettiques.
Cela peut sembler contre-intuitif mais une touche morte est une façon plus
saine d’accéder à un caractère spécial que AltGr : ça n’ajoute
aucune pression de touche et c’est beaucoup plus facile à synchroniser que
AltGr, notamment à vitesse élevée où l’on presse des touches
avant d’avoir relâché les touches précédentes.
Par exemple : si l’on suppose que AltGrW et
★W produisent toutes les deux É
, alors
★WE fera toujours ée
mais
AltGrWE risque de produire éè
(deux accents) à vitesse élevée.
AltGr permet d’accéder aux symboles de programmation en restant
dans une approche 1DFH, mais reste facultative.
Sur un clavier QWERTY il est naturel de saisir les symboles de programmation
là où ils sont imprimés, i.e. sur des positions excentrées. Mais au fur et à
mesure on peut prendre l’habitude de privilégier leurs alternatives en
AltGr, e.g.
{()}
sur AltGrASDF,
et surtout profiter des enchaînements courants comme
->
sur AltGrKE,
=>
sur AltGrGE,
('')
sur AltGrSOOD,
etc.
À noter : AltGr est plus facile d’accès sur les ordinateurs portables (barre d’espace en 5u) que sur les claviers bureautique externes (barre d’espace en 6.25u voire 7u), sauf à s’équiper d’un modèle compact. Sur macOS il est recommandé d’utiliser Karabiner pour inverser les touches ⌘ Command et ⌥ Option à droite.
Puisque toutes les lettres sont dans le pavé principal de 3×10 touches on peut envisager d’utiliser Shift avec un pouce, pour un gain de confort important ; et on peut même envisager de ne plus utiliser du tout de colonnes extérieures, supprimant ainsi radicalement toutes les extensions d’auriculaires.
Arsenik est un exemple d’agencement de touches permettant aux utilisateurs avancés d’utiliser 100 % de Lafayette sur uniquement 33 touches :
D’autres agencements sont évidemment possibles. Miryoku est de loin le plus connu mais il nécessite 6 touches de pouces, donc un clavier ergonomique ; Arsenik, avec 3 touches de pouces, peut s’utiliser sur n’importe quel clavier — y compris un clavier d’ordinateur portable.
Pour beaucoup d’utilisateurs, les principaux défauts d’AZERTY sont le point et les chiffres en Shift, et l’impossibilité de saisir des majuscules accentuées. Il existe des dispositions standard qui permettent de taper en français sans ces inconvénients, notamment :
´`^¨
) sur 3 touches
mortes excentrées ; Ù
requiert une touche morte très excentrée.
Particularité : CapsLock est requis pour les majuscules accentuées. Bépo est une optimisation de type Dvorak pour le français avec :
Ces dispositions peuvent s’avérer meilleures qu’AZERTY mais ne permettent pas une approche 1DFH. À ce titre l’intérêt ergonomique de Bépo est très discutable, d’autant que l’optimisation est faite au détriment de l’anglais et des raccourcis clavier.
Le projet Ergo‑L, pour « ERGOnomic Lafayette », reprend les principes de Lafayette tout en appliquant une optimisation moderne de type Colemak / Workman pour un compromis français / anglais.
Grâce à cette approche, Ergo‑L est à la fois meilleur que Bépo pour le français et meilleur que Dvorak pour l’anglais — le tout, en conservant les raccourcis claviers usuels du QWERTY, les chiffres en direct, et l’approche 1DFH de Lafayette qui assure la compatibilité avec les claviers compacts.
Les projets Ergo‑L et Lafayette sont développés en collaboration — la couche AltGr, notamment, est commune aux deux projets. Passer de Lafayette à Ergo‑L est relativement simple.
Exécuter l’installeur et redémarrer Windows, même si le système ne le demande pas. La disposition de clavier apparaît dans la barre de langues (indicateur de la barre des tâches).
Pour les utilisateurs sans droits d’administration, un pilote portable est disponible dans l’archive nomade ci-après.
Enregistrer dans ~/Library/Keyboard Layouts
(pour le seul
utilisateur courant) ou /Library/Keyboard Layouts
(pour tous
les utilisateurs), et relancer la session.
La disposition de clavier est disponible dans vos préférences « Langue et Texte », onglet « Méthodes de saisie ». Il est possible d’utiliser Karabiner pour inverser les touches ⌘ Command et ⌥ Option à droite, afin d’accéder plus facilement à la couche de symboles.
Méthode simple : copier le pilote dans xkb/symbols/custom
.
wget https://qwerty-lafayette.org/releases/lafayette_linux_v0.9.xkb_custom sudo mv lafayette_linux_v0.9.xkb_custom ${XKB_CONFIG_ROOT:-/usr/share/X11/xkb}/symbols/custom
La disposition de clavier est disponible dans le gestionnaire de préférences du bureau sous un nom générique (« custom layout », « disposition personnalisée », etc.). Sous XOrg on peut aussi l’activer directement en ligne de commande :
setxkbmap custom
Méthode avancée : passer le fichier source à XKalamine.
wget https://qwerty-lafayette.org/layouts/lafayette.toml pip install --user --upgrade kalamine # ou `pipx install kalamine` xkalamine install lafayette.toml
La disposition de clavier est disponible dans le gestionnaire de préférences du bureau sous le nom « Lafayette ». Sous XOrg on peut aussi l’activer directement en ligne de commande :
setxkbmap fr -variant lafayette
Remarque : avec certains bureaux (Gnome notamment), la touche morte ★ ne fonctionne que si Lafayette est définie comme disposition de par défaut, i.e. en haut de la liste dans les préférences clavier.
Script d’installation, nécessitant Python3 et lxml :
sudo apt install python3-lxml curl -Ls https://qwerty-lafayette.org/releases/lafayette_linux_v0.8.1.py | sudo python3
L’installeur contient les deux variantes, Lafayette et Lafayette101. Ces dispositions sont activables par le gestionnaire de préférences de votre bureau ou directement en ligne de commande (sous Xorg) :
setxkbmap fr -variant lafayette setxkbmap fr -variant lafayette101
Cette archive contient tous les fichiers pour une utilisation sans droits d’administration sur les principaux systèmes d’exploitation :
ahk
et un pilote portable ; keylayout
; xkb
; … ainsi que le fichier source toml
qui a servi à générer ces
pilotes via kalamine.
{}[]<>
ne
peuvent plus se faire avec la touche morte ★, et nécessitent
désormais AltGr. +=
, -=
, =>
, ('')
,
~/
, etc. ¨
) passe sur la touche ],
pour éviter les touches mortes en majuscule (source de confusion). €
) passe sur la touche 5
pour mieux coller aux claviers QWERTY récents. ←↓↑→
passent des touches
IJKL aux touches
HJKL — Vim powwa! « »
). WTFPL – Do What the Fuck You Want to Public License.