SSD Nodes Learn 🎉 VPS ab $4.99/Monat
Anleitungen Matt ConnorVon Matt Connor

Colemak unter Linux für Konsole, X11 und Wayland

So richten Sie Colemak in Linux-Konsole, X11 und Wayland ein. Erfahren Sie, warum SSH-Server kein Layout brauchen und was Vim hjkl sowie Ctrl ändert.

Wo ein Colemak-Layout unter Linux eingerichtet wird

Colemak ist unter Linux keine systemweite Einzeleinstellung. Das Layout wird von der Komponente angewendet, die die Tastatureingaben gerade verarbeitet. Es ist daher an einer von drei Stellen eingerichtet: in der Textkonsole, im X11-Server oder im Wayland-Compositor. Wenn Sie es an der falschen Stelle konfigurieren, scheint nichts zu passieren.

Eine vierte Option umgeht das Betriebssystem vollständig. Eine Tastatur, die ihre Tastenbelegung in der eigenen Firmware ändert, beispielsweise ein Gerät mit QMK oder VIA, sendet die Codes für die gewünschten Buchstaben. Dadurch verwendet jeder angeschlossene Rechner Colemak ohne zusätzliche Konfiguration. Das gilt auch für eine Serverkonsole und für einen Rechner, den Sie nicht selbst verwalten. Der Nachteil ist, dass die Tastatur Ihres Laptops weiterhin QWERTY verwendet.

Der Rest dieses Leitfadens behandelt die drei Softwareebenen, erklärt, warum ein Remote-Server fast nie eine dieser Einstellungen benötigt, und beschreibt, welche Auswirkungen der Wechsel auf Vim und Ihre Terminal-Tastenkürzel hat.

Prüfen Sie, was Ihr System bereits enthält

Führen Sie diese Befehle aus, bevor Sie Änderungen vornehmen. Sie geben die aktuelle Einstellung und die Liste der Colemak-Varianten aus, die Ihre X-Tastaturdatenbank anbietet.

localectl status
setxkbmap -query
localectl list-x11-keymap-variants us | grep colemak

Der letzte Befehl sollte colemak und colemak_dh ausgeben. Colemak ist seit Jahren in xkeyboard-config enthalten. Colemak-DH wurde mit Version 2.34 hinzugefügt. Nur eine alte Version wird diese Variante nicht enthalten. Im August 2026 liefern Ubuntu 24.04 und Debian 13 beide eine neuere Version aus.

Wenn setxkbmap -query meldet, dass keine Anzeige geöffnet werden kann, befinden Sie sich in einer Wayland-Sitzung und der Compositor verwaltet das Layout. Dieser Fall wird in einem eigenen Abschnitt weiter unten behandelt.

Colemak oder Colemak-DH

Colemak verschiebt 17 Tasten gegenüber ihren QWERTY-Positionen und lässt 10 unverändert, darunter Z, X, C und V. Dadurch bleiben die Tastenkürzel für Rückgängig, Ausschneiden, Kopieren und Einfügen dort, wo sie die linke Hand erwartet. Genau deshalb sieht das Layout so aus.

Colemak-DH ist eine Änderung von Colemak. Dabei werden D, B und G verlegt und H mit M getauscht. Der Grund ist, dass einfaches Colemak sowohl D als auch H durch das Strecken eines Zeigefingers in die mittlere Tastaturspalte tippt. Die offizielle Modifikation belässt jeden Buchstaben auf demselben Finger wie bei Colemak. Wer Colemak bereits verwendet, muss sich bei einem Wechsel zu DH daher nur an eine kleine Änderung und nicht an ein neues Layout gewöhnen. Die XKB-Variante ist colemak_dh. Für Tastaturen mit der zusätzlichen Taste neben der linken Umschalttaste wird colemak_dh_iso verwendet.

