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

De Disposition de clavier bépo
m (ÉBPOW)
(Un xkb pour les curieux)
Ligne 29 : Ligne 29 :
                   │      │                        │      │
                   │      │                        │      │
                   ╰───────┴─────────────────────────┴───────╯
                   ╰───────┴─────────────────────────┴───────╯
Dans ce que tu proposes, il me semble que le Ç ne peut pas être sur {,} car il nous faut aussi la majuscule et ça ferait perdre le ¿ pour un gain pas évident. Le mettre en AltGr+A, même si ce n’est pas très « cohérent », et le doubler sur [*], puisque le Ç est un caractère français et que les claviers français ont cette touche.
La touche [$] pourrait accueillir la fameuse Compose.
Si il y a des courageux qui veulent tester, voici un xkb vite fait (il y a quelques doublons). Pour tester sans perdre votre bépo adoré, je vous propose de squatter le bépo lat9 qui est vide pour le moment. Attention, les « four level alphabetic » et autre ne sont pas bons :
    // Restricts the fr(bepo) layout to latin9 symbols
    include "keypad(oss)"
    name[Group1]="France - Bepo, ergonomic, Dvorak way, international variant";
  // Première ligne
key <TLDE> { type[group1] = "FOUR_LEVEL"              , [              dollar,  numbersign,      section,            paragraph ] }; // $ # § ¶
key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  1,    quotedbl,            at                      ] }; // 1 " @
key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  2, guillemotleft, leftdoublequotemark,        U2264 ] }; // 2 « “ ≤
key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  3, guillemotright, rightdoublequotemark,      U2265 ] }; // 3 » ” ≥
key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  4,    parenleft,    bracketleft                      ] }; // 4 ( [
key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  5,  parenright,  bracketright                      ] }; // 5 ) ]
key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  6,        plus,      plusminus                      ] }; // 6 + ±
key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  7,        less,          less,              degree ] }; // 7 < < °
key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  8,      greater,        greater,            minutes ] }; // 8 > > ´
key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  9,        slash,      division,            seconds ] }; // 9 / ÷ ˝
key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  0,    asterisk,      multiply                      ] }; // 0 * ×
key <AE11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [              equal,          at,        notsign                      ] }; // = @ ¬
key <AE12> { type[group1] = "THREE_LEVEL"              , [            percent,          mu,          U2030                      ] }; // % µ ¯
// Deuxième ligne
key <AD01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  b,            B,          bar,            brokenbar ] }; // b B | ¦
key <AD02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [              eacute,      Eacute,    dead_acute,    dead_doubleacute ] }; // é É ´ ˝
key <AD03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  p,            P,    ampersand                      ] }; // p P &
key <AD04> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  o,            O,            oe,                  OE ] }; // o O œ Œ
key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  w,            W,    dead_breve                      ] }; // w W ˘
key <AD06> { type[group1] = "FOUR_LEVEL"              , [          dead_grave,      exclam,    dead_caron,          exclamdown ] }; // ` ! ˇ ¡
key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  v,            V,            ae,                  AE ] }; // v V æ Æ
key <AD08> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  d,            D,          eth,                  ETH ] }; // d D ð Ð
key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  l,            L,        UFE63                      ] }; // l L /
key <AD10> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  j,            J,        U0133,                U0132 ] }; // j J ij IJ
key <AD11> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  k,            K,        schwa,                SCHWA ] }; // k K ə Ə
key <AD12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [          Multi_key,    Multi_key                                      ] }; // Compose Compose
// Troisième ligne
key <AC01> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  a,            A,      ccedilla,            Ccedilla ] }; // a A ç Ç
key <AC02> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  u,            U, dead_circumflex,        dead_caron ] }; // u U ^ ˇ
key <AC03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  i,            I,dead_diaeresis,        dead_abovedot ] }; // i I ¨ ˙
key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  e,            E,      EuroSign,                UFE67 ] }; // e E € ¤
key <AC05> { type[group1] = "FOUR_LEVEL"              , [              comma,    question,    apostrophe,        questiondown ] }; // , ? ' ¿
key <AC06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  c,            C,    copyright,                U8482 ] }; // c C ©
key <AC07> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  t,            T,        thorn,                THORN ] }; // t T þ Þ
key <AC08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  s,            S,        ssharp                      ] }; // s S ß
key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  r,            R,    registered                      ] }; // r R ®
key <AC10> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                  n,            N,        ntilde,              Ntilde ] }; // n N ñ Ñ
key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  m,            M,  dead_macron,            masculine ] }; // m M ¯ º
key <BKSL> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [            ccedilla,    Ccedilla,  dead_cedilla                      ] }; // ç Ç ¸
// Quatrième ligne
key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        ecircumflex,  Ecircumflex,          slash                      ] }; // ê Ê /
key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  x,            X,      backslash                      ] }; // x X \
key <AB02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  y,            Y,      braceleft                      ] }; // y Y {
key <AB03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  z,            Z,    braceright                      ] }; // z Z }
key <AB04> { type[group1] = "THREE_LEVEL"              , [              period,        colon,      ellipsis,      periodcentered ] }; // . : … ·
key <AB05> { type[group1] = "FOUR_LEVEL"              , [              minus,      emdash,    dead_tilde,          asciitilde ] }; // - — ~ ~
key <AB06> { type[group1] = "THREE_LEVEL"              , [rightsinglequotemark,    semicolon,    apostrophe, leftsinglequotemark ] }; // ’ ; ' ‘
key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  q,            Q,        oslash,            Ooblique ] }; // q Q ø Ø
key <AB08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  g,            G, dead_abovering                      ] }; // g G ˚
key <AB09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  h,            H,        dagger,        doubledagger ] }; // h H † ‡
key <AB10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                  f,            F,    dead_ogonek,        ordfeminine ] }; // f F ˛ ª
key <SPCE> { type[group1] = "FOUR_LEVEL"              , [              space, nobreakspace,    underscore,              U202F ] }; // espace  nbsp _ nbsp fine
include "level3(ralt_switch)"
};

