<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE language><language version="10" kateversion="5.62" author="Красимир Беров (k.berov@gmail.com)" license="Artistic" name="TT2" section="Markup" extensions="*.tt*;"><highlighting><list name="control structures"><item>BLOCK</item><item>CALL</item><item>CASE</item><item>CATCH</item><item>DEBUG</item><item>DEFAULT</item><item>ELSE</item><item>ELSIF</item><item>END</item><item>FILTER</item><item>FINAL</item><item>FOR</item><item>FOREACH</item><item>GET</item><item>IF</item><item>IN</item><item>INCLUDE</item><item>INSERT</item><item>LAST</item><item>MACRO</item><item>META</item><item>NEXT</item><item>PERL</item><item>PROCESS</item><item>SET</item><item>SWITCH</item><item>TAGS</item><item>THROW</item><item>TRY</item><item>UNLESS</item><item>USE</item><item>WHILE</item><item>WRAPPER</item></list><list name="keywords"><item>component</item><item>constants</item><item>content</item><item>error</item><item>loop</item><item>template</item></list><list name="functions"><item>chunk</item><item>collapse</item><item>count</item><item>defined</item><item>each</item><item>eval</item><item>evalperl</item><item>evaltt</item><item>exists</item><item>first</item><item>format</item><item>grep</item><item>hash</item><item>html</item><item>html_break</item><item>html_entity</item><item>html_line_break</item><item>html_para</item><item>html_para_break</item><item>import</item><item>indent</item><item>item</item><item>join</item><item>keys</item><item>last</item><item>latex</item><item>lcfirst</item><item>length</item><item>list</item><item>lower</item><item>match</item><item>max</item><item>merge</item><item>nsort</item><item>null</item><item>perl</item><item>pop</item><item>push</item><item>redirect</item><item>remove</item><item>repeat</item><item>replace</item><item>reverse</item><item>search</item><item>shift</item><item>size</item><item>slice</item><item>sort</item><item>splice</item><item>split</item><item>stderr</item><item>stdout</item><item>trim</item><item>truncate</item><item>ucfirst</item><item>unique</item><item>unshift</item><item>upper</item><item>uri</item><item>url</item><item>values</item></list><list name="operators"><item>!=</item><item>%</item><item>&amp;</item><item>&amp;&amp;</item><item>&amp;&amp;=</item><item>&amp;=</item><item>*</item><item>**=</item><item>*=</item><item>+</item><item>+=</item><item>,</item><item>-</item><item>-=</item><item>-></item><item>.</item><item>/=</item><item>::</item><item>;</item><item>&lt;</item><item>&lt;&lt;</item><item>=</item><item>=></item><item>></item><item>>></item><item>?=</item><item>\</item><item>^</item><item>and</item><item>eq</item><item>ne</item><item>not</item><item>or</item><item>|</item><item>|=</item><item>||</item><item>||=</item><item>~=</item></list><contexts><context name="nosource" attribute="Normal Text"><StringDetect String="[%" attribute="Keyword" context="tt2source"/><RegExpr String="&lt;\s*script(\s|>)" attribute="HTML Tag" context="scripts" insensitive="1"/><RegExpr String="&lt;\s*\/?\s*[a-zA-Z_:][a-zA-Z0-9._:-]*" attribute="HTML Tag" context="htmltag"/><StringDetect String="&lt;!--" attribute="HTML Comment" context="htmlcomment" beginRegion="HTMLComment"/><RegExpr String="\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff\.\-]*(\[[a-zA-Z0-9_]*\])*|\$\{[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff\.\-]*(\[[a-zA-Z0-9_]*\])*\}" attribute="Variable"/></context><context name="tt2source" attribute="TT2 Text"><StringDetect String="%]" attribute="Keyword" context="#pop"/><DetectChar char="#" attribute="Comment" context="tt2_onelinecomment"/><DetectChar char='"' attribute="String" context="doublequotestring"/><DetectChar char="'" attribute="String" context="singlequotestring"/><DetectChar char="&amp;" attribute="Keyword"/><keyword String="operators" attribute="Operator"/><keyword String="functions" attribute="Function"/><RegExpr String="[0123456789]*\.\.\.[0123456789]*" attribute="String"/><HlCOct attribute="Octal"/><HlCHex attribute="Hex"/><Float attribute="Float"/><Int attribute="Decimal"/><AnyChar String=";()}{:,[]" attribute="Other"/><WordDetect String="ELSIF" attribute="Control Structures" beginRegion="control" endRegion="control"/><WordDetect String="ELSE" attribute="Control Structures" beginRegion="control" endRegion="control"/><WordDetect String="IF" attribute="Control Structures" beginRegion="control"/><WordDetect String="END" attribute="Control Structures" endRegion="control"/><WordDetect String="FOREACH" attribute="Control Structures" beginRegion="control"/><keyword String="keywords" attribute="Keyword"/><keyword String="control structures" attribute="Control Structures"/></context><context name="doublequotestring" attribute="String"><StringDetect String='""' attribute="Escape Code"/><RegExpr String="\\([0-7]{1,3}|x[0-9A-Fa-f]{1,2})" attribute="Escape Code"/><DetectChar char='"' attribute="String" context="#pop"/><RegExpr String="\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff\.\-]*(\[[a-zA-Z0-9_]*\])*|\$\{[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff\.\-]*(\[[a-zA-Z0-9_]*\])*\}" attribute="Variable"/></context><context name="identifiers" attribute="Identifier"><RegExpr String="\s*#?[a-zA-Z0-9]*" attribute="String" context="#pop"/><DetectChar char="'" attribute="Types" context="types1"/><DetectChar char='"' attribute="Types" context="types2"/></context><context name="singlequotestring" attribute="String"><StringDetect String="''" attribute="Escape Code"/><DetectChar char="'" attribute="String" context="#pop"/></context><context name="htmlcomment" attribute="HTML Comment"><StringDetect String="[%" attribute="Keyword" context="tt2source"/><StringDetect String="-->" attribute="HTML Comment" context="#pop" endRegion="HTMLComment"/><RegExpr String="\s*=\s*" attribute="Normal Text" context="identifiers"/><DetectSpaces/><IncludeRules context="##Comments"/></context><context name="htmltag" attribute="Identifier"><StringDetect String="/>" attribute="HTML Tag" context="#pop"/><DetectChar char=">" attribute="HTML Tag" context="#pop"/><StringDetect String="[%" attribute="Keyword" context="tt2source"/><RegExpr String="\s*=\s*" attribute="Identifier" context="identifiers"/></context><context name="scripts" attribute="Normal Text"><StringDetect String="//" attribute="Comment" context="scripts_onelinecomment"/><StringDetect String="/*" attribute="Comment" context="twolinecomment" beginRegion="Comment"/><keyword String="control structures" attribute="Control Structures"/><keyword String="keywords" attribute="Keyword"/><keyword String="functions" attribute="Function"/><StringDetect String="[%" attribute="Keyword" context="tt2source"/><RegExpr String="&lt;\s*\/\s*script\s*>" attribute="HTML Tag" context="#pop" insensitive="1"/><DetectChar char='"' attribute="String" context="doublequotestring"/><DetectChar char="'" attribute="String" context="singlequotestring"/><HlCOct attribute="Octal"/><HlCHex attribute="Hex"/><Float attribute="Float"/><Int attribute="Decimal"/><DetectChar char="{" attribute="Normal Text" beginRegion="Brace1"/><DetectChar char="}" attribute="Normal Text" endRegion="Brace1"/><AnyChar String=";()}{:,[]" attribute="Other"/></context><context name="scripts_onelinecomment" attribute="Comment" lineEndContext="#pop"><DetectSpaces/><RegExpr String="&lt;\s*\/\s*script\s*>" attribute="HTML Tag" context="#pop#pop" insensitive="1"/><IncludeRules context="##Comments"/></context><context name="tt2_onelinecomment" attribute="Comment" lineEndContext="#pop"><DetectSpaces/><StringDetect String="%]" attribute="Keyword" context="#pop#pop"/><IncludeRules context="##Comments"/></context><context name="twolinecomment" attribute="Comment"><DetectSpaces/><StringDetect String="*/" attribute="Comment" context="#pop" endRegion="Comment"/><IncludeRules context="##Comments"/></context><context name="types1" attribute="Types"><StringDetect String="[%" attribute="Keyword" context="tt2source"/><DetectChar char="'" attribute="Types" context="#pop#pop"/></context><context name="types2" attribute="Types"><StringDetect String="[%" attribute="Keyword" context="tt2source"/><DetectChar char='"' attribute="Types" context="#pop#pop"/></context></contexts><itemDatas><itemData name="Normal Text" defStyleNum="dsNormal"/><itemData name="TT2 Text" defStyleNum="dsNormal"/><itemData name="Keyword" defStyleNum="dsKeyword"/><itemData name="Function" defStyleNum="dsFunction"/><itemData name="Decimal" defStyleNum="dsDecVal"/><itemData name="Octal" defStyleNum="dsBaseN"/><itemData name="Hex" defStyleNum="dsBaseN"/><itemData name="Float" defStyleNum="dsFloat"/><itemData name="String" defStyleNum="dsString"/><itemData name="Comment" defStyleNum="dsComment"/><itemData name="Variable" defStyleNum="dsVariable"/><itemData name="Control Structures" defStyleNum="dsControlFlow"/><itemData name="Escape Code" defStyleNum="dsSpecialChar"/><itemData name="Other" defStyleNum="dsOthers"/><itemData name="Operator" defStyleNum="dsOperator"/><itemData name="HTML Tag" defStyleNum="dsExtension"/><itemData name="HTML Comment" defStyleNum="dsComment"/><itemData name="Identifier" defStyleNum="dsOthers"/><itemData name="Types" defStyleNum="dsDataType"/></itemDatas></highlighting><general><comments><comment name="multiLine" start="&lt;!--" end="-->" region="HTMLComment"/><comment name="singleLine" start="#"/></comments><keywords casesensitive="1"/></general></language>