diff options
Diffstat (limited to 'kate/data/j.xml')
-rw-r--r-- | kate/data/j.xml | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/kate/data/j.xml b/kate/data/j.xml new file mode 100644 index 000000000..5393f278a --- /dev/null +++ b/kate/data/j.xml @@ -0,0 +1,69 @@ +<?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> |