« Utilisateur:Kikoun/bepo intl » : différence entre les versions
(7 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
{| align="right" width="260px" | |||
|{{Cadre | |||
|titre=BÉPO-intl | |||
|code couleur=rouge | |||
|logo=Méthodologie.png | |||
|logo_editlien=Note.png | |||
|contenu= | |||
'''Le bépo «international»'''. Exemples d’adaptations du bépo : | |||
* [[Utilisateur:Kaze/Bépo-intl|Kaze/Bépo-intl]] | |||
* [[Utilisateur:Nemolivier|Nemolivier/Bépo-intl]] | |||
* [[Utilisateur:Flamme/bépo-intl]] | |||
}} | |||
|} | |||
== Premier Jet == | == Premier Jet == | ||
[[/bepo_intl_old|Mes anciennes idées pour le bépo-intl]] | [[/bepo_intl_old|Mes anciennes idées pour le bépo-intl]] | ||
Ligne 24 : | Ligne 38 : | ||
* Ç en altgr-, ou altgr-T | * Ç en altgr-, ou altgr-T | ||
=== Réalisation === | === Réalisation 1.0=== | ||
<pre> | |||
# bepo_intl kkn-1.0 | |||
# key direct shift altgr altgr+shift | |||
# First row | |||
0!TLDE dollar period endash paragraph | |||
1!AE01 quotedbl 1 emdash doublelowquotemark | |||
1!AE02 less 2 guillemotleft leftdoublequotemark | |||
1!AE03 greater 3 guillemotright rightdoublequotemark | |||
1!AE04 parenleft 4 bracketleft lessthanequal | |||
1!AE05 parenright 5 bracketright greaterthanequal | |||
1!AE06 dollar 6 asciicircum | |||
1!AE07 numbersign 7 plusminus notsign | |||
1!AE08 at 8 moinsmath onequarter | |||
1!AE09 plus 9 division onehalf | |||
1!AE10 asterisk 0 multiply threequarters | |||
0!AE11 equal degree notequal minutes | |||
0!AE12 percent grave permille seconds | |||
# Second row | |||
1!AD01 b B bar brokenbar | |||
1!AD02 eacute Eacute dead_acute dead_doubleacute | |||
1!AD03 p P ampersand section | |||
2!AD04 o O slash | |||
1!AD05 egrave Egrave backslash grave | |||
#0!AD06 dead_circumflex exclam exclamdown | |||
0!AD06 w W dead_caron | |||
1!AD07 v V dead_circumflex | |||
2!AD08 d D eth ETH | |||
1!AD09 l L dead_stroke | |||
2!AD10 j J ij IJ | |||
2!AD11 z Z schwa SCHWA | |||
1!AD12 thorn THORN dead_cedilla | |||
# Third row | |||
2!AC01 a A minus | |||
2!AC02 u U ugrave Ugrave | |||
1!AC03 i I dead_diaeresis dead_abovedot | |||
1!AC04 e E ecircumflex Ecircumflex | |||
0!AC05 comma semicolon rightsinglequotemark dead_horn | |||
1!AC06 c C copyright U017F | |||
2!AC07 t T ccedilla Ccedilla | |||
2!AC08 s S ssharp U1E9E | |||
1!AC09 r R registered trademark | |||
1!AC10 n N dead_tilde | |||
1!AC11 m M dead_macron masculine | |||
1!BKSL exclam exclamdown EuroSign dead_currency | |||
# Fourth row | |||
1!LSGT ecircumflex Ecircumflex slash | |||
1!AB01 agrave Agrave dead_grave grave | |||
1!AB02 y Y braceleft leftsinglequotemark | |||
1!AB03 x X braceright rightsinglequotemark | |||
0!AB04 period colon ellipsis periodcentered | |||
0!AB05 apostrophe question questiondown dead_hook | |||
1!AB06 k K asciitilde U2328 | |||
1!AB07 q Q dead_abovering dead_belowdot | |||
1!AB08 g G dead_greek | |||
1!AB09 h H dagger doubledagger | |||
1!AB10 f F dead_ogonek ordfeminine | |||
0!SPCE space nobreakspace underscore narrownbsp | |||
0w!KPDL period period | |||
# EOF | |||
</pre> | |||
=== Script d'installation v1 === | |||
J'ai trouvé un script permettant d'installer simplement sa disposition personnalisée sous linux (source : http://code.google.com/p/pts-mini-gpl/source/browse/trunk/pts-magyar/us.pts_magyar.sh ). Il est assez facile à modifier pour l'adapter à son usage. Je l'ai tester sous debian sid et squeeze. | |||
Il faut relancer le script après chaque mise à jour du paquet xkb-data (debian) ou équivalent. | |||
Le but de ce script est surtout d'avoir une bonne intégration au système (sélecteur de disposition). Le fichier /usr/share/X11/symbols/frkkn devenant alors une roue de secours non-intégrée (mise à jour de xkb-data ou autre problème). | |||
<pre> | |||
#! /bin/bash -- | |||
# | |||
# frkkn.xkb_install.sh : Script d'installation du layout frkkn bépo-intl v1 | |||
# | |||
# Basé sur le script : | |||
# us.pts_magyar.sh: Script to install the pts_magyar layout for X11 (X.Org) | |||
# by pts@fazekas.hu at Sat Jun 12 22:37:08 CEST 2010 | |||
# | |||
# This script hash been tested and found working on Ubuntu Karmic and Ubuntu | |||
# Lucid. | |||
if test "$EUID" = 0; then SUDO=; else SUDO=sudo; fi | |||
exec $SUDO bash /dev/stdin "$@" <<'ENDSUDO' | |||
set -ex | |||
perl -pi -0777 -e \ | |||
's@^// BEGIN frkkn\s.*?\n// END frkkn[ \t]*\n@@mgs' \ | |||
/usr/share/X11/xkb/symbols/fr | |||
cat >>/usr/share/X11/xkb/symbols/fr <<'END' | |||
// BEGIN frkkn | |||
// | |||
// us.pts_magyar: pts_magyar layout, append to /usr/share/X11/xkb/symbols/us | |||
// by pts@fazekas.hu at Wed Jul 23 21:39:45 CEST 2008 | |||
// | |||
// Register on Hardy: sudo bash: echo ' pts_magyar us: pts magyar' >>/usr/share/X11/xkb/rules/xorg.lst | |||
// Test: setxkbmap 'us(pts_magyar),hu' | |||
// Test: setxkbmap 'us(pts_magyar),hu' -print | xkbcomp - $DISPLAY | |||
// | |||
// Register on Ubuntu Karmic: | |||
// (strace -e open -o key.log gnome-keyboard-properties) reports evdev.lst and evdev.xml. | |||
// $ sudo bash: echo ' pts_magyar us: pts magyar' >>/usr/share/X11/xkb/rules/evdev.lst | |||
// ?$ sudo bash: echo ' pts_magyar us: pts magyar' >>/usr/share/X11/xkb/rules/base.lst | |||
// * Add this a bit above <name>euro</name> in /usr/share/X11/xkb/rules/evdev.xml | |||
// <variant> | |||
// <configItem> | |||
// <name>pts_magyar</name> | |||
// <description>pts magyar</description> | |||
// </configItem> | |||
// </variant> | |||
// * ?Ditto for base.xml | |||
// * ?Ditto for xfree86.xml | |||
// * ?Ditto for base.xml | |||
partial alphanumeric_keys modifier_keys | |||
xkb_symbols "frkkn" { | |||
name[Group1]= "France - Bepo, ergonomic, Dvorak way (vkkn.1.0)"; | |||
key <TLDE> { type[group1] = "FOUR_LEVEL", [ dollar, period, endash, paragraph ] }; // $ . – ¶ | |||
key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl, 1, emdash, doublelowquotemark ] }; // " 1 — „ | |||
key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark ] }; // < 2 « “ | |||
key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark ] }; // > 3 » ” | |||
key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft, 4, bracketleft, lessthanequal ] }; // ( 4 [ ≤ | |||
key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright, 5, bracketright, greaterthanequal ] }; // ) 5 ] ≥ | |||
key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ dollar, 6, asciicircum ] }; // $ 6 ^ | |||
key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ numbersign, 7, plusminus, notsign ] }; // # 7 ± ¬ | |||
key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ at, 8, U2212, onequarter ] }; // @ 8 − ¼ | |||
key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ plus, 9, division, onehalf ] }; // + 9 ÷ ½ | |||
key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ asterisk, 0, multiply, threequarters ] }; // * 0 × ¾ | |||
key <AE11> { type[group1] = "FOUR_LEVEL", [ equal, degree, notequal, minutes ] }; // = ° ≠ ′ | |||
key <AE12> { type[group1] = "FOUR_LEVEL", [ percent, grave, U2030, seconds ] }; // % ` ‰ ″ | |||
key <AD01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar ] }; // b B | ¦ | |||
key <AD02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_doubleacute ] }; // é É ´ ˝ | |||
key <AD03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ p, P, ampersand, section ] }; // p P & § | |||
key <AD04> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ o, O, slash ] }; // o O / | |||
key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, backslash, grave ] }; // è È \ ` | |||
key <AD06> { type[group1] = "FOUR_LEVEL", [ w, W, VoidSymbol, dead_caron ] }; // w W ˇ | |||
key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ v, V, dead_circumflex ] }; // v V ^ | |||
key <AD08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ d, D, eth, ETH ] }; // d D ð Ð | |||
key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ l, L, UFDD0 ] }; // l L / | |||
key <AD10> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ j, J, U0133, U0132 ] }; // j J ij IJ | |||
key <AD11> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ z, Z, schwa, SCHWA ] }; // z Z ə Ə | |||
key <AD12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ thorn, THORN, dead_cedilla ] }; // þ Þ ¸ | |||
key <AC01> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ a, A, minus ] }; // a A - | |||
key <AC02> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ u, U, ugrave, Ugrave ] }; // u U ù Ù | |||
key <AC03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ i, I, dead_diaeresis, dead_abovedot ] }; // i I ¨ ˙ | |||
key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ e, E, ecircumflex, Ecircumflex ] }; // e E ê Ê | |||
key <AC05> { type[group1] = "FOUR_LEVEL", [ comma, semicolon, rightsinglequotemark, dead_horn ] }; // , ; ’ ̛ | |||
key <AC06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ c, C, copyright, U017F ] }; // c C © ſ | |||
key <AC07> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ t, T, ccedilla, Ccedilla ] }; // t T ç Ç | |||
key <AC08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ s, S, ssharp, U1E9E ] }; // s S ß ẞ | |||
key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ r, R, registered, trademark ] }; // r R ® ™ | |||
key <AC10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ n, N, dead_tilde ] }; // n N ~ | |||
key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ m, M, dead_macron, masculine ] }; // m M ¯ º | |||
key <BKSL> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ exclam, exclamdown, EuroSign ] }; // ! ¡ € | |||
key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ecircumflex, Ecircumflex, slash ] }; // ê Ê / | |||
key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, dead_grave ] }; // à À ` | |||
key <AB02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, leftsinglequotemark ] }; // y Y { ‘ | |||
key <AB03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ x, X, braceright, rightsinglequotemark ] }; // x X } ’ | |||
key <AB04> { type[group1] = "FOUR_LEVEL", [ period, colon, ellipsis, periodcentered ] }; // . : … · | |||
key <AB05> { type[group1] = "FOUR_LEVEL", [ apostrophe, question, questiondown, dead_hook ] }; // ' ? ¿ ̉ | |||
key <AB06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, U2328 ] }; // k K ~ ⌨ | |||
key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ q, Q, dead_abovering, dead_belowdot ] }; // q Q ˚ ̣ | |||
key <AB08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ g, G, UFDD2 ] }; // g G µ | |||
key <AB09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ h, H, dagger, doubledagger ] }; // h H † ‡ | |||
key <AB10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ f, F, dead_ogonek, ordfeminine ] }; // f F ˛ ª | |||
key <SPCE> { type[group1] = "FOUR_LEVEL", [ space, nobreakspace, underscore, U202F ] }; // _ | |||
include "level3(ralt_switch)" | |||
}; | |||
// END frkkn | |||
END | |||
# evdev.lst is enough for Ubuntu Lucid. | |||
# for F in /tmp/rules/{base,evdev,xorg,xfree86}.lst; do | |||
for F in /usr/share/X11/xkb/rules/{base,evdev}.lst; do | |||
if test -f "$F"; then | |||
perl -pi -e '$_="" if /\bfrkkn\b/' "$F" | |||
# After /^! variant\n/ | |||
perl -pi -0777 -e 's@^( bepo_latin9[ \t]*fr: .*)@$1\n frkkn fr: Bepo, frkkn variant@gm' "$F" | |||
fi | |||
done | |||
# evdev.xml is enough for Ubuntu Lucid. | |||
# for F in /tmp/rules/{base,evdev,xorg,xfree86}.xml; do | |||
for F in /usr/share/X11/xkb/rules/{base,evdev}.xml; do | |||
if test -f "$F"; then | |||
perl -pi -0777 -e 's@^[ \t]*<variant>\s*<configItem>\s*<name>frkkn</name>.*?</variant>[ \t]*@@gsm' "$F" | |||
perl -pi -0777 -e 's@^([ \t]*<variant>\s*<configItem>\s*<name>bepo_latin9</name>.*?</variant>)[ \t]*\n@$1\n <variant>\n <configItem>\n <name>frkkn</name>\n <description>bepo, frkkn variant</description>\n </configItem>\n </variant>\n@gsm' "$F" | |||
fi | |||
done | |||
ENDSUDO | |||
</pre> | |||
=== Réalisation 0.9=== | |||
<center>[[Fichier:Fr-dvorak-bepo-kkn.0.1.png]]</center> | <center>[[Fichier:Fr-dvorak-bepo-kkn.0.1.png]]</center> | ||
Bientôt, Fichier pour configGenerator, pkl, drivers X.org et autre disponible. | Bientôt, Fichier pour configGenerator, pkl, drivers X.org et autre disponible. | ||
Ligne 183 : | Ligne 409 : | ||
* Je pense peut être modifier la rangé des touches numériques sur le TMx la décalant vers la gauche pour obtenir un alignement plus proche d'un clavier normal et pour ne pas trop éloigner les touches = et %. La touche TILDE reprendrenant la place de la touche %. | * Je pense peut être modifier la rangé des touches numériques sur le TMx la décalant vers la gauche pour obtenir un alignement plus proche d'un clavier normal et pour ne pas trop éloigner les touches = et %. La touche TILDE reprendrenant la place de la touche %. | ||
* Je viens de placer . et 0 en touche ². Cela me facilitera peut-être l'écriture d'adresse IP ou de nombres. | * Je viens de placer . et 0 en touche ². Cela me facilitera peut-être l'écriture d'adresse IP ou de nombres. | ||
* J'ai recrée ma disposition avec ConfigGenerator. Je dispose maintenant de ma disposition sous windows et linux. Je metterais à disposition les drivers linux et le pkl pour windows une fois que j'aurai regroupé ma disposition et la version officiel. Je ne pense pas faire de version spécial TMx. Je mis adapte assez bien et je ne vois pas de problème particulier. | |||
[[Titre du lien]] | |||
== Version 2020 == | |||
J'utilise maintenant le compositeur (sorte de windows manager pour wayland) Sway sur linux qui permet d'inclure directement un fichier .xkb dans sa configuration. | |||
J'ai surtout ajouté l'utilisation de 8 niveaux de touches permettant d'avoir un clavier numérique sous la main gauche utilisant les mêmes touches 1 2 3 et disposant des principaux séparateurs de nombres à proximité (.,:;). | |||
J'essaye le passage au niveau 5 avec CAPSLOCK. C'est sympa et cette touche devient utilisable au moins. | |||
<pre> | |||
partial alphanumeric_keys modifier_keys | |||
xkb_keymap { | |||
xkb_keycodes { include "evdev+aliases(azerty)" }; | |||
xkb_types { include "complete" }; | |||
xkb_compat { include "complete" }; | |||
xkb_geometry { include "pc(pc105)" }; | |||
xkb_symbols "frkkn2" { | |||
name[Group1]= "France - Bepo, ergonomic, Dvorak way (vkkn.2.0)"; | |||
include "pc" | |||
include "inet(media_common)" | |||
include "compose(menu)" | |||
include "shift(breaks_caps)" | |||
key <TLDE> { type[group1] = "FOUR_LEVEL", [ dollar, period, endash, paragraph ] }; // $ . – ¶ | |||
key <AE01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ quotedbl, 1, emdash, doublelowquotemark, 1,1,1,1 ] }; // " 1 — „ | |||
key <AE02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark, 2,2,2,2 ] }; // < 2 « “ | |||
key <AE03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark, 3,3,3,3 ] }; // > 3 » ” | |||
key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft, 4, bracketleft, lessthanequal ] }; // ( 4 [ ≤ | |||
key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright, 5, bracketright, greaterthanequal ] }; // ) 5 ] ≥ | |||
key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ dollar, 6, asciicircum ] }; // $ 6 ^ | |||
key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ numbersign, 7, plusminus, notsign ] }; // # 7 ± ¬ | |||
key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ at, 8, U2212, onequarter ] }; // @ 8 − ¼ | |||
key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ plus, 9, division, onehalf ] }; // + 9 ÷ ½ | |||
key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ asterisk, 0, multiply, threequarters ] }; // * 0 × ¾ | |||
key <AE11> { type[group1] = "FOUR_LEVEL", [ equal, degree, notequal, minutes ] }; // = ° ≠ ′ | |||
key <AE12> { type[group1] = "FOUR_LEVEL", [ percent, grave, U2030, seconds ] }; // % ` ‰ ″ | |||
key <AD01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar, 4 ] }; // b B | ¦ | |||
key <AD02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_doubleacute, 5 ] }; // é É ´ ˝ | |||
key <AD03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ p, P, ampersand, section, 6,Up,Up,6 ] }; // p P & § | |||
key <AD04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ o, O, slash, slash, slash ] }; // o O / / | |||
key <AD05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, backslash, grave, semicolon ] }; // è È \ ` | |||
key <AD06> { type[group1] = "FOUR_LEVEL", [ w, W, VoidSymbol, dead_caron ] }; // w W ˇ | |||
key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ v, V, dead_circumflex ] }; // v V ^ | |||
key <AD08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ d, D, eth, ETH ] }; // d D ð Ð | |||
key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ l, L, UFDD0 ] }; // l L / | |||
key <AD10> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ j, J, U0133, U0132 ] }; // j J ij IJ | |||
key <AD11> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ z, Z, schwa, SCHWA ] }; // z Z ə Ə | |||
key <AD12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ thorn, THORN, dead_cedilla ] }; // þ Þ ¸ | |||
key <AC01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ a, A, minus, minus, 7,7,7,7 ] }; // a A - - | |||
key <AC02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ u, U, ugrave, Ugrave, 8,Left,Left,8 ] }; // u U ù Ù | |||
key <AC03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ i, I, dead_diaeresis, dead_abovedot, 9,Down,Down,9 ] }; // i I ¨ ˙ | |||
key <AC04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ e, E, ecircumflex, Ecircumflex, 0,Right,Right,0 ] }; // e E ê Ê | |||
key <AC05> { type[group1] = "FOUR_LEVEL", [ comma, semicolon, rightsinglequotemark, dead_horn ] }; // , ; ’ ̛ | |||
key <AC06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ c, C, copyright, U017F ] }; // c C © ſ | |||
key <AC07> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ t, T, ccedilla, Ccedilla ] }; // t T ç Ç | |||
key <AC08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ s, S, ssharp, U1E9E ] }; // s S ß ẞ | |||
key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ r, R, registered, trademark ] }; // r R ® ™ | |||
key <AC10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ n, N, dead_tilde ] }; // n N ~ | |||
key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ m, M, dead_macron, masculine ] }; // m M ¯ º | |||
key <BKSL> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ exclam, exclamdown, EuroSign ] }; // ! ¡ € | |||
key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ecircumflex, Ecircumflex, slash ] }; // ê Ê / | |||
key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, dead_grave ] }; // à À ` | |||
key <AB02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, leftsinglequotemark, quotedbl ] }; // y Y { ‘ | |||
key <AB03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ x, X, braceright, rightsinglequotemark, colon ] }; // x X } ’ | |||
key <AB04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ period, colon, ellipsis, periodcentered, period ] }; // . : … · | |||
key <AB05> { type[group1] = "FOUR_LEVEL", [ apostrophe, question, questiondown, dead_hook ] }; // ' ? ¿ ̉ | |||
key <AB06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, U2328 ] }; // k K ~ ⌨ | |||
key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ q, Q, dead_abovering, dead_belowdot ] }; // q Q ˚ ̣ | |||
key <AB08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ g, G, UFDD2, UFDD2, XF86Cut ] }; // g G µ | |||
key <AB09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ h, H, dagger, doubledagger, XF86Copy ] }; // h H † ‡ | |||
key <AB10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ f, F, dead_ogonek, ordfeminine, XF86Paste ] }; // f F ˛ ª | |||
key <SPCE> { type[group1] = "FOUR_LEVEL", [ space, nobreakspace, underscore, U202F ] }; // _ | |||
include "level3(ralt_switch)" | |||
include "level5(rctrl_switch)" | |||
include "level5(caps_switch)" | |||
include "inet(evdev)" | |||
}; | |||
}; | |||
</pre> | |||
== Version 2020 2== | |||
- Clavier numérique sous 123AZEQSD (azerty) via capslock ou ctrl-droit. | |||
- Fléche sous ESDF (azerty) via capslock ou ctrl-droit et altgr. | |||
<pre> | |||
partial alphanumeric_keys modifier_keys | |||
xkb_keymap { | |||
xkb_keycodes { include "evdev+aliases(azerty)" }; | |||
xkb_types { include "complete" }; | |||
xkb_compat { include "complete" }; | |||
xkb_geometry { include "pc(pc105)" }; | |||
xkb_symbols "frkkn2" { | |||
name[Group1]= "France - Bepo, ergonomic, Dvorak way (vkkn.2.0)"; | |||
include "pc" | |||
include "inet(media_common)" | |||
include "compose(menu)" | |||
include "shift(breaks_caps)" | |||
key <TLDE> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ dollar, period, endash, paragraphg, dollar ] }; // $ . – ¶ | |||
key <AE01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ quotedbl, 1, emdash, doublelowquotemark, 1,1,1,1 ] }; // " 1 — „ | |||
key <AE02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark, 2,2,2,2 ] }; // < 2 « “ | |||
key <AE03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark, 3,3,3,3 ] }; // > 3 » ” | |||
key <AE04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ parenleft, 4, bracketleft, lessthanequal, parenleft, bracketleft ] }; // ( 4 [ ≤ | |||
key <AE05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ parenright, 5, bracketright, greaterthanequal, parenright, bracketright ] }; // ) 5 ] ≥ | |||
key <AE06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ dollar, 6, asciicircum, dollar ] }; // $ 6 ^ | |||
key <AE07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ numbersign, 7, plusminus, notsign, numbersign ] }; // # 7 ± ¬ | |||
key <AE08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ at, 8, U2212, onequarter, at ] }; // @ 8 − ¼ | |||
key <AE09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ plus, 9, division, onehalf, plus ] }; // + 9 ÷ ½ | |||
key <AE10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ asterisk, 0, multiply, threequarters, asterisk ] }; // * 0 × ¾ | |||
key <AE11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ equal, degree, notequal, minutes, equal ] }; // = ° ≠ ′ | |||
key <AE12> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ percent, grave, U2030, seconds, percent ] }; // % ` ‰ ″ | |||
key <AD01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar, 4 ] }; // b B | ¦ | |||
key <AD02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_doubleacute, 5 ] }; // é É ´ ˝ | |||
key <AD03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ p, P, ampersand, section, 6,Up,Up,6 ] }; // p P & § | |||
key <AD04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ o, O, slash, slash, slash ] }; // o O / / | |||
key <AD05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, backslash, grave, semicolon ] }; // è È \ ` | |||
key <AD06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ w, W, VoidSymbol, dead_caron ] }; // w W ˇ | |||
key <AD07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ v, V, dead_circumflex ] }; // v V ^ | |||
key <AD08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ d, D, eth, ETH ] }; // d D ð Ð | |||
key <AD09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ l, L, UFDD0 ] }; // l L / | |||
key <AD10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ j, J, U0133, U0132 ] }; // j J ij IJ | |||
key <AD11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ z, Z, schwa, SCHWA ] }; // z Z ə Ə | |||
key <AD12> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ thorn, THORN, dead_cedilla ] }; // þ Þ ¸ | |||
key <AC01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ a, A, minus, minus, 7,7,7,7 ] }; // a A - - | |||
key <AC02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ u, U, ugrave, Ugrave, 8,Left,Left,8 ] }; // u U ù Ù | |||
key <AC03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ i, I, dead_diaeresis, dead_abovedot, 9,Down,Down,9 ] }; // i I ¨ ˙ | |||
key <AC04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ e, E, ecircumflex, Ecircumflex, 0,Right,Right,0 ] }; // e E ê Ê | |||
key <AC05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ comma, semicolon, rightsinglequotemark, dead_horn, comma ] }; // , ; ’ ̛ | |||
key <AC06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ c, C, copyright, U017F ] }; // c C © ſ | |||
key <AC07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ t, T, ccedilla, Ccedilla ] }; // t T ç Ç | |||
key <AC08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ s, S, ssharp, U1E9E ] }; // s S ß ẞ | |||
key <AC09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ r, R, registered, trademark ] }; // r R ® ™ | |||
key <AC10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ n, N, dead_tilde ] }; // n N ~ | |||
key <AC11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ m, M, dead_macron, masculine ] }; // m M ¯ º | |||
key <BKSL> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ exclam, exclamdown, EuroSign ] }; // ! ¡ € | |||
key <LSGT> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ ecircumflex, Ecircumflex, slash ] }; // ê Ê / | |||
key <AB01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, dead_grave ] }; // à À ` | |||
key <AB02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, leftsinglequotemark, quotedbl ] }; // y Y { ‘ | |||
key <AB03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ x, X, braceright, rightsinglequotemark, colon ] }; // x X } ’ | |||
key <AB04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ period, colon, ellipsis, periodcentered, period ] }; // . : … · | |||
key <AB05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ apostrophe, question, questiondown, dead_hook, apostrophe ] }; // ' ? ¿ ̉ | |||
key <AB06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, U2328 ] }; // k K ~ ⌨ | |||
key <AB07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ q, Q, dead_abovering, dead_belowdot ] }; // q Q ˚ ̣ | |||
key <AB08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ g, G, UFDD2, UFDD2, XF86Cut ] }; // g G µ | |||
key <AB09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ h, H, dagger, doubledagger, XF86Copy ] }; // h H † ‡ | |||
key <AB10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ f, F, dead_ogonek, ordfeminine, XF86Paste ] }; // f F ˛ ª | |||
key <SPCE> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ space, nobreakspace, underscore, U202F, space ] }; // _ | |||
include "level3(ralt_switch)" | |||
include "level5(rctrl_switch)" | |||
include "level5(caps_switch)" | |||
include "inet(evdev)" | |||
}; | |||
}; | |||
</pre> |
Dernière version du 20 janvier 2021 à 11:36
|
Premier Jet
Mes anciennes idées pour le bépo-intl
Deuxième jet
But
- Accessibilité de W K < > # $ - \ / [ ] ~
- Un maximum de caractères de programmation en altgr-main_gauche
- Accès aux . et : de la même façon que les chiffres pour taper les adresses IPv4 et IPv6
- Supprimer la touche Ê tout en gardant le Ê accessible
Premières idées
- Déplacement de æ et œ en # voir utilisation d'un "dead_e" ou suppression totale grâce à compose.
- J'hésite pour mettre les chiffres en accès direct. J'utilise le capslock pour taper des IPv4. Je peux mettre : en altgr-.
- Inversion </« et >/»
- Inversion W et ^
- Inversion K et ' pour les claviers décalés (et non pour le TMx, à voir).
- Déplacement du dead_grave (??) en altgr-À
- Ê en altgr-E
- Touches en altgr ainsi libérées : O ([) È (]) A (-)
- À en altgr-A ?
- Ç en altgr-, ou altgr-T
Réalisation 1.0
# bepo_intl kkn-1.0 # key direct shift altgr altgr+shift # First row 0!TLDE dollar period endash paragraph 1!AE01 quotedbl 1 emdash doublelowquotemark 1!AE02 less 2 guillemotleft leftdoublequotemark 1!AE03 greater 3 guillemotright rightdoublequotemark 1!AE04 parenleft 4 bracketleft lessthanequal 1!AE05 parenright 5 bracketright greaterthanequal 1!AE06 dollar 6 asciicircum 1!AE07 numbersign 7 plusminus notsign 1!AE08 at 8 moinsmath onequarter 1!AE09 plus 9 division onehalf 1!AE10 asterisk 0 multiply threequarters 0!AE11 equal degree notequal minutes 0!AE12 percent grave permille seconds # Second row 1!AD01 b B bar brokenbar 1!AD02 eacute Eacute dead_acute dead_doubleacute 1!AD03 p P ampersand section 2!AD04 o O slash 1!AD05 egrave Egrave backslash grave #0!AD06 dead_circumflex exclam exclamdown 0!AD06 w W dead_caron 1!AD07 v V dead_circumflex 2!AD08 d D eth ETH 1!AD09 l L dead_stroke 2!AD10 j J ij IJ 2!AD11 z Z schwa SCHWA 1!AD12 thorn THORN dead_cedilla # Third row 2!AC01 a A minus 2!AC02 u U ugrave Ugrave 1!AC03 i I dead_diaeresis dead_abovedot 1!AC04 e E ecircumflex Ecircumflex 0!AC05 comma semicolon rightsinglequotemark dead_horn 1!AC06 c C copyright U017F 2!AC07 t T ccedilla Ccedilla 2!AC08 s S ssharp U1E9E 1!AC09 r R registered trademark 1!AC10 n N dead_tilde 1!AC11 m M dead_macron masculine 1!BKSL exclam exclamdown EuroSign dead_currency # Fourth row 1!LSGT ecircumflex Ecircumflex slash 1!AB01 agrave Agrave dead_grave grave 1!AB02 y Y braceleft leftsinglequotemark 1!AB03 x X braceright rightsinglequotemark 0!AB04 period colon ellipsis periodcentered 0!AB05 apostrophe question questiondown dead_hook 1!AB06 k K asciitilde U2328 1!AB07 q Q dead_abovering dead_belowdot 1!AB08 g G dead_greek 1!AB09 h H dagger doubledagger 1!AB10 f F dead_ogonek ordfeminine 0!SPCE space nobreakspace underscore narrownbsp 0w!KPDL period period # EOF
Script d'installation v1
J'ai trouvé un script permettant d'installer simplement sa disposition personnalisée sous linux (source : http://code.google.com/p/pts-mini-gpl/source/browse/trunk/pts-magyar/us.pts_magyar.sh ). Il est assez facile à modifier pour l'adapter à son usage. Je l'ai tester sous debian sid et squeeze.
Il faut relancer le script après chaque mise à jour du paquet xkb-data (debian) ou équivalent.
Le but de ce script est surtout d'avoir une bonne intégration au système (sélecteur de disposition). Le fichier /usr/share/X11/symbols/frkkn devenant alors une roue de secours non-intégrée (mise à jour de xkb-data ou autre problème).
#! /bin/bash -- # # frkkn.xkb_install.sh : Script d'installation du layout frkkn bépo-intl v1 # # Basé sur le script : # us.pts_magyar.sh: Script to install the pts_magyar layout for X11 (X.Org) # by pts@fazekas.hu at Sat Jun 12 22:37:08 CEST 2010 # # This script hash been tested and found working on Ubuntu Karmic and Ubuntu # Lucid. if test "$EUID" = 0; then SUDO=; else SUDO=sudo; fi exec $SUDO bash /dev/stdin "$@" <<'ENDSUDO' set -ex perl -pi -0777 -e \ 's@^// BEGIN frkkn\s.*?\n// END frkkn[ \t]*\n@@mgs' \ /usr/share/X11/xkb/symbols/fr cat >>/usr/share/X11/xkb/symbols/fr <<'END' // BEGIN frkkn // // us.pts_magyar: pts_magyar layout, append to /usr/share/X11/xkb/symbols/us // by pts@fazekas.hu at Wed Jul 23 21:39:45 CEST 2008 // // Register on Hardy: sudo bash: echo ' pts_magyar us: pts magyar' >>/usr/share/X11/xkb/rules/xorg.lst // Test: setxkbmap 'us(pts_magyar),hu' // Test: setxkbmap 'us(pts_magyar),hu' -print | xkbcomp - $DISPLAY // // Register on Ubuntu Karmic: // (strace -e open -o key.log gnome-keyboard-properties) reports evdev.lst and evdev.xml. // $ sudo bash: echo ' pts_magyar us: pts magyar' >>/usr/share/X11/xkb/rules/evdev.lst // ?$ sudo bash: echo ' pts_magyar us: pts magyar' >>/usr/share/X11/xkb/rules/base.lst // * Add this a bit above <name>euro</name> in /usr/share/X11/xkb/rules/evdev.xml // <variant> // <configItem> // <name>pts_magyar</name> // <description>pts magyar</description> // </configItem> // </variant> // * ?Ditto for base.xml // * ?Ditto for xfree86.xml // * ?Ditto for base.xml partial alphanumeric_keys modifier_keys xkb_symbols "frkkn" { name[Group1]= "France - Bepo, ergonomic, Dvorak way (vkkn.1.0)"; key <TLDE> { type[group1] = "FOUR_LEVEL", [ dollar, period, endash, paragraph ] }; // $ . – ¶ key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl, 1, emdash, doublelowquotemark ] }; // " 1 — „ key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark ] }; // < 2 « “ key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark ] }; // > 3 » ” key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft, 4, bracketleft, lessthanequal ] }; // ( 4 [ ≤ key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright, 5, bracketright, greaterthanequal ] }; // ) 5 ] ≥ key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ dollar, 6, asciicircum ] }; // $ 6 ^ key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ numbersign, 7, plusminus, notsign ] }; // # 7 ± ¬ key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ at, 8, U2212, onequarter ] }; // @ 8 − ¼ key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ plus, 9, division, onehalf ] }; // + 9 ÷ ½ key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ asterisk, 0, multiply, threequarters ] }; // * 0 × ¾ key <AE11> { type[group1] = "FOUR_LEVEL", [ equal, degree, notequal, minutes ] }; // = ° ≠ ′ key <AE12> { type[group1] = "FOUR_LEVEL", [ percent, grave, U2030, seconds ] }; // % ` ‰ ″ key <AD01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar ] }; // b B | ¦ key <AD02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_doubleacute ] }; // é É ´ ˝ key <AD03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ p, P, ampersand, section ] }; // p P & § key <AD04> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ o, O, slash ] }; // o O / key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, backslash, grave ] }; // è È \ ` key <AD06> { type[group1] = "FOUR_LEVEL", [ w, W, VoidSymbol, dead_caron ] }; // w W ˇ key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ v, V, dead_circumflex ] }; // v V ^ key <AD08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ d, D, eth, ETH ] }; // d D ð Ð key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ l, L, UFDD0 ] }; // l L / key <AD10> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ j, J, U0133, U0132 ] }; // j J ij IJ key <AD11> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ z, Z, schwa, SCHWA ] }; // z Z ə Ə key <AD12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ thorn, THORN, dead_cedilla ] }; // þ Þ ¸ key <AC01> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ a, A, minus ] }; // a A - key <AC02> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ u, U, ugrave, Ugrave ] }; // u U ù Ù key <AC03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ i, I, dead_diaeresis, dead_abovedot ] }; // i I ¨ ˙ key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ e, E, ecircumflex, Ecircumflex ] }; // e E ê Ê key <AC05> { type[group1] = "FOUR_LEVEL", [ comma, semicolon, rightsinglequotemark, dead_horn ] }; // , ; ’ ̛ key <AC06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ c, C, copyright, U017F ] }; // c C © ſ key <AC07> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ t, T, ccedilla, Ccedilla ] }; // t T ç Ç key <AC08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ s, S, ssharp, U1E9E ] }; // s S ß ẞ key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ r, R, registered, trademark ] }; // r R ® ™ key <AC10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ n, N, dead_tilde ] }; // n N ~ key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ m, M, dead_macron, masculine ] }; // m M ¯ º key <BKSL> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ exclam, exclamdown, EuroSign ] }; // ! ¡ € key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ecircumflex, Ecircumflex, slash ] }; // ê Ê / key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, dead_grave ] }; // à À ` key <AB02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, leftsinglequotemark ] }; // y Y { ‘ key <AB03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ x, X, braceright, rightsinglequotemark ] }; // x X } ’ key <AB04> { type[group1] = "FOUR_LEVEL", [ period, colon, ellipsis, periodcentered ] }; // . : … · key <AB05> { type[group1] = "FOUR_LEVEL", [ apostrophe, question, questiondown, dead_hook ] }; // ' ? ¿ ̉ key <AB06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, U2328 ] }; // k K ~ ⌨ key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ q, Q, dead_abovering, dead_belowdot ] }; // q Q ˚ ̣ key <AB08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ g, G, UFDD2 ] }; // g G µ key <AB09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ h, H, dagger, doubledagger ] }; // h H † ‡ key <AB10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ f, F, dead_ogonek, ordfeminine ] }; // f F ˛ ª key <SPCE> { type[group1] = "FOUR_LEVEL", [ space, nobreakspace, underscore, U202F ] }; // _ include "level3(ralt_switch)" }; // END frkkn END # evdev.lst is enough for Ubuntu Lucid. # for F in /tmp/rules/{base,evdev,xorg,xfree86}.lst; do for F in /usr/share/X11/xkb/rules/{base,evdev}.lst; do if test -f "$F"; then perl -pi -e '$_="" if /\bfrkkn\b/' "$F" # After /^! variant\n/ perl -pi -0777 -e 's@^( bepo_latin9[ \t]*fr: .*)@$1\n frkkn fr: Bepo, frkkn variant@gm' "$F" fi done # evdev.xml is enough for Ubuntu Lucid. # for F in /tmp/rules/{base,evdev,xorg,xfree86}.xml; do for F in /usr/share/X11/xkb/rules/{base,evdev}.xml; do if test -f "$F"; then perl -pi -0777 -e 's@^[ \t]*<variant>\s*<configItem>\s*<name>frkkn</name>.*?</variant>[ \t]*@@gsm' "$F" perl -pi -0777 -e 's@^([ \t]*<variant>\s*<configItem>\s*<name>bepo_latin9</name>.*?</variant>)[ \t]*\n@$1\n <variant>\n <configItem>\n <name>frkkn</name>\n <description>bepo, frkkn variant</description>\n </configItem>\n </variant>\n@gsm' "$F" fi done ENDSUDO
Réalisation 0.9
Bientôt, Fichier pour configGenerator, pkl, drivers X.org et autre disponible.
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔════════╗ │ # │ 1 │ 2 │ 3 │ 4 │ 5 ║ 6 │ 7 │ 8 │ 9 │ 0 │ ° │ ` ║ ║ │ $ │ " —│ < «│ > »│ ( [│ ) ]║ $ │ # │ @ │ + │ * │ = │ % ║ <-- ║ ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦═════╣ ║ |<- ║ B │ É │ P │ O │ È ║ W │ V │ D │ L │ J │ Z │ ║ | ║ ║ ->| ║ |│ │ &│ /│ \║ ˆ │ │ │ │ │ │ ║ <-' ║ ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗ ║ ║ ║ A │ U │ I │ E │ ; ║ C │ T │ S │ R │ N │ M │ ¡ ║ ║ ║ CAPS ║ -│ ù│ ¨│ ê│ , ║ │ ç│ │ │ │ │ ! ¤║ ║ ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩════╣ ║ ^ ║ Ê │ À │ Y │ X │ : │ ? ║ K │ Q │ G │ H │ F ║ ^ ║ ║ | ║ │ `│ {│ }│ . …│ ' ║ ~│ │ │ │ ║ | ║ ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧═╦══╧══╦═╧════╬═════╦═════╣ ║ ║ ║ ║ Espace insécable ║ ║ ║ ║ ║ ║ Ctrl ║ WinG ║ Alt ║ Espace _ ║AltGr║ WinD ║WinM ║Ctrl ║ ╚═══════╩══════╩═════╩═══════════════════════════╩═════╩══════╩═════╩═════╝
partial alphanumeric_keys xkb_symbols "bepokkn" { include "level3(ralt_switch)" include "keypad(oss)" include "inet(media_common)" include "compose(menu)" include "shift(breaks_caps)" name[Group1]= "France - Bepo, ergonomic, Kkn, Dvorak way"; // First row key <TLDE> { [ dollar, numbersign, endash, paragraph ] }; // $ # – ¶ key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl, 1, emdash, doublelowquotemark ] }; // " 1 — „ key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotleft, 2, less, leftdoublequotemark ] }; // « 2 < “ key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotright, 3, greater, rightdoublequotemark ] }; // » 3 > ” key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft, 4, bracketleft, lessthanequal ] }; // ( 4 [ ≤ key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright, 5, bracketright, greaterthanequal ] }; // ) 5 ] ≥ key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ at, 6, asciicircum ] }; // @ 6 ^ key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ plus, 7, plusminus, notsign ] }; // + 7 ± ¬ key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ minus, 8, U2212, onequarter ] }; // - 8 − ¼ key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ slash, 9, division, onehalf ] }; // / 9 ÷ ½ key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ asterisk, 0, multiply, threequarters ] }; // * 0 × ¾ key <AE11> { [ equal, degree, notequal, minutes ] }; // = ° ≠ ′ key <AE12> { [ percent, grave, U2030, seconds ] }; // % ` ‰ ″ // Second row key <AD01> { [ b, B, bar, brokenbar ] }; // b B | ¦ key <AD02> { [ eacute, Eacute, dead_acute, dead_doubleacute ] }; // é É ˊ ˝ key <AD03> { [ p, P, ampersand, section ] }; // p P & § key <AD04> { [ o, O, oe, OE ] }; // o O œ Œ key <AD05> { [ egrave, Egrave, dead_grave, grave ] }; // è È ` ` key <AD06> { [ dead_circumflex, exclam, exclamdown ] }; // ^ ! ¡ key <AD07> { [ v, V, dead_caron ] }; // v V ˇ key <AD08> { [ d, D, eth, ETH ] }; // d D ð Ð key <AD09> { [ l, L, UFDD0 ] }; // l L / key <AD10> { [ j, J, U0133, U0132 ] }; // j J ij IJ key <AD11> { [ z, Z, schwa, SCHWA ] }; // z Z ə Ə key <AD12> { [ w, W, dead_breve ] }; // w W ̆ // Third row key <AC01> { [ a, A, ae, AE ] }; // a A æ Æ key <AC02> { [ u, U, ugrave, Ugrave ] }; // u U ù Ù key <AC03> { [ i, I, dead_diaeresis, dead_abovedot ] }; // i I ̈ ˙ key <AC04> { [ e, E, EuroSign, UFDD1 ] }; // e E € ¤ key <AC05> { [ comma, semicolon, rightsinglequotemark, dead_horn ] }; // , ; ’ ̛ key <AC06> { [ c, C, copyright, U017f ] }; // c C © ſ key <AC07> { [ t, T, thorn, THORN ] }; // t T þ Þ key <AC08> { [ s, S, ssharp, U1E9E ] }; // s S ß ẞ key <AC09> { [ r, R, registered, trademark ] }; // r R ® ™ key <AC10> { [ n, N, dead_tilde ] }; // n N ~ key <AC11> { [ m, M, dead_macron, masculine ] }; // m M ̄ º key <BKSL> { [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ] }; // ç Ç ¸ , // Fourth row key <LSGT> { [ ecircumflex, Ecircumflex, slash ] }; // ê Ê / key <AB01> { [ agrave, Agrave, backslash ] }; // à À \ key <AB02> { [ y, Y, braceleft, leftsinglequotemark ] }; // y Y { ‘ key <AB03> { [ x, X, braceright, rightsinglequotemark ] }; // x X } ’ key <AB04> { [ period, colon, ellipsis, periodcentered ] }; // . : … · key <AB05> { [ k, K, asciitilde ] }; // k, K, ~ key <AB06> { [ apostrophe, question, questiondown, dead_hook ] }; // ' ? ¿ ̉ key <AB07> { [ q, Q, dead_abovering, dead_belowdot ] }; // q Q ˚ ̣ key <AB08> { [ g, G, UFDD2 ] }; // g G µ key <AB09> { [ h, H, dagger, doubledagger ] }; // h H † ‡ key <AB10> { [ f, F, dead_ogonek, ordfeminine ] }; // f F ̨ ª key <SPCE> { [ space, nobreakspace, underscore, U202F ] }; // ␣ (espace insécable) _ (espace insécable fin) // inversion </« et >/» key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark ] }; // < 2 « “ key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark ] }; // > 3 » ” // $ et # en 6 et 7 key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ dollar, 6, asciicircum ] }; // $ 6 ^ key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ numbersign, 7, plusminus, notsign ] }; // # 7 ± ¬ // @ et + en 8 et 9 key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ at, 8, U2212, onequarter ] }; // @ 8 − ¼ key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ plus, 9, division, onehalf ] }; // + / 9 ÷ ½ // slash et backslash en O et È key <AD04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ o, O, slash ] }; // o O / === key <AD05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, backslash ] }; // è È \ === // W en ^, ^ mort en altgr-W key <AD06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ w, W, dead_circumflex ] }; // w W ^ // à voir key <AD12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ thorn, THORN, dead_cedilla, UFDD3 ] }; // þ Þ ¸ , // - en altgr-A key <AC01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ a, A, minus ] }; // a A - // Ê en E key <AC04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ e, E, ecircumflex, Ecircumflex ] }; // e E ê Ê // Ç en altgr-T key <AC07> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ t, T, ccedilla, Ccedilla ] }; // t T ç Ç // déplacements ^ en Ç et ajout du signe monétaire en altgr //key <BKSL> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ dead_circumflex, exclam, UFDD1, exclamdown ] }; // ^ ! ¤ ¡ key <BKSL> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ exclam, exclamdown, UFDD1, dead_circumflex ] }; // ! ¡ ¤ ^ // accent grave mort en à key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, dead_grave, grave ] }; // à À ` ` // inversion K et ' key <AB05> { type[group1] = "FOUR_LEVEL", [ apostrophe, question, questiondown, dead_hook ] }; // ' ? ¿ key <AB06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde ] }; // k K ~ // à replacer : // EuroSign, UFDD1 € ¤ // oe, OE œ Œ // ae, AE æ Æ // // place vide : TLDE et shift-TLDE // modifs à faire : AD12 };
J'ai créé un fichier frkkn dans /usr/share/X11/symbols dans le but de ne pas dépendre des nouvelles mises à jour tout en profitant. La modification est alors aussi trés facilement recopiable sur d'autres systèmes.
Retour
- Je ne rencontre pas beaucoup de problème avec cette disposition. Un retour à la place d'origine du K et de ' peut être possible.
- Je remarque que je n'utilise par l'annulaire gauche ( index => X, majeur => Y et auriculaire pour Ê et À ). Je pensais donc pour résoudre se problème et me préparer à taper sur un TMx et comme je n'utilise plus la touche Ê de faire un décalage : À sur Ê, Y sur À, X sur Y, . sur X et ' sur . . Cela supprimerai totalement la touche K du bépo d'origine pour un clavier décalé.
- J'utilise la version officiel du bépo sur Windows. Je n'ai pas encore trouvé le temps de modifier les drivers. Je ne rencontre aucun problème de passer du bépo à mon bépoèw. Au pire une faute lorsque je tappe pour la première fois une touche qui différe mais qui permet le plus souvent de se rendre compte de la disposition utilisé. C'est pourquoi, je ne suis pas contre que chacun fasse une version modifiée du bépo tant que l'on puisse avoir toujours accès au bépo officiel. Je ne pense pas qu'un bépo anglais et programmation soit vraiment nécessaire ou alors qu'un version très légerement modifiée si l'on peut toujours revenir à un bépo officiel facilement.
- Je pense peut être modifier la rangé des touches numériques sur le TMx la décalant vers la gauche pour obtenir un alignement plus proche d'un clavier normal et pour ne pas trop éloigner les touches = et %. La touche TILDE reprendrenant la place de la touche %.
- Je viens de placer . et 0 en touche ². Cela me facilitera peut-être l'écriture d'adresse IP ou de nombres.
- J'ai recrée ma disposition avec ConfigGenerator. Je dispose maintenant de ma disposition sous windows et linux. Je metterais à disposition les drivers linux et le pkl pour windows une fois que j'aurai regroupé ma disposition et la version officiel. Je ne pense pas faire de version spécial TMx. Je mis adapte assez bien et je ne vois pas de problème particulier.
Version 2020
J'utilise maintenant le compositeur (sorte de windows manager pour wayland) Sway sur linux qui permet d'inclure directement un fichier .xkb dans sa configuration.
J'ai surtout ajouté l'utilisation de 8 niveaux de touches permettant d'avoir un clavier numérique sous la main gauche utilisant les mêmes touches 1 2 3 et disposant des principaux séparateurs de nombres à proximité (.,:;).
J'essaye le passage au niveau 5 avec CAPSLOCK. C'est sympa et cette touche devient utilisable au moins.
partial alphanumeric_keys modifier_keys xkb_keymap { xkb_keycodes { include "evdev+aliases(azerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_geometry { include "pc(pc105)" }; xkb_symbols "frkkn2" { name[Group1]= "France - Bepo, ergonomic, Dvorak way (vkkn.2.0)"; include "pc" include "inet(media_common)" include "compose(menu)" include "shift(breaks_caps)" key <TLDE> { type[group1] = "FOUR_LEVEL", [ dollar, period, endash, paragraph ] }; // $ . – ¶ key <AE01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ quotedbl, 1, emdash, doublelowquotemark, 1,1,1,1 ] }; // " 1 — „ key <AE02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark, 2,2,2,2 ] }; // < 2 « “ key <AE03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark, 3,3,3,3 ] }; // > 3 » ” key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft, 4, bracketleft, lessthanequal ] }; // ( 4 [ ≤ key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright, 5, bracketright, greaterthanequal ] }; // ) 5 ] ≥ key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ dollar, 6, asciicircum ] }; // $ 6 ^ key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ numbersign, 7, plusminus, notsign ] }; // # 7 ± ¬ key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ at, 8, U2212, onequarter ] }; // @ 8 − ¼ key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ plus, 9, division, onehalf ] }; // + 9 ÷ ½ key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ asterisk, 0, multiply, threequarters ] }; // * 0 × ¾ key <AE11> { type[group1] = "FOUR_LEVEL", [ equal, degree, notequal, minutes ] }; // = ° ≠ ′ key <AE12> { type[group1] = "FOUR_LEVEL", [ percent, grave, U2030, seconds ] }; // % ` ‰ ″ key <AD01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar, 4 ] }; // b B | ¦ key <AD02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_doubleacute, 5 ] }; // é É ´ ˝ key <AD03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ p, P, ampersand, section, 6,Up,Up,6 ] }; // p P & § key <AD04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ o, O, slash, slash, slash ] }; // o O / / key <AD05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, backslash, grave, semicolon ] }; // è È \ ` key <AD06> { type[group1] = "FOUR_LEVEL", [ w, W, VoidSymbol, dead_caron ] }; // w W ˇ key <AD07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ v, V, dead_circumflex ] }; // v V ^ key <AD08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ d, D, eth, ETH ] }; // d D ð Ð key <AD09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ l, L, UFDD0 ] }; // l L / key <AD10> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ j, J, U0133, U0132 ] }; // j J ij IJ key <AD11> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ z, Z, schwa, SCHWA ] }; // z Z ə Ə key <AD12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ thorn, THORN, dead_cedilla ] }; // þ Þ ¸ key <AC01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ a, A, minus, minus, 7,7,7,7 ] }; // a A - - key <AC02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ u, U, ugrave, Ugrave, 8,Left,Left,8 ] }; // u U ù Ù key <AC03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ i, I, dead_diaeresis, dead_abovedot, 9,Down,Down,9 ] }; // i I ¨ ˙ key <AC04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ e, E, ecircumflex, Ecircumflex, 0,Right,Right,0 ] }; // e E ê Ê key <AC05> { type[group1] = "FOUR_LEVEL", [ comma, semicolon, rightsinglequotemark, dead_horn ] }; // , ; ’ ̛ key <AC06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ c, C, copyright, U017F ] }; // c C © ſ key <AC07> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ t, T, ccedilla, Ccedilla ] }; // t T ç Ç key <AC08> { type[group1] = "FOUR_LEVEL_ALPHABETIC", [ s, S, ssharp, U1E9E ] }; // s S ß ẞ key <AC09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ r, R, registered, trademark ] }; // r R ® ™ key <AC10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ n, N, dead_tilde ] }; // n N ~ key <AC11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ m, M, dead_macron, masculine ] }; // m M ¯ º key <BKSL> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ exclam, exclamdown, EuroSign ] }; // ! ¡ € key <LSGT> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ecircumflex, Ecircumflex, slash ] }; // ê Ê / key <AB01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, dead_grave ] }; // à À ` key <AB02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, leftsinglequotemark, quotedbl ] }; // y Y { ‘ key <AB03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ x, X, braceright, rightsinglequotemark, colon ] }; // x X } ’ key <AB04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ period, colon, ellipsis, periodcentered, period ] }; // . : … · key <AB05> { type[group1] = "FOUR_LEVEL", [ apostrophe, question, questiondown, dead_hook ] }; // ' ? ¿ ̉ key <AB06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, U2328 ] }; // k K ~ ⌨ key <AB07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ q, Q, dead_abovering, dead_belowdot ] }; // q Q ˚ ̣ key <AB08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ g, G, UFDD2, UFDD2, XF86Cut ] }; // g G µ key <AB09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ h, H, dagger, doubledagger, XF86Copy ] }; // h H † ‡ key <AB10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ f, F, dead_ogonek, ordfeminine, XF86Paste ] }; // f F ˛ ª key <SPCE> { type[group1] = "FOUR_LEVEL", [ space, nobreakspace, underscore, U202F ] }; // _ include "level3(ralt_switch)" include "level5(rctrl_switch)" include "level5(caps_switch)" include "inet(evdev)" }; };
Version 2020 2
- Clavier numérique sous 123AZEQSD (azerty) via capslock ou ctrl-droit. - Fléche sous ESDF (azerty) via capslock ou ctrl-droit et altgr.
partial alphanumeric_keys modifier_keys xkb_keymap { xkb_keycodes { include "evdev+aliases(azerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_geometry { include "pc(pc105)" }; xkb_symbols "frkkn2" { name[Group1]= "France - Bepo, ergonomic, Dvorak way (vkkn.2.0)"; include "pc" include "inet(media_common)" include "compose(menu)" include "shift(breaks_caps)" key <TLDE> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ dollar, period, endash, paragraphg, dollar ] }; // $ . – ¶ key <AE01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ quotedbl, 1, emdash, doublelowquotemark, 1,1,1,1 ] }; // " 1 — „ key <AE02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ less, 2, guillemotleft, leftdoublequotemark, 2,2,2,2 ] }; // < 2 « “ key <AE03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ greater, 3, guillemotright, rightdoublequotemark, 3,3,3,3 ] }; // > 3 » ” key <AE04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ parenleft, 4, bracketleft, lessthanequal, parenleft, bracketleft ] }; // ( 4 [ ≤ key <AE05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ parenright, 5, bracketright, greaterthanequal, parenright, bracketright ] }; // ) 5 ] ≥ key <AE06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ dollar, 6, asciicircum, dollar ] }; // $ 6 ^ key <AE07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ numbersign, 7, plusminus, notsign, numbersign ] }; // # 7 ± ¬ key <AE08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ at, 8, U2212, onequarter, at ] }; // @ 8 − ¼ key <AE09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ plus, 9, division, onehalf, plus ] }; // + 9 ÷ ½ key <AE10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ asterisk, 0, multiply, threequarters, asterisk ] }; // * 0 × ¾ key <AE11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ equal, degree, notequal, minutes, equal ] }; // = ° ≠ ′ key <AE12> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ percent, grave, U2030, seconds, percent ] }; // % ` ‰ ″ key <AD01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar, 4 ] }; // b B | ¦ key <AD02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_doubleacute, 5 ] }; // é É ´ ˝ key <AD03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ p, P, ampersand, section, 6,Up,Up,6 ] }; // p P & § key <AD04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ o, O, slash, slash, slash ] }; // o O / / key <AD05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, backslash, grave, semicolon ] }; // è È \ ` key <AD06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ w, W, VoidSymbol, dead_caron ] }; // w W ˇ key <AD07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ v, V, dead_circumflex ] }; // v V ^ key <AD08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ d, D, eth, ETH ] }; // d D ð Ð key <AD09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ l, L, UFDD0 ] }; // l L / key <AD10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ j, J, U0133, U0132 ] }; // j J ij IJ key <AD11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ z, Z, schwa, SCHWA ] }; // z Z ə Ə key <AD12> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ thorn, THORN, dead_cedilla ] }; // þ Þ ¸ key <AC01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ a, A, minus, minus, 7,7,7,7 ] }; // a A - - key <AC02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ u, U, ugrave, Ugrave, 8,Left,Left,8 ] }; // u U ù Ù key <AC03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ i, I, dead_diaeresis, dead_abovedot, 9,Down,Down,9 ] }; // i I ¨ ˙ key <AC04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ e, E, ecircumflex, Ecircumflex, 0,Right,Right,0 ] }; // e E ê Ê key <AC05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ comma, semicolon, rightsinglequotemark, dead_horn, comma ] }; // , ; ’ ̛ key <AC06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ c, C, copyright, U017F ] }; // c C © ſ key <AC07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ t, T, ccedilla, Ccedilla ] }; // t T ç Ç key <AC08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ s, S, ssharp, U1E9E ] }; // s S ß ẞ key <AC09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ r, R, registered, trademark ] }; // r R ® ™ key <AC10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ n, N, dead_tilde ] }; // n N ~ key <AC11> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ m, M, dead_macron, masculine ] }; // m M ¯ º key <BKSL> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ exclam, exclamdown, EuroSign ] }; // ! ¡ € key <LSGT> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ ecircumflex, Ecircumflex, slash ] }; // ê Ê / key <AB01> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, dead_grave ] }; // à À ` key <AB02> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, leftsinglequotemark, quotedbl ] }; // y Y { ‘ key <AB03> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ x, X, braceright, rightsinglequotemark, colon ] }; // x X } ’ key <AB04> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ period, colon, ellipsis, periodcentered, period ] }; // . : … · key <AB05> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ apostrophe, question, questiondown, dead_hook, apostrophe ] }; // ' ? ¿ ̉ key <AB06> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, U2328 ] }; // k K ~ ⌨ key <AB07> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ q, Q, dead_abovering, dead_belowdot ] }; // q Q ˚ ̣ key <AB08> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ g, G, UFDD2, UFDD2, XF86Cut ] }; // g G µ key <AB09> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ h, H, dagger, doubledagger, XF86Copy ] }; // h H † ‡ key <AB10> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ f, F, dead_ogonek, ordfeminine, XF86Paste ] }; // f F ˛ ª key <SPCE> { type[group1] = "EIGHT_LEVEL_SEMIALPHABETIC", [ space, nobreakspace, underscore, U202F, space ] }; // _ include "level3(ralt_switch)" include "level5(rctrl_switch)" include "level5(caps_switch)" include "inet(evdev)" }; };