root/linux/X/de @ 121

Revision 121, 16.7 KB (checked in by ben, 6 years ago)
Line 
1
2// based on a keyboard map from an 'xkb/symbols/de' file
3//
4// $XKeyboardConfig: xkbdesc/symbols/de,v 1.15 2006/10/08 22:43:01 svu Exp $
5// $XFree86: xc/programs/xkbcomp/symbols/de,v 1.6 2003/09/08 13:12:51 pascal Exp $
6
7default
8xkb_symbols "basic" {
9
10    include "latin(type4)"
11
12    name[Group1]="Germany";
13
14    key <AE02>  { [         2,   quotedbl,  twosuperior,    oneeighth ] };
15    key <AE03>  { [         3,    section, threesuperior,    sterling ] };
16    key <AE04>  { [         4,     dollar,   onequarter,     currency ] };
17    key <AE11>  { [    ssharp,   question,    backslash, questiondown ] };
18    key <AE12>  { [dead_acute, dead_grave, dead_cedilla,  dead_ogonek ] };
19
20    key <AD03>  { [         e,          E,     EuroSign,     EuroSign ] };
21    key <AD06>  { [         z,          Z,    leftarrow,          yen ] };
22    key <AD11>  { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] };
23    key <AD12>  { [      plus,   asterisk,   dead_tilde,  dead_macron ] };
24
25    key <AC10>  { [odiaeresis, Odiaeresis, dead_doubleacute, dead_doubleacute ] };
26    key <AC11>  { [adiaeresis, Adiaeresis, dead_circumflex, dead_caron] };
27    key <TLDE>  { [dead_circumflex, degree,     notsign,      notsign ] };
28
29    key <BKSL>  { [numbersign, apostrophe,   dead_grave,   dead_breve ] };
30    key <AB01>  { [         y,          Y, guillemotleft,        less ] };
31
32    include "keypad(comma)"
33
34    include "level3(ralt_switch)"
35};
36
37partial alphanumeric_keys
38xkb_symbols "nodeadkeys" {
39
40    // modify the basic German layout to not have any dead keys
41
42    include "de(basic)"
43    name[Group1]="Germany - Eliminate dead keys";
44
45    key <TLDE>  { [asciicircum,    degree,      notsign,      notsign ] };
46    key <AE12>  { [     acute,      grave,      cedilla,      cedilla ] };
47    key <AD11>  { [udiaeresis, Udiaeresis,    diaeresis,    diaeresis ] };
48    key <AD12>  { [      plus,   asterisk,   asciitilde,       macron ] };
49    key <AC10>  { [odiaeresis, Odiaeresis,  doubleacute,  doubleacute ] };
50    key <AC11>  { [adiaeresis, Adiaeresis,  asciicircum,  asciicircum ] };
51    key <BKSL>  { [numbersign, apostrophe,        grave,        grave ] };
52    key <AB10>  { [     minus, underscore, dead_belowdot,    abovedot ] };
53};
54
55partial alphanumeric_keys
56xkb_symbols "deadgraveacute" {
57    // modify the basic German layout to have only acute and grave
58    // as dead keys (tilde and circumflex are needed as spacing characters
59    // in many programming languages)
60
61    include "de(basic)"
62    name[Group1]="Germany - Dead grave acute";
63
64    key <TLDE>  { [asciicircum,    degree,      notsign,      notsign ] };
65    key <AD12>  { [      plus,   asterisk,   asciitilde,  dead_macron ] };
66    key <BKSL>  { [numbersign, apostrophe,        grave,        grave ] };
67};
68
69partial alphanumeric_keys
70xkb_symbols "deadacute" {
71    // modify the basic German layout to have only acute as
72    // dead keys (ASCII grave, tilde and circumflex are needed as
73    // spacing characters in many programming languages and text formatters)
74
75    include "de(deadgraveacute)"
76
77    name[Group1]="Germany - Dead acute";
78
79    key <AE12>  { [dead_acute,      grave, dead_cedilla,  dead_ogonek ] };
80    key <BKSL>  { [numbersign, apostrophe,   dead_grave,   dead_grave ] };
81};
82
83partial alphanumeric_keys
84xkb_symbols "ro" {
85    // add romanian-specific letters to the basic German layout.
86    // Romanian symbols are accessible with combination of <AltGr> and
87    // 'a', 's', 't', 'i', 'ä (&auml)' (+<Shift> for capital letters).
88    // To view romanian-specific symbols, add "export LC_CTYPE=ro_RO"
89    // or "export LC_CTYPE=de_DE.utf8" to your .profile.
90
91    include "de(basic)"
92
93    name[Group1]="Germany - Romanian keyboard with German letters";
94
95    key <AD05> { [         t,    T,           tcedilla,     Tcedilla    ] };
96    key <AD08> { [         i,    I,        icircumflex,  Icircumflex    ] };
97    key <AC01> { [         a,    A,        acircumflex,  Acircumflex    ] };
98    key <AC02> { [         s,    S,           scedilla,     Scedilla    ] };
99    key <AC11> { [ adiaeresis,   Adiaeresis,    abreve,       Abreve    ] };
100};
101
102partial alphanumeric_keys
103xkb_symbols "ro_nodeadkeys" {
104    // add romanian-specific letters to the German nodeadkeys layout.
105    // Read the comment for de_ro !
106
107    include "de(nodeadkeys)"
108    name[Group1]="Germany - Romanian keyboard with German letters, eliminate dead keys";
109
110    key <AD05> { [         t,    T,           tcedilla,     Tcedilla    ] };
111    key <AD08> { [         i,    I,        icircumflex,  Icircumflex    ] };
112    key <AC01> { [         a,    A,        acircumflex,  Acircumflex    ] };
113    key <AC02> { [         s,    S,           scedilla,     Scedilla    ] };
114    key <AC11> { [ adiaeresis,   Adiaeresis, abreve,       Abreve       ] };
115};
116
117// German Dvorak keymap by Thorsten Staerk (www.staerk.de/thorsten)
118// Have acute and grave as dead keys, tilde and circumflex alive as they are needed
119// in many programming languages.
120// to use this keymap, use a 105-key-keyboard and the command setxkbmap -model pc105 -layout dvorak -variant de
121// source: http://www-lehre.informatik.uni-osnabrueck.de/~rfreund/dvorak.php
122partial alphanumeric_keys
123xkb_symbols "dvorak" {
124    include "us(dvorak)"
125
126    name[Group1]="Germany - Dvorak";
127
128    key <TLDE> { [ asciicircum, degree ] };
129
130    key <AE01> { [ 1, exclam, onesuperior ] };
131    key <AE02> { [ 2, quotedbl, twosuperior ] };
132    key <AE03> { [ 3, section, threesuperior ] };
133    key <AE04> { [ 4, dollar, bar ] };
134    key <AE05> { [ 5, percent, bar ] };
135    key <AE06> { [ 6, ampersand, brokenbar ] };
136    key <AE07> { [ 7, slash, braceleft ] };
137    key <AE08> { [ 8, parenleft, bracketleft ] };
138    key <AE09> { [ 9, parenright, bracketright ] };
139    key <AE10> { [ 0, equal, braceright ] };
140    key <AE11> { [ plus, asterisk, asciitilde ] };
141    key <AE12> { [ less, greater, dead_grave ] };
142
143    key <AD01> { [ udiaeresis, Udiaeresis, at ] };
144    key <AD02> { [ comma, semicolon, dead_diaeresis ] };
145    key <AD03> { [ period, colon ] };
146    key <AD08> { [ c, C, copyright, Cacute ] };
147    key <AD09> { [ t, T, trademark ] };
148    key <AD10> { [ z, Z, zabovedot, Zabovedot ] };
149    key <AD11> { [ question, ssharp ] };
150    key <AD12> { [ slash, backslash, dead_acute ] };
151
152    key <AC01> { [ a, A, at, aogonek ] };
153    key <AC02> { [ o, O, oacute, Oacute ] };
154    key <AC03> { [ e, E, EuroSign, eogonek ] };
155    key <AC04> { [ i, I ] };
156    key <AC05> { [ u, U ] };
157    key <AC06> { [ h, H ] };
158    key <AC07> { [ d, D ] };
159    key <AC08> { [ r, R, registered ] };
160    key <AC09> { [ n, N, nacute, Nacute ] };
161    key <AC10> { [ s, S, sacute, Sacute] };
162    key <AC11> { [ l, L, lstroke, Lstroke ] };
163
164    key <AB01> { [ odiaeresis, Odiaeresis ] };
165    key <AB02> { [ q, Q, at ] };
166    key <AB07> { [ m, M, mu ] };
167    key <AB10> { [ numbersign, apostrophe ] };
168
169    key <BKSL> { [ minus, underscore, hyphen, diaeresis] };
170
171    key <LSGT> { [ adiaeresis, Adiaeresis, bar ] };
172
173    include "level3(ralt_switch)"
174};
175
176partial alphanumeric_keys
177xkb_symbols "Sundeadkeys" {
178
179    // For naming consistency
180
181    include "de(basic)"
182
183};
184
185partial alphanumeric_keys
186xkb_symbols "sundeadkeys" {
187
188    // For naming consistency
189
190    include "de(Sundeadkeys)"
191
192    name[Group1]="Germany - Sun dead keys";
193};
194
195
196// German NEO Eurokeys-Style
197// adopted 2004 by Hanno Behrens <Hanno.Behrens@gmx.de>
198// inspired by Dvorak/de-ergo  http://www.goebel-consult.de/de-ergo/
199// Authors:
200//   lucky (at) zankt (dot) net
201//   Benjamin (dot) Kellermann (at) gmx (dot) de
202// Other Questions:
203//   neo_layout (at) yahoogroups (dot) de
204
205
206partial alphanumeric_keys
207xkb_symbols "neo" {
208
209    name[Group1]= "German Neostyle (v.2.0)";
210   
211    key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
212
213    // Zahlenreihe
214// eigentlich sollte die folgende Zeile rein, aber auf älteren Systemen ist der dead_stroke noch nicht definiert!
215//    key <TLDE> { [       dead_circumflex,   dead_caron, dead_breve, dead_stroke                  ] };
216    key <TLDE> { [       dead_circumflex,   dead_caron, dead_breve                               ] };
217
218    key <AE01> { [          1,  degree, notsign,    onesuperior                                  ] };
219    key <AE02> { [          2,  paragraph,  2,    twosuperior                                            ] };
220    key <AE03> { [          3,  section,    3,  threesuperior                                    ] };
221    key <AE04> { [          4,  dollar, yen,    cent,   Prior,  Prior                            ] };
222    key <AE05> { [          5,  EuroSign,   sterling,   currency, 5, implies                   ] };
223    key <AE06> { [          6,  ordfeminine,    ae, AE, 6, ifonlyif                              ] };
224    key <AE07> { [          7,  masculine,  oe, OE                                               ] };
225    key <AE08> { [          8,  doublelowquotemark, singlelowquotemark, guillemotright, slash    ] };
226    key <AE09> { [          9,  leftdoublequotemark,    leftsinglequotemark,    guillemotleft,  asterisk] };
227    key <AE10> { [          0,  rightdoublequotemark,   rightsinglequotemark,   U203A,  minus    ] };
228    key <AE11> { [          minus,  endash,  emdash,  U2039, eth, ETH                              ] };
229    key <AE12> { [          dead_acute, dead_grave, dead_cedilla,   dead_ogonek,    dead_abovedot,  dead_abovering  ] };
230
231
232    // obere Reihe
233    key <AD01> { [          x,  X,  at,             Greek_xi,     x,   Greek_XI             ] };
234    key <AD02> { [          v,  V,  underscore,     v,            BackSpace, U039B               ] };
235    key <AD03> { [          l,  L,  bracketleft,    Greek_lambda,   Up,     Up                   ] };
236    key <AD04> { [          c,  C,  bracketright,   Greek_chi,  Tab, Tab                         ] };
237    key <AD05> { [          w,  W,  asciicircum,    w,              Insert                       ] };
238    key <AD06> { [          k,  K,  exclam,         Greek_kappa,    exclamdown, copyright        ] };
239    key <AD07> { [          h,  H,  less,           Greek_psi,  7,  Greek_PSI                    ] };
240    key <AD08> { [          g,  G,  greater,        Greek_gamma,    8,  Greek_GAMMA              ] };
241    key <AD09> { [          f,  F,  equal,          Greek_phi,  9,  Greek_PHI                    ] };
242    key <AD10> { [          q,  Q,  ampersand,      q,          plus                             ] };
243    key <AD11> { [      ssharp,  ssharp,        U133,   U132,   schwa,   SCHWA                   ] };
244    key <AD12> { [      dead_tilde, dead_macron,    dead_diaeresis, dead_doubleacute,   dead_belowdot,  dead_belowdot   ] };
245
246
247    // mittlere Reihe
248    key <AC01> { [          u,  U,  backslash,  backslash,  Home,   Home                         ] };
249    key <AC02> { [          i,  I,  slash,      Greek_iota, Left,   Left                         ] };
250    key <AC03> { [          a,  A,  braceleft,  Greek_alpha,    Down,   Down                     ] };
251    key <AC04> { [          e,  E,  braceright, Greek_epsilon,  Right,  Right                    ] };
252    key <AC05> { [          o,  O,  asterisk,   Greek_omega,    End,    End                      ] };
253    key <AC06> { [          s,  S,  question,   Greek_sigma,    questiondown,   Greek_SIGMA      ] };
254    key <AC07> { [          n,  N,  parenleft,  Greek_nu,   4,  numerosign                       ] };
255    key <AC08> { [          r,  R,  parenright, Greek_rho,  5,  registered                       ] };
256    key <AC09> { [          t,  T,  minus,      Greek_tau,  6,  trademark                        ] };
257    key <AC10> { [          d,  D,  colon,      Greek_delta,    comma,  Greek_DELTA              ] };
258    key <AC11> { [          y,  Y,  y,          Greek_upsilon,  thorn,  THORN                    ] };
259   
260
261    // untere Reihe
262    key <AB01> { [      odiaeresis, Odiaeresis, numbersign, odiaeresis, Escape               ] };
263    key <AB02> { [      udiaeresis, Udiaeresis, dollar, Udiaeresis, Delete                       ] };
264    key <AB03> { [      adiaeresis, Adiaeresis, bar,    Greek_eta,  Next,   Next             ] };
265    key <AB04> { [          p,  P,  asciitilde, Greek_pi,   p,  Greek_PI                                     ] };
266    key <AB05> { [          z,  Z,      grave,  Greek_zeta, z,  Greek_ZETA                               ] };
267    key <AB06> { [          b,  B,      plus,   Greek_beta, infinity,  Greek_Beta                    ] };
268    key <AB07> { [          m,  M,      percent,    mu, 1                                                ] };
269    key <AB08> { [          comma,  apostrophe, apostrophe,  U3D1, 2                               ] };
270    key <AB09> { [      period, elipsis, quotedbl,   Greek_theta,    3,  Greek_THETA           ] };
271    key <AB10> { [          j,  J,  semicolon, j, period, nabla                                  ] };
272
273 
274
275    key <SPCE> { [       space, space,  space,  space,  0,  nobreakspace, U202F ] };
276 
277
278
279    // Keypad
280
281    key <NMLK> { [   Num_Lock,  Pointer_EnableKeys                                               ] };
282    key <KPDV> { [   KP_Divide, KP_Divide,  division,   U2215                                ] };
283    key <KPMU> { [   KP_Multiply,   KP_Multiply,    multiply,   U22C5,  U2217                ] };
284    key <KPSU> { [   KP_Subtract,   KP_Subtract,    U2212                                    ] };
285
286    key  <KP7> { [   KP_Home,   KP_7, seveneighths, oneeighth                                ] };
287    key  <KP8> { [  KP_Up,      KP_8, uparrow, fiveeighths                                           ] };
288    key  <KP9> { [  KP_Prior,   KP_9, threeeighths, threeeighths                             ] };
289    key <KPAD> { [  KP_Add, plusminus,  plusminus,  U2213                                    ] };
290
291    key  <KP4> {        [  KP_Left,     KP_4, leftarrow, onequarter                                      ] };
292    key  <KP5> {        [  KP_Begin,    KP_5, dagger, onehalf                                            ] };
293    key  <KP6> {        [  KP_Right,    KP_6, rightarrow, threequarters                          ] };
294
295    key  <KP1> {        [  KP_End,      KP_1, onesuperior, onesuperior                                   ] };
296    key  <KP2> {        [  KP_Down,     KP_2, downarrow, twosuperior                                     ] };
297    key  <KP3> {        [  KP_Next,     KP_3, threesuperior, threesuperior                               ] };
298    key <KPEN> {        [       KP_Enter                                                                 ] };
299    key <KPEQ> {        [       KP_Equal                                                                 ] };
300
301    key  <KP0> {        [  KP_Insert,   KP_0, percent, U2030                                             ] };
302    key <KPDL> {        [  KP_Delete,   KP_Decimal, period,  comma                               ] };
303
304   
305
306    // die neuen Mods
307  key <RALT> {
308    type[Group1]="ONE_LEVEL",
309    symbols[Group1] = [ 0xfe11 ]
310    };
311  modifier_map Mod3   { 0xfe11 };
312
313  key <BKSL> {
314    type[Group1]="ONE_LEVEL",
315    symbols[Group1] = [ ISO_Level3_Shift ]
316    };
317
318  key <CAPS> {
319    type[Group1]="EIGHT_LEVEL",
320    symbols[Group1] = [ ISO_Level3_Shift,   ISO_Level3_Shift,   Caps_Lock,  Caps_Lock,  Caps_Lock,  Caps_Lock ]
321  };
322
323    key <LSGT> {
324        type[Group1]="ONE_LEVEL",
325        symbols[Group1] = [ 0xfe11 ]
326    };
327    modifier_map Mod3   { 0xfe11 };
328};
329
330// Copied from macintosh_vndr/de
331// olh@suse.de   very close to MacOS map
332
333partial alphanumeric_keys
334xkb_symbols "mac" {
335
336    include "de"
337    name[Group1]= "Germany - Macintosh";
338
339    // Alphanumeric section
340    key <AE01>  { [         1,     exclam,   exclamdown,           at ] };
341    key <AE05>  { [         5,    percent,  bracketleft       ] };
342    key <AE06>  { [         6,  ampersand, bracketright       ] };
343    key <AE07>  { [         7,      slash,          bar,    backslash ] };
344    key <AE08>  { [         8,  parenleft,    braceleft,   asciitilde ] };
345    key <AE09>  { [         9, parenright,   braceright       ] };
346    key <AD01>  { [         q,          Q, guillemotleft, guillemotright ]      };
347    key <AD04>  { [         r,          R,   registered       ] };
348    key <AD07>  { [         u,          U,    diaeresis,       Aacute ] };
349    key <AD08>  { [         i,          I,        slash,  Ucircumflex ] };
350    key <AD11>  { [ udiaeresis, Udiaeresis, periodcentered,    degree ] };
351    key <AD12>  { [      plus,   asterisk,   asciitilde       ] };
352    key <AC01>  { [         a,          A,        aring,        Aring ] };
353    key <AC05>  { [         g,          G,    copyright       ] };
354    key <AC06>  { [         h,          H,  ordfeminine       ] };
355    key <AC09>  { [         l,          L,           at       ] };
356    key <AC10>  { [ odiaeresis, Odiaeresis,  dead_acute       ] };
357    key <AB06>  { [         n,          N,   asciitilde       ] };
358
359};
360
361partial alphanumeric_keys
362xkb_symbols "mac_nodeadkeys" {
363    // modify the standard German mac layout to not have any dead keys
364    include "de(mac)"
365    name[Group1]= "Germany - Macintosh, eliminate dead keys";
366    key <AE04>  { [         4,     dollar,   onequarter,     currency ] };
367
368    key <TLDE>  { [ asciicircum,    degree,     notsign       ] };
369    key <AE12>  { [      acute,      grave,     cedilla       ] };
370    key <AD11>  { [ udiaeresis, Udiaeresis,   diaeresis       ] };
371    key <AD12>  { [       plus,   asterisk,  asciitilde,       macron ] };
372    key <AC10>  { [ odiaeresis, Odiaeresis,       acute       ] };
373    key <AC11>  { [ adiaeresis, Adiaeresis, asciicircum       ] };
374
375    key <BKSL>  { [ numbersign, apostrophe,       grave       ] };
376};
Note: See TracBrowser for help on using the browser.