Version du 11 mai 2008 à 11:23

Bien vu !

On peut peut-être améliorer encore un peu en regardant les fréquences et les digrammes à un doigt :

  • È, À, et Ù combinés sont plus fréquents que J, et il y a une bonne différence d'accessibilité entre ces emplacements.
  • C et T combinent avec l'apostrophe, qui pourrait pour une accessibilité équivalente être échangée avec le M.
  • Option reportée de la 0.6.4: inverser B et É. Le français perd à peine (moindre accessibilité pour É compensée en partie par de meilleurs digrammes dont BA/AB et UÉ). Mais pour une version « Internationale » le gain sur le B serait justifié.

Globalement la charge de l'auriculaire droit serait légèrement diminuée (elle est augmentée par le premier changement ci-dessus et diminuée par le deuxième) et cela ramènerait les lettres dans le pavé principal si cela te tiens a cœur. Qui plus est en plaçant TCJ à l'opposé de ' tu évites les digrammes à un doigt correspondant (et comme ' est suivi d'une voyelle il ne peut pas non plus aller à gauche).

Enfin, vu qu'on peut débattre de la facilité d'enchaînement des AltGr (relève du pouce en cours de frappe) alors que l'auriculaire est plus mobile, et que le ê est dupliqué sur 105 touches, pourquoi ne pas tout simplement utiliser la place vacante pour ^/¨ pour les utilisateurs pour qui cela conviendrait mieux ? Pour certains AltGr semblera plus aisé, pour d'autres peut-être l'auriculaire. De même on peut dupliquer le Ç en AltGr+A pour la même raison, surtout que sur PC104 il se retrouve encore plus loin.

Nbrodu 10 mai 2008 à 23:48 (UTC)

