Home / LinuxUser / 2002 / 06 / The Answer Girl

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Tasten-Wirbel

The Answer Girl

01.06.2002 Nervt die CapsLock-Taste? Suchen Sie einen sinnvollen Verwendungzweck für die Windows-Tasten? Alles eine Frage der Definition …

The Answer Girl

Dass der Computeralltag auch unter Linux des Öfteren für Überraschungen gut ist, ist eher eine Binsenweisheit: Immer wieder funktionieren Dinge nicht oder nicht so, wie eigentlich angenommen. Das Answer-Girl im LinuxUser zeigt, wie man mit solchen Problemchen elegant fertig wird.

Ein neuer Arbeitsplatz, ein neuer Rechner oder ein Keyboard, das nach langen, treuen Jahren der Zusammenarbeit den Weg alles Irdischen ging – irgendwann kommt jede/r mal in die Verlegenheit, sich mit einer neuen Tastatur anfreunden zu müssen, die heutzutage ganz sicher mit Windows-Tasten aufwartet. Selbst wenn man die gegen Pinguin-Tasten austauscht, so ändert das noch nichts an ihrer – je nach Distribution – (Nicht-)Funktion.

Mag eine unbenutzt vor sich hindämmernde Windows-Taste noch so unschön sein – richtig nervig ist oft die [CapsLock]-Taste, mit deren Hilfe man immer wieder mal aus Versehen das arme Rechnerlein anschreit.

Warum also nicht dem Quälgeist eine vernünftige Funktion geben? Sinnvoll wäre zum Beispiel, ihn zu einer zweiten linken [Umschalt]-([Shift]-)Taste umzufunktionieren, an deren Stelle er so oft aus Versehen gedrückt wird. Manche Leute tauschen einfach die Funktionen von [CapsLock] und der linken [Strg]-Taste. Auch einer individuellen Lösung steht wenig entgegen – zunächst einmal nur die Frage, wie das eigentlich geht.

Leider nicht mit einer einzigen Änderung, denn die beiden Benutzer-Schnittstellen unter Linux, die Textkonsole und das grafische X-Window-System, kümmern sich separat um die Tastenbelegung. Wer schon einmal eine Distribution installiert hat, bei der er/sie sich selbst um eine deutsche Tastenbelegung kümmern musste [1] oder Umlaute nachrüsten wollte [2], ahnt bereits, dass man dazu an separaten Rädchen drehen muss.

Tastenbelegung ohne X

Dass auch eine deutsche Tastatur mit einer amerikanischen Belegung arbeiten kann, weiß jede/r, die/der im BIOS-Menü ein y für "yes" eingeben wollte und mit der passenden Taste eines deutschen Keyboards ein z produzierte. Erst beim Hochfahren lädt das System die deutsche Tastenbelegung. Dazu muss es einen Befehl geben, und der sollte der Schlüssel zum Problem sein. Ihn im Alleingang zu finden, gibt es (mindestens) drei Möglichkeiten: * Die Lieblingssuchmaschine mit passenden Stichwörtern wie Tastaturbelegung, keytable und Linux zu füttern. * Die Boot-Skripte im init.d-Verzeichnis (meist /etc/rc.d/init.d oder /etc/init.d) nach einem Befehl zu durchsuchen, der vermutlich irgendwas mit key heißt. * In der whatis-Datenbank des eigenen Systems nach diesem Befehl zu fahnden.

Die erste Möglichkeit überlasse ich Ihren persönlichen Präferenzen; ob man mit der zweiten Erfolg hat, hängt stark von der verwendeten Distribution ab: Bei SuSE (als Beispiel dient 7.2) mit ihrer Vorliebe für möglichst komplexe, für Normal-Benutzer nahezu undurchschaubare Skripte kommt man zwar mit

