Utilisateur:Robin

De Disposition de clavier bépo

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

Retour d’expérience

Bonjour à tous, Je voulais faire un retour d’expérience de mon aventure en bépo, voilà qui est chose faite :

J’ai découvert le bépo par un ami. Je connaissais depuis longtemps le dvorak, et comptais m’y mettre un jour. J’ai finalement opté pour le bépo le 12 mars. J’utilisai auparavant l’azerty avec environ 7 doigts avec une vitesse de frappe d’environ 30-40 MPM mais avec une précision déplorable, surtout à haute vitesse. Je connaissais le placement standard des doigts en position dactylo. Il m’est arrivé à l’occasion de taper en qwerty et en qwertz (la version suisse).

Première impression : c’est très logique, j’ai retenu la casi totalité des touches en environ ½ heure

Semaine 1

Je suis très lent : environ 10 mots par minutes, mais c’est normal. Je fais tous les exercices de base sur klavaro et vise le 99% de précision.

Semaine 2

Je commence à bien connaitre les touches. J’en suis à 12-15 mots par minutes. Je commence à m’entrainer avec les trigrammes (http://bepo.fr/wiki/Exercices#M.C3.A9thode_par_les_trigrammes). Je découvre avec plaisir « http://phoboslab.org/ztype/ » mais n’arrive pas à passer le niveau 4. Durant le week-end j’ai déplacé physiquement les touches de mon pc portable (comme ça je peux passer mon ordi, vu que je veux retirer toute trace de l’azerty). Là je me rends compte que contrairement à ce que je pensais, je ne frappe pas du tout en aveugle ! À partir de là, ma migration est totale.

Semaine 3

Nette progression : je passe la barre des 25 MPM. J’atteins 40 MPM avec les trigrammes. Je modifie le layout du clavier pour avoir un pavé numérique en altgr sous la main droite (dès que j’aurais une disposition stable de mes touches, j’en parlerai sur le forum) et je modifie la place des touches « maj » « altgr » « ctrl » …

Semaine 4

Progrès plus lent mais constant. 45 MPM avec les trigrammes, 25 à 30 avec des textes complets. Je travaille ma fluidité. Pour la précision j’en suis à 96%, mais j’essaye de m’améliorer.

Semaine 5

J’ai finis la liste des trigrammes. J’ai décidé de la recommencer au début, et là c’est une grande satisfaction pour moi je passe la barre des 50 MPM et même celle des 60 le même jour ! C’est très motivant, d’autant qu’il est très rare que je repasse en dessous des 50 MPM. Je me concentre désormais exclusivement sur la précision, et paradoxalement je gagne beaucoup en vitesse ! Sur texte libre, je suis à 28MPM. En revanche ma fluidité laisse à désirer.

Semaine 6

Environ 50 MPM sur trigrammes, 98% de précision avec plusieurs pics à 100 %. Pour les textes libres j’en suis à 30-32 MPM et la même précision.

Semaine 7

Sur textes libres 37 à 40 MPM, au minimum 97% de précision. J’essaye d’atteindre les 100%, et avec cette contrainte (quand j’y arrive) je suis à 35 MPM.

Petite anecdote : le fait d’avoir travaillé le fait de pouvoir détacher mon regard de mes mains mais aussi de mon écran quand je tape me permet de faire deux choses en même temps. C’est comme si je passais l’action d’écrire en arrière-plan, de manière à pouvoir passer ma concentration à autre chose. Évidemment ma vitesse et ma précision en prennent un coup, mais c’est très pratique !

Autre point positif : le fait de devoir me concentrer sur chaque lettre que je tape m’ont permis, il semble de diminuer le nombre de fautes d’orthographe que je fais. Ayant toujours eu de grande difficulté dans ce domaine, c’est un vrai plaisir pour moi.

Je continue à m’amuser à faire des tests de placement de touche pour mon clavier. C’est un vrai loisir. Je suis content de voir que ça n’affecte pas ma frappe.

version modifié du bépo : le jéop

Pour l’instant, je modifie encore mon clavier, mais dans l’ensemble, je suis assez contant du résultat

Les lettres (avec les maj évidements)

Comme [1] j’ai fait l’inversion « op » et « ei ». C’est pas facile au début mais je préfère à la dispo de base (mes majeurs sont assez long et la ligne supérieure m’est donc très accessible).

De plus : Selon http://www.lexique.org/listes/liste_bigrammes.txt :

  • Les digrammes « ab » et « ba » totalisent 3573 et 3006 occurrences, les digrammes « jn » et « nj » totalisent 0 et 216 occurrences.
  • Les digrammes « bn » et « nb » totalisent 15 et 9 occurrences, les digrammes « ja » et « aj » totalisent 454 et 252 occurrences.

Il me semble du coup plus judicieux d’inverser j et b. Et d’autant plus que : le digramme « br » totalise 2395 occurrences et le digramme « bl » totalise 3031 occurrences

Ça fait plus d’un mois que je teste, c’est tout à fait valable

┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
│    │    │  ( │ )  │    │    │    │    │    │ w  │ k  │    │    ║        ║
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║       ║    │    │    │    │ ‘  │  ˇ │    │    │    │    │    │    ║     ║
║       ║ j  │ é  │ o  │ p  │ ’  │  ^ │ v  │ d  │ l  │ b  │ z  │    ║     ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║    │    │    │    │    │    │    │    │    │    │    │    ║    ║
║        ║ a  │ u  │ e  │ i  │    │ c  │ t  │ s  │ r  │ n  │ m  │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
║      ║    │    │    │    │  ! │  — │  ? │    │    │    │    ║           ║
║      ║  ê │ è  │ y  │ x  │  , │  - │  . │ q  │ g  │ h  │ f  ║           ║
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
║      ║    ║    ║    ║                        ║    ║    ║    ║
║      ║    ║    ║    ║      espace            ║    ║    ║    ║
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝


Les modificateurs

Disposition à essayer, je vous la conseille (à condition de ne pas utiliser d’autre mappages évidemment) La touche return est notamment un must have !

┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│ €  │    │    │    │    │    │    │    │    │    │    │    │    ║        ║ € dead_currency
│ α  │tab │    │    │ctrl│win │échap alt│ctrl│    │    │    │    ║ Return ║ α dead_greek
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
║tab    ║    │    │    │    │    │    │    │    │    │    │    │suppr     ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║    │    │    │    │    │    │    │    │    │    │    │    ║    ║
║altgr   ║    │    │    │    │  * │    │    │    │    │    │    │altgr    ║ return en accès direct, compose en altgr et suppr en level 5
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
║      ║    ║over║    ║                        ║    ║over║    ║
║ alt  ║fn  ║lay ║maj ║                        ║maj ║lay ║meta║
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝

Nb :

  • Verrouiller maj s’obtient en appuyant sur les deux touches « maj ».
  • Verrouiller altgr s’obtient en appuyant sur les deux touches « altgr ».
  • La disposition programmeur s’obtient en appuyant sur les deux touches level5 en même temps

Le pavé numérique en altgr (proche de la dispo de Lawrent)

Les chiffres sont en altgr
Quelques caractêre spéciaux sont placé à gauche
nb : je pense que je vais changer ça car avoir deux chiffres sur le petit doigt c’est pas pratique.
En revanche avoir un pavé numérique sur la ligne de repos c’est top
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
 │    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
 │    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
 ╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
 ║       ║    │  Œ │ Ô  │    │    │    │   E│   F│    │    │    │    ║     ║
 ║       ║    │  œ │ ô  │ ¶  │    │    │   5│   6│   7│   8│   9│    ║     ║
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
 ║        ║ À  │ Ù  │ Ê  │ Ï  │    │  Ç │   A│   B│   C│   D│    │    ║    ║
 ║altgr   ║ à  │ ù  │ ê  │ ï  │    │  ç │   0│   1│   2│   3│   4│    ║    ║
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
 ║      ║    │ Æ  │    │    │    │    │    │    │    │    │    ║           ║
 ║      ║    │ æ  │    │    │    │    │   =│   +│   -│   /│   *║           ║
 ╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
 ║      ║    ║    ║    ║                        ║    ║    ║    ║
 ║      ║    ║    ║maj ║                        ║    ║    ║    ║
 ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝


Le mappage ASCII en altgr

De récent changement ont fait que le placement des accolades, chevron et crochet ont perdu de leurs sens, il faut donc que je rectifie ça

Les 32 symboles de prog ~`!@#$%^&*()-_+={}[]:;'"|/\<>,.?
minimisation de l’utilisation de la ligne du bas et du haut
pour les symboles ascii la diposition programeur est plus adapté.
Nb : « / » et « * » sont dupliqué du pavé numérique (à droite)
Les symboles sont en level5. Leur disposition à été pensé au niveau mnémotechnique. Pour la programmation, cf mode programeur ci-dessous.
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
 │    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
 │    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
 ╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
 ║       ║    │    │    │    │  ’ │  ^ │    │  d │   l│    │    │    ║     ║  ^ symbole ascii
 ║       ║ /  │ ~  │  : │  ; │  ' │  ^ │  % │  # │   |│ °  │    │    ║     ║  ^ touche morte
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
 ║        ║  a │    │ e  │    │    │    │    │  s │    │    │    │    ║    ║
 ║        ║  @ │ {  │ &  │  } │  ' │  ` │  " │  $ │  [ │  ] │  º │    ║    ║  º masculine
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
 ║      ║    │ \  │    │    │    │    │    │    │    │    │    ║           ║
 ║level5║  \ │ /  │ <  │  > │    │    │    │/   │*   │    │  ª ║  level5   ║  ª feminine
 ╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
 ║      ║    ║    ║    ║                        ║    ║    ║    ║
 ║      ║    ║    ║    ║             underscore ║    ║    ║    ║
 ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝

disposition "overlay"

Pour plus de détails, cf [https:http://forum.bepo.fr/viewtopic.php?pid=6947#p6947]. Les lettres sont rappelées pour information (les touches directionnelles sont au même endroit que dans vim). Je pense rajouter d’autre trucs comme page up/down, précédant/suivant…

┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│in  │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
│sert│    │    │    │    │    │    │    │    │    │    │    │    ║        ║
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║delete ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║    │    │    │    │    │   c│   t│   s│   r│   n│   m│    ║    ║
║echap   ║    │    │    │    │    │   ←│   ↓│   ↑│   →│   ↖│ fin│echap║   ║ ↖ origin    
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
║      ║    ║over║    ║                        ║    ║over║    ║
║      ║    ║lay ║    ║                        ║    ║lay ║    ║
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝

Mon impression

  • Les gros plus :
    • les chiffres en main droite sont hyper accessibles.
    • les touches majuscule au niveau des pouces c’est très agréable, ça permet de taper plusieurs majuscules de suites sans être gênés, y compris si on doit taper des trucs genre « MAN » (petit doigts gauche et droits)
    • altgr en caps lock + touche à droite du m (même ligne que la ligne de repos), c’est très bien aussi
    • les touches directionnelles à la vim
  • Les plus
    • le trait d’union très accessible
    • w et k sont plus accessible (leur position est inhabituelle mais on s’y fait très bien)
    • ba et ab ne sont plus sur le même doit, c’est très agréable, d’autant que bl et br deviennent des digrammes simples à faire
    • ( et ) très accessible
    • forte décharge des petits doigts pour les modificateurs
    • Les paumes de mains ne bougent quasiment pas, même pour les modificateurs.
  • But :
    • avoir les chiffres sous la main droite (je n’aime pas la rangée des chiffres pour taper plus d’un caractère de suite, surtout avec un modificateur)
    • symétriser altgr
    • avoir les symboles de prog plus accessible (donc pas la lignes des chiffres)
    • avoir les modificateurs et touches spéciale plus accessible (ctrl maj retour …)
    • diminuer l’utilisation de la ligne du haut pour les symboles
    • k et w plus accessible (ce sont les seules lettres que j’ai déplacé, je fait confiance au bépo pour le placement des autres touches)
    • ’ et ' sur la même touche avec ’ en accès direct.
    • - en accès direct pour le trait d’union
    • — (emdash) à côté de la barre espace
    • compose
    • quelques symboles pour la prise de notes ≃∞↪→⇒⇔←
    • , sous l’index droit et . sous l’index gauche pour symétriser (j’ai échangé , et ’) avec l’apostrophe typographique en accès direct. Dans ma logique , et . sont du même ordre : des séparateur de mots, contrairement à ’ qui se trouve en milieu de mot. Et de toute façon ces deux touches ont la même accessibilité (à mon gout).
  • But secondaires :
    • j’ai mis les touches directionnelles sous "ctsr" (comme vim) et origin/fin sous "nm" accessible avec la touche overlay (deux crans à gauche de la barre espace, cf disposition overlay). Je pense rajouter d’autre trucs comme précédant/suivant et page up/down.
    • J’essaye d’avoir un maximum de similitude avec Lawrent et de reprendre les bonnes idées des modifications persos.
  • Nb :
    • Je n’ai pas placé la plupart des caractères étrangers, je ne les utilise jamais, je le ferais quand ma disposition sera fixé.
  • Les trucs pas parfait :
    • </ et /> pour les langages à balise ne sont pas optimaux (mais c’est tout à fait faisable)
    • mon clavier n’a physiquement pas assez de touches sous les pouces ^^
    • { n’est pas tout à fait assez accessible

Fichier xkb

/!\ Mon fichier est très mal écris. Je le mettrais au propre quand ma disposition sera stable. /!\ J’ai des problème matériel sur mon clavier : la touche {ê} ne marche pas et celle à droite du {z} non plus. Je me suis donc rajouté deux trois raccourcis avec l’overlay en conséquence

partial alphanumeric_keys
xkb_symbols "bepo" {

    include "level3(ralt_switch)"
    include "keypad(oss)"
                                                          
    name[Group1]= "French (Bepo, ergonomic, Dvorak way)";
    name[Group2]= "Symbols list";
    name[Group3]= "Number";
                                                          
    key.type[Group1] = "ONE_LEVEL";
    key <ESC>  { [ Escape ] };
    key <LCTL> { [ Alt_L     ] };
    key <RCTL> { [ Super_L   ] };
    key <TAB>  { [ BackSpace ], overlay1 = <DELE> };
    key <AD12> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay2) ], overlay2 = <DELE> };

    key.type[Group1] = "TWO_LEVEL";
    key <LALT> { [ Shift_L, Shift_Lock ] };  
    key <RALT> { [ Shift_R, Shift_Lock ] };  
    key <LWIN> { [ VoidSymbol, Menu ], actions = [ SetControls(controls=Overlay1) ] };
    key <MENU> { [ VoidSymbol, Menu ], actions = [ SetControls(controls=Overlay1) ] };
    key <TLDE> { [      dead_greek,dead_currency ], overlay1 = <INS> }; 
    key <AE01> { [     Tab, ISO_Left_Tab ] }; 
                    
    key.type[Group1] = "FOUR_LEVEL";
    key <SPCE> { [     space, nobreakspace, underscore,            U202F ] }; // ␣ _ (espace insécable) (espace insécable fin _ )
    key <BKSP> { [ Multi_key, Multi_key, Multi_key, Terminate_Server ] };
    key <CAPS> { [ ISO_Level3_Shift, ISO_Level3_Shift , ISO_Level3_Lock, ISO_Level3_Lock ], overlay1 = <ESC>  };    
    key <BKSL> { [ ISO_Level3_Shift, ISO_Level3_Shift , ISO_Level3_Lock, ISO_Level3_Lock ], overlay1 = <ESC>  };
    
    key.type[Group1] = "ONE_LEVEL";
    key <AE04> { [ Control_L                                                     ] };
    key <AE05> { [ Super_L                                                       ] };
    key <AE06> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay2) ], overlay2 = <RALT> };
    key <AE07> { [ Alt_L                                                         ] };    
    key <AE08> { [ Control_R                                                     ] };    

    // level modifier
    modifier_map Mod1 { <LALT> };
