Warning, /frameworks/syntax-highlighting/data/syntax/j.xml is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <!--
0003 
0004 Changes:
0005 
0006 Version 1.5 (2015-04-29) by Igor Zhuravlov
0007 - language/@kateversion upgraded from "2.4" to "3.4"
0008 
0009 Version 1.4 (2015-04-20) by Igor Zhuravlov
0010 - merge versions 1.2 and 1.3
0011 - removed not used def and defc entities
0012 - approached color scheme to JQt
0013 - separated out color scheme to j14.katehlcolor file
0014 - dropped ExpArg: n. m. u. v. x. y.
0015 - reformatted a bit
0016 
0017 Version 1.3 (2014-05-26) by greg heil
0018 - based on version 1.1
0019 - add Foldable feature
0020 - change color scheme
0021 - add def and defc entities
0022 - split long lines
0023 
0024 Version 1.2 (2013-09-29) by Igor Zhuravlov
0025 - fix Adverb regexp's pattern
0026 - fix Verb regexp's pattern
0027 
0028 Version 1.1 (2013-03-18) by Igor Zhuravlov
0029 - fix enum entity's exponent definition
0030 - rework String regexp's pattern
0031 - use entities in Number regexp's pattern
0032 - use entities in Control regexp's pattern
0033 
0034 Version 1.0 (2012-03-21) by Igor Zhuravlov
0035 - initial release
0036 
0037 -->
0038 <!DOCTYPE language
0039 [
0040   <!ENTITY unum "\d+">                                 <!-- Unsigned integer number -->
0041   <!ENTITY anum "[a-z\d]+">                            <!-- Non-10-based unsigned integer number, e.g. 1a -->
0042   <!ENTITY bnum "\b&unum;b_?&anum;(\.&anum;)\b">       <!-- Based integer number, e.g. 36b_1a.z2 -->
0043   <!ENTITY inum "_?&unum;">                            <!-- Integer number -->
0044   <!ENTITY xnum "\b&inum;x\b">                         <!-- Extended precision integer number, e.g. _123x -->
0045   <!ENTITY rnum "\b&inum;r&inum;\b">                   <!-- Rational number, e.g. _1r23 -->
0046   <!ENTITY fnum "&inum;(\.&unum;)?">                   <!-- Floating point number, e.g. 1.23 -->
0047   <!ENTITY enum "(&fnum;(e&inum;)?|_?_|_\.)">          <!-- Exponential (scientific) notation, e.g. 1.2e_3 -->
0048   <!ENTITY cnum "&enum;((j|a[dr])&enum;)?">            <!-- Complex number, e.g. 1.2e3j4.5e_6 -->
0049   <!ENTITY pnum "\b&cnum;([px]&cnum;)?(?![a-z\d_.])">  <!-- Number based on pi or e, e.g. 1j2p3j4 -->
0050   <!ENTITY name "[a-zA-Z][a-zA-Z\d_]*">                <!-- Name -->
0051   <!ENTITY lname "\b&name;_(&name;)?_\b">              <!-- Locative, a__ means a_base_ -->
0052   <!ENTITY ilname "\b&name;__&name;\b">                <!-- Indirect locative -->
0053 ]>
0054 <!--
0055   j.xml syntax highlighting for J programming language under Kate
0056 
0057   J is a modern, high-level, general-purpose, high-performance, portable programming language
0058   http://www.jsoftware.com
0059 
0060   Kate is a KDE Advanced Text Editor
0061   http://kate.kde.org/
0062 -->
0063 <language name="J"
0064           section="Scripts"
0065           version="5"
0066           kateversion="5.0"
0067           extensions="*.ijs;*.ijt;*.IJS;*.IJT"
0068           mimetype="text/x-j;text/x-jsrc"
0069           author="Igor Zhuravlov (zhuravlov.ip@ya.ru), greg heil (gheil.j@gmail.com)"
0070           indenter="normal"
0071           license="GPL">
0072   <highlighting>
0073     <contexts>
0074       <context attribute="Sentence" lineEndContext="#pop" name="sentence">
0075         <DetectSpaces/>
0076         <RegExpr      attribute="Foldable"       context="#stay"        String=":\s*0|\bdefine\b" beginRegion="Fold"/>
0077         <LineContinue attribute="Foldable"       context="#stay"        char=")" endRegion="Fold" column="0"/>
0078         <StringDetect attribute="Comment"        context="#stay"        String="NB.(" beginRegion="Fold"/>
0079         <StringDetect attribute="Comment"        context="#stay"        String="NB.)" endRegion="Fold"/>
0080         <StringDetect attribute="Comment"        context="comment line" String="NB."/>
0081         <RegExpr      attribute="String"         context="#stay"        String="&apos;([^&apos;]|&apos;&apos;)*&apos;"/>
0082         <RegExpr      attribute="Adverb"         context="#stay"        String="([/\\]\.|\b[bfMt]\.|\bt:|[~/\\}])(?![.:])"/>
0083         <RegExpr      attribute="Verb"           context="#stay"        String="(_?\d:|p\.\.|[ACeEIjLor]\.|[_/\\iqsux]:|\{::|[=!\]]|[-&lt;&gt;+*%$|,#\{][.:]?|[;\[]:?|[~}&quot;ip][.:]|[?^]\.?)(?![.:])"/>
0084         <RegExpr      attribute="Number"         context="#stay"        String="&bnum;|&xnum;|&rnum;|&pnum;"/>
0085         <AnyChar      attribute="Parens"         context="#stay"        String="()"/>
0086         <RegExpr      attribute="Conjunction"    context="#stay"        String="(&quot;|[@&amp;][.:]?|[.:][.:]?|[!D][.:]|&amp;\.:|[;dHT]\.|`:?|[LS^]:)(?![.:])"/>
0087         <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))\.(?![.:])"/>
0088         <Detect2Chars attribute="Copulae Global" context="#stay"        char="=" char1=":"/>
0089         <Detect2Chars attribute="Copulae Local"  context="#stay"        char="=" char1="."/>
0090         <RegExpr      attribute="ExpArg"         context="#stay"        String="\b[nmuvxy](?![\w:.])"/>
0091         <RegExpr      attribute="Noun"           context="#stay"        String="\ba[.:](?![.:])"/>
0092       </context>
0093       <context attribute="Comment" lineEndContext="#pop" name="comment line">
0094         <DetectSpaces />
0095         <IncludeRules context="##Comments"/>
0096       </context>
0097     </contexts>
0098     <itemDatas>
0099       <itemData name="Sentence"       defStyleNum="dsNormal"/>
0100       <itemData name="Adverb"         defStyleNum="dsKeyword"      spellChecking="false"/>
0101       <itemData name="Comment"        defStyleNum="dsComment"      spellChecking="true"/>
0102       <itemData name="Conjunction"    defStyleNum="dsKeyword"      spellChecking="false"/>
0103       <itemData name="Control"        defStyleNum="dsKeyword"      spellChecking="false"/>
0104       <itemData name="Copulae Global" defStyleNum="dsKeyword"      spellChecking="false"/>
0105       <itemData name="Copulae Local"  defStyleNum="dsKeyword"      spellChecking="false"/>
0106       <itemData name="ExpArg"         defStyleNum="dsKeyword"      spellChecking="false" italic="true"/>
0107       <itemData name="Foldable"       defStyleNum="dsRegionMarker" spellChecking="false"/>
0108       <itemData name="Noun"           defStyleNum="dsKeyword"      spellChecking="false" bold="true"/>
0109       <itemData name="Number"         defStyleNum="dsDecVal"       spellChecking="false"/>
0110       <itemData name="Parens"         defStyleNum="dsRegionMarker" spellChecking="false"/>
0111       <itemData name="String"         defStyleNum="dsString"       spellChecking="false"/>
0112       <itemData name="Verb"           defStyleNum="dsKeyword"      spellChecking="false"/>
0113     </itemDatas>
0114   </highlighting>
0115   <general>
0116     <comments>
0117       <comment name="multiLine" start="NB.(" end="NB.)" region="Fold"/>
0118       <comment name="singleLine" start="NB."/>
0119     </comments>
0120     <folding indentationsensitive="true"/>
0121   </general>
0122 </language>
0123 <!-- kate: replace-tabs on; indent-width 2; -->