Skip to content

Instantly share code, notes, and snippets.

@FederAndInk
Created March 7, 2023 13:03
Show Gist options
  • Save FederAndInk/3704716d3b1a41558ea4be52c83c788f to your computer and use it in GitHub Desktop.
Save FederAndInk/3704716d3b1a41558ea4be52c83c788f to your computer and use it in GitHub Desktop.
// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
// │ ` ¸ │ ¹ ̨ │ ² É │ ³ ˘ │ 4 — │ 5 – │ 6 ‑ │ 7 È │ 8 ™ │ ] Ç │ } À │ ) ≠ │ + ± ┃ ⌫ Retour┃
// │ ~ ¹ │ & 1 │ é 2 │ " 3 │ ' 4 │ | 5 │ - 6 │ è 7 │ _ 8 │ [ 9 │ { @ │ ( ° │ = 0 ┃ arrière┃
// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
// ┃ ┃ A À │ Z  │ E ¢ │ R Ê │ T Þ │ Y Ÿ │ U Ù │ I Î │ O Œ │ P Ô │ ¨ ~ │ £ Ø ┃Entrée ┃
// ┃Tab ↹ ┃ a à │ z â │ e € │ r ê │ t þ │ y ÿ │ u ù │ i î │ o œ │ p ô │^^ ^ │ $ ø ┃ ⏎ ┃
// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃
// ┃ ┃ Q Ä │ S „ │ D Ë │ F ‚ │ G ¥ │ H Ð │ J Ü │ K Ï │ L Ŀ │ M Ö │ % Ù │ µ ̄ ┃ ┃
// ┃Maj ⇬ ┃ q ä │ s ß │ d ë │ f ‘ │ g ’ │ h ð │ j ü │ k ï │ l ŀ │ m ö │ # ' │ \ ` ┃ ┃
// ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫
// ┃ ┃ > ≥ │ W “ │ X ” │ C Ç │ V ← │ B ↑ │ N → │ ? … │ . . │ / ∕ │ § − ┃ ┃
// ┃Shift ⇧┃ < ≤ │ w « │ x ✘ │ c ç │ v ✔ │ b ↓ │ n ¬ │ , ¿ │ ; × │ : ÷ │ ! ∞ ┃Shift ⇧ ┃
// ┣━━━━━━━╋━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛
// ┃ ┃ ┃ ┃ ␣ Espace fine insécable ⍽ ┃ ┃ ┃ ┃
// ┃Ctrl ┃Meta ┃Alt ┃ ␣ Espace Espace insécable ⍽ ┃AltGr ⇮┃Menu ┃Ctrl ┃
// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛
default partial alphanumeric_keys
xkb_symbols "perso" {
// Modifies the oss French layout to create my personal layout
include "fr(oss)"
name[Group1]="French (Perso)";
// First row
key <TLDE> { [ asciitilde, grave, onesuperior, dead_cedilla ] }; // ~ ` ¹ ¸
key <AE01> { [ ampersand, onesuperior, 1, dead_ogonek ] }; // & ¹ 1 ̨
key <AE02> { [ eacute, twosuperior, 2, Eacute ] }; // é ² 2 É
key <AE03> { [ quotedbl, threesuperior, 3, dead_breve ] }; // " ³ 3 ˘
key <AE04> { [ apostrophe, 4, 4, 0x1002014 ] }; // ' 4 4 — (tiret cadratin)
key <AE05> { [ bar, 5, 5, 0x1002013 ] }; // | 5 5 – (tiret demi-cadratin)
key <AE06> { [ minus, 6, 6, 0x1002011 ] }; // - 6 6 ‑ (tiret insécable)
key <AE07> { [ egrave, 7, 7, Egrave ] }; // è 7 7 È
key <AE08> { [ underscore, 8, 8, trademark ] }; // _ 8 8 ™
key <AE09> { [ bracketleft, bracketright, 9, Ccedilla ] }; // [ ] 9 Ç
key <AE10> { [ braceleft, braceright, at, Agrave ] }; // { } @ À
key <AE11> { [ parenleft, parenright, degree, notequal ] }; // ( ) ° ≠
key <AE12> { [ equal, plus, 0, plusminus ] }; // = + 0 ±
// Second row
key <AD01> { [ a, A, agrave, Agrave ] }; // a A à À
key <AD02> { [ z, Z, acircumflex, Acircumflex ] }; // z Z â Â
key <AD03> { [ e, E, EuroSign, cent ] }; // e E € ¢
key <AD04> { [ r, R, ecircumflex, Ecircumflex ] }; // r R ê Ê
key <AD05> { [ t, T, thorn, THORN ] }; // t T þ Þ
key <AD06> { [ y, Y, ydiaeresis, Ydiaeresis ] }; // y Y ÿ Ÿ
key <AD07> { [ u, U, ugrave, Ugrave ] }; // u U ù Ù
key <AD08> { [ i, I, icircumflex, Icircumflex ] }; // i I î Î
key <AD09> { [ o, O, oe, OE ] }; // o O œ Œ
key <AD10> { [ p, P, ocircumflex, Ocircumflex ] }; // p P ô Ô
key <AD11> { [ asciicircum, dead_diaeresis, dead_circumflex, dead_tilde ] }; // ^^ ^ ̈ ̃
key <AD12> { [ dollar, sterling, oslash, Ooblique ] }; // $ £ ø Ø
// Third row
key <AC01> { [ q, Q, adiaeresis, Adiaeresis ] }; // q Q ä Ä
key <AC02> { [ s, S, ssharp, doublelowquotemark ] }; // s S ß „
key <AC03> { [ d, D, ediaeresis, Ediaeresis ] }; // d D ë Ë
key <AC04> { [ f, F, leftsinglequotemark, singlelowquotemark ] }; // f F ‘ ‚
key <AC05> { [ g, G, rightsinglequotemark, yen ] }; // g G ’ ¥
key <AC06> { [ h, H, eth, ETH ] }; // h H ð Ð
key <AC07> { [ j, J, udiaeresis, Udiaeresis ] }; // j J ü Ü
key <AC08> { [ k, K, idiaeresis, Idiaeresis ] }; // k K ï Ï
key <AC09> { [ l, L, 0x1000140, 0x100013F ] }; // l L ŀ Ŀ
key <AC10> { [ m, M, odiaeresis, Odiaeresis ] }; // m M ö Ö
key <AC11> { [ numbersign, percent, dead_acute, Ugrave ] }; // # % ' Ù
key <BKSL> { [ backslash, mu, dead_grave, dead_macron ] }; // \ µ ` ̄
// Fourth row
key <LSGT> { [ less, greater, lessthanequal, greaterthanequal ] }; // < > ≤ ≥
key <AB01> { [ w, W, guillemotleft, leftdoublequotemark ] }; // w W « “
key <AB02> { [ x, X, 0x1002718, rightdoublequotemark ] }; // x X ✘ ”
key <AB03> { [ c, C, ccedilla, Ccedilla ] }; // c C ç Ç
key <AB04> { [ v, V, 0x1002714, leftarrow ] }; // v V ✔ ← (espace fine insécable)
key <AB05> { [ b, B, downarrow, uparrow ] }; // b B ↓ ↑
key <AB06> { [ n, N, notsign, rightarrow ] }; // n N ¬ →
key <AB07> { [ comma, question, questiondown, 0x1002026 ] }; // , ? ¿ …
key <AB08> { [ semicolon, period, multiply, 0x10022C5 ] }; // ; . × ⋅
key <AB09> { [ colon, slash, division, 0x1002215 ] }; // : / ÷ ∕
key <AB10> { [ exclam, section, infinity, 0x1002212 ] }; // ! § ∞ −
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment