Utilisateur:A2/neo2bepo

De Disposition de clavier bépo

Cette page détaille le fonctionnement de mon pilote Windows bépo « amélioré » en cours de développement (fév. 2010) : le déplacement de quasi toutes les touches, dont les modificateurs, est possible en compilant les sources en C du WDK[1].

néo2bépo est un projet perso visant à améliorer l'accessibilité des chiffres, des caractères de programmation et de typographie de la disposition de clavier bépo sur un clavier standard (105 touches décalé) en s'inspirant de la disposition Neo2 allemande.

Déplacement des modificateurs

L'idée du Neo2 est de sacrifier deux touches en accès direct, en bépo clavier bépoê et clavier bépoç, ainsi que clavier bépoCapslock pour avoir six modificateurs donnant accès de manière quasi symétrique pour les deux mains à deux couches complètes[2], nommées mod3 et mod4 sur le neo2, en plus de la couche majuscule. Les deux couches sont bien plus accessibles que la couche AltGr du bépo ou que la ctouche morte 8 à tout faire du dvorak-fr.

J'adapte ce système à bépo[3] en améliorant encore la symétrie et l'accessibilité aux modificateurs des couches auxiliaires grâce à :

  • deux clavier azertyMaj sur clavier bépoCapslock et clavier bépoEntrée ;
  • deux nouveaux modificateurs clavier azertyICI et clavier azerty sur les anciens clavier bépoMaj ;
  • clavier bépoAlt devient clavier azertyAltGr gauche ;
  • clavier bépoWindows gauche est supprimé au profit de clavier azertyAlt ;
  • clavier bépoCapslock devient la fonction clavier azertyVerrou, placée sur clavier bépoRetour arrière.

Seul clavier bépoTab, les clavier bépoCtrl et clavier bépoAltGr ne bougent pas, les modificateurs en rouge sont permutés.

┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗
│    │    │    │    │    │    │    │    │    │    │    │    │    ║ Verrou  ║
│    │    │    │    │    │    │    │    │    │    │    │    │    ║         ║
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║      ║
║  ->|  ║    │    │    │    │    │    │    │    │    │    │    │    ║      ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║
║        ║    │    │    │    │    │ <--│    │    │    │    │    │    ║     ║
║  Maj   ║    │    │    │    │    │    │    │    │    │    │    │    ║ Maj ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣
║      ║    │    │    │    │    │    │ <-'│    │    │    │    ║            ║
║  ICI ║    │    │    │    │    │    │    │    │    │    │    ║          ║
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦══════╣
║       ║      ║     ║                           ║     ║      ║     ║      ║
║ Ctrl  ║ AltAltGr║                           ║AltGr║ WinMenu ║ Ctrl ║
╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩══════╝

Changements perso sur bépo

  • Je garde bépo quasi complet. Pas question de réapprendre un réarrangement des touches, ça attendra une éventuelle v2 dans quelques années.
  • Je supprime l’espace insécable de Maj+espace[4].
  • Je place l’apostrophe typographique en accès direct.


Verr ICI et LÀ

┌──┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─────┐ 
│  │ │ │ │ │ │ │ │ │ │ │ │ │     │ 
├──┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬────┤ 
│   │ │↷│ │ │ │ │ │ │ │ │ │ │    │ 
├───┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┐   │ 
│    │↲│⇟│⇞│ │ │⌫│⇠│⇣│⇡│⇢│ │ │   │ 
├───┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴─┴───┤ 
│ICI│ │⌦│ │i│ │↲│ │ │ │ │ │  LÀ  │ 
├──┬┴─┼─┴┬┴─┴─┴─┴─┴─┴┬┴─┼─┴┬──┬──┤ 
│  │  │  │     ␣     │  │  │  │  │ 
└──┴──┴──┴───────────┴──┴──┴──┴──┘
┌──┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─────┐ 
│  │ │ │ │ │ │ │7│8│9│ │ │ │Verr.│ 
├──┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬────┤ 
│ ⇥ │ │ │ │ │ │ │4│5│6│ │ │ │    │ 
├───┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┐   │ 
│    │ │ │ │ │ │ │1│2│3│ │ │ │   │ 
├───┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴─┴───┤ 
│   │ │ │ │ │ │ │ │ │ │ │ │      │ 
├──┬┴─┼─┴┬┴─┴─┴─┴─┴─┴┬┴─┼─┴┬──┬──┤ 
│  │  │  │     0     │  │  │  │  │ 
└──┴──┴──┴───────────┴──┴──┴──┴──┘