Wenn Sie von QWERTY kommen, ist jede der beiden Varianten eine einmalige Lernaufgabe. Entscheiden Sie sich daher nach dem Komfort und bleiben Sie bei dieser Wahl. Ein zweiter Layoutwechsel kostet ungefähr genauso viel wie der erste. Der Grund ist, dass Sie das motorische Gedächtnis für die Tastenpositionen neu aufbauen.

Colemak in X11 mit setxkbmap und localectl einrichten

setxkbmap us -variant colemak
setxkbmap -query

setxkbmap -query sollte jetzt variant: colemak melden, und die Eingabe in jedem Fenster sollte Colemak-Buchstaben erzeugen. Die Änderung bleibt bestehen, solange die X-Sitzung läuft, und schreibt nichts auf die Festplatte. Damit können Sie das Layout eine Stunde lang sicher testen.

Damit die Einstellung Reboots übersteht:

sudo localectl set-x11-keymap us pc105 colemak
localectl status

Die Reihenfolge der Argumente lautet Layout, dann Modell, dann Variante. localectl status sollte jetzt X11 Layout: us und X11 Variant: colemak anzeigen. localectl wandelt die Auswahl außerdem in das nächstgelegene Konsolen-Tastaturlayout um, sofern Sie nicht --no-convert hinzufügen. Auf vielen Systemen deckt dieser eine Befehl damit auch das TTY ab. Prüfen Sie unter Debian und Ubuntu anschließend /etc/default/keyboard, da console-setup diese Datei beim Booten einliest.

Colemak unter Wayland festlegen

Eine Wayland-Sitzung verfügt über keinen X-Server, der konfiguriert werden kann. Der Compositor lädt das Tastenbelegungsprofil und übergibt es an jede Anwendung. Das Layout ist daher eine Einstellung des Compositors. Deshalb funktioniert setxkbmap dort scheinbar nicht: Entweder findet der Befehl kein Display, oder er ändert nur XWayland. Native Wayland-Anwendungen ignorieren die Änderung.

Unter GNOME befindet sich die Einstellung in einem gsettings-Schlüssel:

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us+colemak')]"

Die Änderung wird sofort ohne Abmeldung übernommen. Die Zeichenfolge us+colemak enthält das Layout und die Variante, getrennt durch ein Pluszeichen.

Unter sway tragen Sie die Einstellung in ~/.config/sway/config ein:

input type:keyboard {
    xkb_layout us
    xkb_variant colemak_dh
}

Laden Sie die Konfiguration mit swaymsg reload neu. swaymsg -t get_inputs listet alle Eingabegeräte sowie das jeweils verwendete Layout auf. Das ist die passende Prüfung, wenn nur eine Tastatur fehlerhaft arbeitet.

Öffnen Sie unter KDE Plasma die Systemeinstellungen. Wählen Sie anschließend Tastatur und dann Layouts. Fügen Sie English (US) mit der Variante Colemak hinzu.

Colemak auf der Textkonsole festlegen

Die Konsole ist das reine Text-TTY, das Sie mit Ctrl+Alt+F3 erreichen. Sie verwendet eine eigene Tastaturbelegung. Einstellungen in X11 oder einem Compositor wirken sich nicht auf sie aus. Das ist relevant, wenn Sie an einer Terminal-Arbeitsumgebung auf einer reinen virtuellen Konsole arbeiten.

Bearbeiten Sie unter Debian und Ubuntu /etc/default/keyboard:

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT="colemak"
XKBOPTIONS=""

Wenden Sie die Änderung anschließend an:

sudo setupcon

Geben Sie Text auf der Konsole ein, um die Belegung zu prüfen. console-setup wandelt diese XKB-Beschreibung mit ckbcomp in eine Konsolen-Tastaturbelegung um. Auf diesen Systemen verwenden Konsole und X daher dieselbe Beschreibung.

Auf Distributionen, die kbd-Tastaturbelegungen direkt verwenden, ermitteln Sie zuerst den Namen:

localectl list-keymaps | grep -i -e colemak -e latin9
sudo localectl set-keymap en-latin9

Das Paket kbd liefert die Colemak-Konsolenbelegung als i386/colemak/en-latin9. Der übergebene Name lautet daher normalerweise en-latin9 und nicht colemak. Verwenden Sie einen Namen aus der Liste. Ein nicht vorhandener Name wird abgewiesen.

sudo loadkeys en-latin9 ändert die aktuelle Konsole sofort. sudo loadkeys us setzt die Änderung zurück. Betrachten Sie loadkeys als Test und nicht als Konfiguration: Die Änderung bleibt bis zum Reboot aktiv. Beim Booten stellt setupcon unter Debian und Ubuntu die in /etc/default/keyboard angegebene Belegung wieder her.

Benötigt ein Headless-VPS ein Colemak-Layout?

Fast nie, und der Grund ist wichtig. SSH überträgt Zeichen, keine Tastenpositionen. Ihr Terminalemulator empfängt den Tastendruck. Ihr lokales Layout wandelt ihn in ein Zeichen um. Nur dieses Zeichen wird über die Verbindung übertragen. Der Server empfängt n und kann nicht feststellen, welche physische Taste es erzeugt hat. Das auf Ihrem Laptop eingestellte Layout gilt daher in jeder SSH-Sitzung, in tmux und in jedem Editor, den Sie remote ausführen. Auf dem entfernten System ist keine Tastaturkonfiguration erforderlich.

Behalten Sie das im Hinterkopf, bevor Sie Tastaturdateien auf Produktionssystemen bearbeiten. Wenn Sie eine Flotte von Linux-Servern verwalten, gehört das Layout zu dem Gerät vor Ihnen und nicht zur Serverflotte. Es gehört daher nicht in Ihre Bereitstellungskonfiguration. Die ersten zehn Minuten auf einem neuen VPS sind für wichtigere Aufgaben besser genutzt.

Zwei Ausnahmen sollten Sie einplanen. Die erste ist eine direkt am System angeschlossene Konsole. Die Browserkonsole im Panel eines Providers meldet sich bei der virtuellen Maschine normalerweise als Tastatur an. Tastendrücke treffen daher als Scancodes ein, und die eigene Konsolen-Tastaturbelegung des Servers bestimmt, welches Zeichen erscheint. Nur an dieser Stelle wirkt sich ein auf dem Server eingestelltes Layout aus. Außerdem ist die Konsole Ihr Rettungsweg, wenn SSH nicht mehr funktioniert. Eine dort nur teilweise eingerichtete Konsolen-Tastaturbelegung stellt daher ein echtes Risiko dar.

Eine serielle Konsole funktioniert anders, weil sie Zeichen überträgt und Ihr lokales Layout angewendet wird. Die zweite Ausnahme ist ein gemeinsam genutztes System. Die Konsolen-Tastaturbelegung gilt systemweit. Wenn Sie Colemak auf einem System einstellen, an dem sich auch andere Personen anmelden, ändern Sie die Belegung daher ebenfalls für diese Personen. Sie werden den Grund dafür möglicherweise nicht erkennen.

Was geschieht mit Vims hjkl-Tasten

Auf Colemak bewegt sich h nicht. Die anderen drei Tasten funktionieren. j liegt unter QWERTYs Y, k unter QWERTYs N und l unter QWERTYs U. Dadurch sind die Cursortasten auf drei Reihen verteilt, statt unter vier Fingern zu liegen.

Dafür gibt es zwei praktikable Lösungen. Beide werden tatsächlich verwendet.

Behalten Sie die Standardbelegung bei und lernen Sie die Positionen neu. Ihre übrige Konfiguration bleibt unverändert, alle Plugins funktionieren weiter, und jeder Vim-Tipp anderer Autoren gilt für Sie weiterhin genau wie beschrieben.

Oder belegen Sie die vier Tasten neu, die auf Ihrer rechten Hand dort liegen, wo sich bei QWERTY hjkl befinden. Auf Colemak erzeugen diese Tasten h, n, e und i. Bei Colemak-DH erzeugen dieselben vier physischen Tasten m, n, e und i, weil DH H und M vertauscht.

