ch 8.1 KB

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