Autocritique

Points positifs

  • modificateurs symétriques au niveau de la rangée de repos pour l'accès aux majuscules, perte du réflexe d'aller chercher les Maj vers le bas ;
  • modificateur symétrique pour accèder à la couche AltGr
  • un pavé numérique verrouillable accessible par la touche clavier bépoVerr. sur la rangée de repos ainsi que de nouveaux accès possibles aux alentours
  • des touches de déplacements (+p-ê défilements ?) sur les clavier bépoICI et clavier bépo (les anciens Maj.)
  • touche compose ♫ (du Neo2) en clavier bépoICI+clavier bépoê
  • (probablement empilement de touches mortes en utilisant le même principe que compose)

Points en suspens

  • entrée/retour arrière n'ont plus d'accès direct : perte du réflexe d'aller les chercher à droite sur ces claviers, ils sont accessibles par clavier azertyICI (où sera le mieux…).

Points négatifs

  • capslock pour les majuscules n'existe plus au profit du pavé numérique sous les doigts, c'est l'un ou l'autre ;
  • une seule touche super à droite voir aucune sur un clavier 104 touches avec un seul super.
  • numlock pourrait servir à surligner

À faire

  • tester le déplacement des touches de défilements
  • tester le déplacement d'inser. et suppr.
  • compléter la nouvelle couche Verr à commencer par les abords du nouveau pavé numérique
  • revoir la couche AltGr maintenant symétrique et la rangée supérieure
  • tenter de numlock accessible pour surligner, par exemple sur inser pas trop loin de bs
  • vérifier compose et les touches mortes
  • essayer l'empilement de touches mortes
  • ajuster les vk key au mieux pour les raccourcis
  • tester tester tester !
  • une installe pour les pilotes que les gens puissent essayer… quand le code sera plus propre !

Notes

<references>

  1. Pour tester le pilote je copie la dll générée avec le WDK dans les répertoires system32 et sysWOW64 en écrasant les précédentes puis je ferme et rouvre ma session. Il n'y pas besoin de rebooter ou d’installer/désinstaller la disposition.
  2. Carte/couche/état/niveau/plan AltGr/Maj… Quel terme utiliser en français pour décrire « l'ensemble des touches sous l'action d'un modificateur spécifique ». J’utilise le plus souvent inconsciement le mot « couche », pour son sens stratigraphique, décrivant la disposition comme une superposition de couches. La couche AltGr, la couche Maj, la couche AltGr+Maj… En anglais on trouve le terme d'état (shift state dans la source du pilote wind kbd.h), en allemand la traduction serait plutôt niveau, plan ou calque (le Neo2 utilise le mot Ebene). Sur ce wiki rencontre parfois simplement « carte AltGr » pour désigner la « carte de la “couche” AltGr ». Bref, où sont les académiciens ?
  3. Dans les sources en C, l'astuce est que le .H contient une table des scancodes des touches et des virtualkeys avec laquelle on peut donc déplacer les touches qui ne l'étaient pas dans MSKLC, ici les modificateurs. En passant l'utilisation de la touche kana comme touche morte permet de créer une couche vérrouillable (kanalock).
  4. Elle me dérange car je l’insère trop souvent par mégarde quand je saisie des caractères en Maj.