// Unicode French derivative // Loose refactoring of the historic Linux French keyboard layout // // Copyright © 2006-2008 Nicolas Mailhot // // Credits (fr-latin1, fr-latin0, fr-latin9) // © 199x-1996 René Cougnenc ✝ // © 1997-2002 Guylhem Aznar // © 2003-2006 Nicolas Mailhot // Mourad Arnout marnout at free dot fr : clavier développeur // rangée 1 : échange(~ ²), [ → { → ] → [ cad altgr-4 [ ; altgr-5 ] ; altgr-) { altgr-= } // rangée 3 : altgr-l [ ; altgr-m ] // rangée 4 : échange(← ⍽), échange(→ ¬) // // ╭───╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮ // │ ³ ││ 1 ą ││ 2 É ││ 3 ă ││ 4 — ││ 5 – ││ 6 ‑ ││ 7 È ││ 8 ™ ││ 9 Ç ││ à À ││ ° ≠ ││ + ± │ // │ ~¹││ & ǎ ││ é ² ││ " # ││ ' [ ││ ( ] ││ - | ││ è ` ││ _ \ ││ ç ^ ││ à @ ││ ) { ││ = } │ // ╰───╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯ // ╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮ // │ A Æ ││ Z  ││ E ¢ ││ R Ê ││ T Þ ││ Y ÿ ││ U Û ││ I Î ││ O Œ ││ P Ô ││ ö ã ││ £ Ø │ // │ a æ ││ z â ││ e € ││ r ê ││ t þ ││ y ÿ ││ u û ││ i î ││ o œ ││ p ô ││ ô ã ││ $ ø │ // ╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯ // ╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮ // │ Q Ä ││ S „ ││ D Ë ││ F ‚ ││ G ¥ ││ H Ð ││ J Ü ││ K Ï ││ L Ŀ ││ M Ö ││ % Ù ││ µ ā │ // │ q æ ││ s ß ││ d ë ││ f ‘ ││ g ¥ ││ h ð ││ j ü ││ k ï ││ l [ ││ m ] ││ ù á ││ * à │ // ╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯ // ╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮╭─────╮ // │ > ≥ ││ W “ ││ X ” ││ C ® ││ V   ││ B ↑ ││ N → ││ ? … ││ . ⋅ ││ / ÷ ││ § ¡ │ // │ < ≤ ││ w « ││ x » ││ c © ││ v ← ││ b ↓ ││ n → ││ , ¿ ││ ; × ││ : \ ││ ! − │ // ╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯╰─────╯ default partial alphanumeric_keys xkb_symbols "basic" { include "latin" include "level3(ralt_switch)" include "nbsp(level4n)" // include "keypad(oss)" name[Group1]="French developper"; // rangée 1 : échange(~ ²), [ → { → ] → [, échange(← ⍽), échange(→ ¬) // First row key { [ asciitilde, threesuperior, onesuperior, dead_cedilla ] }; // ~ ³ ¹ ¸ key { [ ampersand, 1, dead_caron, dead_ogonek ] }; // & 1 ˇ ̨ key { [ eacute, 2, twosuperior, Eacute ] }; // é 2 ² É key { [ quotedbl, 3, numbersign, dead_breve ] }; // " 3 # ˘ key { [ apostrophe, 4, bracketleft, 0x1002014 ] }; // ' 4 [ — (tiret cadratin) key { [ parenleft, 5, bracketright, 0x1002013 ] }; // ( 5 ] – (tiret demi-cadratin) key { [ minus, 6, bar, 0x1002011 ] }; // - 6 | ‑ (tiret insécable) key { [ egrave, 7, ugrave, Egrave ] }; // è 7 ù È key { [ underscore, 8, backslash, trademark ] }; // _ 8 \ ™ key { [ ccedilla, 9, asciicircum, Ccedilla ] }; // ç 9 ^ Ç key { [ agrave, 0, at, Agrave ] }; // à 0 @ À key { [ parenright, degree, braceleft, notequal ] }; // ) ° { ≠ key { [ equal, plus, braceright, plusminus ] }; // = + } ± // Second row key { [ a, A, ae, AE ] }; // a A æ Æ key { [ z, Z, acircumflex, Acircumflex ] }; // z Z â  key { [ e, E, EuroSign, cent ] }; // e E € ¢ key { [ r, R, ecircumflex, Ecircumflex ] }; // r R ê Ê key { [ t, T, thorn, THORN ] }; // t T þ Þ key { [ y, Y, ydiaeresis, Ydiaeresis ] }; // y Y ÿ Ÿ key { [ u, U, ucircumflex, Ucircumflex ] }; // u U û Û key { [ i, I, icircumflex, Icircumflex ] }; // i I î Î key { [ o, O, oe, OE ] }; // o O œ Œ key { [ p, P, ocircumflex, Ocircumflex ] }; // p P ô Ô key { [ dead_circumflex, dead_diaeresis, dead_tilde, dead_abovering ] }; // ^ ̈ ̃ ˚ key { [ dollar, sterling, oslash, Ooblique ] }; // $ £ ø Ø // Third row key { [ q, Q, adiaeresis, Adiaeresis ] }; // q Q ä Ä key { [ s, S, ssharp, doublelowquotemark ] }; // s S ß „ key { [ d, D, ediaeresis, Ediaeresis ] }; // d D ë Ë key { [ f, F, leftsinglequotemark, singlelowquotemark ] }; // f F ‘ ‚ key { [ g, G, rightsinglequotemark, yen ] }; // g G ’ ¥ key { [ h, H, eth, ETH ] }; // h H ð Ð key { [ j, J, udiaeresis, Udiaeresis ] }; // j J ü Ü key { [ k, K, idiaeresis, Idiaeresis ] }; // k K ï Ï key { [ l, L, bracketleft, 0x100013F ] }; // l L ŀ Ŀ key { [ m, M, bracketright, Odiaeresis ] }; // m M ö Ö key { [ grave, percent, dead_grave, Ugrave ] }; // ` % ` Ù key { [ asterisk, dead_greek, dead_acute, dead_macron ] }; // * µ ´ ̄ // Fourth row key { [ less, greater, lessthanequal, greaterthanequal ] }; // < > ≤ ≥ key { [ w, W, guillemotleft, leftdoublequotemark ] }; // w W « “ key { [ x, X, guillemotright, rightdoublequotemark ] }; // x X » ” key { [ c, C, copyright, registered ] }; // c C © ® key { [ v, V, leftarrow, 0x100202F ] }; // v V ← ⍽ (espace fine insécable) key { [ b, B, downarrow, uparrow ] }; // b B ↓ ↑ key { [ n, N, rightarrow, notsign ] }; // n N → ¬ key { [ comma, question, questiondown, 0x1002026 ] }; // , ? ¿ … key { [ semicolon, period, multiply, 0x10022C5 ] }; // ; . × ⋅ key { [ colon, slash, backslash, division ] }; // : / ÷ ∕ key { [ exclam, section, 0x1002014, exclamdown ] }; // ! § — ¡ (tiret cadratin) // Compose key at XF86Calculator // key { [ XF86Calculator ] }; key { [ Multi_key ] }; // for asus vviobook set HOME, PGUP, PGDN, END with Super + left, up, down, right key.type="PC_SUPER_LEVEL2"; key { [ Left , Home ] }; key { [ Right, End ] }; key { [ Up, Prior ] }; key { [ Down, Next ] }; };