<?xml version="1.0"?>
<SyntaxDefinition name="Markdown Highlighting"
                  xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008" >
  <!--艳红-->
  <Color name="Heading1" foreground="#FF4C55" fontWeight="bold"/>
  <!--橙红-->
  <Color name="Heading2" foreground="#FF6A00" fontWeight="bold"/>
  <!--深绿-->
  <Color name="Heading3" foreground="#008F00" fontWeight="bold"/>
  <!--深青-->
  <Color name="Heading4" foreground="#008E82" fontWeight="bold"/>
  <!--蓝-->
  <Color name="Heading5" foreground="#0755D1" fontWeight="bold"/>
  <!--紫-->
  <Color name="Heading6" foreground="#C100AE" fontWeight="bold"/>

  <!--代码片段-->
  <Color name="InlineCode" foreground="#FFF02960" />

  <!--代码块-->
  <Color name="Code" foreground="#FF659753" />

  <!--中文书名号-->
  <Color name="BookTitle" foreground="DarkCyan" />
  
  <!--中文引号-->
  <Color name="ChineseDoubleQuoter" foreground="#D13F62" />
  
  <!--中文单引号-->
  <Color name="ChineseSingleQuoter" foreground="#DB8AA7" />

  <!--发文号-->
  <Color name="FileNumber" foreground="MediumVioletRed" />

  <!--土黄-->
  <Color name="Link" foreground="#B5651B" fontStyle="normal" underline="false"/>
  <Color name="Strong" foreground="darkblue" fontWeight="bold" exampleText="应当**重点强调**这个项目" />

  <!--橙红-->
  <!--<Color name="List" foreground="#FF742D" fontStyle="normal"/>-->

  <!--深青-->
  <!--<Color name="OrderList" foreground="#1CEC8D" fontStyle="normal"/>-->

  <Color name="Emphasis" fontStyle="italic" foreground="#C14DC1" exampleText="*this* is important!"/>
  <!--这行本应是倾斜(italic),但宋体倾斜效果很差,故之前仅以色彩区别,但这在逻辑上讲不通,于是恢复-->

  <Color name="Normal" foreground="Black" />
  <Color name="Del" foreground="Red" exampleText="~this~ is wrong!"/>
  <!--fontStyle="italic" 斜体效果添加后,如果添加了转义字符,会导致转义字符\也被斜体化,看起来像条竖线。 foreground="#3270FF"-->

  <!-- HTML元素色彩列表 -->
  <Color name="Comment" foreground="DarkSlateGray" exampleText="&lt;!-- comment --&gt;" />
  <Color name="Digits" foreground="DarkBlue" exampleText="&lt;digits&gt;0123456789&lt;/digits&gt;" />
  <Color name="ScriptTag" foreground="#FF8B008B" exampleText="&lt;script&gt;alert('Hello World!');&lt;/script&gt;" />
  <Color name="JavaScriptTag" foreground="#FF8B008B" exampleText="&lt;script lang=&quot;JavaScript&quot;&gt;alert('Hello World!');&lt;/script&gt;" />
  <Color name="JScriptTag" foreground="#FF8B008B" exampleText="&lt;script lang=&quot;JScript&quot;&gt;Response.Write(&quot;Hello World!&quot;);&lt;/script&gt;" />
  <Color name="VBScriptTag" foreground="#FF8B008B" exampleText="&lt;script lang=&quot;VBScript&quot;&gt;Response.Write(&quot;Hello World!&quot;)&lt;/script&gt;" />
  <Color name="UnknownScriptTag" foreground="#FF8B008B" exampleText="&lt;script la&gt;alert('Hello World!');&lt;/script&gt;" />
  <Color name="HtmlTag" foreground="#FF8B008B" exampleText="&lt;html&gt;Hello World!/html&gt;" />
  <Color name="Tags" foreground="#FF8B008B" exampleText="&lt;html&gt;Hello World! &lt;test /&gt;&lt;/html&gt;" />
  <Color name="Attributes" foreground="Red" exampleText="&lt;html background='green'&gt;Hello World! &lt;test /&gt;&lt;/html&gt;" />
  <Color name="Slash" foreground="DarkMagenta" exampleText="&lt;html background='green'&gt;Hello World! &lt;test /&gt;&lt;/html&gt;" />
  <Color name="Assignment" foreground="Blue" exampleText="&lt;html background='green'&gt;Hello World! &lt;test /&gt;&lt;/html&gt;" />
  <Color name="String" foreground="Blue" exampleText="&lt;html background='green'&gt;Hello World! &lt;test /&gt;&lt;/html&gt;" />
  <Color name="EntityReference" foreground="Blue" exampleText="&lt;html background='green'&gt;Hello&amp;nbsp;World! &lt;test /&gt;&lt;/html&gt;" />
  <Color name="Entities" foreground="#FF008000" exampleText="&lt;html background='green'&gt;Hello&amp;nbsp;World! &lt;test /&gt;&lt;/html&gt;" />
  <Color name="UnknownAttribute" foreground="Blue" exampleText="&lt;html foo='bar' background='green'&gt;Hello&amp;nbsp;World! &lt;test /&gt;&lt;/html&gt;" />
  <!-- End HTML元素色彩列表-->

  <Color name="AnswerHeader" foreground="Blue" />

  <RuleSet ignoreCase="true">

    <!--方块文本区域头,用于显示类似一对巨型方括号括起来的文本-->
    <Rule foreground="deepskyblue" fontWeight="bold">
      ^[  ]{0,3}(\[[  \t]*(?!(.*\].*)))
    </Rule>
    <!--方块文本区域尾-->
    <Rule foreground="deepskyblue" fontWeight="bold">
      ^[  ]{0,3}\]
    </Rule>
    <!--方块文本区域不支持分隔线,这与自定义折叠区不同。-->
    
    <!--仿C#的折叠区域-->
    <!--自定义折叠区头部-->
    <Rule foreground="deepskyblue" fontWeight="bold">
      ^[  ]{0,3}([rrRR][eeEE][ggGG][iiII][ooOO][nnNN][  \t]*)?([!?!?iweqiweqWEQIWEQI][  \t]*)?\{[  \t]*(?!(.*\}.*))
    </Rule>
    <!--自定义折叠区尾部-->
    <Rule foreground="deepskyblue" fontWeight="bold">
      ^[  ]{0,3}\}[  \t]*([rrRR][eeEE][ggGG][iiII][ooOO][nnNN][  \t]*)?
    </Rule>
    <!--自定义折叠区内部分割线-->
    <Rule foreground="deepskyblue" fontWeight="bold">
      ^[  ]{0,3}[.。]{3,}[  \t]{0,}[rrRR][eeEE][ggGG][iiII][ooOO][nnNN][  \t]{0,}.{0,}?[.。]{3,}[  \t]{0,}$
    </Rule>

    <!--Code会导致二级列表被当成Code-->
    <Span color="InlineCode" multiline="false">
      <Begin>(?&lt;=[^\\])?`</Begin>
      <End>(?&lt;=[^\\])?`</End>
    </Span>

    <!--这俩不能加,加上会冲突-->
    <!--<Span foreground="Blue" multiline="false">
      <Begin>\[</Begin>
      <End>\]</End>
    </Span>
    <Span foreground="DarkCyan" multiline="false">
      <Begin>[(\(]</Begin>
      <End>[)\)]</End>
    </Span>-->

    <Span foreground="DarkCyan" multiline="false">
      <Begin>——[  \t]{0,}《</Begin>
      <End>》</End>
    </Span>
    
    <!--会与注释、TaskList、页眉、页脚、文档标题等冲突。-->
    <!--<Span color="Code" multiline="true">
      <Begin>^\t{1,}[^*+-][^\s]</Begin>
      <End>^(?!\t)</End>
    </Span>
    <Span color="Code" multiline="true">
      <Begin>^[ ]{4,}\t*[^*+-][^\s]</Begin>
      <End>^(?![ ]{4})</End>
    </Span>-->

    <!--Code-->
    <!--代码块中的行,可以用贪婪型元字符-->
    <Rule color="Code">
      ^[  ]{4,}.*$
    </Rule>
    <Rule color="Code">
      ^\t{1,}.*$
    </Rule>
    <!-- End Code -->

    <!--书名号-->
    <Span color="BookTitle" multiline="false">
      <Begin>《</Begin>
      <End>》</End>
    </Span>

    <Span color="ChineseDoubleQuoter" multiline="false">
      <Begin>“</Begin>
      <End>”</End>
    </Span>

    <Span color="ChineseSingleQuoter" multiline="false">
      <Begin>‘</Begin>
      <End>’</End>
    </Span>

    <Span color="FileNumber" multiline="false">
      <Begin>〔\d{0,}</Begin>
      <End>〕\d{0,}号</End>
    </Span>

    <!--无序列表 -->
    <!--<Rule foreground="#1FA787" fontWeight="bold">
      ^[  ]{0,3}\*\s+.*
    </Rule>-->
    <!--无序列表用这个会与加粗、倾斜冲突-->

    <Rule foreground="#1FA787" fontWeight="bold">
      ^[  ]{0,3}\+[  \t]+.*$
    </Rule>
    <Rule foreground="#1FA787" fontWeight="bold">
      ^[  ]{0,3}-[  \t]+.*$
    </Rule>

    <Rule foreground="#1FA787" fontWeight="bold">
      ^[  ]{0,3}\*[  \t]+.*$
    </Rule>
    <!--无序列表用这个会与加粗、倾斜冲突-->

    <Rule foreground="#1FA787" fontWeight="bold">
      ^[  ]{0,3}\+.*$
    </Rule>
    <Rule foreground="#1FA787" fontWeight="bold">
      ^[  ]{0,3}-.*$
    </Rule>
    <Rule foreground="#1FA787" fontWeight="bold">
      ^[  ]{0,3}-.*$
    </Rule>
    
    <!--在行首用于表示步骤的标记(Step Mark)-->
    <Rule foreground="whitesmoke" background="#3542DD" fontWeight="bold">
      ^[  ]{0,3}\[[  ]{0,}[sSsS]([tTtT][eEeE][pPpP]){0,1}[  ]{0,}(([bBbB]([eEeE][gGgG][iIiI][nNnN]){0,1})|([eEeE]([nNnN][dDdD]){0,1})){0,1}\]
    </Rule>

    <!--BlockQuote,引用-->
    <!--引用块中的行也可以是贪婪型元字符-->
    <Rule foreground="white" background="Blue">
      ^[  ]{0,3}([>〉》][  \t]{0,}){0,}[>〉》]
    </Rule>
    
    <!--中文公文五级标题-->
    <!--第一级:一、-->
    <Rule foreground="Black" fontWeight="bold">
      ^[  ]{0,3}[一二三四五六七八九○十]{1,}[、.].*$
    </Rule>

    <!--第二级:(一)-->
    <Rule foreground="Black" fontWeight="bold">
      ^[  ]{0,3}([一二三四五六七八九○十]{1,}).*$
    </Rule>

    <!--第三级:1.-->
    <Rule foreground="Black" fontWeight="bold">
      ^[  ]{0,3}[12345678901234567890]{1,}[、.].*$
    </Rule>

    <!--第四级:1.-->
    <Rule foreground="Black" fontWeight="bold">
      ^[  ]{0,3}([12345678901234567890]{1,}).*$
    </Rule>

    <!--第三级:1.-->
    <Rule foreground="Black" fontWeight="bold">
      ^[  ]{0,3}[①②③④⑤⑥⑦⑧⑨⑩]{1,}.*$
    </Rule>

    <!--重点关注,这容易与用户自定义前导字符冲突,最好改由用户自己定义高亮-->
    <!--<Rule foreground="White" background="#FFD34330">
      ^(?!=\t)[  ]{0,3}\t*[★●◆■▲]
    </Rule>

    <Rule foreground="White" background="#FF39A327">
      ^(?!=\t)[  ]{0,3}\t*[☆○◎◇□△§※]
    </Rule>-->
    
    <!--以美元开头的行,便于快速输入,因为允许用户自定义这个开头,所以只能放弃。-->
    <!--<Rule foreground="#FFFF5947">
      ^[$]
    </Rule>-->

    <!--分号开头的行是注释,不会被编译到最终文档中去。2016年2月4日去除顶格要求-->
    <!--四个以上空格开头的是代码块-->
    <Rule foreground="#277212">
      ^[  ]{0,3}[;;](?!(([::])|([tTTt][oOoO][dDdD][oOoO][::])|([dDdD][oOoO][nNnN][eEeE][::])|([dDdD][oOoO][iIiI][nNnN][gGgG][::])|([pPpP][mMmM][::])|(演示(模式)?[::])|(\[?([mMmM][eEeE][nNnN][uUuU])\][::])|(\[(菜单)\]?)[::]))+.*$
    </Rule>
    <!--;TODO:标记-->
    <Rule foreground="Red" fontWeight="bold">
      ^[   ]{0,3}[;;]([tTTt][oOoO][dDdD][oOoO])?[::]
    </Rule>
    <!--;DONE:标记-->
    <Rule foreground="Blue" fontWeight="bold">
      ^[   ]{0,3}[;;]([dDdD][oOoO][nNnN][eEeE])?[::]
    </Rule>
    <!--;DOING:标记-->
    <Rule foreground="Green" fontWeight="bold">
      ^[   ]{0,3}[;;]([dDdD][oOoO][iIiI][nNnN][gGgG])?[::]
    </Rule>
    <!--演示模式标记-->
    <Rule foreground="Blue" fontWeight="bold">
      ^[   ]{0,3}[;;](([pPpP][mMmM])|(演示(模式)?))[::]
    </Rule>
    <!--编译一级标题菜单标记-->
    <Rule foreground="Blue" fontWeight="bold">
      ^[   ]{0,3}[;;](\[?(([mMmM][eEeE][nNnN][uUuU])|(菜单))\]?)[::]
    </Rule>


    <!--第二种注释,会出现在编译后的html文件中-->
    <!--四个以上空格开头的是代码块-->
    <Rule foreground="#7632FF">
      (?&lt;=(^([  ]{0,3})|([!!][ ├│└]{0,})))[::]+.*$
    </Rule>

    <!--树型文字表开始部分-->
    <Rule foreground="#FF2D4D">
      ^[!!][│├ └ ]{0,}
    </Rule>
    
    <!--任务列表项标记-->
    <!--格式化时必须顶格,否则会与Code冲突-->
    <!--没有减号当作有减号处理,表示未完成
    有加号表示已完成
    减号在正则中不需要转义,加号需要转义-->
    <!--未开始的任务列表项-->
    <Rule background="Red" foreground="White" fontWeight="bold">
      ^[  ]{0,3}\[[  \t]*[\--][  \t]*\]
    </Rule>
    <!--未开始任务列表项的文本-->
    <Rule foreground="Red">
      (?&lt;=^[  ]{0,3}\[[  \t]*[\--][  \t]*\][  \t]*)[^//]+$
    </Rule>

    <!--正在进行的任务列表项-->
    <Rule background="Green" foreground="White" fontWeight="bold">
      ^[  ]{0,3}\[[  \t]*[\%%][  \t]*\]
    </Rule>
    <!--正在进行的任务列表项的文本加下划线-->
    <Rule foreground="Green">
      (?&lt;=^[  ]{0,3}\[[  \t]*[\%%][  \t]*\][  \t]*)[^//]+$
    </Rule>

    <!--已完成的任务列表项-->
    <Rule background="Blue" foreground="White" fontWeight="bold">
      ^[  ]{0,3}\[[  \t]*[\++][  \t]*\]
    </Rule>
    <!--已完成的任务列表项的文本加删除线-->
    <Rule foreground="Blue" strikeline="true">
      (?&lt;=^[  ]{0,3}\[[  \t]*[\++][  \t]*\][  \t]*)[^//]+$
    </Rule>

    <!--废弃的列表项目-->
    <Rule background="Brown" foreground="White" fontWeight="bold">
      ^[  ]{0,3}\[[  \t]*[\##][  \t]*\]
    </Rule>
    <!--已废弃的任务列表项的文本加删除线-->
    <Rule foreground="Brown" strikeline="true">
      (?&lt;=^[  ]{0,3}\[[  \t]*[\##][  \t]*\][  \t]*)[^//]+$
    </Rule>

    <!--#endregion of 任务列表-->

    <!--时间标记-->
    <!--YYYY-MM-DD-->
    <!--<Rule foreground="DarkBlue" fontWeight="bold">
      ^[  ]{0,3}\[((((1[6-9]|[2-9]\d)\d{2})[-.,,。-、./年](0?[13578]|1[02])[-.,,。-、./月](0?[1-9]|[12]\d|3[01])日{0,1})|(((1[6-9]|[2-9]\d)\d{2})[-.,,。-、./年](0?[13456789]|1[012])[-.,,。-、./月](0?[1-9]|[12]\d|30)日{0,1})|(((1[6-9]|[2-9]\d)\d{2})[-.,,。-、./年]0?2[-.,,。-、./月](0?[1-9]|1\d|2[0-8])日{0,1})|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))[-.,,。-、./年]0?2-29[-.,,。-、./月])日{0,1})\]
    </Rule>-->

    <!--无任务状态标记-->
    <Rule foreground="DarkBlue" fontWeight="bold">
      ^[  ]{0,3}\[\d{4,4}[-.,,。-、./年][01]{0,1}\d[-.,,。-、./月][0123]{0,1}\d日{0,1}([  ]{1,}\d{1,2}[::]\d{1,2}){0,1}\][^\[]
    </Rule>

    <!--未开始-->
    <Rule foreground="Red" fontWeight="bold">
      ^[  ]{0,3}\[\d{4,4}[-.,,。-、./年][01]{0,1}\d[-.,,。-、./月][0123]{0,1}\d日{0,1}([  ]{1,}\d{1,2}[::]\d{1,2}){0,1}\]\[[\--]\]
    </Rule>

    <!--正在进行-->
    <Rule foreground="Green" fontWeight="bold">
      ^[  ]{0,3}\[\d{4,4}[-.,,。-、./年][01]{0,1}\d[-.,,。-、./月][0123]{0,1}\d日{0,1}([  ]{1,}\d{1,2}[::]\d{1,2}){0,1}\]\[[\%%]\]
    </Rule>

    <!--完成-->
    <Rule foreground="Blue" fontWeight="bold">
      ^[  ]{0,3}\[\d{4,4}[-.,,。-、./年][01]{0,1}\d[-.,,。-、./月][0123]{0,1}\d日{0,1}([  ]{1,}\d{1,2}[::]\d{1,2}){0,1}\]\[[\++]\]
    </Rule>

    <!--废弃-->
    <Rule foreground="Brown" fontWeight="bold">
      ^[  ]{0,3}\[\d{4,4}[-.,,。-、./年][01]{0,1}\d[-.,,。-、./月][0123]{0,1}\d日{0,1}([  ]{1,}\d{1,2}[::]\d{1,2}){0,1}\]\[[\##]\]
    </Rule>

    <!--<Rule foreground="#970FAA">
      ^[  ]{0,3}\[((((1[6-9]|[2-9]\d)\d{2})年(0?[13578]|1[02])月(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})年(0?[13456789]|1[012])月(0?[1-9]|[12]\d|30)日)|(((1[6-9]|[2-9]\d)\d{2})年0?2月(0?[1-9]|1\d|2[0-8])日)|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))年0?2-29月)日)\]
    </Rule>-->

    <!--DD/MM/YYYY-->
    <!--<Rule foreground="#970FAA">
      ^[  ]{0,3}\[(((0[1-9]|[12][0-9]|3[01])/((0[13578]|1[02]))|((0[1-9]|[12][0-9]|30)/(0[469]|11))|(0[1-9]|[1][0-9]|2[0-8])/(02))/([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3}))|(29/02/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))\]
    </Rule>-->

    <!--End of Date-->

    <!--倍数放大显示文本,可在1-10倍中放大显示-->
    <Rule foreground="DarkCyan" fontWeight="bold">
      ^[  ]{0,3}&lt;[12345678901234567890]{1,}([.。][12345678901234567890]{1,})?&gt;.*$
    </Rule>
    
    
    <!--文档标题,必须顶格,否则会与Code冲突-->
    <Rule foreground="Blue" fontWeight="bold">
      ^[  ]{0,3}%+.*$
    </Rule>
    <Rule foreground="Blue" fontWeight="bold">
      ^[  ]{0,3}[TtTt][IiIi][TtTt][LlLl][EeEe][>〉]+.*$
    </Rule>
    <Rule foreground="Blue" fontWeight="bold">
      ^[  ]{0,3}标题[>〉]+.*$
    </Rule>

    <!--页眉,必须顶格,否则会与Code冲突-->
    <Rule foreground="Blue" fontWeight="bold">
      ^[  ]{0,3}~+.*$
    </Rule>

    <!--作者信息(即页脚),必须顶格,否则会与Code冲突-->
    <Rule foreground="Blue" fontWeight="bold">
      ^[  ]{0,3}·+.*$
    </Rule>
    <Rule foreground="Blue" fontWeight="bold">
      ^[  ]{0,3}@+.*$
    </Rule>

    <!--有序列表-->
    <Rule foreground="#D86B43" fontWeight="bold">
      ^[  ]{0,3}[01234567890123456789]{1,}\..*$
    </Rule>

    <!--二维文字表,单元格分界字符。-->
    <!--注意:不能加粗,否则当两行(如标题行与单元格行)中分界符数目不一致时,总是无法对齐的。-->
    <Rule foreground="#FF546D" fontWeight="normal">
      [||]
    </Rule>

    <!--H1-->
    <Rule color="Heading1">
      ^[##][^##].*$
    </Rule>
    <!-- End H1 -->

    <!--H2-->
    <Rule color="Heading2">
      ^[##]{2}[^##].*$
    </Rule>
    <!-- End H2 -->

    <!--H3-->
    <Rule color="Heading3">
      ^[##]{3}[^##].*$
    </Rule>
    <!-- End H3 -->

    <!--H4-->
    <Rule color="Heading4">
      ^[##]{4}[^##].*$
    </Rule>
    <!-- End H4 -->

    <!--H5-->
    <Rule color="Heading5">
      ^[##]{5}[^##].*$
    </Rule>
    <!-- End H5 -->

    <!--H6-->
    <Rule color="Heading6">
      ^[##]{6}.*$
    </Rule>
    <!-- End H6 -->

    <!-- Code -->
    <!--<Rule color="Code">
      `.*`
    </Rule>-->

    <!-- URL -->
    <!--用问号表示非贪婪型匹配-->
    <Rule color="Link">
      !?\[.*?\]\(.*?\)
    </Rule>
    <Rule color="Link">
      !?\[.*?\]\[.*?\]
    </Rule>

    <!--加粗-->
    <!--用问号表示非贪婪型匹配-->
    <!--<Rule color="Strong">-->
    <!--\*\*.*?\*\*-->
    <!--</Rule>-->
    <Span color="Strong" begin="\*\*" end="\*\*" multiline="false"/>
    
    <Span color="Strong" multiline="false">
      <Begin>__</Begin>
      <End>__</End>
    </Span>

    <!--倾斜-->
    <!--用问号表示非贪婪型匹配-->
    <!--<Rule color="Emphasis">
      \*(?![ ]).*?\*
    </Rule>-->
    <Span color="Emphasis" begin="\*(?=(.*\*.*))" end="\*" multiline="false"/>

    <!--太容易与链接冲突,取消之-->
    <!--<Span color="Emphasis" multiline="false">
      <Begin>_</Begin>
      <End>_</End>
    </Span>-->

    <!--下划线-->
    <Span foreground="Brown" multiline="false" underline="true">
      <Begin>&lt;[uU]&gt;</Begin>
      <End>&lt;/[uU]&gt;</End>
    </Span>

    <!--删除线-->
    <Span foreground="Brown" multiline="false" strikeline="true">
      <Begin>[\[【][==]</Begin>
      <End>[==][\]】]</End>
    </Span>

    <Span foreground="Brown" multiline="false" strikeline="true">
      <Begin>&lt;[sS]&gt;</Begin>
      <End>&lt;/[sS]&gt;</End>
    </Span>

    <!--加这行是因为如果需要对*号转义,输出*号本身时,\*...\*仍然会被当成斜体处理。所以需要再转一下。-->
    <!--星号转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\*</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--下划线转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\_</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--反引号转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\`</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--反斜杠转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\\</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--大括号转义1-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\{</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--大括号转义2-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\}</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--中括号转义1-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\[</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--中括号转义2-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\]</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--小括号转义1-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\(</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--小括号转义2-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\)</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--#号转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\#</Begin>
      <End>(?&lt;=.)</End>
    </Span>


    <!--+号转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\+</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!---号转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\-</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!--.号转义-->
    <!--这个转义的高亮会造成有序列表的高亮定义出错。-->
    <!--<Span color="Normal" multiline ="false">
      <Begin>\\\.</Begin>
      <End>(?&lt;=.)</End>
    </Span>-->

    <!--!号转义-->
    <Span color="Normal" multiline ="false">
      <Begin>\\\!</Begin>
      <End>(?&lt;=.)</End>
    </Span>

    <!-- HTML相关规则 -->
    <Span color="Comment" multiline="true">
      <Begin>&lt;!--</Begin>
      <End>--&gt;</End>
    </Span>
    <Span ruleSet="JavaScriptSet" multiline="true">
      <Begin color="JavaScriptTag">&lt;script\ lang="JavaScript"&gt;</Begin>
      <End color="JavaScriptTag">&lt;/script&gt;</End>
    </Span>
    <Span ruleSet="JavaScriptSet" multiline="true">
      <Begin color="JavaScriptTag">&lt;script\s.*?text/javascript.*?&gt;</Begin>
      <End color="JavaScriptTag">&lt;/script&gt;</End>
    </Span>
    <Span multiline="true">
      <Begin color="JScriptTag">&lt;script\ lang="JScript"&gt;</Begin>
      <End color="JScriptTag">&lt;/script&gt;</End>
    </Span>
    <Span multiline="true">
      <Begin color="VBScriptTag">&lt;script\ lang="VBScript"&gt;</Begin>
      <End color="VBScriptTag">&lt;/script&gt;</End>
    </Span>
    <Span ruleSet="JavaScriptSet" multiline="true">
      <Begin color="ScriptTag">&lt;script&gt;</Begin>
      <End color="ScriptTag">&lt;/script&gt;</End>
    </Span>
    <Span multiline="true">
      <Begin color="UnknownScriptTag">&lt;script[^\w\d_]</Begin>
      <End color="UnknownScriptTag">&lt;/script&gt;</End>
    </Span>
    <!--这会导致&lt;=和&gt;=的高亮显示异常-->
    <!--<Span color="HtmlTag" ruleSet="HtmlTagSet" multiline="true">
      <Begin>&lt;</Begin>
      <End>&gt;</End>
    </Span>-->

    <!--TestPaper Rules-->
    <Span color="AnswerHeader">
      <Begin>【</Begin>
      <End>】</End>

      <!-- nested span for escape sequences -->
      <!--RuleSet>
        <Span begin="\\" end="." />
      </RuleSet-->
    </Span>

    <Keywords fontWeight="normal" foreground="Cyan" background="DarkCyan">
      <Word><<<信息></Word>
      <Word><信息>>></Word>
    </Keywords>

    <Keywords fontWeight="normal" foreground="Brown" background="PeachPuff">
      <Word>  试题>></Word>
    </Keywords>

    <Keywords fontWeight="normal" foreground="DarkGreen" background="PaleGreen">
      <Word> 错项>></Word>
    </Keywords>

    <Keywords fontWeight="normal" foreground="Blue" background="LightSkyBlue">
      <Word> 答案>></Word>
    </Keywords>

    <Keywords fontWeight="normal" foreground="White" background="Gray">
      <Word><<材料>></Word>
    </Keywords>

    <Keywords fontWeight="normal" foreground="Black" background="DarkGray">
      <Word><<出处>></Word>
    </Keywords>

    <Keywords fontWeight="normal" foreground="Black" background="LightGreen">
      <Word><<问题>></Word>
    </Keywords>

    <Keywords fontWeight="normal" fontStyle="normal" foreground="DarkMagenta">
      <Word>解析>></Word>
    </Keywords>

    <Keywords fontWeight="normal" fontStyle="normal" foreground="DarkCyan">
      <Word>类型>></Word>
      <Word>标题>></Word>
      <Word>日期>></Word>
      <Word>作者>></Word>
      <Word>辑录>></Word>
      <Word>缉录>></Word>
      <Word>电邮>></Word>
      <Word>备注>></Word>
      <Word><<类型</Word>
      <Word><<标题</Word>
      <Word><<日期</Word>
      <Word><<作者</Word>
      <Word><<辑录</Word>
      <Word><<缉录</Word>
      <Word><<电邮</Word>
      <Word><<备注</Word>
    </Keywords>

    <!--结束符,若不提供,则很难处理折叠功能。-->
    <Keywords fontWeight="normal" foreground="Brown" background="PeachPuff">
      <Word>〓〓〓〓〓〓</Word>
    </Keywords>
    <!--End TestPaper Rules-->

  </RuleSet>

  <RuleSet name="JavaScriptSet">
    <Import ruleSet="JavaScript/" />
    <Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
  </RuleSet>
  <RuleSet name="EntityReferenceSet" ignoreCase="false">
    <Keywords color="Entities">
      <Word>aacute</Word>
      <Word>agrave</Word>
      <Word>acirc</Word>
      <Word>amp</Word>
      <Word>atilde</Word>
      <Word>aring</Word>
      <Word>auml</Word>
      <Word>aelig</Word>
      <Word>ccedil</Word>
      <Word>copy</Word>
      <Word>eacute</Word>
      <Word>egrave</Word>
      <Word>ecirc</Word>
      <Word>euml</Word>
      <Word>iacute</Word>
      <Word>igrave</Word>
      <Word>icirc</Word>
      <Word>iuml</Word>
      <Word>eth</Word>
      <Word>gt</Word>
      <Word>lt</Word>
      <Word>nbsp</Word>
      <Word>ntilde</Word>
      <Word>oacute</Word>
      <Word>ograve</Word>
      <Word>ocirc</Word>
      <Word>otilde</Word>
      <Word>ouml</Word>
      <Word>oslash</Word>
      <Word>quot</Word>
      <Word>reg</Word>
      <Word>szlig</Word>
      <Word>uacute</Word>
      <Word>ugrave</Word>
      <Word>ucirc</Word>
      <Word>uuml</Word>
      <Word>yacute</Word>
      <Word>thorn</Word>
      <Word>trade</Word>
      <Word>yuml</Word>
    </Keywords>
    <Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
  </RuleSet>
  <RuleSet name="HtmlTagSet" ignoreCase="false">
    <Keywords color="Slash">
      <Word>/</Word>
    </Keywords>
    <!--这个容易导致与HtmlTag的冲突,导致&lt;=和&gt;=表现得很是异常-->
    <!--<Keywords color="Assignment">
      <Word>=</Word>
    </Keywords>-->
    <Keywords color="Tags">
      <Word>!DOCTYPE</Word>
      <Word>A</Word>
      <Word>ABBR</Word>
      <Word>ACRONYM</Word>
      <Word>ADDRESS</Word>
      <Word>APPLET</Word>
      <Word>AREA</Word>
      <Word>B</Word>
      <Word>BASE</Word>
      <Word>BASEFONT</Word>
      <Word>BGSOUND</Word>
      <Word>BDO</Word>
      <Word>BIG</Word>
      <Word>BLINK</Word>
      <Word>BLOCKQUOTE</Word>
      <Word>BODY</Word>
      <Word>BR</Word>
      <Word>BUTTON</Word>
      <Word>CAPTION</Word>
      <Word>CENTER</Word>
      <Word>CITE</Word>
      <Word>CODE</Word>
      <Word>COL</Word>
      <Word>COLGROUP</Word>
      <Word>COMMENT</Word>
      <Word>DD</Word>
      <Word>DEL</Word>
      <Word>DFN</Word>
      <Word>DIR</Word>
      <Word>DIV</Word>
      <Word>DL</Word>
      <Word>DT</Word>
      <Word>EM</Word>
      <Word>EMBED</Word>
      <Word>FIELDSET</Word>
      <Word>FONT</Word>
      <Word>FORM</Word>
      <Word>FRAME</Word>
      <Word>FRAMESET</Word>
      <Word>H</Word>
      <Word>H1</Word>
      <Word>H2</Word>
      <Word>H3</Word>
      <Word>H4</Word>
      <Word>H5</Word>
      <Word>H6</Word>
      <Word>HEAD</Word>
      <Word>HR</Word>
      <Word>HTA:APPLICATION</Word>
      <Word>HTML</Word>
      <Word>I</Word>
      <Word>IFRAME</Word>
      <Word>IMG</Word>
      <Word>INPUT</Word>
      <Word>INS</Word>
      <Word>ISINDEX</Word>
      <Word>KBD</Word>
      <Word>LABEL</Word>
      <Word>LEGEnd</Word>
      <Word>LI</Word>
      <Word>LINK</Word>
      <Word>LISTING</Word>
      <Word>MAP</Word>
      <Word>MARQUEE</Word>
      <Word>MENU</Word>
      <Word>META</Word>
      <Word>MULTICOL</Word>
      <Word>NEXTID</Word>
      <Word>NOBR</Word>
      <Word>NOFRAMES</Word>
      <Word>NOSCRIPT</Word>
      <Word>OBJECT</Word>
      <Word>OL</Word>
      <Word>OPTGROUP</Word>
      <Word>OPTION</Word>
      <Word>P</Word>
      <Word>PARAM</Word>
      <Word>PLAINTEXT</Word>
      <Word>PRE</Word>
      <Word>Q</Word>
      <Word>S</Word>
      <Word>SAMP</Word>
      <Word>SCRIPT</Word>
      <Word>SELECT</Word>
      <Word>SERVER</Word>
      <Word>SMALL</Word>
      <Word>SOUND</Word>
      <Word>SPACER</Word>
      <Word>Span</Word>
      <Word>STRONG</Word>
      <Word>STYLE</Word>
      <Word>SUB</Word>
      <Word>SUP</Word>
      <Word>TABLE</Word>
      <Word>TBODY</Word>
      <Word>TD</Word>
      <Word>TEXTAREA</Word>
      <Word>TEXTFLOW</Word>
      <Word>TFOOT</Word>
      <Word>TH</Word>
      <Word>THEAD</Word>
      <Word>TITLE</Word>
      <Word>TR</Word>
      <Word>TT</Word>
      <Word>U</Word>
      <Word>VAR</Word>
      <Word>WBR</Word>
      <Word>XMP</Word>
    </Keywords>
    <Keywords color="Attributes">
      <Word>abbr</Word>
      <Word>accept-charset</Word>
      <Word>accept</Word>
      <Word>accesskey</Word>
      <Word>action</Word>
      <Word>align</Word>
      <Word>alink</Word>
      <Word>alt</Word>
      <Word>applicationname</Word>
      <Word>archive</Word>
      <Word>axis</Word>
      <Word>background</Word>
      <Word>behavior</Word>
      <Word>bgcolor</Word>
      <Word>bgproperties</Word>
      <Word>border</Word>
      <Word>bordercolor</Word>
      <Word>bordercolordark</Word>
      <Word>bordercolorligh</Word>
      <Word>borderstyle</Word>
      <Word>caption</Word>
      <Word>cellpadding</Word>
      <Word>cellspacing</Word>
      <Word>char</Word>
      <Word>charoff</Word>
      <Word>charset</Word>
      <Word>checked</Word>
      <Word>cite</Word>
      <Word>class</Word>
      <Word>classid</Word>
      <Word>clear</Word>
      <Word>code</Word>
      <Word>codetype</Word>
      <Word>color</Word>
      <Word>cols</Word>
      <Word>colspan</Word>
      <Word>compact</Word>
      <Word>content</Word>
      <Word>coords</Word>
      <Word>data</Word>
      <Word>datetime</Word>
      <Word>declare</Word>
      <Word>defer</Word>
      <Word>dir</Word>
      <Word>direction</Word>
      <Word>disabled</Word>
      <Word>dynsrc</Word>
      <Word>enctype</Word>
      <Word>face</Word>
      <Word>for</Word>
      <Word>frame</Word>
      <Word>frameborder</Word>
      <Word>framespacing</Word>
      <Word>gutter</Word>
      <Word>headers</Word>
      <Word>height</Word>
      <Word>href</Word>
      <Word>hreflang</Word>
      <Word>hspace</Word>
      <Word>http-equiv</Word>
      <Word>icon</Word>
      <Word>id</Word>
      <Word>ismap</Word>
      <Word>label</Word>
      <Word>language</Word>
      <Word>leftmargin</Word>
      <Word>link</Word>
      <Word>longdesc</Word>
      <Word>loop</Word>
      <Word>lowsrc</Word>
      <Word>marginheight</Word>
      <Word>marginwidth</Word>
      <Word>maximizebutton</Word>
      <Word>maxlength</Word>
      <Word>media</Word>
      <Word>method</Word>
      <Word>methods</Word>
      <Word>minimizebutton</Word>
      <Word>multiple</Word>
      <Word>name</Word>
      <Word>nohref</Word>
      <Word>noresize</Word>
      <Word>noshade</Word>
      <Word>nowrap</Word>
      <Word>object</Word>
      <Word>onabort</Word>
      <Word>onblur</Word>
      <Word>onchange</Word>
      <Word>onclick</Word>
      <Word>ondblclick</Word>
      <Word>onerror</Word>
      <Word>onfocus</Word>
      <Word>onkeydown</Word>
      <Word>onkeypress</Word>
      <Word>onkeyup</Word>
      <Word>onload</Word>
      <Word>onmousedown</Word>
      <Word>onmousemove</Word>
      <Word>onmouseout</Word>
      <Word>onmouseover</Word>
      <Word>onmouseup</Word>
      <Word>onreset</Word>
      <Word>onselect</Word>
      <Word>onsubmit</Word>
      <Word>onunload</Word>
      <Word>profile</Word>
      <Word>prompt</Word>
      <Word>readonly</Word>
      <Word>rel</Word>
      <Word>rev</Word>
      <Word>rows</Word>
      <Word>rowspan</Word>
      <Word>rules</Word>
      <Word>runat</Word>
      <Word>scheme</Word>
      <Word>scope</Word>
      <Word>scrollamount</Word>
      <Word>scrolldelay</Word>
      <Word>scrolling</Word>
      <Word>selected</Word>
      <Word>shape</Word>
      <Word>showintaskbar</Word>
      <Word>singleinstance</Word>
      <Word>size</Word>
      <Word>span</Word>
      <Word>src</Word>
      <Word>standby</Word>
      <Word>start</Word>
      <Word>style</Word>
      <Word>summary</Word>
      <Word>sysmenu</Word>
      <Word>tabindex</Word>
      <Word>target</Word>
      <Word>text</Word>
      <Word>title</Word>
      <Word>topmargin</Word>
      <Word>type</Word>
      <Word>urn</Word>
      <Word>usemap</Word>
      <Word>valign</Word>
      <Word>value</Word>
      <Word>valuetype</Word>
      <Word>version</Word>
      <Word>vlink</Word>
      <Word>vrml</Word>
      <Word>vspace</Word>
      <Word>width</Word>
      <Word>windowstate</Word>
      <Word>wrap</Word>
    </Keywords>
    <Span color="String">
      <Begin>"</Begin>
      <End>"</End>
    </Span>
    <Span color="String">
      <Begin>'</Begin>
      <End>'</End>
    </Span>
    <Rule color="UnknownAttribute">[\d\w_]+(?=(\s*=))</Rule>
    <Rule color="Digits">\b0[xX][0-9a-fA-F]+|(\b\d+(\.[0-9]+)?|\.[0-9]+)([eE][+-]?[0-9]+)?</Rule>
  </RuleSet>
  <!-- End HTML相关规则-->
</SyntaxDefinition>