Created
November 28, 2013 20:16
-
-
Save Varriount/7697584 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE language SYSTEM "language.dtd"> | |
<language | |
name="Nimrod" | |
version="1.0" | |
kateversion="2.4" | |
section="Sources" | |
extensions="*.nim" | |
mimetype="text/x-nimrod"> | |
<highlighting> | |
<list name="keywords"> | |
<item> const </item> | |
<item> converter </item> | |
<item> export </item> | |
<item> import </item> | |
<item> include </item> | |
<item> iterator </item> | |
<item> lamba </item> | |
<item> let </item> | |
<item> var </item> | |
<!-- hymn --> | |
<item> finis </item> | |
<item> funcs </item> | |
<item> inits </item> | |
</list> | |
<list name="controls"> | |
<item> addr </item> | |
<item> and </item> | |
<item> assert </item> | |
<item> asm </item> | |
<item> as </item> | |
<item> atomic </item> | |
<item> bind </item> | |
<item> block </item> | |
<item> break </item> | |
<item> case </item> | |
<item> cast </item> | |
<item> continue </item> | |
<item> discard </item> | |
<item> div </item> | |
<item> do </item> | |
<item> echo </item> | |
<item> elif </item> | |
<item> else </item> | |
<item> end </item> | |
<item> except </item> | |
<item> finally </item> | |
<item> for </item> | |
<item> from </item> | |
<item> if </item> | |
<item> in </item> | |
<item> is </item> | |
<item> isnot </item> | |
<item> mixin </item> | |
<item> mod </item> | |
<item> not </item> | |
<item> notin </item> | |
<item> of </item> | |
<item> or </item> | |
<item> raise </item> | |
<item> return </item> | |
<item> try </item> | |
<item> when </item> | |
<item> while </item> | |
<item> quit </item> | |
<item> using </item> <!-- ?? --> | |
<item> shl </item> | |
<item> shr </item> | |
<item> xor </item> | |
<item> yield </item> | |
</list> | |
<list name="types"> | |
<item> array </item> | |
<item> bool </item> | |
<item> byte </item> | |
<item> cchar </item> | |
<item> cdouble </item> | |
<item> char </item> | |
<item> cfloat </item> | |
<item> cint </item> | |
<item> clong </item> | |
<item> cshort </item> | |
<item> cstring </item> | |
<item> cuint </item> | |
<item> distinct </item> | |
<item> enum </item> | |
<item> expr </item> | |
<item> float </item> | |
<item> float32 </item> | |
<item> float64 </item> | |
<item> generic </item> | |
<item> int </item> | |
<item> int8 </item> | |
<item> int16 </item> | |
<item> int32 </item> | |
<item> int64 </item> | |
<item> interface </item> | |
<item> object </item> | |
<item> openarray </item> | |
<item> set </item> | |
<item> seq </item> | |
<item> stmt </item> | |
<item> string </item> | |
<item> tuple </item> | |
<item> typedesc </item> | |
<item> uint </item> | |
<item> uint8 </item> | |
<item> uint16 </item> | |
<item> uint32 </item> | |
<item> uint64 </item> | |
<item> varargs </item> | |
<item> void </item> | |
<!-- hymn --> | |
<item> list </item> | |
</list> | |
<list name="attrs"> | |
<item> out </item> | |
<item> ptr </item> | |
<item> ref </item> | |
<item> shared </item> | |
<item> static </item> | |
</list> | |
<list name="consts"> | |
<item> false </item> | |
<item> inf </item> | |
<item> nil </item> | |
<item> true </item> | |
</list> | |
<list name="others"> | |
<item> result </item> | |
<!-- hymn --> | |
<item> this </item> | |
</list> | |
<contexts> | |
<context name="Normal" attribute="Normal Text" lineEndContext="#stay"> | |
<keyword context="#stay" attribute="Keywords" String="keywords"/> | |
<keyword context="#stay" attribute="Controls" String="controls"/> | |
<keyword context="#stay" attribute="Types" String="types"/> | |
<keyword context="#stay" attribute="Attrs" String="attrs"/> | |
<keyword context="#stay" attribute="Others" String="others"/> | |
<keyword context="#stay" attribute="String" String="consts"/> | |
<RegExpr context="Typetar" attribute="Keywords" String="\btype\b\s*" beginRegion="TypeDef"/> | |
<RegExpr context="Typetar" attribute="Keywords" String="\bpart\b\s*" beginRegion="TypeDef"/> <!-- hymn --> | |
<RegExpr context="Typetar" attribute="Keywords" String="\bmode\b\s*" beginRegion="TypeDef"/> <!-- hymn --> | |
<RegExpr context="Proctar" attribute="Keywords" String="\bon\b\s*" beginRegion="ProcDef"/> <!-- hymn --> | |
<RegExpr context="Proctar" attribute="Keywords" String="\bproc\b\s*" beginRegion="ProcDef"/> | |
<RegExpr context="Proctar" attribute="Keywords" String="\bprop\b\s*" beginRegion="ProcDef"/> | |
<RegExpr context="Proctar" attribute="Keywords" String="\bmacro\b\s*" beginRegion="ProcDef"/> | |
<RegExpr context="Proctar" attribute="Keywords" String="\bmethod\b\s*" beginRegion="ProcDef"/> | |
<RegExpr context="Proctar" attribute="Keywords" String="\biterator\b\s*" beginRegion="ProcDef"/> | |
<RegExpr context="Proctar" attribute="Keywords" String="\btemplate\b\s*" beginRegion="ProcDef"/> | |
<RegExpr context="#stay" attribute="Types" String="\b_*[A-Z](?:\w|\._*[A-Z])*\b"/> | |
<RegExpr context="#stay" attribute="Props" String="\b(?:_*[a-z]\w*|_+[0-9]\w*)(?=\.)"/> | |
<RegExpr context="#stay" attribute="Funcs" String="\b(?:\w+)(?=\s*(?:\[.*\]\s*)?\()"/> | |
<!--<RegExpr context="#stay" attribute="Funcs" String="^\s*\w+\s*$"/>--> | |
<RegExpr context="#stay" attribute="Controls" String="\b\w+\s+(?=[\w"']+\s?(?!\s*\b))"/> | |
<DetectIdentifier/> | |
<Detect2Chars context="Pragmatar" attribute="Others" char="{" char1="." beginRegion="Pragma"/> | |
<AnyChar context="#stay" attribute="Brackets" String="()[]{},:;"/> | |
<AnyChar context="#stay" attribute="Symbols" String="+-*/=!@$%^&<>"/> | |
<Detect2Chars context="#stay" attribute="Symbols" char="." char1="."/> | |
<Int context="#stay" attribute="Decimal"/> | |
<Float context="#stay" attribute="Float"/> | |
<HlCChar context="#stay" attribute="Char"/> | |
<DetectChar context="String" attribute="String" char="""/> | |
<DetectChar context="Comment" attribute="Comment" char="#"/> | |
</context> | |
<context name="String" attribute="String" lineEndContext="#pop"> | |
<DetectChar context="#pop" attribute="String" char="""/> | |
</context> | |
<context name="Comment" attribute="Comment" lineEndContext="#pop"> | |
<LineContinue attribute="Comment" context="#stay"/> | |
</context> | |
<context name="Typetar" attribute="TypeDefs" lineEndContext="#pop"> | |
<DetectChar context="#stay" attribute="Brackets" char="."/> | |
<AnyChar context="#pop" attribute="Brackets" String="()[]{},:;" endRegion="TypeDef"/> | |
<AnyChar context="#pop" attribute="Symbols" String=" +-*/=!@$%^&<>" endRegion="TypeDef"/> | |
</context> | |
<context name="Proctar" attribute="ProcDefs" lineEndContext="#pop"> | |
<DetectChar context="QuoteProctar" attribute="ProcDefs" char="`" beginRegion="QuoteProcDef"/> | |
<DetectChar context="#stay" attribute="Brackets" char="."/> | |
<AnyChar context="#pop" attribute="Brackets" String="()[]{},:;" endRegion="ProcDef"/> | |
<AnyChar context="#pop" attribute="Symbols" String=" +-*/=!@$%^&<>" endRegion="ProcDef"/> | |
</context> | |
<context name="QuoteProctar" attribute="ProcDefs" lineEndContext="#pop"> | |
<DetectChar context="#pop" attribute="ProcDefs" char="`" endRegion="QuoteProcDef"/> | |
</context> | |
<context name="Pragmatar" attribute="Others" lineEndContext="#stay"> | |
<Detect2Chars context="#pop" attribute="Others" char="." char1="}" endRegion="Pragma"/> | |
</context> | |
</contexts> | |
<itemDatas> | |
<itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> | |
<itemData name="Keywords" defStyleNum="dsKeyword" spellChecking="false"/> | |
<itemData name="Controls" defStyleNum="dsDataType" spellChecking="false"/> | |
<itemData name="Types" defStyleNum="dsDataType" spellChecking="false"/> | |
<itemData name="Props" defStyleNum="dsDataType" spellChecking="false"/> | |
<itemData name="Funcs" defStyleNum="dsDataType" spellChecking="false"/> | |
<itemData name="Attrs" defStyleNum="dsDataType" spellChecking="false"/> | |
<itemData name="Others" defStyleNum="dsOthers" spellChecking="false"/> | |
<itemData name="TypeDefs" defStyleNum="dsDataType" spellChecking="false" bold="true"/> | |
<itemData name="ProcDefs" defStyleNum="dsString" spellChecking="false" bold="true"/> | |
<itemData name="Brackets" defStyleNum="dsKeyword" spellChecking="false"/> | |
<itemData name="Symbols" defStyleNum="dsComment" spellChecking="false"/> | |
<itemData name="Decimal" defStyleNum="dsDecVal" spellChecking="false"/> | |
<itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/> | |
<itemData name="Char" defStyleNum="dsChar" spellChecking="false"/> | |
<itemData name="String" defStyleNum="dsString" spellChecking="false"/> | |
<itemData name="Comment" defStyleNum="dsComment" spellChecking="false"/> | |
</itemDatas> | |
</highlighting> | |
<general> | |
<comments> | |
<comment name="singleLine" start="#" position="beforewhitespace"/> | |
</comments> | |
<indentation mode="python"/> | |
<keywords casesensitive="0"/> | |
</general> | |
</language> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment