<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<head>
<style>.content {
  padding: 20px;
  height: 100%;
  width: 944px;
  margin-left: auto;
  margin-right: auto;
}
.fold {
  width: 20px;
  float: left;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.number {
  width: 45px;
  float: left;
  margin-right: 10px;
  text-align: right;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.line {
}
.content {
  font-family: "Monospace";
  font-size: 1em;
  background: #3f3f3f;
  color: White;
  width: 944px;
  padding: 20px;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}
font.Alert {
	color: Yellow;
	font-weight: bold;
}
font.Annotation {
   color: Yellow;
	font-style: italic;
}
font.Attribute {
   color: LightPink;
}
font.BaseN {
   color: Gold;
}
font.BuiltIn {
   color: Coral;
}
font.Char {
   color: Cyan;
}
font.Comment {
   color: Beige;
	font-style: italic;
}
font.CommentVar {
   color: LightBlue;
	font-style: italic;
}
font.Constant {
   color: White;
	font-weight: bold;
}
font.ControlFlow {
   color: DeepPink;
}
font.DataType {
   color: CadetBlue;
}
font.DecVal {
   color: MediumPurple;
	font-weight: bold;
}
font.Documentation {
   color: Gold;
	font-style: italic;
}
font.Error {
   color: Red;
	font-weight: bold;
}
font.Extension {
   color: DarkGray;
	font-weight: bold;
}
font.Float {
   color: DarkViolet;
	font-weight: bold;
}
font.Function {
   color: RosyBrown;
}
font.Import {
   color: PaleVioletRed;
}
font.Information {
   color: LightGreen;
	font-style: italic;
}
font.Keyword {
   color: LightGreen;
	font-weight: bold;
}
font.Normal {
   color: White;
}
font.Operator {
   color: Magenta;
}
font.Others {
   color: GreenYellow;
}
font.Preprocessor {
   color: DarkSeaGreen ;
	font-weight: bold;
}
font.RegionMarker {
   color: Plum;
}
font.SpecialChar {
   color: Plum;
	font-weight: bold;
}
font.SpecialString {
   color: LightBlue;
}
font.String {
   color: MediumAquaMarine;
}
font.Variable {
   color: Turquoise;
	font-weight: bold;
}
font.VerbatimString {
   color: LightSkyBlue;
}
font.Warning {
   color: Brown;
	font-weight: bold;
}

</style>
<title>Kamelon output</title>
</head>
<body>

<div class="content">
<div id="1" class="line"><font class="Comment">/*&nbsp;This&nbsp;file&nbsp;is&nbsp;part&nbsp;of&nbsp;the&nbsp;KDE&nbsp;libraries</font></br></div>
<div id="2" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;Copyright&nbsp;(C)&nbsp;2003,&nbsp;2004&nbsp;Anders&nbsp;Lund&nbsp;&lt;anders@alweb.dk&gt;</font></br></div>
<div id="3" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;Copyright&nbsp;(C)&nbsp;2003&nbsp;Hamish&nbsp;Rodda&nbsp;&lt;rodda@kde.org&gt;</font></br></div>
<div id="4" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;Copyright&nbsp;(C)&nbsp;2001,2002&nbsp;Joseph&nbsp;Wenninger&nbsp;&lt;jowenn@kde.org&gt;</font></br></div>
<div id="5" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;Copyright&nbsp;(C)&nbsp;2001&nbsp;Christoph&nbsp;Cullmann&nbsp;&lt;cullmann@kde.org&gt;</font></br></div>
<div id="6" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;Copyright&nbsp;(C)&nbsp;1999&nbsp;Jochen&nbsp;Wilhelmy&nbsp;&lt;digisnap@cs.tu-berlin.de&gt;</font></br></div>
<div id="7" class="line"></br></div>
<div id="8" class="line"></br></div>
<div id="9" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;You&nbsp;should&nbsp;have&nbsp;received&nbsp;a&nbsp;copy&nbsp;of&nbsp;the&nbsp;GNU&nbsp;Library&nbsp;General&nbsp;Public&nbsp;License</font></br></div>
<div id="10" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;along&nbsp;with&nbsp;this&nbsp;library;&nbsp;see&nbsp;the&nbsp;file&nbsp;COPYING.LIB.&nbsp;&nbsp;If&nbsp;not,&nbsp;write&nbsp;to</font></br></div>
<div id="11" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;the&nbsp;Free&nbsp;Software&nbsp;Foundation,&nbsp;Inc.,&nbsp;59&nbsp;Temple&nbsp;Place&nbsp;-&nbsp;Suite&nbsp;330,</font></br></div>
<div id="12" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;Boston,&nbsp;MA&nbsp;02111-1307,&nbsp;USA.</font></br></div>
<div id="13" class="line"><font class="Comment">*/</font></br></div>
<div id="14" class="line"></br></div>
<div id="15" class="line"><font class="RegionMarker">//BEGIN&nbsp;INCLUDES</font></br></div>
<div id="16" class="line"><font class="Preprocessor">#include&nbsp;</font><font class="Import">&quot;katehighlight.h&quot;</font></br></div>
<div id="17" class="line"><font class="Preprocessor">#include&nbsp;</font><font class="Import">&quot;katehighlight.moc&quot;</font></br></div>
<div id="18" class="line"></br></div>
<div id="19" class="line"><font class="Preprocessor">#include&nbsp;</font><font class="Import">&lt;kstaticdeleter.h&gt;</font></br></div>
<div id="20" class="line"><font class="Preprocessor">#include&nbsp;</font><font class="Import">&lt;kapplication.h&gt;</font></br></div>
<div id="21" class="line"></br></div>
<div id="22" class="line"><font class="Preprocessor">#include&nbsp;</font><font class="Import">&lt;qstringlist.h&gt;</font></br></div>
<div id="23" class="line"><font class="Preprocessor">#include&nbsp;</font><font class="Import">&lt;qtextstream.h&gt;</font></br></div>
<div id="24" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="25" class="line"></br></div>
<div id="26" class="line"><font class="RegionMarker">//BEGIN&nbsp;defines</font></br></div>
<div id="27" class="line"><font class="Comment">//&nbsp;same&nbsp;as&nbsp;in&nbsp;kmimemagic,&nbsp;no&nbsp;need&nbsp;to&nbsp;feed&nbsp;more&nbsp;data</font></br></div>
<div id="28" class="line"><font class="Preprocessor">#define&nbsp;KATE_HL_HOWMANY&nbsp;1024</font></br></div>
<div id="29" class="line"></br></div>
<div id="30" class="line"><font class="Comment">//&nbsp;min.&nbsp;x&nbsp;seconds&nbsp;between&nbsp;two&nbsp;dynamic&nbsp;contexts&nbsp;reset</font></br></div>
<div id="31" class="line"><font class="Attribute">static</font><font class="Normal">&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;KATE_DYNAMIC_CONTEXTS_RESET_DELAY&nbsp;=&nbsp;</font><font class="Float">30</font><font class="Normal">&nbsp;*&nbsp;</font><font class="Float">1000</font><font class="Normal">;</font></br></div>
<div id="32" class="line"></br></div>
<div id="33" class="line"><font class="Comment">//&nbsp;x&nbsp;is&nbsp;a&nbsp;QString.&nbsp;if&nbsp;x&nbsp;is&nbsp;&quot;true&quot;&nbsp;or&nbsp;&quot;1&quot;&nbsp;this&nbsp;expression&nbsp;returns&nbsp;&quot;true&quot;</font></br></div>
<div id="34" class="line"><font class="Preprocessor">#define&nbsp;IS_TRUE(x)&nbsp;x.lower()&nbsp;==&nbsp;QString(&quot;true&quot;)&nbsp;||&nbsp;x.toInt()&nbsp;==&nbsp;1</font></br></div>
<div id="35" class="line"><font class="RegionMarker">//END&nbsp;defines</font></br></div>
<div id="36" class="line"></br></div>
<div id="37" class="line"><font class="RegionMarker">//BEGIN&nbsp;&nbsp;Prviate&nbsp;HL&nbsp;classes</font></br></div>
<div id="38" class="line"></br></div>
<div id="39" class="line"><font class="Keyword">inline</font><font class="Normal">&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;kateInsideString&nbsp;(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;&amp;str,&nbsp;</font><font class="Extension">QChar</font><font class="Normal">&nbsp;ch)</font></br></div>
<div id="40" class="line"><font class="Normal">{</font></br></div>
<div id="41" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(</font><font class="Extension">uint</font><font class="Normal">&nbsp;i=</font><font class="Float">0</font><font class="Normal">;&nbsp;i&nbsp;&lt;&nbsp;str.length();&nbsp;i++)</font></br></div>
<div id="42" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(*(str.unicode()+i)&nbsp;==&nbsp;ch)</font></br></div>
<div id="43" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Keyword">true</font><font class="Normal">;</font></br></div>
<div id="44" class="line"></br></div>
<div id="45" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Keyword">false</font><font class="Normal">;</font></br></div>
<div id="46" class="line"><font class="Normal">}</font></br></div>
<div id="47" class="line"></br></div>
<div id="48" class="line"><font class="Keyword">class</font><font class="Normal">&nbsp;KateHlItem</font></br></div>
<div id="49" class="line"><font class="Normal">{</font></br></div>
<div id="50" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Keyword">public</font><font class="Normal">:</font></br></div>
<div id="51" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;KateHlItem(</font><font class="DataType">int</font><font class="Normal">&nbsp;attribute,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;context,</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId,&nbsp;</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId2);</font></br></div>
<div id="52" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">virtual</font><font class="Normal">&nbsp;~KateHlItem();</font></br></div>
<div id="53" class="line"></br></div>
<div id="54" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Keyword">public</font><font class="Normal">:</font></br></div>
<div id="55" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;caller&nbsp;must&nbsp;keep&nbsp;in&nbsp;mind:&nbsp;LEN&nbsp;&gt;&nbsp;0&nbsp;is&nbsp;a&nbsp;must&nbsp;!!!!!!!!!!!!!!!!!!!!!1</font></br></div>
<div id="56" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;Now,&nbsp;the&nbsp;function&nbsp;returns&nbsp;the&nbsp;offset&nbsp;detected,&nbsp;or&nbsp;0&nbsp;if&nbsp;no&nbsp;match&nbsp;is&nbsp;found.</font></br></div>
<div id="57" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;bool&nbsp;linestart&nbsp;isn't&nbsp;needed,&nbsp;this&nbsp;is&nbsp;equivalent&nbsp;to&nbsp;offset&nbsp;==&nbsp;0.</font></br></div>
<div id="58" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">virtual</font><font class="Normal">&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;checkHgl(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&amp;&nbsp;text,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;offset,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;len)&nbsp;=&nbsp;</font><font class="Float">0</font><font class="Normal">;</font></br></div>
<div id="59" class="line"></br></div>
<div id="60" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">virtual</font><font class="Normal">&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;lineContinue(){</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Keyword">false</font><font class="Normal">;}</font></br></div>
<div id="61" class="line"></br></div>
<div id="62" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">virtual</font><font class="Normal">&nbsp;</font><font class="Extension">QStringList</font><font class="Normal">&nbsp;*capturedTexts()&nbsp;{</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Float">0</font><font class="Normal">;}</font></br></div>
<div id="63" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">virtual</font><font class="Normal">&nbsp;KateHlItem&nbsp;*clone(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QStringList</font><font class="Normal">&nbsp;*)&nbsp;{</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Keyword">this</font><font class="Normal">;}</font></br></div>
<div id="64" class="line"></br></div>
<div id="65" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Attribute">static</font><font class="Normal">&nbsp;</font><font class="DataType">void</font><font class="Normal">&nbsp;dynamicSubstitute(</font><font class="Extension">QString</font><font class="Normal">&amp;&nbsp;str,&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QStringList</font><font class="Normal">&nbsp;*args);</font></br></div>
<div id="66" class="line"></br></div>
<div id="67" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;QMemArray&lt;KateHlItem*&gt;&nbsp;subItems;</font></br></div>
<div id="68" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;attr;</font></br></div>
<div id="69" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;ctx;</font></br></div>
<div id="70" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;region;</font></br></div>
<div id="71" class="line"></br></div>
<div id="72" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;start&nbsp;enable&nbsp;flags,&nbsp;nicer&nbsp;than&nbsp;the&nbsp;virtual&nbsp;methodes</font></br></div>
<div id="73" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;saves&nbsp;function&nbsp;calls</font></br></div>
<div id="74" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;alwaysStartEnable;</font></br></div>
<div id="75" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;customStartEnable;</font></br></div>
<div id="76" class="line"><font class="Normal">};</font></br></div>
<div id="77" class="line"></br></div>
<div id="78" class="line"><font class="Keyword">class</font><font class="Normal">&nbsp;KateHlContext</font></br></div>
<div id="79" class="line"><font class="Normal">{</font></br></div>
<div id="80" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Keyword">public</font><font class="Normal">:</font></br></div>
<div id="81" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;KateHlContext(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;&amp;</font><font class="Constant">_hlId</font><font class="Normal">,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;attribute,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;lineEndContext,</font><font class="DataType">int</font><font class="Normal">&nbsp;</font><font class="Constant">_lineBeginContext</font><font class="Normal">,</font></br></div>
<div id="82" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;</font><font class="Constant">_fallthrough</font><font class="Normal">,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;</font><font class="Constant">_fallthroughContext</font><font class="Normal">,&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;</font><font class="Constant">_dynamic</font><font class="Normal">);</font></br></div>
<div id="83" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">virtual</font><font class="Normal">&nbsp;~KateHlContext();</font></br></div>
<div id="84" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;KateHlContext&nbsp;*clone(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QStringList</font><font class="Normal">&nbsp;*args);</font></br></div>
<div id="85" class="line"></br></div>
<div id="86" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;QValueVector&lt;KateHlItem*&gt;&nbsp;items;</font></br></div>
<div id="87" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;hlId;&nbsp;</font><font class="Comment">///&lt;&nbsp;A&nbsp;unique&nbsp;highlight&nbsp;identifier.&nbsp;Used&nbsp;to&nbsp;look&nbsp;up&nbsp;correct&nbsp;properties.</font></br></div>
<div id="88" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;attr;</font></br></div>
<div id="89" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;ctx;</font></br></div>
<div id="90" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;lineBeginContext;</font></br></div>
<div id="91" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">/**&nbsp;</font><font class="Constant">@internal</font><font class="Comment">&nbsp;anders:&nbsp;possible&nbsp;escape&nbsp;if&nbsp;no&nbsp;rules&nbsp;matches.</font></br></div>
<div id="92" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;false&nbsp;unless&nbsp;'fallthrough=&quot;1|true&quot;'&nbsp;(insensitive)</font></br></div>
<div id="93" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;true,&nbsp;go&nbsp;to&nbsp;ftcxt&nbsp;w/o&nbsp;eating&nbsp;of&nbsp;string.</font></br></div>
<div id="94" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ftctx&nbsp;is&nbsp;&quot;fallthroughContext&quot;&nbsp;in&nbsp;xml&nbsp;files,&nbsp;valid&nbsp;values&nbsp;are&nbsp;int&nbsp;or&nbsp;#pop[..]</font></br></div>
<div id="95" class="line"><font class="Comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;see&nbsp;in&nbsp;KateHighlighting::doHighlight&nbsp;*/</font></br></div>
<div id="96" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;fallthrough;</font></br></div>
<div id="97" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;ftctx;&nbsp;</font><font class="Comment">//&nbsp;where&nbsp;to&nbsp;go&nbsp;after&nbsp;no&nbsp;rules&nbsp;matched</font></br></div>
<div id="98" class="line"></br></div>
<div id="99" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;dynamic;</font></br></div>
<div id="100" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;dynamicChild;</font></br></div>
<div id="101" class="line"><font class="Normal">};</font></br></div>
<div id="102" class="line"></br></div>
<div id="103" class="line"></br></div>
<div id="104" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="105" class="line"></br></div>
<div id="106" class="line"><font class="RegionMarker">//BEGIN&nbsp;STATICS</font></br></div>
<div id="107" class="line"><font class="Normal">KateHlManager&nbsp;*KateHlManager::</font><font class="Variable">s_self</font><font class="Normal">&nbsp;=&nbsp;</font><font class="Float">0</font><font class="Normal">;</font></br></div>
<div id="108" class="line"></br></div>
<div id="109" class="line"><font class="Attribute">static</font><font class="Normal">&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;trueBool&nbsp;=&nbsp;</font><font class="Keyword">true</font><font class="Normal">;</font></br></div>
<div id="110" class="line"><font class="Attribute">static</font><font class="Normal">&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;stdDeliminator&nbsp;=&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;(</font><font class="String">&quot;&nbsp;</font><font class="SpecialChar">\t</font><font class="String">.():!+,-&lt;=&gt;%&amp;*/;?[]^{|}~\</font><font class="SpecialChar">\&quot;</font><font class="String">);</font></br></div>
<div id="111" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="112" class="line"></br></div>
<div id="113" class="line"><font class="RegionMarker">//BEGIN&nbsp;NON&nbsp;MEMBER&nbsp;FUNCTIONS</font></br></div>
<div id="114" class="line"><font class="Attribute">static</font><font class="Normal">&nbsp;KateHlItemData::ItemStyles&nbsp;getDefStyleNum(</font><font class="Extension">QString</font><font class="Normal">&nbsp;name)</font></br></div>
<div id="115" class="line"><font class="Normal">{</font></br></div>
<div id="116" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsNormal&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsNormal;</font></br></div>
<div id="117" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsKeyword&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsKeyword;</font></br></div>
<div id="118" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsDataType&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsDataType;</font></br></div>
<div id="119" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsDecVal&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsDecVal;</font></br></div>
<div id="120" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsBaseN&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsBaseN;</font></br></div>
<div id="121" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsFloat&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsFloat;</font></br></div>
<div id="122" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsChar&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsChar;</font></br></div>
<div id="123" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsString&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsString;</font></br></div>
<div id="124" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsComment&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsComment;</font></br></div>
<div id="125" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsOthers&quot;</font><font class="Normal">)&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsOthers;</font></br></div>
<div id="126" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsAlert&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsAlert;</font></br></div>
<div id="127" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsFunction&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsFunction;</font></br></div>
<div id="128" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsRegionMarker&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsRegionMarker;</font></br></div>
<div id="129" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(name==</font><font class="String">&quot;dsError&quot;</font><font class="Normal">)&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsError;</font></br></div>
<div id="130" class="line"></br></div>
<div id="131" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;KateHlItemData::dsNormal;</font></br></div>
<div id="132" class="line"><font class="Normal">}</font></br></div>
<div id="133" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="134" class="line"></br></div>
<div id="135" class="line"><font class="Normal">KateHlItem::~KateHlItem()</font></br></div>
<div id="136" class="line"><font class="Normal">{</font></br></div>
<div id="137" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Comment">//kdDebug(13010)&lt;&lt;&quot;In&nbsp;hlItem::~KateHlItem()&quot;&lt;&lt;endl;</font></br></div>
<div id="138" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(</font><font class="Extension">uint</font><font class="Normal">&nbsp;i=</font><font class="Float">0</font><font class="Normal">;&nbsp;i&nbsp;&lt;&nbsp;subItems.size();&nbsp;i++)</font></br></div>
<div id="139" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">delete</font><font class="Normal">&nbsp;subItems[i];</font></br></div>
<div id="140" class="line"><font class="Normal">}</font></br></div>
<div id="141" class="line"></br></div>
<div id="142" class="line"><font class="DataType">void</font><font class="Normal">&nbsp;KateHlItem::dynamicSubstitute(</font><font class="Extension">QString</font><font class="Normal">&nbsp;&amp;str,&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QStringList</font><font class="Normal">&nbsp;*args)</font></br></div>
<div id="143" class="line"><font class="Normal">{</font></br></div>
<div id="144" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(</font><font class="Extension">uint</font><font class="Normal">&nbsp;i&nbsp;=&nbsp;</font><font class="Float">0</font><font class="Normal">;&nbsp;i&nbsp;&lt;&nbsp;str.length()&nbsp;-&nbsp;</font><font class="Float">1</font><font class="Normal">;&nbsp;++i)</font></br></div>
<div id="145" class="line"><font class="Normal">&nbsp;&nbsp;{</font></br></div>
<div id="146" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(str[i]&nbsp;==&nbsp;</font><font class="Char">'%'</font><font class="Normal">)</font></br></div>
<div id="147" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="148" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;c&nbsp;=&nbsp;str[i&nbsp;+&nbsp;</font><font class="Float">1</font><font class="Normal">].latin</font><font class="DecVal">1</font><font class="Normal">();</font></br></div>
<div id="149" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(c&nbsp;==&nbsp;</font><font class="Char">'%'</font><font class="Normal">)</font></br></div>
<div id="150" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;str.replace(i,&nbsp;</font><font class="Float">1</font><font class="Normal">,&nbsp;</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="151" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">else</font><font class="Normal">&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(c&nbsp;&gt;=&nbsp;</font><font class="Char">'0'</font><font class="Normal">&nbsp;&amp;&amp;&nbsp;c&nbsp;&lt;=&nbsp;</font><font class="Char">'9'</font><font class="Normal">)</font></br></div>
<div id="152" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="153" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;((</font><font class="Extension">uint</font><font class="Normal">)(c&nbsp;-&nbsp;</font><font class="Char">'0'</font><font class="Normal">)&nbsp;&lt;&nbsp;args-&gt;size())</font></br></div>
<div id="154" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="155" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;str.replace(i,&nbsp;</font><font class="Float">2</font><font class="Normal">,&nbsp;(*args)[c&nbsp;-&nbsp;</font><font class="Char">'0'</font><font class="Normal">]);</font></br></div>
<div id="156" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i&nbsp;+=&nbsp;((*args)[c&nbsp;-&nbsp;</font><font class="Char">'0'</font><font class="Normal">]).length()&nbsp;-&nbsp;</font><font class="Float">1</font><font class="Normal">;</font></br></div>
<div id="157" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="158" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">else</font></br></div>
<div id="159" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="160" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;str.replace(i,&nbsp;</font><font class="Float">2</font><font class="Normal">,&nbsp;</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="161" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--i;</font></br></div>
<div id="162" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="163" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="164" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="165" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="166" class="line"><font class="Normal">}</font></br></div>
<div id="167" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="168" class="line"></br></div>
<div id="169" class="line"></br></div>
<div id="170" class="line"><font class="RegionMarker">//BEGIN&nbsp;KateHlCStringChar</font></br></div>
<div id="171" class="line"><font class="Normal">KateHlCStringChar::KateHlCStringChar(</font><font class="DataType">int</font><font class="Normal">&nbsp;attribute,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;context,</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId,</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId2)</font></br></div>
<div id="172" class="line"><font class="Normal">&nbsp;&nbsp;:&nbsp;KateHlItem(attribute,context,regionId,regionId2)&nbsp;{</font></br></div>
<div id="173" class="line"><font class="Normal">}</font></br></div>
<div id="174" class="line"></br></div>
<div id="175" class="line"><font class="Comment">//&nbsp;checks&nbsp;for&nbsp;C&nbsp;escaped&nbsp;chars&nbsp;\n&nbsp;and&nbsp;escaped&nbsp;hex/octal&nbsp;chars</font></br></div>
<div id="176" class="line"><font class="Attribute">static</font><font class="Normal">&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;checkEscapedChar(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&amp;&nbsp;text,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;offset,&nbsp;</font><font class="DataType">int</font><font class="Normal">&amp;&nbsp;len)</font></br></div>
<div id="177" class="line"><font class="Normal">{</font></br></div>
<div id="178" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;i;</font></br></div>
<div id="179" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(text[offset]&nbsp;==&nbsp;</font><font class="Char">'</font><font class="SpecialChar">\\</font><font class="Char">'</font><font class="Normal">&nbsp;&amp;&amp;&nbsp;len&nbsp;&gt;&nbsp;</font><font class="Float">1</font><font class="Normal">)</font></br></div>
<div id="180" class="line"><font class="Normal">&nbsp;&nbsp;{</font></br></div>
<div id="181" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;offset++;</font></br></div>
<div id="182" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;len--;</font></br></div>
<div id="183" class="line"></br></div>
<div id="184" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">switch</font><font class="Normal">(text[offset])</font></br></div>
<div id="185" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="186" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'a'</font><font class="Normal">:&nbsp;</font><font class="Comment">//&nbsp;checks&nbsp;for&nbsp;control&nbsp;chars</font></br></div>
<div id="187" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'b'</font><font class="Normal">:&nbsp;</font><font class="Comment">//&nbsp;we&nbsp;want&nbsp;to&nbsp;fall&nbsp;through</font></br></div>
<div id="188" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'e'</font><font class="Normal">:</font></br></div>
<div id="189" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'f'</font><font class="Normal">:</font></br></div>
<div id="190" class="line"></br></div>
<div id="191" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'n'</font><font class="Normal">:</font></br></div>
<div id="192" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'r'</font><font class="Normal">:</font></br></div>
<div id="193" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'t'</font><font class="Normal">:</font></br></div>
<div id="194" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;&nbsp;</font><font class="Char">'v'</font><font class="Normal">:</font></br></div>
<div id="195" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'</font><font class="SpecialChar">\'</font><font class="Char">'</font><font class="Normal">:</font></br></div>
<div id="196" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'</font><font class="SpecialChar">\&quot;</font><font class="Char">'</font><font class="Normal">:</font></br></div>
<div id="197" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'?'</font><font class="Normal">&nbsp;:&nbsp;</font><font class="Comment">//&nbsp;added&nbsp;?&nbsp;ANSI&nbsp;C&nbsp;classifies&nbsp;this&nbsp;as&nbsp;an&nbsp;escaped&nbsp;char</font></br></div>
<div id="198" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'</font><font class="SpecialChar">\\</font><font class="Char">'</font><font class="Normal">:</font></br></div>
<div id="199" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;offset++;</font></br></div>
<div id="200" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len--;</font></br></div>
<div id="201" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">break</font><font class="Normal">;</font></br></div>
<div id="202" class="line"></br></div>
<div id="203" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'x'</font><font class="Normal">:&nbsp;</font><font class="Comment">//&nbsp;if&nbsp;it's&nbsp;like&nbsp;\xff</font></br></div>
<div id="204" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;offset++;&nbsp;</font><font class="Comment">//&nbsp;eat&nbsp;the&nbsp;x</font></br></div>
<div id="205" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len--;</font></br></div>
<div id="206" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;these&nbsp;for&nbsp;loops&nbsp;can&nbsp;probably&nbsp;be</font></br></div>
<div id="207" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;replaced&nbsp;with&nbsp;something&nbsp;else&nbsp;but</font></br></div>
<div id="208" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;for&nbsp;right&nbsp;now&nbsp;they&nbsp;work</font></br></div>
<div id="209" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;check&nbsp;for&nbsp;hexdigits</font></br></div>
<div id="210" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(i&nbsp;=&nbsp;</font><font class="Float">0</font><font class="Normal">;&nbsp;(len&nbsp;&gt;&nbsp;</font><font class="Float">0</font><font class="Normal">)&nbsp;&amp;&amp;&nbsp;(i&nbsp;&lt;&nbsp;</font><font class="Float">2</font><font class="Normal">)&nbsp;&amp;&amp;&nbsp;(text[offset]&nbsp;&gt;=&nbsp;</font><font class="Char">'0'</font><font class="Normal">&nbsp;&amp;&amp;&nbsp;text[offset]&nbsp;&lt;=&nbsp;</font><font class="Char">'9'</font><font class="Normal">&nbsp;||&nbsp;(text[offset]&nbsp;&amp;&nbsp;</font><font class="BaseN">0xdf</font><font class="Normal">)&nbsp;&gt;=&nbsp;</font><font class="Char">'A'</font><font class="Normal">&nbsp;&amp;&amp;&nbsp;(text[offset]&nbsp;&amp;&nbsp;</font><font class="BaseN">0xdf</font><font class="Normal">)&nbsp;&lt;=&nbsp;</font><font class="Char">'F'</font><font class="Normal">);&nbsp;i++)</font></br></div>
<div id="211" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="212" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;offset++;</font></br></div>
<div id="213" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len--;</font></br></div>
<div id="214" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="215" class="line"></br></div>
<div id="216" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(i&nbsp;==&nbsp;</font><font class="Float">0</font><font class="Normal">)</font></br></div>
<div id="217" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Float">0</font><font class="Normal">;&nbsp;</font><font class="Comment">//&nbsp;takes&nbsp;care&nbsp;of&nbsp;case&nbsp;'\x'</font></br></div>
<div id="218" class="line"></br></div>
<div id="219" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">break</font><font class="Normal">;</font></br></div>
<div id="220" class="line"></br></div>
<div id="221" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'0'</font><font class="Normal">:&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'1'</font><font class="Normal">:&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'2'</font><font class="Normal">:&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'3'</font><font class="Normal">&nbsp;:</font></br></div>
<div id="222" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'4'</font><font class="Normal">:&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'5'</font><font class="Normal">:&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'6'</font><font class="Normal">:&nbsp;</font><font class="ControlFlow">case</font><font class="Normal">&nbsp;</font><font class="Char">'7'</font><font class="Normal">&nbsp;:</font></br></div>
<div id="223" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(i&nbsp;=&nbsp;</font><font class="Float">0</font><font class="Normal">;&nbsp;(len&nbsp;&gt;&nbsp;</font><font class="Float">0</font><font class="Normal">)&nbsp;&amp;&amp;&nbsp;(i&nbsp;&lt;&nbsp;</font><font class="Float">3</font><font class="Normal">)&nbsp;&amp;&amp;&nbsp;(text[offset]&nbsp;&gt;=</font><font class="Char">'0'</font><font class="Normal">&amp;&amp;&nbsp;text[offset]&nbsp;&lt;=</font><font class="Char">'7'</font><font class="Normal">);&nbsp;i++)</font></br></div>
<div id="224" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="225" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;offset++;</font></br></div>
<div id="226" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len--;</font></br></div>
<div id="227" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="228" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">break</font><font class="Normal">;</font></br></div>
<div id="229" class="line"></br></div>
<div id="230" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">default</font><font class="Normal">:</font></br></div>
<div id="231" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Float">0</font><font class="Normal">;</font></br></div>
<div id="232" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="233" class="line"></br></div>
<div id="234" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;offset;</font></br></div>
<div id="235" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="236" class="line"></br></div>
<div id="237" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Float">0</font><font class="Normal">;</font></br></div>
<div id="238" class="line"><font class="Normal">}</font></br></div>
<div id="239" class="line"></br></div>
<div id="240" class="line"><font class="DataType">int</font><font class="Normal">&nbsp;KateHlCStringChar::checkHgl(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&amp;&nbsp;text,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;offset,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;len)</font></br></div>
<div id="241" class="line"><font class="Normal">{</font></br></div>
<div id="242" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;checkEscapedChar(text,&nbsp;offset,&nbsp;len);</font></br></div>
<div id="243" class="line"><font class="Normal">}</font></br></div>
<div id="244" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="245" class="line"></br></div>
<div id="246" class="line"><font class="RegionMarker">//BEGIN&nbsp;KateHlCChar</font></br></div>
<div id="247" class="line"><font class="Normal">KateHlCChar::KateHlCChar(</font><font class="DataType">int</font><font class="Normal">&nbsp;attribute,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;context,</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId,</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId2)</font></br></div>
<div id="248" class="line"><font class="Normal">&nbsp;&nbsp;:&nbsp;KateHlItem(attribute,context,regionId,regionId2)&nbsp;{</font></br></div>
<div id="249" class="line"><font class="Normal">}</font></br></div>
<div id="250" class="line"></br></div>
<div id="251" class="line"><font class="DataType">int</font><font class="Normal">&nbsp;KateHlCChar::checkHgl(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&amp;&nbsp;text,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;offset,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;len)</font></br></div>
<div id="252" class="line"><font class="Normal">{</font></br></div>
<div id="253" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;((len&nbsp;&gt;&nbsp;</font><font class="Float">1</font><font class="Normal">)&nbsp;&amp;&amp;&nbsp;(text[offset]&nbsp;==&nbsp;</font><font class="Char">'</font><font class="SpecialChar">\'</font><font class="Char">'</font><font class="Normal">)&nbsp;&amp;&amp;&nbsp;(text[offset</font><font class="DecVal">+1</font><font class="Normal">]&nbsp;!=&nbsp;</font><font class="Char">'</font><font class="SpecialChar">\'</font><font class="Char">'</font><font class="Normal">))</font></br></div>
<div id="254" class="line"><font class="Normal">&nbsp;&nbsp;{</font></br></div>
<div id="255" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;oldl;</font></br></div>
<div id="256" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;oldl&nbsp;=&nbsp;len;</font></br></div>
<div id="257" class="line"></br></div>
<div id="258" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;len--;</font></br></div>
<div id="259" class="line"></br></div>
<div id="260" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;offset2&nbsp;=&nbsp;checkEscapedChar(text,&nbsp;offset&nbsp;+&nbsp;</font><font class="Float">1</font><font class="Normal">,&nbsp;len);</font></br></div>
<div id="261" class="line"></br></div>
<div id="262" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(!offset2)</font></br></div>
<div id="263" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="264" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(oldl&nbsp;&gt;&nbsp;</font><font class="Float">2</font><font class="Normal">)</font></br></div>
<div id="265" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="266" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;offset2&nbsp;=&nbsp;offset&nbsp;+&nbsp;</font><font class="Float">2</font><font class="Normal">;</font></br></div>
<div id="267" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len&nbsp;=&nbsp;oldl&nbsp;-&nbsp;</font><font class="Float">2</font><font class="Normal">;</font></br></div>
<div id="268" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="269" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">else</font></br></div>
<div id="270" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="271" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Float">0</font><font class="Normal">;</font></br></div>
<div id="272" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="273" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="274" class="line"></br></div>
<div id="275" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;((len&nbsp;&gt;&nbsp;</font><font class="Float">0</font><font class="Normal">)&nbsp;&amp;&amp;&nbsp;(text[offset</font><font class="DecVal">2</font><font class="Normal">]&nbsp;==&nbsp;</font><font class="Char">'</font><font class="SpecialChar">\'</font><font class="Char">'</font><font class="Normal">))</font></br></div>
<div id="276" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;++offset2;</font></br></div>
<div id="277" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="278" class="line"></br></div>
<div id="279" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;</font><font class="Float">0</font><font class="Normal">;</font></br></div>
<div id="280" class="line"><font class="Normal">}</font></br></div>
<div id="281" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="282" class="line"></br></div>
<div id="283" class="line"><font class="RegionMarker">//BEGIN&nbsp;KateHl2CharDetect</font></br></div>
<div id="284" class="line"><font class="Normal">KateHl2CharDetect::KateHl</font><font class="Error">2CharDetect</font><font class="Normal">(</font><font class="DataType">int</font><font class="Normal">&nbsp;attribute,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;context,&nbsp;</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId,</font><font class="DataType">signed</font><font class="Normal">&nbsp;</font><font class="DataType">char</font><font class="Normal">&nbsp;regionId2,&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QChar</font><font class="Normal">&nbsp;*s)</font></br></div>
<div id="285" class="line"><font class="Normal">&nbsp;&nbsp;:&nbsp;KateHlItem(attribute,context,regionId,regionId2)&nbsp;{</font></br></div>
<div id="286" class="line"><font class="Normal">&nbsp;&nbsp;sChar1&nbsp;=&nbsp;s[</font><font class="DecVal">0</font><font class="Normal">];</font></br></div>
<div id="287" class="line"><font class="Normal">&nbsp;&nbsp;sChar2&nbsp;=&nbsp;s[</font><font class="DecVal">1</font><font class="Normal">];</font></br></div>
<div id="288" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="289" class="line"><font class="RegionMarker">//END&nbsp;KateHl2CharDetect</font></br></div>
<div id="290" class="line"></br></div>
<div id="291" class="line"><font class="Normal">KateHlItemData::KateHlItemData(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;&nbsp;name,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;defStyleNum)</font></br></div>
<div id="292" class="line"><font class="Normal">&nbsp;&nbsp;:&nbsp;name(name),&nbsp;defStyleNum(defStyleNum)&nbsp;{</font></br></div>
<div id="293" class="line"><font class="Normal">}</font></br></div>
<div id="294" class="line"></br></div>
<div id="295" class="line"><font class="Normal">KateHlData::KateHlData(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;&amp;wildcards,&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;&amp;mimetypes,&nbsp;</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;&amp;identifier,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;priority)</font></br></div>
<div id="296" class="line"><font class="Normal">&nbsp;&nbsp;:&nbsp;wildcards(wildcards),&nbsp;mimetypes(mimetypes),&nbsp;identifier(identifier),&nbsp;priority(priority)</font></br></div>
<div id="297" class="line"><font class="Normal">{</font></br></div>
<div id="298" class="line"><font class="Normal">}</font></br></div>
<div id="299" class="line"></br></div>
<div id="300" class="line"><font class="RegionMarker">//BEGIN&nbsp;KateHlContext</font></br></div>
<div id="301" class="line"><font class="Normal">KateHlContext::KateHlContext&nbsp;(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;&amp;</font><font class="Constant">_hlId</font><font class="Normal">,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;attribute,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;lineEndContext,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;</font><font class="Constant">_lineBeginContext</font><font class="Normal">,&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;</font><font class="Constant">_fallthrough</font><font class="Normal">,&nbsp;</font><font class="DataType">int</font><font class="Normal">&nbsp;</font><font class="Constant">_fallthroughContext</font><font class="Normal">,&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;</font><font class="Constant">_dynamic</font><font class="Normal">)</font></br></div>
<div id="302" class="line"><font class="Normal">{</font></br></div>
<div id="303" class="line"><font class="Normal">&nbsp;&nbsp;hlId&nbsp;=&nbsp;</font><font class="Constant">_hlId</font><font class="Normal">;</font></br></div>
<div id="304" class="line"><font class="Normal">&nbsp;&nbsp;attr&nbsp;=&nbsp;attribute;</font></br></div>
<div id="305" class="line"><font class="Normal">&nbsp;&nbsp;ctx&nbsp;=&nbsp;lineEndContext;</font></br></div>
<div id="306" class="line"><font class="Normal">&nbsp;&nbsp;lineBeginContext&nbsp;=&nbsp;</font><font class="Constant">_lineBeginContext</font><font class="Normal">;</font></br></div>
<div id="307" class="line"><font class="Normal">&nbsp;&nbsp;fallthrough&nbsp;=&nbsp;</font><font class="Constant">_fallthrough</font><font class="Normal">;</font></br></div>
<div id="308" class="line"><font class="Normal">&nbsp;&nbsp;ftctx&nbsp;=&nbsp;</font><font class="Constant">_fallthroughContext</font><font class="Normal">;</font></br></div>
<div id="309" class="line"><font class="Normal">&nbsp;&nbsp;dynamic&nbsp;=&nbsp;</font><font class="Constant">_dynamic</font><font class="Normal">;</font></br></div>
<div id="310" class="line"><font class="Normal">&nbsp;&nbsp;dynamicChild&nbsp;=&nbsp;</font><font class="Keyword">false</font><font class="Normal">;</font></br></div>
<div id="311" class="line"><font class="Normal">}</font></br></div>
<div id="312" class="line"></br></div>
<div id="313" class="line"><font class="Normal">KateHlContext&nbsp;*KateHlContext::clone(</font><font class="Attribute">const</font><font class="Normal">&nbsp;</font><font class="Extension">QStringList</font><font class="Normal">&nbsp;*args)</font></br></div>
<div id="314" class="line"><font class="Normal">{</font></br></div>
<div id="315" class="line"><font class="Normal">&nbsp;&nbsp;KateHlContext&nbsp;*ret&nbsp;=&nbsp;</font><font class="Keyword">new</font><font class="Normal">&nbsp;KateHlContext(hlId,&nbsp;attr,&nbsp;ctx,&nbsp;lineBeginContext,&nbsp;fallthrough,&nbsp;ftctx,&nbsp;</font><font class="Keyword">false</font><font class="Normal">);</font></br></div>
<div id="316" class="line"></br></div>
<div id="317" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(</font><font class="Extension">uint</font><font class="Normal">&nbsp;n=</font><font class="Float">0</font><font class="Normal">;&nbsp;n&nbsp;&lt;&nbsp;items.size();&nbsp;++n)</font></br></div>
<div id="318" class="line"><font class="Normal">&nbsp;&nbsp;{</font></br></div>
<div id="319" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;KateHlItem&nbsp;*item&nbsp;=&nbsp;items[n];</font></br></div>
<div id="320" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;KateHlItem&nbsp;*i&nbsp;=&nbsp;(item-&gt;dynamic&nbsp;?&nbsp;item-&gt;clone(args)&nbsp;:&nbsp;item);</font></br></div>
<div id="321" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;ret-&gt;items.append(i);</font></br></div>
<div id="322" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="323" class="line"></br></div>
<div id="324" class="line"><font class="Normal">&nbsp;&nbsp;ret-&gt;dynamicChild&nbsp;=&nbsp;</font><font class="Keyword">true</font><font class="Normal">;</font></br></div>
<div id="325" class="line"></br></div>
<div id="326" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">&nbsp;ret;</font></br></div>
<div id="327" class="line"><font class="Normal">}</font></br></div>
<div id="328" class="line"></br></div>
<div id="329" class="line"><font class="Normal">KateHlContext::~KateHlContext()</font></br></div>
<div id="330" class="line"><font class="Normal">{</font></br></div>
<div id="331" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(dynamicChild)</font></br></div>
<div id="332" class="line"><font class="Normal">&nbsp;&nbsp;{</font></br></div>
<div id="333" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(</font><font class="Extension">uint</font><font class="Normal">&nbsp;n=</font><font class="Float">0</font><font class="Normal">;&nbsp;n&nbsp;&lt;&nbsp;items.size();&nbsp;++n)</font></br></div>
<div id="334" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="335" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(items[n]-&gt;dynamicChild)</font></br></div>
<div id="336" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Keyword">delete</font><font class="Normal">&nbsp;items[n];</font></br></div>
<div id="337" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;}</font></br></div>
<div id="338" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="339" class="line"><font class="Normal">}</font></br></div>
<div id="340" class="line"><font class="RegionMarker">//END</font></br></div>
<div id="341" class="line"></br></div>
<div id="342" class="line"><font class="Normal">{</font></br></div>
<div id="343" class="line"><font class="Normal">&nbsp;&nbsp;KConfig&nbsp;*config&nbsp;=&nbsp;KateHlManager::self()-&gt;getKConfig();</font></br></div>
<div id="344" class="line"><font class="Normal">&nbsp;&nbsp;config-&gt;setGroup(</font><font class="String">&quot;Highlighting&nbsp;&quot;</font><font class="Normal">&nbsp;+&nbsp;iName&nbsp;+&nbsp;</font><font class="String">&quot;&nbsp;-&nbsp;Schema&nbsp;&quot;</font></br></div>
<div id="345" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;KateFactory::self()-&gt;schemaManager()-&gt;name(schema));</font></br></div>
<div id="346" class="line"></br></div>
<div id="347" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Extension">QStringList</font><font class="Normal">&nbsp;settings;</font></br></div>
<div id="348" class="line"></br></div>
<div id="349" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">for</font><font class="Normal">&nbsp;(KateHlItemData&nbsp;*p&nbsp;=&nbsp;list.first();&nbsp;p&nbsp;!=&nbsp;</font><font class="Float">0</font><font class="Normal">L;&nbsp;p&nbsp;=&nbsp;list.next())</font></br></div>
<div id="350" class="line"><font class="Normal">&nbsp;&nbsp;{</font></br></div>
<div id="351" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings.clear();</font></br></div>
<div id="352" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;</font><font class="Extension">QString::number</font><font class="Normal">(p-&gt;defStyleNum,</font><font class="Float">10</font><font class="Normal">);</font></br></div>
<div id="353" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::TextColor)?</font><font class="Extension">QString::number</font><font class="Normal">(p-&gt;textColor().rgb(),</font><font class="Float">16</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="354" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::SelectedTextColor)?</font><font class="Extension">QString::number</font><font class="Normal">(p-&gt;selectedTextColor().rgb(),</font><font class="Float">16</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="355" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::Weight)?(p-&gt;bold()?</font><font class="String">&quot;1&quot;</font><font class="Normal">:</font><font class="String">&quot;0&quot;</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="356" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::Italic)?(p-&gt;italic()?</font><font class="String">&quot;1&quot;</font><font class="Normal">:</font><font class="String">&quot;0&quot;</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="357" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::StrikeOut)?(p-&gt;strikeOut()?</font><font class="String">&quot;1&quot;</font><font class="Normal">:</font><font class="String">&quot;0&quot;</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="358" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::Underline)?(p-&gt;underline()?</font><font class="String">&quot;1&quot;</font><font class="Normal">:</font><font class="String">&quot;0&quot;</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="359" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::BGColor)?</font><font class="Extension">QString::number</font><font class="Normal">(p-&gt;bgColor().rgb(),</font><font class="Float">16</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="360" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;(p-&gt;itemSet(KateAttribute::SelectedBGColor)?</font><font class="Extension">QString::number</font><font class="Normal">(p-&gt;selectedBGColor().rgb(),</font><font class="Float">16</font><font class="Normal">):</font><font class="String">&quot;&quot;</font><font class="Normal">);</font></br></div>
<div id="361" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;settings&lt;&lt;</font><font class="String">&quot;---&quot;</font><font class="Normal">;</font></br></div>
<div id="362" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;config-&gt;writeEntry(p-&gt;name,settings);</font></br></div>
<div id="363" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="364" class="line"><font class="Normal">}</font></br></div>
<div id="365" class="line"></br></div>
<div id="366" class="line"><font class="Comment">/**</font></br></div>
<div id="367" class="line"><font class="Comment">&nbsp;*&nbsp;Increase&nbsp;the&nbsp;usage&nbsp;count,&nbsp;and&nbsp;trigger&nbsp;initialization&nbsp;if&nbsp;needed.</font></br></div>
<div id="368" class="line"><font class="Comment">&nbsp;*/</font></br></div>
<div id="369" class="line"><font class="DataType">void</font><font class="Normal">&nbsp;KateHighlighting::use()</font></br></div>
<div id="370" class="line"><font class="Normal">{</font></br></div>
<div id="371" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(refCount&nbsp;==&nbsp;</font><font class="Float">0</font><font class="Normal">)</font></br></div>
<div id="372" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;init();</font></br></div>
<div id="373" class="line"></br></div>
<div id="374" class="line"><font class="Normal">&nbsp;&nbsp;refCount++;</font></br></div>
<div id="375" class="line"><font class="Normal">}</font></br></div>
<div id="376" class="line"></br></div>
<div id="377" class="line"><font class="Comment">/**</font></br></div>
<div id="378" class="line"><font class="Comment">&nbsp;*&nbsp;Decrease&nbsp;the&nbsp;usage&nbsp;count,&nbsp;and&nbsp;trigger&nbsp;cleanup&nbsp;if&nbsp;needed.</font></br></div>
<div id="379" class="line"><font class="Comment">&nbsp;*/</font></br></div>
<div id="380" class="line"><font class="DataType">void</font><font class="Normal">&nbsp;KateHighlighting::release()</font></br></div>
<div id="381" class="line"><font class="Normal">{</font></br></div>
<div id="382" class="line"><font class="Normal">&nbsp;&nbsp;refCount--;</font></br></div>
<div id="383" class="line"></br></div>
<div id="384" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(refCount&nbsp;==&nbsp;</font><font class="Float">0</font><font class="Normal">)</font></br></div>
<div id="385" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;done();</font></br></div>
<div id="386" class="line"><font class="Normal">}</font></br></div>
<div id="387" class="line"></br></div>
<div id="388" class="line"><font class="Comment">/**</font></br></div>
<div id="389" class="line"><font class="Comment">&nbsp;*&nbsp;Initialize&nbsp;a&nbsp;context&nbsp;for&nbsp;the&nbsp;first&nbsp;time.</font></br></div>
<div id="390" class="line"><font class="Comment">&nbsp;*/</font></br></div>
<div id="391" class="line"></br></div>
<div id="392" class="line"><font class="DataType">void</font><font class="Normal">&nbsp;KateHighlighting::init()</font></br></div>
<div id="393" class="line"><font class="Normal">{</font></br></div>
<div id="394" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(noHl)</font></br></div>
<div id="395" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">;</font></br></div>
<div id="396" class="line"></br></div>
<div id="397" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Variable">m_contexts</font><font class="Normal">.clear&nbsp;();</font></br></div>
<div id="398" class="line"><font class="Normal">&nbsp;&nbsp;makeContextList();</font></br></div>
<div id="399" class="line"><font class="Normal">}</font></br></div>
<div id="400" class="line"></br></div>
<div id="401" class="line"></br></div>
<div id="402" class="line"><font class="Comment">/**</font></br></div>
<div id="403" class="line"><font class="Comment">&nbsp;*&nbsp;If&nbsp;the&nbsp;there&nbsp;is&nbsp;no&nbsp;document&nbsp;using&nbsp;the&nbsp;highlighting&nbsp;style&nbsp;free&nbsp;the&nbsp;complete</font></br></div>
<div id="404" class="line"><font class="Comment">&nbsp;*&nbsp;context&nbsp;structure.</font></br></div>
<div id="405" class="line"><font class="Comment">&nbsp;*/</font></br></div>
<div id="406" class="line"><font class="DataType">void</font><font class="Normal">&nbsp;KateHighlighting::done()</font></br></div>
<div id="407" class="line"><font class="Normal">{</font></br></div>
<div id="408" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(noHl)</font></br></div>
<div id="409" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">;</font></br></div>
<div id="410" class="line"></br></div>
<div id="411" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Variable">m_contexts</font><font class="Normal">.clear&nbsp;();</font></br></div>
<div id="412" class="line"><font class="Normal">&nbsp;&nbsp;internalIDList.clear();</font></br></div>
<div id="413" class="line"><font class="Normal">}</font></br></div>
<div id="414" class="line"></br></div>
<div id="415" class="line"><font class="Comment">/**</font></br></div>
<div id="416" class="line"><font class="Comment">&nbsp;*&nbsp;KateHighlighting&nbsp;-&nbsp;createKateHlItemData</font></br></div>
<div id="417" class="line"><font class="Comment">&nbsp;*&nbsp;This&nbsp;function&nbsp;reads&nbsp;the&nbsp;itemData&nbsp;entries&nbsp;from&nbsp;the&nbsp;config&nbsp;file,&nbsp;which&nbsp;specifies&nbsp;the</font></br></div>
<div id="418" class="line"><font class="Comment">&nbsp;*&nbsp;default&nbsp;attribute&nbsp;styles&nbsp;for&nbsp;matched&nbsp;items/contexts.</font></br></div>
<div id="419" class="line"><font class="Comment">&nbsp;*</font></br></div>
<div id="420" class="line"><font class="Comment">&nbsp;*&nbsp;</font><font class="Constant">@param</font><font class="Comment">&nbsp;</font><font class="CommentVar">list</font><font class="Comment">&nbsp;A&nbsp;reference&nbsp;to&nbsp;the&nbsp;internal&nbsp;list&nbsp;containing&nbsp;the&nbsp;parsed&nbsp;default&nbsp;config</font></br></div>
<div id="421" class="line"><font class="Comment">&nbsp;*/</font></br></div>
<div id="422" class="line"><font class="DataType">void</font><font class="Normal">&nbsp;KateHighlighting::createKateHlItemData(KateHlItemDataList&nbsp;&amp;list)</font></br></div>
<div id="423" class="line"><font class="Normal">{</font></br></div>
<div id="424" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Comment">//&nbsp;If&nbsp;no&nbsp;highlighting&nbsp;is&nbsp;selected&nbsp;we&nbsp;need&nbsp;only&nbsp;one&nbsp;default.</font></br></div>
<div id="425" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(noHl)</font></br></div>
<div id="426" class="line"><font class="Normal">&nbsp;&nbsp;{</font></br></div>
<div id="427" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;list.append(</font><font class="Keyword">new</font><font class="Normal">&nbsp;KateHlItemData(i18n(</font><font class="String">&quot;Normal&nbsp;Text&quot;</font><font class="Normal">),&nbsp;KateHlItemData::dsNormal));</font></br></div>
<div id="428" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">return</font><font class="Normal">;</font></br></div>
<div id="429" class="line"><font class="Normal">&nbsp;&nbsp;}</font></br></div>
<div id="430" class="line"></br></div>
<div id="431" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="Comment">//&nbsp;If&nbsp;the&nbsp;internal&nbsp;list&nbsp;isn't&nbsp;already&nbsp;available&nbsp;read&nbsp;the&nbsp;config&nbsp;file</font></br></div>
<div id="432" class="line"><font class="Normal">&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(internalIDList.isEmpty())</font></br></div>
<div id="433" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;makeContextList();</font></br></div>
<div id="434" class="line"></br></div>
<div id="435" class="line"><font class="Normal">&nbsp;&nbsp;list=internalIDList;</font></br></div>
<div id="436" class="line"><font class="Normal">}</font></br></div>
<div id="437" class="line"></br></div>
<div id="438" class="line"></br></div>
<div id="439" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="DataType">bool</font><font class="Normal">&nbsp;dynamic&nbsp;=&nbsp;</font><font class="Keyword">false</font><font class="Normal">;</font></br></div>
<div id="440" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Extension">QString</font><font class="Normal">&nbsp;tmpDynamic&nbsp;=&nbsp;KateHlManager::self()-&gt;syntax-&gt;groupData(data,&nbsp;</font><font class="Extension">QString</font><font class="Normal">(</font><font class="String">&quot;dynamic&quot;</font><font class="Normal">)&nbsp;);</font></br></div>
<div id="441" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">if</font><font class="Normal">&nbsp;(&nbsp;tmpDynamic.lower()&nbsp;==&nbsp;</font><font class="String">&quot;true&quot;</font><font class="Normal">&nbsp;||&nbsp;&nbsp;tmpDynamic.toInt()&nbsp;==&nbsp;</font><font class="Float">1</font><font class="Normal">&nbsp;)</font></br></div>
<div id="442" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dynamic&nbsp;=&nbsp;</font><font class="Keyword">true</font><font class="Normal">;</font></br></div>
<div id="443" class="line"></br></div>
<div id="444" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;KateHlContext&nbsp;*ctxNew&nbsp;=&nbsp;</font><font class="Keyword">new</font><font class="Normal">&nbsp;KateHlContext&nbsp;(</font></br></div>
<div id="445" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ident,</font></br></div>
<div id="446" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;attr,</font></br></div>
<div id="447" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;context,</font></br></div>
<div id="448" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(KateHlManager::self()-&gt;syntax-&gt;groupData(data,</font><font class="Extension">QString</font><font class="Normal">(</font><font class="String">&quot;lineBeginContext&quot;</font><font class="Normal">))).isEmpty()?</font><font class="DecVal">-1</font><font class="Normal">:</font></br></div>
<div id="449" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(KateHlManager::self()-&gt;syntax-&gt;groupData(data,</font><font class="Extension">QString</font><font class="Normal">(</font><font class="String">&quot;lineBeginContext&quot;</font><font class="Normal">))).toInt(),</font></br></div>
<div id="450" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ft,&nbsp;ftc,&nbsp;dynamic);</font></br></div>
<div id="451" class="line"></br></div>
<div id="452" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Variable">m_contexts</font><font class="Normal">.push</font><font class="Constant">_back</font><font class="Normal">&nbsp;(ctxNew);</font></br></div>
<div id="453" class="line"></br></div>
<div id="454" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;kdDebug(</font><font class="Float">13010</font><font class="Normal">)&nbsp;&lt;&lt;&nbsp;</font><font class="String">&quot;INDEX:&nbsp;&quot;</font><font class="Normal">&nbsp;&lt;&lt;&nbsp;i&nbsp;&lt;&lt;&nbsp;</font><font class="String">&quot;&nbsp;LENGTH&nbsp;&quot;</font><font class="Normal">&nbsp;&lt;&lt;&nbsp;</font><font class="Variable">m_contexts</font><font class="Normal">.size()</font><font class="DecVal">-1</font><font class="Normal">&nbsp;&lt;&lt;&nbsp;endl;</font></br></div>
<div id="455" class="line"></br></div>
<div id="456" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//Let's&nbsp;create&nbsp;all&nbsp;items&nbsp;for&nbsp;the&nbsp;context</font></br></div>
<div id="457" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="ControlFlow">while</font><font class="Normal">&nbsp;(KateHlManager::self()-&gt;syntax-&gt;nextItem(data))</font></br></div>
<div id="458" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</font></br></div>
<div id="459" class="line"><font class="Comment">//&nbsp;&nbsp;&nbsp;&nbsp;kdDebug(13010)&lt;&lt;&nbsp;&quot;In&nbsp;make&nbsp;Contextlist:&nbsp;Item:&quot;&lt;&lt;endl;</font></br></div>
<div id="460" class="line"></br></div>
<div id="461" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;KateHlIncludeRules&nbsp;:&nbsp;add&nbsp;a&nbsp;pointer&nbsp;to&nbsp;each&nbsp;item&nbsp;in&nbsp;that&nbsp;context</font></br></div>
<div id="462" class="line"><font class="Normal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font class="Comment">//&nbsp;</font><font class="Alert">TODO</font><font class="Comment">&nbsp;add&nbsp;a&nbsp;attrib&nbsp;includeAttrib</font></br></div>
</div>
</body>
</html>