Wie kann ich mit Karabiner-Elements eine Taste nur für bestimmte Anwendungen umbelegen?
- Einleitung
- Grundprinzip der bedingten Umbelegung
- Vorgehen zur Umbelegung in bestimmten Anwendungen
- Wie finde ich die korrekten Bundle-IDs?
- Einfügen der Regel in Ihre Konfiguration
- Zusammenfassung
Einleitung
Karabiner-Elements ist ein mächtiges Tool zur individuellen Anpassung von Tastaturen auf macOS.
Eine seiner nützlichen Funktionen ist das gezielte Umbelegen von Tasten nur in bestimmten Programmen.
So kann zum Beispiel die Caps Lock-Taste in einem Texteditor als Escape-Taste fungieren, während sie in allen anderen Programmen unverändert bleibt.
Grundprinzip der bedingten Umbelegung
Karabiner-Elements verwendet eine JSON-basierte Konfigurationsdatei namens karabiner.json,
in der Regeln definiert werden. Diese Regeln können durch sogenannte conditions eingeschränkt werden,
Man nutzt hier den Typ der Bedingung frontmost_application_if, um eine oder mehrere Anwendungen anzugeben.
Vorgehen zur Umbelegung in bestimmten Anwendungen
Um eine Taste nur in bestimmten Programmen umzubelegen, müssen Sie zunächst Karabiner-Elements installieren und öffnen.
Danach öffnen Sie unter "Complex Modifications" die Konfigurationsdatei oder fügen eine neue Regel hinzu, die die Zielanwendung einschränkt.
Typischerweise sieht eine solche Regel in der karabiner.json folgendermaßen aus:
{ "title": "Anwendungsspezifische Tastenumbelegung", "rules": , "conditions": } ] } ] } ]}Im obigen Beispiel wird die Caps Lock-Taste nur dann als Escape interpretiert, wenn Visual Studio Code aktiv ist.
Die Bedingung frontmost_application_if wartet auf das aktive Programm anhand der Bundle-ID, die für macOS-Anwendungen eindeutig ist.
Wie finde ich die korrekten Bundle-IDs?
Um die richtige Bundle-ID einer Anwendung zu ermitteln, können Sie das Terminal verwenden.
osascript -e id of app (path to frontmost application as text)Alternativ können Sie auch in Karabiner-Elements unter "EventViewer" den Prozessnamen sehen, was oft hilft, die Bundle-ID zuzuordnen.
Wenn Sie mehrere Programme für die gleiche Umbelegung nutzen wollen, fügen Sie einfach weitere reguläre Ausdrücke in das Array bundle_identifiers ein.
Einfügen der Regel in Ihre Konfiguration
Um die eigene Regel anzulegen, öffnen Sie den Finder, drücken ⌘ + Shift + G und navigieren zu ~/.config/karabiner/karabiner.json.
Dort fügen Sie Ihre eigene Regel in den Bereich rules ein oder legen eine komplette neue Datei mit der Regel an und importieren diese über die Benutzeroberfläche von Karabiner-Elements.
Zusammenfassung
Mit Karabiner-Elements können Sie Tastenbedienungen für bestimmte Anwendungen einschränken, indem Sie die Bedingung frontmost_application_if mit der passenden Bundle-ID des Programms verwenden.
Dies ermöglicht sehr flexible Anpassungen des Tastaturverhaltens, ohne das System oder andere Programme zu beeinflussen.
