default partial xkb_symbols "fr" { name[Group1] = "French (Canada)"; key { [ numbersign, bar, backslash ] }; key { [ 1, exclam, plusminus ] }; key { [ 2, quotedbl, at ] }; key { [ 3, slash, sterling ] }; key { [ 4, dollar, cent ] }; key { [ 5, percent, currency ] }; key { [ 6, question, notsign ] }; key { [ 7, ampersand, brokenbar ] }; key { [ 8, asterisk, twosuperior ] }; key { [ 9, parenleft, threesuperior ] }; key { [ 0, parenright, onequarter ] }; key { [ minus, underscore, onehalf ] }; key { [ equal, plus, threequarters ] }; key { [ q, Q ] }; key { [ w, W ] }; key { [ e, E ] }; key { [ r, R ] }; key { [ t, T ] }; key { [ y, Y ] }; key { [ u, U ] }; key { [ i, I ] }; key { [ o, O, section ] }; key { [ p, P, paragraph ] }; key { [dead_circumflex, dead_circumflex, bracketleft ] }; key { [ dead_cedilla, dead_diaeresis, bracketright ] }; key { [ a, A ] }; key { [ s, S ] }; key { [ d, D ] }; key { [ f, F ] }; key { [ g, G ] }; key { [ h, H ] }; key { [ j, J ] }; key { [ k, K ] }; key { [ l, L ] }; key { [ semicolon, colon, asciitilde ] }; key { [dead_grave, dead_grave, braceleft ] }; key { [ less, greater, braceright ] }; key { [guillemotleft, guillemotright, degree] }; key { [ z, Z ] }; key { [ x, X ] }; key { [ c, C ] }; key { [ v, V ] }; key { [ b, B ] }; key { [ n, N ] }; key { [ m, M, mu ] }; key { [ comma, apostrophe, macron ] }; key { [ period, period, hyphen ] }; key { [ eacute, Eacute, dead_acute ] }; key { [ space, space, nobreakspace ] }; include "level3(ralt_switch)" }; xkb_symbols "fr-dvorak" { name[Group1] = "French (Canada, Dvorak)"; key { [ numbersign, bar, backslash ] }; key { [ 1, exclam, plusminus ] }; key { [ 2, quotedbl, at ] }; key { [ 3, slash, sterling ] }; key { [ 4, dollar, cent ] }; key { [ 5, percent, currency ] }; key { [ 6, question, notsign ] }; key { [ 7, ampersand, brokenbar ] }; key { [ 8, asterisk, twosuperior ] }; key { [ 9, parenleft, threesuperior ] }; key { [ 0, parenright, onequarter ] }; key { [dead_circumflex, dead_circumflex, bracketleft ] }; key { [ dead_cedilla, dead_diaeresis, bracketright ] }; key { [dead_grave, dead_grave, braceleft ] }; key { [ comma, apostrophe, macron ] }; key { [ period, period, hyphen ] }; key { [ p, P, paragraph ] }; key { [ y, Y ] }; key { [ f, F ] }; key { [ g, G ] }; key { [ c, C ] }; key { [ r, R ] }; key { [ l, L ] }; key { [ eacute, Eacute, dead_acute ] }; key { [ equal, plus, threequarters ] }; key { [ a, A ] }; key { [ o, O, section ] }; key { [ e, E ] }; key { [ u, U ] }; key { [ i, I ] }; key { [ d, D ] }; key { [ h, H ] }; key { [ t, T ] }; key { [ n, N ] }; key { [ s, S ] }; key { [ minus, underscore, onehalf ] }; key { [ less, greater, braceright ] }; key { [guillemotleft, guillemotright, degree] }; key { [ semicolon, colon, asciitilde ] }; key { [ q, Q ] }; key { [ j, J ] }; key { [ k, K ] }; key { [ x, X ] }; key { [ b, B ] }; key { [ m, M, mu ] }; key { [ w, W ] }; key { [ v, V ] }; key { [ z, Z ] }; key { [ space, space, nobreakspace ] }; include "level3(ralt_switch)" }; partial xkb_symbols "fr-legacy" { name[Group1] = "French (Canada, legacy)"; include "ca(fr)" key { [ degree, degree, notsign ] }; key { [ 1, exclam, onesuperior ] }; key { [ 3, numbersign, threesuperior ] }; key { [ 4, dollar, onequarter ] }; key { [ 5, percent, onehalf ] }; key { [ 6, question, threequarters ] }; key { [ 7, ampersand, braceleft ] }; key { [ 8, asterisk, bracketleft ] }; key { [ 9, parenleft, bracketright, plusminus ] }; key { [ 0, parenright, braceright ] }; key { [ minus, underscore, bar, questiondown] }; key { [ equal, plus, dead_cedilla ] }; key { [ r, R, paragraph, registered ] }; key { [ y, Y, yen ] }; key { [ o, O, oslash, Ooblique ] }; key { [ p, P, thorn, THORN ] }; key { [dead_circumflex, dead_circumflex, degree ] }; key { [ ccedilla, Ccedilla, dead_tilde, dead_diaeresis ] }; key { [ a, A, ae, AE ] }; key { [ s, S, ssharp, section ] }; key { [ d, D, eth, ETH ] }; key { [ f, F, ordfeminine ] }; key { [ semicolon, colon, dead_acute, dead_acute ] }; key { [ egrave, Egrave ] }; key { [ agrave, Agrave, dead_grave ] }; key { [ ugrave, Ugrave, backslash, bar ] }; key { [ z, Z, guillemotleft ] }; key { [ x, X, guillemotright ] }; key { [ c, C, cent, copyright ] }; key { [ m, M, mu, masculine ] }; key { [ comma, apostrophe, less ] }; key { [ period, period, greater ] }; key { [ eacute, Eacute, slash ] }; }; partial xkb_symbols "multi" { name[Group1] = "Canadian Multilingual (first part)"; include "ca(fr)" key { [ slash, backslash, bar ] }; key { [ 1, exclam ] }; key { [ 2, at ] }; key { [ 3, numbersign ] }; key { [ 4, dollar ] }; key { [ 5, percent ] }; key { [ 6, question ] }; key { [ 7, ampersand, braceleft ] }; key { [ 8, asterisk, braceright ] }; key { [ 9, parenleft, bracketleft ] }; key { [ 0, parenright, bracketright ] }; key { [ minus, underscore ] }; key { [ equal, plus, notsign ] }; key { [ o, O ] }; key { [ p, P ] }; key { [dead_circumflex, dead_diaeresis, dead_grave ] }; key { [ ccedilla, Ccedilla, asciitilde ] }; key { [ semicolon, colon, degree ] }; key { [ egrave, Egrave ] }; key { [ agrave, Agrave ] }; key { [ ugrave, Ugrave ] }; key { [ z, Z, guillemotleft ] }; key { [ x, X, guillemotright ] }; key { [ comma, apostrophe, less ] }; key { [ period, quotedbl, greater ] }; key { [ eacute, Eacute ] }; }; partial xkb_symbols "multi-2gr" { name[Group1] = "Canadian Multilingual (second part)"; key { [ NoSymbol, hyphen ] }; key { [ onesuperior, exclamdown ] }; key { [ twosuperior, NoSymbol ] }; key { [ threesuperior, sterling ] }; key { [ onequarter, currency ] }; key { [ onehalf,threeeighths ] }; key { [ threequarters, fiveeighths ] }; key { [ NoSymbol,seveneighths ] }; key { [ NoSymbol, trademark ] }; key { [ NoSymbol, plusminus ] }; key { [ NoSymbol, questiondown] }; key { [ dead_cedilla, dead_ogonek ] }; key { [ NoSymbol, Greek_OMEGA ] }; key { [ lstroke, Lstroke ] }; key { [ oe, OE ] }; key { [ paragraph, registered ] }; key { [ tslash, Tslash ] }; key { [ leftarrow, yen ] }; key { [ downarrow, uparrow ] }; key { [ rightarrow, idotless ] }; key { [ oslash, Ooblique ] }; key { [ thorn, THORN ] }; key { [ NoSymbol, dead_abovering ] }; key { [ dead_tilde, dead_macron ] }; key { [ ae, AE ] }; key { [ ssharp, section ] }; key { [ eth, ETH ] }; key { [ NoSymbol, ordfeminine ] }; key { [ eng, ENG ] }; key { [ hstroke, Hstroke ] }; key { [ U0133, U0132 ] }; key { [ kra, NoSymbol ] }; key { [ U0140, U013F ] }; key { [ dead_acute, dead_doubleacute ] }; key { [ NoSymbol, dead_caron ] }; key { [ NoSymbol, dead_breve ] }; key { [ NoSymbol, brokenbar ] }; key { [ cent, copyright ] }; key { [ leftdoublequotemark, leftsinglequotemark ] }; key { [ rightdoublequotemark, rightsinglequotemark ] }; key { [ U0149, U266A ] }; key { [ mu, masculine ] }; key { [ Greek_horizbar, multiply ] }; key { [ periodcentered, division ] }; key { [ NoSymbol, dead_abovedot ] }; }; // based on // Inuktitut keyboard for X11 // written by Pablo Saratxaga alphanumeric_keys xkb_symbols "ike" { name[Group1]= "Inuktitut"; key { [ 0x01001595, 1 ] }; key { [ 0x01001449, 2 ] }; key { [ 0x01001550, 3 ] }; key { [ 0x01001483, 4 ] }; key { [ 0x01001466, 5 ] }; key { [ 0x01001585, 6 ] }; key { [ 0x010014bb, 7 ] }; key { [ 0x010014d0, 8 ] }; key { [ 0x010014ea, 9 ] }; key { [ 0x0100153e, 0 ] }; key { [ minus, underscore ] }; key { [ 0x0100155d, equal ] }; key { [ 0x0100158f, 0x0100148b ] }; key { [ 0x01001403, 0x01001431 ] }; key { [ 0x0100157f, 0x01001546 ] }; key { [ 0x0100146d, 0x01001596 ] }; key { [ 0x0100144e, 0x01001671 ] }; key { [ 0x010014ef, 0x01001673 ] }; key { [ 0x010014a5, 0x01001675 ] }; key { [ 0x010014c2, 0x010015a4 ] }; key { [ 0x010014d5, 0x010015a0 ] }; key { [ 0x01001528, 0x010015a6 ] }; key { [ 0x010014a1, 0x01001505 ] }; key { [ dead_abovedot, 0x0100141e] }; key { [ 0x01001591, 0x0100148d ] }; key { [ 0x01001405, 0x01001433 ] }; key { [ 0x01001581, 0x01001548 ] }; key { [ 0x0100146f, 0x01001555 ] }; key { [ 0x01001450, parenleft ] }; key { [ 0x010014f1, parenright ] }; key { [ 0x010014a7, 0x0100152a ] }; key { [ 0x010014c4, 0x01001557 ] }; key { [ 0x010014d7, 0x010015a2 ] }; key { [ semicolon, colon ] }; key { [ apostrophe, quotedbl ] }; key { [ 0x01001593, 0x01001490 ] }; key { [ 0x0100140a, 0x01001438 ] }; key { [ 0x01001583, 0x0100154b ] }; key { [ 0x01001472, question ] }; key { [ 0x01001455, 0x0100157c ] }; key { [ 0x010014f4, 0x010014c7 ] }; key { [ 0x010014aa, 0x010014da ] }; key { [ comma, less ] }; key { [ period, greater ] }; key { [ 0x0100152d, 0x01001559 ] }; key { [ 0x0100157b, 0x01001575 ] }; key { [ 0x01001579, 0x01001577 ] }; key { [ backslash, bar ] }; // End alphanumeric section }; partial xkb_symbols "multix" { name[Group1] = "Canadian Multilingual"; key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC"; key { [ slash, backslash, bar, NoSymbol, NoSymbol, hyphen ] }; key { [ 1, exclam, plusminus, NoSymbol, onesuperior, exclamdown ] }; key { [ 2, at, at, NoSymbol, twosuperior, NoSymbol ] }; key { [ 3, numbersign, sterling, NoSymbol, threesuperior, sterling ] }; key { [ 4, dollar, cent, NoSymbol, onequarter, currency ] }; key { [ 5, percent, currency, NoSymbol, onehalf, threeeighths ] }; key { [ 6, question, notsign, NoSymbol, threequarters, fiveeighths ] }; key { [ 7, ampersand, braceleft, NoSymbol, NoSymbol, seveneighths ] }; key { [ 8, asterisk, braceright, NoSymbol, NoSymbol, trademark ] }; key { [ 9, parenleft, bracketleft, NoSymbol, NoSymbol, plusminus ] }; key { [ 0, parenright, bracketright, NoSymbol ] }; key { [ minus, underscore, onehalf, NoSymbol, NoSymbol, questiondown] }; key { [ equal, plus, notsign, NoSymbol, dead_cedilla, dead_ogonek ] }; key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC"; key { [ q, Q, NoSymbol, NoSymbol, NoSymbol, Greek_OMEGA ] }; key { [ w, W, NoSymbol, NoSymbol, lstroke, Lstroke ] }; key { [ e, E, NoSymbol, NoSymbol, oe, OE ] }; key { [ r, R, NoSymbol, NoSymbol, paragraph, registered ] }; key { [ t, T, NoSymbol, NoSymbol, tslash, Tslash ] }; key { [ y, Y, NoSymbol, NoSymbol, leftarrow, yen ] }; key { [ u, U, NoSymbol, NoSymbol, downarrow, uparrow ] }; key { [ i, I, NoSymbol, NoSymbol, rightarrow, idotless ] }; key { [ o, O, section, NoSymbol, oslash, Ooblique ] }; key { [ p, P, paragraph, NoSymbol, thorn, THORN ] }; key.type[group1]="EIGHT_LEVEL"; key { [dead_circumflex, dead_diaeresis, dead_grave, NoSymbol, NoSymbol, dead_abovering ] }; key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC"; key { [ ccedilla, Ccedilla, asciitilde, NoSymbol, dead_tilde, dead_macron ] }; key { [ a, A, NoSymbol, NoSymbol, ae, AE ] }; key { [ s, S, NoSymbol, NoSymbol, ssharp, section ] }; key { [ d, D, NoSymbol, NoSymbol, eth, ETH ] }; key { [ f, F, NoSymbol, NoSymbol, NoSymbol, ordfeminine ] }; key { [ g, G, NoSymbol, NoSymbol, eng, ENG ] }; key { [ h, H, NoSymbol, NoSymbol, hstroke, Hstroke ] }; key { [ j, J, NoSymbol, NoSymbol, U0133, U0132 ] }; key { [ k, K, NoSymbol, NoSymbol, kra, NoSymbol ] }; key { [ l, L, NoSymbol, NoSymbol, U0140, U013F ] }; key.type[group1]="EIGHT_LEVEL"; key { [ semicolon, colon, degree, NoSymbol, dead_acute, dead_doubleacute ] }; key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC"; key { [ egrave, Egrave, braceleft, NoSymbol, NoSymbol, dead_caron ] }; key { [ agrave, Agrave, braceright, NoSymbol, NoSymbol, dead_breve ] }; key { [ ugrave, Ugrave, degree, NoSymbol, NoSymbol, brokenbar ] }; key.type[group1]="FOUR_LEVEL_SEMIALPHABETIC"; key { [ z, Z, guillemotleft, NoSymbol ] }; key { [ x, X, guillemotright, NoSymbol ] }; key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC"; key { [ c, C, NoSymbol, NoSymbol, cent, copyright ] }; key { [ v, V, NoSymbol, NoSymbol, leftdoublequotemark, leftsinglequotemark ] }; key { [ b, B, NoSymbol, NoSymbol, rightdoublequotemark, rightsinglequotemark ] }; key { [ n, N, NoSymbol, NoSymbol, U0149, U266A ] }; key { [ m, M, mu, NoSymbol, mu, masculine ] }; key { [ comma, apostrophe, less, NoSymbol, Greek_horizbar, multiply ] }; key { [ period, quotedbl, greater, NoSymbol, periodcentered, division ] }; key { [ eacute, Eacute, dead_acute, NoSymbol, NoSymbol, dead_abovedot ] }; include "nbsp(level3s)" modifier_map Control{ Control_L }; include "level3(ralt_switch)" include "level5(rctrl_switch)" }; // OLPC Section xkb_symbols "olpc" { include "ca(fr)" key { [ 2, quotedbl, ograve, Ograve ] }; key { [ 3, slash, at, VoidSymbol ] }; key { [ e, E, EuroSign, VoidSymbol] }; key { [ period, period, 0x1002010 ] }; key { [ guillemotleft, guillemotright, degree, VoidSymbol ] }; }; partial alphanumeric_keys xkb_symbols "eng" { name[Group1] = "English (Canada)"; include "us(basic)" }; // EXTRAS: partial alphanumeric_keys xkb_symbols "kut" { //Ejective U0313 and compose accents are from shs layout include "ca(shs)" name[Group1]= "Kutenai"; // Alphanumeric section // Alveolar Click key { [ t, T,U01C2 ,U01C2 ] }; //Cent sign key { [ c, C,U00A2,U00A2 ] }; //Mid dot key { [ period, greater,U00B7 ] }; //Glottal stop key { [ slash, question, U0294 ] }; //COMBINING COMMA ABOVE RIGHT key { [ apostrophe, quotedbl, U0315,U0315 ] }; //MODIFIER LETTER RIGHT HALF RING key { [ semicolon, colon,U02BE,U02BE ] }; }; // Secwepemctsin keyboard for X11 // written by Neskie Manuel partial alphanumeric_keys xkb_symbols "shs" { include "us" name[Group1]= "Secwepemctsin"; //Using Dead key to get COMBINING COMMA ABOVE for ejectives on //q, l, t, s, m, g, k, p, w, y, r //XCompose key is used for the other accute and grave. key { [ comma, less, U0313 ] }; key { [ a, A, aacute, Aacute ] }; key { [ e, E, eacute, Eacute ] }; key { [ u, U, uacute, Uacute ] }; key { [ i, I, iacute, Iacute ] }; key { [ o, O, oacute, Oacute ] }; include "level3(ralt_switch)" include "compose(rctrl)" };