aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/SciLexer.h1
-rw-r--r--include/Scintilla.iface1
-rw-r--r--src/LexCPP.cxx4
3 files changed, 6 insertions, 0 deletions
diff --git a/include/SciLexer.h b/include/SciLexer.h
index e1da492b2..c20c22b7b 100644
--- a/include/SciLexer.h
+++ b/include/SciLexer.h
@@ -88,6 +88,7 @@
#define SCE_C_WORD2 16
#define SCE_C_COMMENTDOCKEYWORD 17
#define SCE_C_COMMENTDOCKEYWORDERROR 18
+#define SCE_C_GLOBALCLASS 19
#define SCE_H_DEFAULT 0
#define SCE_H_TAG 1
#define SCE_H_TAGUNKNOWN 2
diff --git a/include/Scintilla.iface b/include/Scintilla.iface
index 7c7b6dac2..8ad828cd0 100644
--- a/include/Scintilla.iface
+++ b/include/Scintilla.iface
@@ -1612,6 +1612,7 @@ val SCE_C_COMMENTLINEDOC=15
val SCE_C_WORD2=16
val SCE_C_COMMENTDOCKEYWORD=17
val SCE_C_COMMENTDOCKEYWORDERROR=18
+val SCE_C_GLOBALCLASS=19
# Lexical states for SCLEX_HTML, SCLEX_XML
lex HTML=SCLEX_HTML SCE_H
lex XML=SCLEX_XML SCE_H
diff --git a/src/LexCPP.cxx b/src/LexCPP.cxx
index 661b968cd..3be8c91f1 100644
--- a/src/LexCPP.cxx
+++ b/src/LexCPP.cxx
@@ -60,6 +60,7 @@ static void ColouriseCppDoc(unsigned int startPos, int length, int initStyle, Wo
WordList &keywords = *keywordlists[0];
WordList &keywords2 = *keywordlists[1];
WordList &keywords3 = *keywordlists[2];
+ WordList &keywords4 = *keywordlists[3];
bool stylingWithinPreprocessor = styler.GetPropertyInt("styling.within.preprocessor") != 0;
@@ -111,6 +112,8 @@ static void ColouriseCppDoc(unsigned int startPos, int length, int initStyle, Wo
sc.ChangeState(SCE_C_WORD);
} else if (keywords2.InList(s)) {
sc.ChangeState(SCE_C_WORD2);
+ } else if (keywords4.InList(s)) {
+ sc.ChangeState(SCE_C_GLOBALCLASS);
}
sc.SetState(SCE_C_DEFAULT);
}
@@ -597,6 +600,7 @@ static const char * const cppWordLists[] = {
"Secondary keywords and identifiers",
"Documentation comment keywords",
"Fold header keywords",
+ "Global classes and typedefs",
0,
};