partial default alphanumeric_keys xkb_symbols "basic" { include "latin" // Alphanumeric section name[Group1]= "German (Switzerland)"; key { [ section, degree ] }; key { [ 1, plus, bar, exclamdown ] }; key { [ 2, quotedbl, at, oneeighth ] }; key { [ 3, asterisk, numbersign ] }; key { [ 4, ccedilla ] }; key { [ 5, percent ] }; key { [ 6, ampersand, notsign ] }; key { [ 7, slash, bar ] }; key { [ 8, parenleft, cent ] }; key { [ 9, parenright ] }; key { [ 0, equal ] }; key { [ apostrophe, question, dead_acute ] }; key { [ dead_circumflex, dead_grave, dead_tilde ] }; key { [ e, E, EuroSign ] }; key { [ z, Z ] }; key { [ udiaeresis, egrave, bracketleft ] }; key { [ dead_diaeresis, exclam, bracketright ] }; key { [ odiaeresis, eacute ] }; key { [ adiaeresis, agrave, braceleft ] }; key { [ dollar, sterling, braceright ] }; key { [ less, greater, backslash, brokenbar ] }; key { [ y, Y ] }; key { [ comma, semicolon ] }; key { [ period, colon ] }; key { [ minus, underscore ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "legacy" { include "ch(basic)" name[Group1]= "German (Switzerland, legacy)"; key { [ 7, slash, brokenbar ] }; }; partial alphanumeric_keys xkb_symbols "de" { include "ch(basic)" }; partial alphanumeric_keys xkb_symbols "de_Sundeadkeys" { // modify the basic Swiss German layout to use Sun dead keys include "ch(basic)" key { [ apostrophe, question, dead_acute ] }; key { [ dead_circumflex, dead_grave, dead_tilde ] }; key { [ dead_diaeresis, exclam, bracketright ] }; }; partial alphanumeric_keys xkb_symbols "de_sundeadkeys" { include "ch(de_Sundeadkeys)" name[Group1]= "German (Switzerland, Sun dead keys)"; }; partial alphanumeric_keys xkb_symbols "de_nodeadkeys" { // modify the basic Swiss German layout not to have any dead keys include "ch(basic)" name[Group1]= "German (Switzerland, eliminate dead keys)"; key { [ apostrophe, question, acute ] }; key { [ asciicircum, grave, asciitilde ] }; key { [ diaeresis, exclam, bracketright ] }; }; partial alphanumeric_keys xkb_symbols "fr" { // Describes the differences between a very simple US/ASCII // keyboard and a very simple Swiss/French keybaord include "ch(basic)" name[Group1]= "French (Switzerland)"; override key { [ egrave, udiaeresis, bracketleft ] }; override key { [ eacute, odiaeresis ] }; override key { [ agrave, adiaeresis, braceleft ] }; }; partial alphanumeric_keys xkb_symbols "fr_Sundeadkeys" { // modify the basic Swiss French layout to use Sun dead keys include "ch(fr)" key { [ apostrophe, question, dead_acute ] }; key { [ dead_circumflex, dead_grave, dead_tilde ] }; key { [ dead_diaeresis, exclam, bracketright ] }; }; partial alphanumeric_keys xkb_symbols "fr_sundeadkeys" { include "ch(fr_Sundeadkeys)" name[Group1]= "French (Switzerland, Sun dead keys)"; }; partial alphanumeric_keys xkb_symbols "fr_nodeadkeys" { // modify the basic Swiss French layout not to have any dead keys include "ch(fr)" name[Group1]= "French (Switzerland, eliminate dead keys)"; key { [ apostrophe, question, acute ] }; key { [ asciicircum, grave, asciitilde ] }; key { [ diaeresis, exclam, bracketright ] }; }; // Copied from macintosh_vndr/ch // 03.01.2003 // Andreas Tobler // modified for Swiss German Apple Extended Keyboard II partial alphanumeric_keys xkb_symbols "de_mac" { name[Group1]= "German (Switzerland, Macintosh)"; // Alphanumeric section key { [ 1, plus, plusminus, infinity ] }; key { [ 2, quotedbl, leftdoublequotemark, rightdoublequotemark ] }; key { [ 3, asterisk, numbersign, leftcaret ] }; // not displayed here key { [ 4, ccedilla, Ccedilla, slash ] }; key { [ 5, percent, bracketleft ] }; key { [ 6, ampersand, bracketright ] }; key { [ 7, slash, bar, backslash ] }; key { [ 8, parenleft, braceleft, Ograve ] }; key { [ 9, parenright, braceright, Ocircumflex ] }; key { [ 0, equal, notequal, Uacute ] }; key { [ apostrophe, question, questiondown, NoSymbol ] }; key { [ dead_circumflex,dead_grave, dead_acute, asciicircum ] }; key { [ q, Q, oe, OE ] }; key { [ w, W, Greek_SIGMA, Aacute ] }; key { [ e, E, EuroSign, Ediaeresis ] }; key { [ r, R, registered, Egrave ] }; key { [ t, T, dagger, Icircumflex ] }; key { [ z, Z, Greek_OMEGA, Iacute ] }; key { [ u, U, degree, Ugrave ] }; key { [ i, I, exclamdown, idotless ] }; key { [ o, O, oslash, Ooblique ] }; key { [ p, P, Greek_pi, Greek_PI ] }; key { [ udiaeresis, egrave, section, ydiaeresis ] }; key { [ dead_diaeresis, exclam, grave, apostrophe ] }; key { [ a, A, aring, Aring ] }; key { [ s, S, ssharp, NoSymbol ] }; // ligature fl key { [ d, D, Greek_sigma, NoSymbol ] }; // partialderivative is not available here att key { [ f, F, function, doubledagger ] }; key { [ g, G, at, comma ] }; key { [ h, H, ordfeminine, periodcentered ] }; key { [ j, J, masculine, eth ] }; key { [ k, K, Greek_DELTA, macron ] }; key { [ l, L, notsign, caret ] }; key { [ odiaeresis, eacute, cent, breve ] }; key { [ adiaeresis, agrave, ae, AE ] }; key { [ y, Y, yen, Ydiaeresis ] }; key { [ x, X, similarequal, trademark ] }; key { [ c, C, copyright, NoSymbol ] }; key { [ v, V, radical, diamond ] }; key { [ b, B, integral, NoSymbol ] }; key { [ n, N, dead_tilde, enopencircbullet ] }; // to be fixed att key { [ m, M, mu, dead_abovering ] }; // not sure att key { [ comma, semicolon, guillemotleft, guillemotright ] }; key { [ period, colon, ellipsis, division ] }; key { [ minus, underscore, hyphen, emdash ] }; key { [ section, degree, NoSymbol, NoSymbol ] }; // ligature fi // per mille key { [ space, nobreakspace, nobreakspace ] }; key { [ less, greater, lessthanequal, greaterthanequal ] }; key { [ dollar, sterling, paragraph, enfilledcircbullet ] }; include "kpdl(comma)" include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "fr_mac" { // Describes the differences between a very simple US/ASCII // keyboard and a very simple Swiss/French keybaord include "ch(de_mac)" name[Group1]= "French (Switzerland, Macintosh)"; override key { [ egrave, udiaeresis, bracketleft ] }; override key { [ eacute, odiaeresis ] }; override key { [ agrave, adiaeresis, braceleft ] }; };