Comment échapper les caractères '{' et '}' dans un script AutoHotKey?

25

J'essaie d'écrire un simple script de remplacement automatique mais je ne trouve pas comment insérer les caractères '{}'.
Les caractères d'échappement habituels (backtick `ou backslash) ne semblent pas fonctionner pour les accolades.
par exemple

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

donne

$ (document) .ready (fonction () 
);

plutôt que

$ (document) .ready (fonction () {
});
pelms
la source

Réponses:

36

Emballez vos accolades avec des accolades. Cela invite AutoHotkey à envoyer le caractère brut.

{{}

{}}

Fichier d'aide AutoHotkey

snitzr
la source
2
Remarque: Cela ne fonctionne pas si vous utilisez l'éditeur de texte Notepad ++ (avec retrait) et si une entrée est incluse, par exemple, les ::test::{{}{enter}{}}résultats dans {\n}\t}. Solution: utilisez {Backspace}et {Left}pour reformater le résultat.
Kai Noack
1
Cela ne fonctionne pas dans une commande Send, utilisez plutôt SendRaw
Matthew Lock
@ La réponse de MatthewLock est la bonne réponse.
Ajit Goel