╭─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────┬─────┬─────┬─────╮ ╭─────┬─────╮
│ #   │ │ "   │ «   │ »   │ (   │ )   │ │ +   │ <   │ >   │ /   │ *   │ │ @   │ µ   │
│ $   │ │ 1   │ 2   │ 3   │ 4   │ 5   │ │ 6   │ 7   │ 8   │ 9   │ 0   │ │ =   │ %   │
╰─────╯ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┤
        │ É   │ B   │ P   │ O   │ W   │ │ J   │ V   │ D   │ L   │ !   │ │ _   │ ¨   │
        │     │     │     │     │     │ │     │     │     │     │ `   │ │ - — │ ^   │
        ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────╯
        │ A   │ U   │ I   │ E   │ ;   │ │ C   │ T   │ S   │ R   │ N   │ │ ?   │ ╭-----╮
        │   Ç^¨ │     │ ,   │ │     │     │     │     │     │ │ '   │ ¦ Ç   ¦
╭-----╮ ├─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┤ ╰─────╯ ¦     ¦
¦ Ê   ¦ │ X   │ Y   │ Z   │ :   │ K   │ │ M   │ Q   │ G   │ H   │ F   │         ╰-----╯
¦     ¦ │     │     │     │ .   │     │ │     │     │     │     │     │
╰-----╯ ╰─────┴─────┴─────┴─────┴─────╯ ╰─────┴─────┴─────┴─────┴─────╯
                  ╭───────┬─────────────────────────┬───────╮
                  │  Alt  │                         │ AltGr │
                  │       │                         │       │
                  ╰───────┴─────────────────────────┴───────╯


Dans ce que tu proposes, il me semble que le Ç ne peut pas être sur {,} car il nous faut aussi la majuscule et ça ferait perdre le ¿ pour un gain pas évident. Le mettre en AltGr+A, même si ce n’est pas très « cohérent », et le doubler sur [*], puisque le Ç est un caractère français et que les claviers français ont cette touche. La touche [$] pourrait accueillir la fameuse Compose.

Si il y a des courageux qui veulent tester, voici un xkb vite fait (il y a quelques doublons). Pour tester sans perdre votre bépo adoré, je vous propose de squatter le bépo lat9 qui est vide pour le moment. Attention, les « four level alphabetic » et autre ne sont pas bons :

    // Restricts the fr(bepo) layout to latin9 symbols

    include "keypad(oss)"

    name[Group1]="France - Bepo, ergonomic, Dvorak way, international variant";

 // Première ligne
	key <TLDE> { type[group1] = "FOUR_LEVEL"               , [              dollar,   numbersign,       section,            paragraph ] }; // $ # § ¶

	key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   1,     quotedbl,             at                      ] }; // 1 " @
	key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   2, guillemotleft, leftdoublequotemark,         U2264 ] }; // 2 « “ ≤
	key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   3, guillemotright, rightdoublequotemark,       U2265 ] }; // 3 » ” ≥
	key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   4,    parenleft,    bracketleft                      ] }; // 4 ( [ 
	key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   5,   parenright,   bracketright                      ] }; // 5 ) ] 
	key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   6,         plus,      plusminus                      ] }; // 6 + ± 
	key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   7,         less,           less,              degree ] }; // 7 < < °
	key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   8,      greater,        greater,             minutes ] }; // 8 > > ´
	key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   9,        slash,       division,             seconds ] }; // 9 / ÷ ˝
	key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   0,     asterisk,       multiply                      ] }; // 0 * ×
	key <AE11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [               equal,           at,        notsign                      ] }; // = @ ¬
	key <AE12> { type[group1] = "THREE_LEVEL"              , [             percent,           mu,          U2030                      ] }; // % µ ¯

// Deuxième ligne
	key <AD01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   b,            B,           bar,            brokenbar ] }; // b B | ¦
	key <AD02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [              eacute,       Eacute,    dead_acute,     dead_doubleacute ] }; // é É ´ ˝
	key <AD03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   p,            P,     ampersand                       ] }; // p P &
	key <AD04> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   o,            O,            oe,                   OE ] }; // o O œ Œ
	key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   w,            W,    dead_breve                       ] }; // w W ˘ 
	key <AD06> { type[group1] = "FOUR_LEVEL"               , [          dead_grave,       exclam,    dead_caron,           exclamdown ] }; // ` ! ˇ ¡
	key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   v,            V,            ae,                   AE ] }; // v V æ Æ
	key <AD08> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   d,            D,           eth,                  ETH ] }; // d D ð Ð
	key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   l,            L,         UFE63                       ] }; // l L /
	key <AD10> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   j,            J,         U0133,                U0132 ] }; // j J ij IJ
	key <AD11> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   k,            K,         schwa,                SCHWA ] }; // k K ə Ə
	key <AD12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           Multi_key,    Multi_key                                      ] }; // Compose Compose

// Troisième ligne
	key <AC01> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   a,            A,      ccedilla,             Ccedilla ] }; // a A ç Ç
	key <AC02> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   u,            U, dead_circumflex,         dead_caron ] }; // u U ^ ˇ 
	key <AC03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   i,            I,dead_diaeresis,        dead_abovedot ] }; // i I ¨ ˙
	key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   e,            E,      EuroSign,                UFE67 ] }; // e E € ¤
	key <AC05> { type[group1] = "FOUR_LEVEL"               , [               comma,     question,    apostrophe,         questiondown ] }; // , ? ' ¿
	key <AC06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   c,            C,     copyright,                U8482 ] }; // c C © 
	key <AC07> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   t,            T,         thorn,                THORN ] }; // t T þ Þ
	key <AC08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   s,            S,        ssharp                       ] }; // s S ß
	key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   r,            R,    registered                       ] }; // r R ®
	key <AC10> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [                   n,            N,        ntilde,               Ntilde ] }; // n N ñ Ñ
	key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   m,            M,   dead_macron,            masculine ] }; // m M ¯ º
	key <BKSL> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [            ccedilla,     Ccedilla,  dead_cedilla                       ] }; // ç Ç ¸

// Quatrième ligne
	key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [         ecircumflex,  Ecircumflex,          slash                      ] }; // ê Ê /
	key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   x,            X,      backslash                      ] }; // x X \
	key <AB02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   y,            Y,      braceleft                      ] }; // y Y { 
	key <AB03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   z,            Z,     braceright                      ] }; // z Z }
	key <AB04> { type[group1] = "THREE_LEVEL"              , [              period,        colon,       ellipsis,      periodcentered ] }; // . : … ·
	key <AB05> { type[group1] = "FOUR_LEVEL"               , [               minus,       emdash,     dead_tilde,          asciitilde ] }; // - — ~ ~ 
	key <AB06> { type[group1] = "THREE_LEVEL"              , [rightsinglequotemark,    semicolon,     apostrophe, leftsinglequotemark ] }; // ’ ; ' ‘
	key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   q,            Q,         oslash,            Ooblique ] }; // q Q ø Ø
	key <AB08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   g,            G, dead_abovering                      ] }; // g G ˚
	key <AB09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   h,            H,         dagger,        doubledagger ] }; // h H † ‡
	key <AB10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [                   f,            F,    dead_ogonek,         ordfeminine ] }; // f F ˛ ª 

	key <SPCE> { type[group1] = "FOUR_LEVEL"               , [               space, nobreakspace,     underscore,               U202F ] }; // espace   nbsp _ nbsp fine 
	include "level3(ralt_switch)"
};