1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE language>
<language name="noweb" version="5" kateversion="5.79" section="Sources" extensions="*.w;*.nw" author="Scott Collins (scc@scottcollins.net)">
<!--
#########################################################################
# First version added to repository was 0.4, added as 1.0 .
#
# Article about this highlighter:
# http://scottcollins.net/articles/Kate.html
#
# Indirect source file:
# http://scottcollins.net/articles/Kate.w
#
# Command used for extraction:
# $ notangle Kate.w -R"noweb.xml" > syntax/data/noweb.xml
#########################################################################
-->
<highlighting>
<contexts>
<context name="RawDocumentation" attribute="Prose" lineEndContext="#stay">
<RegExpr String="^<<.*>>=$" attribute="SectionName" context="CodeSection" beginRegion="CodeSection" column="0" />
<Detect2Chars char="@" char1="[" context="#stay" />
<Detect2Chars char="[" char1="[" attribute="Punctuation" context="CodeQuote" />
<IncludeRules context="##HTML" includeAttrib="true" />
</context>
<context name="CodeQuote" attribute="Code" lineEndContext="#stay">
<Detect2Chars char="@" char1="]" context="#stay" />
<RegExpr String="\]\](?!\])" minimal="true" attribute="Punctuation" context="#pop" />
<IncludeRules context="SectionNames" />
<IncludeRules context="##C++" includeAttrib="true" />
</context>
<context name="CodeSection" attribute="Code" lineEndContext="#stay">
<RegExpr String="^@$|^@(?=[\s%])" attribute="Punctuation" context="RawDocumentation" endRegion="CodeSection" column="0" />
<RegExpr String="^<<.*>>=$" context="RawDocumentation" lookAhead="true" endRegion="CodeSection" column="0" />
<IncludeRules context="SectionNames" />
<IncludeRules context="##C++" includeAttrib="true" />
</context>
<context name="SectionNames" attribute="Prose" lineEndContext="#stay">
<StringDetect String="@<<" context="#stay" />
<RegExpr String="<<.*[^@]>>(?!=)" minimal="true" attribute="SectionName" />
</context>
</contexts>
<itemDatas>
<itemData name="Prose" defStyleNum="dsNormal" />
<itemData name="Code" defStyleNum="dsNormal" />
<itemData name="Punctuation" defStyleNum="dsRegionMarker" bold="true" />
<itemData name="SectionName" defStyleNum="dsRegionMarker" italic="true" />
</itemDatas>
</highlighting>
<general>
<comments>
<comment name="multiLine" start="<!--" end="-->" />
</comments>
</general>
</language>
|