Linux: Tasten umbelegen, < Taste fehlt auf neuer Tastatur

Tasten umbelegen in Linux.

Meine neue Tastatur hat ein amerikanisches Layout. Da ich blind tippe, soweit kein Problem, allerdings fehlt hier die Taste für <, > und |. Das Problem ist, diese liegt nicht irgendwo anders, sondern fehlt.

Was tun?

Meine Idee war eine andere Taste dafür zu verwenden. Eine Taste, welche dafür gut infrage kommt, ist die Caps-Lock-Taste. Diese verwende ich ohnehin nicht und ich halte die Taste ohnehin für überflüssig.
Unter Windows war die Lösung recht einfach, hier konnte ich die Taste einfach mit “KeyTweak” umkonfigurieren. Das war in 5 Minuten erledigt.

Linux ist da etwas herausfordernder. Hier gibt es die Software “Xmodmap“. Diese kann prinzipiell Tasten umkonfigurieren, hat aber ein paar Limitierungen, dazu später mehr.

Zuerst legen wir die Konfigurationsdaten an:

vim ./Xmodmap

Hier nun der Inhalt der Datei:

clear Lock
keycode 108 = Mode_switch Mode_switch Mode_switch Mode_switch
keycode 66 = less greater bar bar
keycode 24 = q Q at
keycode 26 = e E EuroSign
keycode 35 = plus asterisk asciitilde
keycode 11 = 2 quotedbl twosuperior
keycode 12 = 3 section threesuperior
keycode 16 = 7 slash braceleft
keycode 17 = 8 parenleft bracketleft
keycode 18 = 9 parenright bracketright 
keycode 19 = 0 equal braceright 
keycode 20 = ssharp question backslash 

Gehen wir kurz auf den Inhalt ein. Mit der ersten Zeile schalten wir die Standard-Funktion von Caps-Lock aus. Ansonsten aktiviert sich Caps-Lock immer noch zusätzlich.

Die zweite Zeile mit dem “Mode_switch” mappt die ALT-GR Taste um. Diese wird benötigt um das | Zeichen zu erhalten. ALT-GR macht kleine Probleme mit Xmodmap.

Die dritte Zeile mappt dann Caps-Lock entsprechend auf unsere gewünschen Zeichen. Die Syntax ist normal, dann mit Shift und anschließend der Wert für den Modifier-Key.

Was machen die anderen Zeilen? Nun das Umkonfigurieren von ALT-GR hat die Nebenwirkung, dass die anderen Zeichen, welche mit ALT-GR erzeugt werden, nicht mehr gehen. Dazu gehören das Euro-, At-Zeichen, Tilde und ein paar andere Zeichen. Daher konfigurieren wir diese Tasten mit.

Den Keycode können wir mit dem “xev”-Befehl ermitteln. Das einfach über die Konsole starten und dann die Taste drücken. Der Code ist in der dritten Zeile.

KeyRelease event, serial 38, synthetic NO, window 0x8600001,
    root 0x3d0, subw 0x0, time 7427147, (1301,516), root:(1391,678),
    state 0x10, keycode 35 (keysym 0x2b, plus), same_screen YES,
    XLookupString gives 1 bytes: (2b) "+"
    XFilterEvent returns: False

Sobald wir die Datei gespeichert haben, können wir diese aktivieren:

xmodmap ~/.Xmodmap

Caps-Lock sollte vorher deaktiviert sein. Hat man sich vertan und die Konfiguration ist Mist, kann man diese mit folgendem Befehl wieder rückgängig machen.

setxkbmap –option

Die Einstellung ist nur bis zum nächsten Neustart gültig. Von daher bietet es sich an, den Aufruf für die Einstellung in das Login-Script aufzunehmen.

Bisher funktioniert es soweit recht gut. Ich hoffe, ich habe keine ALT-GR-Taste übersehen, aber dies lässt sich ansonsten ja auch recht leicht erweitern.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert