Utilisateur:Kaze/dskfr

De Disposition de clavier francophone et ergonomique bépo

Une adaptation du DSK au français, ça mange pas de pain.

Attention

Ceci n'est pas une tentative de fork du bépo.
Ce n'est qu'une adaptation du DSK standard au français, comme il en existe pour de nombreuses langues européennes. Le résultat sera forcément moins efficace pour le français que le Bépo : le layout de base étant optimisé pour l'anglais, le but n'est que d'obtenir une disposition ergonomique pour un usage mixte français/anglais, sans y passer trop de temps.

Point de départ : Dvorak-ES

  • la ponctuation et la barre des chiffres sont celles des Qwerty européens (= mieux que la version US) ;
  • inversion H/R par rapport au DSK :
    • c'est mieux adapté pour les langues latines (trigrammes CH+voyelles) ;
    • c'est mieux pour Vim, H et L étant côte-à-côte (et JK sont groupés) ;
  • il est utilisable tel quel pour le français grâce aux accents morts ;
  • il est inclus dans Xorg (setxkbmap es -variant dvorak).
╭─────╮╭─────┬─────┬─────┬─────┬─────╮╭─────┬─────┬─────┬─────┬─────╮╭─────┬─────╮
│ ª   ││ !   │ "   │ ·   │ $   │ %   ││ &   │ /   │ (   │ )   │ =   ││ ?   │ ¿   │
│ º   ││ 1   │ 2   │ 3   │ 4   │ 5   ││ 6   │ 7   │ 8   │ 9   │ 0   ││ '   │ ¡   │
╰─────╯├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤├─────┼─────┤
       │ :   │ ;   │ Ñ   │ P   │ Y   ││ F   │ G   │ C   │ H   │ L   ││ ^   │ *   │
       │ .   │ ,   │     │     │     ││     │     │     │     │     ││ `   │ +   │
       ├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤├─────┼─────╯
       │ A   │ O   │ E   │ U   │ I   ││ D   │ R   │ T   │ N   │ S   ││ ¨   │╭-----╮
       │     │     │     │     │     ││     │     │     │     │     ││ ´   │¦ Ç   ¦
╭-----╮├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤╰─────╯¦     ¦
¦ >   ¦│ _   │ Q   │ J   │ K   │ X   ││ B   │ M   │ W   │ V   │ Z   │       ╰-----╯
¦ <   ¦│ -   │     │     │     │     ││     │     │     │     │     │
╰-----╯╰─────┴─────┴─────┴─────┴─────╯╰─────┴─────┴─────┴─────┴─────╯
                 ╭───────┬────────────────────────┬───────╮
                 │  Alt  │ E.insécable            │ AltGr │
                 │       │ Espace                 │       │
                 ╰───────┴────────────────────────┴───────╯

Par contre :

  • osef du Ñ, du ·, de ¡¿, de ºª, etc. ;
  • la ponctuation ,;.: est mal placée (le point sur l'auriculaire, bobo) ;
  • il manque des caractères français (æ, œ, «», —, …) ;
  • la couche AltGr est naze.

L'idée est donc de l'adapter au français. Ça n'en fera pas une disposition aussi optimisée pour le français que le Bépo, mais ça sera toujours beaucoup mieux que l'Azerty — et accessoirement ça devrait être très agréable pour la prog.

Variante « freo » v0.1

Deux touches Alt symétriques, une touche AltGr morte (¤), les chiffres en direct, toutes les lettres en zone dactylo.

Ça devrait convenir au français et à l'espéranto, d'où le nom (fr+eo) ; pour supporter plus de langues, il faut remplacer les deux touches à droite du 0 par des touches mortes, ou utiliser des diacritiques morts en AltGr + main gauche.

╭─────╮╭─────┬─────┬─────┬─────┬─────╮╭─────┬─────┬─────┬─────┬─────╮╭─────┬─────╮
│ ~   ││ !   │ « ‘ │ » ’ │ $   │ %   ││ &   │ /   │ (   │ )   │ =   ││ {   │ }   │
│ # @ ││ 1 „ │ 2 “ │ 3 ” │ 4 € │ 5   ││ 6   │ 7   │ 8   │ 9   │ 0   ││ [   │ ]   │
╰─────╯├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤├─────┼─────┤
       │ "   │ ;   │ :   │ P   │ Y   ││ F   │ G   │ C   │ H   │ L   ││ ?   │ *   │
       │ ' æ │ , œ │ . … │   < │   > ││     │     │   ç │     │     ││ ^   │ +   │
       ├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤├─────┼─────╯
       │ A   │ O   │ E   │ U   │ I   ││ D   │ R   │ T   │ N   │ S   ││ ¨   │╭-----╮
       │   à │   é │   è │   ù │   ŭ ││     │     │     │     │     ││ ¤ ` │¦ |   ¦