//    modifier_map Mod1 { <RALT> };
    modifier_map Mod2 { <CAPS> };
    modifier_map Mod2 { <BKSL> };

    // First row

    key.type[Group1] = "FOUR_LEVEL";

    // onequarter
    // idiaeresis,   Idiaeresis,        onehalf,   doublelowquotemark] }; // ç Ç [ ≤ 
    // oe,           OE,  threequarters ] }; // ) } ] ≥ 
    // ae,           AE,        notsign ] }; // + ± A ¬              
    // degree ] }; // − ¼ B °                        
    
    key <AE02> { [   ugrave,       Ugrave,  guillemotleft,  leftdoublequotemark ] };
    key <AE03> { [ ccedilla,     Ccedilla, guillemotright, rightdoublequotemark ] };
    
    key <AE09> { [          exclam,   exclamdown,Pointer_Button8,              C ] }; // ÷ ½ C \ 
    key <AE10> { [        question, questiondown,Pointer_Button9,              D ] }; // × ¾ D ∞
    key <AE11> { [          endash,   VoidSymbol,        minutes,              E ] }; // = ≃ E ′
    key <AE12> { [           U2243,        U221E,        seconds,              F ] }; // ≠ F ‰ ″

    // Second row

    key.type[Group1] = "FOUR_LEVEL";

    key <AD01> { [               j,              J,      braceleft,     VoidSymbol ] }; // b B / ˝ <  , dead_doubleacute
    key <AD02> { [          eacute,         Eacute,     braceright,   lessthanequal] }; // é É ^ ´ >  ,       dead_acute
    key <AD03> { [               p,              P,    bracketleft, greaterthanequal], overlay1 = <AD12> }; // p P & § #  ,          section
    key <AD04> { [               o,              O,   bracketright,     VoidSymbol ] }; // o O œ Œ "  ,           
    key <AD05> { [          egrave,         Egrave,      backslash,     VoidSymbol ] }; // è È ` ` ~            ,     dead_grave
    key <AD06> { [ dead_circumflex,     dead_caron,    asciicircum,          comma ] }; // ^ ˇ ! ¡               
    key <AD07> { [               v,              V,     VoidSymbol,              5 ] }; // v V 5 ˇ            dead_breve
    key <AD08> { [               d,              D,     numbersign,              6 ], overlay1 = <AD12> }; // d D 6 ̉      dead_hook          Nb : la touche AD12 est la touche qui contient le symbol "tab" et il se trouve qu’une fois sur deux elle ne marche pas à cause d’un problème matériel
    key <AD09> { [               l,              L,            bar,              7 ] }; // l L 7 ¸                dead_cedilla
    key <AD10> { [               b,              B,        percent,              8 ] }; // j J 8 ,                  dead_belowcomma
    key <AD11> { [               z,              Z,      dead_horn,              9 ] }; // z Z 9 ̛

    // Third row

    key.type[Group1] = "FOUR_LEVEL";

    key <AC01> { [               a,            A,            at ,     VoidSymbol ] }; // a A æ Æ {   ,             AE  /*, overlay1 = Undo */   
    key <AC02> { [               u,            U,     parenleft ,         ugrave ] }; // u U ù Ù [   ,         Ugrave  /*, overlay1 = Redo */   
    key <AC03> { [               i,            I,    parenright , dead_diaeresis ] }; // i I ̈  ˙ (   ,  dead_abovedot  /*, overlay1 = Prior*/   
    key <AC04> { [               e,            E,     ampersand ,       EuroSign ], overlay1 = <LSGT> }; // e E € ¤ )   ,  dead_currency  /*, overlay1 = Next */   
    key <AC05> { [ rightsinglequotemark,leftsinglequotemark,apostrophe, ellipsis ] }; // , ; ’ ‘ ;   
    key <AC06> { [               c,            C,         grave ,            dot ], overlay1 = <LEFT> }; // c C 0 © ←           copyright
    key <AC07> { [               t,            T,      quotedbl ,              0 ], overlay1 = <DOWN> }; // t T 1 ™ ↓                  trademark
    key <AC08> { [               s,            S,        dollar ,              1 ], overlay1 = <UP>   }; // s S 2 ſ ↑                U017F
    key <AC09> { [               r,            R,          less ,              2 ], overlay1 = <RGHT> }; // r R 3 ® →           registered
    key <AC10> { [               n,            N,       greater ,              3 ], overlay1 = <HOME> };              // n N 4 ~                           SCHWA
    key <AC11> { [               m,            M,      masculine,              4 ], overlay1 = <END>  };             // m M  ̄ º      ,dead_macron

