Grundlagen Tastatur und das Programm »xkeycaps«Grundlagen Tastatur und das Programm »xkeycaps«

Mit der Feststelltaste (CapsLock) stehe ich seit eh und je auf Kriegsfuß. XP warnte mich immer mit einem Piepston, wenn ich diese Taste wieder einmal versehentlich erwischte. Jetzt wurde es Zeit, unter Ubuntu eine ähnliche Alternative zu finden. Dabei fand ich in den Tiefen der Paketverwaltung das kleine Programm »xkeycaps«, mit dem sich weit mehr anstellen lässt, als nur die CapsLock-Taste zu ändern. Und da ich

  • recht wenig Infos zur Tastatur fand
  • es weit mehr Möglichkeiten gibt, die Tastatur zu nutzen
  • viele Tastaturen Sondertasten haben, die man erst dem System ›beibringen‹ muss
  • ich gerne korrekte typographische Zeichen nutze

werde ich mich in diesem Blog ausführlicher diesem Thema widmen. Heute gehe ich auf ein paar Grundlagen ein und stelle »xkeycaps«, sowie eine alternative Bearbeitung vor. Wer Anregungen hat oder weitere Tipps kennt, nur zu. Lasst es mich/uns wissen!

Die Tastatur

Jede vom System erkannte Taste hat einen einmaligen, sogenannten »keycode«. In den Ordnern und Dateien unterhalb von /etc/X11 befinden sich vordefinierte Layouts für eine große Anzahl Tastaturen und Sprachen. Diese sollte man nicht anrühren. Ubuntu/Linux kennt für eigene Anpassungen die Datei »xmodmap«, diese ist als versteckte Datei im Homeordner zu finden (nachdem Sie angelegt wurde). Zu dieser Datei gleich mehr.

Die handelsüblichen Tastaturen sind unter Linux von Haus aus in 4 Ebenen belegt. Zwei Ebenen kennt wohl jeder und haben unter allen Betriebssystemen nur geringe Unterschiede:

  • Ebene 1 ist der normale Zustand, damit schreibt man z.B. die Zahlen und Kleinbuchstaben.
  • Ebene 2 erreicht man durch drücken der Umschalttaste-Taste (SHIFT) und gibt so Großbuchstaben und die wichtigsten Sonderzeichen ein.
  • Für Ebene 3 wird die ALT-GR-Taste benutzt, diese wird auch »ALT GERMAN« oder laut IBM »ALTERNATE GRAPHIC« genannt, da ist man sich heutzutage nicht ganz einig, woher der Begriff kommt. Die meisten User nutzen diese Taste nur, um z.B. das @-Zeichen, Euro-Symbol, sowie den Backslash (\) einzugeben. Was wenige wissen – vor allem die, welche von Windows kommen – auch die anderen Tasten haben mit ALT-GR eine Funktion! So lassen sich beispielsweise mit Y und Ⅹ die französischen Anführungszeichen (Guillemot) eingeben.
  • Ebene 4 letztendlich erreicht man durch gleichzeitiges Drücken der ALT-GR und SHIFT + einer weiteren Taste. Auch damit hat fast jede Taste eine Funktion.

Mit der Grundeinstellung sind so die meisten Buchstaben der Länder erreichbar, deren Alphabet auf dem lateinischen basiert, inklusive vieler länderspezifischen Extrabuchstaben! So können Texte auf deutsch, polnisch, spanisch, finnisch, […] geschrieben werden, ohne das Tastaturlayout zu ändern! Beispiel skandinavische Extrabuchstaben; diese sind wie folgt einzugeben:

  æ = ALT-GR + a
  Æ = ALT-GR + SHIFT + a
  ø = ALT-GR + o
  Ø = ALT-GR + SHIFT + o
  å = ALT-GR + SHIFT + ü (loslassen) + a
  Å = ALT-GR + SHIFT + ü (loslassen) und SHIFT + a

