macOS remap keys als Modifikatoren

709
jsve

Die Situation

Ich benutze ein Tastaturlayout namens 3l (Three Layout), das ein mehrschichtiges Tastaturlayout ist. Hier ist die Hauptebene (das Verhalten, wenn keine Zusatztasten gedrückt werden):

normales 3l-Layout

Wenn ich jetzt 'auf einer normalen Tastatur ( symin 3l) die Taste gedrückt halte, befinde ich mich im "Symbolmodus" und der Rest der Tastatur verhält sich anders. Hier ist ein Bild von diesem Modus:

Symbolschicht von 3l

Diese Symboltaste ist praktisch wie ein Spezial Shift, mit dem ich auf Sonderzeichen zugreifen kann.

Außerdem habe ich eine Zahlenebene, die dieselbe Wirkung wie die Symbolebene hat und durch die /Taste aktiviert wird, aber stattdessen Cursor- und Nummernblock-Steuerelemente verwendet:

macOS remap keys als Modifikatoren


Die Person, von der ich mein Layout erstellt habe, funktionierte bereits unter Linux und Windows (mit AutoHotKey). Ich versuche es auch auf macOS zu portieren. Bisher habe ich eine 3l.keylayoutDatei erstellt ( siehe hier ) und habe sehr grundlegende Funktionen.

Was funktioniert?

  1. Die Tasten im Normalmodus funktionieren einwandfrei.
  2. Wenn ich die Symbolmodifizierertaste drücke, wird das erste Zeichen, das ich drücke, als korrektes Symbol ausgegeben. Wenn ich zum Beispiel die Symboltaste drücke und dann O, /wird ausgegeben.
  3. Dasselbe gilt für die Taste cur / num für die Ausgabe des Nummernblocks.

Was funktioniert nicht?

  1. Wenn ich die Symbolmodifizierertaste gedrückt halte und mehrere Zeichen eingebe, gibt nur das erste Symbol tatsächlich das Symbol aus. (Gleiches gilt für die cur / num-Taste.)
  2. Wenn ich eine der Zusatztasten drücke und wieder freigebe und dann eine andere Taste drücke, wird das Symbol / die Nummer ausgegeben. Dies sollte nicht der Fall sein. Wenn ich die Zusatztaste loslasse, möchte ich, dass sie in den normalen Modus zurückkehrt (genau wie die ShiftTaste).
  3. Die Cursor-Manipulationstasten funktionieren nicht in allen Anwendungen zuverlässig und sie haben auch das Problem, dass sich wiederholte Tasten nicht zulassen, wenn sie funktionieren.

Meine Frage

Gibt es eine Möglichkeit für mich, die in macOS (oben und unten) beschriebene Funktionalität zu erhalten?

Hinweis : Ich habe auch neu zuzuordnen versucht 'und /nach rechts Option und richtigen Steuerung mit Karabiner Elementen und dann versuchte, einen neuen zu schaffen keymapin 3l.keylayoutdem von diesen Tasten aktiviert. Dies hat jedoch nicht funktioniert. Es hat alles vermasselt und ich geriet in eine permanente Kontroll- / Optionsschlüsselsituation.

1

1 Antwort auf die Frage

0
jsve

Ich konnte dieses Problem mit den komplexen Modifikationen von Karabiner-Elements beheben .

Hier ist meine komplette karabiner.jsonDatei.

Unter habe profiles -> rules -> manipulatorsich zwei Manipulatoren hinzugefügt. Einer für symund einer für cur.

Ich habe den symManipulator unten kopiert :

{ "conditions": [  "name": "sym", "type": "variable_if", "value": 0 }, { "name": "cur", "type": "variable_if", "value": 0 } ], "from": { "key_code": "quote", "modifiers": { "optional": [ "any" ] } }, "to": [ { "set_variable": { "name": "sym", "value": 1 } } ], "to_after_key_up": [ { "set_variable": { "name": "sym", "value": 0 } } ], "type": "basic" } 

Dann habe ich jede Tasteneinstellung durchlaufen, dh wenn die Taste ohne Modifikator, symModifikator und curModifikator gedrückt wird .

Das funktioniert einwandfrei.