Es ist sehr wahrscheinlich, dass ich den Problembereich einfach nicht verstehe, aber ich habe Probleme, das MEF (Editor Classifier Projekt) herauszufinden.
Ich habe erstellt (Zusammenfügen der Walkthrough-Guides von MSDN Ссылка ) eine Syntax highligher für Informix Stored Procedure-Sprache.
Ein großes Problem, das ich habe, ist: Ich möchte alle Instanzen des Schlüsselwortes "DEFINE" finden und das Wort, das direkt darauf folgt, in die Statement Completion-Erweiterung einfügen (aktuell wird es aus einer definierten Liste von Wörtern gefüllt) .
Ähnlich wie die native Unterstützung von C # - wenn Sie eine Variable definieren, wird sie im Dropdown-Menü für die automatische Vervollständigung verfügbar.
Ich habe die In-Klasse-Hardcoding (aus dem Walkthrough) los und meine Abschlusswörter sind wie folgt definiert:
%Vor%Meine CompletionTags-Klasse ist ziemlich einfach:
Klasse CompletionTags { Öffentliche Liste completionTags;
%Vor%Ich weiß, was ich tun muss. Ich muss irgendwie den Puffer entführen, wenn er sich ändert, und alle Vorkommen von 'DEFINE ([a-zA-Z0-9 _] {1,})' finden und \ 1 zur completeTags-Liste hinzufügen.
Ich habe keine Ahnung, wie das geht. Irgendwelche Zeiger in der rechten (oder irgendeiner) Richtung an diesem Punkt würden sehr geschätzt.
Sei nett - wir waren alle irgendwann zu tief (ich programmiere jetzt seit 3 Tagen in C #) ...
Das Lesen dieser Antwort wird hilfreich sein. Schau dir an:
Tags und Links c# autocomplete visual-studio-2013 mef visual-studio-sdk