Created
June 5, 2015 02:35
-
-
Save jacobslusser/42b85d2e58e8f3fe0eb5 to your computer and use it in GitHub Desktop.
ScintillaNET C# Automatic Syntax Highlighting
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For an explanation of this code visit: | |
// https://github.com/jacobslusser/ScintillaNET/wiki/Automatic-Syntax-Highlighting | |
// Configuring the default style with properties | |
// we have common to every lexer style saves time. | |
scintilla.StyleResetDefault(); | |
scintilla.Styles[Style.Default].Font = "Consolas"; | |
scintilla.Styles[Style.Default].Size = 10; | |
scintilla.StyleClearAll(); | |
// Configure the CPP (C#) lexer styles | |
scintilla.Styles[Style.Cpp.Default].ForeColor = Color.Silver; | |
scintilla.Styles[Style.Cpp.Comment].ForeColor = Color.FromArgb(0, 128, 0); // Green | |
scintilla.Styles[Style.Cpp.CommentLine].ForeColor = Color.FromArgb(0, 128, 0); // Green | |
scintilla.Styles[Style.Cpp.CommentLineDoc].ForeColor = Color.FromArgb(128, 128, 128); // Gray | |
scintilla.Styles[Style.Cpp.Number].ForeColor = Color.Olive; | |
scintilla.Styles[Style.Cpp.Word].ForeColor = Color.Blue; | |
scintilla.Styles[Style.Cpp.Word2].ForeColor = Color.Blue; | |
scintilla.Styles[Style.Cpp.String].ForeColor = Color.FromArgb(163, 21, 21); // Red | |
scintilla.Styles[Style.Cpp.Character].ForeColor = Color.FromArgb(163, 21, 21); // Red | |
scintilla.Styles[Style.Cpp.Verbatim].ForeColor = Color.FromArgb(163, 21, 21); // Red | |
scintilla.Styles[Style.Cpp.StringEol].BackColor = Color.Pink; | |
scintilla.Styles[Style.Cpp.Operator].ForeColor = Color.Purple; | |
scintilla.Styles[Style.Cpp.Preprocessor].ForeColor = Color.Maroon; | |
scintilla.Lexer = Lexer.Cpp; | |
// Set the keywords | |
scintilla.SetKeywords(0, "abstract as base break case catch checked continue default delegate do else event explicit extern false finally fixed for foreach goto if implicit in interface internal is lock namespace new null object operator out override params private protected public readonly ref return sealed sizeof stackalloc switch this throw true try typeof unchecked unsafe using virtual while"); | |
scintilla.SetKeywords(1, "bool byte char class const decimal double enum float int long sbyte short static string struct uint ulong ushort void"); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Very helpful.