Ich möchte eine neue Vorlagensprache schreiben und Visual Studio soll sie "unterstützen". Was ich wissen muss ist:
- Wie analysiere ich meine neue Sprache?
Wie übersetze ich Code in meiner neuen Vorlagensprache in HTML? Im Moment verwende ich reguläre Ausdrücke, um es Token für Token zu analysieren, aber ich denke nicht, dass dies sehr gut skaliert werden kann, da die Sprache komplizierter wird und es keine Fehlerprüfung gibt. Ich habe von ANTLR gehört, es aber nie benutzt. Wäre das das richtige Werkzeug für diesen Job oder gibt es vielleicht etwas Einfacheres? Idealerweise möchte ich Syntaxfehler mit möglichst vielen Informationen (Zeilennummer, Fehlertyp) an das Fehlerfenster senden, wie dies in anderen Sprachen der Fall ist. - Wie erstelle ich einen neuen Dateityp für Visual Studio?
- Wie erhalte ich eine Syntaxhervorhebung?
Kann ich denselben Parser verwenden, den ich in Schritt 1 erstellt habe, oder ist das etwas ganz anderes? - Wie bekomme ich Intellisense?
Ich würde meinen Parser lieber in C # schreiben.
Das VS SDK enthält ein Beispiel, das die meisten Funktionen zeigt, nach denen Sie suchen.
quelle
Ich benutzte VS mit eigener Sprache und brauchte dringend ein Syntax-Highlight . Ich habe meine basierend auf diesem Tutorial erstellt: https://mattduffield.wordpress.com/2012/07/31/writing-a-brightscript-syntax-highlight-extension-for-visual-studio-2010/
Ich weiß, dass das Tutorial in VS2010 ist. Ich habe meine in VS2012 ohne oder mit sehr kleinen Schluckaufen gemacht. (funktionierte auch in VS2013) Vor kurzem habe ich zu VS2015 gewechselt und die Lösung kann bearbeitet und problemlos erstellt werden.
quelle
Ich fand diese sehr nützliche Sammlung aktueller Beispiele für das Visual Studio 2013 SDK: http://blogs.msdn.com/b/vsx/archive/2014/05/30/vs-2013-sdk-samples-released.aspx
Es enthält auch die aktuelle Version der OokLanguage, die vielversprechend klingt.
Wir haben ANTLR 4 verwendet, um unsere Sprache zu analysieren, die wie ein Zauber wirkt und eine direkte Interaktion mit C # -Code ermöglicht. Kann es nur empfehlen.
quelle
Wie in anderen Antworten erwähnt, ist das interessanteste Codebeispiel die Ook-Spracherweiterung für die neueste Version von Visual Studio (2017 zum Zeitpunkt des Schreibens).
Für VS 2015 siehe das Beispiel in der VS2015-Verzweigung .
Um das SDK für 2015 oder höher zu installieren, müssen Sie das VS-Setup erneut ausführen. Im Jahr 2015 heißt es "Visual Studio Extensibility Tools Update 3".
quelle