125 lines
5.5 KiB
XML
125 lines
5.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE language SYSTEM "language.dtd" [
|
|
<!ENTITY tok_start "(?<=^|\s|[(\[{}\]),])">
|
|
<!ENTITY tok_end "(?=$|\s|[(\[{}\]),])">
|
|
]>
|
|
|
|
<language name="Maude" section="Sources" extensions="*.maude"
|
|
version="1" kateversion="5.53">
|
|
<highlighting>
|
|
<list name="modules">
|
|
<item>mod</item> <item>endm</item> <item>is</item>
|
|
<item>fmod</item> <item>endfm</item>
|
|
<item>smod</item> <item>endsm</item>
|
|
<item>th</item> <item>endth</item>
|
|
<item>fth</item> <item>endfth</item>
|
|
<item>sth</item> <item>endsth</item>
|
|
<item>view</item> <item>endv</item>
|
|
<item>from</item> <item>to</item>
|
|
</list>
|
|
|
|
<list name="import">
|
|
<item>protecting</item> <item>pr</item>
|
|
<item>including</item> <item>inc</item>
|
|
<item>extending</item> <item>ex</item>
|
|
</list>
|
|
|
|
<list name="sorts">
|
|
<item>sort</item> <item>sorts</item>
|
|
<item>subsort</item> <item>subsorts</item>
|
|
</list>
|
|
|
|
<list name="ops"> <item>op</item> <item>ops</item> </list>
|
|
<list name="vars"> <item>var</item> <item>vars</item> </list>
|
|
<list name="eqs"> <item>eq</item> <item>ceq</item> </list>
|
|
<list name="rules"> <item>rl</item> <item>crl</item> </list>
|
|
<list name="members"> <item>mb</item> <item>cmb</item> </list>
|
|
<list name="strats"> <item>strat</item> <item>strats</item> </list>
|
|
<list name="sds"> <item>sd</item> <item>csd</item> </list>
|
|
<list name="if"> <item>if</item> </list>
|
|
|
|
<contexts>
|
|
<context attribute="default" lineEndContext="#stay" name="Default">
|
|
<keyword attribute="modules" context="#stay" String="modules" />
|
|
<keyword attribute="import" context="#stay" String="import" />
|
|
<keyword attribute="sorts" context="#stay" String="sorts" />
|
|
<keyword attribute="ops" context="#stay" String="ops" />
|
|
<keyword attribute="vars" context="#stay" String="vars" />
|
|
<keyword attribute="eqs" context="#stay" String="eqs" />
|
|
<keyword attribute="rules" context="#stay" String="rules" />
|
|
<keyword attribute="members" context="#stay" String="members" />
|
|
<keyword attribute="strats" context="#stay" String="strats" />
|
|
<keyword attribute="sds" context="#stay" String="sds" />
|
|
|
|
<keyword attribute="if" context="#stay" String="if" />
|
|
<RegExpr attribute="if" context="#stay" String="/\\" />
|
|
|
|
<RegExpr attribute="punc" context="#stay"
|
|
String="&tok_start;(?::[:=]?|->|<-|=>|=(?:=|/=)?|@)&tok_end;" />
|
|
|
|
<RegExpr attribute="delim" context="#stay"
|
|
String="[{}\[\](),]|(?<=^|\s)\.(?=\s|$)" />
|
|
|
|
<DetectChar attribute="string" context="String" char=""" />
|
|
|
|
<RegExpr attribute="rat" context="#stay"
|
|
String="&tok_start;-?\d+(?:/\d+)?&tok_end;" />
|
|
<RegExpr attribute="float" context="#stay"
|
|
String="&tok_start;-?\d*\.\d+(?:[eE][+-]?\d+)?&tok_end;" />
|
|
<RegExpr attribute="float" context="#stay"
|
|
String="&tok_start;-?Infinity&tok_end;" />
|
|
|
|
<RegExpr attribute="comment" context="comment s"
|
|
String="(?:---|\*\*\*)(?!\()" />
|
|
<RegExpr attribute="comment" context="comment m"
|
|
String="(?:---|\*\*\*)\(" />
|
|
|
|
<!-- todo make this more exact? -->
|
|
<RegExpr attribute="qid" context="#stay"
|
|
String="'(?:\S+|"(?:[^\\"]|\\.)*")" />
|
|
</context>
|
|
|
|
<context attribute="string" lineEndContext="#stay" name="String">
|
|
<RegExpr attribute="string esc" context="#stay" String="\\." />
|
|
<DetectChar attribute="string" context="#pop" char=""" />
|
|
</context>
|
|
|
|
<context attribute="comment" lineEndContext="#pop" name="comment s" />
|
|
|
|
<context attribute="comment" lineEndContext="#stay" name="comment m">
|
|
<DetectChar attribute="comment" context="comment m" char="(" />
|
|
<DetectChar attribute="comment" context="#pop" char=")" />
|
|
</context>
|
|
</contexts>
|
|
|
|
<itemDatas>
|
|
<itemData name="default" defStyleNum="dsNormal" />
|
|
<itemData name="modules" defStyleNum="dsPreprocessor" />
|
|
<itemData name="import" defStyleNum="dsPreprocessor" />
|
|
<itemData name="sorts" defStyleNum="dsDataType" />
|
|
<itemData name="ops" defStyleNum="dsFunction" />
|
|
<itemData name="vars" defStyleNum="dsVariable" />
|
|
<itemData name="eqs" defStyleNum="dsFunction" />
|
|
<itemData name="rules" defStyleNum="dsControlFlow" />
|
|
<itemData name="members" defStyleNum="dsKeyword" />
|
|
<itemData name="strats" defStyleNum="dsControlFlow" />
|
|
<itemData name="sds" defStyleNum="dsControlFlow" />
|
|
<itemData name="if" defStyleNum="dsControlFlow" />
|
|
<itemData name="punc" defStyleNum="dsOperator" />
|
|
<itemData name="delim" defStyleNum="dsNormal" />
|
|
<itemData name="string" defStyleNum="dsString" />
|
|
<itemData name="string esc" defStyleNum="dsSpecialChar" />
|
|
<itemData name="float" defStyleNum="dsFloat" />
|
|
<itemData name="rat" defStyleNum="dsFloat" />
|
|
<itemData name="qid" defStyleNum="dsString" />
|
|
<itemData name="comment" defStyleNum="dsComment" />
|
|
</itemDatas>
|
|
</highlighting>
|
|
|
|
<general>
|
|
<keywords
|
|
casesensitive="true"
|
|
additionalDeliminators="[]{}(), 	"
|
|
wordWrapDeliminators=" " />
|
|
</general>
|
|
</language>
|