Überblick: XKB-Tastaturbelegungen für die Linux-Konsole übersetzen
Wer auf virtuellen Textkonsolen unter Linux arbeitet, stellt schnell fest, dass X-Window- bzw. Wayland-Belegungen dort nicht unmittelbar greifen. Das Dienstprogramm ckbcomp schließt diese Lücke, indem es moderne XKB-Regeln in native Kernel-Keymaps für loadkeys übersetzt. Statt sich durch unübersichtliche Manpages zu kämpfen, vermittelt dieser Leitfaden anhand praxiserprobter Schritte alles Wissenswerte – von grundlegenden länderspezifischen Layouts über Deadkey-Anpassungen bis hin zum ergonomischen Tausch von CapsLock und Control.
1. Benötigte Pakete einrichten und Standard-US-Layout generieren
Um Tastaturtabellen sauber erzeugen und in das TTY laden zu können, setzt das System drei fundamentale Komponenten voraus: console-setup, kbd und xkb-data. Die Installation erfolgt über den Standard-Paketmanager:

Das Werkzeug ckbcomp liest die regulären XKB-Beschreibungen ein und transformiert sie in das klassische Tabellenformat von loadkeys. Ein Aufruf mit dem Standardlayout us, weitergeleitet an head -n 30, offenbart den internen Aufbau der Keycode-Zuweisungen:
⚙️ Zentrale Parameter im Überblick:
-model : Bestimmt die Hardware-Geometrie der Tastatur (z. B. pc105 oder pc104).-variant : Wählt eine spezifische Tastenbelegungsvariante (etwa dvorak oder colemak).-option : Aktiviert erweiterte Verhaltensmodifikationen, wie das Neubelegen oder Deaktivieren der Feststelltaste (ctrl:nocaps).-charmap : Definiert den Zeichensatz der generierten Map (beispielsweise UTF-8 oder ISO-8859-1).-compact : Reduziert die resultierende Dateigröße durch das Zusammenfassen redundanter Scancodes.-freebsd : Erzeugt anstelle des Linux-Formats eine Keymap für FreeBSD-Systemkonsolen.

2. Tastaturmodell (-model) und regionale Varianten (-variant) konfigurieren
Soll eine landesspezifische Belegung auf einer europäischen Standardtastatur zum Einsatz kommen, verknüpft man das Modell pc105 mit der entsprechenden Länderkennung. Im folgenden Beispiel wird die koreanische Tastenbelegung (-layout kr) verarbeitet, wobei die Terminalausgabe die Zuordnung numerischer Tastencodes zu spezifischen Unicode-Symbolen illustriert:

Programmierer bevorzugen im deutschen Sprachraum häufig Layouts ohne Tottasten, um Sonderzeichen wie Tilde oder Backtick ohne Verzögerung einzugeben. Über das Flag -variant nodeadkeys lässt sich diese Variante für das deutsche Schema (-layout de) direkt kompilieren:

3. Modifikationen vornehmen: CapsLock durch Control ersetzen
Für effizientes Arbeiten in Editoren wie Vim oder Emacs lässt sich die Feststelltaste dauerhaft in eine zusätzliche Steuerungstaste umwandeln. Mit -option ctrl:nocaps wird das Symbol Caps_Lock vollständig aus der Zuweisung entfernt, was eine Überprüfung mittels grep unmittelbar bestätigt:

Alternativ bietet sich der wechselseitige Tausch beider Funktionstasten via -option ctrl:swapcaps an. Eine gezielte Filterung der Ausgabe verdeutlicht, dass die Belegungen die Plätze gewechselt haben – so wird etwa auf keycode 29 nun das Signal für Caps_Lock ausgelöst:

4. Keymap-Dateien sichern und per loadkeys aktivieren
Damit selbst erstellte Definitionen strukturiert abgelegt bleiben, richtet man im Benutzerverzeichnis einen dedizierten Speicherort ein:

Die kompilierte Konfiguration wird mittels Ausgabeumleitung direkt in die Zieldatei ~/keymaps/custom_us.map geschrieben:

Um Plattenplatz zu sparen und den Gepflogenheiten moderner Linux-Distributionen zu entsprechen, empfiehlt sich die Komprimierung mit gzip. Das Flag -k stellt dabei sicher, dass die Quelldatei erhalten bleibt:

Ein kurzer Blick auf die Dateiliste zeigt den enormen Kompressionseffekt: Die ursprüngliche Textdatei von rund 120 KB schrumpft auf handliche 4 KB zusammen:

Mit Administratorrechten lässt sich das modifizierte Schema schließlich auf die aktive TTY-Sitzung übertragen. Der Befehl loadkeys liest die Datei unverzüglich ein, sodass das angepasste Tastaturverhalten ohne Neustart einsatzbereit ist:

Mit ckbcomp und loadkeys steht Administratoren ein mächtiges Gespann zur Verfügung, um selbst komplexe XKB-Layouts reibungslos auf Textkonsolen zu portieren. Dank der gezeigten Schritte lassen sich ergonomische Anpassungen und maßgeschneiderte Tastaturbelegungen mühelos auch in reinen CLI-Umgebungen realisieren.