/usr/share/X11/xkb/symbols
NameSizeModeActions
digital_vndr/-0755rm
fujitsu_vndr/-0755rm
hp_vndr/-0755rm
jolla_vndr/-0755rm
macintosh_vndr/-0755rm
nec_vndr/-0755rm
nokia_vndr/-0755rm
sgi_vndr/-0755rm
sharp_vndr/-0755rm
sony_vndr/-0755rm
sun_vndr/-0755rm
xfree68_vndr/-0755rm
af233840644editdlrm
al61570644editdlrm
altwin36700644editdlrm
am102840644editdlrm
apl521760644editdlrm
ara335990644editdlrm
at3580644editdlrm
au1780644editdlrm
az37840644editdlrm
ba6570644editdlrm
bd42890644editdlrm
be111010644editdlrm
bg234140644editdlrm
br167780644editdlrm
brai25100644editdlrm
bt45970644editdlrm
bw9960644editdlrm
by33430644editdlrm
ca214340644editdlrm
capslock20000644editdlrm
cd40380644editdlrm
ch72690644editdlrm
cm337870644editdlrm
cn373430644editdlrm
compose23030644editdlrm
ctrl39640644editdlrm
cz241860644editdlrm
de956480644editdlrm
dk24620644editdlrm
dz126970644editdlrm
ee41410644editdlrm
eg20610644editdlrm
empty1000644editdlrm
epo75980644editdlrm
es98590644editdlrm
et31330644editdlrm
eu52680644editdlrm
eurosign6290644editdlrm
fi248930644editdlrm
fo19890644editdlrm
fr969730644editdlrm
gb99140644editdlrm
ge129750644editdlrm
gh65610644editdlrm
gn21910644editdlrm
gr143370644editdlrm
group119810644editdlrm
hr25480644editdlrm
hu234570644editdlrm
id85300644editdlrm
ie202760644editdlrm
il166250644editdlrm
in1153060644editdlrm
inet788330644editdlrm
iq6410644editdlrm
ir124330644editdlrm
is131340644editdlrm
it174790644editdlrm
jp84610644editdlrm
jv34520644editdlrm
ke75480644editdlrm
keypad237580644editdlrm
kg60780644editdlrm
kh49950644editdlrm
kpdl33980644editdlrm
kr11680644editdlrm
kz163980644editdlrm
la55620644editdlrm
latam138110644editdlrm
latin146340644editdlrm
level22740644editdlrm
level365550644editdlrm
level547390644editdlrm
lk81980644editdlrm
lt235160644editdlrm
lv192800644editdlrm
ma125100644editdlrm
Makefile.in297610644editdlrm
mao5930644editdlrm
md51150644editdlrm
me17480644editdlrm
mk30700644editdlrm
ml33250644editdlrm
mm59120644editdlrm
mn42740644editdlrm
mt90920644editdlrm
mv26690644editdlrm
my68710644editdlrm
nbsp44060644editdlrm
ng62680644editdlrm
nl67220644editdlrm
no117160644editdlrm
np67490644editdlrm
olpc9300644editdlrm
parens3890644editdlrm
pc23880644editdlrm
ph759790644editdlrm
pk271510644editdlrm
pl271100644editdlrm
pt118330644editdlrm
ro116930644editdlrm
rs153630644editdlrm
ru679910644editdlrm
rupeesign1310644editdlrm
se169930644editdlrm
shift22400644editdlrm
si5900644editdlrm
sk68580644editdlrm
sn22190644editdlrm
srvr_ctrl23300644editdlrm
sy70760644editdlrm
terminate1990644editdlrm
tg48210644editdlrm
th103370644editdlrm
tj103870644editdlrm
tm14790644editdlrm
tr265770644editdlrm
trans160500644editdlrm
tw33050644editdlrm
typo45220644editdlrm
tz34280644editdlrm
ua160860644editdlrm
us1075050644editdlrm
uz41250644editdlrm
vn61530644editdlrm
za21080644editdlrm
Edit: /usr/share/X11/xkb/symbols/de (95648B)
default xkb_symbols "basic" { include "latin(type4)" name[Group1]="German"; key { [ 2, quotedbl, twosuperior, oneeighth ] }; key { [ 3, section, threesuperior, sterling ] }; key { [ 4, dollar, onequarter, currency ] }; key {type[Group1]="FOUR_LEVEL_PLUS_LOCK", symbols[Group1]= [ssharp, question, backslash, questiondown, 0x1001E9E ]}; key { [dead_acute, dead_grave, dead_cedilla, dead_ogonek ] }; key { [ e, E, EuroSign, EuroSign ] }; key { [ z, Z, leftarrow, yen ] }; key { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] }; key { [ plus, asterisk, asciitilde, macron ] }; key { [ s, S, U017F, U1E9E ] }; key { [ j, J, dead_belowdot, dead_abovedot ] }; key { [odiaeresis, Odiaeresis, dead_doubleacute, dead_belowdot ] }; key { [adiaeresis, Adiaeresis, dead_circumflex, dead_caron ] }; key { [dead_circumflex, degree, U2032, U2033 ] }; key { [numbersign, apostrophe, rightsinglequotemark, dead_breve ] }; key { [ y, Y, guillemotright, U203A ] }; key { [ x, X, guillemotleft, U2039 ] }; key { [ v, V, doublelowquotemark, singlelowquotemark ] }; key { [ b, B, leftdoublequotemark, leftsinglequotemark ] }; key { [ n, N, rightdoublequotemark, rightsinglequotemark ] }; key { [ comma, semicolon, periodcentered, multiply ] }; key { [ period, colon, U2026, division ] }; key { [ minus, underscore, endash, emdash ] }; key { [ less, greater, bar, dead_belowmacron ] }; include "kpdl(comma)" include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "deadtilde" { // previous standard German layout with tilde as dead key include "de(basic)" name[Group1]="German (dead tilde)"; key { [ plus, asterisk, dead_tilde, dead_macron ] }; }; partial alphanumeric_keys xkb_symbols "nodeadkeys" { // modify the basic German layout to not have any dead keys include "de(basic)" name[Group1]="German (no dead keys)"; key { [asciicircum, degree, notsign, notsign ] }; key { [ acute, grave, cedilla, cedilla ] }; key { [ udiaeresis, Udiaeresis, diaeresis, diaeresis ] }; key { [ plus, asterisk, asciitilde, macron ] }; key { [ odiaeresis, Odiaeresis, doubleacute, doubleacute ] }; key { [ adiaeresis, Adiaeresis, asciicircum, asciicircum ] }; key { [ numbersign, apostrophe, rightsinglequotemark, grave ] }; }; partial alphanumeric_keys xkb_symbols "deadgraveacute" { // modify the basic German layout to have only acute and grave // as dead keys (tilde and circumflex are needed as spacing characters // in many programming languages) include "de(basic)" name[Group1]="German (dead grave acute)"; key { [asciicircum, degree, notsign, notsign ] }; key { [ plus, asterisk, asciitilde, dead_macron ] }; key { [ numbersign, apostrophe, rightsinglequotemark, grave ] }; }; partial alphanumeric_keys xkb_symbols "deadacute" { // modify the basic German layout to have only acute as // dead keys (ASCII grave, tilde and circumflex are needed as // spacing characters in many programming languages and text formatters) include "de(deadgraveacute)" name[Group1]="German (dead acute)"; key { [dead_acute, grave, dead_cedilla, dead_ogonek ] }; key { [numbersign, apostrophe, rightsinglequotemark, dead_grave ] }; }; partial alphanumeric_keys xkb_symbols "e1" { // German extended layout E1 based on DIN 2137-1:2020-11 // Designed for a 105-key keyboard // https://de.wikipedia.org/wiki/Tastaturbelegung name[Group1]="German (E1)"; // first row key.type[Group1] = "EIGHT_LEVEL"; key { [ dead_circumflex, degree, multiply, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key { [ 1, exclam, rightsinglequotemark, NoSymbol, onequarter, U25CA, NoSymbol, NoSymbol ] }; key { [ 2, quotedbl, twosuperior, NoSymbol, onehalf, U00A6, NoSymbol, NoSymbol ] }; key { [ 3, section, threesuperior, NoSymbol, threequarters, U00B6, NoSymbol, NoSymbol ] }; key { [ 4, dollar, emdash, NoSymbol, currency, U2133, NoSymbol, NoSymbol ] }; key { [ 5, percent, exclamdown, NoSymbol, U2030, U20B0, NoSymbol, NoSymbol ] }; key { [ 6, ampersand, questiondown, NoSymbol, U2044, U204A, NoSymbol, NoSymbol ] }; key { [ 7, slash, braceleft, NoSymbol, U2300, U2116, NoSymbol, NoSymbol ] }; key { [ 8, parenleft, bracketleft, NoSymbol, U27E8, U27EA, NoSymbol, NoSymbol ] }; key { [ 9, parenright, bracketright, NoSymbol, U27E9, U27EB, NoSymbol, NoSymbol ] }; key { [ 0, equal, braceright, NoSymbol, division, U2205, NoSymbol, NoSymbol ] }; key { [ ssharp, question, backslash, NoSymbol, notequal, U00AC, NoSymbol, NoSymbol ] }; key { [ dead_acute, dead_grave, dead_abovedot, NoSymbol, sterling, U035C, NoSymbol, NoSymbol ] }; // second row key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC"; key { [ q, Q, at, NoSymbol, masculine, U2642, NoSymbol, NoSymbol ] }; key { [ w, W, dead_macron, NoSymbol, ordfeminine, U2640, NoSymbol, NoSymbol ] }; key { [ e, E, EuroSign, NoSymbol, schwa, SCHWA, NoSymbol, NoSymbol ] }; key { [ r, R, dead_doubleacute, NoSymbol, trademark, registered, NoSymbol, NoSymbol ] }; key { [ t, T, dead_caron, NoSymbol, thorn, THORN, NoSymbol, NoSymbol ] }; key { [ z, Z, dead_diaeresis, NoSymbol, U0292, U01B7, NoSymbol, NoSymbol ] }; key { [ u, U, dead_breve, NoSymbol, rightarrow, leftarrow, NoSymbol, NoSymbol ] }; key { [ i, I, dead_tilde, NoSymbol, idotless, U26A5, NoSymbol, NoSymbol ] }; key { [ o, O, dead_abovering, NoSymbol, oslash, Oslash, NoSymbol, NoSymbol ] }; key { [ p, P, dead_hook, NoSymbol, downarrow, uparrow, NoSymbol, NoSymbol ] }; key { [ udiaeresis, Udiaeresis, dead_horn, NoSymbol, U2198, U2197, NoSymbol, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL"; key { [ plus, asterisk, asciitilde, NoSymbol, plusminus, U2052, NoSymbol, NoSymbol ] }; // third row key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC"; // Per DIN 2137-1:2018-12, p. 11-12, (Alt)Gr+a can either invoke // a selection possibility for emojis or special characters, or // output the U+263A smiley. key { [ a, A, Multi_key, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key { [ s, S, seconds, NoSymbol, U017F, U2211, NoSymbol, NoSymbol ] }; key { [ d, D, minutes, NoSymbol, eth, ETH, NoSymbol, NoSymbol ] }; key { [ f, F, ISO_Level5_Latch, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key { [ g, G, U1E9E, NoSymbol, U02BF, U261B, NoSymbol, NoSymbol ] }; key { [ h, H, dead_belowmacron, NoSymbol, U02BE, U261A, NoSymbol, NoSymbol ] }; key { [ j, J, dead_cedilla, NoSymbol, U02B9, U02BA, NoSymbol, NoSymbol ] }; key { [ k, K, dead_belowcomma, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key { [ l, L, dead_ogonek, NoSymbol, lstroke, Lstroke, NoSymbol, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, dead_belowdot, NoSymbol, oe, OE, NoSymbol, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, dead_stroke, NoSymbol, ae, AE, NoSymbol, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL"; key { [ numbersign, apostrophe, U2212, NoSymbol, U2020, U2021, NoSymbol, NoSymbol ] }; // fourth row key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC"; key { [ y, Y, U203A, NoSymbol, U2423, U23D1, NoSymbol, NoSymbol ] }; key { [ x, X, guillemotright, NoSymbol, doublelowquotemark, singlelowquotemark, NoSymbol, NoSymbol ] }; key { [ c, C, U202F, NoSymbol, cent, copyright, NoSymbol, NoSymbol ] }; key { [ v, V, guillemotleft, NoSymbol, leftdoublequotemark, leftsinglequotemark, NoSymbol, NoSymbol ] }; key { [ b, B, U2039, NoSymbol, rightdoublequotemark, rightsinglequotemark, NoSymbol, NoSymbol ] }; key { [ n, N, endash, NoSymbol, eng, ENG, NoSymbol, NoSymbol ] }; // Per DIN 2137-1:2018-12, p. 12, U+2217 should be replaced by the // 'middle asterisk' character as soon as it has been added to // Unicode (see Unicode proposal L2/17-152). key { [ m, M, mu, NoSymbol, U200C, U2217, NoSymbol, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL"; key { [ comma, semicolon, U2011, NoSymbol, U02BB, U2661, NoSymbol, NoSymbol ] }; key { [ period, colon, periodcentered, NoSymbol, ellipsis, U2713, NoSymbol, NoSymbol ] }; key { [ minus, underscore, hyphen, NoSymbol, U2022, U25E6, NoSymbol, NoSymbol ] }; // fifth row key.type[Group1] = "EIGHT_LEVEL"; key { [ space, space, nobreakspace, NoSymbol, U200A, U2009, NoSymbol, NoSymbol ] }; key.type[Group1] = "ONE_LEVEL"; key { [ Shift_L ] }; key { [ Shift_R ] }; key { [ ISO_Level3_Shift ] }; // key exists only on the 105-key keyboard key.type[Group1] = "EIGHT_LEVEL"; key { [ less, greater, bar, NoSymbol, lessthanequal, greaterthanequal, NoSymbol, NoSymbol ] }; include "kpdl(comma)" include "level3(modifier_mapping)" include "level5(modifier_mapping)" }; partial alphanumeric_keys xkb_symbols "e2" { // German extended layout E2 based on DIN 2137-1:2020-11 // Designed for a 104-key keyboard // https://de.wikipedia.org/wiki/Tastaturbelegung include "de(e1)" name[Group1]="German (E2)"; // one key less: assign bar, less and greater to other keys key.type[Group1] = "EIGHT_LEVEL"; key { [ dead_circumflex, degree, bar, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key { [ 2, quotedbl, less, NoSymbol, onehalf, U00A6, NoSymbol, NoSymbol ] }; key { [ 3, section, greater, NoSymbol, threequarters, U00B6, NoSymbol, NoSymbol ] }; key { [ plus, asterisk, asciitilde, NoSymbol, multiply, U2052, NoSymbol, NoSymbol ] }; // if E2 is used on a 105-key keyboard key.type[Group1] = "ONE_LEVEL"; key { [ ISO_Level3_Shift ] }; }; partial alphanumeric_keys xkb_symbols "T3" { // German extended layout T3 based on DIN 2137-1:2012-06 // Now obsolete, use de(e1) or de(e2) name[Group1]="German (T3)"; key.type[Group1] = "EIGHT_LEVEL"; key { [ dead_circumflex, degree, multiply, NoSymbol, U204A, hyphen, bar, NoSymbol ] }; key { [ 1, exclam, rightsinglequotemark, NoSymbol, onesuperior, exclamdown, U02B9, NoSymbol ] }; key { [ 2, quotedbl, twosuperior, NoSymbol, twosuperior, currency, U02BA, NoSymbol ] }; key { [ 3, section, threesuperior, NoSymbol, threesuperior, sterling, U02BF, NoSymbol ] }; key { [ 4, dollar, emdash, NoSymbol, onequarter, 0x20AC, U02BE, NoSymbol ] }; key { [ 5, percent, exclamdown, NoSymbol, onehalf, uparrow, U02C1, NoSymbol ] }; key { [ 6, ampersand, questiondown, NoSymbol, threequarters, downarrow, U02C0, NoSymbol ] }; key { [ 7, slash, braceleft, NoSymbol, oneeighth, leftarrow, braceleft, NoSymbol ] }; key { [ 8, parenleft, bracketleft, NoSymbol, threeeighths, rightarrow, braceright, NoSymbol ] }; key { [ 9, parenright, bracketright, NoSymbol, fiveeighths, plusminus, bracketleft, NoSymbol ] }; key { [ 0, equal, braceright, NoSymbol, seveneighths, trademark, bracketright, NoSymbol ] }; key { [ ssharp, question, backslash, NoSymbol, backslash, questiondown, U02BB, NoSymbol ] }; key { [ dead_acute, dead_grave, dead_abovedot, NoSymbol, dead_cedilla, dead_ogonek, notsign, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC"; key { [ q, Q, at, NoSymbol, U0242, U0241, U030D, NoSymbol ] }; key { [ w, W, dead_caron, NoSymbol, U02B7, U2126, dead_abovedot, NoSymbol ] }; key { [ e, E, EuroSign, NoSymbol, oe, OE, dead_breve, NoSymbol ] }; key { [ r, R, dead_diaeresis, NoSymbol, paragraph, registered, dead_circumflex, NoSymbol ] }; key { [ t, T, dead_macron, NoSymbol, UA78C, UA78B, dead_diaeresis, NoSymbol ] }; key { [ z, Z, dead_doubleacute, NoSymbol, U027C, yen, dead_invertedbreve, NoSymbol ] }; key { [ u, U, dead_breve, NoSymbol, U0223, U0222, dead_caron, NoSymbol ] }; key { [ i, I, dead_tilde, NoSymbol, idotless, U214D, dead_abovecomma, NoSymbol ] }; key { [ o, O, dead_abovering, NoSymbol, oslash, Oslash, dead_horn, NoSymbol ] }; key { [ p, P, dead_hook, NoSymbol, thorn, THORN, dead_hook, NoSymbol ] }; key { [ udiaeresis, Udiaeresis, dead_horn, NoSymbol, U017F, dead_abovering, dead_grave, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL"; key { [ plus, asterisk, asciitilde, NoSymbol, dead_tilde, dead_macron, at, NoSymbol ] }; key.type[Group1] = "ONE_LEVEL"; key { [ Caps_Lock ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC"; key { [ a, A, lessthanequal, NoSymbol, ae, AE, U0329, NoSymbol ] }; key { [ s, S, greaterthanequal, NoSymbol, ssharp, section, dead_belowdot, NoSymbol ] }; key { [ d, D, U2300, NoSymbol, eth, ETH, dead_belowbreve, NoSymbol ] }; key { [ f, F, minutes, NoSymbol, U0294, ordfeminine, dead_belowcircumflex, NoSymbol ] }; key { [ g, G, seconds, NoSymbol, eng, ENG, dead_belowmacron, NoSymbol ] }; key { [ h, H, U1E9E, NoSymbol, U0272, U019D, U0332, NoSymbol ] }; key { [ j, J, dead_cedilla, NoSymbol, U0133, U0132, dead_belowring, NoSymbol ] }; key { [ k, K, dead_belowcomma, NoSymbol, kra, dead_belowcomma, dead_stroke, NoSymbol ] }; key { [ l, L, dead_ogonek, NoSymbol, lstroke, Lstroke, U0338, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, dead_belowdot, NoSymbol, dead_acute, dead_doubleacute, degree, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, dead_stroke, NoSymbol, U019B, U1E9E, minutes, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL"; key { [ numbersign, apostrophe, registered, NoSymbol, schwa, SCHWA, seconds, NoSymbol ] }; key { [ less, greater, bar, NoSymbol, U0149, brokenbar, U266A, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC"; key { [ y, Y, U203A, NoSymbol, U0292, U01B7, guillemotleft, NoSymbol ] }; key { [ x, X, guillemotright, NoSymbol, doublelowquotemark, singlelowquotemark, guillemotright, NoSymbol ] }; key { [ c, C, copyright, NoSymbol, cent, copyright, Greek_horizbar, NoSymbol ] }; key { [ v, V, guillemotleft, NoSymbol, leftdoublequotemark, leftsinglequotemark, U2039, NoSymbol ] }; key { [ b, B, U2039, NoSymbol, rightdoublequotemark, rightsinglequotemark, U203A, NoSymbol ] }; key { [ n, N, endash, NoSymbol, U019E, U0220, endash, NoSymbol ] }; key { [ m, M, mu, NoSymbol, mu, masculine, emdash, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL"; key { [ comma, semicolon, U02BB, NoSymbol, ellipsis, multiply, dollar, NoSymbol ] }; key { [ period, colon, U200C, NoSymbol, periodcentered, division, numbersign, NoSymbol ] }; key { [ minus, underscore, hyphen, NoSymbol, U0140, U013F, U2011, NoSymbol ] }; key { [ space, space, nobreakspace, NoSymbol, U202F, U200C, nobreakspace, NoSymbol ] }; include "kpdl(comma)" include "level5(modifier_mapping)" include "level3(modifier_mapping)" key.type[Group1] = "THREE_LEVEL"; key { [ Shift_L, Shift_L, ISO_Level5_Latch ] }; key { [ Shift_R, Shift_R, ISO_Level5_Latch ] }; key { [ ISO_Level3_Shift, ISO_Level5_Latch, ISO_Level5_Latch ] }; }; partial alphanumeric_keys xkb_symbols "ro" { // Adds Romanian-specific letters to the German basic layout. // Romanian symbols are accessible by combining and // 'a', 's', 't', 'i', 'ä (ä)' (+ for capital letters). include "de(basic)" name[Group1]="Romanian (Germany)"; key { [ t, T, U021b, U021a ] }; key { [ i, I, icircumflex, Icircumflex ] }; key { [ a, A, acircumflex, Acircumflex ] }; key { [ s, S, U0219, U0218 ] }; key { [ adiaeresis, Adiaeresis, abreve, Abreve ] }; }; partial alphanumeric_keys xkb_symbols "ro_nodeadkeys" { // Adds Romanian-specific letters to the German nodeadkeys layout. // Read the comment for de_ro ! include "de(nodeadkeys)" name[Group1]="Romanian (Germany, no dead keys)"; key { [ t, T, U021b, U021a ] }; key { [ i, I, icircumflex, Icircumflex ] }; key { [ a, A, acircumflex, Acircumflex ] }; key { [ s, S, U0219, U0218 ] }; key { [ adiaeresis, Adiaeresis, abreve, Abreve ] }; }; // German Dvorak keymap by Thorsten Staerk (www.staerk.de/thorsten) // Have acute and grave as dead keys, tilde and circumflex alive as they are needed // in many programming languages. // to use this keymap, use a 105-key-keyboard and the command setxkbmap -model pc105 -layout dvorak -variant de // source: http://www-lehre.informatik.uni-osnabrueck.de/~rfreund/dvorak.php partial alphanumeric_keys xkb_symbols "dvorak" { include "us(dvorak)" name[Group1]="German (Dvorak)"; key { [ asciicircum, degree ] }; key { [ 1, exclam, onesuperior ] }; key { [ 2, quotedbl, twosuperior ] }; key { [ 3, section, threesuperior ] }; key { [ 4, dollar, bar ] }; key { [ 5, percent, bar ] }; key { [ 6, ampersand, brokenbar ] }; key { [ 7, slash, braceleft ] }; key { [ 8, parenleft, bracketleft ] }; key { [ 9, parenright, bracketright ] }; key { [ 0, equal, braceright ] }; key { [ plus, asterisk, asciitilde ] }; key { [ less, greater, dead_grave ] }; key { [ udiaeresis, Udiaeresis, at ] }; key { [ comma, semicolon, dead_diaeresis ] }; key { [ period, colon ] }; key { [ c, C, copyright, Cacute ] }; key { [ t, T, trademark ] }; key { [ z, Z, zabovedot, Zabovedot ] }; key { [ question, ssharp ] }; key { [ slash, backslash, dead_acute ] }; key { [ a, A, at, aogonek ] }; key { [ o, O, oacute, Oacute ] }; key { [ e, E, EuroSign, eogonek ] }; key { [ i, I ] }; key { [ u, U ] }; key { [ h, H ] }; key { [ d, D ] }; key { [ r, R, registered ] }; key { [ n, N, nacute, Nacute ] }; key { [ s, S, sacute, Sacute] }; key { [ l, L, lstroke, Lstroke ] }; key { [ odiaeresis, Odiaeresis ] }; key { [ q, Q, at ] }; key { [ m, M, mu ] }; key { [ numbersign, apostrophe ] }; key { [ minus, underscore, hyphen, diaeresis] }; key { [ adiaeresis, Adiaeresis, bar ] }; include "level3(ralt_switch)" }; // German Neo-Layout Version 2 // adopted 2004 by Hanno Behrens // inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/ // // Authors: // Stephan Hilb // // Benjamin Kellermann // Erik Streb // and many other contributors // // http://www.neo-layout.org // // $Revision$, $Date$ partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "neo_base" { // Levels in Neo jargon // -------------------------------------------------------------- // Ebene 1: normal // Ebene 2: Shift // Ebene 3: Mod3 // Ebene 4: Mod4 (for marking something use Shift + Mod4) // Ebene 5: Shift + Mod3 // Ebene 6: Mod3 + Mod4 // Compose (not a level): Mod3 + Tab // Feststelltaste (Capslock): Shift + Shift // Mod4-Lock: Mod4 + Mod4 // Mod4-Lock: Shift + Mod3 + Tab // Legend // =============== // Levels in Xkbmap jargon to be found here in the definitions. // These are the levels used, and Xorg's translations: // -------------------------------------------------------------- // Xorg: Level1 Level2 Level3 Level4 Level5 Level6 Level7 Level8 // Neo: Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Pseudo-Ebene Ebene6 ??? // Keys (Neo): None Shift Mod3 Mod3 + Shift Mod4 Mod4 + Shift Mod3 + Mod4 Mod3 + Mod4 + Shift // Alphanumeric-keys // =============== key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; // Tab as Multi_key (Compose) // -------------------------------------------------------------- key { [ Tab, ISO_Left_Tab, Multi_key, ISO_Level5_Lock, NoSymbol, NoSymbol, NoSymbol, ISO_Level5_Lock ] }; // Number row // -------------------------------------------------------------- key { [ dead_circumflex, dead_caron, U21BB, U02DE, dead_abovedot, Pointer_EnableKeys, dead_belowdot, NoSymbol ] }; key { [ 1, degree, onesuperior, onesubscript, ordfeminine, NoSymbol, notsign, NoSymbol ] }; key { [ 2, section, twosuperior, twosubscript, masculine, NoSymbol, logicalor, NoSymbol ] }; key { [ 3, U2113, threesuperior, threesubscript, numerosign, NoSymbol, logicaland, NoSymbol ] }; key { [ 4, guillemotright, U203A, femalesymbol, NoSymbol, NoSymbol, U22A5, NoSymbol ] }; key { [ 5, guillemotleft, U2039, malesymbol, periodcentered, NoSymbol, U2221, NoSymbol ] }; key { [ 6, dollar, cent, U26A5, sterling, NoSymbol, U2225, NoSymbol ] }; key { [ 7, EuroSign, yen, U03F0, currency, NoSymbol, rightarrow, NoSymbol ] }; key { [ 8, doublelowquotemark, singlelowquotemark, U27E8, Tab, ISO_Left_Tab, U221E, NoSymbol ] }; key { [ 9, leftdoublequotemark, leftsinglequotemark, U27E9, KP_Divide, KP_Divide, variation, NoSymbol ] }; key { [ 0, rightdoublequotemark, rightsinglequotemark, zerosubscript, KP_Multiply, KP_Multiply, emptyset, NoSymbol ] }; key { [ minus, emdash, NoSymbol, U2011, KP_Subtract, KP_Subtract, hyphen, NoSymbol ] }; key { [ dead_grave, dead_cedilla, dead_abovering, dead_dasia, dead_diaeresis, NoSymbol, dead_macron, NoSymbol ] }; // Top row // -------------------------------------------------------------- key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ x, X, ellipsis, Greek_xi, Prior, Prior, Greek_XI, NoSymbol ] }; key { [ v, V, underscore, NoSymbol, BackSpace, BackSpace, radical, NoSymbol ] }; key { [ l, L, bracketleft, Greek_lambda, Up, Up, Greek_LAMBDA, NoSymbol ] }; key { [ c, C, bracketright, Greek_chi, Delete, Delete, U2102, NoSymbol ] }; key { [ w, W, asciicircum, Greek_omega, Next, Next, Greek_OMEGA, NoSymbol ] }; key { [ k, K, exclam, Greek_kappa, exclamdown, NoSymbol, multiply, NoSymbol ] }; key { [ h, H, less, Greek_psi, KP_7, KP_7, Greek_PSI, NoSymbol ] }; key { [ g, G, greater, Greek_gamma, KP_8, KP_8, Greek_GAMMA, NoSymbol ] }; key { [ f, F, equal, Greek_phi, KP_9, KP_9, Greek_PHI, NoSymbol ] }; key { [ q, Q, ampersand, U03D5, KP_Add, KP_Add, U211A, NoSymbol ] }; key { [ ssharp, U1E9E, U017F, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key { [ dead_acute, dead_tilde, dead_stroke, dead_psili, dead_doubleacute, NoSymbol, dead_breve, NoSymbol ] }; // Middle row // -------------------------------------------------------------- key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ u, U, backslash, NoSymbol, Home, Home, includedin, NoSymbol ] }; key { [ i, I, slash, Greek_iota, Left, Left, integral, NoSymbol ] }; key { [ a, A, braceleft, Greek_alpha, Down, Down, U2200, NoSymbol ] }; key { [ e, E, braceright, Greek_epsilon, Right, Right, U2203, NoSymbol ] }; key { [ o, O, asterisk, Greek_omicron, End, End, elementof, NoSymbol ] }; key { [ s, S, question, Greek_sigma, questiondown, NoSymbol, Greek_SIGMA, NoSymbol ] }; key { [ n, N, parenleft, Greek_nu, KP_4, KP_4, U2115, NoSymbol ] }; key { [ r, R, parenright, Greek_rho, KP_5, KP_5, U211D, NoSymbol ] }; key { [ t, T, minus, Greek_tau, KP_6, KP_6, partialderivative, NoSymbol ] }; key { [ d, D, colon, Greek_delta, KP_Separator, comma, Greek_DELTA, NoSymbol ] }; key { [ y, Y, at, Greek_upsilon, period, KP_Decimal, nabla, NoSymbol ] }; // Bottom row // -------------------------------------------------------------- key { [ udiaeresis, Udiaeresis, numbersign, NoSymbol, Escape, Escape, union, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, dollar, U03F5, Tab, Tab, intersection, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, bar, Greek_eta, Insert, Insert, U2135, NoSymbol ] }; key { [ p, P, asciitilde, Greek_pi, Return, Return, Greek_PI, NoSymbol ] }; key { [ z, Z, grave, Greek_zeta, Undo, Redo, U2124, NoSymbol ] }; key { [ b, B, plus, Greek_beta, colon, NoSymbol, U21D0, NoSymbol ] }; key { [ m, M, percent, Greek_mu, KP_1, KP_1, ifonlyif, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key { [ comma, endash, quotedbl, U03F1, KP_2, KP_2, U21D2, NoSymbol ] }; key { [ period, enfilledcircbullet, apostrophe, U03D1, KP_3, KP_3, U21A6, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ j, J, semicolon, Greek_theta, semicolon, NoSymbol, Greek_THETA, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; // Space key // -------------------------------------------------------------- key { [ space, space, space, nobreakspace, KP_0, KP_0, U202F, NoSymbol ] }; // Keypad-keys // =============== // The former Numlock key: key { [ Tab, ISO_Left_Tab, equal, approxeq, notequal, Pointer_EnableKeys, identical, NoSymbol ] }; // Topmost row // -------------------------------------------------------------- key { [ KP_Divide, KP_Divide, division, U2300, U2044, NoSymbol, U2223, NoSymbol ] }; key { [ KP_Multiply, KP_Multiply, U22C5, U2299, multiply, NoSymbol, U2297, NoSymbol ] }; key { [ KP_Subtract, KP_Subtract, U2212, U2296, U2216, NoSymbol, U2238, NoSymbol ] }; // Top row // -------------------------------------------------------------- key { [ KP_7, U2714, U2195, U226A, KP_Home, KP_Home, upstile, NoSymbol ] }; key { [ KP_8, U2718, uparrow, intersection, KP_Up, KP_Up, U22C2, NoSymbol ] }; key { [ KP_9, dagger, U20D7, U226B, KP_Prior, KP_Prior, U2309, NoSymbol ] }; key { [ KP_Add, KP_Add, plusminus, U2295, U2213, NoSymbol, U2214, NoSymbol ] }; // Middle row // -------------------------------------------------------------- key { [ KP_4, club, leftarrow, includedin, KP_Left, KP_Left, U2286, NoSymbol ] }; key { [ KP_5, EuroSign, colon, U22B6, KP_Begin, KP_Begin, U22B7, NoSymbol ] }; key { [ KP_6, U2023, rightarrow, includes, KP_Right, KP_Right, U2287, NoSymbol ] }; // Bottom row // -------------------------------------------------------------- key { [ KP_1, diamond, U2194, lessthanequal, KP_End, KP_End, downstile, NoSymbol ] }; key { [ KP_2, heart, downarrow, union, KP_Down, KP_Down, U22C3, NoSymbol ] }; key { [ KP_3, U2660, U21CC, greaterthanequal, KP_Next, KP_Next, U230B, NoSymbol ] }; key { [ KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, NoSymbol ] }; key { [ KP_Equal, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; // Bottommost row // -------------------------------------------------------------- key { [ KP_0, U2423, percent, U2030, KP_Insert, KP_Insert, U25A1, NoSymbol ] }; key { [ KP_Separator, period, comma, minutes, KP_Delete, KP_Delete, seconds, NoSymbol ] }; }; partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "neo" { include "de(neo_base)" name[Group1]= "German (Neo 2)"; include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" }; // Copied from macintosh_vndr/de // olh@suse.de very close to MacOS map partial alphanumeric_keys xkb_symbols "mac" { include "de" name[Group1]= "German (Macintosh)"; key { [ 1, exclam, exclamdown, at ] }; key { [ 5, percent, bracketleft ] }; key { [ 6, ampersand, bracketright ] }; key { [ 7, slash, bar, backslash ] }; key { [ 8, parenleft, braceleft, asciitilde ] }; key { [ 9, parenright, braceright ] }; key { [ q, Q, guillemotleft, guillemotright ] }; key { [ r, R, registered ] }; key { [ u, U, diaeresis, Aacute ] }; key { [ i, I, slash, Ucircumflex ] }; key { [ udiaeresis, Udiaeresis, periodcentered, degree ] }; key { [ plus, asterisk, asciitilde ] }; key { [ a, A, aring, Aring ] }; key { [ g, G, copyright ] }; key { [ h, H, ordfeminine ] }; key { [ l, L, at ] }; key { [ odiaeresis, Odiaeresis, dead_acute ] }; key { [ n, N, asciitilde ] }; }; partial alphanumeric_keys xkb_symbols "mac_nodeadkeys" { // modify the standard German mac layout to not have any dead keys include "de(mac)" name[Group1]= "German (Macintosh, no dead keys)"; key { [ asciicircum, degree, notsign ] }; key { [ 4, dollar, onequarter, currency ] }; key { [ acute, grave, cedilla ] }; key { [ udiaeresis, Udiaeresis, diaeresis ] }; key { [ plus, asterisk, asciitilde, macron ] }; key { [ odiaeresis, Odiaeresis, acute ] }; key { [ adiaeresis, Adiaeresis, asciicircum ] }; key { [ numbersign, apostrophe, rightsinglequotemark ] }; }; partial alphanumeric_keys xkb_symbols "dsb" { include "latin(basic)" name[Group1] = "Lower Sorbian"; key { [ z, Z, zcaron, Zcaron ] }; key { [ x, X, zacute, Zacute ] }; key { [ c, C, cacute, Cacute ] }; key { [ v, V, ccaron, Ccaron ] }; key { [ n, N, nacute, Nacute ] }; key { [ s, S, sacute, Sacute ] }; key { [ d, D, scaron, Scaron ] }; key { [ f, F ] }; key { [ q, Q ] }; key { [ w, W ] }; key { [ e, E, ecaron, Ecaron ] }; key { [ r, R, racute, Racute ] }; key { [ t, T, U20B5, EuroSign ] }; key { [ o, O, oacute, Oacute ] }; include "kpdl(comma)" include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "dsb_qwertz" { include "latin(basic)" name[Group1] = "Lower Sorbian (QWERTZ)"; key { [ y, Y ] }; key { [ x, X ] }; key { [ c, C, cacute, Cacute ] }; key { [ v, V, ccaron, Ccaron ] }; key { [ n, N, nacute, Nacute ] }; key { [ s, S, sacute, Sacute ] }; key { [ d, D, scaron, Scaron ] }; key { [ f, F ] }; key { [ q, Q ] }; key { [ w, W ] }; key { [ e, E, ecaron, Ecaron ] }; key { [ r, R, racute, Racute ] }; key { [ t, T, U20B5, EuroSign ] }; key { [ z, Z, zcaron, Zcaron ] }; key { [ u, U, zacute, Zacute ] }; key { [ o, O, oacute, Oacute ] }; include "kpdl(comma)" include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "qwerty" { // This layout should work exactly as a de with the exception // of 'Z' and 'Y' keys, which are in the qwerty style (ie. swapped). // 2008 by Matej Košík include "de(basic)" name[Group1] = "German (QWERTY)"; key { [ z, Z, leftarrow, yen ] }; key { [ y, Y, guillemotleft, less ] }; }; // layout for Russian letters on an german keyboard // based on US-RU layout by Ivan Popov 2005-07-17 // adopted for german layout by Alexey Fisher 2010-08-19 partial alphanumeric_keys xkb_symbols "ru" { include "de(basic)" name[Group1]= "Russian (Germany, phonetic)"; key { [ Cyrillic_a, Cyrillic_A ] }; key { [ Cyrillic_be, Cyrillic_BE ] }; key { [ Cyrillic_ve, Cyrillic_VE ] }; key { [ Cyrillic_ghe, Cyrillic_GHE ] }; key { [ Cyrillic_de, Cyrillic_DE ] }; key { [ Cyrillic_ie, Cyrillic_IE ] }; key { [ Cyrillic_io, Cyrillic_IO, asciitilde ] }; key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key { [ Cyrillic_ze, Cyrillic_ZE ] }; key { [ Cyrillic_i, Cyrillic_I ] }; key { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; key { [ Cyrillic_ka, Cyrillic_KA ] }; key { [ Cyrillic_el, Cyrillic_EL ] }; key { [ Cyrillic_em, Cyrillic_EM ] }; key { [ Cyrillic_en, Cyrillic_EN ] }; key { [ Cyrillic_o, Cyrillic_O ] }; key { [ Cyrillic_pe, Cyrillic_PE ] }; key { [ Cyrillic_er, Cyrillic_ER ] }; key { [ Cyrillic_es, Cyrillic_ES ] }; key { [ Cyrillic_te, Cyrillic_TE ] }; key { [ Cyrillic_u, Cyrillic_U ] }; key { [ Cyrillic_ef, Cyrillic_EF ] }; key { [ Cyrillic_ha, Cyrillic_HA ] }; key { [ Cyrillic_tse, Cyrillic_TSE ] }; key { [ Cyrillic_che, Cyrillic_CHE ] }; key { [ Cyrillic_sha, Cyrillic_SHA ] }; key { [ Cyrillic_shcha, Cyrillic_SHCHA, plus, asterisk ] }; key { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; key { [ Cyrillic_yeru, Cyrillic_YERU ] }; key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; key { [ Cyrillic_e, Cyrillic_E ] }; key { [ Cyrillic_yu, Cyrillic_YU, numbersign, apostrophe ] }; key { [ Cyrillic_ya, Cyrillic_YA ] }; include "level3(ralt_switch)" }; // layout for Russian (recommended) letters on a german keyboard // based on "Russisch für Deutsche, empfohlen" by B. Bendixen und H. Rothe http://russisch.urz.uni-leipzig.de/key2000.htm 2016-02-01 // adapted for Linux by Niko Krause 2016-06-09 partial alphanumeric_keys xkb_symbols "ru-recom" { include "de(basic)" name[Group1]= "Russian (Germany, recommended)"; key { [ Cyrillic_a, Cyrillic_A ] }; key { [ Cyrillic_be, Cyrillic_BE ] }; key { [ Cyrillic_ve, Cyrillic_VE ] }; key { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; key { [ Cyrillic_de, Cyrillic_DE ] }; key { [ Cyrillic_ie, Cyrillic_IE ] }; key { [ Cyrillic_ya, Cyrillic_YA, asciicircum, degree ] }; key { [ Cyrillic_ha, Cyrillic_HA ] }; key { [ Cyrillic_tse, Cyrillic_TSE ] }; key { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] }; key { [ Cyrillic_shorti, Cyrillic_SHORTI, Ukrainian_yi, Ukrainian_YI ] }; key { [ Cyrillic_ka, Cyrillic_KA ] }; key { [ Cyrillic_el, Cyrillic_EL ] }; key { [ Cyrillic_em, Cyrillic_EM ] }; key { [ Cyrillic_en, Cyrillic_EN ] }; key { [ Cyrillic_o, Cyrillic_O ] }; key { [ Cyrillic_pe, Cyrillic_PE ] }; key { [ Cyrillic_er, Cyrillic_ER ] }; key { [ Cyrillic_es, Cyrillic_ES, Cyrillic_ze, Cyrillic_ZE ] }; key { [ Cyrillic_te, Cyrillic_TE ] }; key { [ Cyrillic_u, Cyrillic_U ] }; key { [ Cyrillic_ef, Cyrillic_EF ] }; key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key { [ Cyrillic_che, Cyrillic_CHE ] }; key { [ Cyrillic_io, Cyrillic_IO ] }; key { [ Cyrillic_yu, Cyrillic_YU ] }; key { [ Cyrillic_sha, Cyrillic_SHA, plus, asterisk ] }; key { [ Cyrillic_ze, Cyrillic_ZE ] }; key { [ Cyrillic_yeru, Cyrillic_YERU ] }; key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; key { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ] }; key { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, numbersign, apostrophe ] }; key { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; key { [ asciitilde, question, backslash, questiondown ] }; key { [ U0301, U0300, U0323, U0307 ] }; include "level3(ralt_switch)" }; // layout for Russian (transliteration) letters on a german keyboard // based on "Russisch für Deutsche, Transliteration" by B. Bendixen und H. Rothe http://russisch.urz.uni-leipzig.de/key2000.htm 2016-02-01 // adapted for Linux by Niko Krause 2016-06-09 partial alphanumeric_keys xkb_symbols "ru-translit" { include "de(basic)" name[Group1]= "Russian (Germany, transliteration)"; key { [ Cyrillic_a, Cyrillic_A ] }; key { [ Cyrillic_be, Cyrillic_BE ] }; key { [ Cyrillic_sha, Cyrillic_SHA ] }; key { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; key { [ Cyrillic_de, Cyrillic_DE ] }; key { [ Cyrillic_ie, Cyrillic_IE ] }; key { [ Cyrillic_ya, Cyrillic_YA, asciicircum, degree ] }; key { [ Cyrillic_ha, Cyrillic_HA ] }; key { [ Cyrillic_ze, Cyrillic_ZE ] }; key { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] }; key { [ Cyrillic_shorti, Cyrillic_SHORTI, Ukrainian_yi, Ukrainian_YI ] }; key { [ Cyrillic_ka, Cyrillic_KA ] }; key { [ Cyrillic_el, Cyrillic_EL ] }; key { [ Cyrillic_em, Cyrillic_EM ] }; key { [ Cyrillic_en, Cyrillic_EN ] }; key { [ Cyrillic_o, Cyrillic_O ] }; key { [ Cyrillic_pe, Cyrillic_PE ] }; key { [ Cyrillic_er, Cyrillic_ER ] }; key { [ Cyrillic_es, Cyrillic_ES, Cyrillic_che, Cyrillic_CHE ] }; key { [ Cyrillic_te, Cyrillic_TE ] }; key { [ Cyrillic_u, Cyrillic_U ] }; key { [ Cyrillic_ef, Cyrillic_EF ] }; key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key { [ Cyrillic_tse, Cyrillic_TSE ] }; key { [ Cyrillic_io, Cyrillic_IO ] }; key { [ Cyrillic_yu, Cyrillic_YU ] }; key { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, plus, asterisk ] }; key { [ Cyrillic_che, Cyrillic_CHE ] }; key { [ Cyrillic_yeru, Cyrillic_YERU ] }; key { [ Cyrillic_ve, Cyrillic_VE ] }; key { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ] }; key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, numbersign, apostrophe ] }; key { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; key { [ asciitilde, question, backslash, questiondown ] }; key { [ U0301, U0300, U0323, U0307 ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "pl" { // Combined layout for entering both German and Polish symbols on a German physical // keyboard. Based on German (no dead keys) and Polish (basic). Polish diacritics // on AltGr+"acelnosxz". EuroSign moved to AE04 (AltGr+dollar key) to avoid conflict // with Polish eogonek. // // https://github.com/kontextify/xkeyboard-config include "latin(type4)" include "de(nodeadkeys)" name[Group1]= "Polish (Germany, no dead keys)"; key { [ 4, dollar, EuroSign, currency ] }; key { [ q, Q ] }; key { [ w, W ] }; key { [ e, E, eogonek, Eogonek ] }; key { [ o, O, oacute, Oacute ] }; key { [ a, A, aogonek, Aogonek ] }; key { [ s, S, sacute, Sacute ] }; key { [ f, F ] }; key { [ z, Z, zabovedot, Zabovedot ] }; key { [ x, X, zacute, Zacute ] }; key { [ c, C, cacute, Cacute ] }; key { [ n, N, nacute, Nacute ] }; include "kpdl(comma)" include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "tr" { // add turkish-specific letters to the basic German layout. // Turkish symbols are accessible with combination of and // 'i', 's', 'g', 'c'' (+ for capital letters). include "de(basic)" name[Group1]="Turkish (Germany)"; key { [ i, I, U0131, U0130 ] }; key { [ s, S, U015F, U015E ] }; key { [ g, G, U011F, U011E ] }; key { [ c, C, U0E7, U0C7 ] }; }; partial alphanumeric_keys xkb_symbols "us" { include "us" name[Group1]="German (US)"; key { [ 3, numbersign, section, degree ] }; key { [ minus, underscore, ssharp, U1E9E ] }; key { [ e, E, EuroSign, cent ] }; key { [ u, U, udiaeresis, Udiaeresis ] }; key { [ o, O, odiaeresis, Odiaeresis ] }; key { [ bracketleft, braceleft, udiaeresis, Udiaeresis ] }; key { [ a, A, adiaeresis, Adiaeresis ] }; key { [ s, S, ssharp, U1E9E ] }; key { [ semicolon, colon, odiaeresis, Odiaeresis ] }; key { [ apostrophe, quotedbl, adiaeresis, Adiaeresis ] }; key { [ c, C, Multi_key, Multi_key ] }; key { [ m, M, dead_greek, Menu ] }; include "level3(ralt_switch)" }; // EXTRAS: partial alphanumeric_keys xkb_symbols "hu" { // modify the basic German layout to not have any dead keys and add Hungarian letters include "de(basic)" name[Group1]="German (with Hungarian letters, no dead keys)"; key { [ y, Y, guillemotleft, less ] }; key { [odiaeresis, Odiaeresis, eacute, Eacute ] }; key { [adiaeresis, Adiaeresis, aacute, Aacute] }; key { [ e, E, EuroSign, EuroSign ] }; key { [ z, Z, leftarrow, yen ] }; key { [ u, U, uacute, Uacute ] }; key { [ i, I, iacute, Iacute ] }; key { [ o, O, odoubleacute, Odoubleacute ] }; key { [udiaeresis, Udiaeresis, udoubleacute, Udoubleacute ] }; key { [ plus, asterisk, asciitilde, macron ] }; key { [ acute, grave, oacute, Oacute ] }; key { [numbersign, apostrophe, rightsinglequotemark, grave ] }; key { [asciicircum, degree, notsign, notsign ] }; }; partial alphanumeric_keys xkb_symbols "sun_type6" { include "sun_vndr/de(sun_type6)" }; partial alphanumeric_keys xkb_symbols "adnw_base" { include "de(neo_base)" key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key { [ period, enfilledcircbullet, NoSymbol, U03D1, NoSymbol, NoSymbol, U21A6, NoSymbol ] }; key { [ comma, endash, NoSymbol, U03F1, NoSymbol, NoSymbol, U21D2, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ k, K, NoSymbol, Greek_kappa, NoSymbol, NoSymbol, multiply, NoSymbol ] }; key { [ u, U, NoSymbol, NoSymbol, NoSymbol, NoSymbol, includedin, NoSymbol ] }; key { [ udiaeresis, Udiaeresis, NoSymbol, NoSymbol, NoSymbol, NoSymbol, union, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, NoSymbol, Greek_eta, NoSymbol, NoSymbol, U2135, NoSymbol ] }; key { [ v, V, NoSymbol, NoSymbol, NoSymbol, NoSymbol, radical, NoSymbol ] }; key { [ g, G, NoSymbol, Greek_gamma, NoSymbol, NoSymbol, Greek_GAMMA, NoSymbol ] }; key { [ c, C, NoSymbol, Greek_chi, NoSymbol, NoSymbol, U2102, NoSymbol ] }; key { [ l, L, NoSymbol, Greek_lambda, NoSymbol, NoSymbol, Greek_LAMBDA, NoSymbol ] }; key { [ j, J, NoSymbol, Greek_theta, NoSymbol, NoSymbol, Greek_THETA, NoSymbol ] }; key { [ f, F, NoSymbol, Greek_phi, NoSymbol, NoSymbol, Greek_PHI, NoSymbol ] }; key { [ h, H, NoSymbol, Greek_psi, NoSymbol, NoSymbol, Greek_PSI, NoSymbol ] }; key { [ i, I, NoSymbol, Greek_iota, NoSymbol, NoSymbol, integral, NoSymbol ] }; key { [ e, E, NoSymbol, Greek_epsilon, NoSymbol, NoSymbol, U2203, NoSymbol ] }; key { [ a, A, NoSymbol, Greek_alpha, NoSymbol, NoSymbol, U2200, NoSymbol ] }; key { [ o, O, NoSymbol, Greek_omicron, NoSymbol, NoSymbol, elementof, NoSymbol ] }; key { [ d, D, NoSymbol, Greek_delta, NoSymbol, NoSymbol, Greek_DELTA, NoSymbol ] }; key { [ t, T, NoSymbol, Greek_tau, NoSymbol, NoSymbol, partialderivative, NoSymbol ] }; key { [ r, R, NoSymbol, Greek_rho, NoSymbol, NoSymbol, U211D, NoSymbol ] }; key { [ n, N, NoSymbol, Greek_nu, NoSymbol, NoSymbol, U2115, NoSymbol ] }; key { [ s, S, NoSymbol, Greek_sigma, NoSymbol, NoSymbol, Greek_SIGMA, NoSymbol ] }; key { [ ssharp, U1E9E, NoSymbol, Greek_finalsmallsigma, NoSymbol, NoSymbol, jot, NoSymbol ] }; key { [ x, X, NoSymbol, Greek_xi, NoSymbol, NoSymbol, Greek_XI, NoSymbol ] }; key { [ y, Y, NoSymbol, Greek_upsilon, NoSymbol, NoSymbol, nabla, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, NoSymbol, U03F5, NoSymbol, NoSymbol, intersection, NoSymbol ] }; key { [ q, Q, NoSymbol, U03D5, NoSymbol, NoSymbol, U211A, NoSymbol ] }; key { [ b, B, NoSymbol, Greek_beta, NoSymbol, NoSymbol, U21D0, NoSymbol ] }; key { [ p, P, NoSymbol, Greek_pi, NoSymbol, NoSymbol, Greek_PI, NoSymbol ] }; key { [ w, W, NoSymbol, Greek_omega, NoSymbol, NoSymbol, Greek_OMEGA, NoSymbol ] }; key { [ m, M, NoSymbol, Greek_mu, NoSymbol, NoSymbol, ifonlyif, NoSymbol ] }; key { [ z, Z, NoSymbol, Greek_zeta, NoSymbol, NoSymbol, U2124, NoSymbol ] }; }; partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "adnw" { include "de(adnw_base)" name[Group1]= "German (Aus der Neo-Welt)"; include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" }; partial alphanumeric_keys xkb_symbols "koy_base" { include "de(neo_base)" key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key { [ period, enfilledcircbullet, NoSymbol, U03D1, NoSymbol, NoSymbol, U21A6, NoSymbol ] }; key { [ comma, endash, NoSymbol, U03F1, NoSymbol, NoSymbol, U21D2, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ k, K, NoSymbol, Greek_kappa, NoSymbol, NoSymbol, multiply, NoSymbol ] }; key { [ o, O, NoSymbol, Greek_omicron, NoSymbol, NoSymbol, elementof, NoSymbol ] }; key { [ y, Y, NoSymbol, Greek_upsilon, NoSymbol, NoSymbol, nabla, NoSymbol ] }; key { [ v, V, NoSymbol, NoSymbol, NoSymbol, NoSymbol, radical, NoSymbol ] }; key { [ g, G, NoSymbol, Greek_gamma, NoSymbol, NoSymbol, Greek_GAMMA, NoSymbol ] }; key { [ c, C, NoSymbol, Greek_chi, NoSymbol, NoSymbol, U2102, NoSymbol ] }; key { [ l, L, NoSymbol, Greek_lambda, NoSymbol, NoSymbol, Greek_LAMBDA, NoSymbol ] }; key { [ ssharp, U1E9E, NoSymbol, Greek_finalsmallsigma, NoSymbol, NoSymbol, jot, NoSymbol ] }; key { [ z, Z, NoSymbol, Greek_zeta, NoSymbol, NoSymbol, U2124, NoSymbol ] }; key { [ h, H, NoSymbol, Greek_psi, NoSymbol, NoSymbol, Greek_PSI, NoSymbol ] }; key { [ a, A, NoSymbol, Greek_alpha, NoSymbol, NoSymbol, U2200, NoSymbol ] }; key { [ e, E, NoSymbol, Greek_epsilon, NoSymbol, NoSymbol, U2203, NoSymbol ] }; key { [ i, I, NoSymbol, Greek_iota, NoSymbol, NoSymbol, integral, NoSymbol ] }; key { [ u, U, NoSymbol, NoSymbol, NoSymbol, NoSymbol, includedin, NoSymbol ] }; key { [ d, D, NoSymbol, Greek_delta, NoSymbol, NoSymbol, Greek_DELTA, NoSymbol ] }; key { [ t, T, NoSymbol, Greek_tau, NoSymbol, NoSymbol, partialderivative, NoSymbol ] }; key { [ r, R, NoSymbol, Greek_rho, NoSymbol, NoSymbol, U211D, NoSymbol ] }; key { [ n, N, NoSymbol, Greek_nu, NoSymbol, NoSymbol, U2115, NoSymbol ] }; key { [ s, S, NoSymbol, Greek_sigma, NoSymbol, NoSymbol, Greek_SIGMA, NoSymbol ] }; key { [ f, F, NoSymbol, Greek_phi, NoSymbol, NoSymbol, Greek_PHI, NoSymbol ] }; key { [ x, X, NoSymbol, Greek_xi, NoSymbol, NoSymbol, Greek_XI, NoSymbol ] }; key { [ q, Q, NoSymbol, U03D5, NoSymbol, NoSymbol, U211A, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, NoSymbol, Greek_eta, NoSymbol, NoSymbol, U2135, NoSymbol ] }; key { [ udiaeresis, Udiaeresis, NoSymbol, NoSymbol, NoSymbol, NoSymbol, union, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, NoSymbol, U03F5, NoSymbol, NoSymbol, intersection, NoSymbol ] }; key { [ b, B, NoSymbol, Greek_beta, NoSymbol, NoSymbol, U21D0, NoSymbol ] }; key { [ p, P, NoSymbol, Greek_pi, NoSymbol, NoSymbol, Greek_PI, NoSymbol ] }; key { [ w, W, NoSymbol, Greek_omega, NoSymbol, NoSymbol, Greek_OMEGA, NoSymbol ] }; key { [ m, M, NoSymbol, Greek_mu, NoSymbol, NoSymbol, ifonlyif, NoSymbol ] }; key { [ j, J, NoSymbol, Greek_theta, NoSymbol, NoSymbol, Greek_THETA, NoSymbol ] }; }; partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "koy" { include "de(koy_base)" name[Group1]= "German (KOY)"; include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" }; partial alphanumeric_keys xkb_symbols "bone_base" { include "de(neo_base)" key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key { [ comma, endash, NoSymbol, U03F1, NoSymbol, NoSymbol, U21D2, NoSymbol ] }; key { [ period, enfilledcircbullet, NoSymbol, U03D1, NoSymbol, NoSymbol, U21A6, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ j, J, NoSymbol, Greek_theta, NoSymbol, NoSymbol, Greek_THETA, NoSymbol ] }; key { [ d, D, NoSymbol, Greek_delta, NoSymbol, NoSymbol, Greek_DELTA, NoSymbol ] }; key { [ u, U, NoSymbol, NoSymbol, NoSymbol, NoSymbol, includedin, NoSymbol ] }; key { [ a, A, NoSymbol, Greek_alpha, NoSymbol, NoSymbol, U2200, NoSymbol ] }; key { [ x, X, NoSymbol, Greek_xi, NoSymbol, NoSymbol, Greek_XI, NoSymbol ] }; key { [ p, P, NoSymbol, Greek_pi, NoSymbol, NoSymbol, Greek_PI, NoSymbol ] }; key { [ h, H, NoSymbol, Greek_psi, NoSymbol, NoSymbol, Greek_PSI, NoSymbol ] }; key { [ l, L, NoSymbol, Greek_lambda, NoSymbol, NoSymbol, Greek_LAMBDA, NoSymbol ] }; key { [ m, M, NoSymbol, Greek_mu, NoSymbol, NoSymbol, ifonlyif, NoSymbol ] }; key { [ w, W, NoSymbol, Greek_omega, NoSymbol, NoSymbol, Greek_OMEGA, NoSymbol ] }; key { [ ssharp, U1E9E, NoSymbol, Greek_finalsmallsigma, NoSymbol, NoSymbol, jot, NoSymbol ] }; key { [ c, C, NoSymbol, Greek_chi, NoSymbol, NoSymbol, U2102, NoSymbol ] }; key { [ t, T, NoSymbol, Greek_tau, NoSymbol, NoSymbol, partialderivative, NoSymbol ] }; key { [ i, I, NoSymbol, Greek_iota, NoSymbol, NoSymbol, integral, NoSymbol ] }; key { [ e, E, NoSymbol, Greek_epsilon, NoSymbol, NoSymbol, U2203, NoSymbol ] }; key { [ o, O, NoSymbol, Greek_omicron, NoSymbol, NoSymbol, elementof, NoSymbol ] }; key { [ b, B, NoSymbol, Greek_beta, NoSymbol, NoSymbol, U21D0, NoSymbol ] }; key { [ n, N, NoSymbol, Greek_nu, NoSymbol, NoSymbol, U2115, NoSymbol ] }; key { [ r, R, NoSymbol, Greek_rho, NoSymbol, NoSymbol, U211D, NoSymbol ] }; key { [ s, S, NoSymbol, Greek_sigma, NoSymbol, NoSymbol, Greek_SIGMA, NoSymbol ] }; key { [ g, G, NoSymbol, Greek_gamma, NoSymbol, NoSymbol, Greek_GAMMA, NoSymbol ] }; key { [ q, Q, NoSymbol, U03D5, NoSymbol, NoSymbol, U211A, NoSymbol ] }; key { [ f, F, NoSymbol, Greek_phi, NoSymbol, NoSymbol, Greek_PHI, NoSymbol ] }; key { [ v, V, NoSymbol, NoSymbol, NoSymbol, NoSymbol, radical, NoSymbol ] }; key { [ udiaeresis, Udiaeresis, NoSymbol, NoSymbol, NoSymbol, NoSymbol, union, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, NoSymbol, Greek_eta, NoSymbol, NoSymbol, U2135, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, NoSymbol, U03F5, NoSymbol, NoSymbol, intersection, NoSymbol ] }; key { [ y, Y, NoSymbol, Greek_upsilon, NoSymbol, NoSymbol, nabla, NoSymbol ] }; key { [ z, Z, NoSymbol, Greek_zeta, NoSymbol, NoSymbol, U2124, NoSymbol ] }; key { [ k, K, NoSymbol, Greek_kappa, NoSymbol, NoSymbol, multiply, NoSymbol ] }; }; partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "bone" { include "de(bone_base)" name[Group1]= "German (Bone)"; include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" }; partial alphanumeric_keys xkb_symbols "bone_eszett_home_base" { include "de(bone_base)" key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ q, Q, NoSymbol, U03D5, NoSymbol, NoSymbol, U211A, NoSymbol ] }; key { [ ssharp, U1E9E, NoSymbol, Greek_finalsmallsigma, NoSymbol, NoSymbol, jot, NoSymbol ] }; }; partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "bone_eszett_home" { include "de(bone_eszett_home_base)" name[Group1]= "German (Bone, eszett in the home row)"; include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" }; partial alphanumeric_keys xkb_symbols "neo_qwertz_base" { include "de(neo_base)" key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key { [ comma, endash, NoSymbol, U03F1, NoSymbol, NoSymbol, U21D2, NoSymbol ] }; key { [ period, enfilledcircbullet, NoSymbol, U03D1, NoSymbol, NoSymbol, U21A6, NoSymbol ] }; key { [ minus, emdash, NoSymbol, U2011, NoSymbol, NoSymbol, hyphen, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ ssharp, U1E9E, NoSymbol, Greek_finalsmallsigma, NoSymbol, NoSymbol, jot, NoSymbol ] }; key { [ q, Q, NoSymbol, U03D5, NoSymbol, NoSymbol, U211A, NoSymbol ] }; key { [ w, W, NoSymbol, Greek_omega, NoSymbol, NoSymbol, Greek_OMEGA, NoSymbol ] }; key { [ e, E, NoSymbol, Greek_epsilon, NoSymbol, NoSymbol, U2203, NoSymbol ] }; key { [ r, R, NoSymbol, Greek_rho, NoSymbol, NoSymbol, U211D, NoSymbol ] }; key { [ t, T, NoSymbol, Greek_tau, NoSymbol, NoSymbol, partialderivative, NoSymbol ] }; key { [ z, Z, NoSymbol, Greek_zeta, NoSymbol, NoSymbol, U2124, NoSymbol ] }; key { [ u, U, NoSymbol, NoSymbol, NoSymbol, NoSymbol, includedin, NoSymbol ] }; key { [ i, I, NoSymbol, Greek_iota, NoSymbol, NoSymbol, integral, NoSymbol ] }; key { [ o, O, NoSymbol, Greek_omicron, NoSymbol, NoSymbol, elementof, NoSymbol ] }; key { [ p, P, NoSymbol, Greek_pi, NoSymbol, NoSymbol, Greek_PI, NoSymbol ] }; key { [ udiaeresis, Udiaeresis, NoSymbol, NoSymbol, NoSymbol, NoSymbol, union, NoSymbol ] }; key { [ a, A, NoSymbol, Greek_alpha, NoSymbol, NoSymbol, U2200, NoSymbol ] }; key { [ s, S, NoSymbol, Greek_sigma, NoSymbol, NoSymbol, Greek_SIGMA, NoSymbol ] }; key { [ d, D, NoSymbol, Greek_delta, NoSymbol, NoSymbol, Greek_DELTA, NoSymbol ] }; key { [ f, F, NoSymbol, Greek_phi, NoSymbol, NoSymbol, Greek_PHI, NoSymbol ] }; key { [ g, G, NoSymbol, Greek_gamma, NoSymbol, NoSymbol, Greek_GAMMA, NoSymbol ] }; key { [ h, H, NoSymbol, Greek_psi, NoSymbol, NoSymbol, Greek_PSI, NoSymbol ] }; key { [ j, J, NoSymbol, Greek_theta, NoSymbol, NoSymbol, Greek_THETA, NoSymbol ] }; key { [ k, K, NoSymbol, Greek_kappa, NoSymbol, NoSymbol, multiply, NoSymbol ] }; key { [ l, L, NoSymbol, Greek_lambda, NoSymbol, NoSymbol, Greek_LAMBDA, NoSymbol ] }; key { [ odiaeresis, Odiaeresis, NoSymbol, U03F5, NoSymbol, NoSymbol, intersection, NoSymbol ] }; key { [ adiaeresis, Adiaeresis, NoSymbol, Greek_eta, NoSymbol, NoSymbol, U2135, NoSymbol ] }; key { [ y, Y, NoSymbol, Greek_upsilon, NoSymbol, NoSymbol, nabla, NoSymbol ] }; key { [ x, X, NoSymbol, Greek_xi, NoSymbol, NoSymbol, Greek_XI, NoSymbol ] }; key { [ c, C, NoSymbol, Greek_chi, NoSymbol, NoSymbol, U2102, NoSymbol ] }; key { [ v, V, NoSymbol, NoSymbol, NoSymbol, NoSymbol, radical, NoSymbol ] }; key { [ b, B, NoSymbol, Greek_beta, NoSymbol, NoSymbol, U21D0, NoSymbol ] }; key { [ n, N, NoSymbol, Greek_nu, NoSymbol, NoSymbol, U2115, NoSymbol ] }; key { [ m, M, NoSymbol, Greek_mu, NoSymbol, NoSymbol, ifonlyif, NoSymbol ] }; }; partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "neo_qwertz" { include "de(neo_qwertz_base)" name[Group1]= "German (Neo, QWERTZ)"; include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" }; partial alphanumeric_keys xkb_symbols "neo_qwerty_base" { include "de(neo_qwertz_base)" key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key { [ y, Y, NoSymbol, Greek_upsilon, NoSymbol, NoSymbol, nabla, NoSymbol ] }; key { [ z, Z, NoSymbol, Greek_zeta, NoSymbol, NoSymbol, U2124, NoSymbol ] }; }; partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "neo_qwerty" { include "de(neo_qwerty_base)" name[Group1]= "German (Neo, QWERTY)"; include "shift(both_capslock)" include "level3(caps_switch)" include "level3(bksl_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" }; partial alphanumeric_keys xkb_symbols "lld" { include "de(basic)" name[Group1] = "German (Ladin)"; key { [ p, P, ediaeresis, Ediaeresis ] }; };