/jEdit/tags/jedit-4-0-pre5/modes/java.xml
XML | 222 lines | 219 code | 2 blank | 1 comment | 0 complexity | e03dc5d00cd2cc1e8f773632026ca8ec MD5 | raw file
Possible License(s): BSD-3-Clause, AGPL-1.0, Apache-2.0, LGPL-2.0, LGPL-3.0, GPL-2.0, CC-BY-SA-3.0, LGPL-2.1, GPL-3.0, MPL-2.0-no-copyleft-exception, IPL-1.0
1<?xml version="1.0"?>
2
3<!DOCTYPE MODE SYSTEM "xmode.dtd">
4
5<MODE>
6 <PROPS>
7 <PROPERTY NAME="indentOpenBrackets" VALUE="{" />
8 <PROPERTY NAME="indentCloseBrackets" VALUE="}" />
9 <PROPERTY NAME="indentPrevLine"
10 VALUE="\s*(((if|while)\s*\(|else\s*(\{|$)|else\s+if\s*\(|case\s+.+:|default:)[^;]*|for\s*\(.*)" />
11 <!-- set this to 'true' if you want to use GNU coding style -->
12 <PROPERTY NAME="doubleBracketIndent" VALUE="false" />
13 <PROPERTY NAME="commentStart" VALUE="/*" />
14 <PROPERTY NAME="commentEnd" VALUE="*/" />
15 <PROPERTY NAME="lineComment" VALUE="//" />
16 <PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />
17 </PROPS>
18 <RULES ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
19 <!-- whitespace: (space and tab) -->
20 <WHITESPACE> </WHITESPACE>
21 <WHITESPACE> </WHITESPACE>
22
23 <!-- Silly comment -->
24 <SEQ TYPE="COMMENT1">/**/</SEQ>
25
26 <!-- Javadoc comment -->
27 <SPAN TYPE="COMMENT2" DELEGATE="JAVADOC">
28 <BEGIN>/**</BEGIN>
29 <END>*/</END>
30 </SPAN>
31
32 <!-- Java comment (C style) -->
33 <SPAN TYPE="COMMENT1">
34 <BEGIN>/*</BEGIN>
35 <END>*/</END>
36 </SPAN>
37
38 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
39 <BEGIN>"</BEGIN>
40 <END>"</END>
41 </SPAN>
42 <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
43 <BEGIN>'</BEGIN>
44 <END>'</END>
45 </SPAN>
46
47 <EOL_SPAN TYPE="COMMENT1">//</EOL_SPAN>
48
49 <SEQ TYPE="NULL">)</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
58 <!-- workaround to stop "*" from being colorized
59 in import statements. -->
60 <SEQ TYPE="NULL">.*</SEQ>
61
62 <SEQ TYPE="OPERATOR">*</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 <SEQ TYPE="OPERATOR">~</SEQ>
70 <SEQ TYPE="OPERATOR">}</SEQ>
71 <SEQ TYPE="OPERATOR">{</SEQ>
72 <SEQ TYPE="NULL">.</SEQ>
73 <SEQ TYPE="NULL">,</SEQ>
74 <SEQ TYPE="NULL">;</SEQ>
75 <SEQ TYPE="NULL">]</SEQ>
76 <SEQ TYPE="NULL">[</SEQ>
77 <SEQ TYPE="NULL">?</SEQ>
78 <MARK_PREVIOUS TYPE="LABEL" EXCLUDE_MATCH="TRUE"
79 AT_LINE_START="TRUE">:</MARK_PREVIOUS>
80 <SEQ TYPE="NULL">:</SEQ>
81
82 <!-- Function calls -->
83 <MARK_PREVIOUS TYPE="FUNCTION" EXCLUDE_MATCH="TRUE">(</MARK_PREVIOUS>
84
85 <KEYWORDS IGNORE_CASE="FALSE">
86 <KEYWORD1>abstract</KEYWORD1>
87 <KEYWORD1>break</KEYWORD1>
88 <KEYWORD1>case</KEYWORD1>
89 <KEYWORD1>catch</KEYWORD1>
90 <KEYWORD1>continue</KEYWORD1>
91 <KEYWORD1>default</KEYWORD1>
92 <KEYWORD1>do</KEYWORD1>
93 <KEYWORD1>else</KEYWORD1>
94 <KEYWORD1>extends</KEYWORD1>
95 <KEYWORD1>final</KEYWORD1>
96 <KEYWORD1>finally</KEYWORD1>
97 <KEYWORD1>for</KEYWORD1>
98 <KEYWORD1>if</KEYWORD1>
99 <KEYWORD1>implements</KEYWORD1>
100 <KEYWORD1>instanceof</KEYWORD1>
101 <KEYWORD1>native</KEYWORD1>
102 <KEYWORD1>new</KEYWORD1>
103 <KEYWORD1>private</KEYWORD1>
104 <KEYWORD1>protected</KEYWORD1>
105 <KEYWORD1>public</KEYWORD1>
106 <KEYWORD1>return</KEYWORD1>
107 <KEYWORD1>static</KEYWORD1>
108 <KEYWORD1>switch</KEYWORD1>
109 <KEYWORD1>synchronized</KEYWORD1>
110 <KEYWORD1>throw</KEYWORD1>
111 <KEYWORD1>throws</KEYWORD1>
112 <KEYWORD1>transient</KEYWORD1>
113 <KEYWORD1>try</KEYWORD1>
114 <KEYWORD1>volatile</KEYWORD1>
115 <KEYWORD1>while</KEYWORD1>
116
117 <KEYWORD2>package</KEYWORD2>
118 <KEYWORD2>import</KEYWORD2>
119
120 <KEYWORD3>boolean</KEYWORD3>
121 <KEYWORD3>byte</KEYWORD3>
122 <KEYWORD3>char</KEYWORD3>
123 <KEYWORD3>class</KEYWORD3>
124 <KEYWORD3>double</KEYWORD3>
125 <KEYWORD3>float</KEYWORD3>
126 <KEYWORD3>int</KEYWORD3>
127 <KEYWORD3>interface</KEYWORD3>
128 <KEYWORD3>long</KEYWORD3>
129 <KEYWORD3>short</KEYWORD3>
130 <KEYWORD3>void</KEYWORD3>
131
132 <LITERAL2>false</LITERAL2>
133 <LITERAL2>null</LITERAL2>
134 <LITERAL2>super</LITERAL2>
135 <LITERAL2>this</LITERAL2>
136 <LITERAL2>true</LITERAL2>
137
138 <INVALID>goto</INVALID>
139 <INVALID>const</INVALID>
140 </KEYWORDS>
141 </RULES>
142
143 <RULES SET="JAVADOC" DEFAULT="COMMENT2" IGNORE_CASE="TRUE">
144 <!-- whitespace: (space and tab) -->
145 <WHITESPACE> </WHITESPACE>
146 <WHITESPACE> </WHITESPACE>
147
148 <!-- so that @link{...} is highlighted -->
149 <SEQ TYPE="COMMENT2">{</SEQ>
150
151 <!-- so that *@param is highlighted -->
152 <SEQ TYPE="COMMENT2">*</SEQ>
153
154 <!-- Javadoc ignores tags inside <pre> -->
155 <SPAN TYPE="MARKUP" DELEGATE="JAVADOC_PRE">
156 <BEGIN><pre></BEGIN>
157 <END></pre></END>
158 </SPAN>
159
160 <!-- HTML comments -->
161 <SPAN TYPE="COMMENT1">
162 <BEGIN><!--</BEGIN>
163 <END>--></END>
164 </SPAN>
165
166 <!-- Javadoc allows this -->
167 <SEQ TYPE="COMMENT2"><=</SEQ>
168 <SEQ TYPE="COMMENT2">< </SEQ>
169
170 <!-- HTML tags -->
171 <SPAN TYPE="MARKUP" DELEGATE="xml::TAGS">
172 <BEGIN><</BEGIN>
173 <END>></END>
174 </SPAN>
175
176 <KEYWORDS>
177 <LABEL>@author</LABEL>
178 <LABEL>@beaninfo</LABEL>
179 <LABEL>@history</LABEL>
180 <LABEL>@bug</LABEL>
181 <LABEL>@review</LABEL>
182 <LABEL>@todo</LABEL>
183 <LABEL>@idea</LABEL>
184 <LABEL>@pre</LABEL>
185 <LABEL>@requires</LABEL>
186 <LABEL>@post</LABEL>
187 <LABEL>@ensures</LABEL>
188 <LABEL>@generates</LABEL>
189 <LABEL>@modifies</LABEL>
190 <LABEL>@invariant</LABEL>
191 <LABEL>@exception</LABEL>
192 <LABEL>@hides</LABEL>
193 <LABEL>@overrides</LABEL>
194 <LABEL>@equivalent</LABEL>
195 <LABEL>@bon</LABEL>
196 <LABEL>@access</LABEL>
197 <LABEL>@example</LABEL>
198 <LABEL>@design</LABEL>
199 <LABEL>@serial</LABEL>
200 <LABEL>@references</LABEL>
201 <LABEL>@uses</LABEL>
202 <LABEL>@guard</LABEL>
203 <LABEL>@values</LABEL>
204 <LABEL>@complexity</LABEL>
205 <LABEL>@deprecated</LABEL>
206 <LABEL>@docRoot</LABEL>
207 <LABEL>@exception</LABEL>
208 <LABEL>@link</LABEL>
209 <LABEL>@param</LABEL>
210 <LABEL>@return</LABEL>
211 <LABEL>@see</LABEL>
212 <LABEL>@serialData</LABEL>
213 <LABEL>@serialField</LABEL>
214 <LABEL>@since</LABEL>
215 <LABEL>@throws</LABEL>
216 <LABEL>@version</LABEL>
217 <LABEL>@spec</LABEL>
218 </KEYWORDS>
219 </RULES>
220
221 <RULES SET="JAVADOC_PRE" DEFAULT="COMMENT2" />
222</MODE>