Tasten-Wirbel
The Answer Girl
Tastenbelegungen für KDE
Was auch immer man auf der Textkonsole einstellt – darauf, wie sich die Tastatur unter X verhält, hat das keinen Einfluss. Geht es nur um die Windows-Tasten, so führt der erste Weg einer KDE-Benutzerin ins Kontrollzentrum. Hier lassen sich vorgegebenen Aktionen unter Erscheinungsbild / Tastenzuordnung (KDE 2.1.2, Abbildung 1) bzw. Erscheinungsbild / Tastenkürzel (KDE 3.0, Abbildung 2) bis zum Umfallen Tasten(-Kombinationen) zuordnen.
Sinnvollerweise sucht man sich zunächst eines der vordefinierten Schemata aus, das den eigenen Arbeitsgewohnheiten bereits sehr nahe kommt. Anschließend markiert man die Aktion, der ein Hotkey zugewiesen (bzw. deren Tastenkombination geändert) werden soll. Nun wählt man im unteren Dialogteil Tastenkombination für die ausgewählte Aktion den Punkt Benutzerdefiniert (KDE 3.0) bzw. Benutzerdef. Taste (KDE 2.1.2) aus.
Das 2er KDE setzt der Phantasie nun ein paar Grenzen: Wer sich nicht mit einer Einzeltaste begnügt (auf den stilisierten Tasten-Knopf aus Abbildung 1 klicken und die gewünschte Taste auf der Tastatur drücken), kann lediglich noch die [Alt]-, die [Strg]- und/oder die [Umschalt]-Taste dazu wählen. Benutzer/innen, die zu oft aus Versehen auf die [Menü]-Taste drücken, werden die Aktion Aufklapp-Menü daher sicher nicht wie in Abbildung 1 auf [Menü] legen, sondern sich beim Öffnen des K-Menüs eher mit [Umschalt-Strg-Alt-Menü] die Finger brechen.
Ein Mausklick auf Schema speichern... sorgt dafür, dass die neue Konfiguration unter einem eigenen Namen gespeichert wird und somit keines der vordefinierten Schemata überschreibt. Drückt man nun noch auf den Button Anwenden, so darf man die neudefinierten Tastenbelegungen endlich auch benutzen.
KDE 3 ist noch etwas flexibler. Drückt man die stilisierte Taste im Dialog aus Abbildung 2, so erscheint ein etwas unintuitiver Dialog (Abbildung 3). Hat man vor, der ausgewählten Aktion nur eine Taste zuzuordnen, bleibt der Punkt Mehrere Tasten unangekreuzt, und man darf einfach nur die eine, gewünschte Taste auf dem Keyboard betätigen (zum Beispiel [Menü] bei der Aktion Aufklapp-Menü).
Bei Tastenkombinationen gilt es, nicht nur Mehrere Tasten anzuwählen, sondern auch überlegt beim Eintippen der gewünschten Keys zu Werke zu gehen, sonst hat man schnell einen echten Fingerbrecher kombiniert. Mit dem Punkt Alternativ lässt sich auf dieselbe Art und Weise ein zweiter Hotkey für dieselbe Aktion definieren.
Wer Tastenkombinationen eines vorgegebenen Schemas ändert, bemerkt, dass KDE 3 sofort die Option Neues Schema aktiviert und anwählt. Will man dem einen Namen geben, drückt man auf Speichern (Abbildung 2). Doch auch wenn das zugrundeliegende Schema verändert werden soll, muss man den Weg über Neues Schema und den Speichern-Button gehen: Hier belässt man es im Dialog Tastaturschema speichern (Abbildung 4) einfach beim alten Namen, während ein neues Schema an dieser Stelle neu getauft wird. Zurück im Kontrollzentrum sorgt ein Druck auf den Anwenden-Knopf auch bei KDE 3 dafür, dass das neu- oder umdefinierte Schema "in Kraft tritt".
Kein CapsLock für X
Doch all diese Änderungsmöglichkeiten nutzen denjenigen nichts, die GNOME, XFce oder Standalone-Window-Manager benutzen – außerhalb von KDE funktionieren die besagten Settings verständlicherweise nicht. Und auch die nervende [CapsLock]-Taste lässt sich so nicht umfunktionieren.
Die Lösung zu diesem Problem setzt beim Fundament an – dem X-Window-System. In dessen grundlegender Konfigurationsdatei XF86Config (meist im Verzeichnis /etc oder /etc/X11 gelagert und für XFree 4 manchmal auch mit einer angehängten 4 im Dateinamen versehen) finden sich die wichtigsten Festlegungen dazu, um was für eine Tastatur es sich handelt und welche Belegung sie haben soll. Die Syntax der Einträge unterscheidet sich dabei zwischen den 3er und 4er Versionen von XFree86 etwas (Listing 4).
Listing 4
Tastatur-Festlegungen in der
XF86Config# Definitionen für eine PC-Tastatur mit 104 Tasten und deutscher
# Tastenbelegung. Der nodeadkeys-Eintrag bewirkt, dass Akzente
# sofort ausgegeben werden, ohne darauf zu warten, dass das
# naechste Zeichen eines sein könnte, das mit einem Akzent versehen
# werden soll.
# XFree 3 # XFree 4
Section "Keyboard" Section "InputDevice"
Driver "keyboard"
Identifier "Keyboard[0]"
Protocol "Standard" Option "Protocol" "Standard"
XkbRules "xfree86" Option "XkbKeyCodes" "xfree86"
XkbModel "pc104" Option "XkbModel" "pc104"
XkbLayout "de" Option "XkbLayout" "de"
XkbVariant "nodeadkeys" Option "XkbVariant" "nodeadkeys"
EndSection EndSection
Doch wie so viele systemweite Einstellungen ist auch diese für alle User unter X vorgegebene Tastaturbelegung nicht heilig. Mit
trish@linux:~ > apropos key | grep -w X xmodmap (1x) - utility for modifying keymaps and pointer button mappings in X setxkbmap (1x) - set the keyboard using the X Keyboard Extension xkeycaps (1x) - graphically display and edit the X keyboard mapping
finden wir mindestens einen sehr interessanten Eintrag: xmodmap zum Festlegen individueller Tastenbelegungen. (Um xkeycaps kümmert sich übrigens Kasten 1.) Ein einfaches xmodmap auf der Kommandozeile, dessen Ausgabe im Tastenkürzel-Reiter Sondertasten unter dem Punkt X-Sondertasten-Zuordnung übrigens auch im Kontrollzentrum von KDE 3 enthalten ist (Abbildung 5), zeigt, welche Tasten als Modifizierer wirken: Zum Umschalten (shift) zwischen den zwei Grundbelegungen (bei Buchstaben zwischen Groß- und Kleinschreibung) kommen die linke (Shift_L) und die rechte (Shift_R) [Umschalt]-Taste zum Einsatz; die [CapsLock]-Taste hält diese Umschaltung fest (lock) usw.
Damit der letzte Effekt aufgehoben wird, müssen wir Caps_Lock aus der Liste der lock-Modifier entfernen. Mit Hilfe der xmodmap-Manpage versuchen wir's mal mit
xmodmap -e "remove lock = Caps_Lock"
Tatsächlich fehlt die Caps_Lock-Angabe nun in der Ausgabe von xmodmap:
xmodmap: up to 3 keys per modifier, (keycodes in parentheses): shift Shift_L (0x32), Shift_R (0x3e) lock […]
Nehmen wir Caps_Lock nunmehr mit xmodmap -e "add shift = Caps_Lock" in die shift-Liste auf, ergibt ein Test, dass sich der Nervzwerg plötzlich ganz zahm wie die [Umschalt]-Tasten verhält, und zwar in allen Anwendungen, die auf dem aktuellen X-Server laufen. Der xmodmap-Aufruf spricht demzufolge auch von
shift Shift_L (0x32), Shift_R (0x3e), Caps_Lock (0x42)



