diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/LexHTML.cxx | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/LexHTML.cxx b/src/LexHTML.cxx index 8feaea769..b822852a5 100644 --- a/src/LexHTML.cxx +++ b/src/LexHTML.cxx @@ -668,11 +668,9 @@ static void ColouriseHyperTextDoc(unsigned int startPos, int length, int initSty inScriptType = eNonHtmlScriptPreProc; else inScriptType = eNonHtmlPreProc; - // fold whole script - if (foldHTMLPreprocessor){ + // Fold whole script, but not if the XML first tag (all XML-like tags in this case) + if (foldHTMLPreprocessor && (scriptLanguage != eScriptXML)) { levelCurrent++; - if (scriptLanguage == eScriptXML) - levelCurrent--; // no folding of the XML first tag (all XML-like tags in this case) } // should be better ch = styler.SafeGetCharAt(i); @@ -796,10 +794,11 @@ static void ColouriseHyperTextDoc(unsigned int startPos, int length, int initSty inScriptType = eNonHtmlScript; else inScriptType = eHtml; - scriptLanguage = eScriptNone; - // unfold all scripting languages - if (foldHTMLPreprocessor) + // Unfold all scripting languages, except for XML tag + if (foldHTMLPreprocessor && (scriptLanguage != eScriptXML)) { levelCurrent--; + } + scriptLanguage = eScriptNone; continue; } ///////////////////////////////////// |