--- de 2018-08-16 10:42:12.139477226 +0200 +++ usr/share/X11/xkb/symbols/de 2018-08-16 10:40:31.294585220 +0200 @@ -70,6 +70,25 @@ }; partial alphanumeric_keys +xkb_symbols "programming_nodeadkeys" { + + // modify the basic German layout to not have any dead keys and be suitable for programming + + include "de(basic)" + name[Group1]="German (Programming)"; + + key { [asciicircum, degree, notsign, notsign ] }; + key { [ acute, grave, cedilla, cedilla ] }; + key { [asciitilde, backslash, udiaeresis, Udiaeresis ] }; + key { [ plus, asterisk, asciitilde, macron ] }; + key { [braceleft, bracketleft, odiaeresis, Odiaeresis ] }; + key { [braceright, bracketright, adiaeresis, Adiaeresis ] }; + key { [numbersign, apostrophe, grave, grave ] }; + key { [less, greater, ssharp, NoSymbol ] }; + key { [bar, question, backslash, NoSymbol ] }; +}; + +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