Freigeben über


Syntaxfarbe in den benutzerdefinierten Editoren

Editoren der Visual Studio-Umgebung SDK, einschließlich den Kern des Editors, verwenden Sprachendienste, um bestimmte syntaktische Elemente zu identifizieren und sie mit den angegebenen Farben für eine Ansicht eines bestimmten Dokuments angezeigt wird.

Farbauftrag-Anforderungen

Alle Editoren, die eine farbige Darstellung des Sprachdiensts müssen implementiert werden:

  1. Verwenden Sie ein Objekt, das IVsTextBuffer implementiert, um den Text getönt werden soll, und ein Objekt zu verwalten, das IVsTextView implementiert, um eine Ansicht des Texts Dokumente bereitzustellen.

  2. Rufen Sie eine Schnittstelle zu einem bestimmten Sprachdienst, indem sie den VSPackages Dienstanbieter abfragt, der das identifizierende GUID des Sprachdiensts verwendet.

  3. Rufen Sie die SetLanguageServiceID-Methode des Objekts auf, das IVsTextBufferimplementiert. Diese Methode ordnet den Sprachdienst mit der IVsTextBuffer Implementierung zu VSPackages, der verwendet wird, um den Text zu verwalten, der getönt werden soll.

Kern-Editor-Verwendung einer farbigen Darstellung des Sprachdiensts

Wenn ein Sprachdienst mit einem farbigen Darstellung von einer Instanz des zentralen editors abgerufen wird, wird die Analyse und das Rendern von Text durch eine farbige Darstellung des Sprachdiensts automatisch auf, ohne weitere Komponenten auf dem Intervention erforderlich ist.

Die IDE transparent:

  • Ruft die farbige Darstellung bei Bedarf auf, um Text zu analysieren und zu analysieren, wie sie in der Implementierung von IVsTextBufferhinzugefügt oder geändert wird.

  • Stellt sicher, dass die Anzeige, die von der Ansicht Dokumente aus der bereitgestellten IVsTextView Implementierung unter Verwendung der angegebenen Informationen aktualisiert und neu gezeichnet wird, die von der farbige Darstellung zurückgegeben werden.

Nichtkern- Editor-Verwendung einer farbigen Darstellung des Sprachdiensts

Editor Nichtkern- Instanzen können einen Syntax farbauftrag auch mithilfe des Sprachdiensts für sie müssen jedoch explizit abrufen und die farbige Darstellung des Diensts zu übernehmen und ihr Dokument neu zu zeichnen verweist.

So fügen Sie dazu erfordert einen Nichtkern- Editor:

  1. Ruft ein Objekt mit farbigen Darstellung des Sprachdiensts (das T:Microsoft.VisualStudio.TextManager.Interop.IVsColorizer und IVsColorizer2implementiert). VSPackage geschieht, indem die GetColorizer-Methode für die Schnittstelle des Sprachdiensts aufruft.

  2. Rufen Sie die ColorizeLine-Methode auf, um anzufordern, dass ein bestimmter Textabschnitt darfarbig gestellt wird.

    Die ColorizeLine-Methode gibt ein Array von Werten, einen für jeden Buchstaben im Textabschnitt zurück, der getönt werden soll. Er gibt außerdem den Textabschnitt als ein bestimmter Typ färbbares Element, z. B. einen Kommentar ein Schlüsselwort oder einen Datentyp.

  3. Verwenden Sie die Farbauftrag Informationen, die von ColorizeLine zurückgegeben werden, um seinen Text anzuzeigen und neu zu zeichnen.

Hinweis

Neben der Verwendung einer farbigen Darstellung des Sprachdiensts, kann ein VSPackage die Möglichkeit, allgemeine Visual Studio-Umgebung SDK TEXT farbton Mechanismus verwenden.Weitere Informationen zu diesem Verfahren finden Sie unter Schriftarten.

Siehe auch

Aufgaben

Gewusst wie: Verwendungs-integrierte färbbare Element

Konzepte

Syntaxfarbe

Syntaxfarbe implementieren

Für benutzerdefinierte färbbare Elemente