1 | // based on a keyboard map from an 'xkb/symbols/de' file
|
---|
2 | // v2-flux — alle Informationen im wiki: http://wiki.neo-layout.org/wiki/V2-flux
|
---|
3 |
|
---|
4 | // neo-specific configuration begins at line 213
|
---|
5 |
|
---|
6 | default
|
---|
7 | xkb_symbols "basic" {
|
---|
8 |
|
---|
9 | include "latin(type4)"
|
---|
10 |
|
---|
11 | name[Group1]="German";
|
---|
12 |
|
---|
13 | key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] };
|
---|
14 | key <AE03> { [ 3, section, threesuperior, sterling ] };
|
---|
15 | key <AE04> { [ 4, dollar, onequarter, currency ] };
|
---|
16 |
|
---|
17 | key <AE11> {type[Group1]="FOUR_LEVEL_PLUS_LOCK", symbols[Group1]=
|
---|
18 | [ssharp, question, backslash, questiondown, 0x1001E9E ]};
|
---|
19 | // The unicode capital letter sharp s U+1E9E is transformed to "SS"
|
---|
20 | // to match the rules for capitalizing sharp s in german.
|
---|
21 | // If the capital sharp s is needed, delete the line
|
---|
22 | // starting with <U1E9C> from /usr/share/X11/locale/iso8859-15/Compose.
|
---|
23 | // If both doubled S and capital sharp s are needed, use 0x1001E9E
|
---|
24 | // for capital sharp s and some free unicode codepoint like 0x1001E9C
|
---|
25 | // for doubled S. Don`t forget to change this in the Compose file, too.
|
---|
26 |
|
---|
27 | key <AE12> { [dead_acute, dead_grave, dead_cedilla, dead_ogonek ] };
|
---|
28 |
|
---|
29 | key <AD03> { [ e, E, EuroSign, EuroSign ] };
|
---|
30 | key <AD06> { [ z, Z, leftarrow, yen ] };
|
---|
31 | key <AD11> { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] };
|
---|
32 | key <AD12> { [ plus, asterisk, dead_tilde, dead_macron ] };
|
---|
33 |
|
---|
34 | key <AC02> { [ s, S, U017F, U1E9E ] };
|
---|
35 | key <AC07> { [ j, J, dead_belowdot, dead_abovedot ] };
|
---|
36 | key <AC10> { [odiaeresis, Odiaeresis, dead_doubleacute, dead_belowdot ] };
|
---|
37 | key <AC11> { [adiaeresis, Adiaeresis, dead_circumflex, dead_caron ] };
|
---|
38 | key <TLDE> { [dead_circumflex, degree, U2032, U2033 ] };
|
---|
39 |
|
---|
40 | key <BKSL> { [numbersign, apostrophe, rightsinglequotemark, dead_breve ] };
|
---|
41 | key <AB01> { [ y, Y, guillemotright, U203A ] };
|
---|
42 | key <AB02> { [ x, X, guillemotleft, U2039 ] };
|
---|
43 | key <AB04> { [ v, V, doublelowquotemark, singlelowquotemark ] };
|
---|
44 | key <AB05> { [ b, B, leftdoublequotemark, leftsinglequotemark ] };
|
---|
45 | key <AB06> { [ n, N, rightdoublequotemark, rightsinglequotemark ] };
|
---|
46 | key <AB08> { [ comma, semicolon, periodcentered, multiply ] };
|
---|
47 | key <AB09> { [ period, colon, U2026, division ] };
|
---|
48 | key <AB10> { [ minus, underscore, endash, emdash ] };
|
---|
49 |
|
---|
50 | include "kpdl(comma)"
|
---|
51 |
|
---|
52 | include "level3(ralt_switch)"
|
---|
53 | };
|
---|
54 |
|
---|
55 | partial alphanumeric_keys
|
---|
56 | xkb_symbols "nodeadkeys" {
|
---|
57 |
|
---|
58 | // modify the basic German layout to not have any dead keys
|
---|
59 |
|
---|
60 | include "de(basic)"
|
---|
61 | name[Group1]="German (eliminate dead keys)";
|
---|
62 |
|
---|
63 | key <TLDE> { [asciicircum, degree, notsign, notsign ] };
|
---|
64 | key <AE12> { [ acute, grave, cedilla, cedilla ] };
|
---|
65 | key <AD11> { [udiaeresis, Udiaeresis, diaeresis, diaeresis ] };
|
---|
66 | key <AD12> { [ plus, asterisk, asciitilde, macron ] };
|
---|
67 | key <AC10> { [odiaeresis, Odiaeresis, doubleacute, doubleacute ] };
|
---|
68 | key <AC11> { [adiaeresis, Adiaeresis, asciicircum, asciicircum ] };
|
---|
69 | key <BKSL> { [numbersign, apostrophe, grave, grave ] };
|
---|
70 | };
|
---|
71 |
|
---|
72 | partial alphanumeric_keys
|
---|
73 | xkb_symbols "deadgraveacute" {
|
---|
74 | // modify the basic German layout to have only acute and grave
|
---|
75 | // as dead keys (tilde and circumflex are needed as spacing characters
|
---|
76 | // in many programming languages)
|
---|
77 |
|
---|
78 | include "de(basic)"
|
---|
79 | name[Group1]="German (dead grave acute)";
|
---|
80 |
|
---|
81 | key <TLDE> { [asciicircum, degree, notsign, notsign ] };
|
---|
82 | key <AD12> { [ plus, asterisk, asciitilde, dead_macron ] };
|
---|
83 | key <BKSL> { [numbersign, apostrophe, grave, grave ] };
|
---|
84 | };
|
---|
85 |
|
---|
86 | partial alphanumeric_keys
|
---|
87 | xkb_symbols "deadacute" {
|
---|
88 | // modify the basic German layout to have only acute as
|
---|
89 | // dead keys (ASCII grave, tilde and circumflex are needed as
|
---|
90 | // spacing characters in many programming languages and text formatters)
|
---|
91 |
|
---|
92 | include "de(deadgraveacute)"
|
---|
93 |
|
---|
94 | name[Group1]="German (dead acute)";
|
---|
95 |
|
---|
96 | key <AE12> { [dead_acute, grave, dead_cedilla, dead_ogonek ] };
|
---|
97 | key <BKSL> { [numbersign, apostrophe, dead_grave, dead_grave ] };
|
---|
98 | };
|
---|
99 |
|
---|
100 | partial alphanumeric_keys
|
---|
101 | xkb_symbols "ro" {
|
---|
102 | // add romanian-specific letters to the basic German layout.
|
---|
103 | // Romanian symbols are accessible with combination of <AltGr> and
|
---|
104 | // 'a', 's', 't', 'i', 'ä (ä)' (+<Shift> for capital letters).
|
---|
105 | // To view romanian-specific symbols, add "export LC_CTYPE=ro_RO"
|
---|
106 | // or "export LC_CTYPE=de_DE.utf8" to your .profile.
|
---|
107 |
|
---|
108 | include "de(basic)"
|
---|
109 |
|
---|
110 | name[Group1]="Romanian (Germany)";
|
---|
111 |
|
---|
112 | key <AD05> { [ t, T, tcedilla, Tcedilla ] };
|
---|
113 | key <AD08> { [ i, I, icircumflex, Icircumflex ] };
|
---|
114 | key <AC01> { [ a, A, acircumflex, Acircumflex ] };
|
---|
115 | key <AC02> { [ s, S, scedilla, Scedilla ] };
|
---|
116 | key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] };
|
---|
117 | };
|
---|
118 |
|
---|
119 | partial alphanumeric_keys
|
---|
120 | xkb_symbols "ro_nodeadkeys" {
|
---|
121 | // add romanian-specific letters to the German nodeadkeys layout.
|
---|
122 | // Read the comment for de_ro !
|
---|
123 |
|
---|
124 | include "de(nodeadkeys)"
|
---|
125 | name[Group1]="Romanian (Germany, eliminate dead keys)";
|
---|
126 |
|
---|
127 | key <AD05> { [ t, T, tcedilla, Tcedilla ] };
|
---|
128 | key <AD08> { [ i, I, icircumflex, Icircumflex ] };
|
---|
129 | key <AC01> { [ a, A, acircumflex, Acircumflex ] };
|
---|
130 | key <AC02> { [ s, S, scedilla, Scedilla ] };
|
---|
131 | key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] };
|
---|
132 | };
|
---|
133 |
|
---|
134 | // German Dvorak keymap by Thorsten Staerk (www.staerk.de/thorsten)
|
---|
135 | // Have acute and grave as dead keys, tilde and circumflex alive as they are needed
|
---|
136 | // in many programming languages.
|
---|
137 | // to use this keymap, use a 105-key-keyboard and the command setxkbmap -model pc105 -layout dvorak -variant de
|
---|
138 | // source: http://www-lehre.informatik.uni-osnabrueck.de/~rfreund/dvorak.php
|
---|
139 | partial alphanumeric_keys
|
---|
140 | xkb_symbols "dvorak" {
|
---|
141 | include "us(dvorak)"
|
---|
142 |
|
---|
143 | name[Group1]="German (Dvorak)";
|
---|
144 |
|
---|
145 | key <TLDE> { [ asciicircum, degree ] };
|
---|
146 |
|
---|
147 | key <AE01> { [ 1, exclam, onesuperior ] };
|
---|
148 | key <AE02> { [ 2, quotedbl, twosuperior ] };
|
---|
149 | key <AE03> { [ 3, section, threesuperior ] };
|
---|
150 | key <AE04> { [ 4, dollar, bar ] };
|
---|
151 | key <AE05> { [ 5, percent, bar ] };
|
---|
152 | key <AE06> { [ 6, ampersand, brokenbar ] };
|
---|
153 | key <AE07> { [ 7, slash, braceleft ] };
|
---|
154 | key <AE08> { [ 8, parenleft, bracketleft ] };
|
---|
155 | key <AE09> { [ 9, parenright, bracketright ] };
|
---|
156 | key <AE10> { [ 0, equal, braceright ] };
|
---|
157 | key <AE11> { [ plus, asterisk, asciitilde ] };
|
---|
158 | key <AE12> { [ less, greater, dead_grave ] };
|
---|
159 |
|
---|
160 | key <AD01> { [ udiaeresis, Udiaeresis, at ] };
|
---|
161 | key <AD02> { [ comma, semicolon, dead_diaeresis ] };
|
---|
162 | key <AD03> { [ period, colon ] };
|
---|
163 | key <AD08> { [ c, C, copyright, Cacute ] };
|
---|
164 | key <AD09> { [ t, T, trademark ] };
|
---|
165 | key <AD10> { [ z, Z, zabovedot, Zabovedot ] };
|
---|
166 | key <AD11> { [ question, ssharp ] };
|
---|
167 | key <AD12> { [ slash, backslash, dead_acute ] };
|
---|
168 |
|
---|
169 | key <AC01> { [ a, A, at, aogonek ] };
|
---|
170 | key <AC02> { [ o, O, oacute, Oacute ] };
|
---|
171 | key <AC03> { [ e, E, EuroSign, eogonek ] };
|
---|
172 | key <AC04> { [ i, I ] };
|
---|
173 | key <AC05> { [ u, U ] };
|
---|
174 | key <AC06> { [ h, H ] };
|
---|
175 | key <AC07> { [ d, D ] };
|
---|
176 | key <AC08> { [ r, R, registered ] };
|
---|
177 | key <AC09> { [ n, N, nacute, Nacute ] };
|
---|
178 | key <AC10> { [ s, S, sacute, Sacute] };
|
---|
179 | key <AC11> { [ l, L, lstroke, Lstroke ] };
|
---|
180 |
|
---|
181 | key <AB01> { [ odiaeresis, Odiaeresis ] };
|
---|
182 | key <AB02> { [ q, Q, at ] };
|
---|
183 | key <AB07> { [ m, M, mu ] };
|
---|
184 | key <AB10> { [ numbersign, apostrophe ] };
|
---|
185 |
|
---|
186 | key <BKSL> { [ minus, underscore, hyphen, diaeresis] };
|
---|
187 |
|
---|
188 | key <LSGT> { [ adiaeresis, Adiaeresis, bar ] };
|
---|
189 |
|
---|
190 | include "level3(ralt_switch)"
|
---|
191 | };
|
---|
192 |
|
---|
193 | partial alphanumeric_keys
|
---|
194 | xkb_symbols "Sundeadkeys" {
|
---|
195 |
|
---|
196 | // For naming consistency
|
---|
197 |
|
---|
198 | include "de(basic)"
|
---|
199 |
|
---|
200 | };
|
---|
201 |
|
---|
202 | partial alphanumeric_keys
|
---|
203 | xkb_symbols "sundeadkeys" {
|
---|
204 |
|
---|
205 | // For naming consistency
|
---|
206 |
|
---|
207 | include "de(Sundeadkeys)"
|
---|
208 |
|
---|
209 | name[Group1]="German (Sun dead keys)";
|
---|
210 | };
|
---|
211 |
|
---|
212 |
|
---|
213 | // German Neo-Layout Version 2
|
---|
214 | // adopted 2004 by Hanno Behrens <Hanno.Behrens@gmx.de>
|
---|
215 | // inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/
|
---|
216 | //
|
---|
217 | // Authors:
|
---|
218 | // Stephan Hilb <stephan at ehilb dot de>
|
---|
219 | // <lucky at zankt dot net>
|
---|
220 | // Benjamin Kellermann <Benjamin dot Kellermann at gmx dot Germany>
|
---|
221 | // Erik Streb <mail at erikstreb dot de>
|
---|
222 | // and many other contributors
|
---|
223 | //
|
---|
224 | // http://www.neo-layout.org
|
---|
225 | //
|
---|
226 | // $Revision$, $Date$
|
---|
227 |
|
---|
228 | partial alphanumeric_keys modifier_keys keypad_keys
|
---|
229 | xkb_symbols "neo_base" {
|
---|
230 |
|
---|
231 | // Levels in Neo jargon
|
---|
232 | // --------------------------------------------------------------
|
---|
233 | // Ebene 1: normal
|
---|
234 | // Ebene 2: Shift
|
---|
235 | // Ebene 3: Mod3
|
---|
236 | // Ebene 4: Mod4 (for marking something use Shift + Mod4)
|
---|
237 | // Ebene 5: Shift + Mod3
|
---|
238 | // Ebene 6: Mod3 + Mod4
|
---|
239 | // Compose (not a level): Mod3 + Tab
|
---|
240 | // Feststelltaste (Capslock): Shift + Shift
|
---|
241 | // Mod4-Lock: Mod4 + Mod4
|
---|
242 | // Mod4-Lock: Shift + Mod3 + Tab
|
---|
243 |
|
---|
244 | // Legend
|
---|
245 | // ===============
|
---|
246 | // Levels in Xkbmap jargon to be found here in the definitions.
|
---|
247 | // These are the levels used, and Xorg's translations:
|
---|
248 | // --------------------------------------------------------------
|
---|
249 | // Xorg: Level1 Level2 Level3 Level4 Level5 Level6 Level7 Level8
|
---|
250 | // Neo: Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Pseudo-Ebene Ebene6 ???
|
---|
251 | // Keys (Neo): None Shift Mod3 Mod3 + Shift Mod4 Mod4 + Shift Mod3 + Mod4 Mod3 + Mod4 + Shift
|
---|
252 |
|
---|
253 |
|
---|
254 | // Alphanumeric-keys
|
---|
255 | // ===============
|
---|
256 | key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
|
---|
257 |
|
---|
258 | // Tab as Multi_key (Compose)
|
---|
259 | // --------------------------------------------------------------
|
---|
260 | key <TAB> { [ Tab, ISO_Left_Tab, Multi_key, ISO_Level5_Lock, NoSymbol, NoSymbol, NoSymbol, ISO_Level5_Lock ] };
|
---|
261 |
|
---|
262 |
|
---|
263 | // Number row
|
---|
264 | // --------------------------------------------------------------
|
---|
265 | key <TLDE> { [ dead_circumflex, dead_caron, U21BB, U02DE, dead_abovedot, Pointer_EnableKeys, dead_belowdot, NoSymbol ] };
|
---|
266 |
|
---|
267 | key <AE01> { [ section, onesubscript, onesuperior, onesubscript, ordfeminine, NoSymbol, notsign, NoSymbol ] };
|
---|
268 | key <AE02> { [ degree, twosubscript, twosuperior, twosubscript, masculine, NoSymbol, logicalor, NoSymbol ] };
|
---|
269 | key <AE03> { [ guillemotright, threesubscript, threesuperior, threesubscript, numerosign, NoSymbol, logicaland, NoSymbol ] };
|
---|
270 | key <AE04> { [ guillemotleft, U27C2, singlelowquotemark, femalesymbol, NoSymbol, NoSymbol, U22A5, NoSymbol ] };
|
---|
271 | key <AE05> { [ emdash, malesymbol, infinity, malesymbol, periodcentered, NoSymbol, U2221, NoSymbol ] };
|
---|
272 | key <AE06> { [ sterling, femalesymbol, leftsinglequotemark, U26A5, sterling, NoSymbol, U2225, NoSymbol ] };
|
---|
273 |
|
---|
274 | key <AE07> { [ yen, notsign, rightsinglequotemark, U03F0, currency, NoSymbol, rightarrow, NoSymbol ] };
|
---|
275 | key <AE08> { [ U21A6, logicalor, U203A, U27E8, Tab, ISO_Left_Tab, U221E, NoSymbol ] };
|
---|
276 | key <AE09> { [ doublelowquotemark, logicaland, U203A, U27E9, KP_Divide, KP_Divide, variation, NoSymbol ] };
|
---|
277 | key <AE10> { [ leftdoublequotemark, leftanglebracket, U2113, zerosubscript, KP_Multiply, KP_Multiply, emptyset, NoSymbol ] };
|
---|
278 |
|
---|
279 | key <AE11> { [ rightdoublequotemark, rightanglebracket, cent, U2011, KP_Subtract, KP_Subtract, hyphen, NoSymbol ] };
|
---|
280 | key <AE12> { [ dead_grave, dead_cedilla, dead_abovering, dead_dasia, dead_diaeresis, NoSymbol, dead_macron, NoSymbol ] };
|
---|
281 |
|
---|
282 | // Top row
|
---|
283 | // --------------------------------------------------------------
|
---|
284 | key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
|
---|
285 | key <AD01> { [ j, J, ellipsis, Greek_theta, Prior, Prior, Greek_THETA, NoSymbol ] };
|
---|
286 | key <AD02> { [ g, G, underscore, Greek_gamma, BackSpace, BackSpace, Greek_GAMMA, NoSymbol ] };
|
---|
287 | key <AD03> { [ u, U, dollar, NoSymbol, Up, Up, NoSymbol, NoSymbol ] };
|
---|
288 | key <AD04> { [ a, A, bar, Greek_alpha, Delete, Delete, NoSymbol, NoSymbol ] };
|
---|
289 | key <AD05> { [ x, X, asciicircum, Greek_xi, Next, Next, Greek_XI, NoSymbol ] };
|
---|
290 |
|
---|
291 | key <AD06> { [ w, W, EuroSign, Greek_omega, exclamdown, NoSymbol, Greek_OMEGA, NoSymbol ] };
|
---|
292 | key <AD07> { [ d, D, greater, Greek_delta, KP_4, KP_4, Greek_DELTA, NoSymbol ] };
|
---|
293 | key <AD08> { [ c, C, less, Greek_chi, KP_5, KP_5, Greek_CHI, NoSymbol ] };
|
---|
294 | key <AD09> { [ l, L, equal, Greek_lambda, KP_6, KP_6, Greek_LAMBDA, NoSymbol ] };
|
---|
295 | key <AD10> { [ f, F, parenright, Greek_phi, KP_Add, KP_Add, Greek_PHI, NoSymbol ] };
|
---|
296 |
|
---|
297 | key <AD11> { [ ssharp, U1E9E, U017F, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] };
|
---|
298 |
|
---|
299 | key.type[ Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
|
---|
300 | key <AD12> { [ dead_acute, dead_tilde, dead_stroke, dead_psili, dead_doubleacute, NoSymbol, dead_breve, NoSymbol ] };
|
---|
301 |
|
---|
302 | // Middle row
|
---|
303 | // --------------------------------------------------------------
|
---|
304 | key.type[ Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
|
---|
305 | key <AC01> { [ h, H, at, Greek_psi, Home, Home, Greek_psi, NoSymbol ] };
|
---|
306 | key <AC02> { [ m, M, backslash, Greek_mu, Left, Left, ifonlyif, NoSymbol ] };
|
---|
307 | key <AC03> { [ i, I, braceleft, Greek_iota, Down, Down, integral, NoSymbol ] };
|
---|
308 | key <AC04> { [ e, E, bracketleft, Greek_epsilon, Right, Right, U2203, NoSymbol ] };
|
---|
309 | key <AC05> { [ o, O, asterisk, Greek_omicron, End, End, Greek_OMICRON, NoSymbol ] };
|
---|
310 |
|
---|
311 | key <AC06> { [ b, B, question, Greek_beta, questiondown, NoSymbol, U21D0, NoSymbol ] };
|
---|
312 | key <AC07> { [ t, T, exclam, Greek_tau, KP_1, KP_1, partialderivative, NoSymbol ] };
|
---|
313 | key <AC08> { [ n, N, parenleft, Greek_nu, KP_2, KP_2, U2115, NoSymbol ] };
|
---|
314 | key <AC09> { [ r, R, minus, Greek_rho, KP_3, KP_3, U211D, NoSymbol ] };
|
---|
315 | key <AC10> { [ s, S, ampersand, Greek_sigma, KP_Separator, comma, Greek_SIGMA, NoSymbol ] };
|
---|
316 |
|
---|
317 | key <AC11> { [ q, Q, semicolon, U03D5, period, KP_Decimal, U211A, NoSymbol ] };
|
---|
318 |
|
---|
319 | // Bottom row
|
---|
320 | // --------------------------------------------------------------
|
---|
321 | key <AB01> { [ k, K, numbersign, Greek_kappa, Escape, Escape, multiply, NoSymbol ] };
|
---|
322 | key <AB02> { [ v, V, braceright, NoSymbol, Tab, Tab, radical, NoSymbol ] };
|
---|
323 | key <AB03> { [ Escape, udiaeresis, bracketright, NoSymbol, Insert, Insert, union, NoSymbol ] };
|
---|
324 | key <AB04> { [ slash, adiaeresis, asciitilde, Greek_eta, Return, Return, U2135, NoSymbol ] };
|
---|
325 | key <AB05> { [ colon, odiaeresis, grave, U03F5, Undo, Redo, intersection, NoSymbol ] };
|
---|
326 |
|
---|
327 | key <AB06> { [ y, Y, plus, Greek_upsilon, colon, NoSymbol, nabla, NoSymbol ] };
|
---|
328 | key <AB07> { [ p, P, percent, Greek_pi, KP_7, KP_7, Greek_PI, NoSymbol ] };
|
---|
329 | key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
|
---|
330 | key <AB08> { [ comma, endash, apostrophe, U03F1, KP_8, KP_8, U21D2, NoSymbol ] };
|
---|
331 | key <AB09> { [ period, enfilledcircbullet, quotedbl, U03D1, KP_9, KP_9, U21A6, NoSymbol ] };
|
---|
332 | key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
|
---|
333 | key <AB10> { [ z, Z, rightarrow, Greek_zeta, semicolon, NoSymbol, U2124, NoSymbol ] };
|
---|
334 | key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
|
---|
335 |
|
---|
336 | // Space key
|
---|
337 | // --------------------------------------------------------------
|
---|
338 | key <SPCE> { [ space, space, space, nobreakspace, KP_0, KP_0, U202F, NoSymbol ] };
|
---|
339 |
|
---|
340 |
|
---|
341 | // Keypad-keys
|
---|
342 | // ===============
|
---|
343 |
|
---|
344 | // The former Numlock key:
|
---|
345 | key <NMLK> { [ Tab, ISO_Left_Tab, equal, approxeq, notequal, Pointer_EnableKeys, identical, NoSymbol ] };
|
---|
346 |
|
---|
347 | // Topmost row
|
---|
348 | // --------------------------------------------------------------
|
---|
349 | key <KPDV> { [ KP_Divide, KP_Divide, division, U2300, U2215, NoSymbol, U2223, NoSymbol ] };
|
---|
350 | key <KPMU> { [ KP_Multiply, KP_Multiply, U22C5, U2299, multiply, NoSymbol, U2297, NoSymbol ] };
|
---|
351 | key <KPSU> { [ KP_Subtract, KP_Subtract, U2212, U2296, U2216, NoSymbol, U2238, NoSymbol ] };
|
---|
352 |
|
---|
353 | // Top row
|
---|
354 | // --------------------------------------------------------------
|
---|
355 | key <KP7> { [ KP_4, U2714, U2195, U226A, KP_Home, KP_Home, upstile, NoSymbol ] };
|
---|
356 | key <KP8> { [ KP_5, U2718, uparrow, intersection, KP_Up, KP_Up, U22C2, NoSymbol ] };
|
---|
357 | key <KP9> { [ KP_6, dagger, U20D7, U226B, KP_Prior, KP_Prior, U2309, NoSymbol ] };
|
---|
358 | key <KPAD> { [ KP_Add, KP_Add, plusminus, U2295, U2213, NoSymbol, U2214, NoSymbol ] };
|
---|
359 |
|
---|
360 | // Middle row
|
---|
361 | // --------------------------------------------------------------
|
---|
362 | key <KP4> { [ KP_1, club, leftarrow, includedin, KP_Left, KP_Left, U2286, NoSymbol ] };
|
---|
363 | key <KP5> { [ KP_2, EuroSign, colon, U22B6, KP_Begin, KP_Begin, U22B7, NoSymbol ] };
|
---|
364 | key <KP6> { [ KP_3, U2023, rightarrow, includes, KP_Right, KP_Right, U2287, NoSymbol ] };
|
---|
365 |
|
---|
366 | // Bottom row
|
---|
367 | // --------------------------------------------------------------
|
---|
368 | key <KP1> { [ KP_7, diamond, U2194, lessthanequal, KP_End, KP_End, downstile, NoSymbol ] };
|
---|
369 | key <KP2> { [ KP_8, heart, downarrow, union, KP_Down, KP_Down, U22C3, NoSymbol ] };
|
---|
370 | key <KP3> { [ KP_9, U2660, U21CC, greaterthanequal, KP_Next, KP_Next, U230B, NoSymbol ] };
|
---|
371 | key <KPEN> { [ KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, NoSymbol ] };
|
---|
372 | key <KPEQ> { [ KP_Equal, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
---|
373 |
|
---|
374 | // Bottommost row
|
---|
375 | // --------------------------------------------------------------
|
---|
376 | key <KP0> { [ KP_0, U2423, percent, U2030, KP_Insert, KP_Insert, U25A1, NoSymbol ] };
|
---|
377 | key <KPDL> { [ KP_Separator, period, comma, minutes, KP_Delete, KP_Delete, seconds, NoSymbol ] };
|
---|
378 | };
|
---|
379 |
|
---|
380 | partial alphanumeric_keys modifier_keys keypad_keys
|
---|
381 | xkb_symbols "neo" {
|
---|
382 |
|
---|
383 | include "de(neo_base)"
|
---|
384 |
|
---|
385 | name[Group1]= "German (Neo 2)";
|
---|
386 |
|
---|
387 | include "shift(both_capslock)"
|
---|
388 | include "level3(caps_switch)"
|
---|
389 | include "level3(bksl_switch)"
|
---|
390 | include "level5(lsgt_switch_lock)"
|
---|
391 | include "level5(ralt_switch_lock)"
|
---|
392 | };
|
---|
393 |
|
---|
394 | // Copied from macintosh_vndr/de
|
---|
395 | // olh@suse.de very close to MacOS map
|
---|
396 |
|
---|
397 | partial alphanumeric_keys
|
---|
398 | xkb_symbols "mac" {
|
---|
399 |
|
---|
400 | include "de"
|
---|
401 | name[Group1]= "German (Macintosh)";
|
---|
402 |
|
---|
403 | // Alphanumeric section
|
---|
404 | key <AE01> { [ 1, exclam, exclamdown, at ] };
|
---|
405 | key <AE05> { [ 5, percent, bracketleft ] };
|
---|
406 | key <AE06> { [ 6, ampersand, bracketright ] };
|
---|
407 | key <AE07> { [ 7, slash, bar, backslash ] };
|
---|
408 | key <AE08> { [ 8, parenleft, braceleft, asciitilde ] };
|
---|
409 | key <AE09> { [ 9, parenright, braceright ] };
|
---|
410 | key <AD01> { [ q, Q, guillemotleft, guillemotright ] };
|
---|
411 | key <AD04> { [ r, R, registered ] };
|
---|
412 | key <AD07> { [ u, U, diaeresis, Aacute ] };
|
---|
413 | key <AD08> { [ i, I, slash, Ucircumflex ] };
|
---|
414 | key <AD11> { [ udiaeresis, Udiaeresis, periodcentered, degree ] };
|
---|
415 | key <AD12> { [ plus, asterisk, asciitilde ] };
|
---|
416 | key <AC01> { [ a, A, aring, Aring ] };
|
---|
417 | key <AC05> { [ g, G, copyright ] };
|
---|
418 | key <AC06> { [ h, H, ordfeminine ] };
|
---|
419 | key <AC09> { [ l, L, at ] };
|
---|
420 | key <AC10> { [ odiaeresis, Odiaeresis, dead_acute ] };
|
---|
421 | key <AB06> { [ n, N, asciitilde ] };
|
---|
422 |
|
---|
423 | };
|
---|
424 |
|
---|
425 | partial alphanumeric_keys
|
---|
426 | xkb_symbols "mac_nodeadkeys" {
|
---|
427 | // modify the standard German mac layout to not have any dead keys
|
---|
428 | include "de(mac)"
|
---|
429 | name[Group1]= "German (Macintosh, eliminate dead keys)";
|
---|
430 | key <AE04> { [ 4, dollar, onequarter, currency ] };
|
---|
431 |
|
---|
432 | key <TLDE> { [ asciicircum, degree, notsign ] };
|
---|
433 | key <AE12> { [ acute, grave, cedilla ] };
|
---|
434 | key <AD11> { [ udiaeresis, Udiaeresis, diaeresis ] };
|
---|
435 | key <AD12> { [ plus, asterisk, asciitilde, macron ] };
|
---|
436 | key <AC10> { [ odiaeresis, Odiaeresis, acute ] };
|
---|
437 | key <AC11> { [ adiaeresis, Adiaeresis, asciicircum ] };
|
---|
438 |
|
---|
439 | key <BKSL> { [ numbersign, apostrophe, grave ] };
|
---|
440 | };
|
---|
441 |
|
---|
442 | partial alphanumeric_keys
|
---|
443 | xkb_symbols "dsb"
|
---|
444 | {
|
---|
445 | name[Group1] = "Lower Sorbian";
|
---|
446 | include "latin(basic)"
|
---|
447 | include "level3(ralt_switch)"
|
---|
448 | include "kpdl(comma)"
|
---|
449 | key <AB01> { [ z, Z, zcaron, Zcaron ] };
|
---|
450 | key <AB02> { [ x, X, zacute, Zacute ] };
|
---|
451 | key <AB03> { [ c, C, cacute, Cacute ] };
|
---|
452 | key <AB04> { [ v, V, ccaron, Ccaron ] };
|
---|
453 | key <AB06> { [ n, N, nacute, Nacute ] };
|
---|
454 | key <AC02> { [ s, S, sacute, Sacute ] };
|
---|
455 | key <AC03> { [ d, D, scaron, Scaron ] };
|
---|
456 | key <AC04> { [ f, F ] };
|
---|
457 | key <AD01> { [ q, Q ] };
|
---|
458 | key <AD02> { [ w, W ] };
|
---|
459 | key <AD03> { [ e, E, ecaron, Ecaron ] };
|
---|
460 | key <AD04> { [ r, R, racute, Racute ] };
|
---|
461 | key <AD05> { [ t, T, U20B5, EuroSign ] };
|
---|
462 | key <AD09> { [ o, O, oacute, Oacute ] };
|
---|
463 | };
|
---|
464 |
|
---|
465 | partial alphanumeric_keys
|
---|
466 | xkb_symbols "dsb_qwertz"
|
---|
467 | {
|
---|
468 | name[Group1] = "Lower Sorbian (qwertz)";
|
---|
469 | include "latin(basic)"
|
---|
470 | include "level3(ralt_switch)"
|
---|
471 | include "kpdl(comma)"
|
---|
472 | key <AB01> { [ y, Y ] };
|
---|
473 | key <AB02> { [ x, X ] };
|
---|
474 | key <AB03> { [ c, C, cacute, Cacute ] };
|
---|
475 | key <AB04> { [ v, V, ccaron, Ccaron ] };
|
---|
476 | key <AB06> { [ n, N, nacute, Nacute ] };
|
---|
477 | key <AC02> { [ s, S, sacute, Sacute ] };
|
---|
478 | key <AC03> { [ d, D, scaron, Scaron ] };
|
---|
479 | key <AC04> { [ f, F ] };
|
---|
480 | key <AD01> { [ q, Q ] };
|
---|
481 | key <AD02> { [ w, W ] };
|
---|
482 | key <AD03> { [ e, E, ecaron, Ecaron ] };
|
---|
483 | key <AD04> { [ r, R, racute, Racute ] };
|
---|
484 | key <AD05> { [ t, T, U20B5, EuroSign ] };
|
---|
485 | key <AD06> { [ z, Z, zcaron, Zcaron ] };
|
---|
486 | key <AD07> { [ u, U, zacute, Zacute ] };
|
---|
487 | key <AD09> { [ o, O, oacute, Oacute ] };
|
---|
488 | };
|
---|
489 |
|
---|
490 | // layout for Russian letters on an german keyboard
|
---|
491 | // based on US-RU layout by Ivan Popov <pin@konvalo.org> 2005-07-17
|
---|
492 | // adopted for german layout by Alexey Fisher <bug-track@fisher-privat.net> 2010-08-19
|
---|
493 |
|
---|
494 | partial alphanumeric_keys
|
---|
495 | xkb_symbols "ru" {
|
---|
496 |
|
---|
497 | include "de(basic)"
|
---|
498 |
|
---|
499 | name[Group1]= "Russian (Germany, phonetic)";
|
---|
500 |
|
---|
501 | key.type[group1]="FOUR_LEVEL_ALPHABETIC";
|
---|
502 |
|
---|
503 | key <LatA> { [ Cyrillic_a, Cyrillic_A ] };
|
---|
504 | key <LatB> { [ Cyrillic_be, Cyrillic_BE ] };
|
---|
505 | key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] };
|
---|
506 | key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] };
|
---|
507 | key <LatD> { [ Cyrillic_de, Cyrillic_DE ] };
|
---|
508 | key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] };
|
---|
509 | key <TLDE> { [ Cyrillic_io, Cyrillic_IO, asciitilde ] };
|
---|
510 | key <LatX> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
|
---|
511 | key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] };
|
---|
512 | key <LatI> { [ Cyrillic_i, Cyrillic_I ] };
|
---|
513 | key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] };
|
---|
514 | key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] };
|
---|
515 | key <LatL> { [ Cyrillic_el, Cyrillic_EL ] };
|
---|
516 | key <LatM> { [ Cyrillic_em, Cyrillic_EM ] };
|
---|
517 | key <LatN> { [ Cyrillic_en, Cyrillic_EN ] };
|
---|
518 | key <LatO> { [ Cyrillic_o, Cyrillic_O ] };
|
---|
519 | key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] };
|
---|
520 | key <LatR> { [ Cyrillic_er, Cyrillic_ER ] };
|
---|
521 | key <LatS> { [ Cyrillic_es, Cyrillic_ES ] };
|
---|
522 | key <LatT> { [ Cyrillic_te, Cyrillic_TE ] };
|
---|
523 | key <LatU> { [ Cyrillic_u, Cyrillic_U ] };
|
---|
524 | key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] };
|
---|
525 | key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] };
|
---|
526 | key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] };
|
---|
527 | key <AC10> { [ Cyrillic_che, Cyrillic_CHE ] };
|
---|
528 | key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] };
|
---|
529 | key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA, plus, asterisk ] };
|
---|
530 | key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] };
|
---|
531 | key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] };
|
---|
532 | key <LatV> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] };
|
---|
533 | key <AC11> { [ Cyrillic_e, Cyrillic_E ] };
|
---|
534 | key <BKSL> { [ Cyrillic_yu, Cyrillic_YU, numbersign, apostrophe ] };
|
---|
535 | key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] };
|
---|
536 |
|
---|
537 | include "level3(ralt_switch)"
|
---|
538 | };
|
---|
539 |
|
---|
540 | partial alphanumeric_keys
|
---|
541 | xkb_symbols "htcdream" {
|
---|
542 | include "inet(htcdream)"
|
---|
543 |
|
---|
544 | name[Group1]= "German";
|
---|
545 |
|
---|
546 | //second row
|
---|
547 | key <AD01> { [ q, Q, Tab, Tab ] };
|
---|
548 | key <AD02> { [ w, W, grave, grave ] };
|
---|
549 | key <AD03> { [ e, E, EuroSign, EuroSign ] };
|
---|
550 | key <AD04> { [ r, R, underscore, underscore ] };
|
---|
551 | key <AD05> { [ t, T, sterling, sterling] };
|
---|
552 | key <AD06> { [ z, Z, division, division ] };
|
---|
553 | key <AD07> { [ u, U, udiaeresis, udiaeresis ] };
|
---|
554 | key <AD08> { [ i, I, minus, minus ] };
|
---|
555 | key <AD09> { [ o, O, odiaeresis, odiaeresis ] };
|
---|
556 | key <AD10> { [ p, P, equal, equal ] };
|
---|
557 |
|
---|
558 | //third row
|
---|
559 | key <AC01> { [ a, A, adiaeresis, adiaeresis ] };
|
---|
560 | key <AC02> { [ s, S, ssharp, ssharp] };
|
---|
561 | key <AC03> { [ d ,D, backslash, backslash ] };
|
---|
562 | key <AC04> { [ f, F, braceleft, braceleft ] };
|
---|
563 | key <AC05> { [ g, G, braceright, braceright ] };
|
---|
564 | key <AC06> { [ h, H, multiply, multiply ] };
|
---|
565 | key <AC07> { [ j, J, colon, colon ] };
|
---|
566 | key <AC08> { [ k, K, plus, plus ] };
|
---|
567 | key <AC09> { [ l, L, apostrophe, apostrophe ] };
|
---|
568 |
|
---|
569 | //forth row
|
---|
570 | key <AB01> { [ y, Y, bar, bar ] };
|
---|
571 | key <AB02> { [ x, X, bracketleft, bracketleft ] };
|
---|
572 | key <AB03> { [ c, C, bracketright, bracketright ] };
|
---|
573 | key <AB04> { [ v, V, less, less ] };
|
---|
574 | key <AB05> { [ b, B, greater, greater ] };
|
---|
575 | key <AB06> { [ n, N, semicolon, semicolon ] };
|
---|
576 | key <AB07> { [ m, M, quotedbl, quotedbl ] };
|
---|
577 | key <AB08> { [ comma, comma, question, question ] };
|
---|
578 |
|
---|
579 | //fifth row
|
---|
580 | key <FK15> { [ at, at, asciitilde, asciitilde ] };
|
---|
581 |
|
---|
582 | include "level3(alt_switch)"
|
---|
583 | };
|
---|
584 |
|
---|
585 | // EXTRAS:
|
---|
586 |
|
---|
587 | partial alphanumeric_keys
|
---|
588 | xkb_symbols "us" {
|
---|
589 | include "us"
|
---|
590 |
|
---|
591 | name[Group1]="German (US keyboard with German letters)";
|
---|
592 |
|
---|
593 | key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
|
---|
594 | key <AC02> { [ s, S, ssharp, ssharp ] };
|
---|
595 | key <AC10> { [ semicolon, colon, odiaeresis, Odiaeresis ] };
|
---|
596 | key <AC11> { [ apostrophe, quotedbl, adiaeresis, Adiaeresis ] };
|
---|
597 | key <AD03> { [ e, E, EuroSign, EuroSign ] };
|
---|
598 | key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
|
---|
599 | key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
|
---|
600 | key <AD11> { [ bracketleft, braceleft, udiaeresis, Udiaeresis ] };
|
---|
601 | key <AE03> { [ 3, numbersign, section, section ] };
|
---|
602 | key <AE11> { [ minus, underscore, ssharp, question ] };
|
---|
603 |
|
---|
604 | include "level3(ralt_switch)"
|
---|
605 | };
|
---|
606 |
|
---|
607 | partial alphanumeric_keys
|
---|
608 | xkb_symbols "hu" {
|
---|
609 |
|
---|
610 | // modify the basic German layout to not have any dead keys and add Hungarian letters
|
---|
611 |
|
---|
612 | include "de(basic)"
|
---|
613 | name[Group1]="German (with Hungarian letters and no dead keys)";
|
---|
614 |
|
---|
615 | key <AB01> { [ y, Y, guillemotleft, less ] };
|
---|
616 | key <AC10> { [odiaeresis, Odiaeresis, eacute, Eacute ] };
|
---|
617 | key <AC11> { [adiaeresis, Adiaeresis, aacute, Aacute] };
|
---|
618 | key <AD03> { [ e, E, EuroSign, EuroSign ] };
|
---|
619 | key <AD06> { [ z, Z, leftarrow, yen ] };
|
---|
620 | key <AD07> { [ u, U, uacute, Uacute ] };
|
---|
621 | key <AD08> { [ i, I, iacute, Iacute ] };
|
---|
622 | key <AD09> { [ o, O, odoubleacute,Odoubleacute ] };
|
---|
623 | key <AD11> { [udiaeresis, Udiaeresis, udoubleacute,Udoubleacute ] };
|
---|
624 | key <AD12> { [ plus, asterisk, asciitilde, macron ] };
|
---|
625 | key <AE12> { [ acute, grave, oacute, Oacute ] };
|
---|
626 | key <BKSL> { [numbersign, apostrophe, grave, grave ] };
|
---|
627 | key <TLDE> { [asciicircum, degree, notsign, notsign ] };
|
---|
628 |
|
---|
629 |
|
---|
630 | };
|
---|