noremap n j
noremap e k
noremap i l
noremap l i
noremap k n

n bewegt den Cursor jetzt nach unten, e nach oben, i nach rechts und h bereits nach links. Die letzten beiden Zeilen stellen die verdrängten Befehle wieder her: l startet den Einfügemodus, und k wiederholt die letzte Suche. Belegen Sie auch die Großbuchstaben entsprechend neu. Andernfalls kann Shift zusammen mit einer Cursortaste zu unerwarteten Ergebnissen führen.

Vims Option langmap erfüllt eine ähnliche Aufgabe mit weniger Zeilen:

set langmap=nj,ek,il,li,kn

Jedes Paar wird als das eingegebene Zeichen gefolgt von dem Zeichen gelesen, das Vim ausführen soll. Die Einstellung gilt nur im normalen Modus. Im Einfügemodus geben Sie weiterhin normalen Colemak-Text ein. In Vims eigener Hilfe sind zwei Einschränkungen dokumentiert: langmap gilt nicht für Kombinationen mit Ctrl oder Alt, und Plugin-Zuordnungen, die für die Standardtasten geschrieben wurden, können sich damit unerwartet verhalten.

Für welche Lösung Sie sich auch entscheiden: Entscheiden Sie sich einmal. Eine nach einem Monat aufgegebene Neubelegung kostet Sie einen weiteren Monat.

Was passiert mit Terminal-Tastenkürzeln

Ein Terminal-Steuerungscode wird vom Zeichen und nicht von der physischen Taste erzeugt. Deshalb wechseln alle Ctrl-Tastenkürzel mit dem Layout. Ctrl+C, Ctrl+Z, Ctrl+X und Ctrl+V behalten ihre Positionen, weil Colemak Z, X, C und V bewusst an den Positionen belässt, an denen sie sich bei QWERTY befinden.

Vier Tastenkürzel, die Sie täglich verwenden, ändern ihre Position. Ctrl+D beendet die Eingabe und befindet sich jetzt dort, wo QWERTY G hat. Ctrl+R durchsucht die History und befindet sich dort, wo QWERTY S hat. Ctrl+E springt zum Zeilenende und befindet sich dort, wo QWERTY K hat. Ctrl+U löscht die Zeile und befindet sich dort, wo QWERTY I hat.

tmux behält sein Standardpräfix, weil sich B bei Colemak nicht bewegt. Bei Colemak-DH wechselt B in die obere Reihe, und das Präfix folgt ihm. Das bemerken Sie zuerst, wenn Sie eine lange laufende tmux-Sitzung auf einem VPS beibehalten. Das Präfix an eine von Ihnen bevorzugte Taste zu binden, ist eine Änderung in einer Zeile. Das ist einfacher, als denselben Reflex zweimal neu zu trainieren.

Desktop-Tastenkürzel folgen derselben Regel. Eine Bindung an Super+E wechselt mit dem Layout, weil sie durch das Zeichen definiert ist. Eine Bindung an Super+F1 bleibt an ihrer Position, weil Funktionstasten vom Layout nicht neu zugeordnet werden.

Wie viel Zeit die Umstellung kostet

Niemand kann Ihnen eine genaue Zeitangabe für Ihre Hände machen. Blindschreiben beruht auf motorischem Gedächtnis. Sie lernen nicht, wo sich die Buchstaben befinden. Sie bauen den Reflex neu auf, der ein Wort in eine Fingerfolge umwandelt. Deshalb hilft nur die Zeit, die Sie tatsächlich mit Tippen verbringen.

Die vorliegenden Angaben stammen aus selbst protokollierten Übungszeiten und nicht aus kontrollierten Messungen. In der ersten Woche liegt die Geschwindigkeit demnach deutlich unter der Hälfte des früheren Tempos. Die ursprüngliche Geschwindigkeit wird bei täglicher Nutzung meist nach einem bis drei Monaten wieder erreicht. Die Unterschiede zwischen einzelnen Personen sind groß. Betrachten Sie diese Angaben daher als grobe Entwicklung und nicht als festen Zeitplan.

