So fügen Sie der VS2013-Syntaxerweiterung (MEF) Vervollständigungswörter dynamisch hinzu

8

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 #) ...

    
Trent 15.05.2015, 06:17
quelle

1 Antwort

2

Das Lesen dieser Antwort wird hilfreich sein. Schau dir an:

XML Editor IntelliSense-Funktionen

Schema-Cache

    
Aly El-Haddad 24.05.2015 15:08
quelle