╭-----╮├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤╰─────╯¦ \   ¦
¦ >   ¦│ _   │ Q   │ J   │ K   │ X   ││ B   │ M   │ W   │ V   │ Z   │       ╰-----╯
¦ <   ¦│ - — │   { │   } │   [ │   ] ││     │     │     │     │     │
╰-----╯╰─────┴─────┴─────┴─────┴─────╯╰─────┴─────┴─────┴─────┴─────╯
                 ╭───────┬────────────────────────┬───────╮
                 │  Alt  │ E.insécable            │  Alt  │
                 │       │ Espace             Esc │       │
                 ╰───────┴────────────────────────┴───────╯


Après une demi-journée de test, je trouve que l'inversion H/R est sympa pour le texte, mais que ça n'apporte finalement rien de particulier pour Vim : l'alternance annulaire/auriculaire est moins confortable que index/auriculaire. Le Escape en ¤+Espace c'est sympa. :-)

J'aime bien les parenthèses en [89] mais « /= » en shift je trouve ça moins bien, c'est l'éternel dilemme entre Qwerty-US et Qwerty-Europe. Il faudrait arriver à prendre le meilleur des deux variantes pour les 9 touches {67890[]+\}.

Variante avec {É} en direct

« É » est une lettre très fréquente en français, il est logique de vouloir l'avoir en direct, reste à savoir où. La logique du Dvorak-ES serait de mettre É en [E], mais on perdrait alors l'un des principaux atouts du DSK : le point et la virgule sous deux doigts longs. Comme je cherche à rester le plus proche possible du DSK, la seule touche utilisable sans tout casser est le [W], ce qui suppose de déplacer le tiret en [*].

