Karabiner-Elements ist das Schweizer Taschenmesser für die Tastaturanpassung am Mac: Es belegt Tasten um, baut Ebenen und führt Regeln aus, die du in JSON schreibst. Eine dieser Regeln kann eine Eingabequelle auswählen, wenn ein Tastendruck von einer bestimmten Tastatur kommt. Keyameleon erledigt nur genau diese eine Aufgabe, ganz ohne Regeln. Was besser ist, hängt davon ab, ob du Karabiner-Elements schon für etwas anderes nutzt.
Auf einen Blick
| Keyameleon | Karabiner-Elements | |
|---|---|---|
| Was es ist | Ein Umschalter für die Eingabequelle pro Tastatur | Ein universelles Tool zur Tastaturanpassung |
| Eingabequelle pro Tastatur | Für jede Tastatur eine Eingabequelle aus einer Liste wählen | Eine Complex Modification mit Gerätebedingung und einer select_input_source-Aktion schreiben |
| Wie es deine Eingaben liest | Beobachtet Tastaturen nur lesend; kann keine Eingaben ändern oder einschleusen | Übernimmt die Tastaturen, die es verändert, und leitet ihre Eingaben über einen eigenen virtuellen Tastaturtreiber |
| Installation | Eine App und die Eingabeüberwachung | Eine App, eine zu genehmigende Treibererweiterung und die Eingabeüberwachung |
| Preis und Lizenz | Kostenlos, MIT | Kostenlos, gemeinfrei (Unlicense) |
Wechsel pro Tastatur in Karabiner-Elements
Regeln in Karabiner-Elements (Complex Modifications) lassen sich mit einer device_if-Bedingung auf bestimmte Geräte beschränken, etwa über die Hersteller- und Produkt-ID einer Tastatur oder auf die integrierte Tastatur. Eine Regel kann außerdem eine select_input_source-Aktion ausführen, die eine Eingabequelle nach Sprache oder ID auswählt. Kombinierst du beides, kann ein Tastendruck auf einer Tastatur deren Eingabequelle auswählen.
Das funktioniert, aber du schreibst und pflegst diese Regel selbst, einmal pro Tastatur, und musst testen, dass sie die betroffenen Tasten weder schluckt noch verändert. Die Dokumentation von Karabiner-Elements warnt außerdem, dass die Auswahl von Eingabequellen mit Eingabemodus (Chinesisch, Japanisch, Koreanisch, Vietnamesisch) wegen eines macOS-Problems fehlschlagen kann, und empfiehlt, stattdessen den Tastaturkurzbefehl für die Eingabequelle zu senden.
Keyameleon: dieselbe Aufgabe, ohne Regeln
Keyameleon listet jede Tastatur auf, die es findet. Du wählst für jede eine Eingabequelle, auch Eingabemethoden wie Japanisch – Kana oder Pinyin, und die App wechselt, sobald du auf dieser Tastatur zu tippen beginnst. Sie installiert nie einen Treiber und sitzt nie zwischen deiner Tastatur und deinen Apps: Sie beobachtet Tastaturen über Apples CoreHID-Framework nur lesend und wechselt Layouts über das Texteingabesystem von macOS.
Außerdem sagt sie dir, wenn etwas nicht stimmt. Das Menü in der Menüleiste zeigt einen Hinweis, wenn die Eingabeüberwachung aus ist, wenn das Wechseln pausiert ist oder wenn eine zugewiesene Eingabequelle aus macOS entfernt wurde.
Beide zusammen nutzen
Viele nutzen Karabiner-Elements zum Umbelegen von Tasten und wollen zusätzlich ein Layout pro Tastatur. Bedenke dabei, dass Karabiner-Elements die Eingaben der Tastaturen, die es verändert, über seine virtuelle Tastatur neu sendet. Andere Apps sehen dann möglicherweise nicht mehr, von welcher physischen Tastatur ein Tastendruck kam. Wechselt Keyameleon bei einer Tastatur nicht, während Karabiner-Elements läuft, schalte in den Devices-Einstellungen von Karabiner-Elements Modify events für diese Tastatur aus.
Welches solltest du nutzen?
- Du pflegst schon Regeln in Karabiner-Elements und kommst mit JSON gut klar: Füge dort eine Geräteregel hinzu.
- Du willst nur, dass jede Tastatur in ihrem eigenen Layout tippt, ohne Treiber und ohne Regeln, die du pflegen musst: Keyameleon.
Alle Optionen, auch die integrierten, findest du in der Anleitung Tastaturlayout auf dem Mac automatisch wechseln.