// Fourth row

    key.type[Group1] = "FOUR_LEVEL";

    key <LFSH> { [               w,            W,     VoidSymbol,     VoidSymbol ] };
    key <LSGT> { [     ecircumflex,  Ecircumflex,          U2190,          U21D4 ] };
    key <AB01> { [          agrave,       Agrave,     VoidSymbol,          U21AA ] }; // à À ↪ ⇔ }
    key <AB02> { [               y,            Y,     VoidSymbol,          U2192 ] }; // y Y → ← ]   ,          U21D0
    key <AB03> { [               x,            X,     VoidSymbol,          U21D2 ] }; // x X ⇒ ⇐ \   , periodcentered
    key <AB04> { [           comma,    semicolon,    ecircumflex,    Ecircumflex ] }; // . : … · $ 
    key <AB05> { [           minus,       emdash,     asciitilde,     dead_tilde ] }; // k K ə Ə
    key <AB06> { [          period,        colon,       notequal,          equal ] }; // ' ? µ ¿               eth
    key <AB07> { [               q,            Q,      plusminus,           plus ] }; // q Q 0 ˚    dead_abovering
    key <AB08> { [               g,            G,          U2212,          minus ] }; // g G µ ̣      dead_belowdot
    key <AB09> { [               h,            H,       division,          slash ] }; // h H † ‡      doubledagger
    key <AB10> { [               f,            F,       multiply,       asterisk ] }; // f F ̨ ª        ordfeminine
    key <RTSH> { [               k,            K,     VoidSymbol,     VoidSymbol ] };
                                                                       
};

