[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kwrite-devel
Subject:    Highligthing definitions for Rela NG and Relax NG Compact
From:       klimazde () fel ! cvut ! cz
Date:       2010-04-28 12:02:33
Message-ID: 20100428140233.11524iti40ttze8p () wimap ! feld ! cvut ! cz
[Download RAW message or body]

This message is in MIME format.


Here are XML definition for highligthing system of Kate for Relax NG  
and Relax NG Compact languages.

["rnc.xml" (text/xml)]

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd"
[
  <!ENTITY name    "[A-Za-z_][\w._-]*">
]>
<language name="Relax NG Compact" version="1.0" kateversion="2.4" section="Markup" \
extensions="*.rnc;*.RNC" author="Zdeněk Klíma (klimazde@fel.cvut.cz)" \
license="LGPL" priority="5">

  <highlighting>
  
    <list name="rnc_keyword_list">
      <item> default </item>
      <item> div </item>
      <item> list </item>
      <item> mixed </item>
      <item> grammar </item>      
      <item> external </item>
      <item> inherit </item>
      <item> notAllowed </item>
      <item> parent </item>
      <item> string </item>
      <item> empty </item>
      <item> text </item>
      <item> token </item>
      <item> attribute </item>
      <item> element </item>      
      <item> namespace </item>
      <item> include </item>
      <item> datatypes </item>
      <item> start </item>      
    </list>  
    
    <list name="rnc_quantifier_list">
      <item> * </item>
      <item> ? </item>
      <item> + </item>
    </list>
    
    <list name="rnc_block_list">
      <item> { </item>
      <item> } </item>
      <item> ( </item>
      <item> ) </item>
      <item> [ </item>
      <item> ] </item>
    </list>
    
    <list name="rnc_operator_list">
      <item> | </item>
      <item> &amp; </item>
      <item> , </item>
    </list>  
    
    <list name="xsd_keyword_list">
      <item> anyURI </item>
      <item> base64Binary </item>
      <item> boolean </item>
      <item> byte </item>
      <item> date </item>
      <item> dateTime </item>
      <item> decimal </item>
      <item> double </item>
      <item> duration </item>
      <item> float </item>
      <item> gDay </item>
      <item> gMonth </item>
      <item> gMonthDay </item>
      <item> gYear </item>
      <item> gYearMonth </item>
      <item> hexBinary </item>
      <item> ID </item>
      <item> IDREF, IDREFS </item>
      <item> int </item>
      <item> integer </item>
      <item> language </item>
      <item> long </item>
      <item> negativeInteger </item>
      <item> NMTOKEN, NMTOKENS </item>
      <item> nonNegativeInteger </item>
      <item> nonPositiveInteger </item>
      <item> normalizedString </item>
      <item> positiveInteger </item>
      <item> short </item>
      <item> string </item>
      <item> time </item>
      <item> token </item>
      <item> unsignedByte </item>
      <item> unsignedInt </item>
      <item> unsignedLong </item>
      <item> unsignedShort </item>
    </list>
    
    <list name="annotation_keyword_list">
      <item> defaultValue </item>
    </list>

    
    <contexts>

      <context name="cx_start" attribute="ds_normalText" lineEndContext="#stay">
	<Detect2Chars char="#" char1="#" attribute="ds_annotation" context="cx_annotation" \
/>  <DetectChar char="#" attribute="ds_comment" context="cx_comment" />
	<DetectChar char="&quot;" attribute="ds_value" context="cx_value" />
	<keyword String="rnc_keyword_list" attribute="ds_rncKeyword" context="#stay" />
	<keyword String="annotation_keyword_list" attribute="ds_annotationKeyword" \
context="#stay" />  <keyword String="xsd_keyword_list" attribute="ds_xsdKeyword" \
context="#stay" />  <RegExpr String="[.,?\*\+&amp;\|{}()\[\]]" attribute="ds_keyword" \
context="#stay" />  <RegExpr String="&name;:" attribute="ds_namespace" \
context="#stay" />  <RegExpr String="&name;" attribute="ds_name" context="#stay" />
      </context>
      
      <context name="cx_annotation" attribute="ds_annotation" lineEndContext="#pop">
	<RegExpr String=".*" attribute="ds_annotation" context="#stay" />
      </context>
      
      <context name="cx_comment" attribute="ds_comment" lineEndContext="#pop">
	<RegExpr String=".*" attribute="ds_comment" context="#stay" />
      </context>
      
      <context name="cx_value" attribute="ds_value" lineEndContext="#stay">
	<DetectChar char="&quot;" attribute="ds_value" context="#pop" />
      </context>
      
    </contexts>
    
    <itemDatas>
    
      <itemData name="ds_normalText" defStyleNum="dsNormal" />
      <itemData name="ds_keyword" defStyleNum="dsKeyword" />
      <itemData name="ds_rncKeyword" defStyleNum="dsString" bold="1" color="#000080" \
                />
      <itemData name="ds_annotationKeyword" defStyleNum="dsString" bold="1" \
                color="#FF0000" />
      <itemData name="ds_xsdKeyword" defStyleNum="dsString" bold="1" color="#0000FF" \
/>  <itemData name="ds_comment" defStyleNum="dsComment" />
      <itemData name="ds_annotation" defStyleNum="dsString" color="#6295FF" \
                italic="1" />
      <itemData name="ds_value" defStyleNum="dsString" color="#800000" \
                selColor="#ffffff" bold="0" italic="0" />
      <itemData name="ds_namespace" defStyleNum="dsString" color="#800080" \
                selColor="#ffffff" bold="0" italic="0" />
      <itemData name="ds_name" defStyleNum="dsString" color="#008000" \
selColor="#ffffff" />  
    </itemDatas>

  </highlighting>
  
</language>


["rng.xml" (text/xml)]

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd"
[
	<!ENTITY name    "[A-Za-z_][\w._-]*">
]>
<language name="Relax NG" version="1.0" kateversion="2.4" section="Markup" \
extensions="*.rng;*.RNG" author="Zdeněk Klíma (klimazde@fel.cvut.cz)" \
license="LGPL" priority="5">

  <highlighting>

    <list name="element_list">
      <item> div </item>
      <item> element </item>
      <item> grammar </item>
      <item> start </item>
      <item> ref </item>
      <item> define </item>
      <item> choice </item>
      <item> attribute </item>
      <item> data </item>
      <item> interleave </item>
      <item> optional </item>
      <item> text </item>
      <item> group </item>
      <item> zeroOrMore </item>
      <item> value </item>
      <item> oneOrMore </item>
      <item> except </item>
      <item> anyName </item>
      <item> nsName </item>
      <item> parentRef </item>
      <item> list </item>
      <item> mixed </item>
      <item> empty </item>
      <item> notAllowed </item>
      <item> externalRef </item>
      <item> param </item>
      <item> include </item>
    </list>
    
    <list name="attribute_list">
      <item> name </item>
      <item> datatypeLibrary </item>
      <item> ns </item>
      <item> xmlns </item>
      <item> type </item>
      <item> href </item>
      <item> combine </item>
    </list>
    
    <list name="annotation_keyword_list">
      <item> defaultValue </item>
      <item> documentation </item>
    </list>
    
    <contexts>
    
      <context name="cx_xmlDefinition" attribute="ds_normalText" \
lineEndContext="#stay" >  <StringDetect String="&lt;?xml" attribute="ds_xmlHead" \
context="#stay" />  <StringDetect String="?&gt;" attribute="ds_xmlHead" \
context="#stay" />  <IncludeRules context="cx_start" />
      </context>
    
      <context name="cx_start" attribute="ds_normalText" lineEndContext="#stay" >
	<StringDetect String="&lt;!--" attribute="ds_comment" context="cx_comment" />
	<DetectChar char="&lt;" attribute="ds_rngElement" context="cx_elementStart" />
	<DetectChar char="&amp;" attribute="ds_error" context="#stay" />
	<keyword String="datatype_list" attribute="ds_xsdDatatype" context="#stay" />
      </context>
    
      <context name="cx_comment" attribute="ds_comment" lineEndContext="#stay">
	<StringDetect String="--&gt;" attribute="ds_comment" context="#pop" />
	<Detect2Chars char="-" char1="-" attribute="ds_error" context="#stay" />
      </context>
      
      <context name="cx_elementStart" attribute="ds_normalText" \
lineEndContext="#stay">  <RegExpr String="&name;:" attribute="ds_nameSpace" \
context="#stay" />  <keyword String="element_list" attribute="ds_rngElement" \
context="#stay" />  <keyword String="annotation_keyword_list" \
attribute="ds_annotationKeyword" context="#stay" />  <RegExpr String="&name;" \
attribute="ds_anyElement" context="#stay" />  <RegExpr String="\s+&name;" \
lookAhead="true" context="cx_attribute" />  <Detect2Chars char="/" char1="&gt;" \
attribute="ds_rngElement" context="#pop" />  <DetectChar char="&gt;" \
attribute="ds_rngElement" context="cx_elementContent" />  <RegExpr String="\S" \
attribute="ds_error" context="#stay" />  </context>

      <context name="cx_attribute" attribute="ds_normalText" lineEndContext="#stay">
	<DetectSpaces />
	<StringDetect String="xmlns" attribute="ds_rngAttribute" \
context="cx_nameSpaceDefinition" />  <RegExpr String="&name;:" \
attribute="ds_nameSpace" context="#stay" />  <keyword String="attribute_list" \
attribute="ds_rngAttribute" context="#stay" />  <keyword \
String="annotation_keyword_list" attribute="ds_annotationKeyword" context="#stay" />  \
<RegExpr String="&name;" attribute="ds_anyAttribute" context="#stay" />  <DetectChar \
char="=" attribute="ds_rngAttribute" context="cx_value"  />  <RegExpr String="\S" \
attribute="ds_error" context="#stay" />  </context>
      
      <context name="cx_nameSpaceDefinition" attribute="ds_normalText" \
lineEndContext="#stay">  <DetectChar char="=" lookAhead="true" \
attribute="ds_rngAttribute" context="#pop" />  <RegExpr String=":&name;" \
attribute="ds_nameSpace" context="#stay" />  </context>
      
      <context name="cx_value" attribute="ds_value" lineEndContext="#stay">
	<DetectChar char="&quot;" attribute="ds_value" context="cx_value_dq" />
	<DetectChar char="&apos;" attribute="ds_value" context="cx_value_sq" />
	<RegExpr String="\S" attribute="ds_error" context="#stay" />
      </context>
      
      <context name="cx_value_dq" attribute="ds_value" lineEndContext="#stay">
	<DetectChar char="&quot;" attribute="ds_value" context="#pop#pop#pop" />
	<IncludeRules context="cx_valueInvalidChars" />
      </context>
      
      <context name="cx_value_sq" attribute="ds_value" lineEndContext="#stay">
	<DetectChar char="&apos;" attribute="ds_value" context="#pop#pop#pop" />
	<IncludeRules context="cx_valueInvalidChars" />
      </context>

      <context name="cx_valueInvalidChars" attribute="ds_error" \
lineEndContext="#stay">  <DetectChar char="&amp;" attribute="ds_error" \
context="#stay" />  <DetectChar char="&lt;" attribute="ds_error" context="#stay" />
      </context>

      <context name="cx_elementContent" attribute="ds_normalText" \
lineEndContext="#stay">  <Detect2Chars char="&lt;" char1="/" \
attribute="ds_rngElement" context="cx_elementEnd" />  <IncludeRules \
context="cx_start" />  </context>
      
      <context name="cx_elementEnd" attribute="ds_normalText" lineEndContext="#stay">
	<RegExpr String="&name;:" attribute="ds_nameSpace" context="#stay" />
	<DetectChar char="&gt;" attribute="ds_rngElement" context="#pop#pop#pop"  />
	<keyword String="element_list" attribute="ds_rngElement" context="#stay" />
	<keyword String="annotation_keyword_list" attribute="ds_annotationKeyword" \
context="#stay" />  <RegExpr String="&name;" attribute="ds_anyElement" \
context="#stay" />  <RegExpr String="\s[^&gt;]" attribute="ds_error" context="#stay" \
/>  <RegExpr String="\S" attribute="ds_error" context="#stay" />
      </context>
    </contexts>
    
    <itemDatas>
      <itemData name="ds_normalText" defStyleNum="dsNormal" />
      <itemData name="ds_xmlHead" defStyleNum="dsKeyword" />
      <itemData name="ds_comment" defStyleNum="dsComment" />
      <itemData name="ds_error" defStyleNum="dsError" />
      <itemData name="ds_rngElement" defStyleNum="dsString" color="#000080" \
                selColor="#ffffff" bold="1" italic="0" />
      <itemData name="ds_anyElement" defStyleNum="dsString" color="#000080" \
                selColor="#ffffff" bold="0" italic="1" underline="1" />
      <itemData name="ds_rngAttribute" defStyleNum="dsString" color="#008000" \
                selColor="#ffffff" bold="0" italic="0" />
      <itemData name="ds_anyAttribute" defStyleNum="dsString" color="#008000" \
                selColor="#ffffff" bold="0" italic="1" underline="1" />
      <itemData name="ds_value" defStyleNum="dsString" color="#800000" \
                selColor="#ffffff" bold="0" italic="0" />
      <itemData name="ds_nameSpace" defStyleNum="dsString" color="#800080" \
                selColor="#ffffff" bold="1" italic="0" />
      <itemData name="ds_annotationKeyword" defStyleNum="dsString" bold="1" \
color="#FF0000" />  </itemDatas>

  </highlighting>
  
  <general>
  
    <comments>
      <comment name="multiLine" start="&lt;!--" end="--&gt;" />
    </comments>
    
    <indentation mode="xml" />
    
  </general>
  
</language>



_______________________________________________
KWrite-Devel mailing list
KWrite-Devel@kde.org
https://mail.kde.org/mailman/listinfo/kwrite-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic