summaryrefslogtreecommitdiffstats
path: root/kate/data/textile.xml
diff options
context:
space:
mode:
Diffstat (limited to 'kate/data/textile.xml')
-rw-r--r--kate/data/textile.xml103
1 files changed, 103 insertions, 0 deletions
diff --git a/kate/data/textile.xml b/kate/data/textile.xml
new file mode 100644
index 000000000..a0e2d5d1d
--- /dev/null
+++ b/kate/data/textile.xml
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Kate syntax highlight filter for Textile formatted documents
+
+ Copyright 2012 alexander Kabakov. http://kabakov.wordpress.com/
+ Licensed under GPL license.
+-->
+
+<!DOCTYPE language SYSTEM "language.dtd"
+ [
+ <!ENTITY strongregex "(\s|^)\*[^*]\w.*\w[^*]\*(\s|\.|,|;|:|\-|\?|$)">
+ <!ENTITY strikeoutregex "(\s|^)-[^-]\w.*\w[^-]-(\s|\.|,|;|:|\-|\?|$)">
+ <!ENTITY blockattrsregex "(\(\w+(#\w+)?\))?">
+ <!ENTITY formatregex "(&gt;|&lt;|=|&lt;&gt;)?">
+ <!ENTITY name "(?![0-9])[\w_:][\w.:_-]*">
+]>
+
+<language section="Markup" name="Textile"
+ version="1.2" kateversion="2.5"
+ extensions="*.textile" priority="15"
+ author="Alexander Kabakov (kabakov.as@gmail.com)"
+ license="LGPL" >
+ <highlighting>
+ <contexts>
+ <context attribute="Normal Text" lineEndContext="#stay" name="Normal Text" >
+ <StringDetect attribute="comment" context="comment" String="&lt;!--" beginRegion="comment" />
+ <RegExpr attribute="macro" String="\{\{&name;\}\}" />
+
+ <RegExpr context="sectiontitle_block" String="^h1" />
+ <RegExpr context="sectionheader_block" String="^h2" />
+ <RegExpr context="sectionheader_block" String="^h3" />
+ <RegExpr context="sectionheader_block" String="^h4" />
+ <RegExpr context="sectionheader_block" String="^h5" />
+
+ <RegExpr attribute="textblock" String="^p&blockattrsregex;&formatregex;\." />
+ <RegExpr attribute="textblock" String="^pre&blockattrsregex;&formatregex;\." />
+ <RegExpr attribute="textblock" String="^bq&blockattrsregex;&formatregex;\." />
+ <RegExpr attribute="textblock" String="^bc&blockattrsregex;&formatregex;\." />
+ <RegExpr context="image" String="!"/>
+
+ <IncludeRules context="inc" />
+
+ <RegExpr attribute="itemlist" String="^[\*\#]+\s" />
+ <RegExpr attribute="htmllink" String='".*":http(s)?:[\w_/\\\d\.%\?&amp;=-]*' />
+ </context>
+
+ <context name="image" lineEndContext="#pop" attribute="image">
+ <RegExpr String="&blockattrsregex;" attribute="blockattrs" />
+ <RegExpr String="\w+\.(png|jpg|jpeg|gif|bmp)" attribute="imagefilename" />
+ <DetectChar char="!" context="#pop" attribute="image"/>
+ </context>
+
+ <context name="sectiontitle_block" lineEndContext="#pop" attribute="sectiontitle">
+ <RegExpr String="&blockattrsregex;" attribute="sectionblockattrs" />
+ </context>
+
+ <context name="sectionheader_block" lineEndContext="#pop" attribute="sectionheader">
+ <RegExpr String="&blockattrsregex;" attribute="sectionblockattrs" />
+ </context>
+
+ <context name="comment" attribute="comment" lineEndContext="#stay">
+ <DetectSpaces/>
+ <DetectIdentifier/>
+ <StringDetect attribute="comment" context="#pop" String="--&gt;" endRegion="comment" />
+ </context>
+
+ <context attribute="common" name="inc" lineEndContext="#stay" >
+ <RegExpr attribute="strong" String="&strongregex;" />
+ <RegExpr attribute="strikeout" minimal="true" String="&strikeoutregex;"/>
+ </context>
+ </contexts>
+
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal" />
+
+ <itemData name="sectiontitle" defStyleNum="dsKeyword" bold="true" />
+ <itemData name="sectionheader" defStyleNum="dsFunction" bold="true" />
+ <itemData name="sectionblockattrs" defStyleNum="dsComment" bold="true"/>
+ <itemData name="blockattrs" defStyleNum="dsComment" />
+ <itemData name="textblock" defStyleNum="dsComment" />
+
+ <itemData name="strong" defStyleNum="dsNormal" bold="true" />
+ <itemData name="strikeout" defStyleNum="dsNormal" strikeOut="true" />
+
+ <itemData name="itemlist" defStyleNum="dsDataType" />
+
+ <itemData name="macro" defStyleNum="dsComment" bold="true"/>
+ <itemData name="comment" defStyleNum="dsComment" />
+
+ <itemData name="image" defStyleNum="dsFloat" />
+ <itemData name="imagefilename" defStyleNum="dsKeyword" />
+ <itemData name="htmllink" defStyleNum="dsDataType" />
+ </itemDatas>
+
+ </highlighting>
+
+ <general>
+ <comments>
+ <comment name="multiLine" start="&lt;!--" end="--&gt;" />
+ </comments>
+ </general>
+
+</language> \ No newline at end of file