partial alphanumeric_keys xkb_symbols "qwerty-fr" { include "us(basic)" include "level3(ralt_switch)" include "keypad(oss)" name[Group1]= "US keyboard with french symbols - AltGr combination"; key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] }; key <AE01> { [ 1, exclam, onesuperior, exclamdown ] }; key <AE02> { [ 2, at, twosuperior, dead_doubleacute ] }; key <AE03> { [ 3, numbersign, ecircumflex, Ecircumflex ] }; key <AE04> { [ 4, dollar, EuroSign, dead_currency ] }; // FIXME: dead_currency has a different mapping than the one we want for qwerty-fr. Need to define a custom dead key instead. See Windows layout for dead key definition. key <AE05> { [ 5, percent, dead_macron, dead_abovedot ] }; key <AE06> { [ 6, asciicircum, dead_circumflex, dead_caron ] }; key <AE07> { [ 7, ampersand, ucircumflex, Ucircumflex ] }; key <AE08> { [ 8, asterisk, icircumflex, Icircumflex ] }; key <AE09> { [ 9, parenleft, ocircumflex, Ocircumflex ] }; key <AE10> { [ 0, parenright, oslash, Oslash ] }; key <AE11> { [ minus, underscore, endash, emdash ] }; key <AE12> { [ equal, plus, notequal, approxeq ] }; key <AD01> { [ q, Q, acircumflex, Acircumflex ] }; key <AD02> { [ w, W, eacute, Eacute ] }; key <AD03> { [ e, E, egrave, Egrave ] }; key <AD04> { [ r, R, registered, copyright ] }; key <AD05> { [ t, T, thorn, THORN ] }; key <AD06> { [ y, Y, dead_invertedbreve, dead_breve ] }; key <AD07> { [ u, U, ugrave, Ugrave ] }; key <AD08> { [ i, I, igrave, Igrave ] }; key <AD09> { [ o, O, ograve, Ograve ] }; key <AD10> { [ p, P, oe, OE ] }; key <AD11> { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] }; key <AD12> { [ bracketright, braceright, guillemotright, rightdoublequotemark ] }; key <AC01> { [ a, A, agrave, Agrave ] }; key <AC02> { [ s, S, ae, AE ] }; key <AC03> { [ d, D, ediaeresis, Ediaeresis ] }; key <AC04> { [ f, F, VoidSymbol, VoidSymbol ] }; key <AC05> { [ g, G, dead_greek, VoidSymbol ] }; // FIXME: dead_greek has a different mapping than the one we want for qwerty-fr. Need to define a custom dead key instead. See Windows layout for dead key definition. key <AC06> { [ h, H, ydiaeresis, Ydiaeresis ] }; key <AC07> { [ j, J, udiaeresis, Udiaeresis ] }; key <AC08> { [ k, K, idiaeresis, Idiaeresis ] }; key <AC09> { [ l, L, odiaeresis, Odiaeresis ] }; key <AC10> { [ semicolon, colon, dead_acute, dead_abovering ] }; key <AC11> { [ apostrophe, quotedbl, dead_grave, dead_diaeresis ] }; key <BKSL> { [ backslash, bar, VoidSymbol, doublelowquotemark ] }; // „ key <LSGT> { [ less, greater, lessthanequal, greaterthanequal ] }; key <AB01> { [ z, Z, adiaeresis, Adiaeresis ] }; key <AB02> { [ x, X, multiply, division ] }; key <AB03> { [ c, C, ccedilla, Ccedilla ] }; key <AB04> { [ v, V, VoidSymbol, VoidSymbol ] }; key <AB05> { [ b, B, ssharp, U1E9E ] }; // ß, ẞ (capital) key <AB06> { [ n, N, ntilde, Ntilde ] }; key <AB07> { [ m, M, VoidSymbol, VoidSymbol ] }; key <AB08> { [ comma, less, dead_cedilla, dead_ogonek ] }; key <AB09> { [ period, greater, periodcentered, ellipsis ] }; // ., >, ·, … key <AB10> { [ slash, question, rightsinglequotemark, questiondown ] }; // /, ?, ’, ¿ key <SPCE> { [ space, space, nobreakspace, 0x100202F ] }; // espace insécable fine };