Zwei Gewohnheiten verlangsamen die Umstellung. Wenn Sie im Tagesverlauf zwischen QWERTY und Colemak wechseln, bleiben beide Reflexe unsicher. Die meisten Personen, die die Umstellung abschließen, verwenden deshalb auf ihrem Hauptgerät konsequent nur ein Layout. Wenn Sie während einer arbeitsreichen Woche beginnen, tippen Sie unter Zeitdruck fehlerhaft. Dadurch trainieren Sie, auf die Tasten zu sehen.

Richten Sie die Rückkehrmöglichkeit ein, bevor Sie sie benötigen. Sobald Sie QWERTY wieder verwenden möchten, ist wahrscheinlich gerade etwas ausgefallen und jemand wartet auf Ihre Hilfe.

So wechseln Sie schnell zurück zu QWERTY

In X11 stellt setxkbmap us QWERTY sofort wieder her. Auf der Konsole führt sudo loadkeys us zum gleichen Ergebnis. Um die dauerhafte Einstellung rückgängig zu machen, führen Sie sudo localectl set-x11-keymap us aus.

Ein Umschalter ist besser als ein Befehl, den Sie in einem Layout eingeben müssen, das Sie noch nicht verwenden können:

setxkbmap -layout us,us -variant colemak, -option grp:win_space_toggle

Damit wird Colemak als erstes Layout und einfaches US als zweites Layout geladen. Mit Super+Space wechseln Sie zwischen den beiden Layouts. Das abschließende Komma in colemak, ist kein Tippfehler: Es weist dem ersten Layout die Variante colemak und dem zweiten Layout keine Variante zu. In GNOME fügen Sie beide Eingabequellen unter Settings hinzu. Dort wechselt Super+Space bereits zwischen ihnen.

Zwei Passworteingaben finden außerhalb Ihrer Desktop-Sitzung statt und erfordern eine getrennte Prüfung. Der Anmeldebildschirm wird gestartet, bevor die Einstellungen Ihrer Sitzung angewendet werden. Testen Sie ihn daher durch Abmelden, statt der Einstellung zu vertrauen. Wenn die Festplatte verschlüsselt ist, läuft die Eingabe der Passphrase aus dem initramfs. Dieses enthält eine eigene Kopie des Tastaturlayouts. Unter Debian und Ubuntu bauen Sie es nach einer Änderung an /etc/default/keyboard mit sudo update-initramfs -u neu auf. Starten Sie den Rechner anschließend einmal neu, um die Änderung zu testen, solange Ihnen noch ein anderer Zugang zum System zur Verfügung steht.

Kann ich ein Programm mit QWERTY verwenden?

Das Layout wird angewendet, bevor eine Anwendung die Taste sieht. Der X-Server oder der Compositor wandelt einen Scancode in ein Zeichen um und übergibt dieses Zeichen. Eine Anwendung kann daher kein anderes Layout anfordern. Sie kann nur die empfangenen Zeichen neu zuordnen. Deshalb befindet sich die Vim-Lösung in der Vim-Konfiguration. Deshalb gibt es keinen allgemeinen Layout-Umschalter pro Fenster, den Sie verwenden könnten.

Zwei Ansätze funktionieren. Der erste gilt pro Gerät. Wenn die QWERTY-Eingabe über eine separate Tastatur erfolgt, setzen Sie das Layout auf diesem Gerät und nicht systemweit:

xinput list
setxkbmap -device 12 -layout us

Übernehmen Sie die ID aus xinput list. Prüfen Sie die Zuordnung, indem Sie nacheinander auf jeder Tastatur tippen. sway akzeptiert dieselben Einstellungen auch pro Eingabegerätekennung aus swaymsg -t get_inputs. Ein spezifischerer Selektor hat Vorrang vor type:keyboard.

