Sprachendienste und der Kern-Editor
Editoren in Visual Studio werden oft mit einem Sprachdienst zugeordnet. Unter anderem stellt ein Sprachdienst Syntaxfarbe, Anweisungsvervollständigung, IntelliSense und Textformatierung bereit.
Kern-Editoren und Dokumenten-Datenobjekte
Wenn Sie den Kern des Editors zugreifen, erstellen Sie nicht die Objekte und Dokumenten Dokumentdaten. Die IDE erstellt und steuert diese beiden Objekte, und Sie erhalten Handles darauf, indem Sie die entsprechenden Aufrufe in der Implementierung des Editors factory machen.
Weitere Informationen finden Sie unter Bestimmen, welche Editor eine Datei in einem Projekt geöffnet wird.
Sprachendienste und der Kern-Editor
Wenn Sie einen Sprachdienst implementieren, können Sie steuern, wie Daten in der Ansicht Dokumente angezeigt wird. Ein Sprachdienst, das Verhalten und stellt Informationen zu einer bestimmten Sprache bestimmt wird, wie Visual C++. Wenn Sie einen Textpuffer erstellen und die Dateinamenerweiterung für das Dokument öffnen, das bestimmt, bestimmt der Sprachdienst den Textpuffer, der mit der Dateinamenerweiterung von einem Registrierungsschlüssel HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Editoren \ zugeordnet ist TheLanguageService {GUID} \ Extensions. Standard-VSPackage, das Verfahren lädt und VSPackages geladen, dann eine Instanz des Sprachdiensts wird erstellt.
Ein grundlegender Sprachdienst wird in der folgenden Abbildung dargestellt.
Kern des Editors und Sprachdienst Objekte
Das Dokument wird das angegebene Channeldatenobjekt für den Kern des Editors einen Textpuffer bezeichnet und wird durch das VsTextBuffer-Objekt dargestellt. Das Objekt der Dokumente ist eine Textansicht bezeichnet und wird durch das VsCodeWindow-Objekt dargestellt. Diese beiden Objekte funktionieren vom Sprachdienst zusammen, um eine einheitliche Ansicht des zentralen editors bereitzustellen. Informationen im Textpuffer und den Text anzeigen, der in einem Dokumentfenster namens ein Codefenster an. Das Codefenster Dokument wird von einem Code fenster-manager verwaltet.
Siehe auch
Referenz
Konzepte
Bereitstellen eines Sprachendienst-Kontext für die Verwendung des Legacy API