In einer Sprache (julia) , die Blöcke , die durch Schlüsselwörter wie hat for..end
, begin..end
sowie Klammern, was ist ein guter Weg , einen solchen Block zu überspringen? Ist end
nicht nur ein Blockschlüsselwort, sondern auch eine gültige Kennung, die an anderen Stellen verwendet wird.
Eine Möglichkeit besteht darin, nach Regex zum Starten / Schließen von Blöcken zu suchen und alle Zeichenfolgen, Kommentare und end
s usw. zu überspringen. Dies ist jedoch etwas ineffizient und etwas hässlich.
Gibt es eine Möglichkeit, Emacs 'eigene Syntaxanalyse zu veranlassen, solche Blockschlüsselwörter zu erkennen, so dass forward/backward-sexp
dies automatisch funktioniert und man den Beginn des aktuellen Blocks schnell anhand der Ausgabe von z syntax-ppss
.
[Hinweis: Es macht mir nichts aus, die Datei selbst zu analysieren, aber in diesem Fall möchte ich trotzdem wissen, wie mein Parser in den Rest der Emacs eingesteckt werden soll.]
ruby-mode
, was für Ruby etwas Ähnliches bewirkt. Eine andere Möglichkeit ist, sich in Smartparens einzuhängen . Es gibt eine spezielle Konfiguration für den Ruby- Modus, die Sie als Ausgangspunkt verwenden können