Der zweite Ansatz besteht darin, die Neuzuordnung innerhalb der Anwendung vorzunehmen, wie es Vim mit langmap macht. Spiele verfügen fast immer über einen Bildschirm für Tastaturbelegungen. Die Bewegungstasten dort neu zu belegen dauert weniger lange, als das Layout von außen zu erzwingen. Für Anwendungen ohne eine solche Möglichkeit binden Sie den Layout-Umschalter wie oben beschrieben und drücken Sie ihn, bevor Sie die Anwendung starten.

FAQ

Muss ich Colemak auf meinem VPS einstellen?

Nein, wenn Sie über SSH darauf zugreifen. SSH überträgt Zeichen. Das Layout wird daher auf Ihrem Laptop aufgelöst, bevor etwas gesendet wird. Der Server empfängt dieselben Bytes wie bei der Eingabe mit QWERTY. Eine Ausnahme ist die Browserkonsole im Panel Ihres Anbieters. Sie verbindet sich als Tastatur mit der virtuellen Maschine und verwendet die eigene Konsolen-Tastaturbelegung des Servers. Diese Konsole ist Ihr Rettungsweg, wenn SSH ausfällt. Ändern Sie die Belegung daher nur, wenn Sie sicher sind, und testen Sie sie, solange SSH noch funktioniert.

Sollte ich Colemak oder Colemak-DH lernen?

Beide Layouts erfordern gegenüber QWERTY einen vergleichbaren Lernaufwand. Entscheiden Sie daher nach dem Komfort und nicht nach den Migrationskosten. Colemak-DH verschiebt D, B und G und vertauscht H mit M. Der Grund ist, dass Colemak D und H mit einer Streckung des Zeigefingers in die mittlere Spalte eingibt. Die Namen der XKB-Varianten sind colemak und colemak_dh. Für Tastaturen mit der zusätzlichen Taste neben der linken Umschalttaste gibt es colemak_dh_iso. Mit localectl list-x11-keymap-variants us | grep colemak sehen Sie, welche Varianten Ihr System anbietet.

Was passiert mit Vims hjkl-Tasten unter Colemak?

h bleibt an seiner Position. j liegt unter QWERTYs Y, k unter QWERTYs N und l unter QWERTYs U. Dadurch verteilen sich die Cursortasten auf drei Reihen. Sie können die Tasten an ihren neuen Positionen neu lernen. Dann bleiben alle Plugins und Tutorials gültig. Alternativ können Sie die vier Tasten unter Ihrer rechten Hand neu belegen: h, n, e und i unter Colemak sowie m, n, e und i unter Colemak-DH. Vims Option langmap erfüllt für den Normalmodus denselben Zweck. Sie gilt jedoch nicht für Ctrl-Kombinationen und kann Plugin-Belegungen beeinträchtigen.

Wie lange dauert es, bis ich wieder meine frühere Geschwindigkeit erreiche?

Rechnen Sie eher mit Wochen als mit Tagen. Es handelt sich um motorisches Gedächtnis, und der einzige Weg ist Übung. In Berichten über die eigene Übungspraxis wird in der ersten Woche häufig weniger als die Hälfte der früheren Geschwindigkeit erreicht. Nach ein bis drei Monaten täglicher Nutzung wird diese Geschwindigkeit meist wieder erreicht. Wenn Sie täglich zwischen QWERTY und Colemak wechseln, verlängert sich dieser Zeitraum. Keiner der beiden Reflexe kann sich dann stabilisieren.

Warum hatte setxkbmap auf meinem Desktop keine Wirkung?

Fast sicher, weil die Sitzung Wayland verwendet. Unter Wayland verwaltet der Compositor die Tastaturbelegung und überträgt sie an jede Anwendung. Daher kann setxkbmap entweder kein Display finden oder nur XWayland ändern. Native Anwendungen ignorieren die Änderung. Stellen Sie das Layout stattdessen im Compositor ein: über den Schlüssel org.gnome.desktop.input-sources in gsettings unter GNOME, über xkb_variant in der sway-Konfiguration oder auf der Seite Layouts in den Systemeinstellungen von KDE Plasma.

#colemak#keyboard#linux#terminal#productivity