eigener Syntaxhighlighter

Ich hab auch mal sowas gemacht, allerdings nicht, um Text einzufärben, sondern um die Syntax zu überprüfen. Ich habs mit einem Timer realisiert, der alle 2 Sekunden ausgelöst wird. Wenn der Text innerhalb dieser 2 Sekunden geändert wurde, geschah nichts.
Bleibt der Text aber über 2 Sekunden unverändert, wird geparst...
 
#Develop-Editor-Komponente eingebunden. Geschafft! War aber eine Schinderei...

Wenn man weiß, wie's geht, ganz einfach (hab 8h dafür gebraucht):


Die "ICSharpCode.TextEditor.dll" aus der #Develop-Source einbinden.
Eine ICSharpCode.TextEditor.TextEditorControl erstellen.

Dann kann man mit [textEditorControl].EditBox.Document.HighlightingStrategy("C#"); z.B. die C#-Formatierung anwenden.

Oder mit
Code:
ICSharpCode.TextEditor.Document.FileSyntaxModeProvider fsmProvider; 
fsmProvider = new ICSharpCode.TextEditor.Document.FileSyntaxModeProvider(Directory.GetCurrentDirectory());
ICSharpCode.TextEditor.Document.HighlightingManager.Manager.AddSyntaxModeFileProvider(fsmProvider);
EditBox.SetHighlighting("SQL");
binde ich z.B. meine eigene Schemes-Datei (*.xshd; liegt im aktuellen Ordner) einbinden. Dazu einfach eine *.xshd-Datei aus dem #D-Source nehmen und entsprechend abändern. Dann braucht man sich um nichts mehr zu kümmern.


Gruß
dNIL
 
Zuletzt bearbeitet:
Zurück