diff options
-rw-r--r-- | doc/ScintillaHistory.html | 3 | ||||
-rw-r--r-- | lexers/LexBaan.cxx | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html index 4eb8c1e2a..9f391d0e1 100644 --- a/doc/ScintillaHistory.html +++ b/doc/ScintillaHistory.html @@ -537,6 +537,9 @@ related to lexing so doesn't belong in ILexer.h. </li> <li> + The Baan lexer checks that matches to 3rd set of keywords are function calls and leaves as identifiers if not. + </li> + <li> The C++ lexer improved preprocessor conformance.<br /> Default value of 0 for undefined preprocessor symbols.<br /> #define A is treated as #define A 1.<br /> diff --git a/lexers/LexBaan.cxx b/lexers/LexBaan.cxx index 4e071b380..7d98f5ef3 100644 --- a/lexers/LexBaan.cxx +++ b/lexers/LexBaan.cxx @@ -568,7 +568,10 @@ void SCI_METHOD LexerBaan::Lex(Sci_PositionU startPos, Sci_Position length, int sc.ChangeState(SCE_BAAN_WORD2); } else if ((keywords3.kwHasSection && (sc.ch == ':')) ? keywords3.Contains(s1) : keywords3.Contains(s)) { - sc.ChangeState(SCE_BAAN_WORD3); + if (sc.ch == '(') + sc.ChangeState(SCE_BAAN_WORD3); + else + sc.ChangeState(SCE_BAAN_IDENTIFIER); } else if ((keywords4.kwHasSection && (sc.ch == ':')) ? keywords4.Contains(s1) : keywords4.Contains(s)) { sc.ChangeState(SCE_BAAN_WORD4); |