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/literate-curry.xml

51 lines
2.3 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language name="Literate Curry" version="0.2" kateversion="2.3"
section="Sources" extensions="*.lcurry" mimetype="text/x-curry"
author="Björn Peemöller (bjp@informatik.uni-kiel.de)" license="LGPL"
indenter="haskell">
<highlighting>
<contexts>
<context attribute="Text" lineEndContext="#stay" name="Text">
<!-- Bird Tracks -->
<DetectChar attribute="BirdTrack" context="Code" char="&gt;" column="0"/>
<DetectChar attribute="BirdTrack" context="Code" char="&lt;" column="0"/>
<!-- \begin{code} and \begin{spec} -->
<StringDetect attribute="Text" context="normals" String="&#92;begin&#123;code&#125;"/>
<StringDetect attribute="Text" context="normals" String="&#92;begin&#123;spec&#125;"/>
</context>
<context attribute="Normal" lineEndContext="#pop" name="Code">
<RegExpr attribute="Comment" context="multiline" String="\{-[^#]" />
<IncludeRules context="##Curry" />
</context>
<context attribute="Normal" lineEndContext="#stay" name="normals">
<StringDetect attribute="Normal" context="#pop" String="&#92;end&#123;code&#125;"/>
<StringDetect attribute="Normal" context="#pop" String="&#92;end&#123;spec&#125;"/>
<IncludeRules context="##Curry" />
</context>
<!-- Handle comments in presence of bird tracks -->
<context attribute="Comment" lineEndContext="lineend" name="multiline" >
<Detect2Chars attribute="Comment" context="#pop" char="-" char1="}" />
</context>
<context attribute="Text" lineEndContext="#stay" name="lineend">
<DetectChar attribute="BirdTrack" context="restart" char="&gt;" column="0"/>
<DetectChar attribute="BirdTrack" context="restart" char="&lt;" column="0"/>
</context>
<context attribute="Comment" lineEndContext="#pop" name="restart">
<Detect2Chars attribute="Comment" context="#pop#pop#pop" char="-" char1="}" />
</context>
</contexts>
<itemDatas>
<itemData name="Text" defStyleNum="dsNormal" spellChecking="true" />
<itemData name="BirdTrack" defStyleNum="dsOthers" spellChecking="false" />
<itemData name="Comment" defStyleNum="dsComment" />
</itemDatas>
</highlighting>
</language>