diff options
Diffstat (limited to 'kate/data/nemerle.xml')
-rw-r--r-- | kate/data/nemerle.xml | 208 |
1 files changed, 208 insertions, 0 deletions
diff --git a/kate/data/nemerle.xml b/kate/data/nemerle.xml new file mode 100644 index 000000000..edf5c7348 --- /dev/null +++ b/kate/data/nemerle.xml @@ -0,0 +1,208 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd"> +<!-- Nemerle syntax highlighting v0.2 by caminoix, approved of and corrected by Kamil Skalski (Nazgul) --> +<language name="Nemerle" version="0.32" kateversion="2.4" section="Sources" extensions="*.n" mimetype="text/x-nemerle" casesensitive="1" author="caminoix + Kamil Skalski (Nazgul)" license=""> + <highlighting> + <list name="Attributes"> + <item>abstract</item> + <item>def</item> + <item>delegate</item> + <item>event</item> + <item>extern</item> + <item>internal</item> + <item>mutable</item> + <item>override</item> + <item>public</item> + <item>private</item> + <item>protected</item> + <item>sealed</item> + <item>static</item> + <item>volatile</item> + <item>virtual</item> + <item>new</item> + </list> + + <list name="CompilationUnits"> + <item>macro</item> + <item>namespace</item> + <item>using</item> + <item>\[Record\]</item> + </list> + + <list name="DataTypes"> + <item>array</item> + <item>bool</item> + <item>byte</item> + <item>char</item> + <item>decimal</item> + <item>double</item> + <item>enum</item> + <item>float</item> + <item>int</item> + <item>list</item> + <item>long</item> + <item>object</item> + <item>sbyte</item> + <item>short</item> + <item>string</item> + <item>uint</item> + <item>ulong</item> + <item>ushort</item> + <item>variant</item> + <item>void</item> + </list> + + <list name="Keywords"> + <item>_</item> + <item>as</item> + <item>assert</item> + <item>base</item> + <item>catch</item> + <item>checked</item> + <item>do</item> + <item>else</item> + <item>false</item> + <item>finally</item> + <item>for</item> + <item>foreach</item> + <item>fun</item> + <item>get</item> + <item>if</item> + <item>ignore</item> + <item>implements</item> + <item>in</item> + <item>is</item> + <item>lock</item> + <item>match</item> + <item>null</item> + <item>out</item> + <item>params</item> + <item>ref</item> + <item>repeat</item> + <item>set</item> + <item>syntax</item> + <item>this</item> + <item>throw</item> + <item>true</item> + <item>try</item> + <item>typeof</item> + <item>unchecked</item> + <item>unless</item> + <item>when</item> + <item>where</item> + <item>while</item> + <item>with</item> + </list> + + <list name="Preprocessing"> + <item>#define</item> + <item>#elif</item> + <item>#else</item> + <item>#endif</item> + <item>#endregion</item> + <item>#error</item> + <item>#if</item> + <item>#line</item> + <item>#region</item> + <item>#undef</item> + <item>#warning</item> + <item>#pragma</item> + </list> + + <list name="TypeDeclarations"> + <item>class</item> + <item>interface</item> + <item>module</item> + <item>struct</item> + <item>type</item> + </list> + + <contexts> + <context name="Normal" attribute="Normal Text" lineEndContext="#stay"> + <StringDetect attribute="Comment" context="SingleLineComment" String="//" /> + <StringDetect attribute="Comment" context="MultiLineComment" String="/*" /> + <DetectChar attribute="String" context="NormalString" char=""" /> + <Detect2Chars attribute="String" context="StringInterpolation" char="$" char1=""" /> + + <Int attribute="Number" context="#stay" /> + <Float attribute="Number" context="#stay" /> + + <keyword attribute="Attribute" context="#stay" String="Attributes" /> + <keyword attribute="CompilationUnit" context="#stay" String="CompilationUnits" /> + <keyword attribute="DataType" context="#stay" String="DataTypes" /> + <keyword attribute="Keyword" context="#stay" String="Keywords" /> + <keyword attribute="Preprocessing" context="#stay" String="Preprocessing" /> + <keyword attribute="TypeDeclaration" context="#stay" String="TypeDeclarations" /> + + <DetectChar attribute="Keyword" context="#stay" char="{" beginRegion="Region1" /> + <DetectChar attribute="Keyword" context="#stay" char="}" endRegion="Region1" /> + <DetectChar attribute="Keyword" context="#stay" char="(" beginRegion="Region2" /> + <DetectChar attribute="Keyword" context="#stay" char=")" endRegion="Region2" /> + <Detect2Chars attribute="CompilationUnit" context="#stay" char="<" char1="[" beginRegion="Region3" /> + <Detect2Chars attribute="CompilationUnit" context="#stay" char="]" char1=">" endRegion="Region3" /> + </context> + + <context name="SingleLineComment" attribute="Comment" lineEndContext="#pop"> + <StringDetect attribute="Comment" String="//" context="#pop" /> + </context> + <context name="MultiLineComment" attribute="Comment" lineEndContext="#stay"> + <StringDetect attribute="Comment" String="*/" context="#pop" /> + </context> + + <context name="NormalString" attribute="String" lineEndContext="#stay"> + <DetectChar attribute="String" char=""" context="#pop" /> + <RegExpr attribute="EscapeSequence" context="#stay" String="\{[0-9]+\}" /> + + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1=""" /> + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1="\" /> + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1="t" /> + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1="n" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u0008" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000D" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000d" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000A" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000a" /> + </context> + + <context name="StringInterpolation" attribute="String" lineEndContext="#stay"> + <DetectChar attribute="String" char=""" context="#pop" /> + <RegExpr attribute="EscapeSequence" context="#stay" String="\{[0-9]+\}" /> + <RegExpr attribute="EscapeSequence" context="#stay" String="\$(\S)+\s" /> + + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1=""" /> + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1="\" /> + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1="t" /> + <Detect2Chars attribute="EscapeSequence" context="#stay" char="\" char1="n" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u0008" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000D" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000d" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000A" /> + <StringDetect attribute="EscapeSequence" context="#stay" String="\u000a" /> + </context> + </contexts> + + <itemDatas> + <itemData name="Normal Text" defStyleNum="dsNormal" /> + + <itemData name="Comment" defStyleNum="dsComment" /> + <itemData name="String" defStyleNum="dsString" /> + + <itemData name="Number" defStyleNum="dsOthers" color="#00009f" selColor="#0000e9"/> + + <itemData name="Attribute" defStyleNum="dsOthers" color="#28712f" selColor="#34923d" /> + <itemData name="CompilationUnit" defStyleNum="dsChar" /> + <itemData name="DataType" defStyleNum="dsDataType" /> + <itemData name="EscapeSequence" defStyleNum="dsBaseN" /> + <itemData name="Keyword" defStyleNum="dsKeyword" /> + <itemData name="Preprocessing" defStyleNum="dsChar" /> + <itemData name="TypeDeclaration" defStyleNum="dsOthers" color="#eeb312" selColor="ffc013" bold="1" /> + </itemDatas> + </highlighting> + + <general> + <comments> + <comment name="singleLine" start="//" /> + <comment name="multiLine" start="/*" end="*/" /> + </comments> + </general> +</language> |