Die Grafik (rechts) zeigt die originale Tastaturbelegung für jede der 4 Tastenreihen. Farbig hervorgehoben sind sogenannte »Deadkeys« (Tottasten). Um zu sehen, was diese Tasten darstellen, müssen diese 2x gedrückt werden. Das ist aber nicht im Sinne der Erfinder – immerhin sind die Tasten dazu da, Buchstaben mit sogenannten diakritischen Zeichen zu versehen. Die Punkte über ä,ö und ü sind solche Zeichen, ebenso die Zusätze beim spanischen ñ oder die Cedille (frz. cédille) ç. Dabei wird zuerst das diakritische Zeichen einmal eingegeben und danach der zugehörige Buchstabe.

Neben sprachspezifischen Zeichen sind auch einige typographisch wichtige Zeichen enthalten, wenn auch nicht alle, die man für die deutsche Sprache benötigt. Denn die 3. und 4. Ebene orientiert sich an der englischen Schreibweise. Hier kommt nun das Programm »xkeycaps« ins Spiel. Damit lässt sich das Tastaturlayout an eigene Vorlieben anpassen.

Bitte beachten, dass hier nur die Eingabe über die 4 genannten Ebenen behandelt wird! Shortcuts (Tastenkürzel), die eine Funktion aufrufen bzw. mit denen der Computer gesteuert werden kann, haben damit nichts zu tun, das ist ein anderes Thema!

Das Programm »xkeycaps«

Wichtige Hinweise
Die Anleitung bezieht sich auf eine normale Tastatur, vom System als »Generic 105-key (Intl) PC« erkannt. Als Tastaturlayout ist »German« eingestellt, Deadkeys sind aktiviert. Diese Anleitung wurde nach bestem Wissen erstellt, für eventuelle Fehler übernehmen wir keine Gewähr!

Installation
»xkeycaps« kann man ganz leicht über die Paketverwaltung »Synaptic« installieren und ruft es dann aus der Konsole heraus mit seinem Namen auf. Alternativ kann ein Starter angelegt werden, z.B. im Menü Systemwerkzeuge. Die Bedienung weicht von normalen Programmen etwas ab und gestaltet sich etwas gewöhnungsbedürftig.

Bedienung
Folgende Bildershow mit erklärendem Text veranschaulicht die Arbeitsweise von »xkeymaps«:

Mit diesem Wissen kann man nun daran gehen, die eigene Tastatur anzupassen. Ein Vorschlag, wie so eine Anpassung aussehen kann, folgt im nächsten Artikel.

Einstellungen am System
Wer sich nun eine eigene xmodmap erstellt hat, muss dem System nur noch mitteilen, dass er diese ab sofort beim Start laden soll. Dazu wählt man über das Menü System ? Einstellungen ? Sitzungen und klickt auf »Hinzufügen«. Jetzt gibt man dem neuen Starter einen Namen, fügt eine Beschreibung hinzu und gibt den Befehl ein wie auf folgendem Bild zu sehen:

Nach Erstellung eines eigenen Tastaturlayouts muss der X-Server neu gestartet werden (also nur ab‑ und wieder anmelden). Danach erscheint folgendes Fenster:

Hier wird jede Datei im Homeordner aufgelistet, die mit .xmodmap‑ beginnt, also auch Backupdateien. Das soll nicht weiter stören, man wählt die Richtige aus und klickt auf »Laden«. Wer möchte, kann unten links noch ein Häkchen setzen, dann wird das Fenster in Zukunft nicht mehr angezeigt.

