117 lines
2.8 KiB
XML
117 lines
2.8 KiB
XML
<?xml version="1.0"?>
|
|
|
|
<!DOCTYPE MODE SYSTEM "xmode.dtd">
|
|
|
|
<MODE>
|
|
<PROPS>
|
|
<PROPERTY NAME="commentStart" VALUE="#*" />
|
|
<PROPERTY NAME="commentEnd" VALUE="*#" />
|
|
<PROPERTY NAME="lineComment" VALUE="##" />
|
|
<!-- Auto indent -->
|
|
<PROPERTY NAME="indentNextLines" VALUE="^\s*(#(foreach|if|elseif|else))\s*\(.*\)\s*"/>
|
|
<PROPERTY NAME="unindentThisLine" VALUE="^\s*#(end|elseif|else)\b.*"/>
|
|
</PROPS>
|
|
<RULES IGNORE_CASE="TRUE">
|
|
<!-- SGML comment -->
|
|
<SPAN TYPE="COMMENT1">
|
|
<BEGIN><!--</BEGIN>
|
|
<END>--></END>
|
|
</SPAN>
|
|
|
|
<!-- JavaScript -->
|
|
<SPAN TYPE="MARKUP" DELEGATE="JAVASCRIPT">
|
|
<BEGIN><SCRIPT</BEGIN>
|
|
<END></SCRIPT></END>
|
|
</SPAN>
|
|
|
|
<!-- stylesheet -->
|
|
<SPAN TYPE="MARKUP" DELEGATE="CSS">
|
|
<BEGIN><STYLE</BEGIN>
|
|
<END></STYLE></END>
|
|
</SPAN>
|
|
|
|
<!-- DTD instructions -->
|
|
<SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">
|
|
<BEGIN><!</BEGIN>
|
|
<END>></END>
|
|
</SPAN>
|
|
|
|
<!-- markup tags -->
|
|
<SPAN TYPE="MARKUP" DELEGATE="html::TAGS">
|
|
<BEGIN><</BEGIN>
|
|
<END>></END>
|
|
</SPAN>
|
|
|
|
<!-- SGML entities -->
|
|
<SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">
|
|
<BEGIN>&</BEGIN>
|
|
<END>;</END>
|
|
</SPAN>
|
|
<IMPORT DELEGATE="VELOCITY" />
|
|
</RULES>
|
|
|
|
<RULES SET="VELOCITY">
|
|
<SPAN TYPE="COMMENT2">
|
|
<BEGIN>#*</BEGIN>
|
|
<END>*#</END>
|
|
</SPAN>
|
|
|
|
<EOL_SPAN TYPE="COMMENT3">##</EOL_SPAN>
|
|
|
|
<SPAN TYPE="KEYWORD3" NO_LINE_BREAK="TRUE">
|
|
<BEGIN>${</BEGIN>
|
|
<END>}</END>
|
|
</SPAN>
|
|
|
|
<SEQ_REGEXP HASH_CHAR="$" TYPE="KEYWORD3"
|
|
>\$!?[A-z][A-z0-9._-]*</SEQ_REGEXP>
|
|
|
|
<KEYWORDS>
|
|
<KEYWORD1>#set</KEYWORD1>
|
|
<KEYWORD1>#foreach</KEYWORD1>
|
|
<KEYWORD1>#end</KEYWORD1>
|
|
<KEYWORD1>#if</KEYWORD1>
|
|
<KEYWORD1>#else</KEYWORD1>
|
|
<KEYWORD1>#elseif</KEYWORD1>
|
|
<KEYWORD1>#parse</KEYWORD1>
|
|
<KEYWORD1>#macro</KEYWORD1>
|
|
<KEYWORD1>#stop</KEYWORD1>
|
|
<KEYWORD1>#include</KEYWORD1>
|
|
</KEYWORDS>
|
|
</RULES>
|
|
|
|
<RULES SET="JAVASCRIPT" DEFAULT="MARKUP" IGNORE_CASE="TRUE">
|
|
<SEQ TYPE="MARKUP" DELEGATE="JAVASCRIPT2">></SEQ>
|
|
<!-- handle <SCRIPT SRC="..."> properly -->
|
|
<SEQ TYPE="MARKUP" DELEGATE="BACK_TO_HTML">SRC=</SEQ>
|
|
</RULES>
|
|
|
|
<RULES SET="JAVASCRIPT2"
|
|
ESCAPE="\"
|
|
IGNORE_CASE="FALSE"
|
|
HIGHLIGHT_DIGITS="TRUE"
|
|
DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">
|
|
|
|
<IMPORT DELEGATE="VELOCITY" />
|
|
<IMPORT DELEGATE="javascript::MAIN" />
|
|
</RULES>
|
|
|
|
<RULES SET="BACK_TO_HTML" DEFAULT="MARKUP">
|
|
<SEQ TYPE="MARKUP" DELEGATE="MAIN">></SEQ>
|
|
</RULES>
|
|
|
|
<RULES SET="CSS" DEFAULT="MARKUP">
|
|
<SEQ TYPE="MARKUP" DELEGATE="CSS2">></SEQ>
|
|
</RULES>
|
|
|
|
<RULES SET="CSS2"
|
|
IGNORE_CASE="TRUE"
|
|
HIGHLIGHT_DIGITS="TRUE"
|
|
DIGIT_RE="[\p{Digit}]+(pt|pc|in|mm|cm|em|ex|px|ms|s|%)"
|
|
NO_WORD_SEP="-_">
|
|
|
|
<IMPORT DELEGATE="VELOCITY" />
|
|
<IMPORT DELEGATE="css::MAIN" />
|
|
</RULES>
|
|
</MODE>
|