Wie vermeidet man Syntaxhervorhebungsprobleme mit Backtick-Escape-Sequenzen innerhalb eines Vorlagenliterals?

Wie vermeidet man Syntaxhervorhebungsprobleme mit Backtick-Escape-Sequenzen innerhalb eines Vorlagenliterals?

Notepad++ weist ein Problem auf, bei dem die Syntaxhervorhebung unterbrochen wird, wenn eine Backtick-Escape-Sequenz innerhalb eines Vorlagenliterals verwendet wird.

Problem hervorheben

Dies passiert nicht, wenn ein einfaches Anführungszeichen in einer Zeichenfolge mit einfachen Anführungszeichen maskiert wird, und dasselbe gilt für doppelte Anführungszeichen.

Gibt es eine Möglichkeit, dies irgendwie zu beheben, oder muss ich warten, bis es in einer zukünftigen Version behoben ist?

Ich habe online einiges zu benutzerdefinierten Sprachen gesehen, glaube aber nicht, dass es hilft.

Antwort1

Backquotes sind in JavaScript nicht zum Zitieren von Zeichenfolgen gedacht, sondern zum Auswerten von Ausdrücken vom Typ Zeichenfolge.

Dies ruft beispielsweise eine Funktion auf und ersetzt den darin enthaltenen Ausdruck ${} durch den zurückgegebenen Wert:

`header ${ myfunction() }`

Die Tatsache, dass Backquotes für Sie genauso funktionieren wie normale Anführungszeichen, ist nicht beabsichtigt und Notepad++ unterstützt sie nur teilweise. Um Zeichenfolgen abzugrenzen, die keine ausgewerteten Ausdrücke enthalten, sollten Sie einfache oder doppelte Anführungszeichen verwenden.

Wenn Sie dennoch Ihre eigene Syntax für Notepad++ erstellen möchten, in der Backquotes dieselbe Bedeutung wie Anführungszeichen haben, müssen Sie die Syntax von JavaScript ändern und Ihre eigene Sprache erstellen.

Verweise :

verwandte Informationen