Wie kann ich die Zeichen '{' und '}' in einem AutoHotKey-Skript maskieren?

25

Ich versuche, ein einfaches Skript zum automatischen Ersetzen zu schreiben, kann jedoch nicht feststellen, wie die Zeichen '{}' eingefügt werden.
Die üblichen Escape-Zeichen (Backtick oder Backslash) scheinen bei geschweiften Klammern nicht zu funktionieren.
z.B

: co: drf :: $ (document) .ready (function () {space} `{` n`}); {Left} {Left} {Left} {left}

gibt

$ (document) .ready (function () 
);

eher, als

$ (document) .ready (function () {
});
Pelme
quelle

Antworten:

36

Umhüllen Sie Ihre geschweiften Klammern mit geschweiften Klammern. Dadurch wird AutoHotkey aufgefordert, das Rohzeichen zu senden.

{{}

{}}

AutoHotkey-Hilfedatei

snitzr
quelle
2
Hinweis: Es funktioniert nicht, wenn Sie den Texteditor Notepad ++ (mit Einzug) verwenden und wenn ein Enter enthalten ist, z . B. ::test::{{}{enter}{}}ergibt {\n}\t}. Umgehung: Verwenden Sie {Backspace}und, {Left}um das Ergebnis neu zu formatieren.
Kai Noack
1
Dies funktioniert nicht in einem Send-Befehl verwenden Sie stattdessen SendRaw
Matthew Lock
@ MatthewLocks Antwort ist die richtige Antwort.
Ajit Goel