Utilisateur:Laurent/disposition

De Disposition de clavier bépo
< Utilisateur:Laurent
Version datée du 3 novembre 2009 à 07:25 par Laurent (discussion | contributions) (Introduction de e et r en exposant (pour les ordinaux) et du trait d’union insécable ; déplacements et suppressions en relation)

Ma disposition

┏━━━━┱────┬────┬────┬────┬────┬────┰────┬────┬────┬────┬────┬────┲━━━━━━━━┓
┃Alt ┃ § →│ W ⇒│ « ‑│ » Æ│ “ Ñ│ ” Þ┃ Ù Ŭ│ Ç °│ – ′│ — ″│ µ ˙│ ‰ º┃        ┃
┃Comp┃ # ə│ w ð│ - ij│ ' æ│ " ñ│ ` þ┃ ù ŭ│ ç 8│ ( 9│ ) ,│ ¨ .│ % =┃   ⌫    ┃
┣━━━━┻━━┱─┴──┬─┴──┬─┴──┬─┴──┬─┴──┰─┸──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┺━━┳━━━━━┫
┃   ⇤   ┃ B ¦│ É ˝│ O Œ│ P „│ È ˚┃ ! ˇ│ V ±│ D ™│ L /│ J ᵉ│ Z ʳ│ × †┃     ┃
┃   ⇥   ┃ b |│ é ´│ o œ│ p &│ è `ˆ ¡│ v +│ d 4│ l 5│ j 6│ z 7│ * *┃     ┃
┣━━━━━━━┻┱───┴┬───┴┬───┴┬───┴┬───┸┰───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┺┓ ↲  ┃
┃        ┃ A ≤│ U ≠│ E ¤│ I ≥│ ; ˘┃ C ©│ T –│ S ß│ R ®│ N ¬│ F ª│ ÷ ‡┃    ┃
┃  CAPS  ┃ a <│ u =│ e €│ i >│ , /┃ c @│ t -│ s 0│ r 1│ n 2│ f 3│ / /┃    ┃
┣━━━━━┳━━┹─┬──┴─┬──┴─┬──┴─┯━─┴─┬──┸─┰──┴─┯━─┴─┬──┴─┬──┴─┬──┴─┲━━┷━━━━┻━━━━┫
┃     ┃ Ê  │ À ℃│ Y ≃│ X •│ : ·│ K ˜┃ ? ‘│ Q ˛│ G ¸│ H ,│ M ¯┃            ┃
┃  ⇧  ┃ ê *│ à \│ y {│ x }│ . …│ k ~┃ ’ ¿│ q [│ g ]│ h ^│ m $┃     ⇧      ┃
┣━━━━━┻┳━━━┷━━┳━┷━━━━┷┱───┴────┴────┸────┴───┲┷━━━━┷━┳━━┷━━━┳┻━━━━━┳━━━━━━┫
┃      ┃      ┃       ┃ E. ins.  E. ins fine ┃       ┃ WinD ┃ Menu ┃      ┃
┃ Ctrl ┃ Alt  ┃ AltGr ┃ Espace        _      ┃ AltGr ┃ Menu ┃ WinG ┃ Ctrl ┃
┗━━━━━━┻━━━━━━┻━━━━━━━┹──────────────────────┺━━━━━━━┻━━━━━━┻━━━━━━┻━━━━━━┛

Justification

Sur le bépo 1.0,

  • certaines lettres (ç et w) sont situées sur des touches quasiment inutilisables;
  • les chiffres empêchent de mettre des lettres sur la rangée du haut, tout en ayant une disposition en ligne peu ergonomique;
  • certains signes utilisés en informatique sont très mal placés ($, #) ou assez mal placés (<, >…);
  • l'index gauche est très chargé.

Cette variation à partir du bépo vise donc à

  • proposer une disposition des chiffres plus pratique (en utilisant l'AltGr symétrique et une position de base de {d} à {z});
  • sauver les lettres et signes importants des touches inutilisables ([*], [$], [²]);
  • améliorer l'accès aux signes utilisés en informatique;
  • améliorer un peu la répartition de la charge des doigts de la main gauche en sacrifiant au minimum les autres critères d'ergonomie (testé avec le comparateur de claviers);

et accessoirement,

  • avoir les apostrophes informatique et typographique en accès direct toutes les deux (au détriment des guillemets français);
  • fournir une touche Compose;
  • limiter les risques de faute de frappe entre n et m, deux caractères dont la différence ne saute pas aux yeux dans certaines polices à largeur fixe).

Fichier xkb

xkb_keymap        {

// ** ATTENTION : l’une de ces deux lignes doit être décommentée suivant que votre version de X
// utilise le pilote clavier classique ou evdev.
// Si vous constatez des problèmes avec AltGr (droit), les flèches curseur, etc,. c’est que c’est l’autre.
//xkb_keycodes      { include "xfree86+aliases(azerty)" };
xkb_keycodes      { include "evdev+aliases(azerty)" };

xkb_types         { include "complete" };

xkb_compatibility { include "complete" };

partial alphanumeric_keys
xkb_symbols "beop" {

    name[Group1]= "France - Beop (v0.7.7), ergonomic, derived from the Bepo";

    include "pc(pc105)"
	
    key <TLDE> { [ Multi_key ] }; // Compose
    key <AE01> { type[group1] = "FOUR_LEVEL"               , [ numbersign, section, schwa, U2192 ] }; // # § ə →
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ w, W, eth, U21D2 ] }; // w W ð ⇒
    key <AE03> { type[group1] = "FOUR_LEVEL"               , [ minus, guillemotleft, U0133, U2011 ] }; // - « ij ‑
    key <AE04> { type[group1] = "FOUR_LEVEL"               , [ apostrophe, guillemotright, ae, AE ] }; // ' » æ Æ
    key <AE05> { type[group1] = "FOUR_LEVEL"               , [ quotedbl , leftdoublequotemark, ntilde, Ntilde ] }; // " “ ñ Ñ
    key <AE06> { type[group1] = "FOUR_LEVEL"               , [ grave, rightdoublequotemark, thorn, THORN ] }; // ` ” þ Þ
    key <AE07> { type[group1] = "FOUR_LEVEL_ALPHABETIC"    , [ ugrave, Ugrave, ubreve, Ubreve ] }; // ù Ù ŭ Ŭ
    key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ccedilla, Ccedilla, 8, degree ] }; // ç Ç 8 °
    key <AE09> { type[group1] = "FOUR_LEVEL"               , [ parenleft, endash, 9, minutes ] }; // ( – 9 ′
    key <AE10> { type[group1] = "FOUR_LEVEL"               , [ parenright, emdash, comma, seconds ] }; // ) — , ″
    key <AE11> { type[group1] = "FOUR_LEVEL"               , [ dead_diaeresis, mu, period, dead_abovedot ] }; // ¨ µ . ˙
    key <AE12> { type[group1] = "FOUR_LEVEL"               , [ percent, U2030, equal, masculine ] }; // % ‰ = º
 
    key <BKSP> {
        type= "CTRL+ALT",
        symbols[Group1]= [ BackSpace, Terminate_Server ]
    };
    
    key <TAB>  { [ Tab, ISO_Left_Tab ] };
    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_ALPHABETIC"    , [ o, O, oe, OE ] }; // o O œ Œ
    key <AD04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ p, P, ampersand, doublelowquotemark ] }; // p P & „
    key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, dead_grave, dead_abovering ] }; // è È ` ˚
    key <AD06> { type[group1] = "FOUR_LEVEL"               , [ dead_circumflex, exclam, exclamdown, dead_caron ] }; // ^ ! ¡ ˇ
    key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ v, V, plus, plusminus ] }; // v V + ±
    key <AD08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ d, D, 4, trademark ] }; // d D 4 ™
    key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ l, L, 5, UFDD0 ] }; // l L 5 /
    key <AD10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ j, J, 6, U1D49 ] }; // j J 6 ᵉ
    key <AD11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ z, Z, 7, U02B3 ] }; // z Z 7 ʳ
    key <AD12> { type[group1] = "FOUR_LEVEL"               , [ asterisk, multiply, asterisk, dagger ] }; // * × * †
    key <RTRN> { [ Return ] };
 
    key <CAPS> { [ Caps_Lock ] };
    key <AC01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ a, A, less, lessthanequal ] }; // a A < ≤
    key <AC02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ u, U, equal, notequal ] }; // u U = ≠
    key <AC03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ e, E, EuroSign, currency ] }; // e E € ¤
    key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ i, I, greater, greaterthanequal ] }; // i I > ≥
    key <AC05> { type[group1] = "FOUR_LEVEL"               , [ comma, semicolon, slash, dead_breve ] }; // , ; / ˘
    key <AC06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ c, C, at, copyright ] }; // c C @ ©
    key <AC07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ t, T, minus, U2212 ] }; // t T - −
    key <AC08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ s, S, 0, ssharp ] }; // s S 0 ß
    key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ r, R, 1, registered ] }; // r R 1 ®
    key <AC10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ n, N, 2, notsign ] }; // n N 2 ¬
    key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ f, F, 3, ordfeminine ] }; // f F 3 ª
    key <BKSL> { type[group1] = "FOUR_LEVEL"               , [ slash, division, slash, doubledagger ] }; // / ÷ / ‡

    key <LFSH> { [ Shift_L ] };
    key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ecircumflex, Ecircumflex, asterisk, U262D ] }; // ê Ê *
    key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, backslash, U2103 ] }; // à À \\ ℃
    key <AB02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, U2243 ] }; // y Y { ≃
    key <AB03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ x, X, braceright, U2022 ] }; // x X } •
    key <AB04> { type[group1] = "FOUR_LEVEL"               , [ period, colon, ellipsis, periodcentered ] }; // . : … ·
    key <AB05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, dead_tilde ] }; // k K ~ ~
    key <AB06> { type[group1] = "FOUR_LEVEL"               , [ rightsinglequotemark, question, questiondown, leftsinglequotemark ] }; // ’ ? ¿ ‘
    key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ q, Q, bracketleft, dead_ogonek ] }; // q Q [ ˛
    key <AB08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ g, G, bracketright, dead_cedilla ] }; // g G ] ¸
    key <AB09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ h, H, asciicircum, UFDD3 ] }; // h H ^ ,
    key <AB10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ m, M, dollar, dead_macron ] }; // m M \$ ¯
    key <RTSH> { [ Shift_R ] };

    key <LCTL> { [ Control_L ] };
    key <LWIN> { [ Alt_L, Meta_L ] };
    key <LALT> { [ ISO_Level3_Shift, ISO_Level3_Shift ] };
    key <SPCE> { type[group1] = "FOUR_LEVEL"               , [ space, nobreakspace, underscore, U202F ] }; //     _  
    key <RALT> { [ ISO_Level3_Shift, ISO_Level3_Shift ] };
    key <RWIN> { [ Menu, Super_R ] };
    key <MENU> { [ Super_L, Menu ] };
    key <RCTL> { [ Control_R ] };

    key <LVL3> { [ ISO_Level3_Shift ] };
    key <ALT>  { [ NoSymbol, Alt_L ] };
    key <KPEQ> { [ KP_Equal ] };
    key <SUPR> { [ NoSymbol, Super_L ] };
    key <HYPR> { [ NoSymbol, Hyper_L ] };
    key <META> { [ NoSymbol, Meta_L ] };

    modifier_map Control { <LCTL> };
    modifier_map Shift { <LFSH> };
    modifier_map Shift { <RTSH> };
    modifier_map Mod1 { <LWIN> };
    modifier_map Mod1 { <TLDE> };
    modifier_map Mod5 { <LALT> };
//    modifier_map Lock { <CAPS> };
//    modifier_map Mod2 { <NMLK> };
//    modifier_map Mod5 { <MDSW> };
    modifier_map Control { <RCTL> };
    modifier_map Mod5 { <RALT> };
    modifier_map Mod5 { <LVL3> };
//    modifier_map Mod1 { <ALT> };
//    modifier_map Mod4 { <SUPR> };
//    modifier_map Mod4 { <HYPR> };
//    modifier_map Mod1 { <META> };
};

xkb_geometry { include "pc(pc105)" };

};