Wie ordne ich einem aufgezeichneten Makro in Sublime Text eine Tastenkombination zu

43

Ich habe eine Reihe von Makros, die ich in Sublime Text 2 aufgenommen und gespeichert habe. Ich versuche, jedem davon Tastaturkürzel zuzuweisen, aber ich weiß nicht, wie ich das machen soll.

Ich habe es mir angesehen

Dies erklärt jedoch, wie Tastenzuordnungen für vorhandene Befehle festgelegt werden.

Was soll ich einstellen, damit ein Makro ausgeführt wird?

Sathyajith Bhat
quelle
2
das gilt auch für ST3 - danke!
14.

Antworten:

61

Um Sublime Text anzuweisen, Makros auszuführen, müssen Sie "run_macro_file" als Parameter an "command" übergeben, wobei das Argument der Dateiname des Makros ist.

Erstens wird ein Makro nicht in einer Datei gespeichert, sondern muss in einer Datei gespeichert werden. Klicken Sie dazu auf Extras → Makro speichern und geben Sie einen Dateinamen ein. Makros werden in der Regel in %appdata%\Sublime Text 2\Packages\UserOrdnern gespeichert .

Um die Tastenkombination zuzuweisen, öffnen Sie die Datei "Tastenkombinationen" über Einstellungen → Tastenkombinationen - Benutzer.

Das allgemeine Format für eine Tastenkombination lautet wie folgt:

{ "keys": [<key sequence>], "command": "run_macro_file", "args": {"file": "Packages/User/<file name>.sublime-macro"} }

Wenn Sie also einem Makro, das als "Komma zum Ende hinzufügen" gespeichert wurde , Ctrl+ Shift+ zuweisen möchten, Xsieht die Tastenkombination folgendermaßen aus:

[
    { "keys": ["ctrl+shift+x"], "command": "run_macro_file", "args": {"file": "Packages/User/add comma to end.sublime-macro"} }
]
Sathyajith Bhat
quelle
2
Sie schränken den Bereich ein, in dem die Verknüpfung aktiv sein soll context. Hier ein Beispiel von Emmet: github.com/sergeche/emmet-sublime/blob/master/…
ptim
@ptim Bedeutet dies, dass Sie ein Makro so einschränken können, dass es nur für z. B. Python-Skripte aktiv ist?
Gustafbstrom
1
@gustafbstrom - irgendwie! ja, aber die Einschränkung ist tatsächlich auf dem Schlüssel Bindung, nicht das Makro :) docs.sublimetext.info/en/latest/reference/...
PTIM
funktioniert immer noch mit sublime v3. Pfad ist relativ, "Packages/User/my_commands.sublime-macro"funktioniert also. Getestet auf Mac.
Marlo