diff options
author | nyamatongwe <unknown> | 2001-08-08 12:08:11 +0000 |
---|---|---|
committer | nyamatongwe <unknown> | 2001-08-08 12:08:11 +0000 |
commit | 9f4411a033f2513b91f7f50e3c1e77c570426132 (patch) | |
tree | 4d83666dcd66beaf3538d25d82d06129e080b402 | |
parent | c45e2b3e183b4f75b6570cc5d9eb09e2a0920c37 (diff) | |
download | scintilla-mirror-9f4411a033f2513b91f7f50e3c1e77c570426132.tar.gz |
Patch from Steve Lhomme to correct folding of XML files.
-rw-r--r-- | src/LexHTML.cxx | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/LexHTML.cxx b/src/LexHTML.cxx index 44ac25d61..b7e8c69b7 100644 --- a/src/LexHTML.cxx +++ b/src/LexHTML.cxx @@ -527,24 +527,32 @@ static void ColouriseHyperTextDoc(unsigned int startPos, int length, int initSty ///////////////////////////////////// // handle the start of PHP pre-processor = Non-HTML else if ((state != SCE_H_ASPAT) && - !isPHPStringState(state) && (state != SCE_HPHP_COMMENT) && - (ch == '<') && (chNext == '?')) { + !isPHPStringState(state) && + (state != SCE_HPHP_COMMENT) && + (ch == '<') && + (chNext == '?')) { styler.ColourTo(i - 1, StateToPrint); beforePreProc = state; scriptLanguage = segIsScriptingIndicator(styler, styler.GetStartSegment() + 2, i + 10, eScriptPHP); i++; i += PrintScriptingIndicatorOffset(styler, styler.GetStartSegment() + 2, i + 10); + if (scriptLanguage == eScriptXML) styler.ColourTo(i, SCE_H_XMLSTART); else styler.ColourTo(i, SCE_H_QUESTION); + state = StateForScript(scriptLanguage); + if (inScriptType == eNonHtmlScript) inScriptType = eNonHtmlScriptPreProc; else inScriptType = eNonHtmlPreProc; + // fold whole script 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); continue; |