1default partial alphanumeric_keys 2xkb_symbols "basic" { 3 4 include "latin" 5 name[Group1]= "German (Switzerland)"; 6 7 key <TLDE> { [ section, degree ] }; 8 key <AE01> { [ 1, plus, bar, exclamdown ] }; 9 key <AE02> { [ 2, quotedbl, at, oneeighth ] }; 10 key <AE03> { [ 3, asterisk, numbersign ] }; 11 key <AE04> { [ 4, ccedilla ] }; 12 key <AE05> { [ 5, percent ] }; 13 key <AE06> { [ 6, ampersand, notsign ] }; 14 key <AE07> { [ 7, slash, bar ] }; 15 key <AE08> { [ 8, parenleft, cent ] }; 16 key <AE09> { [ 9, parenright ] }; 17 key <AE10> { [ 0, equal ] }; 18 key <AE11> { [ apostrophe, question, dead_acute ] }; 19 key <AE12> { [ dead_circumflex, dead_grave, dead_tilde ] }; 20 21 key <AD03> { [ e, E, EuroSign ] }; 22 key <AD06> { [ z, Z ] }; 23 key <AD11> { [ udiaeresis, egrave, bracketleft ] }; 24 key <AD12> { [ dead_diaeresis, exclam, bracketright ] }; 25 26 key <AC10> { [ odiaeresis, eacute ] }; 27 key <AC11> { [ adiaeresis, agrave, braceleft ] }; 28 key <BKSL> { [ dollar, sterling, braceright ] }; 29 30 key <LSGT> { [ less, greater, backslash, brokenbar ] }; 31 key <AB01> { [ y, Y ] }; 32 key <AB08> { [ comma, semicolon ] }; 33 key <AB09> { [ period, colon ] }; 34 key <AB10> { [ minus, underscore ] }; 35 36 include "level3(ralt_switch)" 37}; 38 39partial alphanumeric_keys 40xkb_symbols "legacy" { 41 include "ch(basic)" 42 43 name[Group1]= "German (Switzerland, legacy)"; 44 key <AE07> { [ 7, slash, brokenbar ] }; 45}; 46 47partial alphanumeric_keys 48xkb_symbols "de" { 49 include "ch(basic)" 50}; 51 52partial alphanumeric_keys 53xkb_symbols "de_Sundeadkeys" { 54 // modify the basic Swiss German layout to use Sun dead keys 55 include "ch(basic)" 56 key <AE11> { [ apostrophe, question, dead_acute ] }; 57 key <AE12> { [ dead_circumflex, dead_grave, dead_tilde ] }; 58 key <AD12> { [ dead_diaeresis, exclam, bracketright ] }; 59}; 60 61partial alphanumeric_keys 62xkb_symbols "de_sundeadkeys" { 63 include "ch(de_Sundeadkeys)" 64 name[Group1]= "German (Switzerland, Sun dead keys)"; 65}; 66 67partial alphanumeric_keys 68xkb_symbols "de_nodeadkeys" { 69 // modify the basic Swiss German layout not to have any dead keys 70 include "ch(basic)" 71 name[Group1]= "German (Switzerland, eliminate dead keys)"; 72 key <AE11> { [ apostrophe, question, acute ] }; 73 key <AE12> { [ asciicircum, grave, asciitilde ] }; 74 key <AD12> { [ diaeresis, exclam, bracketright ] }; 75}; 76 77partial alphanumeric_keys 78xkb_symbols "fr" { 79 80 include "ch(basic)" 81 name[Group1]= "French (Switzerland)"; 82 83 override key <AD11> { 84 [ egrave, udiaeresis, bracketleft ] 85 }; 86 override key <AC10> { 87 [ eacute, odiaeresis ] 88 }; 89 override key <AC11> { 90 [ agrave, adiaeresis, braceleft ] 91 }; 92}; 93 94partial alphanumeric_keys 95xkb_symbols "fr_Sundeadkeys" { 96 // modify the basic Swiss French layout to use Sun dead keys 97 include "ch(fr)" 98 key <AE11> { [ apostrophe, question, dead_acute ] }; 99 key <AE12> { [ dead_circumflex, dead_grave, dead_tilde ] }; 100 key <AD12> { [ dead_diaeresis, exclam, bracketright ] }; 101}; 102 103partial alphanumeric_keys 104xkb_symbols "fr_sundeadkeys" { 105 include "ch(fr_Sundeadkeys)" 106 name[Group1]= "French (Switzerland, Sun dead keys)"; 107}; 108 109partial alphanumeric_keys 110xkb_symbols "fr_nodeadkeys" { 111 // modify the basic Swiss French layout not to have any dead keys 112 include "ch(fr)" 113 name[Group1]= "French (Switzerland, eliminate dead keys)"; 114 key <AE11> { [ apostrophe, question, acute ] }; 115 key <AE12> { [ asciicircum, grave, asciitilde ] }; 116 key <AD12> { [ diaeresis, exclam, bracketright ] }; 117}; 118 119// Copied from macintosh_vndr/ch 120// 03.01.2003 121// Andreas Tobler <a.tobler@schweiz.ch> 122// modified for Swiss German Apple Extended Keyboard II 123 124partial alphanumeric_keys 125xkb_symbols "de_mac" { 126 127 name[Group1]= "German (Switzerland, Macintosh)"; 128 129 key <AE01> { [ 1, plus, plusminus, infinity ] }; 130 key <AE02> { [ 2, quotedbl, leftdoublequotemark, rightdoublequotemark ] }; 131 key <AE03> { [ 3, asterisk, numbersign, leftcaret ] }; 132 // not displayed here 133 key <AE04> { [ 4, ccedilla, Ccedilla, slash ] }; 134 key <AE05> { [ 5, percent, bracketleft ] }; 135 key <AE06> { [ 6, ampersand, bracketright ] }; 136 key <AE07> { [ 7, slash, bar, backslash ] }; 137 key <AE08> { [ 8, parenleft, braceleft, Ograve ] }; 138 key <AE09> { [ 9, parenright, braceright, Ocircumflex ] }; 139 key <AE10> { [ 0, equal, notequal, Uacute ] }; 140 key <AE11> { [ apostrophe, question, questiondown, NoSymbol ] }; 141 key <AE12> { [ dead_circumflex,dead_grave, dead_acute, asciicircum ] }; 142 key <AD01> { [ q, Q, oe, OE ] }; 143 key <AD02> { [ w, W, Greek_SIGMA, Aacute ] }; 144 key <AD03> { [ e, E, EuroSign, Ediaeresis ] }; 145 key <AD04> { [ r, R, registered, Egrave ] }; 146 key <AD05> { [ t, T, dagger, Icircumflex ] }; 147 key <AD06> { [ z, Z, Greek_OMEGA, Iacute ] }; 148 key <AD07> { [ u, U, degree, Ugrave ] }; 149 key <AD08> { [ i, I, exclamdown, idotless ] }; 150 key <AD09> { [ o, O, oslash, Ooblique ] }; 151 key <AD10> { [ p, P, Greek_pi, Greek_PI ] }; 152 key <AD11> { [ udiaeresis, egrave, section, ydiaeresis ] }; 153 key <AD12> { [ dead_diaeresis, exclam, grave, apostrophe ] }; 154 key <AC01> { [ a, A, aring, Aring ] }; 155 key <AC02> { [ s, S, ssharp, NoSymbol ] }; 156 // ligature fl 157 key <AC03> { [ d, D, Greek_sigma, NoSymbol ] }; 158 // partialderivative is not available here att 159 key <AC04> { [ f, F, function, doubledagger ] }; 160 key <AC05> { [ g, G, at, comma ] }; 161 key <AC06> { [ h, H, ordfeminine, periodcentered ] }; 162 key <AC07> { [ j, J, masculine, eth ] }; 163 key <AC08> { [ k, K, Greek_DELTA, macron ] }; 164 key <AC09> { [ l, L, notsign, caret ] }; 165 key <AC10> { [ odiaeresis, eacute, cent, breve ] }; 166 key <AC11> { [ adiaeresis, agrave, ae, AE ] }; 167 key <AB01> { [ y, Y, yen, Ydiaeresis ] }; 168 key <AB02> { [ x, X, similarequal, trademark ] }; 169 key <AB03> { [ c, C, copyright, NoSymbol ] }; 170 key <AB04> { [ v, V, radical, diamond ] }; 171 key <AB05> { [ b, B, integral, NoSymbol ] }; 172 key <AB06> { [ n, N, dead_tilde, enopencircbullet ] }; 173 // to be fixed att 174 key <AB07> { [ m, M, mu, dead_abovering ] }; 175 // not sure att 176 key <AB08> { [ comma, semicolon, guillemotleft, guillemotright ] }; 177 key <AB09> { [ period, colon, ellipsis, division ] }; 178 key <AB10> { [ minus, underscore, hyphen, emdash ] }; 179 key <TLDE> { [ section, degree, NoSymbol, NoSymbol ] }; 180 // ligature fi // per mille 181 key <SPCE> { [ space, nobreakspace, nobreakspace ] }; 182 key <LSGT> { [ less, greater, lessthanequal, greaterthanequal ] }; 183 key <BKSL> { [ dollar, sterling, paragraph, enfilledcircbullet ] }; 184 185 include "kpdl(comma)" 186 include "level3(ralt_switch)" 187}; 188 189partial alphanumeric_keys 190xkb_symbols "fr_mac" { 191 192 include "ch(de_mac)" 193 name[Group1]= "French (Switzerland, Macintosh)"; 194 195 override key <AD11> { 196 [ egrave, udiaeresis, bracketleft ] 197 }; 198 override key <AC10> { 199 [ eacute, odiaeresis ] 200 }; 201 override key <AC11> { 202 [ agrave, adiaeresis, braceleft ] 203 }; 204}; 205 206// EXTRAS: 207 208partial alphanumeric_keys 209 xkb_symbols "sun_type6_de" { 210 include "sun_vndr/ch(sun_type6_de)" 211}; 212 213partial alphanumeric_keys 214 xkb_symbols "sun_type6_fr" { 215 include "sun_vndr/ch(sun_type6_fr)" 216}; 217