Install the international “German E1 keyboard layout” on Debian from source
The “German E1 keyboard layout” is an extension to the German basic layout containing a complete set of letters for all European languages. This layout is of special interest for translators and programmers. This short note explains how to install the German E1 keyboard from source.
With the new layout you can even type Greek and the International Phonetic Alphabet. Although, by the time of this writing, the latter is not implemented yet, most features are and the driver is ready for production use. For Linux, keyboard definitions are available since September 2020, but for big distributions like Debian, it takes a while to get this available.
Instructions
The following is tested with Debian 10 Buster, but should work with Ubuntu as well (not tested).
-
Download the E1 layout definition file from xkbdesc / xkeyboard-config · GitLab:
cd /usr/share/X11/xkb/symbols/ sudo mv de de.bak sudo bash -c "curl https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/raw/master/symbols/de > de"
-
Edit
/etc/default/keyboard
:sudo nano /etc/default/keyboard
Change the below variables to:
XKBLAYOUT="de" XKBVARIANT="e1" XKBOPTIONS="lv3:caps_switch, lv5:lwin_switch_lock"
Hereby,
- turns
lv3:caps_switch
the [CapsLock] key into a second [AltGr] as requested in the specification (very useful because you need this a lot) - and
lv5:_switch
maps the left Windows-key to the red level (see the layout diagram above)."
Optional: Toggle between two keyboard layouts by pressing both [Cntrl]+[Cntrl] keys together:
XKBLAYOUT="ch,de" XKBVARIANT="fr,e1" XKBOPTIONS="grp:ctrls_toggle, lv3:caps_switch, lv5:lwin_switch_lock"
- turns
-
Activate your changes.
sudo setupcon --force sudo udevadm trigger --subsystem-match=input --action=change
-
Test the new keyboard configuration.
Type something, for example:
-
[AltGr]+[G] enters the capital grapheme "Eszett" ẞ (not to be confused with the lowercase Eszett: ß).
-
[AltGr]+[5] enters
¡
. -
[AltGr]+[T], [O] results in
õ
(lowercase lettero
with~
). -
[LeftWin]+[5] results in
‰
(1/1000). -
[LeftWin]+[Shift]+[<] results in
≥
.
-
Ressources
-
Manual (in German).
-
For completeness: Windows drivers, ...
-
German E1 keyboard layout as png.
-
Blog article: The German keyboard norm DIN 2137-01:2018-12 integrates gender ideology