]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/ssharp.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / ssharp.xml
1 <?xml version="1.0"?>
2
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">
4
5 <!-- S# mode, by Barry Carr (Ixian Software Components Ltd)
6      based on Marcio Marchini mqm@magma.ca Smalltalk mode -->
7
8 <MODE>
9         <PROPS>
10         <PROPERTY NAME="lineComment" VALUE="#" />
11                 <PROPERTY NAME="commentStart" VALUE="&quot;" />
12                 <PROPERTY NAME="commentEnd" VALUE="&quot;" />
13                 <PROPERTY NAME="indentOpenBrackets" VALUE="[" />
14                 <PROPERTY NAME="indentCloseBrackets" VALUE="]" />
15
16         </PROPS>
17         <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
18                 <!-- Standard literals -->
19                 <SPAN TYPE="LITERAL1" ESCAPE="\" NO_LINE_BREAK="FALSE">
20                         <BEGIN>'</BEGIN>
21                         <END>'</END>
22                 </SPAN>
23
24         <EOL_SPAN TYPE="COMMENT3">#</EOL_SPAN>
25         <EOL_SPAN TYPE="COMMENT2">""</EOL_SPAN>
26
27                 <SPAN TYPE="COMMENT1">
28                         <BEGIN>"</BEGIN>
29                         <END>"</END>
30                 </SPAN>
31
32         <SPAN TYPE="LITERAL2" ESCAPE="\">
33             <BEGIN>«</BEGIN>
34             <END>»</END>
35         </SPAN>
36
37         <SEQ TYPE="OPERATOR">(</SEQ>
38         <SEQ TYPE="OPERATOR">)</SEQ>
39         <SEQ TYPE="OPERATOR">{</SEQ>
40         <SEQ TYPE="OPERATOR">}</SEQ>
41                 <SEQ TYPE="OPERATOR">:=</SEQ>
42                 <SEQ TYPE="OPERATOR">_</SEQ>
43                 <SEQ TYPE="OPERATOR">=</SEQ>
44                 <SEQ TYPE="OPERATOR">==</SEQ>
45                 <SEQ TYPE="OPERATOR">&gt;</SEQ>
46                 <SEQ TYPE="OPERATOR">&lt;</SEQ>
47                 <SEQ TYPE="OPERATOR">&gt;=</SEQ>
48                 <SEQ TYPE="OPERATOR">&lt;=</SEQ>
49                 <SEQ TYPE="OPERATOR">+</SEQ>
50                 <SEQ TYPE="OPERATOR">-</SEQ>
51                 <SEQ TYPE="OPERATOR">/</SEQ>
52         <SEQ TYPE="OPERATOR">//</SEQ>
53         <SEQ TYPE="OPERATOR">\\</SEQ>
54                 <SEQ TYPE="OPERATOR">*</SEQ>
55         <SEQ TYPE="OPERATOR">**</SEQ>
56         <SEQ TYPE="OPERATOR">#</SEQ>
57         <SEQ TYPE="OPERATOR">^</SEQ>
58         <SEQ TYPE="OPERATOR">^^</SEQ>
59         <SEQ TYPE="OPERATOR">;</SEQ>
60         <SEQ TYPE="OPERATOR">.</SEQ>
61         <SEQ TYPE="OPERATOR">-&gt;</SEQ>
62         <SEQ TYPE="OPERATOR">&amp;&amp;</SEQ>
63         <SEQ TYPE="OPERATOR">||</SEQ>
64         <SEQ TYPE="OPERATOR">^|</SEQ>
65         <SEQ TYPE="OPERATOR">!=</SEQ>
66         <SEQ TYPE="OPERATOR">~=</SEQ>
67         <SEQ TYPE="OPERATOR">!==</SEQ>
68         <SEQ TYPE="OPERATOR">~~</SEQ>
69
70                 <MARK_PREVIOUS TYPE="KEYWORD3" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>
71                 <MARK_FOLLOWING TYPE="LABEL" MATCH_TYPE="OPERATOR">#</MARK_FOLLOWING>
72                 <MARK_FOLLOWING TYPE="LITERAL1" MATCH_TYPE="OPERATOR">$</MARK_FOLLOWING>
73
74                 <KEYWORDS>
75                         <!-- Constants -->
76             <KEYWORD1>disable</KEYWORD1>
77             <KEYWORD1>enable</KEYWORD1>
78             <KEYWORD1>no</KEYWORD1>
79             <KEYWORD1>off</KEYWORD1>
80             <KEYWORD1>on</KEYWORD1>
81                         <KEYWORD1>yes</KEYWORD1>
82
83                         <!-- Reserved identifiers -->
84                         <KEYWORD2>self</KEYWORD2>
85                         <KEYWORD2>true</KEYWORD2>
86             <KEYWORD2>false</KEYWORD2>
87             <KEYWORD2>nil</KEYWORD2>
88             <KEYWORD2>super</KEYWORD2>
89             <KEYWORD2>thread</KEYWORD2>
90             <KEYWORD2>sender</KEYWORD2>
91             <KEYWORD2>senderMethod</KEYWORD2>
92             <KEYWORD2>blockSelf</KEYWORD2>
93             <KEYWORD2>scheduler</KEYWORD2>
94             <KEYWORD2>¼</KEYWORD2>
95
96                         <!-- not really keywords, but a different color works well-->
97                         <KEYWORD4>isNil</KEYWORD4>
98                         <KEYWORD4>not</KEYWORD4>
99
100                         <!-- not really -->
101                         <LITERAL2>Smalltalk</LITERAL2>
102                         <LITERAL2>Transcript</LITERAL2>
103
104                         <!-- base classes -->
105                         <LITERAL2>Date</LITERAL2>
106                         <LITERAL2>Time</LITERAL2>
107                         <LITERAL2>Boolean</LITERAL2>
108                         <LITERAL2>True</LITERAL2>
109                         <LITERAL2>False</LITERAL2>
110                         <LITERAL2>Character</LITERAL2>
111                         <LITERAL2>String</LITERAL2>
112                         <LITERAL2>Array</LITERAL2>
113                         <LITERAL2>Symbol</LITERAL2>
114                         <LITERAL2>Integer</LITERAL2>
115                         <LITERAL2>Object</LITERAL2>
116
117             <LITERAL3>Application</LITERAL3>
118             <LITERAL3>Category</LITERAL3>
119             <LITERAL3>Class</LITERAL3>
120             <LITERAL3>Compiler</LITERAL3>
121             <LITERAL3>EntryPoint</LITERAL3>
122             <LITERAL3>Enum</LITERAL3>
123             <LITERAL3>Eval</LITERAL3>
124             <LITERAL3>Exception</LITERAL3>
125             <LITERAL3>Function</LITERAL3>
126             <LITERAL3>IconResource</LITERAL3>
127             <LITERAL3>Interface</LITERAL3>
128             <LITERAL3>Literal</LITERAL3>
129             <LITERAL3>Namespace</LITERAL3>
130             <LITERAL3>Method</LITERAL3>
131             <LITERAL3>Mixin</LITERAL3>
132             <LITERAL3>Module</LITERAL3>
133             <LITERAL3>Project</LITERAL3>
134             <LITERAL3>Reference</LITERAL3>
135             <LITERAL3>Require</LITERAL3>
136             <LITERAL3>Resource</LITERAL3>
137             <LITERAL3>Signal</LITERAL3>
138             <LITERAL3>Struct</LITERAL3>
139             <LITERAL3>Subsystem</LITERAL3>
140             <LITERAL3>Specifications</LITERAL3>
141             <LITERAL3>Warning</LITERAL3>
142
143                 </KEYWORDS>
144         </RULES>
145 </MODE>