« Utilisateur:Kaze/Bépo-intl » : différence entre les versions

De Disposition de clavier bépo
 
(45 versions intermédiaires par 5 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
{{note|type=attention|Page en cours de construction}}
Le Bépo ne me convenant pas pour la prog, l'anglais ou l'allemand, je teste quelques modifs.
Le Bépo ne me convenant pas pour la prog, l'anglais ou l'allemand, je teste quelques modifs.
Les schémas de cette page sont représentés en colonnes pour traduire l'affectation des touches selon [[Carte_d%27accessibilit%C3%A9_des_touches#Accessibilit.C3.A9_des_touches_du_point_de_vue_dactylographique|les méthodes de dactylographie courantes]] — à chaque colonne correspond un doigt et un seul.
{{note|type=attention|Tous les schémas de cette page ne sont que des pistes de réflexion. Pour en tirer des propositions il faudrait bosser sur la question à grands coups de stats et de tests. }}


== Problème constaté ==
== Problème constaté ==
* le W est très mal placé sur la disposition Bépo : ce n'est pas gênant pour le français, mais c'est rédhibitoire pour la prog ou l'allemand ;
* le W est très mal placé sur la disposition Bépo : ce n'est pas gênant pour le français, mais c'est rédhibitoire pour la prog, l'anglais ou l'allemand ;
* le Z, très courant en allemand, est lui aussi mal placé sur la disposition courante ;
* le Z, très courant en allemand, est lui aussi mal placé sur la disposition courante ;
* les digrammes </ et />, très courants de nos jours (HTML/XML), sont particulièrement pénibles — ce qui est d'autant plus regrettable qu'ils sont très faciles sur un clavier Qwerty standard.
* les digrammes </ et />, très courants de nos jours (HTML/XML), sont particulièrement pénibles — ce qui est d'autant plus regrettable qu'ils sont très faciles sur un clavier Qwerty standard.
Ligne 19 : Ligne 12 :
== Vers un « Bépo-international » : ''Bépow!'' ==
== Vers un « Bépo-international » : ''Bépow!'' ==
=== Principe ===
=== Principe ===
Quelques suggestions pour rendre le Bépo plus polyvalent sans casser toute la disposition :
Pour rendre le Bépo plus polyvalent sans casser toute la disposition :
* on remplace l'accent circonflexe mort par un accent grave mort, ce qui permet de caser W et Z sous la main gauche ;
* on remplace l'accent circonflexe mort par un accent grave mort, ce qui permet de caser W et Z sous la main gauche ;
* l'accent circonflexe mort prend la place de « Ù » en AltGr+{U} ;
* l'accent circonflexe mort prend la place de « Ù » en AltGr+{U}, le hatchek passe en Shift+AltGr+{U} ;
* la place libérée par Z est attribuée aux tirets ;
* plutôt que de laisser W et Z en double, les accents morts ^ˇ¨˙ sont dupliqués en [^] et [$].
* les places libérées par les tirets (rangée des chiffres) sont attribuées aux chevrons ;
<center>
* puisque le tiret est plus accessible, on n'a plus aucune raison de ne pas avoir les chiffres en accès direct.
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│ #  │ 1 „│ 2 ”│ 3 ”│ 4  │ 5  ║ 6  │ 7  │ 8  │ 9  │ 0  │ ^  │ `  ║        ║
│ $  │ " —│ « <│ » >│ ( [│ ) ]║ @  │ +  │ -  │ /  │ *  │ =  │ %  ║ <--    ║
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║  |<-  ║ B  │ É  │ P  │ O  │ {{B|W}}  ║ !  │ V  │ D  │ L  │ J  │ {{R|ˇ}}  │ {{R|˙}}  ║  | ║
║  ->|  ║  |│    │  &│  œ│  {{R|˘}}║ {{R|`}}  │    │    │    │    │ {{R|^}}  │ {{R|¨}}  ║ <-' ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║ A  │ U  │ I  │ E  │ ; ║ C  │ T  │ S  │ R  │ N  │ M  │ Ç  ║    ║
║  CAPS  ║  æ│  {{R|^}}│  {{R|¨}}│  €│ , ║    │    │    │    │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣
║  ^  ║  Ê │ {{B|Z}}  │ Y  │ X  │ :  │ K  ║ ?  │ Q  │ G  │ H  │ F  ║    ^    ║
║  |  ║  /│  \│  {│  }│ . …│  ~║ '  │    │    │    │    ║    |    ║
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣
║      ║      ║    ║ Espace insécable          ║    ║      ║    ║    ║
║ Ctrl  ║ WinG ║ Alt ║ Espace            _      ║AltGr║ WinD ║WinM ║Ctrl ║
╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝
</center>
C'est le minimum pour utiliser le fr-dvorak-bépo en anglais ou en allemand.


╭─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────╮
=== Fichier XKB ===
│ #  │ │ "   │ «  │ »  │ (   │ )   │ │ +  │ <   │ /   │ *  │ │ @  │ µ  │
On peut se créer très facilement une telle variante Bépo-intl en ajoutant une section dans le fichier xkb :
  │ $  │ │ 1  │ 2   │ 3   │ 4  │ 5  │ │ 6  │ 7  │ 8  │ 9  │ 0  │ │ =  │ %  │
<pre class="xkb"><nowiki>
╰─────╯ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┤
// fr-dvorak-bepo-intl
        │ B  │ É  │ P  │ O  │ W  │ │ !  │ V  │ D  │ L  │ J  │ │ _  │    
partial alphanumeric_keys
        │     │    │    │    │    │ │ {{R|`}}       │    │    │    │ │ - — │    │
xkb_symbols "bepo-intl" {
         ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────╯
    include "fr(bepo)"
        │ A  │ U   │ I  │ E  │ ;   │ │ C  │ T  │ S  │ R  │ N  │ │ M  │ ╭-----╮
 
        │     │  {{R|^}} │  {{R|¨}} │     │ │             │    │    │ │    │ ¦ Ç  ¦
    // guillemets
  -----╮ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ╰─────╯ ¦    ¦
    key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl      , 1 , emdash  , doublelowquotemark   ] }; // " 1 — „
  ¦ Ê  ¦ │ X  │ Y  │ Z   │ :   │ K  │ │ ?  │ Q  │ G  │ H  │ F  │        ╰-----╯
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotleft , 2 , less    , leftdoublequotemark  ] }; // « 2 < “
¦    ¦ │    │    │    │ .  │    │ │ '  │    │    │    │    │
    key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotright , 3 , greater , rightdoublequotemark ] }; // » 3 > ”
  ╰-----╯ ╰─────┴─────┴─────┴─────┴─────╯ ╰─────┴─────┴─────┴─────┴─────╯
 
                  ╭───────┬─────────────────────────┬───────╮
     // accents morts : circonflexe et grave
                  │ Alt  │                        │ AltGr │
     key <AD06> { type[group1] = "FOUR_LEVEL", [ dead_grave , exclam  , VoidSymbol          , exclamdown          ] }; // ` !   ¡
                  │      │                        │      │
     key <AC02> { type[group1] = "FOUR_LEVEL", [ u         , U       , dead_circumflex    , dead_caron          ] }; // u U ^ 
                  ╰───────┴─────────────────────────┴───────╯
 
     // accents morts en double sous {W} et {Z}
    key <AD11> { type[group1] = "FOUR_LEVEL", [ dead_circumflex , dead_caron    , schwa        , SCHWA            ] }; // ^ ˇ ə Ə
     key <AD12> { type[group1] = "FOUR_LEVEL", [ dead_diaeresis  , dead_abovedot , dead_breve   , VoidSymbol        ] }; // ¨ ¨ ¨
 
     // W et Z sous la main gauche
     key <AD05> { type[group1] = "FOUR_LEVEL", [ w          , W        , dead_breve          , VoidSymbol          ] }; // w W ˘   
     key <AB01> { type[group1] = "FOUR_LEVEL", [ z          , Z        , backslash          , VoidSymbol ] }; // z Z \
};
</nowiki></pre>
La disposition est alors activée comme suit :
  setxkbmap fr -variant bepo-intl
 
