Ahoi!
I'd like to adapt the syntax highlighting of the Kate editor.
But my understanding of XML is too poor...
I just changed some things from the LaTeX mode, as far as I understood.
--- context.xml ---------
<?xml version="1.01" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<language name="ConTeXt" section="Markup"
extensions="*.tex;*.TEX" mimetype="text/x-tex" casesensitive="1">
<highlighting>
<list name="keywords">
<item> start</item>
<item> itemize</item>
<item>TeX</item>
<!-- missing long list of items -- is there a way to get all ConTeXt commands
as list? -->
</list>
<contexts>
<context attribute="0" lineEndContext="0">
<StringDetect String="\start" attribute="4" context="1"
insensitive="FALSE"/>
<StringDetect String="\stop" attribute="4" context="1"
insensitive="FALSE"/>
<DetectChar char="\" attribute="2" context="2" />
<RegExpr String="%.*$" attribute="3" context="0"/>
</context>
<!-- What must I do here above? -->
<context attribute="0" lineEndContext="1">
<keyword String="keywords" attribute="1" context="1"/>
<DetectChar char="}" attribute="4" context="0"/>
</context>
<context attribute="0" lineEndContext="0">
<keyword String="keywords" attribute="2" context="0" />
</context>
</contexts>
<itemDatas>
<itemData name="Normal Text" defStyleNum="dsNormal"/>
<itemData name="Keyword" defStyleNum="dsNormal" color="#0000ff"
selColor="#ff0000" bold="1" italic="1"/>
<itemData name="Comment" defStyleNum="dsComment"/>
<itemData name="Begin End" defStyleNum="dsNormal" color="#000000"
selColor="#ffffff" bold="1" italic="1"/>
</itemDatas>
</highlighting>
<general>
<comments>
<comment name="singleLine" start="%" />
</comments>
</general>
</language>
------------------ end of context.xml ----
---- language.dtd ----
<!ELEMENT language (highlighting, general?)>
<!ATTLIST language
name CDATA #REQUIRED
section (Sources|Markup|Other|Scripts) #REQUIRED
extensions CDATA #REQUIRED
mimetype CDATA #REQUIRED
casesensitive (0|1) #IMPLIED
>
<!ELEMENT general (comments?, keywords?)>
<!ATTLIST general
>
<!ELEMENT comments (comment)+>
<!ATTLIST comments
>
<!ELEMENT comment EMPTY>
<!ATTLIST comment
name (singleLine|multiLine) #REQUIRED
start CDATA #REQUIRED
end CDATA #IMPLIED
>
<!ELEMENT keywords EMPTY>
<!ATTLIST keywords
casesensitive CDATA #IMPLIED
weakDeliminator CDATA #IMPLIED
>
<!ELEMENT highlighting (list*, contexts, itemDatas)>
<!ATTLIST highlighting
>
<!ELEMENT list (item)+>
<!ATTLIST list
name (types|keywords|attribute-definitions|literals|definitions) #REQUIRED
>
<!ELEMENT item (#PCDATA)>
<!ELEMENT contexts (context)+>
<!ELEMENT context (keyword | Float | HlCOct | HlCHex | Int | DetectChar |
Detect2Chars | AnyChar | StringDetect | RegExpr | LineContinue |
HlCStringChar | RangeDetect | HlCChar)*>
<!ATTLIST context
attribute CDATA #REQUIRED
lineEndContext NMTOKEN #REQUIRED
lineBeginContext NMTOKEN #IMPLIED
name CDATA #IMPLIED
>
<!ELEMENT keyword EMPTY>
<!ATTLIST keyword
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
String (types|keywords|attribute-definitions|literals|definitions) #REQUIRED
weakDelimiter CDATA #IMPLIED
>
<!ELEMENT Float (AnyChar)*>
<!ATTLIST Float
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
>
<!ELEMENT HlCOct EMPTY>
<!ATTLIST HlCOct
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
>
<!ELEMENT HlCHex EMPTY>
<!ATTLIST HlCHex
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
>
<!ELEMENT HlCChar EMPTY>
<!ATTLIST HlCChar
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
>
<!ELEMENT Int (StringDetect)*>
<!ATTLIST Int
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
>
<!ELEMENT DetectChar EMPTY>
<!ATTLIST DetectChar
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
char CDATA #REQUIRED
>
<!ELEMENT Detect2Chars EMPTY>
<!ATTLIST Detect2Chars
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
char CDATA #REQUIRED
char1 CDATA #REQUIRED
>
<!ELEMENT AnyChar EMPTY>
<!ATTLIST AnyChar
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
String CDATA #REQUIRED
>
<!ELEMENT StringDetect EMPTY>
<!ATTLIST StringDetect
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
String CDATA #REQUIRED
insensitive (TRUE|FALSE) #REQUIRED
>
<!ELEMENT RegExpr EMPTY>
<!ATTLIST RegExpr
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
String CDATA #REQUIRED
>
<!ELEMENT LineContinue EMPTY>
<!ATTLIST LineContinue
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
>
<!ELEMENT HlCStringChar EMPTY>
<!ATTLIST HlCStringChar
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
>
<!ELEMENT RangeDetect EMPTY>
<!ATTLIST RangeDetect
attribute CDATA #REQUIRED
context NMTOKEN #REQUIRED
char CDATA #REQUIRED
char1 CDATA #REQUIRED
>
<!ELEMENT itemDatas (itemData)+>
<!ATTLIST itemDatas
>
<!ELEMENT itemData EMPTY>
<!ATTLIST itemData
name CDATA #REQUIRED
defStyleNum CDATA #REQUIRED
color CDATA #IMPLIED
selColor CDATA #IMPLIED
italic CDATA #IMPLIED
bold CDATA #IMPLIED
>
---- end of DTD -----------