// À noter : il reste plein de touches relativement disponible sous la main droite avec à gauche combinaison Alt Graph + Shift // La touche Shift à gauche n'est plus utilisée, on pourrait imaginer qu'elle serve à une surcouche de contrôle multimédia xkb_keymap { xkb_keycodes { include "evdev+aliases(azerty)" }; xkb_types { include "complete" }; xkb_compatibility { include "complete" interpret F31 { action = Redirect(Key=, modifiers=Control); // ctrl-x }; interpret F32 { action = Redirect(Key=, modifiers=Control); // ctrl-c }; interpret F33 { action = Redirect(Key=, modifiers=Control); // ctrl-v }; interpret F34 { action = Redirect(Key=, modifiers=Control); // ctrl-z }; interpret F35 { action = Redirect(Key=, modifiers=Control); // ctrl-y }; interpret F25 { action = Redirect(Key=, modifiers=Control); // ctrl-f }; interpret F27 { action = Redirect(Key=, modifiers=Control); // ctrl-s }; // interpret F36 { // action = Redirect(Key=, modifiers=Control); // ctrl-a // }; }; partial alphanumeric_keys xkb_symbols "sebounet" { name[Group1]= "France - Bepo, ergonomic, Sébounet way (v1)"; include "pc(pc105)" key { [ VoidSymbol ], actions = [ SetControls(controls=Overlay1) ] }; key { type[group1] = "FOUR_LEVEL", [ dollar, numbersign, endash, paragraph ] }; // $ # – ¶ key { type[group1] = "FOUR_LEVEL" , [ numbersign, section, schwa, U2192 ] }; // # § ə → key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ dollar, x, lessthanequal, U21D2 ] }; // « x ≤ ⇒ key { type[group1] = "FOUR_LEVEL" , [ less, guillemotleft, bracketleft, lessthanequal ] }; // » x ≥ ‑ key { type[group1] = "FOUR_LEVEL" , [ greater, guillemotright, bracketright, greaterthanequal ] }; // / ( [ x key { type[group1] = "FOUR_LEVEL" , [ rightsinglequotemark ] }; // ’ key { type[group1] = "FOUR_LEVEL" , [ at ] }; // @ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ccedilla, Ccedilla, equal ] }; // ç Ç = key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ agrave, Agrave, 8, degree ] }; // ç Ç 8 ° key { type[group1] = "FOUR_LEVEL" , [ w, W, 9 ] }; // w W 9 key { type[group1] = "FOUR_LEVEL" , [ m, M ] }; // m M key { type[group1] = "FOUR_LEVEL" , [ percent, U2030 ] }; // % ‰ key { type[group1] = "FOUR_LEVEL" , [ x ] }; // x key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ b, B, bar, brokenbar ], // b B | ¦ overlay1 = }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ eacute, Eacute, dead_acute, dead_grave ], // é É ´ ` overlay1 = }; key { type[group1] = "FOUR_LEVEL_ALPHABETIC" , [ p, P, ampersand, doublelowquotemark ], // p P & „ overlay1 = }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ o, O, slash, oe ] }; // o O / oe key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ egrave, Egrave, asterisk, OE ] }; // è È * Œ key { type[group1] = "FOUR_LEVEL" , [ dead_circumflex, exclam, plus, dead_caron ] }; // ^ ! + ˇ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ v, V, 4, plusminus ], overlay1 = }; // v V 4 ± key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ d, D, 5, trademark ], overlay1 = }; // d D 5 ™ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ l, L, 6, UFDD0 ], overlay1 = }; // l L 6 / key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ j, J, 7, U1D49 ] }; // j J 7 ᵉ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ z, Z, asterisk, U02B3 ] }; // z Z * ʳ key { type[group1] = "FOUR_LEVEL" , [ Caps_Lock, multiply, asterisk, dagger ] }; // x × * † key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ a, A, percent, ae], // a A % ae overlay1 = }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ u, U, parenleft, ugrave ], // u U ( ù overlay1 = }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ i, I, parenright, dead_diaeresis ], // i I ) ¨ overlay1 = }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ e, E, equal, notequal ], // e E = ≠ overlay1 = }; key { type[group1] = "FOUR_LEVEL" , [ comma, semicolon, backslash, AE ] }; // , ; \ Æ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ c, C, minus, copyright ], overlay1 = }; // c C - © key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ t, T, 0, U2212 ] }; // t T 0 − key { overlay1 = }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ s, S, 1, ssharp ], overlay1 = }; // s S 1 ß key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ r, R, 2, registered ], overlay1 = }; // r R 2 ® key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ n, N, 3, notsign ], overlay1 = }; // n N 3 ¬ key { type[group1] = "ONE_LEVEL", [ Shift_R ] }; // key { type[group1] = "ONE_LEVEL" , [ Caps_Lock ] }; // // key { type[group1] = "ONE_LEVEL", [ a ] }; // Anciennement, touche de changement de modes key { type[group1] = "ONE_LEVEL", [ ISO_Level3_Shift ], overlay1 = }; // key { type[group1] = "ONE_LEVEL", [ Shift_L ], overlay1 = }; // il faudra choisir sur quelle touche je met ^s key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ y, Y, braceleft, U2243 ] }; // y Y { ≃ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ x, X, braceright, U2022 ] }; // x X } • key { type[group1] = "FOUR_LEVEL" , [ period, colon, ellipsis, periodcentered ] }; // . : … · key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ k, K, asciitilde, dead_tilde ] }; // k K ~ ~ key { type[group1] = "FOUR_LEVEL" , [ apostrophe, question, quotedbl, leftsinglequotemark ], // ' ? " ‘ overlay1 = }; key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ q, Q, dollar, dead_ogonek ], overlay1 = }; // q Q " ˛ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ g, G, numbersign, dead_cedilla ], overlay1 = }; // g G * ¸ key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ h, H, x, x ], overlay1 = }; // h H key { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ f, F, x, x ] }; // f F key { type[group1] = "ONE_LEVEL", [ Control_R ] }; key { type[group1] = "ONE_LEVEL", [ Alt_L ] }; // La touche super devient Alt key { type[group1] = "ONE_LEVEL", [ Super_L ] }; // La touche Alt devient super (Mod4 pour awesome) key { type[group1] = "FOUR_LEVEL" , [ space, space, underscore, nobreakspace ] }; // _   // key { [ ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] }; Anciennement pour changer de groupe // key { type[group1] = "ONE_LEVEL", [ ssharp ] }; // J'aurai bien aimé que cette touche serve d'overlay, mais ça bugue key { [ x ] }; key { [ c ] }; key { [ v ] }; key { [ z ] }; key { [ y ] }; key { [ f ] }; key { [ s ] }; // key { [ a ] }; key { [ F31 ] }; // ctrl-x key { [ F32 ] }; // ctrl-c key { [ F33 ] }; // ctrl-v key { [ F34 ] }; // ctrl-z key { [ F25 ] }; // ctrl-f key { [ F35 ] }; // ctrl-y key { [ F27 ] }; // ctrl-s // key { [ F36 ] }; // ctrl-a include "level3(ralt_switch)" }; xkb_geometry { include "pc(pc105)" }; };