=== Fichier xmodmap ===
Pour ceux qui préfèrent ce format, enregistrer le fichier suivant sous le nom bepow.map (par exemple) :
<pre class="xkb"><nowiki>
! accents morts : circonflexe et grave
keycode 29 = dead_grave exclam VoidSymbol exclamdown VoidSymbol exclamdown
keycode 39 = u U dead_circumflex dead_caron dead_circumflex dead_caron
 
! accents morts en double sous {W} et {Z}
keycode 34 = dead_circumflex dead_caron
keycode 35 = dead_diaeresis dead_abovedot
 
! W et Z sous la main gauche
keycode 28 = w W dead_breve VoidSymbol dead_breve VoidSymbol
keycode 54 = z Z braceright VoidSymbol braceright VoidSymbol
</nowiki></pre>
La disposition est alors activée comme suit :
  setxkbmap fr -variant bepo
  xmodmap bepow.map


=== Avantages ===
=== Avantages ===
* bien meilleure compatibilité avec l'anglais, l'allemand et la prog ;
* bien meilleure compatibilité avec l'anglais, l'allemand et la prog ;
* la position du tiret permettrait de passer les chiffres en accès direct ;
* meilleur équilibre de la charge des doigts en français (réduction de la charge de l'index gauche) ;
* les digrammes </ et />, très utilisés de nos jours (HTML, XML), sont grandement facilités ;
* une touche complète est libre en [$] ;
* deux bonnes places sont disponibles en AltGr + [2]/[3] ;
* le digramme « où » est facilité ;
* le digramme « où » est facilité ;
* deux places en AltGr+{W} et AltGr+{!}, et on pourrait aussi utiliser [^$] pour d'autres caractères ;
* meilleure cohérence des diacritiques.
* meilleure cohérence des diacritiques.


=== Inconvénient ===
=== Inconvénient ===
*  légère perte d'efficacité pour le français puisque ÈÀÇ requièrent désormais une touche morte.
*  légère perte d'efficacité pour le français puisque « È » et « À » requièrent désormais une touche morte.


Je pense que c'est très largement compensé par le gain de polyvalence… mais tout dépend évidemment de l'usage de chacun.
Je pense que c'est très largement compensé par le gain de polyvalence… mais tout dépend évidemment de l'usage de chacun.


== Variante sans {Ç} ni {Ê} ==
== Variante « développeur » ==
=== Principe ===
Sur la base de la version initiale :
* on passe les crochets en AltGr+{U/I} ;
* les crochets < > remplacent les guillemets « » :
** ça facilite beaucoup les digrammes </ et /> ;
** c'est plus cohérent : tous les guillemets typographiques passent en AltGr ;
** ça ne gêne pas au quotidien, puisque les traitements de texte savent remplacer le guillemet droit (") par la version typographique correspondant à la langue du document — en ajoutant l'espace insécable si besoin est ;
* il reste deux places libres supplémentaires en AltGr+{4-5}.
<center>
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│ #  │ 1 „│ 2 ”│ 3 ”│ 4  │ 5  ║ 6  │ 7  │ 8  │ 9  │ 0  │ ^  │ `  ║        ║
│ $  │ " —│ {{B|<}} {{B|«}}│ {{B|>}} {{B|»}}│ (  │ )  ║ @  │ +  │ -  │ /  │ *  │ =  │ %  ║ <--    ║
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║  |<-  ║ B  │ É  │ P  │ O  │ {{B|W}}  ║ !  │ V  │ D  │ L  │ J  │ {{R|ˇ}}  │ {{R|˙}}  ║  | ║
║  ->|  ║  |│  {{R|´}}│  &│  œ│    ║ {{R|`}}  │    │    │    │    │ {{R|^}}  │ {{R|¨}}  ║ <-' ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║ A  │ U  │ I  │ E  │ ;  ║ C  │ T  │ S  │ R  │ N  │ M  │ Ç  ║    ║
║  CAPS  ║  æ│  {{B|[}}│  {{B|]}}│  €│ ,  ║    │    │    │    │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣
║  ^  ║  Ê │ {{B|Z}}  │ Y  │ X  │ :  │ K  ║ ?  │ Q  │ G  │ H  │ F  ║    ^    ║
║  |  ║  /│  \│  {│  }│ . …│  ~║ '  │    │    │    │    ║    |    ║
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣
║      ║      ║    ║ Espace insécable          ║    ║      ║    ║    ║
║ Ctrl  ║ WinG ║ Alt ║ Espace            _      ║AltGr║ WinD ║WinM ║Ctrl ║
╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝
</center>
 
=== Fichier XKB ===
<pre class="xkb"><nowiki>
// fr-dvorak-bepo-intl-dev
partial alphanumeric_keys
xkb_symbols "bepo-intl-dev" {
 
    include "fr(bepo)"
 
    name[Group1]= "French (Bepow, ergonomic, Dvorak way)";
 
    // chevrons et guillemets
    key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl  , 1 , emdash        , doublelowquotemark  ] }; // " 1 — „
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less      , 2 , guillemotleft , leftdoublequotemark  ] }; // < 2 « “
    key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ greater  , 3 , guillemotright , rightdoublequotemark ] }; // > 3 » ”
 
    // accent grave mort
    key <AD06> { type[group1] = "FOUR_LEVEL", [ dead_grave , exclam  , VoidSymbol          , exclamdown          ] }; // ` !  ¡
 
    // crochets
    key <AC02> { type[group1] = "FOUR_LEVEL", [ u          , U        , bracketleft          , VoidSymbol          ] }; // u U [
    key <AC03> { type[group1] = "FOUR_LEVEL", [ i          , I        , bracketright        , VoidSymbol          ] }; // u U [
 
    // accents morts en double sous {W} et {Z}
    key <AD11> { type[group1] = "FOUR_LEVEL", [ dead_circumflex , dead_caron    , schwa      , SCHWA                ] }; // ^ ˇ ə Ə
    key <AD12> { type[group1] = "FOUR_LEVEL", [ dead_diaeresis  , dead_abovedot , dead_breve , VoidSymbol          ] }; // ¨ ˇ ˘
 
    // W et Z sous la main gauche
    key <AD05> { type[group1] = "FOUR_LEVEL", [ w          , W        , dead_breve          , VoidSymbol          ] }; // w W ˘
    key <AB01> { type[group1] = "FOUR_LEVEL", [ z          , Z        , backslash            , VoidSymbol          ] }; // z Z \
};
</nowiki></pre>
La disposition est alors activée comme suit :
setxkbmap fr -variant bepo-intl-dev
 
=== Avantages ===
* les crochets [] gagnent beaucoup en accessibilité (programmation, wiki…) ;
* les accents circonflexe et tréma sont plus faciles à utiliser, non seulement pour le français, mais aussi pour l'allemand (umlauts).
 
=== Inconvénients ===
Je cherche encore… Ce n'est pas parfait mais c'est une amélioration très nette pour la prog, l'anglais, l'allemand, ou l'édition de wikis, sans gros impact sur le français — voire même, je le trouve plus confortable pour le français, car j'ai horreur d'utiliser AltGr pour les caractères accentués (ù) ou les diacritiques morts : mon pouce n'est pas assez rapide pour lâcher AltGr à temps quand je tape vite.
 
Bref, ça rend le bépo compatible avec mon utilisation.
 
== Variante « traducteur », sans {Ç} ni {Ê} ==
=== Principe ===
=== Principe ===
* Ç passe en AltGr+{,} pour libérer une touche à droite et contribuer à alléger la charge de l'auriculaire ;
* Ç passe en AltGr+{,} pour libérer une touche à droite et contribuer à alléger la charge de l'auriculaire ;
Ligne 64 : Ligne 173 :
** ça ne symétrise pas les modifieurs, mais ça reste bien plus agréable pour accéder à la couche AltGr de la moitié droite du clavier ;
** ça ne symétrise pas les modifieurs, mais ça reste bien plus agréable pour accéder à la couche AltGr de la moitié droite du clavier ;
** c'est applicable proprement sous toutes les plate-formes, contrairement au fait de redéfinir une touche Win ou Alt en AltGr : sous Windows™ et MacOS c'est une touche morte comme une autre, sous Linux cela correspond à ISO_Level3_Latch ;
** c'est applicable proprement sous toutes les plate-formes, contrairement au fait de redéfinir une touche Win ou Alt en AltGr : sous Windows™ et MacOS c'est une touche morte comme une autre, sous Linux cela correspond à ISO_Level3_Latch ;
* tant qu'on y est, on échange {K} et {-}, c'est plus joli ;-)
** Shift+{} pourrait être utilisé pour Compose (à vérifier) ;
  ╭─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────╮
* les guillemets anglais de second niveau passent en Shift+AltGr+[4-5] ;
  │ #   │ │ «  »  │ │ >  │ /  │ *  │ │ @  │ µ 
* ¡¿ passent en AltGr+{!?}, c'est plus simple qu'en Shift+AltGr.
  │ $   │ │ │ │ 6  │ 7  │ 8  │ 9  │ 0  │ │ =   │ %   │
<center>
  ╰─────╯ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┤
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
        │ B   │ É   │ P   │ O   │ W   │ │ !   │ V   │ D   │ L   │ J   │ │ K   │    │
  │ # 1 {{B|„}}2 {{B|”}}3 {{B|”}}4 {{B|‘}}5 {{B|’}}║ 6  `  ║        ║
            │    │    │    │    │ │ {{R|`}}                   │ │     │    │
  │ $ " —│ « <» >( [) ]║ @  │ = │ % ║ <--    ║
        ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────╯
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
        │ A   │ U   │ I   │ E   │ ;   │ │ C   │ T   │ S   │ R   │ N   │ │ M   ╭-----╮
║  |<-  ║ B │ É │ P │ O {{B|W}}  ║ ! │ V │ D │ L │ J     ║   | ║
        │    │   {{R|^}} │  {{R|¨}} │     │ , {{B|ç}} │ │         │    │    │    │ │     ¦    ¦
║  ->|  ║  |    &  œ│    ║ {{R|`}} {{B|¡}}            ║ <-' ║
  ╭-----╮ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ╰─────╯ ¦    ¦
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
  ¦ {{R|}}  ¦ │ X  │ Y   │ :   │ _  │ │ ?   │ Q   │ G   │ H   │ F  │        ╰-----╯
║        ║ A │ U │ I │ E │ ; C │ T │ S │ R │ N │ M   ║    ║
  ¦    ¦             │ .  │ - — │ │ │               
║  CAPS  ║  æ│   {{R|^}}│  {{R|¨}}│   €│ , {{B|ç}}║                ║    ║
  ╰-----╯ ╰─────┴─────┴─────┴─────┴─────╯ ╰─────┴─────┴─────┴─────┴─────╯
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣
                  ╭───────┬─────────────────────────┬───────╮
  ║  ^ ║    │ {{B|Z}}  │ Y │ : K  ║ ? │ Q │ G │ H │ F ║    ^    ║
                  │ Alt  │                        │ AltGr │
  |  ║ {{R|◻}}   \  {  }│ . …│   ~║ ' {{B|¿}}        ║    |    
                  │      │                        │      │
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣
                  ╰───────┴─────────────────────────┴───────╯
║      ║      ║    ║ Espace insécable          ║     ║      ║        
  ║ Ctrl ║ WinG ║ Alt ║ Espace            _      ║AltGr║ WinD ║WinM ║Ctrl ║
  ╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝
</center>
 
=== Avantages ===
=== Avantages ===
* encore plus polyvalent pour les langues étrangères :
* encore plus polyvalent pour les langues étrangères :
** les deux touches libres à droite peuvent contenir 4 diacritiques morts, 8 avec AltGr ;
** les trois touches libres à droite peuvent contenir 6 symboles ou diacritiques morts, 12 avec AltGr ;
** les caractères en AltGr + [main droite] sont accessibles via la touche AltGr morte ;
** les caractères en AltGr + [main droite] sont accessibles via la touche AltGr morte ;
* réduction (sensible ?) de la charge des auriculaires, « Ê » et « Ç » n'étant plus sur ces doigts-là.
* sur un clavier pc104, « Ç » est plus facile d'accès ;
* réduction (sensible ?) de la charge des auriculaires en français, « Ê » et « Ç » n'étant plus sur ces doigts-là.


=== Inconvénients ===
=== Inconvénients ===
Ligne 96 : Ligne 210 :
Par souci de cohérence, « Ç » pourrait être en AltGr+{C} plutôt qu'en AltGr+{,}, puisqu'on dispose désormais d'une touche AltGr morte (du moins, sur les claviers pc104) ; le principal défaut serait que les digrammes « aç » comporteraient une répétition de l'auriculaire gauche.
Par souci de cohérence, « Ç » pourrait être en AltGr+{C} plutôt qu'en AltGr+{,}, puisqu'on dispose désormais d'une touche AltGr morte (du moins, sur les claviers pc104) ; le principal défaut serait que les digrammes « aç » comporteraient une répétition de l'auriculaire gauche.


=== Autre possibilité ===
=== Version Némolivier (chiffres en direct, « - » plus accessible) ===
Sur la même base de travail, la version de [[Utilisateur:Nemolivier|NémOlivier]], avec le xkb [[Utilisateur:Nemolivier#B.C3.A9po_.C2.AB.C2.A0intl.C2.A0.C2.BB|ici.]]
Sur la même base de travail, la version de [[Utilisateur:Nemolivier|NémOlivier]], avec le xkb [[Utilisateur:Nemolivier#B.C3.A9po_.C2.AB.C2.A0intl.C2.A0.C2.BB|ici.]]
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗
 
  │ # ¶│ 0  │ 1 ≤│ 2 ≥│ 3 “│ 4 ”│ 5  6 °│ 7 ′│ 8 ″│ 9  @  │ µ  ║        ║
<pre>
│ $ §│ " @│ < «│ > »│ ( [│ ) ]│ [ │ ] │ / ÷│ * ×│ = ¬│ + ±│ % ‰║ <--    ║
  ╭─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────╮
  ╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣
  │ # │ │ " │ < “ │ > ”│ (   │ )   │ │ [   │ ] ¼ │ / ½ │ * ¾ │ = ¬ │ │ °  │ `  │
║  |<-  ║ B ¦│ É ˝│ P │ O Œ│ W │ ! ¡│ V │ D Ð│ L │ J IJ│ K Ə│mult║   |  ║
│ $ – │ │ 1 @ │ 2 « │ 3  »│ 4  │ 5  │ │ 6 ^ │ 7  │ 8 ÷ │ 9 × │ 0 ≠ │ │ + ± │ % ‰ │
║  ->|  ║ b |│ é ´│ p &│ o œ│ w ˘│ ` ˇ│ v  d ð│ l /│ j ij│ k ə│    ║ <-'
  ╰─────╯ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┤
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
        │ B   │ É   │ P § │ O Œ │ W   │ │ ! ¡ │ V   │ D   │ L   │ J   │ │ │comp.│
║        ║ A Æ│ U ˇ│ I ˙│ E ¤│ ; Ç│ C │ T Þ│ S │ R ™│ N Ñ│ M º│ Ç  ║    
        │  | │   ´ │  & │     │  ˘ │ │ ` ˇ │    │      / │     │ │    │'   │
║  CAPS  ║ a æ│ u ^│ i ¨│ e €│ , ç│ c ©│ t þ│ s ß│ r ®│ n ñ│ m ¯│ ç ¸║    ║
        ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────╯
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩═════╣
        │ A Æ │ U ˙ │ I ˇ │ E ¤ │ ; Ç │ │ C   │ T   │ S   │ R ™ │ N º │ │ M   │ ╭-----╮
    ^  ║ Ê  │ X Y ‘│ Z ’│ : ·│ ~│ ? ¿│ Q Ø│ G │ H ‡│ F ª║    ^      ║
        │     │  ¨ │  ^ │   € │ ,   │ │  © │  þ │  ß │  ® │  ~ │ │    │ ¦ ç ¦
    |  ║ ê /│ x \│ y {│ z }│ . …│ - ~│ ’ '│ q ø│ g °│ h †│ f ˛║     |      ║
  ╭-----╮ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ╰─────╯ ¦Esc    ¦
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦══════╣
  ¦ Ê   ¦ │ Z  │ Y ‘ │ X │ :   │   │ │ ? ¿ │ Q   │ G   │ H   │ F   │        ╰-----╯
║      ║      ║    ║  nbsp          fine nbps ║    ║      ║    ║      ║
  ¦    ¦ │   \ │   { │   } │ . … │ - ~ │ ’ ' │   ° │  µ │    │    
  ║ Ctrl ║ WinG ║ Alt ║              _           ║AltGr║ WinD ║WinM ║ Ctrl ║
  ╰-----╯ ╰─────┴─────┴─────┴─────┴─────╯ ╰─────┴─────┴─────┴─────┴─────╯
  ╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩══════╝
                  ╭───────┬─────────────────────────┬───────╮
                  │ Alt │                        │ AltGr │
                  │      │                    _   │      │
                  ╰───────┴─────────────────────────┴───────╯
  </pre>


== Des chiffres ==
== Des chiffres ==

Dernière version du 1 juin 2016 à 11:28

Le Bépo ne me convenant pas pour la prog, l'anglais ou l'allemand, je teste quelques modifs.

Problème constaté

  • le W est très mal placé sur la disposition Bépo : ce n'est pas gênant pour le français, mais c'est rédhibitoire pour la prog, l'anglais ou l'allemand ;
  • le Z, très courant en allemand, est lui aussi mal placé sur la disposition courante ;
  • les digrammes </ et />, très courants de nos jours (HTML/XML), sont particulièrement pénibles — ce qui est d'autant plus regrettable qu'ils sont très faciles sur un clavier Qwerty standard.

En l'état, je trouve le Bépo moins adapté à la prog que l'antique Qwerty ou même l'Azerty (moyennant une petite adaptation de la couche AltGr pour avoir les accolades et les crochets sous la main gauche).

Par ailleurs, je doute fortement qu'une disposition ergonomique limitée au français puisse susciter un engouement général. Développer une disposition de clavier c'est bien, mais c'est encore mieux si elle peut être largement utilisée.

Vers un « Bépo-international » : Bépow!

Principe

Pour rendre le Bépo plus polyvalent sans casser toute la disposition :

  • on remplace l'accent circonflexe mort par un accent grave mort, ce qui permet de caser W et Z sous la main gauche ;
  • l'accent circonflexe mort prend la place de « Ù » en AltGr+{U}, le hatchek passe en Shift+AltGr+{U} ;
  • plutôt que de laisser W et Z en double, les accents morts ^ˇ¨˙ sont dupliqués en [^] et [$].
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│ #  │ 1 „│ 2 ”│ 3 ”│ 4  │ 5  ║ 6  │ 7  │ 8  │ 9  │ 0  │ ^  │ `  ║        ║
│ $  │ " —│ « <│ » >│ ( [│ ) ]║ @  │ +  │ -  │ /  │ *  │ =  │ %  ║ <--    ║
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║  |<-  ║ B  │ É  │ P  │ O  │ W  ║ !  │ V  │ D  │ L  │ J  │ ˇ˙  ║   | ║
║  ->|  ║   |│    │   &│   œ│   ˘`  │    │    │    │    │ ^¨  ║ <-' ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║ A  │ U  │ I  │ E  │ ;  ║ C  │ T  │ S  │ R  │ N  │ M  │ Ç  ║    ║
║  CAPS  ║   æ│   ^¨│   €│ ,  ║    │    │    │    │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣
║   ^  ║  Ê │ Z  │ Y  │ X  │ :  │ K  ║ ?  │ Q  │ G  │ H  │ F  ║     ^     ║
║   |  ║   /│   \│   {│   }│ . …│   ~║ '  │    │    │    │    ║     |     ║
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣
║       ║      ║     ║ Espace insécable          ║     ║      ║     ║     ║
║ Ctrl  ║ WinG ║ Alt ║ Espace            _       ║AltGr║ WinD ║WinM ║Ctrl ║
╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝

C'est le minimum pour utiliser le fr-dvorak-bépo en anglais ou en allemand.

Fichier XKB

On peut se créer très facilement une telle variante Bépo-intl en ajoutant une section dans le fichier xkb :

// fr-dvorak-bepo-intl
partial alphanumeric_keys
xkb_symbols "bepo-intl" {
    include "fr(bepo)"

    // guillemets
    key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl       , 1 , emdash  , doublelowquotemark   ] }; // " 1 — „
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotleft  , 2 , less    , leftdoublequotemark  ] }; // « 2 < “
    key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotright , 3 , greater , rightdoublequotemark ] }; // » 3 > ”

    // accents morts : circonflexe et grave
    key <AD06> { type[group1] = "FOUR_LEVEL", [ dead_grave , exclam   , VoidSymbol          , exclamdown           ] }; // ` !   ¡
    key <AC02> { type[group1] = "FOUR_LEVEL", [ u          , U        , dead_circumflex     , dead_caron           ] }; // u U ^  

    // accents morts en double sous {W} et {Z}
    key <AD11> { type[group1] = "FOUR_LEVEL", [ dead_circumflex , dead_caron    , schwa        , SCHWA             ] }; // ^ ˇ ə Ə 
    key <AD12> { type[group1] = "FOUR_LEVEL", [ dead_diaeresis  , dead_abovedot , dead_breve   , VoidSymbol        ] }; // ¨ ¨ ¨ 

    // W et Z sous la main gauche
    key <AD05> { type[group1] = "FOUR_LEVEL", [ w          , W        , dead_breve          , VoidSymbol           ] }; // w W ˘    
    key <AB01> { type[group1] = "FOUR_LEVEL", [ z          , Z        , backslash          , VoidSymbol ] }; // z Z \
};

La disposition est alors activée comme suit :

setxkbmap fr -variant bepo-intl

Fichier xmodmap

Pour ceux qui préfèrent ce format, enregistrer le fichier suivant sous le nom bepow.map (par exemple) :

! accents morts : circonflexe et grave
keycode 29 = dead_grave exclam VoidSymbol exclamdown VoidSymbol exclamdown
keycode 39 = u U dead_circumflex dead_caron dead_circumflex dead_caron

! accents morts en double sous {W} et {Z}
keycode 34 = dead_circumflex dead_caron
keycode 35 = dead_diaeresis  dead_abovedot

! W et Z sous la main gauche
keycode 28 = w W dead_breve VoidSymbol dead_breve VoidSymbol
keycode 54 = z Z braceright VoidSymbol braceright VoidSymbol

La disposition est alors activée comme suit :

setxkbmap fr -variant bepo
xmodmap bepow.map

Avantages

  • bien meilleure compatibilité avec l'anglais, l'allemand et la prog ;
  • meilleur équilibre de la charge des doigts en français (réduction de la charge de l'index gauche) ;
  • le digramme « où » est facilité ;
  • deux places en AltGr+{W} et AltGr+{!}, et on pourrait aussi utiliser [^$] pour d'autres caractères ;
  • meilleure cohérence des diacritiques.

Inconvénient

  • légère perte d'efficacité pour le français puisque « È » et « À » requièrent désormais une touche morte.

Je pense que c'est très largement compensé par le gain de polyvalence… mais tout dépend évidemment de l'usage de chacun.

Variante « développeur »

Principe

Sur la base de la version initiale :

  • on passe les crochets en AltGr+{U/I} ;
  • les crochets < > remplacent les guillemets « » :
    • ça facilite beaucoup les digrammes </ et /> ;
    • c'est plus cohérent : tous les guillemets typographiques passent en AltGr ;
    • ça ne gêne pas au quotidien, puisque les traitements de texte savent remplacer le guillemet droit (") par la version typographique correspondant à la langue du document — en ajoutant l'espace insécable si besoin est ;
  • il reste deux places libres supplémentaires en AltGr+{4-5}.
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│ #  │ 1 „│ 2 ”│ 3 ”│ 4  │ 5  ║ 6  │ 7  │ 8  │ 9  │ 0  │ ^  │ `  ║        ║
│ $  │ " —│ < «> »│ (  │ )  ║ @  │ +  │ -  │ /  │ *  │ =  │ %  ║ <--    ║
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║  |<-  ║ B  │ É  │ P  │ O  │ W  ║ !  │ V  │ D  │ L  │ J  │ ˇ˙  ║   | ║
║  ->|  ║   |│   ´│   &│   œ│    ║ `  │    │    │    │    │ ^¨  ║ <-' ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║ A  │ U  │ I  │ E  │ ;  ║ C  │ T  │ S  │ R  │ N  │ M  │ Ç  ║    ║
║  CAPS  ║   æ│   []│   €│ ,  ║    │    │    │    │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣
║   ^  ║  Ê │ Z  │ Y  │ X  │ :  │ K  ║ ?  │ Q  │ G  │ H  │ F  ║     ^     ║
║   |  ║   /│   \│   {│   }│ . …│   ~║ '  │    │    │    │    ║     |     ║
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣
║       ║      ║     ║ Espace insécable          ║     ║      ║     ║     ║
║ Ctrl  ║ WinG ║ Alt ║ Espace            _       ║AltGr║ WinD ║WinM ║Ctrl ║
╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝

Fichier XKB

// fr-dvorak-bepo-intl-dev
partial alphanumeric_keys
xkb_symbols "bepo-intl-dev" {

    include "fr(bepo)"

    name[Group1]= "French (Bepow, ergonomic, Dvorak way)";

    // chevrons et guillemets
    key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl  , 1 , emdash        , doublelowquotemark   ] }; // " 1 — „
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less      , 2 , guillemotleft , leftdoublequotemark  ] }; // < 2 « “
    key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ greater  , 3 , guillemotright , rightdoublequotemark ] }; // > 3 » ”

    // accent grave mort
    key <AD06> { type[group1] = "FOUR_LEVEL", [ dead_grave , exclam   , VoidSymbol           , exclamdown           ] }; // ` !   ¡

    // crochets
    key <AC02> { type[group1] = "FOUR_LEVEL", [ u          , U        , bracketleft          , VoidSymbol           ] }; // u U [
    key <AC03> { type[group1] = "FOUR_LEVEL", [ i          , I        , bracketright         , VoidSymbol           ] }; // u U [

    // accents morts en double sous {W} et {Z}
    key <AD11> { type[group1] = "FOUR_LEVEL", [ dead_circumflex , dead_caron    , schwa      , SCHWA                ] }; // ^ ˇ ə Ə
    key <AD12> { type[group1] = "FOUR_LEVEL", [ dead_diaeresis  , dead_abovedot , dead_breve , VoidSymbol           ] }; // ¨ ˇ ˘

    // W et Z sous la main gauche
    key <AD05> { type[group1] = "FOUR_LEVEL", [ w          , W        , dead_breve           , VoidSymbol           ] }; // w W ˘
    key <AB01> { type[group1] = "FOUR_LEVEL", [ z          , Z        , backslash            , VoidSymbol           ] }; // z Z \
};

La disposition est alors activée comme suit :

setxkbmap fr -variant bepo-intl-dev

Avantages

  • les crochets [] gagnent beaucoup en accessibilité (programmation, wiki…) ;
  • les accents circonflexe et tréma sont plus faciles à utiliser, non seulement pour le français, mais aussi pour l'allemand (umlauts).

Inconvénients

Je cherche encore… Ce n'est pas parfait mais c'est une amélioration très nette pour la prog, l'anglais, l'allemand, ou l'édition de wikis, sans gros impact sur le français — voire même, je le trouve plus confortable pour le français, car j'ai horreur d'utiliser AltGr pour les caractères accentués (ù) ou les diacritiques morts : mon pouce n'est pas assez rapide pour lâcher AltGr à temps quand je tape vite.

Bref, ça rend le bépo compatible avec mon utilisation.

Variante « traducteur », sans {Ç} ni {Ê}

Principe

  • Ç passe en AltGr+{,} pour libérer une touche à droite et contribuer à alléger la charge de l'auriculaire ;
  • {Ê} est remplacé par une touche AltGr mort (◻), afin d'accéder plus facilement aux caractères spéciaux de la moitié droite du clavier :
    • ça ne symétrise pas les modifieurs, mais ça reste bien plus agréable pour accéder à la couche AltGr de la moitié droite du clavier ;
    • c'est applicable proprement sous toutes les plate-formes, contrairement au fait de redéfinir une touche Win ou Alt en AltGr : sous Windows™ et MacOS c'est une touche morte comme une autre, sous Linux cela correspond à ISO_Level3_Latch ;
    • Shift+{◻} pourrait être utilisé pour Compose (à vérifier) ;
  • les guillemets anglais de second niveau passent en Shift+AltGr+[4-5] ;
  • ¡¿ passent en AltGr+{!?}, c'est plus simple qu'en Shift+AltGr.
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│ #  │ 1 │ 2 │ 3 │ 4 │ 5 ║ 6  │ 7  │ 8  │ 9  │ 0  │ ^  │ `  ║        ║
│ $  │ " —│ « <│ » >│ ( [│ ) ]║ @  │ +  │ -  │ /  │ *  │ =  │ %  ║ <--    ║
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║  |<-  ║ B  │ É  │ P  │ O  │ W  ║ !  │ V  │ D  │ L  │ J  │    │    ║   | ║
║  ->|  ║   |│    │   &│   œ│    ║ ` ¡│    │    │    │    │    │    ║ <-' ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║ A  │ U  │ I  │ E  │ ;  ║ C  │ T  │ S  │ R  │ N  │ M  │    ║    ║
║  CAPS  ║   æ│   ^¨│   €│ , ç║    │    │    │    │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣
║   ^  ║    │ Z  │ Y  │ X  │ :  │ K  ║ ?  │ Q  │ G  │ H  │ F  ║     ^     ║
║   |  ║   │   \│   {│   }│ . …│   ~║ ' ¿│    │    │    │    ║     |     ║
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣
║       ║      ║     ║ Espace insécable          ║     ║      ║     ║     ║
║ Ctrl  ║ WinG ║ Alt ║ Espace            _       ║AltGr║ WinD ║WinM ║Ctrl ║
╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝

Avantages

  • encore plus polyvalent pour les langues étrangères :
    • les trois touches libres à droite peuvent contenir 6 symboles ou diacritiques morts, 12 avec AltGr ;
    • les caractères en AltGr + [main droite] sont accessibles via la touche AltGr morte ;
  • sur un clavier pc104, « Ç » est plus facile d'accès ;
  • réduction (sensible ?) de la charge des auriculaires en français, « Ê » et « Ç » n'étant plus sur ces doigts-là.

Inconvénients

  • perte d'efficacité pour le français, « Ê » et « Ç » n'étant plus accessible directement ;
  • AltGr pour les caractères accentués français (Ç), c'est nul.

L'accent circonflexe mort pourrait aussi être placé en AltGr+{E} afin de faciliter « ê » sur les claviers pc104, mais il faudrait alors faire « € » avec la touche monétaire morte.

Par souci de cohérence, « Ç » pourrait être en AltGr+{C} plutôt qu'en AltGr+{,}, puisqu'on dispose désormais d'une touche AltGr morte (du moins, sur les claviers pc104) ; le principal défaut serait que les digrammes « aç » comporteraient une répétition de l'auriculaire gauche.

Version Némolivier (chiffres en direct, « - » plus accessible) 

Sur la même base de travail, la version de NémOlivier, avec le xkb ici.

 ╭─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────╮
 │ # ¶ │ │ " „ │ < “ │ >  ”│ (   │ )   │ │ [   │ ] ¼ │ / ½ │ * ¾ │ = ¬ │ │ °   │ `   │
 │ $ – │ │ 1 @ │ 2 « │ 3  »│ 4   │ 5   │ │ 6 ^ │ 7   │ 8 ÷ │ 9 × │ 0 ≠ │ │ + ± │ % ‰ │
 ╰─────╯ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┤
         │ B   │ É   │ P § │ O Œ │ W   │ │ ! ¡ │ V   │ D   │ L   │ J   │ │ K   │comp.│
         │   | │   ´ │   & │     │   ˘ │ │ ` ˇ │     │     │   / │     │ │     │'   │
         ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────╯
         │ A Æ │ U ˙ │ I ˇ │ E ¤ │ ; Ç │ │ C   │ T   │ S   │ R ™ │ N º │ │ M   │ ╭-----╮
         │     │   ¨ │   ^ │   € │ ,   │ │   © │   þ │   ß │   ® │   ~ │ │     │ ¦ ç  ¦
 ╭-----╮ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ╰─────╯ ¦Esc     ¦
 ¦ Ê   ¦ │ Z   │ Y ‘ │ X ’ │ :   │ —   │ │ ? ¿ │ Q   │ G   │ H   │ F   │         ╰-----╯
 ¦     ¦ │   \ │   { │   } │ . … │ - ~ │ │ ’ ' │   ° │   µ │     │     │
 ╰-----╯ ╰─────┴─────┴─────┴─────┴─────╯ ╰─────┴─────┴─────┴─────┴─────╯
                   ╭───────┬─────────────────────────┬───────╮
                   │  Alt  │                         │ AltGr │
                   │       │                    _    │       │
                   ╰───────┴─────────────────────────┴───────╯
 

Des chiffres

Selon le corpus de Thomas Tempé (1 616 343 caractères) :

  • à : 7449
  • è : 4160
  • ù : 890

=> total « accent grave mort » : 12 499, c'est-à-dire entre la fréquence de « G » et « H ».

Sur ce corpus, l'utilisation d'une touche morte augmente donc le nombre de frappes de 0,72 %. Cela me parait parfaitement acceptable, surtout si l'accent grave mort est bien placé : de ce coté-là, il serait intéressant de placer cet accent mort en [O] ou [P], comme le suggère Nbrodu en page de discussion.

Conclusion

Les suggestions ci-dessus ne sont pas « clés en main », il faudrait les évaluer et les affiner.

Quoiqu'il en soit, il n'y pas de solution miracle qui améliorerait à la fois le français, la prog et les autres langues. Je crois qu'il faut donc accepter une légère perte de performance pour le français afin de gagner en polyvalence, toute la question étant de trouver le bon compromis.