« Utilisateur:Lawrent » : différence entre les versions

De Disposition de clavier bépo
(inversion slash et backslash)
Ligne 305 : Ligne 305 :


http://www.lexique.org/listes/liste_bigrammes.txt des statistiques sur les bigrammes de la langue française, utile si on veut modifier le bépo original
http://www.lexique.org/listes/liste_bigrammes.txt des statistiques sur les bigrammes de la langue française, utile si on veut modifier le bépo original
Je suis en dualboot Windows 7/Linux et pour l'instant Windows est resté sagement en azerty. Un jour il faudrait que j'explore [[Portable_Keyboard_Layout|PKL]] pour voir si je peux également bidouiller ma disposition sur Windows.


Un lien vers les symboles ascii, utiles pour dessiner un clavier: http://www.toutimages.com/codes_caracteres.htm
Un lien vers les symboles ascii, utiles pour dessiner un clavier: http://www.toutimages.com/codes_caracteres.htm

Version du 4 août 2013 à 16:10

Ma disposition est récente et subit encore quelques modifications. Si vous souhaitez une version stable, revenez d'ici quelques temps :-) .

Disposition complète, encore en cours de changements

level 1-2 : lettre et majuscule
level 3-4 (altgr, altgr+maj) : autres lettres et/ou symboles
level 5  (level5, seulement à droite): pavé numérique
level 5 + maj : chiffres en exposant
level 5 + altgr: chiffres en indice (plus difficiles à saisir)

┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────╔════════════════╗
│ CAPS   │        │        │        │        │        │ SHUT   │        │        │        │        │        │        ║                ║
│ LOCK   │        │ META   │ TAB    │ CTRL   │        │ DOWN   │        │ CTRL   │ ALT    │ INSERT │        │        ║ DELETE         ║
╔══════════════╗──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣
║ DEL          ║  O   Œ │ É      │ P      │ H    ≠ │ È      │ ¨ `  ~ │ V      │ D      │ L ≤    │ B ≥    │ Z      │ Ç      ║       |  ║
║ ←——          ║  o   œ │ é    & │ p    | │ h    = │ è    ` │ ^ ´  , │ v ^  5 │ d $  6 │ l <  7 │ b >  8 │ z #  9 │ ç    % ║     ←—'  ║
╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗        ║
║                ║ A    Æ │ U    Ù │ I    « │ E    » │ ;      │ C      │ T –    │ N      │ R      │ S      │ M      │        ║        ║
║ ALTGR          ║ a    æ │ u    ù │ i    ( │ e    ) │ ,    — │ c \  0 │ t -  1 │ n /  2 │ r {  3 │ s }  4 │ m %  . │ ALTGR  ║        ║
╠═══════════╦════╝──════──┴──════──┴──════──┴──════──┴───┬────┴───┬────┴──════──┴──════──┴──════──┴──════──┴───╔═════════════╩════════╣
║           ║ Ê      │ À      │ Y      │ X    ± │ :    · │ K      │ ? ≈  ≠ │ Q    ± │ G      │ J      │ F      ║ W                    ║
║ Level5    ║ ê    € │ à    @ │ y    * │ x    + │ .    … │ k    ° │ ' !  = │ q "  + │ g _  - │ j [  * │ f ]  / ║ w                    ║
╠═══════════╬════════╦════════╦════════╦════════════════════════════════════════════╦════════╦════════╦════════╬══════════════════════╝ 
║           ║        ║        ║        ║   [esp insecable]         [esp insecable]  ║        ║        ║        ║
║ ALT       ║        ║ OVERLAY║   MAJ  ║   [space]                  ~               ║ MAJ    ║ ESC    ║ META   ║
╚═══════════╩════════╩════════╩════════╩════════════════════════════════════════════╩════════╩════════╩════════╝