Tipp
Aber für den ein oder anderen bieten sich so auch ganz neue Möglichkeiten. Wer beispielsweise viel? programmiert, findet vielleicht auch die Zuweisung der geschweiften und spitzen Klammern nicht ganz geschickt, Ä, Ö, Ü und ß hingegen werden beim Programmieren nicht benötigt. Also warum nicht eine separate Tastaturbelegung anlegen, die dem Schreibfluss beim Programmieren entgegen kommt? Man kann sich beim PC-Start entscheiden, welches Tastaturlayout geladen werden soll. Alternativ ließe sich ja auch ein anderer Account anlegen mit angepasster Tastatur, der nur für Programmieraufgaben genommen wird. Oder wenn jemand viel auf Norwegisch schreibt, kann er seine Tastatur so anpassen, dass die oben erwähnten Buchstaben leichter erreichbar sind. Einsatzmöglichkeiten gibt es viele.

Downloads
Zu guter Letzt noch ein paar Dateien, die Ihr Euch downloaden könnt. Zuerst eine originale xmodmap. Kopiert diese in Euren Homeordner und kennzeichnet sie als versteckte Datei (setzt einen Punkt voran) und ändert das Euer-Computername entsprechend ab. Wer nicht weiß, wie sein Computer heißt, gibt im Terminal einfach den Befehl uname –n ein. Der ein oder andere kann sich so die Installation von xkeycaps sparen.

Dann kann ich die Tastaturübersicht (wie im 1. Bild) als OpenOfficeCalc-Datei anbieten. Diese könnt Ihr Euch gern anpassen und ausdrucken. Als Nächstes werde ich das Tastaturlayout um die wichtigsten typographischen Zeichen erweitern und eine Möglichkeit zeigen, die Sondertasten diverser Tastaturen einzubinden. Wenn Euch das interessiert, schaut doch wieder mal vorbei.

