diff options
| -rw-r--r-- | lexers/LexCmake.cxx | 14 | 
1 files changed, 5 insertions, 9 deletions
diff --git a/lexers/LexCmake.cxx b/lexers/LexCmake.cxx index 70e9dee98..fb79abf26 100644 --- a/lexers/LexCmake.cxx +++ b/lexers/LexCmake.cxx @@ -226,14 +226,13 @@ static void ColouriseCmakeDoc(unsigned int startPos, int length, int, WordList *              break;          case SCE_CMAKE_COMMENT: -            if ( cNextChar == '\n' || cNextChar == '\r' ) { -                // Special case: -                if ( cCurrChar == '\\' ) { +            if ( cCurrChar == '\n' || cCurrChar == '\r' ) { +                if ( styler.SafeGetCharAt(i-1) == '\\' ) {                      styler.ColourTo(i-2,state); -                    styler.ColourTo(i,SCE_CMAKE_DEFAULT); +                    styler.ColourTo(i-1,SCE_CMAKE_DEFAULT);                  }                  else { -                    styler.ColourTo(i,state); +                    styler.ColourTo(i-1,state);                      state = SCE_CMAKE_DEFAULT;                  }              } @@ -335,10 +334,7 @@ static void ColouriseCmakeDoc(unsigned int startPos, int length, int, WordList *              break;          } -        if ( state == SCE_CMAKE_COMMENT) { -            styler.ColourTo(i,state); -        } -        else if ( state == SCE_CMAKE_STRINGDQ || state == SCE_CMAKE_STRINGLQ || state == SCE_CMAKE_STRINGRQ ) { +        if ( state == SCE_CMAKE_STRINGDQ || state == SCE_CMAKE_STRINGLQ || state == SCE_CMAKE_STRINGRQ ) {              bool bIngoreNextDollarSign = false;              if ( bVarInString && cCurrChar == '$' ) {  | 
