You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdelibs/kate/data/textile.xml

103 lines
4.6 KiB

<?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>