Kommentare
  1. Henrik Marcel meint am

    Wow, das ist ja echt genial! Gerade die vielen Möglichkeiten von Ebene 3 kannte ich nicht und Ebene 4 überhaupt nicht und musste bisher entweder umständlich copy&paste machen oder ganz darauf verzichten. Vielen Dank für diesen Artikel also! Es zeigt sich zudem mal wieder das Linux v.a. Windows weit überlegen ist.

    Muchas gracias auch für die Tastenübersicht im ODF-Format. Wird gleich ausgedruckt. ;-)

    Seit längerem bin ich auch noch auf der Suche, die Taste AltGR durch de Tastenkombi Strg+Alt zu erreichen um so zu Ebene 3 und 4 zu gelangen. Wäre manchmal als Alternative ganz praktisch… Hast du da evtl. auch noch einen Tipp für mich?

    Antwort: Hallo Henrik, STRG+ALT als Ersatz für ALTGR ist eine Erfindung von Microsoft.

  2. Lorag meint am

    Hi, eigentlich sollte Ubuntu .xmodmap-Dateien auch erkennen, ohne dass man dafür extra einen Autostart anlegen muss. Einmal mit „xmodmap .xmodmap“ aufgerufen, sollte der von dir angeführte Dialog bei Neustart abgefragt werden.

    Eine originale .xmodmap kann man sich auch sehr leicht mit „xmodmap –pke > .xmodmap“ erzeugen.

    Xkeymaps bringt allerdings echte Vorteile gegenüber dem händischen Rumwühlen in der xmodmap. Wer weiß schon, was ein dead_ogonek ist?! ;)

    Antwort: Hallo Lorag, danke für den Tipp! Ich hatte es beim ersten Mal auch nicht eingetragen und es gab keine Veränderung. Jetzt habe ich den Autostarteintrag wieder deaktiviert und es geht doch so, wie Du sagst. Verstehe jemand Linux ;) Ich möchte aber noch erwähnen, dass sich mir das alles erst nach und nach erschlossen hat, kann schon sein, dass der ein oder andere Tipp auch anders funktioniert. Und Ogonek? Hört sich Tschechisch oder Polnisch an…

  3. Keba meint am

    Danke für die netten Tuts – ich will aber keine Deadkeys. Weißt Du wie ich die wieder ausschalten kann? xorg.conf meint nodeadkeys…

    Antwort: Hey keba, geht auch über die graf. Oberfläche, siehe Wiki ;-)

  4. Keba meint am

    Danke für die Antwort. Ich hab vergessen zu sagen, dass ich mir mal deine xmodmap (http://www.ubuntu-center.de/wp-content/uploads/2008⁄10/xmodmap-angepasst) geladen habe – nun geht halt vieles nicht mehr. Die Einstellungen des X-Servers und dieser Gnome-Einstellungs-Sache werden (zurecht!) übersprungen.

    Hab versucht meine xmodmap anzupassen (Shift+Leertaste=“?“ ist einfach scheiße, zumindest wenn dann plötzlich echo?test nicht mehr geht und es im Gnome-Terminal genauso aussieht wie ein “ „)… Allerdings war die Änderung nach einem Neustart irgendwie wieder weg…

  5. nenem meint am

    Hallo,

    so etwas, wie den Grundlagenartikel über die Tastatur, habe ich lange gesucht und nun hier gefunden. Vorbildlich! Momentan hat mir daraus zwar nur eine Kleinigkeit weitergeholfen (ñ und ç). Um andere Details werde ich mich wohl im Laufe der Zeit kümmern. Aber durch den Artikel konnte ich viele Versuche, den Wechsel zwischen zwei Sprachen ordnungsgemäß und dauerhaft zu aktivieren, abrupt beenden. Anders, als im Wiki, werden hier nämlich Zusammenhänge so gründlich erklärt, dass anschließend auch mir als Ubuntu-Neuling klar ist, was ich tun muss.

    Vielen Dank und viele Grüße

    nenem

  6. Jakob meint am

    Was ist eigentlich mit der Windows-Taste, kann man damit auch noch eine weitere Ebene erstellen? Früher in Windows hatte ich alle Kombinationen auf die Windows Taste gelegt, so ganz klappt das jetzt aber nicht. Naja, das finde ich sicher bei Google, aber wäre doch schön, wenn das auch hier in diesem guten Artikel noch drinstehen würde.

    Dankeschön auf jeden Fall

    Jakob

  7. Martin meint am

    Hi, ich habe versucht per xmodmap meine tasten in \| umzuwandeln. Das klappt auch prima, nur habe ich dann plötzlich neben dem USA und Deu Layout noch ein zusätzliches drites (verstecktes) Layout. Mit meiner Taste zum Layout wechseln kommt erst USA, dann Deu, dann aber *nochmal* Deu. Bei den ersten beiden Layouts bewirkt die Taste (neben der linken Shift-Taste) einen backslash. Beim dritten Layout bewirkt die Taste einen | (bar). Eigentlich wollte ich etwas anderes: Im USA-Layout soll mit \| belegt sein. Im Deu-Layout soll die Taste bleiben wie sie ist (also , so wie es draufsteht). Ich kann dieses ominöse dritte Layout noch nicht ein Mal in der Liste der Tastaturlayouts sehen. Was mache ich falsch? Ich will doch nur ein deutsches normales und ein USA Layout mit backslash unten links.

    Hilfe, danke :)
    Martin

  8. Sven meint am

    Hi!
    Ich möchte meine windowstaste gerne benutzen und würde gerne wissen ob es auch machbar ist 2 zeichen auf einer ebene abzuspeichern?
    Also z.b. Eingabe : 1Xwindowstaste
    Ausgabe: 13

    Wäre so etwas möglich??

  9. Tobias meint am

    Servus,
    guter Artikel, nettes Tool.
    Sehe ich es aber richtig, dass das ganze nur unter Ⅹ funktioniert und einen Einfluss auf die Konsole tty[1–6] hat?
    Da ich auch tty nutze, wäre es natürlich geschickt, wenn unter Ⅹ und unter tty die gleichen Layouts zur Verfügung stünden.
    Grüße,
    Tobias