From 30cb97fd9a96b860e8fecc3e9c593f0d89f772a3 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Fri, 24 Mar 2023 17:30:15 +0100 Subject: symbols/de: condense some comments, and provide a better E1 reference URL Also, replace "NoSymbol" with the equivalent but shorter "any", and reshuffle the LSGT key into its usual place. --- symbols/de | 158 +++++++++++++++++++++++++++---------------------------------- 1 file changed, 71 insertions(+), 87 deletions(-) diff --git a/symbols/de b/symbols/de index e72f001..75f15f8 100644 --- a/symbols/de +++ b/symbols/de @@ -39,7 +39,7 @@ xkb_symbols "basic" { partial alphanumeric_keys xkb_symbols "deadtilde" { - // previous standard German layout with tilde as dead key + // The previous standard German layout with tilde as dead key. include "de(basic)" name[Group1]="German (dead tilde)"; @@ -49,8 +49,7 @@ xkb_symbols "deadtilde" { partial alphanumeric_keys xkb_symbols "nodeadkeys" { - - // modify the basic German layout to not have any dead keys + // Modify the basic German layout to not have any dead keys. include "de(basic)" name[Group1]="German (no dead keys)"; @@ -66,9 +65,8 @@ xkb_symbols "nodeadkeys" { 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) + // Modify the basic German layout to have only acute and grave as dead keys + // (~ and ^ are needed as spacing characters in many programming languages). include "de(basic)" name[Group1]="German (dead grave acute)"; @@ -80,9 +78,7 @@ xkb_symbols "deadgraveacute" { 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) + // Modify the basic German layout to have only acute as a dead key. include "de(deadgraveacute)" @@ -94,114 +90,102 @@ xkb_symbols "deadacute" { 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 + // German extended layout E1, based on DIN 2137-1:2020-11, for a 105-key keyboard. + // See https://de.wikipedia.org/wiki/E1_(Tastaturbelegung). name[Group1]="German (E1)"; - // first row key.type[Group1] = "EIGHT_LEVEL"; - key {[ dead_circumflex, degree, multiply, NoSymbol, NoSymbol, NoSymbol ]}; - key {[ 1, exclam, rightsinglequotemark, NoSymbol, onequarter, U25CA ]}; - key {[ 2, quotedbl, twosuperior, NoSymbol, onehalf, brokenbar ]}; - key {[ 3, section, threesuperior, NoSymbol, threequarters, paragraph ]}; - key {[ 4, dollar, emdash, NoSymbol, currency, U2133 ]}; - key {[ 5, percent, exclamdown, NoSymbol, U2030, U20B0 ]}; - key {[ 6, ampersand, questiondown, NoSymbol, U2044, U204A ]}; - key {[ 7, slash, braceleft, NoSymbol, U2300, U2116 ]}; - key {[ 8, parenleft, bracketleft, NoSymbol, U27E8, U27EA ]}; - key {[ 9, parenright, bracketright, NoSymbol, U27E9, U27EB ]}; - key {[ 0, equal, braceright, NoSymbol, division, U2205 ]}; - key {[ ssharp, question, backslash, NoSymbol, notequal, notsign ]}; - key {[ dead_acute, dead_grave, dead_abovedot, NoSymbol, sterling, U035C ]}; - - // second row + key {[ dead_circumflex, degree, multiply, any, any, any ]}; + key {[ 1, exclam, rightsinglequotemark, any, onequarter, U25CA ]}; + key {[ 2, quotedbl, twosuperior, any, onehalf, brokenbar ]}; + key {[ 3, section, threesuperior, any, threequarters, paragraph ]}; + key {[ 4, dollar, emdash, any, currency, U2133 ]}; + key {[ 5, percent, exclamdown, any, U2030, U20B0 ]}; + key {[ 6, ampersand, questiondown, any, U2044, U204A ]}; + key {[ 7, slash, braceleft, any, U2300, U2116 ]}; + key {[ 8, parenleft, bracketleft, any, U27E8, U27EA ]}; + key {[ 9, parenright, bracketright, any, U27E9, U27EB ]}; + key {[ 0, equal, braceright, any, division, U2205 ]}; + key {[ ssharp, question, backslash, any, notequal, notsign ]}; + key {[ dead_acute, dead_grave, dead_abovedot, any, sterling, U035C ]}; + key.type[Group1] = "EIGHT_LEVEL_SEMIALPHABETIC"; - key {[ q, Q, at, NoSymbol, masculine, U2642 ]}; - key {[ w, W, dead_macron, NoSymbol, ordfeminine, U2640 ]}; - key {[ e, E, EuroSign, NoSymbol, schwa, SCHWA ]}; - key {[ r, R, dead_doubleacute, NoSymbol, trademark, registered ]}; - key {[ t, T, dead_caron, NoSymbol, thorn, THORN ]}; - key {[ z, Z, dead_diaeresis, NoSymbol, U0292, U01B7 ]}; - key {[ u, U, dead_breve, NoSymbol, rightarrow, leftarrow ]}; - key {[ i, I, dead_tilde, NoSymbol, idotless, U26A5 ]}; - key {[ o, O, dead_abovering, NoSymbol, oslash, Oslash ]}; - key {[ p, P, dead_hook, NoSymbol, downarrow, uparrow ]}; - key {[ udiaeresis, Udiaeresis, dead_horn, NoSymbol, U2198, U2197 ]}; + key {[ q, Q, at, any, masculine, U2642 ]}; + key {[ w, W, dead_macron, any, ordfeminine, U2640 ]}; + key {[ e, E, EuroSign, any, schwa, SCHWA ]}; + key {[ r, R, dead_doubleacute, any, trademark, registered ]}; + key {[ t, T, dead_caron, any, thorn, THORN ]}; + key {[ z, Z, dead_diaeresis, any, U0292, U01B7 ]}; + key {[ u, U, dead_breve, any, rightarrow, leftarrow ]}; + key {[ i, I, dead_tilde, any, idotless, U26A5 ]}; + key {[ o, O, dead_abovering, any, oslash, Oslash ]}; + key {[ p, P, dead_hook, any, downarrow, uparrow ]}; + key {[ udiaeresis, Udiaeresis, dead_horn, any, U2198, U2197 ]}; key.type[Group1] = "EIGHT_LEVEL"; - key {[ plus, asterisk, asciitilde, NoSymbol, plusminus, U2052 ]}; + key {[ plus, asterisk, asciitilde, any, plusminus, U2052 ]}; - // third row key.type[Group1] = "EIGHT_LEVEL_SEMIALPHABETIC"; - // 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 ]}; - key {[ s, S, seconds, NoSymbol, U017F, U2211 ]}; - key {[ d, D, minutes, NoSymbol, eth, ETH ]}; - key {[ f, F, ISO_Level5_Latch, NoSymbol, NoSymbol, NoSymbol ]}; - key {[ g, G, U1E9E, NoSymbol, U02BF, U261B ]}; - key {[ h, H, dead_belowmacron, NoSymbol, U02BE, U261A ]}; - key {[ j, J, dead_cedilla, NoSymbol, U02B9, U02BA ]}; - key {[ k, K, dead_belowcomma, NoSymbol, NoSymbol, NoSymbol ]}; - key {[ l, L, dead_ogonek, NoSymbol, lstroke, Lstroke ]}; - key {[ odiaeresis, Odiaeresis, dead_belowdot, NoSymbol, oe, OE ]}; - key {[ adiaeresis, Adiaeresis, dead_stroke, NoSymbol, ae, AE ]}; + // Per DIN 2137-1:2018-12, p. 11-12, AltGr+a can either invoke a selection possibility + // for emojis and/or special characters, or output the U+263A smiley. + key {[ a, A, Multi_key, any, any, any ]}; + key {[ s, S, seconds, any, U017F, U2211 ]}; + key {[ d, D, minutes, any, eth, ETH ]}; + key {[ f, F, ISO_Level5_Latch, any, any, any ]}; + key {[ g, G, U1E9E, any, U02BF, U261B ]}; + key {[ h, H, dead_belowmacron, any, U02BE, U261A ]}; + key {[ j, J, dead_cedilla, any, U02B9, U02BA ]}; + key {[ k, K, dead_belowcomma, any, any, any ]}; + key {[ l, L, dead_ogonek, any, lstroke, Lstroke ]}; + key {[ odiaeresis, Odiaeresis, dead_belowdot, any, oe, OE ]}; + key {[ adiaeresis, Adiaeresis, dead_stroke, any, ae, AE ]}; key.type[Group1] = "EIGHT_LEVEL"; - key {[ numbersign, apostrophe, U2212, NoSymbol, U2020, U2021 ]}; + key {[ numbersign, apostrophe, U2212, any, U2020, U2021 ]}; - // fourth row + key {[ less, greater, bar, any, lessthanequal, greaterthanequal ]}; key.type[Group1] = "EIGHT_LEVEL_SEMIALPHABETIC"; - key {[ y, Y, U203A, NoSymbol, U2423, U23D1 ]}; - key {[ x, X, guillemotright, NoSymbol, doublelowquotemark, singlelowquotemark ]}; - key {[ c, C, U202F, NoSymbol, cent, copyright ]}; - key {[ v, V, guillemotleft, NoSymbol, leftdoublequotemark, leftsinglequotemark ]}; - key {[ b, B, U2039, NoSymbol, rightdoublequotemark, rightsinglequotemark ]}; - key {[ n, N, endash, NoSymbol, eng, ENG ]}; - // 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 ]}; + key {[ y, Y, U203A, any, U2423, U23D1 ]}; + key {[ x, X, guillemotright, any, doublelowquotemark, singlelowquotemark ]}; + key {[ c, C, U202F, any, cent, copyright ]}; + key {[ v, V, guillemotleft, any, leftdoublequotemark, leftsinglequotemark ]}; + key {[ b, B, U2039, any, rightdoublequotemark, rightsinglequotemark ]}; + key {[ n, N, endash, any, eng, ENG ]}; + // 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, any, U200C, U2217 ]}; key.type[Group1] = "EIGHT_LEVEL"; - key {[ comma, semicolon, U2011, NoSymbol, U02BB, U2661 ]}; - key {[ period, colon, periodcentered, NoSymbol, ellipsis, U2713 ]}; - key {[ minus, underscore, hyphen, NoSymbol, U2022, U25E6 ]}; + key {[ comma, semicolon, U2011, any, U02BB, U2661 ]}; + key {[ period, colon, periodcentered, any, ellipsis, U2713 ]}; + key {[ minus, underscore, hyphen, any, U2022, U25E6 ]}; - // fifth row key.type[Group1] = "EIGHT_LEVEL"; - key {[ space, space, nobreakspace, NoSymbol, U200A, U2009 ]}; + key {[ space, space, nobreakspace, any, U200A, U2009 ]}; + 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 ]}; - include "kpdl(comma)" }; 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 + // German extended layout E2, based on DIN 2137-1:2020-11, for a 104-key keyboard. + // See https://de.wikipedia.org/wiki/E1_(Tastaturbelegung). include "de(e1)" name[Group1]="German (E2)"; - // one key less: assign bar, less and greater to other keys + // One key less than E1: assign bar, less and greater to other keys. key.type[Group1] = "EIGHT_LEVEL"; - key {[ dead_circumflex, degree, bar, NoSymbol, NoSymbol, NoSymbol ]}; - key {[ 2, quotedbl, less, NoSymbol, onehalf,brokenbar ]}; - key {[ 3, section, greater, NoSymbol, threequarters,paragraph ]}; - key {[ plus, asterisk, asciitilde, NoSymbol, multiply, U2052 ]}; + key {[ dead_circumflex, degree, bar, any, any, any ]}; + key {[ 2, quotedbl, less, any, onehalf, brokenbar ]}; + key {[ 3, section, greater, any, threequarters, paragraph ]}; + key {[ plus, asterisk, asciitilde, any, multiply, U2052 ]}; - // if E2 is used on a 105-key keyboard - key.type[Group1] = "ONE_LEVEL"; - key {[ ISO_Level3_Shift ]}; + // For when E2 is used on a 105-key keyboard. + key {[ ISO_Level3_Shift ], type[group1] = "ONE_LEVEL" }; }; partial alphanumeric_keys -- cgit v1.2.1