« Utilisateur:Robin » : différence entre les versions
(→Création d'un prototype de clavier : Ajout d'un lien vers ma deuxième sous-page.) |
|||
(9 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
== Création d'un prototype de clavier == | |||
Je suis actuellement en train de me fabriquer mon propre clavier (l'objet). Vous pourrez suivre : | |||
* [[Utilisateur:Robin/proto|l'avancement]] | |||
* [[Utilisateur:Robin/teensy|mes astuces pour programmer un teensy]] | |||
==Retour d’expérience== | ==Retour d’expérience== | ||
Ligne 35 : | Ligne 40 : | ||
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. | 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. | ||
===Semaine 12 | |||
Passage de la barre des 50 MPM ! (mais avec une précision pourri, 94%) | |||
Je viens de faire pour la première fois depuis longtemps (à cause de mes modifications sur le bépo) un 100% de précision avec tazzon, mais pas de pot, la lettre suivante était un d, et vu que j’utilise vimpérator, ça m’a fermé mon onglet. Je suis très triste. C’était environ 45MPM. | |||
===Semaine 15 | |||
Premier score sur tazzon avec tout en vert : précision, vitesse et fluidité. | |||
Juste pour m’en souvenir : | |||
Temps : 1 min. 54,0 s | |||
Vous avez fait 8 erreurs (10 fautes de frappe). | |||
Précision : 98 % | |||
Coups par seconde : 4.39 (263 coups/min.) | |||
Mots par minute : 52.7 | |||
Fluidité : 75.28 % | |||
Sans erreurs, vous auriez pu atteindre 54.8 mots par minute. | |||
Temps perdu en erreurs : 0 min. 4,4 s soit 3.9% | |||
Félicitations ! Votre précision est excellente. | |||
Félicitations ! Votre vitesse de frappe est excellente. | |||
==version modifié du bépo : Chiffres en accès direct== | |||
J'ai fait pas mal de test sur la dispo bépo depuis environ 2 an. Voici ma disposition actuelle, à ajouter dans le fichier | |||
/usr/share/X11/xkb/symbols/perso | |||
/!\ Suite à des perso de travail du à une mise à jour, je ne met plus mon travail dans /usr/share/X11/xkb/symbols/fr, mais dans un fichier séparé. | |||
partial alphanumeric_keys | |||
xkb_symbols "overlay" { | |||
key <PRSC> { type[group1] = "ONE_LEVEL", [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] }; | |||
// NB: ma touche PRSC (capture d'écran) est situé à droite de ma touche RALT sur mon clavier. | |||
key <AC02> {overlay1=<LEFT>}; | |||
key <AC03> {overlay1=<DOWN>}; | |||
key <AD03> {overlay1=<UP> }; | |||
key <AC04> {overlay1=<RGHT>}; | |||
key <AD02> {overlay1=<HOME>}; | |||
key <AD04> {overlay1=<END> }; | |||
}; | |||
partial alphanumeric_keys | |||
xkb_symbols "bepo_invert_number" { | |||
// First row | |||
key <AE01> { [ 1, quotedbl ] }; | |||
key <AE02> { [ 2, guillemotleft ] }; | |||
key <AE03> { [ 3, guillemotright ] }; | |||
key <AE04> { [ 4, parenleft ] }; | |||
key <AE05> { [ 5, parenright ] }; | |||
key <AE06> { [ 6, at ] }; | |||
key <AE07> { [ 7, plus ] }; | |||
key <AE08> { [ 8, minus ] }; | |||
key <AE09> { [ 9, slash ] }; | |||
key <AE10> { [ 0, asterisk ] }; | |||
}; | |||
partial alphanumeric_keys | |||
xkb_symbols "deplace_modificateur" { | |||
include "keypad(oss)" | |||
key <CAPS> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ISO_Level3_Shift, Caps_Lock, ISO_Level3_Lock, ISO_Level3_Lock ] }; | |||
key <RALT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ISO_Level3_Shift, ISO_Level3_Shift, ISO_Level3_Lock ] }; | |||
key <LALT> { [ Shift_L, Shift_Lock ] }; | |||
key <LFSH> { type[group1] = "ONE_LEVEL", [ Alt_L ] }; | |||
key <RTSH> { type[group1] = "ONE_LEVEL", [ Alt_L ] }; | |||
modifier_map Shift { Shift_L, Shift_R }; | |||
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 | |||
}; | |||
partial alphanumeric_keys | |||
xkb_symbols "bepo_perso" { | |||
include "keypad(oss)" | |||
include "fr(bepo)" | |||
include "perso(overlay)" | |||
include "perso(bepo_invert_number)" | |||
include "perso(deplace_modificateur)" | |||
name[Group1]= "French (Bepo, ergonomic, Dvorak way, number with direct access)"; | |||
// duplication des signes utiles en altgr main-droite | |||
key <AD07> { [ v, V, parenleft ] }; // v V ˇ | |||
key <AD08> { [ d, D, parenright, ETH ] }; // d D ð Ð | |||
key <AD09> { [ l, L, bracketleft ] }; // l L / | |||
key <AD10> { [ j, J, bracketright, U0132 ] }; // j J ij IJ | |||
key <AC07> { [ t, T, plus, less ] }; // t T þ Þ | |||
key <AC08> { [ s, S, minus, greater ] }; // s S ß ẞ | |||
key <AC09> { [ r, R, slash, trademark ] }; // r R ® ™ | |||
key <AC10> { [ n, N, asterisk ] }; // n N ~ | |||
}; | |||
Ce n'est pas parfait (certain caractères étrangers deviennent innacéssible), et c'est surtout un test de plus, mais en voici les caractèristiques principales : | |||
* Chiffres en accès direct sur la lignes des chiffres | |||
* Les symboles de la ligne des chiffres sont dupliqués en altgr main droite. | |||
* La touche caps-lock sert de altgr (pour la main droite). | |||
De plus | |||
* La touche Alt_L me sert de touche majuscule et les touches Shift sont devenues des touches Alt | |||
Comme ça les chiffres sont très simples d'accès, je ne bouge quasiment plus mes mains de la lignes de repos et je me sert un peu plus de mes pouces ! | |||
Utilisation : | |||
$ setxkbmap perso bepo_perso | |||
==version modifié du bépo : le jéop== | ==version modifié du bépo : le jéop== | ||
J'ai laissé la fin de page à des fin d'historique, mais je n'utilise actuellement plus cette disposition. | |||
Pour l’instant, je modifie encore mon clavier, mais dans l’ensemble, je suis assez contant du résultat. | Pour l’instant, je modifie encore mon clavier, mais dans l’ensemble, je suis assez contant du résultat. | ||
Les trucs susceptible de changer ( | Les trucs susceptible de changer (dû aux plus récents changements) sont : | ||
* Le caractère « à » | * Le caractère « à » | ||
* La couche ASCII | * La couche ASCII | ||
Ligne 45 : | Ligne 169 : | ||
===Les lettres (avec les maj évidements)=== | ===Les lettres (avec les maj évidements)=== | ||
Comme [[Utilisateur:Laurent/disposition|Laurent (béop)]] j’ai fait l’inversion « op » et « ei ». | Comme [[Utilisateur:Laurent/disposition|Laurent (béop)]] j’ai fait l’inversion « op » et « ei ». Ce n’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 : | De plus : | ||
Ligne 78 : | Ligne 202 : | ||
Disposition à essayer, je vous la conseille (à condition de ne pas utiliser d’autre mappages évidemment) | Disposition à essayer, je vous la conseille (à condition de ne pas utiliser d’autre mappages évidemment) | ||
La touche return est notamment un must have ! | La touche return est notamment un must have ! | ||
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | |||
│ € │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ € dead_currency | |||
│ α │tab │ │ │ctrl│win │échap alt│ctrl│ │ │ │ ║ Return ║ α dead_greek | |||
╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣ | |||
║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | |||
║tab ║ │ │ │ │ │ │ │ │ │ │ │suppr ║ | |||
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗ ║ | |||
║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | |||
║altgr ║ │ │ │ │ * │ │ │ │ │ │ │altgr ║ backspace en accès direct, enter en maj, compose en altgr et suppr en | |||
> level 5 | |||
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣ | |||
║ ║ │ │ │ │ │ │ │ │ │ │ ║ ║ | |||
║ ║ │ │ │ │ │ │ │ │ │ │ ║ ║ | |||
╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝ | |||
║ ║ ║over║ ║ ║ ║over║ ║ | |||
║ alt ║fn ║lay ║maj ║ ║maj ║lay ║meta║ | |||
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝ | |||
Nb : | Nb : | ||
Ligne 101 : | Ligne 226 : | ||
===Mode programmeur=== | ===Mode programmeur=== | ||
Mode programmeur accessible à l’aide d’un basculement qui a lieu quand on enfonce les deux touches level5 en même temps. | Mode programmeur accessible à l’aide d’un basculement qui a lieu quand on enfonce les deux touches level5 en même temps. Seuls les changements sur la couche 5 sont notés pour alléger la présentation. | ||
Motivation du placement (commun au mode classique) : | Motivation du placement (commun au mode classique) : | ||
« / » « * » et « : » sont côtes à côte pour les digrammes « /* » « */ » et « :/ ». | « / » « * » et « : » sont côtes à côte pour les digrammes « /* » « */ » et « :/ ». | ||
« / » « < » « > » sont côte à côte pour pouvoir taper « </ » et « /> » en plus de « // » « << » et « >> » | « / » « < » « > » sont côte à côte pour pouvoir taper « </ » et « /> » en plus de « // » « << » et « >> ». | ||
« \ » est dupliqué sur la ligne du bas, à côté de / pour le regroupement et en majuscule sur la touche « à » en bépo pour les clavier 104 touche | « \ » est dupliqué sur la ligne du bas, à côté de / pour le regroupement et en majuscule sur la touche « à » en bépo pour les clavier 104 touche | ||
« / » est encore dupliqué pour avoir « ~/ ». | « / » est encore dupliqué pour avoir « ~/ ». | ||
Ligne 110 : | Ligne 235 : | ||
Ajout grâce au mode programmeur : | Ajout grâce au mode programmeur : | ||
Tous les digrammes de la section [[http://bepo.fr/wiki/Groupe_de_caract%C3%A8res_et_accessibilit.%C3%A9#Programmation_et_code|Programmation_et_code]] sont facilement accessible (très proche géographiquement, souvent côte à côte) et sont sur la même couche. Seul « }- » et « -{ » ne sont pas sur la même main. | |||
Les caractères | Les caractères accentués disparaissent. | ||
L’apostrophe droite échange sa place avec l’apostrophe courbe pour passer en accès direct et le ^ devient le caractère ASCII et échange sa place en level5 avec le ^ mort | L’apostrophe droite échange sa place avec l’apostrophe courbe pour passer en accès direct et le ^ devient le caractère ASCII et échange sa place en level5 avec le ^ mort. | ||
« = » apparait en level5 pour les digrammes « -> » « => » « <= » | « = » apparait en level5 pour les digrammes « -> » « => » « <= ». | ||
« \ » et « / » passe en accès direct | « \ » et « / » passe en accès direct. | ||
Duplication des parenthèses en couche symbole (pour « ); » et la logique générale | Duplication des parenthèses en couche symbole (pour « ); » et la logique générale. | ||
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ||
│ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | ||
Ligne 136 : | Ligne 261 : | ||
===Le pavé numérique en altgr (proche de la dispo de [[Utilisateur:Lawrent|Lawrent]])=== | ===Le pavé numérique en altgr (proche de la dispo de [[Utilisateur:Lawrent|Lawrent]])=== | ||
Les chiffres sont en altgr | Les chiffres sont en altgr. | ||
Quelques | Quelques caractères spéciaux sont placés à gauche (avec leur majuscules). | ||
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 | En revanche avoir un pavé numérique sur la ligne de repos c’est top. | ||
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ||
│ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | ||
Ligne 164 : | Ligne 289 : | ||
Les 32 symboles de prog ~`!@#$%^&*()-_+={}[]:;'"|/\<>,.? | Les 32 symboles de prog ~`!@#$%^&*()-_+={}[]:;'"|/\<>,.? | ||
Minimisation de l’utilisation de la ligne du bas et des chiffres. | |||
Pour les symboles ascii la disposition programmeur est plus | Pour les symboles ascii la disposition programmeur est plus adaptée. | ||
Nb : « / » et « * » sont dupliqué du pavé numérique (à droite) | Nb : « / » et « * » sont dupliqué du pavé numérique (à droite). | ||
Les symboles sont en level5. Leur disposition | Les symboles sont en level5. Leur disposition a été pensé au niveau mnémotechnique. Pour la programmation, cf mode programmeur ci-dessous. | ||
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ||
│ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | ||
Ligne 190 : | Ligne 315 : | ||
Pour plus de détails, cf [https:http://forum.bepo.fr/viewtopic.php?pid=6947#p6947]. | 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). | Les lettres sont rappelées pour information (les touches directionnelles sont au même endroit que dans vim). | ||
Je pense rajouter | Je pense rajouter d’autres trucs… | ||
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ||
│in │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | │in │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | ||
Ligne 210 : | Ligne 335 : | ||
=== Accent en level5 + maj | === Accent en level5 + maj | ||
J’ai essayé d’avoir soi le | J’ai essayé d’avoir soi le même placement qu’en bépo, soit proche proche de la forme du symbole. | ||
┌────┬────┬────┬────╔════╦════╦════╦════╦════╗────┬────┬────┬────╔════════╗ | ┌────┬────┬────┬────╔════╦════╦════╦════╦════╗────┬────┬────┬────╔════════╗ | ||
│ € | │ € │smiley │ ║ ║ ║clic║ ║ ║ │ │ │ ║ ║ € dead_currency smiley : touche morte utilisé pour mes smileys | ||
│ α │maths │ ║ctrl║alt ║droit alt║ctrl║ │ │ │ ║compose ║ α dead_greek maths : touche morte utilisé pour mes symboles mathématiques | │ α │maths │ ║ctrl║alt ║droit alt║ctrl║ │ │ │ ║compose ║ α dead_greek maths : touche morte utilisé pour mes symboles mathématiques | ||
╔═══════╗─┴──┬─┴──┬─╚════╩════╩════╩════╩════╝──┬─┴──┬─┴──┬─┴──╔═╩══╦═════╣ | ╔═══════╗─┴──┬─┴──┬─╚════╩════╩════╩════╩════╝──┬─┴──┬─┴──┬─┴──╔═╩══╦═════╣ | ||
║ ║ │ é │ ~ │ o │ ê │ ^ │ v │ │ l │ │ ║ ║ ║ | ║ ║ │ é │ ~ │ o │ ê │ ^ │ v │ │ l │ │ ║ ║ ║ | ||
║tab ║ │ ´ │ ~ │ ° │ ` │ ^ │ ˇ │ │ / │ │ ║tab ║ ║ | |||
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╦═══╚╗ ║ | ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╦═══╚╗ ║ | ||
║ ║ │ u │ i │ │ ’ │ c │ " │ │ │ │ m ║ ║ ║ | ║ ║ │ u │ i │ │ ’ │ c │ " │ │ │ │ m ║ ║ ║ | ||
Ligne 227 : | Ligne 352 : | ||
║ win ║fn ║lay ║maj ║ ║maj ║lay ║ win║ | ║ win ║fn ║lay ║maj ║ ║maj ║lay ║ win║ | ||
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝ | ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝ | ||
=== Dispo complète === | === Dispo complète === | ||
Là c’est le moment qui fait peur ^^ | Là c’est le moment qui fait peur ^^ | ||
normal | normal | ||
┌────────┬────────┬────────┬────────╔════════╦════════╦════════╦════════╦════════╗────────┬────────┬────────┬────────╔════════════════╗ | ┌────────┬────────┬────────┬────────╔════════╦════════╦════════╦════════╦════════╗────────┬────────┬────────┬────────╔════════════════╗ | ||
│ | │ monnaie │ smiley│ « │ » ║ ║ ║ ║ ║ ║ W │ K │ │ ║ ║ | ||
│ grec │ maths │ ( “ │ ) ” ║ ctrl║ alt ║ menu ║ alt║ ctrl║ w │ k │ insert │ suppr ║ compose ║ | │ grec │ maths │ ( “ │ ) ” ║ ctrl║ alt ║ menu ║ alt║ ctrl║ w │ k │ insert │ suppr ║ compose ║ | ||
╔══════════════╗──┴─────┬──┴─────┬──╚════════╩════════╩════════╩════════╩════════╝─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣ | ╔══════════════╗──┴─────┬──┴─────┬──╚════════╩════════╩════════╩════════╩════════╝─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣ | ||
Ligne 240 : | Ligne 365 : | ||
╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗ ║ | ╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗ ║ | ||
║ ║ A À │ U Ù │ E Ê │ I Ï │ │ C Ç │ T A │ S B │ R C │ N D │ M │ ║ ║ | ║ ║ A À │ U Ù │ E Ê │ I Ï │ │ C Ç │ T A │ S B │ R C │ N D │ M │ ║ ║ | ||
║ altgr ║ a à @ │ u ù { │ e ê & │ i ï } | ║ altgr ║ a à @ │ u ù { │ e ê & │ i ï } │backspace│c ç ` │ t 0 " │ s 1 $ │ r 2 [ │ n 3 ] │ m 4 º │ altgr ║ ║ | ||
╠═══════════╦════╝───┬────┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴───┬────┴───╔═════════════╩════════╣ | ╠═══════════╦════╝───┬────┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴───┬────┴───╔═════════════╩════════╣ | ||
║ ║ Ê │ È Æ \ │ Y │ X │ ! ¡ │ — │ ? ¿ │ Q │ G │ H │ F ║ ║ | ║ ║ Ê │ È Æ \ │ Y │ X │ ! ¡ │ — │ ? ¿ │ Q │ G │ H │ F ║ ║ | ||
Ligne 251 : | Ligne 376 : | ||
programmeur | programmeur | ||
┌────────┬────────┬────────┬────────╔════════╦════════╦════════╦════════╦════════╗────────┬────────┬────────┬────────╔════════════════╗ | ┌────────┬────────┬────────┬────────╔════════╦════════╦════════╦════════╦════════╗────────┬────────┬────────┬────────╔════════════════╗ | ||
│ | │ monnaie │ smiley│ « │ » ║ ║ ║ ║ ║ ║ W │ K │ │ ║ ║ | ||
│ grec │ maths │ ( │ ) ║ ctrl║ alt ║ menu ║ alt║ ctrl║ w │ k │ insert │ suppr ║ compose ║ | │ grec │ maths │ ( │ ) ║ ctrl║ alt ║ menu ║ alt║ ctrl║ w │ k │ insert │ suppr ║ compose ║ | ||
╔══════════════╗──┴─────┬──┴─────┬──╚════════╩════════╩════════╩════════╩════════╝─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣ | ╔══════════════╗──┴─────┬──┴─────┬──╚════════╩════════╩════════╩════════╩════════╝─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣ | ||
Ligne 258 : | Ligne 383 : | ||
╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗ ║ | ╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗ ║ | ||
║ ║ A À │ U Ù │ E Ê │ I Ï │ │ C Ç │ T A │ S B │ R C │ N D │ M │ ║ ║ | ║ ║ A À │ U Ù │ E Ê │ I Ï │ │ C Ç │ T A │ S B │ R C │ N D │ M │ ║ ║ | ||
║ altgr ║ a à @ │ u ù { │ e ê & │ i ï } | ║ altgr ║ a à @ │ u ù { │ e ê & │ i ï } │backspace│c ç ` │ t 0 " │ s 1 $ │ r 2 [ │ n 3 ] │ m 4 º │ altgr ║ ║ | ||
╠═══════════╦════╝───┬────┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴───┬────┴───╔═════════════╩════════╣ | ╠═══════════╦════╝───┬────┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴───┬────┴───╔═════════════╩════════╣ | ||
║ ║ Ê │ \ æ \ │ Y │ X │ ! ¡ │ — │ ? ¿ │ Q │ G │ H │ F ║ ║ | ║ ║ Ê │ \ æ \ │ Y │ X │ ! ¡ │ — │ ? ¿ │ Q │ G │ H │ F ║ ║ | ||
Ligne 271 : | Ligne 396 : | ||
* Les gros plus : | * Les gros plus : | ||
**les chiffres en main droite sont hyper accessibles. | **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) | **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 | **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 touches directionnelles à la vim. | ||
* Les plus | * Les plus | ||
**le trait d’union très accessible | **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) | **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 | **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 | **( et ) très accessible. | ||
**forte décharge des petits doigts pour les modificateurs | **forte décharge des petits doigts pour les modificateurs. | ||
**Les paumes de mains ne bougent quasiment pas, même pour les modificateurs. | **Les paumes de mains ne bougent quasiment pas, même pour les modificateurs. | ||
*But : | *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) | **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 | **symétriser altgr. | ||
**avoir les symboles de prog plus accessible (donc pas la lignes des chiffres) | **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 …) | **avoir les modificateurs et touches spéciale plus accessible (ctrl maj retour …). | ||
**diminuer l’utilisation de la ligne du haut pour les symboles | **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) | **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. | **’ et ' sur la même touche avec ’ en accès direct. | ||
**- en accès direct pour le trait d’union | **- en accès direct pour le trait d’union. | ||
**— (emdash) à côté de la barre espace | **— (emdash) à côté de la barre espace. | ||
**compose | **compose | ||
**quelques symboles pour la prise de notes ≃∞↪→⇒⇔← | **quelques symboles pour la prise de notes ≃∞↪→⇒⇔← | ||
Ligne 299 : | Ligne 424 : | ||
*But secondaires : | *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’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 de reprendre les bonnes idées des modifications persos et de tester un max de | **J’essaye d’avoir de reprendre les bonnes idées des modifications persos et de tester un max de trucs. | ||
*Nb : | *Nb : | ||
Ligne 310 : | Ligne 435 : | ||
/!\ Mon fichier est très mal écris. Je le mettrais au propre quand ma disposition sera stable. | /!\ 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 | /!\ 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. | ||
/!\ certaines modification mineures peuvent différer des explications | /!\ certaines modification mineures peuvent différer des explications précédentes. | ||
<source lang="text"> | <source lang="text"> | ||
partial alphanumeric_keys | |||
xkb_symbols "jeop_actual" { | |||
include"fr(bepo_latin9)" | |||
include"fr(jeop)" | |||
include"fr(jeop_programmeur)" | |||
// | |||
}; | |||
partial alphanumeric_keys | partial alphanumeric_keys | ||
xkb_symbols " | xkb_symbols "jeop" { | ||
include "keypad(oss)" | |||
name[Group1]= "French (JEPO, ergonomic, Dvorak way)"; | |||
name[Group2]= "French (JEPO programmeur, ergonomic, Dvorak way)"; | |||
key.type[Group1] = "EIGHT_LEVEL"; | |||
key.type[Group2] = "EIGHT_LEVEL"; | |||
key <LFSH> { [ ISO_Level5_Shift, ISO_Level5_Shift,ISO_Level5_Shift, ISO_Level5_Shift, ISO_Prev_Group ] }; | |||
key <RTSH> { [ ISO_Level5_Shift, ISO_Level5_Shift,ISO_Level5_Shift, ISO_Level5_Shift, ISO_Next_Group ] }; | |||
key.type[Group1] = "ONE_LEVEL"; | |||
key.type[Group2] = "ONE_LEVEL"; | |||
key <ESC> { [ Escape ] }; | |||
key <LCTL> { [ Super_L ] }; | |||
key <RCTL> { [ Super_R ] }; | |||
key <TAB> {[ Tab,ISO_Left_Tab ] }; | |||
key <RWIN> { [ VoidSymbol ] }; | |||
key <LWIN> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] }; | |||
key <MENU> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] }; | |||
key.type[Group1] = "TWO_LEVEL"; | |||
key.type[Group2] = "TWO_LEVEL"; | |||
key <LALT> { [ Shift_L, Shift_Lock ] }; | |||
key <RALT> { [ Shift_R, Shift_Lock ] }; | |||
key <AD12> { [ Tab, ISO_Left_Tab ] }; | |||
key.type[Group1] = "FOUR_LEVEL"; | |||
key.type[Group2] = "FOUR_LEVEL"; | |||
key <BKSP> { [ BackSpace, 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] = "EIGHT_LEVEL"; | |||
key.type[Group2] = "EIGHT_LEVEL"; | |||
key <SPCE> { [ space, nobreakspace, underscore, U202F, underscore, underscore ] }; | |||
key <AC05> { [ BackSpace, Return, Multi_key, Multi_key, KP_Delete, KP_Delete ], | |||
[ BackSpace, Return, Multi_key, Multi_key, KP_Delete, KP_Delete ], overlay1 = <DELE> }; | |||
key.type[Group1] = "ONE_LEVEL"; | |||
key.type[Group2] = "ONE_LEVEL"; | |||
key <AE04> { [ Control_L ] }; | |||
key <AE05> { [ Alt_L ] }; | |||
key <AE06> { [ Menu ] }; | |||
key <AE07> { [ Alt_R ] }; | |||
key <AE08> { [ Control_R ] }; | |||
// level modifier | |||
// modifier_map Mod1 { <LALT> }; | |||
// modifier_map Mod1 { <RALT> }; | // modifier_map Mod1 { <RALT> }; | ||
// modifier_map Mod2 { <CAPS> }; | |||
// modifier_map Mod2 { <BKSL> }; | |||
modifier_map Mod2 { ISO_Level3_Shift }; | |||
modifier_map Mod3 { ISO_Level5_Shift }; | |||
modifier_map Mod5 { ISO_Next_Group_Lock }; | |||
// First row | |||
key.type[Group1] = "TWO_LEVEL"; | |||
key.type[Group2] = "TWO_LEVEL"; | |||
key <TLDE> {[ dead_greek,dead_currency ], overlay1 = <INS> }; | |||
key <AE01> {[ UF0000, UFF000 ] }; // dead_mathematique and dead_smyley | |||
key.type[Group1] = "ONE_LEVEL"; | |||
key.type[Group2] = "ONE_LEVEL"; | |||
key <AE11> { [ Insert ] }; | |||
key <AE12> { [ Delete ] }; | |||
key.type[Group1] = "EIGHT_LEVEL"; | |||
key.type[Group2] = "EIGHT_LEVEL"; | |||
key <AE02> {[ parenleft, guillemotleft,leftdoublequotemark, VoidSymbol, VoidSymbol, VoidSymbol ]}; | |||
key <AE03> {[ parenright, guillemotright,rightdoublequotemark, VoidSymbol, VoidSymbol, VoidSymbol ]}; | |||
key <AE09> {[ w, W, minutes, VoidSymbol, VoidSymbol, VoidSymbol ]}; | |||
key <AE10> {[ k, K, seconds, VoidSymbol, VoidSymbol, VoidSymbol ]}; | |||
// Second row | |||
key <AD01> {[ j, J, VoidSymbol, VoidSymbol, slash, VoidSymbol ]}; | |||
key <AD02> {[ eacute, Eacute, oe, OE, asciitilde, dead_tilde ]}; | |||
key <AD03> {[ o, O, ocircumflex, Ocircumflex, colon, dead_abovering ]}; | |||
key <AD04> {[ p, P, paragraph, VoidSymbol, semicolon, VoidSymbol ],overlay1=<AD12>}; | |||
key <AD05> {[rightsinglequotemark, leftsinglequotemark, VoidSymbol, VoidSymbol, apostrophe, dead_horn ]}; | |||
key <AD06> {[ dead_circumflex, VoidSymbol, VoidSymbol, VoidSymbol, asciicircum,dead_circumflex ],overlay1=<AB03>}; | |||
key <AD07> {[ v, V, 5, E, percent, dead_caron ],overlay1=<AC06>}; | |||
key <AD08> {[ d, D, 6, F, numbersign, VoidSymbol ],overlay1=<PGUP>}; | |||
key <AD09> {[ l, L, 7, VoidSymbol, bar, dead_stroke ],overlay1=<PGDN>}; | |||
key <AD10> {[ b, B, 8, VoidSymbol, degree, VoidSymbol ],overlay1=<AE09>}; | |||
key <AD11> {[ z, Z, 9, VoidSymbol, VoidSymbol, VoidSymbol ]}; | |||
// Third row | |||
key <AC01> {[ a, A, agrave, Agrave, at, VoidSymbol ],overlay1=<AE04>}; | |||
key <AC02> {[ u, U, ugrave, Ugrave, braceleft, dead_breve ],overlay1=<AE07>}; | |||
key <AC03> {[ e, E, ecircumflex, Ecircumflex, ampersand, VoidSymbol ],overlay1=<AE12>}; | |||
key <AC04> {[ i, I, idiaeresis, Idiaeresis, braceright, dead_diaeresis ],overlay1=<RALT>}; | |||
key <AC06> {[ c, C, ccedilla, Ccedilla, grave, dead_cedilla ],overlay1=<LEFT>}; | |||
key <AC07> {[ t, T, 0, A, quotedbl,ead_doubleacute ],overlay1=<DOWN>}; | |||
key <AC08> {[ s, S, 1, B, dollar, VoidSymbol ],overlay1=<UP> }; | |||
key <AC09> {[ r, R, 2, C, bracketleft, VoidSymbol ],overlay1=<RGHT>}; | |||
key <AC10> {[ n, N, 3, D,bracketright, VoidSymbol ],overlay1=<HOME>}; | |||
key <AC11> {[ m, M, 4, VoidSymbol, masculine, dead_macron ],overlay1=<END> }; | |||
// Fourth ro | |||
key < | key <LSGT> {[ ecircumflex, Ecircumflex, VoidSymbol, VoidSymbol, backslash, VoidSymbol ]}; | ||
key <AB01> {[ egrave, Egrave, ae, AE, slash, backslash ],overlay1=<FK11>}; | |||
key <AB02> {[ y, Y, lessthanequal, VoidSymbol, less, VoidSymbol ],overlay1=<FK05>}; | |||
key <AB03> {[ x, X,greaterthanequal, VoidSymbol, greater, VoidSymbol ],overlay1=<FK04>}; | |||
key <AB04> {[ period, exclam, ellipsis, exclamdown, equal, dead_abovedot ], overlay1=<FK02>}; | |||
key <AB05> {[ minus, emdash, endash, VoidSymbol, Escape, VoidSymbol ]}; | |||
key <AB06> {[ comma, question, equal, questiondown, VoidSymbol,dead_belowcomma ]}; | |||
key <AB07> {[ q, Q, slash, VoidSymbol, slash, dead_belowdot ]}; | |||
key <AB08> {[ g, G, asterisk, VoidSymbol, asterisk, VoidSymbol ]}; | |||
key <AB09> {[ h, H, minus, VoidSymbol, minus, dead_hook ]}; | |||
key <AB10> {[ f, F, plus, feminine, plus, dead_ogonek ]}; | |||
}; | |||
partial alphanumeric_keys | |||
xkb_symbols "jeop_programmeur" { | |||
key.type[Group2] = "EIGHT_LEVEL"; | |||
//key <CAPS> { [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Prev_Group ], overlay1 = <ESC> }; | |||
//key <BKSL> { [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Next_Group ], overlay1 = <ESC> }; | |||
//key <LFSH> { [ ISO_Level3_Shift, ISO_Level3_Shift, ISO_Level3_Lock, ISO_Level3_Lock ] }; | |||
//key <RTSH> { [ ISO_Level3_Shift, ISO_Level3_Shift, ISO_Level3_Lock, ISO_Level3_Lock ] }; | |||
key <SPCE> { [ space, Escape, underscore, U202F, underscore, underscore ] }; | |||
key.type[Group2] = "EIGHT_LEVEL"; | |||
key <AD02> { [], [ Escape, Eacute, oe, OE, asciitilde, dead_tilde ],overlay1=<LWIN>}; | |||
key <AD05> { [], [ apostrophe, leftsinglequotemark, VoidSymbol, VoidSymbol, rightsinglequotemark,dead_grave ]}; | |||
key <AD06> { [], [ asciicircum, dead_caron, comma, VoidSymbol, dead_circumflex, VoidSymbol ], overlay1 = <AB03> }; | |||
key <LSGT> { [], [ backslash, VoidSymbol, VoidSymbol, VoidSymbol, ecircumflex, Ecircumflex ] }; | |||
key <AB01> { [], [ slash, backslash, ae, AE, equal, VoidSymbol ], overlay1 = <FK11> }; | |||
key <AB02> { [], [ y, Y, lessthanequal, VoidSymbol, less, VoidSymbol ],overlay1=<FK05>}; | |||
key <AB03> { [], [ x, X,greaterthanequal, VoidSymbol, greater, VoidSymbol ],overlay1=<FK04>}; | |||
}; | }; | ||
</source> | </source> | ||
Ligne 514 : | Ligne 684 : | ||
<Multi_key> <Multi_key> <e> <slash> <e> : "∉"#NOT AN ELEMENT OF | <Multi_key> <Multi_key> <e> <slash> <e> : "∉"#NOT AN ELEMENT OF | ||
</source> | </source> | ||
* un clavier vierge à copier-coller | == Divers == | ||
* un clavier vierge à copier-coller | |||
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ | ||
│ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ | ||
Ligne 533 : | Ligne 704 : | ||
║ ║ ║ ║ ║ ║ ║ ║ ║ | ║ ║ ║ ║ ║ ║ ║ ║ ║ | ||
╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝ | ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝ | ||
==Moi !== | ==Moi !== | ||
20 | 20 ans — en 2eme année en dut geii (électronique) — programme en c++ pour le plaisir — le reste ne vous regarde pas ! |
Dernière version du 13 février 2015 à 23:14
Création d'un prototype de clavier
Je suis actuellement en train de me fabriquer mon propre clavier (l'objet). Vous pourrez suivre :
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.
===Semaine 12 Passage de la barre des 50 MPM ! (mais avec une précision pourri, 94%)
Je viens de faire pour la première fois depuis longtemps (à cause de mes modifications sur le bépo) un 100% de précision avec tazzon, mais pas de pot, la lettre suivante était un d, et vu que j’utilise vimpérator, ça m’a fermé mon onglet. Je suis très triste. C’était environ 45MPM.
===Semaine 15 Premier score sur tazzon avec tout en vert : précision, vitesse et fluidité. Juste pour m’en souvenir : Temps : 1 min. 54,0 s Vous avez fait 8 erreurs (10 fautes de frappe). Précision : 98 % Coups par seconde : 4.39 (263 coups/min.) Mots par minute : 52.7 Fluidité : 75.28 %
Sans erreurs, vous auriez pu atteindre 54.8 mots par minute. Temps perdu en erreurs : 0 min. 4,4 s soit 3.9%
Félicitations ! Votre précision est excellente. Félicitations ! Votre vitesse de frappe est excellente.
version modifié du bépo : Chiffres en accès direct
J'ai fait pas mal de test sur la dispo bépo depuis environ 2 an. Voici ma disposition actuelle, à ajouter dans le fichier
/usr/share/X11/xkb/symbols/perso
/!\ Suite à des perso de travail du à une mise à jour, je ne met plus mon travail dans /usr/share/X11/xkb/symbols/fr, mais dans un fichier séparé.
partial alphanumeric_keys xkb_symbols "overlay" { key <PRSC> { type[group1] = "ONE_LEVEL", [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] }; // NB: ma touche PRSC (capture d'écran) est situé à droite de ma touche RALT sur mon clavier. key <AC02> {overlay1=<LEFT>}; key <AC03> {overlay1=<DOWN>}; key <AD03> {overlay1=<UP> }; key <AC04> {overlay1=<RGHT>}; key <AD02> {overlay1=<HOME>}; key <AD04> {overlay1=<END> }; }; partial alphanumeric_keys xkb_symbols "bepo_invert_number" { // First row key <AE01> { [ 1, quotedbl ] }; key <AE02> { [ 2, guillemotleft ] }; key <AE03> { [ 3, guillemotright ] }; key <AE04> { [ 4, parenleft ] }; key <AE05> { [ 5, parenright ] }; key <AE06> { [ 6, at ] }; key <AE07> { [ 7, plus ] }; key <AE08> { [ 8, minus ] }; key <AE09> { [ 9, slash ] }; key <AE10> { [ 0, asterisk ] }; }; partial alphanumeric_keys xkb_symbols "deplace_modificateur" {
include "keypad(oss)"
key <CAPS> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ISO_Level3_Shift, Caps_Lock, ISO_Level3_Lock, ISO_Level3_Lock ] }; key <RALT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ISO_Level3_Shift, ISO_Level3_Shift, ISO_Level3_Lock ] }; key <LALT> { [ Shift_L, Shift_Lock ] }; key <LFSH> { type[group1] = "ONE_LEVEL", [ Alt_L ] }; key <RTSH> { type[group1] = "ONE_LEVEL", [ Alt_L ] }; modifier_map Shift { Shift_L, Shift_R }; 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 }; partial alphanumeric_keys xkb_symbols "bepo_perso" { include "keypad(oss)" include "fr(bepo)" include "perso(overlay)" include "perso(bepo_invert_number)" include "perso(deplace_modificateur)" name[Group1]= "French (Bepo, ergonomic, Dvorak way, number with direct access)"; // duplication des signes utiles en altgr main-droite key <AD07> { [ v, V, parenleft ] }; // v V ˇ key <AD08> { [ d, D, parenright, ETH ] }; // d D ð Ð key <AD09> { [ l, L, bracketleft ] }; // l L / key <AD10> { [ j, J, bracketright, U0132 ] }; // j J ij IJ key <AC07> { [ t, T, plus, less ] }; // t T þ Þ key <AC08> { [ s, S, minus, greater ] }; // s S ß ẞ key <AC09> { [ r, R, slash, trademark ] }; // r R ® ™ key <AC10> { [ n, N, asterisk ] }; // n N ~ };
Ce n'est pas parfait (certain caractères étrangers deviennent innacéssible), et c'est surtout un test de plus, mais en voici les caractèristiques principales :
- Chiffres en accès direct sur la lignes des chiffres
- Les symboles de la ligne des chiffres sont dupliqués en altgr main droite.
- La touche caps-lock sert de altgr (pour la main droite).
De plus
- La touche Alt_L me sert de touche majuscule et les touches Shift sont devenues des touches Alt
Comme ça les chiffres sont très simples d'accès, je ne bouge quasiment plus mes mains de la lignes de repos et je me sert un peu plus de mes pouces !
Utilisation :
$ setxkbmap perso bepo_perso
version modifié du bépo : le jéop
J'ai laissé la fin de page à des fin d'historique, mais je n'utilise actuellement plus cette disposition.
Pour l’instant, je modifie encore mon clavier, mais dans l’ensemble, je suis assez contant du résultat. Les trucs susceptible de changer (dû aux plus récents changements) sont :
- Le caractère « à »
- La couche ASCII
Les lettres (avec les maj évidements)
Comme Laurent (béop) j’ai fait l’inversion « op » et « ei ». Ce n’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 ║ backspace en accès direct, enter en maj, 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
Mode programmeur
Mode programmeur accessible à l’aide d’un basculement qui a lieu quand on enfonce les deux touches level5 en même temps. Seuls les changements sur la couche 5 sont notés pour alléger la présentation. Motivation du placement (commun au mode classique) : « / » « * » et « : » sont côtes à côte pour les digrammes « /* » « */ » et « :/ ». « / » « < » « > » sont côte à côte pour pouvoir taper « </ » et « /> » en plus de « // » « << » et « >> ». « \ » est dupliqué sur la ligne du bas, à côté de / pour le regroupement et en majuscule sur la touche « à » en bépo pour les clavier 104 touche « / » est encore dupliqué pour avoir « ~/ ». nb : l’idée de Lawrent d’avoir « + » sur la même touche que « i » et « - » sur le « u » n’est pas pratique en réalités.
Ajout grâce au mode programmeur : Tous les digrammes de la section [[1]] sont facilement accessible (très proche géographiquement, souvent côte à côte) et sont sur la même couche. Seul « }- » et « -{ » ne sont pas sur la même main. Les caractères accentués disparaissent. L’apostrophe droite échange sa place avec l’apostrophe courbe pour passer en accès direct et le ^ devient le caractère ASCII et échange sa place en level5 avec le ^ mort. « = » apparait en level5 pour les digrammes « -> » « => » « <= ». « \ » et « / » passe en accès direct. Duplication des parenthèses en couche symbole (pour « ); » et la logique générale.
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ │ │ │ (│ )│ │ │ │ │ │ │ │ │ ║ ║ ╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣ ║ ║ │ │ │ │ ’ │ ^ │ │ │ │ │ │ ║ ║ ^ symbole ascii ║ ║ │ │ │ │ ' │ ^ │ │ │ │ │ │ ║ ║ ^ touche morte ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗ ║ ║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣ ║ ║ │ = │ < │ > │ │ │ │ │ │ │ ║ ║ ║level5║ \ │ / │ │ │ │ │ │ │ │ │ ║ level5 ║ ╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝
Le pavé numérique en altgr (proche de la dispo de Lawrent)
Les chiffres sont en altgr. Quelques caractères spéciaux sont placés à gauche (avec leur majuscules).
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 des chiffres. Pour les symboles ascii la disposition programmeur est plus adaptée. Nb : « / » et « * » sont dupliqué du pavé numérique (à droite).
Les symboles sont en level5. Leur disposition a été pensé au niveau mnémotechnique. Pour la programmation, cf mode programmeur ci-dessous.
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣ ║ ║ │ │ │ │ ’ │ ^ │ │ d │ l│ │ │ ║ ║ ^ symbole ascii ║ ║ / │ ~ │ : │ ; │ ' │ ^ │ % │ # │ |│ ° │ │ ║ ║ ^ touche morte ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗ ║ ║ ║ a │ │ e │ │ │ │ │ s │ │ │ │ ║ ║ ║ ║ @ │ { │ & │ } │ ' │ ` │ " │ $ │ [ │ ] │ º │ ║ ║ º masculine ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣ ║ ║ │ \ │ │ │ │ │ │ │ │ │ ║ ║ \ en majuscule (meilleur dispo en mode programmeur) ║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’autres trucs…
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ │in │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ │sert│ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣ ║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ║ ║ │ │ │ │ │ │ │ ↓│ ↑│ │ │ ║ ║ ↓ et ↑ page up/down ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗ ║ ║ ║ │ │ │ │ │ c│ t│ s│ r│ n│ m│ ║ ║ ║échap ║ │ │ │ │ │ ←│ ↓│ ↑│ →│ ↖│ fin│échap║ ║ ↖ origin ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣ ║ ║ │ │ │ │ │ │ │ │ │ │ ║ ║ ║ ║ │ │ │ │ │ │ │ │ │ │ ║ ║ ╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝ ║ ║ ║over║ ║ ║ ║over║ ║ ║ ║ ║lay ║ ║ ║ ║lay ║ ║ ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝
=== Accent en level5 + maj
J’ai essayé d’avoir soi le même placement qu’en bépo, soit proche proche de la forme du symbole. ┌────┬────┬────┬────╔════╦════╦════╦════╦════╗────┬────┬────┬────╔════════╗ │ € │smiley │ ║ ║ ║clic║ ║ ║ │ │ │ ║ ║ € dead_currency smiley : touche morte utilisé pour mes smileys │ α │maths │ ║ctrl║alt ║droit alt║ctrl║ │ │ │ ║compose ║ α dead_greek maths : touche morte utilisé pour mes symboles mathématiques ╔═══════╗─┴──┬─┴──┬─╚════╩════╩════╩════╩════╝──┬─┴──┬─┴──┬─┴──╔═╩══╦═════╣ ║ ║ │ é │ ~ │ o │ ê │ ^ │ v │ │ l │ │ ║ ║ ║ ║tab ║ │ ´ │ ~ │ ° │ ` │ ^ │ ˇ │ │ / │ │ ║tab ║ ║ ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╦═══╚╗ ║ ║ ║ │ u │ i │ │ ’ │ c │ " │ │ │ │ m ║ ║ ║ ║altgr ║ │ ˘ │ ¨ │ │ ̛ │ ¸ │ ˝ │ │ │ │ ¯ ║altgr ║ ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╩════╩════╣ ║ ║ │ │ │ │ . │ │ , │ │ │ h │ f ║ ║ ║level5║ │ │ │ │ ˙ │ │ , │ │ │ ̉ │ ˛ ║ level5 ║ ╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝ ║ ║ ║over║ ║ ║ ║over║ ║ ║ win ║fn ║lay ║maj ║ ║maj ║lay ║ win║ ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝
Dispo complète
Là c’est le moment qui fait peur ^^
normal ┌────────┬────────┬────────┬────────╔════════╦════════╦════════╦════════╦════════╗────────┬────────┬────────┬────────╔════════════════╗ │ monnaie │ smiley│ « │ » ║ ║ ║ ║ ║ ║ W │ K │ │ ║ ║ │ grec │ maths │ ( “ │ ) ” ║ ctrl║ alt ║ menu ║ alt║ ctrl║ w │ k │ insert │ suppr ║ compose ║ ╔══════════════╗──┴─────┬──┴─────┬──╚════════╩════════╩════════╩════════╩════════╝─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣ ║ ║ J │ É Œ ~ │ O Ô │ p │ ‘ │ ˇ │ V E │ D F │ L │ B │ Z │ ║ ║ ║ tabulation ║ j / │ é œ ~ │ o ô : │ p ¶ ; │ ’ ' │ ^ ^ │ v 5 % │ d 6 # │ l 7 | │ b 8 ° │ z 9 │ tab ║ ║ ╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗ ║ ║ ║ A À │ U Ù │ E Ê │ I Ï │ │ C Ç │ T A │ S B │ R C │ N D │ M │ ║ ║ ║ altgr ║ a à @ │ u ù { │ e ê & │ i ï } │backspace│c ç ` │ t 0 " │ s 1 $ │ r 2 [ │ n 3 ] │ m 4 º │ altgr ║ ║ ╠═══════════╦════╝───┬────┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴───┬────┴───╔═════════════╩════════╣ ║ ║ Ê │ È Æ \ │ Y │ X │ ! ¡ │ — │ ? ¿ │ Q │ G │ H │ F ║ ║ ║ level5 ║ è \ │ ê æ / │ y ≤ < │ x ≥ > │ . … │ - – Esc│ , = │ q / / │ g * * │ h - │ f + ║ level5 ║ ╠═══════════╬════════╦════════╦════════╦════════════════════════════════════════════╦════════╦════════╦════════╬══════════════════════╝ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ win ║ fn ║overlay ║ maj ║ ║ maj ║overlay ║ win ║ ╚═══════════╩════════╩════════╩════════╩════════════════════════════════════════════╩════════╩════════╩════════╝
programmeur ┌────────┬────────┬────────┬────────╔════════╦════════╦════════╦════════╦════════╗────────┬────────┬────────┬────────╔════════════════╗ │ monnaie │ smiley│ « │ » ║ ║ ║ ║ ║ ║ W │ K │ │ ║ ║ │ grec │ maths │ ( │ ) ║ ctrl║ alt ║ menu ║ alt║ ctrl║ w │ k │ insert │ suppr ║ compose ║ ╔══════════════╗──┴─────┬──┴─────┬──╚════════╩════════╩════════╩════════╩════════╝─────┬──┴─────┬──┴─────┬──┴─────┬──╚═════╦══════════╣ ║ ║ J │ É ~ │ O Œ │ p │ ‘ │ ˇ │ V E │ D F │ L │ B │ Z │ ║ ║ ║ tabulation ║ j / │ échap │ o œ : │ p ¶ ; │ ' ’ │ ^ ^ │ v 5 % │ d 6 # │ l 7 | │ b 8 ° │ z 9 │ tab ║ ║ ╠══════════════╩═╗──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────╚═╗ ║ ║ ║ A À │ U Ù │ E Ê │ I Ï │ │ C Ç │ T A │ S B │ R C │ N D │ M │ ║ ║ ║ altgr ║ a à @ │ u ù { │ e ê & │ i ï } │backspace│c ç ` │ t 0 " │ s 1 $ │ r 2 [ │ n 3 ] │ m 4 º │ altgr ║ ║ ╠═══════════╦════╝───┬────┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴──════──┴───┬────┴───┬────┴───┬────┴───╔═════════════╩════════╣ ║ ║ Ê │ \ æ \ │ Y │ X │ ! ¡ │ — │ ? ¿ │ Q │ G │ H │ F ║ ║ ║ level5 ║ \ è │ / Æ / │ y ≤ < │ x ≥ > │ . … │ - – Esc│ , = │ q / / │ g * * │ h - │ f + ª ║ level5 ║ ╠═══════════╬════════╦════════╦════════╦════════════════════════════════════════════╦════════╦════════╦════════╬══════════════════════╝ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ win ║ fn ║overlay ║ maj ║ ║ maj ║overlay ║ win ║ ╚═══════════╩════════╩════════╩════════╩════════════════════════════════════════════╩════════╩════════╩════════╝
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 de reprendre les bonnes idées des modifications persos et de tester un max de trucs.
- 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 :
- mon clavier n’a physiquement pas assez de touches sous les pouces ^^
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. /!\ certaines modification mineures peuvent différer des explications précédentes.
partial alphanumeric_keys
xkb_symbols "jeop_actual" {
include"fr(bepo_latin9)"
include"fr(jeop)"
include"fr(jeop_programmeur)"
//
};
partial alphanumeric_keys
xkb_symbols "jeop" {
include "keypad(oss)"
name[Group1]= "French (JEPO, ergonomic, Dvorak way)";
name[Group2]= "French (JEPO programmeur, ergonomic, Dvorak way)";
key.type[Group1] = "EIGHT_LEVEL";
key.type[Group2] = "EIGHT_LEVEL";
key <LFSH> { [ ISO_Level5_Shift, ISO_Level5_Shift,ISO_Level5_Shift, ISO_Level5_Shift, ISO_Prev_Group ] };
key <RTSH> { [ ISO_Level5_Shift, ISO_Level5_Shift,ISO_Level5_Shift, ISO_Level5_Shift, ISO_Next_Group ] };
key.type[Group1] = "ONE_LEVEL";
key.type[Group2] = "ONE_LEVEL";
key <ESC> { [ Escape ] };
key <LCTL> { [ Super_L ] };
key <RCTL> { [ Super_R ] };
key <TAB> {[ Tab,ISO_Left_Tab ] };
key <RWIN> { [ VoidSymbol ] };
key <LWIN> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] };
key <MENU> { [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] };
key.type[Group1] = "TWO_LEVEL";
key.type[Group2] = "TWO_LEVEL";
key <LALT> { [ Shift_L, Shift_Lock ] };
key <RALT> { [ Shift_R, Shift_Lock ] };
key <AD12> { [ Tab, ISO_Left_Tab ] };
key.type[Group1] = "FOUR_LEVEL";
key.type[Group2] = "FOUR_LEVEL";
key <BKSP> { [ BackSpace, 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] = "EIGHT_LEVEL";
key.type[Group2] = "EIGHT_LEVEL";
key <SPCE> { [ space, nobreakspace, underscore, U202F, underscore, underscore ] };
key <AC05> { [ BackSpace, Return, Multi_key, Multi_key, KP_Delete, KP_Delete ],
[ BackSpace, Return, Multi_key, Multi_key, KP_Delete, KP_Delete ], overlay1 = <DELE> };
key.type[Group1] = "ONE_LEVEL";
key.type[Group2] = "ONE_LEVEL";
key <AE04> { [ Control_L ] };
key <AE05> { [ Alt_L ] };
key <AE06> { [ Menu ] };
key <AE07> { [ Alt_R ] };
key <AE08> { [ Control_R ] };
// level modifier
// modifier_map Mod1 { <LALT> };
// modifier_map Mod1 { <RALT> };
// modifier_map Mod2 { <CAPS> };
// modifier_map Mod2 { <BKSL> };
modifier_map Mod2 { ISO_Level3_Shift };
modifier_map Mod3 { ISO_Level5_Shift };
modifier_map Mod5 { ISO_Next_Group_Lock };
// First row
key.type[Group1] = "TWO_LEVEL";
key.type[Group2] = "TWO_LEVEL";
key <TLDE> {[ dead_greek,dead_currency ], overlay1 = <INS> };
key <AE01> {[ UF0000, UFF000 ] }; // dead_mathematique and dead_smyley
key.type[Group1] = "ONE_LEVEL";
key.type[Group2] = "ONE_LEVEL";
key <AE11> { [ Insert ] };
key <AE12> { [ Delete ] };
key.type[Group1] = "EIGHT_LEVEL";
key.type[Group2] = "EIGHT_LEVEL";
key <AE02> {[ parenleft, guillemotleft,leftdoublequotemark, VoidSymbol, VoidSymbol, VoidSymbol ]};
key <AE03> {[ parenright, guillemotright,rightdoublequotemark, VoidSymbol, VoidSymbol, VoidSymbol ]};
key <AE09> {[ w, W, minutes, VoidSymbol, VoidSymbol, VoidSymbol ]};
key <AE10> {[ k, K, seconds, VoidSymbol, VoidSymbol, VoidSymbol ]};
// Second row
key <AD01> {[ j, J, VoidSymbol, VoidSymbol, slash, VoidSymbol ]};
key <AD02> {[ eacute, Eacute, oe, OE, asciitilde, dead_tilde ]};
key <AD03> {[ o, O, ocircumflex, Ocircumflex, colon, dead_abovering ]};
key <AD04> {[ p, P, paragraph, VoidSymbol, semicolon, VoidSymbol ],overlay1=<AD12>};
key <AD05> {[rightsinglequotemark, leftsinglequotemark, VoidSymbol, VoidSymbol, apostrophe, dead_horn ]};
key <AD06> {[ dead_circumflex, VoidSymbol, VoidSymbol, VoidSymbol, asciicircum,dead_circumflex ],overlay1=<AB03>};
key <AD07> {[ v, V, 5, E, percent, dead_caron ],overlay1=<AC06>};
key <AD08> {[ d, D, 6, F, numbersign, VoidSymbol ],overlay1=<PGUP>};
key <AD09> {[ l, L, 7, VoidSymbol, bar, dead_stroke ],overlay1=<PGDN>};
key <AD10> {[ b, B, 8, VoidSymbol, degree, VoidSymbol ],overlay1=<AE09>};
key <AD11> {[ z, Z, 9, VoidSymbol, VoidSymbol, VoidSymbol ]};
// Third row
key <AC01> {[ a, A, agrave, Agrave, at, VoidSymbol ],overlay1=<AE04>};
key <AC02> {[ u, U, ugrave, Ugrave, braceleft, dead_breve ],overlay1=<AE07>};
key <AC03> {[ e, E, ecircumflex, Ecircumflex, ampersand, VoidSymbol ],overlay1=<AE12>};
key <AC04> {[ i, I, idiaeresis, Idiaeresis, braceright, dead_diaeresis ],overlay1=<RALT>};
key <AC06> {[ c, C, ccedilla, Ccedilla, grave, dead_cedilla ],overlay1=<LEFT>};
key <AC07> {[ t, T, 0, A, quotedbl,ead_doubleacute ],overlay1=<DOWN>};
key <AC08> {[ s, S, 1, B, dollar, VoidSymbol ],overlay1=<UP> };
key <AC09> {[ r, R, 2, C, bracketleft, VoidSymbol ],overlay1=<RGHT>};
key <AC10> {[ n, N, 3, D,bracketright, VoidSymbol ],overlay1=<HOME>};
key <AC11> {[ m, M, 4, VoidSymbol, masculine, dead_macron ],overlay1=<END> };
// Fourth ro
key <LSGT> {[ ecircumflex, Ecircumflex, VoidSymbol, VoidSymbol, backslash, VoidSymbol ]};
key <AB01> {[ egrave, Egrave, ae, AE, slash, backslash ],overlay1=<FK11>};
key <AB02> {[ y, Y, lessthanequal, VoidSymbol, less, VoidSymbol ],overlay1=<FK05>};
key <AB03> {[ x, X,greaterthanequal, VoidSymbol, greater, VoidSymbol ],overlay1=<FK04>};
key <AB04> {[ period, exclam, ellipsis, exclamdown, equal, dead_abovedot ], overlay1=<FK02>};
key <AB05> {[ minus, emdash, endash, VoidSymbol, Escape, VoidSymbol ]};
key <AB06> {[ comma, question, equal, questiondown, VoidSymbol,dead_belowcomma ]};
key <AB07> {[ q, Q, slash, VoidSymbol, slash, dead_belowdot ]};
key <AB08> {[ g, G, asterisk, VoidSymbol, asterisk, VoidSymbol ]};
key <AB09> {[ h, H, minus, VoidSymbol, minus, dead_hook ]};
key <AB10> {[ f, F, plus, feminine, plus, dead_ogonek ]};
};
partial alphanumeric_keys
xkb_symbols "jeop_programmeur" {
key.type[Group2] = "EIGHT_LEVEL";
//key <CAPS> { [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Prev_Group ], overlay1 = <ESC> };
//key <BKSL> { [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Next_Group ], overlay1 = <ESC> };
//key <LFSH> { [ ISO_Level3_Shift, ISO_Level3_Shift, ISO_Level3_Lock, ISO_Level3_Lock ] };
//key <RTSH> { [ ISO_Level3_Shift, ISO_Level3_Shift, ISO_Level3_Lock, ISO_Level3_Lock ] };
key <SPCE> { [ space, Escape, underscore, U202F, underscore, underscore ] };
key.type[Group2] = "EIGHT_LEVEL";
key <AD02> { [], [ Escape, Eacute, oe, OE, asciitilde, dead_tilde ],overlay1=<LWIN>};
key <AD05> { [], [ apostrophe, leftsinglequotemark, VoidSymbol, VoidSymbol, rightsinglequotemark,dead_grave ]};
key <AD06> { [], [ asciicircum, dead_caron, comma, VoidSymbol, dead_circumflex, VoidSymbol ], overlay1 = <AB03> };
key <LSGT> { [], [ backslash, VoidSymbol, VoidSymbol, VoidSymbol, ecircumflex, Ecircumflex ] };
key <AB01> { [], [ slash, backslash, ae, AE, equal, VoidSymbol ], overlay1 = <FK11> };
key <AB02> { [], [ y, Y, lessthanequal, VoidSymbol, less, VoidSymbol ],overlay1=<FK05>};
key <AB03> { [], [ x, X,greaterthanequal, VoidSymbol, greater, VoidSymbol ],overlay1=<FK04>};
};
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 :
- http://wiki.mandriva.com/fr/La_touche_compose explication sur la touche compose
- http://symbolcodes.tlt.psu.edu/bylanguage/mathchart.html symboles mathématique
- /usr/include/X11/keysymdef.h (dans ma distrib Linux) la liste des keysyms
- http://wiki.mandriva.com/fr/Personnaliser_le_clavier#Les_noms_symboliques_des_touches_et_les_keysyms personnalisation de manière générale du clavier
- http://bepo.fr/wiki/Compose explication de la touche compose dans le wiki bépo
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
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ │ │ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ╔═══════╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣ ║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗ ║ ║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ║ ║ │ │ │ │ │ │ │ │ │ │ │ ║ ║ ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔══════╩════╣ ║ ║ │ │ │ │ │ │ │ │ │ │ ║ ║ ║ ║ │ │ │ │ │ │ │ │ │ │ ║ ║ ╠══════╬════╦════╦════╦════════════════════════╦════╦════╦════╬═══════════╝ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ╚══════╩════╩════╩════╩════════════════════════╩════╩════╩════╝
Moi !
20 ans — en 2eme année en dut geii (électronique) — programme en c++ pour le plaisir — le reste ne vous regarde pas !