Login
Newsletter
Werbung

Do, 14. November 2019, 15:00

X.org, CapsLock und die Hyper-Taste in Emacs

Konfiguration von X

Die von X.org genutzten Tastatur-Layouts kann man mithilfe der Programme setxkbmap(1) und xmodmap(1) bearbeiten, ohne dass dafür Root-Rechte nötig wären. Ersteres ist neuer und bietet mehr Konfigurationsmöglichkeiten, für die Zwecke dieses Beitrags genügt aber das ältere, leichter zu bedienende xmodmap(1). Zunächst muss man sich einen Überblick darüber verschaffen, wie es um die Modifikator-Tasten aktuell bestellt ist:

$ xmodmap
xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

Die Ausgabe dieses Befehls variiert je nach System mehr oder weniger stark, insbesondere ist sie vom aktuellen Tastatur-Layout abhängig. Sie liest sich in meinem Fall auszugsweise so:

  • Die Keycodes 0x32 und 0x3e werden den Keysyms Shift_L respektive Shift_R zugeordnet, und diese Keysyms lösen den Modifikator shift (Groß/Kleinschreibung) aus.
  • Der Keycode 0x42 wird dem Keysym Caps_Lock zugeordnet und löst den Lock lock (Feststelltastenfunktion) aus.
  • Dem Modifikator mod4 sind zahlreiche Keysyms mit ihren Keycodes zugeordnet. Alle diese Tasten werden gleich behandelt. In dieser Konfiguration löst die Betätigung der linken Windows-Taste den Keycode 0x85 aus, dem X das Keysym Super_L zuordnet, das wiederum den Modifikator mod4 bewirkt. Auffällig ist, dass die Taste, die den Keycode 0xcf auslöst (zugeordnet dem Keysym Hyper_L) auch den Modifikator mod4 bewirkt. Wenn man also im Besitz einer der seltenen Tastaturen ist, bei denen irgendeine Taste den Keycode 0xcf auslöst, so würde X diese Taste genauso behandeln wie den Druck auf die linke (Super_L) oder rechte (Super_R) Windows-Taste.
  • Als Nebenerkenntnis aus dieser Ausgabe wird ersichtlich, wieso die linke und die rechte Windows-Taste, Strg-Taste und Umschalttaste von X in ihrer Gruppe jeweils gleich behandelt werden: sie sind jeweils demselben Modifikator zugeordnet. Wer wollte, könnte mit der hier vorgestellten Technik diesen Tasten auch unterschiedliche Funktionen verleihen. Dabei sollte man aber ergonomische Erwägungen beachten: es gibt gesundheitliche Gründe (Sehnenscheidentzündung), weshalb gleichartige Tasten auf beiden Seiten der Leertaste existieren.

Die Konfiguration erfolgt nunmehr in zwei Schritten. Erstens ist dem Keycode 0x42 statt Caps_Lock das Keysym Hyper_L zuzuordnen. Das ist zwar nicht zwingend notwendig, dient aber der Klarheit. Zweitens wird das Keysym Hyper_L aus dem Modifikator mod4 entfernt und dem bisher leeren Modifikator mod3 zugeordnet. Bei wem die Ausgabe von xmodmap(1) anders aussieht als hier gezeigt, der wird die nachfolgenden Angaben entsprechend anpassen müssen.

Kommentare (Insgesamt: 16 || Alle anzeigen || Kommentieren )
Pro-Linux
Unterstützer werden
Neue Nachrichten
Werbung