Added lexars
This commit is contained in:
parent
382b2ce94b
commit
f9f64b0558
820 changed files with 149371 additions and 0 deletions
lexers/embedded
157
lexers/embedded/j.xml
Normal file
157
lexers/embedded/j.xml
Normal file
|
@ -0,0 +1,157 @@
|
|||
<lexer>
|
||||
<config>
|
||||
<name>J</name>
|
||||
<alias>j</alias>
|
||||
<filename>*.ijs</filename>
|
||||
<mime_type>text/x-j</mime_type>
|
||||
</config>
|
||||
<rules>
|
||||
<state name="singlequote">
|
||||
<rule pattern="[^']">
|
||||
<token type="LiteralString"/>
|
||||
</rule>
|
||||
<rule pattern="''">
|
||||
<token type="LiteralString"/>
|
||||
</rule>
|
||||
<rule pattern="'">
|
||||
<token type="LiteralString"/>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
</state>
|
||||
<state name="root">
|
||||
<rule pattern="#!.*$">
|
||||
<token type="CommentPreproc"/>
|
||||
</rule>
|
||||
<rule pattern="NB\..*">
|
||||
<token type="CommentSingle"/>
|
||||
</rule>
|
||||
<rule pattern="\n+\s*Note">
|
||||
<token type="CommentMultiline"/>
|
||||
<push state="comment"/>
|
||||
</rule>
|
||||
<rule pattern="\s*Note.*">
|
||||
<token type="CommentSingle"/>
|
||||
</rule>
|
||||
<rule pattern="\s+">
|
||||
<token type="Text"/>
|
||||
</rule>
|
||||
<rule pattern="'">
|
||||
<token type="LiteralString"/>
|
||||
<push state="singlequote"/>
|
||||
</rule>
|
||||
<rule pattern="0\s+:\s*0|noun\s+define\s*$">
|
||||
<token type="NameEntity"/>
|
||||
<push state="nounDefinition"/>
|
||||
</rule>
|
||||
<rule pattern="(([1-4]|13)\s+:\s*0|(adverb|conjunction|dyad|monad|verb)\s+define)\b">
|
||||
<token type="NameFunction"/>
|
||||
<push state="explicitDefinition"/>
|
||||
</rule>
|
||||
<rule pattern="(label_|goto_|for_)\b[a-zA-Z]\w*\.">
|
||||
<token type="NameLabel"/>
|
||||
</rule>
|
||||
<rule pattern="(continue|select|return|assert|catchd|catcht|elseif|whilst|break|catch|fcase|while|throw|else|case|end|try|for|do|if)\.">
|
||||
<token type="NameLabel"/>
|
||||
</rule>
|
||||
<rule pattern="\b[a-zA-Z]\w*">
|
||||
<token type="NameVariable"/>
|
||||
</rule>
|
||||
<rule pattern="(timespacex|fixdotdot|nameclass|namelist|file2url|tmoutput|ucpcount|boxxopen|smoutput|JVERSION|datatype|toupper|tolower|alpha17|alpha27|getargs|evtloop|boxopen|fliprgb|inverse|scriptd|iospath|cutopen|isatty|toCRLF|toHOST|isutf8|getenv|stdout|script|usleep|sminfo|expand|stderr|clear|fetch|every|erase|empty|Debug|EMPTY|split|names|timex|cutLF|stdin|apply|items|table|exit|Note|list|take|leaf|type|bind|drop|rows|each|echo|sign|CRLF|utf8|sort|pick|ARGV|uucp|ucp|DEL|inv|hfd|dfh|def|LF2|EAV|toJ|TAB|nl|FF|LF|bx|nc|CR|on)">
|
||||
<token type="NameFunction"/>
|
||||
</rule>
|
||||
<rule pattern="=[.:]">
|
||||
<token type="Operator"/>
|
||||
</rule>
|
||||
<rule pattern="[-=+*#$%@!~`^&";:.,<>{}\[\]\\|/]">
|
||||
<token type="Operator"/>
|
||||
</rule>
|
||||
<rule pattern="[abCdDeEfHiIjLMoprtT]\.">
|
||||
<token type="KeywordReserved"/>
|
||||
</rule>
|
||||
<rule pattern="[aDiLpqsStux]\:">
|
||||
<token type="KeywordReserved"/>
|
||||
</rule>
|
||||
<rule pattern="(_[0-9])\:">
|
||||
<token type="KeywordConstant"/>
|
||||
</rule>
|
||||
<rule pattern="\(">
|
||||
<token type="Punctuation"/>
|
||||
<push state="parentheses"/>
|
||||
</rule>
|
||||
<rule>
|
||||
<include state="numbers"/>
|
||||
</rule>
|
||||
</state>
|
||||
<state name="comment">
|
||||
<rule pattern="[^)]">
|
||||
<token type="CommentMultiline"/>
|
||||
</rule>
|
||||
<rule pattern="^\)">
|
||||
<token type="CommentMultiline"/>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
<rule pattern="[)]">
|
||||
<token type="CommentMultiline"/>
|
||||
</rule>
|
||||
</state>
|
||||
<state name="explicitDefinition">
|
||||
<rule pattern="\b[nmuvxy]\b">
|
||||
<token type="NameDecorator"/>
|
||||
</rule>
|
||||
<rule>
|
||||
<include state="root"/>
|
||||
</rule>
|
||||
<rule pattern="[^)]">
|
||||
<token type="Name"/>
|
||||
</rule>
|
||||
<rule pattern="^\)">
|
||||
<token type="NameLabel"/>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
<rule pattern="[)]">
|
||||
<token type="Name"/>
|
||||
</rule>
|
||||
</state>
|
||||
<state name="numbers">
|
||||
<rule pattern="\b_{1,2}\b">
|
||||
<token type="LiteralNumber"/>
|
||||
</rule>
|
||||
<rule pattern="_?\d+(\.\d+)?(\s*[ejr]\s*)_?\d+(\.?=\d+)?">
|
||||
<token type="LiteralNumber"/>
|
||||
</rule>
|
||||
<rule pattern="_?\d+\.(?=\d+)">
|
||||
<token type="LiteralNumberFloat"/>
|
||||
</rule>
|
||||
<rule pattern="_?\d+x">
|
||||
<token type="LiteralNumberIntegerLong"/>
|
||||
</rule>
|
||||
<rule pattern="_?\d+">
|
||||
<token type="LiteralNumberInteger"/>
|
||||
</rule>
|
||||
</state>
|
||||
<state name="nounDefinition">
|
||||
<rule pattern="[^)]">
|
||||
<token type="LiteralString"/>
|
||||
</rule>
|
||||
<rule pattern="^\)">
|
||||
<token type="NameLabel"/>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
<rule pattern="[)]">
|
||||
<token type="LiteralString"/>
|
||||
</rule>
|
||||
</state>
|
||||
<state name="parentheses">
|
||||
<rule pattern="\)">
|
||||
<token type="Punctuation"/>
|
||||
<pop depth="1"/>
|
||||
</rule>
|
||||
<rule>
|
||||
<include state="explicitDefinition"/>
|
||||
</rule>
|
||||
<rule>
|
||||
<include state="root"/>
|
||||
</rule>
|
||||
</state>
|
||||
</rules>
|
||||
</lexer>
|
Loading…
Add table
Add a link
Reference in a new issue