trish@linux:~ > grep keys /etc/init.d/*[…]

/etc/init.d/kbd:        rc_status && retmsg="`loadkeys $KEYMAP 2>&1`"[…]

recht schnell zu der Ansicht, dass die Datei /etc/init.d/kbd (wie "keyboard") für's Laden der richtigen Tastaturtabelle verantwortlich ist, doch wer einen Blick in dieses Skript wirft und nicht bereits weiß, wonach er/sie sucht, wird sich vermutlich etwas verlassen vorkommen. Das Suchergebnis bei Debian (/etc/init.d/keymap.sh), Red Hat (/etc/init.d/keytable) oder Caldera OpenLinux (/etc/rc.d/init.d/keytable) ist wesentlich übersichtlicher und legt das Ergebnis nahe, dass loadkeys der gesuchte Befehl ist.

Die Suche in der whatis-Datenbank mit dem Befehl apropos oder

trish@linux:~ > man -k keys
loadkeys (1)         - load keyboard translation tables

und ein anschließender Blick in die entsprechende Manpage bestätigen den Verdacht: Mit diesem Kommando lässt sich die Tastaturbelegung auf der Konsole ändern. Die Belegung wiederum ist in sogenannten Map-Dateien unterhalb von /usr/lib/kbd/keymaps (SuSE, Red Hat), /usr/share/keymaps (Debian) oder /usr/share/kbd/keymaps (Caldera) zu finden. Allerdings nicht in genau diesem Unterverzeichnis, sondern fein säuberlich sortiert nach Rechner-Architektur (i386, sun, mac etc.) und Keyboard-Layout (qwerty, qwertz usw.).

Die darin liegenden Map-Dateien (z. B. i386/qwertz/de-latin1.map.gz) lassen sich als mit gzip gepackte Textdateien beispielsweise mit dem Befehl zless anschauen (Listing 1 zeigt einen Ausschnitt).

Listing 1

Ausschnitt aus

de-latin1.map
# de-latin1.map: German keymap
[…]
include "qwertz-layout"
[…]
#            Normal    Shift   AltGr      Strg
keycode  1 = Escape    Escape
[…]
keycode 54 = Shift
keycode 56 = Alt
keycode 57 = space     space   Meta_space nul
keycode 58 = Caps_Lock
keycode 86 = less      greater bar
keycode 97 = Control

Wie so oft, leitet ein #-Zeichen am Anfang der Zeile einen Kommentar ein, der keine Auswirkung auf die Funktionalität hat. Interessant ist die Zeile include "qwertz-layout" – statt wirklich alles selbst zu definieren, kann man also auch bereits vordefinierte Keymaps einbinden. Bei den einzelnen Tastenbelegungsdefinitionen steht auf der linken Seite des Gleichheitszeichens ein sogenannter Keycode, rechts davon werden bis zu vier Funktionswerte definiert: einer für den einfachen Druck der jeweiligen Taste, einer für den Tastendruck bei gleichzeitig niedergehaltener [Umschalt]-Taste, ein dritter bei gleichzeitig gedrückter [AltGr]-Taste und ein vierter, wenn die Taste zusammen mit [Strg] gedrückt wird.

Wider das Geschrei auf der Konsole

Netterweise bekommen wir den Keycode von [CapsLock] frei Haus geliefert und können damit sehr schnell die Funktionalität des Quälgeists umdefinieren: Wir erzeugen eine neue Datei namens personal.map, und schreiben dort hinein, dass wir die Taste mit dem Keycode 58 auf Shift-Funktionalität setzen wollen, uns bei der restlichen Belegung aber auf die de-latin1.map verlassen:

include "/usr/share/kbd/keymaps/i386/qwertz/de-latin1.map.gz"
keycode 58 = Shift

(Den Pfad zu de-latin1.map.gz müssen Sie eventuell an Ihr System anpassen.) Testweise auf der Konsole mit

trish@linux:~ > loadkeys personal.map
Loading personal.map

aufgerufen, wirkt das neue Key-Mapping wunderbar: [CapsLock] arbeitet jetzt wie die [Shift]-Taste.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

1453 Hits
Wertung: 0 Punkte (1 Stimme)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...