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.
70 lines
4.4 KiB
70 lines
4.4 KiB
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE language SYSTEM "language.dtd"
|
|
[
|
|
<!ENTITY unum "\d+"> <!-- Unsigned integer number -->
|
|
<!ENTITY anum "[a-z\d]+"> <!-- Non-10-based unsigned integer number, e.g. 1a -->
|
|
<!ENTITY bnum "\b&unum;b_?&anum;(\.&anum;)\b"> <!-- Based integer number, e.g. 36b_1a.z2 -->
|
|
<!ENTITY inum "_?&unum;"> <!-- Integer number -->
|
|
<!ENTITY xnum "\b&inum;x\b"> <!-- Extended precision integer number, e.g. _123x -->
|
|
<!ENTITY rnum "\b&inum;r&inum;\b"> <!-- Rational number, e.g. _1r23 -->
|
|
<!ENTITY fnum "&inum;(\.&unum;)?"> <!-- Floating point number, e.g. 1.23 -->
|
|
<!ENTITY enum "(&fnum;(e&inum;)?|_?_|_\.)"> <!-- Exponential (scientific) notation, e.g. 1.2e_3 -->
|
|
<!ENTITY cnum "&enum;((j|a[dr])&enum;)?"> <!-- Complex number, e.g. 1.2e3j4.5e_6 -->
|
|
<!ENTITY pnum "\b&cnum;([px]&cnum;)?(?![a-z\d_.])"> <!-- Number based on pi or on e, e.g. 1j2p3j4 -->
|
|
<!ENTITY name "[a-zA-Z][a-zA-Z\d_]*"> <!-- Name -->
|
|
<!ENTITY lname "\b&name;_(&name;)?_\b"> <!-- Locative, a__ means a_base_ -->
|
|
<!ENTITY ilname "\b&name;__&name;\b"> <!-- Indirect locative -->
|
|
]>
|
|
<!--
|
|
j.xml syntax highlighting for J programming language under Kate
|
|
|
|
J is a modern, high-level, general-purpose, high-performance, portable programming language
|
|
http://www.jsoftware.com
|
|
|
|
Kate is a KDE Advanced Text Editor
|
|
http://kate.kde.org/
|
|
-->
|
|
<language name="J" section="Scripts" version="1.1" kateversion="2.4" extensions="*.ijs;*.IJS" mimetype="text/x-j;text/x-jsrc" author="Igor Zhuravlov (zhuravlov.ip@ya.ru)" indenter="normal" license="GPL">
|
|
<highlighting>
|
|
<contexts>
|
|
<context attribute="Sentence" lineEndContext="#stay" name="sentence">
|
|
<DetectSpaces/>
|
|
<StringDetect attribute="Comment" context="comment" String="NB."/>
|
|
<RegExpr attribute="String" context="#stay" String="'([^']|'')*'"/>
|
|
<RegExpr attribute="Adverb" context="#stay" String="([/\\bfMt]\.|t:|[~/\\}])(?![.:])"/>
|
|
<RegExpr attribute="Verb" context="#stay" String="(_?\d:|p\.\.|[ACeEIjLor]\.|[_/\\iqsux]:|\{::|[=!\]]|[-<>+*%$|,#{][.:]?|[;[]:?|[~}"ip][.:]|[?^]\.?)(?![.:])"/>
|
|
<RegExpr attribute="Number" context="#stay" String="&bnum;|&xnum;|&rnum;|&pnum;"/>
|
|
<AnyChar attribute="Parens" context="#stay" String="()"/>
|
|
<RegExpr attribute="Conjunction" context="#stay" String="("|[@&][.:]?|[.:][.:]?|[!D][.:]|&\.:|[;dHT]\.|`:?|[LS^]:)(?![.:])"/>
|
|
<RegExpr attribute="Control" context="#stay" String="\b(assert|break|f?case|catch[dt]?|continue|do|else(if)?|end|for(_&name;)?|(goto|label)_&name;|if|return|select|throw|try|whil(e|st))\.(?![.:])"/>
|
|
<Detect2Chars attribute="Copulae Global" context="#stay" char="=" char1=":"/>
|
|
<Detect2Chars attribute="Copulae Local" context="#stay" char="=" char1="."/>
|
|
<RegExpr attribute="ExpArg" context="#stay" String="\b[nmuvxy]\.?(?![\w:])"/>
|
|
<RegExpr attribute="Noun" context="#stay" String="\ba[.:](?![.:])"/>
|
|
</context>
|
|
<context attribute="Comment" lineEndContext="#pop" name="comment"/>
|
|
</contexts>
|
|
|
|
<itemDatas>
|
|
<itemData name="Sentence" defStyleNum="dsNormal"/>
|
|
<itemData name="Adverb" defStyleNum="dsKeyword" color="#d44"/>
|
|
<itemData name="Comment" defStyleNum="dsComment" spellChecking="true"/>
|
|
<itemData name="Conjunction" defStyleNum="dsKeyword" color="#d90"/>
|
|
<itemData name="Control" defStyleNum="dsKeyword" color="#f00" bold="false"/>
|
|
<itemData name="Copulae Global" defStyleNum="dsKeyword" color="#a52a2a"/>
|
|
<itemData name="Copulae Local" defStyleNum="dsKeyword" color="#a020f0" bold="false"/>
|
|
<itemData name="ExpArg" defStyleNum="dsKeyword" color="#a52a2a" italic="true"/>
|
|
<itemData name="Noun" defStyleNum="dsKeyword" color="#00f" bold="true"/>
|
|
<itemData name="Number" defStyleNum="dsDecVal" color="#a020f0"/>
|
|
<itemData name="Parens" defStyleNum="dsRegionMarker" color="#000"/>
|
|
<itemData name="String" defStyleNum="dsString" color="#00f"/>
|
|
<itemData name="Verb" defStyleNum="dsKeyword" color="#096"/>
|
|
</itemDatas>
|
|
</highlighting>
|
|
<general>
|
|
<comments>
|
|
<comment name="singleLine" start="NB."/>
|
|
</comments>
|
|
</general>
|
|
</language>
|