]> gitweb.factorcode.org Git - factor.git/blob - extra/xmode/modes/uscript.xml
Merge branch 'master' of git://factorcode.org/git/factor
[factor.git] / extra / xmode / modes / uscript.xml
1 <?xml version="1.0"?>\r
2 \r
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">\r
4 \r
5 <MODE>\r
6         <PROPS>\r
7                 <PROPERTY NAME="commentStart" VALUE="/*" />\r
8                 <PROPERTY NAME="commentEnd" VALUE="*/" />\r
9                 <PROPERTY NAME="lineComment" VALUE="//" />\r
10                 <PROPERTY NAME="wordBreakChars" VALUE=",+-=&lt;&gt;/?^&amp;*" />\r
11 \r
12                 <!-- Auto indent -->\r
13                 <PROPERTY NAME="indentOpenBrackets" VALUE="{" />\r
14                 <PROPERTY NAME="indentCloseBrackets" VALUE="}" />\r
15                 <PROPERTY NAME="indentNextLine"\r
16                         VALUE="\s*(((if|while)\s*\(|else\s*|else\s+if\s*\(|for\s*\(.*\))[^{;]*)" />\r
17                 <!-- set this to 'true' if you want to use GNU coding style -->\r
18                 <PROPERTY NAME="doubleBracketIndent" VALUE="false" />\r
19         </PROPS>\r
20         <RULES ESCAPE="\"\r
21                 IGNORE_CASE="TRUE"\r
22                 HIGHLIGHT_DIGITS="TRUE"\r
23                 DIGIT_RE="(0x[\p{XDigit}]+[lL]?|[\p{Digit}]+(e[\p{Digit}]*)?[lLdDfF]?)">\r
24 \r
25                 <!-- Silly comment -->\r
26                 <SEQ TYPE="COMMENT1">/**/</SEQ>\r
27 \r
28                 <!-- Java comment (C style) -->\r
29                 <SPAN TYPE="COMMENT1">\r
30                         <BEGIN>/*</BEGIN>\r
31                         <END>*/</END>\r
32                 </SPAN>\r
33 \r
34                 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
35                         <BEGIN>"</BEGIN>\r
36                         <END>"</END>\r
37                 </SPAN>\r
38                 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
39                         <BEGIN>'</BEGIN>\r
40                         <END>'</END>\r
41                 </SPAN>\r
42 \r
43                 <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>\r
44 \r
45         <SEQ TYPE="OPERATOR">~</SEQ>\r
46         <SEQ TYPE="OPERATOR">!</SEQ>\r
47         <SEQ TYPE="OPERATOR">@</SEQ>\r
48         <SEQ TYPE="OPERATOR">#</SEQ>\r
49         <SEQ TYPE="OPERATOR">$</SEQ>\r
50         <SEQ TYPE="OPERATOR">^</SEQ>\r
51         <SEQ TYPE="OPERATOR">&amp;</SEQ>\r
52         <SEQ TYPE="OPERATOR">*</SEQ>\r
53         <SEQ TYPE="OPERATOR">-</SEQ>\r
54         <SEQ TYPE="OPERATOR">=</SEQ>\r
55         <SEQ TYPE="OPERATOR">+</SEQ>\r
56         <SEQ TYPE="OPERATOR">|</SEQ>\r
57         <SEQ TYPE="OPERATOR">\\</SEQ>\r
58         <SEQ TYPE="OPERATOR">:</SEQ>\r
59         <SEQ TYPE="OPERATOR">&lt;</SEQ>\r
60         <SEQ TYPE="OPERATOR">&gt;</SEQ>\r
61         <SEQ TYPE="OPERATOR">/</SEQ>\r
62         <SEQ TYPE="OPERATOR">?</SEQ>\r
63         <SEQ TYPE="OPERATOR">`</SEQ>\r
64 \r
65                 <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR"\r
66                         AT_WHITESPACE_END="TRUE">:</MARK_PREVIOUS>\r
67 \r
68                 <!-- Function calls -->\r
69                 <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS>\r
70                 <SEQ TYPE="OPERATOR">)</SEQ>\r
71 \r
72                 <KEYWORDS>\r
73             <KEYWORD1>abstract</KEYWORD1>\r
74             <KEYWORD1>auto</KEYWORD1>\r
75             <KEYWORD1>array</KEYWORD1>\r
76             <KEYWORD1>case</KEYWORD1>\r
77             <KEYWORD1>class</KEYWORD1>\r
78             <KEYWORD1>coerce</KEYWORD1>\r
79             <KEYWORD1>collapscategories</KEYWORD1>\r
80             <KEYWORD1>config</KEYWORD1>\r
81             <KEYWORD1>const</KEYWORD1>\r
82             <KEYWORD1>default</KEYWORD1>\r
83             <KEYWORD1>defaultproperties</KEYWORD1>\r
84             <KEYWORD1>deprecated</KEYWORD1>\r
85             <KEYWORD1>do</KEYWORD1>\r
86             <KEYWORD1>dontcollapsecategories</KEYWORD1>\r
87             <KEYWORD1>edfindable</KEYWORD1>\r
88             <KEYWORD1>editconst</KEYWORD1>\r
89             <KEYWORD1>editinline</KEYWORD1>\r
90             <KEYWORD1>editinlinenew</KEYWORD1>\r
91             <KEYWORD1>else</KEYWORD1>\r
92             <KEYWORD1>enum</KEYWORD1>\r
93             <KEYWORD1>event</KEYWORD1>\r
94             <KEYWORD1>exec</KEYWORD1>\r
95             <KEYWORD1>export</KEYWORD1>\r
96             <KEYWORD1>exportstructs</KEYWORD1>\r
97             <KEYWORD1>extends</KEYWORD1>\r
98             <KEYWORD1>false</KEYWORD1>\r
99             <KEYWORD1>final</KEYWORD1>\r
100             <KEYWORD1>for</KEYWORD1>\r
101             <KEYWORD1>foreach</KEYWORD1>\r
102             <KEYWORD1>function</KEYWORD1>\r
103             <KEYWORD1>globalconfig</KEYWORD1>\r
104             <KEYWORD1>hidecategories</KEYWORD1>\r
105             <KEYWORD1>if</KEYWORD1>\r
106             <KEYWORD1>ignores</KEYWORD1>\r
107             <KEYWORD1>input</KEYWORD1>\r
108             <KEYWORD1>iterator</KEYWORD1>\r
109             <KEYWORD1>latent</KEYWORD1>\r
110             <KEYWORD1>local</KEYWORD1>\r
111             <KEYWORD1>localized</KEYWORD1>\r
112             <KEYWORD1>native</KEYWORD1>\r
113             <KEYWORD1>nativereplication</KEYWORD1>\r
114             <KEYWORD1>noexport</KEYWORD1>\r
115             <KEYWORD1>noteditinlinenew</KEYWORD1>\r
116                         <KEYWORD1>notplaceable</KEYWORD1>\r
117             <KEYWORD1>operator</KEYWORD1>\r
118             <KEYWORD1>optional</KEYWORD1>\r
119             <KEYWORD1>out</KEYWORD1>\r
120             <KEYWORD1>perobjectconfig</KEYWORD1>\r
121             <KEYWORD1>placeable</KEYWORD1>\r
122             <KEYWORD1>postoperator</KEYWORD1>\r
123             <KEYWORD1>preoperator</KEYWORD1>\r
124             <KEYWORD1>private</KEYWORD1>\r
125             <KEYWORD1>protected</KEYWORD1>\r
126             <KEYWORD1>reliable</KEYWORD1>\r
127             <KEYWORD1>replication</KEYWORD1>\r
128             <KEYWORD1>return</KEYWORD1>\r
129             <KEYWORD1>safereplace</KEYWORD1>\r
130             <KEYWORD1>showcategories</KEYWORD1>\r
131             <KEYWORD1>simulated</KEYWORD1>\r
132             <KEYWORD1>singular</KEYWORD1>\r
133             <KEYWORD1>state</KEYWORD1>\r
134             <KEYWORD1>static</KEYWORD1>\r
135             <KEYWORD1>struct</KEYWORD1>\r
136             <KEYWORD1>switch</KEYWORD1>\r
137             <KEYWORD1>transient</KEYWORD1>\r
138             <KEYWORD1>travel</KEYWORD1>\r
139             <KEYWORD1>true</KEYWORD1>\r
140             <KEYWORD1>unreliable</KEYWORD1>\r
141             <KEYWORD1>until</KEYWORD1>\r
142             <KEYWORD1>var</KEYWORD1>\r
143             <KEYWORD1>while</KEYWORD1>\r
144             <KEYWORD1>within</KEYWORD1>\r
145 \r
146             <KEYWORD2>default</KEYWORD2>\r
147             <KEYWORD2>global</KEYWORD2>\r
148             <KEYWORD2>none</KEYWORD2>\r
149             <KEYWORD2>self</KEYWORD2>\r
150             <KEYWORD2>static</KEYWORD2>\r
151             <KEYWORD2>super</KEYWORD2>\r
152 \r
153             <KEYWORD3>bool</KEYWORD3>\r
154             <KEYWORD3>byte</KEYWORD3>\r
155             <KEYWORD3>float</KEYWORD3>\r
156             <KEYWORD3>int</KEYWORD3>\r
157             <KEYWORD3>name</KEYWORD3>\r
158             <KEYWORD3>string</KEYWORD3>\r
159                 </KEYWORDS>\r
160         </RULES>\r
161 </MODE>\r