carte overlay
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
│    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
║       ║    │    │    │    │    │    │PgDw│PgUp│    │    │    │    ║     ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║    │    │    │    │    │    │    │    │    │    │    │    ║    ║
║        ║CTRL│ALT │META│MAJ │    │  ← │  ↓ │  ↑ │  → │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
║      ║    │    │    │    │    │    │    │End │Home│    │    ║           ║
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
║      ║    ║    ║    ║                        ║    ║    ║    ║
║      ║    ║OVRL║    ║                        ║    ║    ║    ║
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝

Remarque: à partir de 3 touches simultanées, certaines combinaisons de touche n'envoient pas de signal du clavier vers le pc (par exemple sur mon clavier la combinaison maj+altgr (gauche) + n) à cause d'un phénomène appelé ghosting (http://www.microsoft.com/appliedsciences/antighostingexplained.mspx). Lorsqu'on déplace les modificateurs, il arrive que certaines combinaisons de touche s'avèrent impossibles (il faut donc trouver une alternative propre au clavier). Sur Linux, xev affiche dans la console les events envoyés par le clavier et permet de détecter une combinaison de touche interdite.

Explication de la place de mes modificateurs:

  • ctrl, alt et maj sont donc duppliqués sur la ligne de repos en overlay pour faciliter les combinaisons "ctrl-alt-flèche" et "ctrl-alt-maj-flèche". Le "trou" entre alt et maj se trouve là car c'est le seul placement possible sur mon clavier pour éviter le ghosting
  • alt est duppliqué sur la ligne des chiffres pour un accès rapide aux raccourcis alt-f2 et alt-f4
  • meta est duppliqué sur la ligne des chiffres pour la combinaison "meta-D" qui réduit toutes les fenêtres et donne accès au bureau
  • meta est duppliqué sur la ligne de repos car "meta+fleche" étend mes fenêtres sur un demi-écran ou sur un plein écran

Pour l'utilisation de l'overlay, attention: toujours relacher la touche pressée avant la touche overlay. Sinon elle reste enfoncée et ça fait des trucs bizarres.

Caractéristiques principales

  • rendre AltGr symétrique pour pouvoir accéder facilement aux 4 levels de toutes les touches et ainsi rendre les symboles courants en programmation plus accessibles.
  • ne pas utiliser la ligne des chiffres que je juge trop inaccessible.
  • déplacer les modificateurs (l'idée des majuscules sous les pouces et des ctrl sur la ligne des chiffres vient de Robin). La combinaison maj+altgr s'en voit facilitée des deux côtés.
  • placer un pavé numérique sur deux lignes sous la main droite. Ses lignes sont décalées pour équilibrer la charge de l'index et de l'auriculaire.
  • un accès très facile aux flèches directionnelles. Vraiment, ça change la vie.
  • les ^ et ~ sont ajoutés comme touches non-mortes pour la programmation
  • les touches spéciales placées sur l'overlay sont fréquemment utilisées sur Linux Mint pour passer d'un écran virtuel à un autre, etc. En plus, MAJ+flèche permet de sélectionnel du texte

J'ai également modifié l'emplacement initial de certaines touches:

  • Le B: Robin recommande d'intervertir le J et le B à cause de la fréquence des digrammes ja, aj, bn, nb. Le digramme mb s'en retrouve plus difficile mais on y gagne à faciliter les digrammes bl et br car ils sont effectués par des doigts voisins.
  • Le H : je n'aime vraiment pas la place du H dans le bépo original à cause du digramme ch. Vue la place peu privilégiée du H et la fréquence du J un swap H<->J me semble adéquat.
  • Le O : ma méthode de saisie (voir plus bas) encourage l'utilisation des pouces comme pivots vers l'extérieur. Je trouve donc les touches O, È, ^ et V particulièrement inaccessibles. Un swap H<->O rend le O plus accessible et facilite les digrammes ou et oi (il ne faut plus «casser» les poignets vers l'intérieur). Dans l'ensemble, ça compense le digramme he concentré sur un seul doigt.
  • déplacement du ! : c'est une exception de mettre un signe de ponctuation en altgr, mais le '^' est trop inaccessible à mon goût, et puis ça me permet de faire une touche rien qu'avec les accents morts.
  • Le S et le N : pour faciliter les trigrammes des et men.

Bugs:

  • Delete (Maj + Backspace) a un comportement bizarre dans la console et ne fonctionne pas sur firefox

Utilisation recommandée

  • saisie des caractères proche de la variante A (idée: utiliser les index comme pivots pour les lignes supérieures et "tirer les mains vers l'extérieur" pour la ligne inférieure)
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│ 1  │ 1  │ 1  │    │ 1  │    │ 1  │ 1  │    │ 1  │    │    │    ║        ║
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║       ║ 1  │    │ 1  │    │    │ 1  │ 1  │    │ 1  │    │    │    ║     ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║ 1  │    │ 1  │    │    │ 1  │ 1  │    │ 1  │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
║      ║ 1  │    │ 1  │    │    │    │ 1  │ 1  │    │ 1  │    ║           ║
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
║      ║    ║    ║    ║                        ║    ║    ║    ║
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝
  • usage du caps lock: en fait, cette touche est très utile! Par exemple, pour écrire LASER, je tape: <caps lock>laser<caps lock>. Pas besoin de faire danser les auriculaires sur maj gauche et maj droit.

Apprentissage

Première semaine

J'ai commencé par installer klavaro mais j'ai très vite décroché, ne voulant pas faire d'exercices de type "nu su er na isu ra etti". J'ai copié-colle les exercices dans un fichier, et je les réécris en activant la touche insert.

Mon clavier comporte encore quelques bugs et je ne peux pas me permettre de quitter définitivement azerty. Je switche entre azrety et bépo pour faire mes exercices et pour écrire quelques petits textes. J'écris très lentement et je me focalise davantage sur le clavier que sur mon texte.

Deuxième semaine

J'ai corrigé mes bugs et j'ai mis bépo comme disposition par défaut. Je connais l'ensemble du clavier par coeur sans devoir faire d'efforts particuliers; c'est très agréable d'écrire avec. Ma frustration quant à ma lenteur d'écriture me fait basculer vers azerty quand j'ai des longs textes à écrire. Ma disposition subit encore quelques modifications, principalement sur la place des modificateurs et quelques caractères de programmation mais dans l'ensemble l'alphabet ne bouge plus.

Je m'exerce de temps en temps sur le recueil d'Amic.

Je recommence les exercices avec une méthode un peu différente: je recommence chaque phrase plusieurs fois jusqu'à le réussir sans faute plusieurs fois d'affilée. J'essaye une méthode de saisie un peu particurière: je tape mes exercices en aveugle. Je me rends compte que je fais moins d'erreurs de cette manière et j'épelle moins les mots lettre par lettre dans ma tête.

Troisième semaine

Cette semaine j'ai relativisé l'importance du bépo dans ma vie. C'est très clairement une disposition avantageuse, mais j'ai des projets plus urgents et/ou plus importants actuellement que pour dépenser beaucoup de mon temps à réapprendre à taper. Je laisse ma disposition au frigo pour l'instant, je reviendrai probablement dessus pendant des vacances.

Quatrième semaine

Après un peu moins de 2 mois d'absence, j'ai repris bépo après avoir re-modifié ma disposition. Cette fois-ci je pense que je vais la laisser comme elle est. J'ai recommencé les exercices et j'ai fini les séries sur les deux premières lignes (je refais plusieurs fois la même série). J'ai très clairement la carte du clavier en tête, je sais où se trouve chaque lettre et je commence à avoir une frappe fluide. Mais... y'a pas photo, je fais beaucoup d'erreurs je suis encore loin de mes résultats en azerty (jamais mesuré ma vitesse de frappe, je le ferai quand je me sentirai plus à l'aise). Petite anecdote amusante: quand je repasse sur azerty (par exemple pour écrire des textes longs ou sur le pc de mes parents) j'ai des réflexes bépo qui viennent perturber ma frappe.

Cinquième semaine

J'ai enfin fini la première série d'exercices, je vais pouvoir commencer la méthode d'apprentissage des trigrammes. Ma frappe est plus fluide (même si elle est encore lente), je commence à pouvoir réfléchir au texte que j'écris au lieu de taper mes phrases « mot par mot ». Pour la méthode des trigrammes, il y a le sujet initial provenant du forum et le dactylotest de Tazzon: http://forum.bepo.fr/viewtopic.php?id=417 et http://tazzon.free.fr/dactylotest/tridactyl/

Sixième semaine

Ça y est, je suis enfin passé en full bépo, je ne reviens jamais sur l'azerty. J'ai parfois des vieux réflexes de l'azerty qui perturbent ma frappe mais c'est très anecdotique. Je n'ai pas tenu la discipline de «une leçon des trigrammes par jour», je m'y pencherai probablement quand je serai plus habitué au bépo.

Installation (Linux)

  • Copier le code suivant à la fin du fichier /usr/share/X11/xkb/symbols/fr (les touches non-affectées sont toutes affectées à §).
  • Pour activer la disposition, lancer la commande setxkbmap fr bepo2
  • Pour activer la disposition par défaut, modifier le fichier xorg.conf (locate xorg.conf pour le trouver) ou /etc/default/keyboard sur les dernières versions d'Ubuntu/Linux Mint avec les lignes
XKBLAYOUT="fr"
XKBVARIANT="bepo2"
  • Après chaque modification ultérieure, lancer commande sudo sudo rm /var/lib/xkb/* (copier préalablement le contenu du dossier /var/lib/xkb/ par sécurité...). Pour tester la validité des modifications, lancer xkbcomp /usr/share/X11/xkb/symbols/fr (s'il n'y a pas de sortie, c'est que c'est bon).
!!!!!!!!!!! N'EST PAS À JOUR !!!!!!!!!!!!!!!!!!
// a ajouter dans xkb/symbols/french

partial alphanumeric_keys
xkb_symbols "bepo2" {

    include "keypad(oss)" // touches standard
 
    name[Group1]= "French (Bepo2, ergonomic, derived from the Bepo by Laurent Van Eesbeeck)";
 
    key <TLDE> { type[group1] = "ONE_LEVEL", [ Caps_Lock         ]};
    key <AE01> { type[group1] = "ONE_LEVEL", [ ISO_Level3_Shift  ]};
    key <AE02> { type[group1] = "ONE_LEVEL", [ section           ]};
    key <AE03> { type[group1] = "ONE_LEVEL", [ Alt_L             ]};
    key <AE04> { type[group1] = "ONE_LEVEL", [ Control_L         ]};
    key <AE05> { type[group1] = "ONE_LEVEL", [ section           ]};
    key <AE06> { type[group1] = "ONE_LEVEL", [ section           ]};
    key <AE07> { type[group1] = "ONE_LEVEL", [ section           ]};
    key <AE08> { type[group1] = "ONE_LEVEL", [ Control_R         ]};
    key <AE09> { type[group1] = "ONE_LEVEL", [ Super_R           ]};
    key <AE10> { type[group1] = "ONE_LEVEL", [ section           ]};
    key <AE11> { type[group1] = "ONE_LEVEL", [ section           ]};
    key <AE12> { type[group1] = "ONE_LEVEL", [ Insert            ]};
    key <BKSP> { type[group1] = "ONE_LEVEL", [ Delete            ]};

    key <TAB>  { type[group1] = "ONE_LEVEL"                 , [ BackSpace                                                                ]};
    key <AD01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ j              , J            , grave          , section                 ]};
    key <AD02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ eacute         , Eacute       , ampersand      , section                 ]};
    key <AD03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ p              , P            , bar            , section                 ]};
    key <AD04> { type[group1] = "FOUR_LEVEL_ALPHABETIC"     , [ o              , O            , oe             , OE                      ]};
    key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ egrave         , Egrave       , section        , section                 ]};
    key <AD06> { type[group1] = "EIGHT_LEVEL"               , [ dead_circumflex, dead_acute   , dead_diaeresis , dead_grave      , comma ], overlay1=<FK13>};
    key <AD07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ v              , V            , asciicircum    , section         , 5, 5  ], overlay1=<PGDN>};
    key <AD08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ d              , D            , underscore     , section         , 6, 6  ], overlay1=<PGUP>};
    key <AD09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ l              , L            , less           , lessthanequal   , 7, 7  ], overlay1=<FK14>};
    key <AD10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ b              , B            , greater        , greaterthanequal, 8, 8  ]};
    key <AD11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ z              , Z            , numbersign     , section         , 9, 9  ]};
    key <AD12> { type[group1] = "TWO_LEVEL"                 , [ Tab            , Iso_Left_Tab                                            ]};
    key <RTRN> { type[group1] = "ONE_LEVEL"                 , [ Return                                                                   ]};

    key <CAPS> { type[group1] = "ONE_LEVEL"                 , [ ISO_Level3_Shift                                                       ],  overlay1=<ESC> };
    key <AC01> { type[group1] = "FOUR_LEVEL_ALPHABETIC"     , [ a                , A         , ae         , AE                         ],  overlay1=<AE04>};
    key <AC02> { type[group1] = "FOUR_LEVEL_ALPHABETIC"     , [ u                , U         , ugrave     , Ugrave                     ],  overlay1=<RCTL>};
    key <AC03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ i                , I         , parenleft  , leftdoublequotemark        ],  overlay1=<LCTL>};
    key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ e                , E         , parenright , rightdoublequotemark       ],  overlay1=<LALT>};
    key <AC05> { type[group1] = "FOUR_LEVEL"                , [ comma            , semicolon , minus      , emdash                     ]};
    key <AC06> { type[group1] = "EIGHT_LEVEL_ALPHABETIC"    , [ c                , C         , ccedilla   , Ccedilla , period , period ],  overlay1=<LEFT>};
    key <AC07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ t                , T         , backslash  , section  , 0      , 0      ],  overlay1=<DOWN>};
    key <AC08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ s                , S         , dollar     , section  , 1      , 1      ],  overlay1=<UP>};
    key <AC09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ r                , R         , braceleft  , section  , 2      , 2      ],  overlay1=<RGHT>};
    key <AC10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ n                , N         , braceright , section  , 3      , 3      ]};
    key <AC11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ m                , M         , percent    , section  , 4      , 4      ]};
    key <BKSL> { type[group1] = "ONE_LEVEL"                 , [ ISO_Level3_Shift                                                       ]};

    key <LFSH> { type[group1] = "ONE_LEVEL"                 , [ ISO_Level5_Shift                                        ]};
    key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ ecircumflex , Ecircumflex , EuroSign     , section      ]};
    key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC" , [ agrave      , Agrave      , at           , section      ]};
    key <AB02> { type[group1] = "ALPHABETIC"                , [ y           , Y           , bar          , section      ]};
    key <AB03> { type[group1] = "ALPHABETIC"                , [ x           , X           , ampersand    , section      ]};
    key <AB04> { type[group1] = "FOUR_LEVEL"                , [ period      , colon       , ellipsis     , section      ]};
    key <AB05> { type[group1] = "ALPHABETIC"                , [ k           , K                                         ]};
    key <AB06> { type[group1] = "EIGHT_LEVEL"               , [ apostrophe  , question    , exclam       , notequal , equal    , approxeq ]};
    key <AB07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ q           , Q           , quotedbl     , section  , plus     , plus     ], overlay1=<HOME>};
    key <AB08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ g           , G           , degree       , section  , minus    , minus    ], overlay1=<END>};
    key <AB09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ h           , H           , bracketleft  , section  , asterisk , asterisk ]};
    key <AB10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ f           , F           , bracketright , section  , slash    , slash    ]};
    key <RTSH> { type[group1] = "ALPHABETIC"                , [ w           , W                                        ]};

    key <LCTL> { type[group1] = "ONE_LEVEL"                , [ Super_L                                                             ]};
    key <LWIN> { type[group1] = "ONE_LEVEL"                , [ VoidSymbol ]   , actions = [ SetControls(controls=Overlay1)         ]};
    key <LALT> { type[group1] = "ONE_LEVEL"                , [ Shift_L                                                             ]};
    key <SPCE> { type[group1] = "FOUR_LEVEL"               , [ space          , nobreakspace  , asciitilde          , space        ]};
    key <RALT> { type[group1] = "ONE_LEVEL"                , [ Shift_R                                                             ]};
    key <MENU> { type[group1] = "ONE_LEVEL"                , [ VoidSymbol ]   , actions = [ SetControls(controls=Overlay1)         ]};
    key <RCTL> { type[group1] = "ONE_LEVEL"                , [ Alt_R                                                               ]};

    // fake key for overlay
    key <FK13> { type[group1] = "ONE_LEVEL", [ XF86Back    ] };
    key <FK14> { type[group1] = "ONE_LEVEL", [ XF86Forward ] };

    
    modifier_map Shift { Shift_L, Shift_R }; // shift
    modifier_map Lock { Caps_Lock }; // caps lock
    modifier_map Control { Control_L, Control_R };
    modifier_map Mod5 { ISO_Level3_Shift }; // altgr
    modifier_map Mod3 { ISO_Level5_Shift }; // Level5
};

VIM

Comme j'ai interverti le N et le S, le fichier de configuration de VIM doit être modifié en conséquence:

  • flèches directionnelles:
    • c = ←, C = haut de l'écran
    • t = ↓, T = joindre
    • n = ↑, N = aide
    • r = →, R = bas de l'écran
  • remplacement des touches ctnr:
    • jx = aller au prochain caractère x, Jx = aller au caractère x précédent
    • lmov = supprime le mouvement mov et bascule en mode insertion, L = supprime la fin de ligne et bascule en mode insertion (tester si ll supprime toute la ligne)
    • hx = remplace le caractère sous le curseur par x, H = entre en mode remplacement
    • k = cherche la prochaine occurrence de pattern (après /pattern), K = cherche l'occurrence précédente

Le fichier ~/.vimrc.bepo est alors le suivant:

" {W} -> [É]
" ——————————
" On remappe W sur É :
noremap é w
noremap É W
" Corollaire, pour effacer/remplacer un mot quand on n’est pas au début (daé / laé).
" (attention, cela diminue la réactivité du {A}…)
noremap aé aw
noremap aÉ aW
" Pour faciliter les manipulations de fenêtres, on utilise {W} comme un Ctrl+W :
noremap w <C-w>
noremap W <C-w><C-w>
 
" [HJKL] -> {CTNR}
" ————————————————
" {cr} = « gauche / droite »
noremap c h
noremap r l
" {tn} = « haut / bas »
noremap t j
noremap n k
" {CR} = « haut / bas de l'écran »
noremap C H
noremap R L
" {TS} = « joindre / aide »
noremap T J
noremap N K
" Corollaire : repli suivant / précédent
noremap zn zj
noremap zt zk
 
" {HJKL} <- [CTNR]
" ————————————————
" {J} = « Jusqu'à »            (j = suivant, J = précédant)
noremap j t
noremap J T
" {L} = « Change »             (l = attend un mvt, L = jusqu'à la fin de ligne)
noremap l c
noremap L C
" {H} = « Remplace »           (h = un caractère slt, H = reste en « Remplace »)
noremap h r
noremap H R
" {K} = « Recherche »          (k = suivant, K = précédent)
noremap k n
noremap K N
 
" Désambiguation de {g}
" —————————————————————
" ligne écran précédente / suivante (à l'intérieur d'une phrase)
noremap gn gk
noremap gt gj
" onglet précédant / suivant
noremap gb gT
noremap gé gt
" optionnel : {gB} / {gÉ} pour aller au premier / dernier onglet
noremap gB :exe "silent! tabfirst"<CR>
noremap gÉ :exe "silent! tablast"<CR>
" optionnel : {g"} pour aller au début de la ligne écran
noremap g" g0
  
" Remaper la gestion des fenêtres
" ———————————————————————————————
noremap wt <C-w>j
noremap wn <C-w>k
noremap wc <C-w>h
noremap wr <C-w>l
noremap wd <C-w>c
noremap wo <C-w>s
noremap wp <C-w>o
noremap w<SPACE> :split<CR>
noremap w<CR> :vsplit<CR>

Autour du clavier

A terme je prévois de passer à vim, mais je réserve ça pour lorsque je serai habitué à bépo. J'hésite encore sur le gestionnaire de fenêtres vers lequel migrer, wmii et scrotwm ont l'air intéressants.

Liens utiles et tout ce qui n'a pas sa place ailleurs

Pour en savoir plus sur la syntaxe utilisée dans le wiki: http://meta.wikimedia.org/wiki/Help:Wikitext_examples/fr

http://www.lexique.org/listes/liste_bigrammes.txt des statistiques sur les bigrammes de la langue française, utile si on veut modifier le bépo original

Je suis en dualboot Windows 7/Linux et pour l'instant Windows est resté sagement en azerty. Un jour il faudrait que j'explore PKL pour voir si je peux également bidouiller ma disposition sur Windows.

Un lien vers les symboles ascii, utiles pour dessiner un clavier: http://www.toutimages.com/codes_caracteres.htm

╔ ╗ ╚ ╝ ╩ ╦ ╠ ╣ ═ ║ ╬
┌ ┐ └ ┘ ┴ ┬ ├ ┤ ─ │ ┼

Pour s'habituer au pavé numérique, on peut s'exercer en recopiant les décimales de pi. Voici ses 2400 premières décimales, trouvées sur http://trucsmaths.free.fr/images/pi/pi2400.htm

3,141 592 653 589 793 238 462 643 383 279 502 884 197 169 399 375 105 820 974 944 592 307 816 406 286 208 998 628 034 825 342 117 067 982 148 086 513 282 306 647 093 844 609 550 582 231 725 359 408 128 481 117 450 284 102 701 938 521 105 559 644 622 948 954 930 381 964 428 810 975 665 933 446 128 475 648 233 786 783 165 271 201 909 145 648 566 923 460 348 610 454 326 648 213 393 607 260 249 141 273 724 587 006 606 315 588 174 881 520 920 962 829 254 091 715 364 367 892 590 360 011 330 530 548 820 466 521 384 146 951 941 511 609 433 057 270 365 759 591 953 092 186 117 381 932 611 793 105 118 548 074 462 379 962 749 567 351 885 752 724 891 227 938 183 011 949 129 833 673 362 440 656 643 086 021 394 946 395 224 737 190 702 179 860 943 702 770 539 217 176 293 176 752 384 674 818 467 669 405 132 000 568 127 145 263 560 827 785 771 342 757 789 609 173 637 178 721 468 440 901 224 953 430 146 549 585 371 050 792 279 689 258 923 542 019 956 112 129 021 960 864 034 418 159 813 629 774 771 309 960 518 707 211 349 999 998 372 978 049 951 059 731 732 816 096 318 595 024 459 455 346 908 302 642 522 308 253 344 685 035 261 931 188 171 010 003 137 838 752 886 587 533 208 381 420 617 177 669 147 303 598 253 490 428 755 468 731 159 562 863 882 353 787 593 751 957 781 857 780 532 171 226 806 613 001 927 876 611 195 909 216 420 198 938 095 257 201 065 485 863 278 865 936 153 381 827 968 230 301 952 035 301 852 968 995 773 622 599 413 891 249 721 775 283 479 131 515 574 857 242 454 150 695 950 829 533 116 861 727 855 889 075 098 381 754 637 464 939 319 255 060 400 927 701 671 139 009 848 824 012 858 361 603 563 707 660 104 710 181 942 955 596 198 946 767 837 449 448 255 379 774 726 847 104 047 534 646 208 046 684 259 069 491 293 313 677 028 989 152 104 752 162 056 966 024 058 038 150 193 511 253 382 430 035 587 640 247 496 473 263 914 199 272 604 269 922 796 782 354 781 636 009 341 721 641 219 924 586 315 030 286 182 974 555 706 749 838 505 494 588 586 926 995 690 927 210 797 509 302 955 321 165 344 987 202 755 960 236 480 665 499 119 881 834 797 753 566 369 807 426 542 527 862 551 818 417 574 672 890 977 772 793 800 081 647 060 016 145 249 192 173 217 214 772 350 141 441 973 568 548 161 361 157 352 552 133 475 741 849 468 438 523 323 907 394 143 334 547 762 416 862 518 983 569 485 562 099 219 222 184 272 550 254 256 887 671 790 494 601 653 466 804 988 627 232 791 786 085 784 383 827 967 976 681 454 100 953 883 786 360 950 680 064 225 125 205 117 392 984 896 084 128 488 626 945 604 241 965 285 022 210 661 186 306 744 278 622 039 194 945 047 123 713 786 960 956 364 371 917 287 467 764 657 573 962 413 890 865 832 645 995 813 390 478 027 590 099 465 764 078 951 269 468 398 352 595 709 825 822 620 522 489 407 726 719 478 268 482 601 476 990 902 640 136 394 437 455 305 068 203 496 252 451 749 399 651 431 429 809 190 659 250 937 221 696 461 515 709 858 387 410 597 885 959 772 975 498 930 161 753 928 468 138 268 683 868 942 774 155 991 855 925 245 953 959 431 049 972 524 680 845 987 273 644 695 848 653 836 736 222 626 099 124 608 051 243 884 390 451 244 136 549 762 780 797 715 691 435 997 700 129 616 089 441 694 868 555 848 406 353 422 072 225 828 488 648 158 456 028 50

Deux claviers vierges: un large et un étroit

┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────╔════════════════╗
│        │        │        │        │        │        │        │        │        │        │        │        │        ║                ║
│        │        │        │        │        │        │        │        │        │        │        │        │        ║                ║
╔══════════════╗──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣
║              ║        │        │        │        │        │        │        │        │        │        │        │        ║          ║
║              ║        │        │        │        │        │        │        │        │        │        │        │        ║          ║
╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗        ║
║                ║        │        │        │        │        │        │        │        │        │        │        │        ║        ║
║                ║        │        │        │        │        │        │        │        │        │        │        │        ║        ║
╠═══════════╦════╝───┬────┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴───┬────┴───╔═════════════╩════════╣
║           ║        │        │        │        │        │        │        │        │        │        │        ║                      ║
║           ║        │        │        │        │        │        │        │        │        │        │        ║                      ║
╠═══════════╬════════╦════════╦════════╦════════════════════════════════════════════╦════════╦════════╦════════╬══════════════════════╝
║           ║        ║        ║        ║                                            ║        ║        ║        ║
║           ║        ║        ║        ║                                            ║        ║        ║        ║
╚═══════════╩════════╩════════╩════════╩════════════════════════════════════════════╩════════╩════════╩════════╝

┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
│    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║    │    │    │    │    │    │    │    │    │    │    │    ║    ║
║        ║    │    │    │    │    │    │    │    │    │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
║      ║    ║    ║    ║                        ║    ║    ║    ║
║      ║    ║    ║    ║                        ║    ║    ║    ║
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