╭─────╮╭─────┬─────┬─────┬─────┬─────╮╭─────┬─────┬─────┬─────┬─────╮╭─────┬─────╮
│ ~ ~ ││ ! ¡ │ « ‘ │ » ’ │ $ £ │ % ‰ ││ & ¦ │ / ÷ │ (   │ )   │ =   ││ {   │ }   │
│ # @ ││ 1 „ │ 2 “ │ 3 ” │ 4 € │ 5 ¥ ││ 6 | │ 7 \ │ 8   │ 9   │ 0   ││ [   │ ]   │
╰─────╯├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤├─────┼─────┤
       │ "   │ ;   │ :   │ P   │ Y   ││ F   │ G   │ C   │ H   │ L   ││ ? ¿ │ * × │
       │ ' å │ , ø │ . … │   < │   > ││     │   © │   ç │     │     ││ ^ ˇ │ + ± │
       ├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤├─────┼─────╯
       │ A   │ O   │ E   │ U   │ I   ││ D   │ R   │ T   │ N   │ S   ││ ¨ ˙ │╭-----╮
       │   à │   ò │   è │   ù │   ì ││   ð │   ® │   þ │   ñ │   ß ││ ¤ ` │¦ _ – ¦
╭-----╮├─────┼─────┼─────┼─────┼─────┤├─────┼─────┼─────┼─────┼─────┤╰─────╯¦ - — ¦
¦ >   ¦│ É   │ Q   │ J   │ K   │ X   ││ B   │ M   │ W   │ V   │ Z   │       ╰-----╯
¦ <   ¦│   æ │   œ │   ij │     │     ││   ß │   µ │   ŭ │     │   ə │
╰-----╯╰─────┴─────┴─────┴─────┴─────╯╰─────┴─────┴─────┴─────┴─────╯
                 ╭───────┬────────────────────────┬───────╮
                 │  Alt  │ E.insécable            │ AltGr │
                 │       │ Espace                 │       │
                 ╰───────┴────────────────────────┴───────╯

Le É en direct permet de n'avoir que des accents graves sur les voyelles, ce qui est un peu plus intuitif (mais pas forcément très utile en français). On retombe sur la touche morte à tout faire du dvorak-fr de Leboutte… Ceux qui souhaitent garder une couche AltGr distincte peuvent ainsi implémenter le comportement de cette touche morte comme des compositions de l'accent grave via le fichier ~/.XCompose.

La touche Alt de droite est mappée en AltGr pour ceux qui n'aiment pas les touches mortes, comme ça ils ont le choix. On pourrait aussi doubler cette touche AltGr morte sur CapsLock.

J'en profite ici pour rendre cette disposition un peu plus polyvalente pour les autres langues d'Europe occidentale, quelques caractères ont été ajoutés en AltGr (åøßñµþijə). Pour l'allemand, le ß est doublé en AltGr+B pour éviter un digramme sur l'auriculaire (noter que l'inversion H/R est néfaste pour les trigrammes SCH). On pourrait aussi utiliser un tilde mort à la place du tilde pour le portugais (cf. voyelles tildées), ou remplacer åø par ãõ dans la couche AltGr. Pour l'espagnol, il suffit de remplacer l'apostrophe par un accent aigu mort.

Après deux jours de test, j'avoue que je préfère largement avoir le É en direct, même si le tiret est moins accessible. J'ai repéré quelques digrammes pénibles : J', JE, 'A, FR, UX, VR, WH essentiellement.

La touche morte en chiffres

DSK-fr Bépo
é 29 206 m 45 521
à 7 449 z 2 093
è 4 160
ê 3 445
ç 1 306
ù 890
î 695
ï 84
ë 7
total : 47 242 total : 47 614
àèùç : 13 805

Je déteste utiliser les touches situées hors des zones dactylo pour les lettres. Dans ce layout, il est nécessaire d'utiliser une ou deux touches mortes, ce qui peut sembler contraignant pour l'auriculaire droit. On se rend compte que c'est plutôt meilleur que le bépo :

  • si « É » est fait avec une touche morte (= cas le plus défavorable), la somme de tous les accents français équivaut en fréquence aux M et Z en français, et la touche morte ajoute 2,66% de frappes ;
  • si « É » est sur une touche dédiée à gauche, le total des accents grave + circonflexe + tréma + cédille tombe à 18036 caractères, soit moins de la moitié de la fréquence du seul M en français, et la touche morte ajoute 0,85% de frappes.

Le tableau ci-contre est calculé à partir du Corpus de Thomas Tempé, qui compte 1 616 343 caractères.

Il faudrait passer ce DSKfr dans le comparateur de layouts pour l'évaluer vis-à-vis de l'Azerty et du Bépo. Je m'attends à ce qu'il soit plus près du Bépo que de l'Azerty pour le français, et devant le Bépo pour l'anglais et la prog. Je m'attends aussi à ce qu'il soit plus équilibré que le bépo pour la charge des doigts, même en français.

Inversion R/H… ou pas ?

Cette inversion parait une bonne idée de prime abord :

  • le R est beaucoup plus fréquent que le H, surtout en français ;
  • les digrammes CH se font sur la même ligne ;
  • les digrammes VR sont bien plus faciles ;
  • dans Vim, ça place H et L côte-à-côte.

Mais à l'usage, je ne suis plus sûr du bien-fondé de cette inversion :

  • CH se fait vers l'extérieur et non plus vers l'intérieur ;
  • en français, ça complique certains digrammes : FR, GR ;
  • en anglais (et en prog), TH, SH et surtout WH sont plus difficiles ;
  • en allemand, SCH est beaucoup moins naturel ;
  • sous Vim, l'alternance HL annulaire/auriculaire est finalement moins confortable que index/auriculaire.

En résumé, comme pour le U, l'intérêt du placement du H en DSK n'est pas relatif à sa fréquence mais au fait qu'il s'enchaine très bien : U se combine avec A/O/E, H se combine avec C/T/S/W — et dans les deux cas, c'est très agréable de terminer sur l'index en position de repos. Le seul avantage indéniable de cette inversion R/H est que ça place une touche très fréquente sur la home row.

Du coup, je pense que ça ne vaut probablement pas le coup, surtout pour une variante qui a pour but d'être multilingue — d'autant que ça gêne l'apprentissage du DSK, qui sera toujours la disposition ergonomique de référence.

Inversion J/K ?

Avantages :

  • les digrammes JE et J', très courants en français, sont grandement facilités ;
  • [V] est plus accessible, donc autant l'affecter au J qui est beaucoup plus fréquent en français ;
  • sous Vim, l'index reste sur le J et le majeur sous le K, comme en Qwerty (je suis mono-maniaque, mais ça ne concerne pas que Vim : de nombreuses applications en ligne de commande utilisent JK).

Inconvénient :

  • risque de s'emmêler les pinceaux entre DSK et DSK-fr.

Pour une utilisation restreinte au français/anglais/prog (on oublie l'espéranto et les langues scandinaves), je pense qu'on peut rester très proche du Dvorak-US, moyennant une touche AltGr morte (¤) et une inversion J/K :

 ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━━┓
 │ ~   │ ! ¡ │ « ‘ │ » ’ │ $ £ │ % ‰ │ ^   │ &   │ *   │ (   │ )   │ {   │ }   ┃          ┃
 │ @ # │ 1 „ │ 2 “ │ 3 ” │ 4 € │ 5 ¥ │ 6   │ 7 | │ 8   │ 9   │ 0   │ [   │ ]   ┃ ⌫        ┃
 ┢━━━━━┷━━┱──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┺━━┳━━━━━━━┫
 ┃        ┃ "   │ ;   │ : · │ P   │ Y   │ F ª │ G ¢ │ C   │ R ™ │ L   │ ? ¿ │ + ± ┃       ┃
 ┃ ↹      ┃ ' æ │ , œ │ . … │   < │   > │   ſ │   © │   ç │   ® │     │ / \ │ = ≠ ┃       ┃
 ┣━━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓  ⏎   ┃
 ┃         ┃ A   │ O   │ E   │ U   │ I   │ D   │ H   │ T   │ N   │ S   │ ¨   │ _ – ┃      ┃
 ┃ ⇬       ┃   à │   ò │   è │   ù │   ì │   ð │   † │   þ │   ñ │   § │ ¤   │ - — ┃      ┃
 ┣━━━━━━┳━━┹──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┲━━┷━━━━━┻━━━━━━┫
 ┃      ┃ >   │ É   │ Q   │ K   │ J   │ X   │ B   │ M º │ W   │ V   │ Z   ┃               ┃
 ┃ ⇧    ┃ <   │   â │   ô │   ê │   û │   î │   ß │   µ │   ŭ │     │     ┃ ⇧             ┃
 ┣━━━━━━┻┳━━━━┷━━┳━━┷━━━━┱┴─────┴─────┴─────┴─────┴─────┴─┲━━━┷━━━┳━┷━━━━━╋━━━━━━━┳━━━━━━━┫
 ┃       ┃       ┃       ┃ ⍽ Espace insécable             ┃       ┃       ┃       ┃       ┃
 ┃ Ctrl  ┃ super ┃ Alt   ┃ ␣ Espace                     ` ┃ AltGr ┃ super ┃ menu  ┃ Ctrl  ┃
 ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┻━━━━━━━┛

Les digrammes qui restent difficiles en français sont essentiellement UX, 'A et VR. Pour gagner en polyvalence (langues latines et espéranto), les tilde / apostrophe / circonflexe pourraient être transformés en touches mortes, mais ce n'est plus l'objectif.