fichier .XCompose

Devant la quantité des symboles mathématiques, et la faible, mais non nulle utilisation que j’en fait, j’ai décidé de les ajouter à travers le mécanisme compose. Je vous le livre tel quel si ça peut vous intéresser. Notez que lorsqu’une combinaison ne fait intervenir que le pavé numérique, j’ai choisi d’utiliser le caractère situé en direct (par exemple {1} est en {altgr} + {maj} + {s} et {4} est en {altgr} + {maj} + {m}, donc pour écrire ¼ je tape « <compose mathématique> sm ». Il est probable que je mappe une touche pour accéder directement à mes symboles mathématiques.

Ressources utilisés :

include "%L" # pour inclure le fichier par défaut
# espaces Insécables automatiques

<guillemotleft> : "« "
<guillemotright> : " »"
<Multi_key>   <parenright>    <parenright>               : ":-)"

#symboles mathématique correspondant au pavé numérique
#nb : =+-/* correspondent respectivement à .qgf
<Multi_key> <Multi_key> <q> : "±"  
<Multi_key> <Multi_key> <g> : "−"  
<Multi_key> <Multi_key> <h> : "÷"  
<Multi_key> <Multi_key> <f> : "×"  
<Multi_key> <Multi_key> <period> : "≠"  
<Multi_key> <Multi_key> <minus> <period> : "≈"  #nb : mon symbole ~ est en altgr sur ma touche -
<Multi_key> <Multi_key> <minus> <h> <period> : "≉"  #nb : mon symbole ~ est en altgr sur ma touche -
<Multi_key> <Multi_key> <o> <q> : "⊕"        #CIRCLED PLUS 
<Multi_key> <Multi_key> <o> <g> : "⊖"        #CIRCLED MINUS
<Multi_key> <Multi_key> <o> <h> : "⊗"        #CIRCLED TIMES
<Multi_key> <Multi_key> <o> <f> : "⊘"        #CIRCLED DIVISION SLASH

# fractions - les lettres correspondent au placement de mon
# pavé numérique
# (sur deux lignes en main droite, les symboles en dessous)
<Multi_key> <Multi_key> <Multi_key> <s> <r> : "½"     
<Multi_key> <Multi_key> <Multi_key> <s> <n> : "⅓"  
<Multi_key> <Multi_key> <Multi_key> <s> <m> : "¼"  
<Multi_key> <Multi_key> <Multi_key> <s> <v> : "⅕"  
<Multi_key> <Multi_key> <Multi_key> <s> <d> : "⅙"  
<Multi_key> <Multi_key> <Multi_key> <s> <b> : "⅛"  
<Multi_key> <Multi_key> <Multi_key> <r> <n> : "⅔"  
<Multi_key> <Multi_key> <Multi_key> <r> <v> : "⅖"  
<Multi_key> <Multi_key> <Multi_key> <n> <m> : "¾"  
<Multi_key> <Multi_key> <Multi_key> <n> <b> : "⅜"  
<Multi_key> <Multi_key> <Multi_key> <m> <v> : "⅘"  
<Multi_key> <Multi_key> <Multi_key> <v> <d> : "⅚"  
<Multi_key> <Multi_key> <Multi_key> <v> <b> : "⅝"  
<Multi_key> <Multi_key> <Multi_key> <l> <b> : "⅞"  

#syboles mathématique 
<Multi_key> <Multi_key> <s> : "√"            #SQUARE ROOT      
<Multi_key> <Multi_key> <3> <s> : "∛"        #CUBE ROOT
<Multi_key> <Multi_key> <4> <s> : "∜"        #FOURTH ROOT
<Multi_key> <Multi_key> <o> <o> : "∞"        #INFINITY
<Multi_key> <Multi_key> <i> : "∫"            #INTEGRAL
<Multi_key> <Multi_key> <2> <i> : "∬"        #DOUBLE INTEGRAL
<Multi_key> <Multi_key> <3> <i> : "∭"        #TRIPLE INTEGRAL
<Multi_key> <Multi_key> <4> <i> : "⨌"        #QUADRUPLE INTEGRAL
<Multi_key> <Multi_key> <o> <i> : "∮"        #CONTOUR INTEGRAL
<Multi_key> <Multi_key> <o> <2> <i> : "∯"    #SURFACE INTEGRAL
<Multi_key> <Multi_key> <o> <3> <i> : "∰"    #VOLUME INTEGRAL
<Multi_key> <Multi_key> <n> : "∇"            #NABLA
<Multi_key> <Multi_key> <slash> <o> : "∅"    #EMPTY SET

<Multi_key> <Multi_key> <F> : "ƒ"            #FUNCTION (f is for "×"
<Multi_key> <Multi_key> <R> : "ℜ"            #REAL NUMBER
<Multi_key> <Multi_key> <I> : "ℑ"            #IMAGINARY
<Multi_key> <Multi_key> <A> : "∀"            #FOR ALL
<Multi_key> <Multi_key> <C> : "∁"            #COMPLEMENT
<Multi_key> <Multi_key> <E> : "∃"            #THERE EXISTS
<Multi_key> <Multi_key> <slash> <E> : "∄"    #THERE DOES NOT EXIST

#ensembles
<Multi_key> <Multi_key> <e> <n> : "ℕ"        #NATURAL NUMBERS 
<Multi_key> <Multi_key> <e> <z> : "ℤ"        #INTEGERS
<Multi_key> <Multi_key> <e> <q> : "ℚ"        #RATIONAL NUMBERS 
<Multi_key> <Multi_key> <e> <r> : "ℝ"        #REAL NUMBER
<Multi_key> <Multi_key> <e> <c> : "ℂ"        #COMPLEX NUMBERS 
<Multi_key> <Multi_key> <e> <p> : "ℙ"        #PRIME NUMBERS 
<Multi_key> <Multi_key> <e> <e> : "∈"        #ELEMENT OF 
<Multi_key> <Multi_key> <e> <slash> <e> : "∉"#NOT AN ELEMENT OF

Divers

  • un clavier vierge à copier-coller{1} est en {altgr} + {maj} + {s}
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗
│    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
│    │    │    │    │    │    │    │    │    │    │    │    │    ║        ║
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
║       ║    │    │    │    │    │    │    │    │    │    │    │    ║     ║
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗    ║
║        ║    │    │    │    │    │    │    │    │    │    │    │    ║    ║
║        ║    │    │    │    │    │    │    │    │    │    │    │    ║    ║
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
║      ║    │    │    │    │    │    │    │    │    │    │    ║           ║
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝
║      ║    ║    ║    ║                        ║    ║    ║    ║
║      ║    ║    ║    ║                        ║    ║    ║    ║
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝

Moi !

20 ans — en 2eme année en dut geii (électronique) — programme en c++ pour le plaisir — le reste ne vous regarde pas !