]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/jsp.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / jsp.xml
1 <?xml version="1.0"?>
2
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">
4
5 <MODE>
6         <PROPS>
7                 <PROPERTY NAME="commentStart" VALUE="&lt;%--" />
8                 <PROPERTY NAME="commentEnd" VALUE="--%&gt;" />
9         </PROPS>
10         <RULES IGNORE_CASE="TRUE">
11                 <!-- JSP comment -->
12                 <SPAN TYPE="COMMENT2">
13                         <BEGIN>&lt;%--</BEGIN>
14                         <END>--%&gt;</END>
15                 </SPAN>
16
17                 <!-- JSP directive -->
18                 <SPAN TYPE="KEYWORD1" DELEGATE="DIRECTIVES">
19                         <BEGIN>&lt;%@</BEGIN>
20                         <END>%&gt;</END>
21                 </SPAN>
22                 <SPAN TYPE="KEYWORD1" DELEGATE="DIRECTIVES">
23                         <BEGIN>&lt;jsp:directive&gt;</BEGIN>
24                         <END>&lt;/jsp:directive&gt;</END>
25                 </SPAN>
26
27                 <!-- JSP scriptlet expression -->
28                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
29                         <BEGIN>&lt;%=</BEGIN>
30                         <END>%&gt;</END>
31                 </SPAN>
32                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
33                         <BEGIN>&lt;jsp:expression&gt;</BEGIN>
34                         <END>&lt;/jsp:expression&gt;</END>
35                 </SPAN>
36
37                 <!-- JSP scriptlet code block -->
38                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
39                         <BEGIN>&lt;%!</BEGIN>
40                         <END>%&gt;</END>
41                 </SPAN>
42                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
43                         <BEGIN>&lt;jsp:declaration&gt;</BEGIN>
44                         <END>&lt;/jsp:declaration&gt;</END>
45                 </SPAN>
46
47                 <!-- JSP scriptlet -->
48                 <SPAN TYPE="KEYWORD1" DELEGATE="JAVA">
49                         <BEGIN>&lt;%</BEGIN>
50                         <END>%&gt;</END>
51                 </SPAN>
52                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
53                         <BEGIN>&lt;jsp:scriptlet&gt;</BEGIN>
54                         <END>&lt;/jsp:scriptlet&gt;</END>
55                 </SPAN>
56
57                 <!-- SGML comment -->
58                 <SPAN TYPE="COMMENT1" DELEGATE="COMMENT">
59                         <BEGIN>&lt;!--</BEGIN>
60                         <END>--&gt;</END>
61                 </SPAN>
62
63                 <!-- JavaScript -->
64                 <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">
65                         <BEGIN>&lt;SCRIPT</BEGIN>
66                         <END>&lt;/SCRIPT&gt;</END>
67                 </SPAN>
68
69                 <!-- stylesheet -->
70                 <SPAN TYPE="MARKUP" DELEGATE="html::CSS">
71                         <BEGIN>&lt;STYLE</BEGIN>
72                         <END>&lt;/STYLE&gt;</END>
73                 </SPAN>
74
75                 <!-- DTD instructions -->
76                 <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">
77                         <BEGIN>&lt;!</BEGIN>
78                         <END>&gt;</END>
79                 </SPAN>
80
81                 <SPAN TYPE="MARKUP" DELEGATE="TAGS">
82                         <BEGIN>&lt;</BEGIN>
83                         <END>&gt;</END>
84                 </SPAN>
85
86                 <!-- SGML entities -->
87                 <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">
88                         <BEGIN>&amp;</BEGIN>
89                         <END>;</END>
90                 </SPAN>
91
92                 <SPAN TYPE="KEYWORD2" DELEGATE="EL">
93                         <BEGIN>${</BEGIN>
94                         <END>}</END>
95                 </SPAN>
96
97         </RULES>
98         <RULES SET="COMMENT" DEFAULT="COMMENT1" IGNORE_CASE="TRUE">
99                 <!-- JSP comment -->
100                 <SPAN TYPE="COMMENT2">
101                         <BEGIN>&lt;%--</BEGIN>
102                         <END>--%&gt;</END>
103                 </SPAN>
104
105                 <!-- JSP scriptlet expression -->
106                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
107                         <BEGIN>&lt;%=</BEGIN>
108                         <END>%&gt;</END>
109                 </SPAN>
110
111                 <!-- JSP scriptlet -->
112                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
113                         <BEGIN>&lt;%</BEGIN>
114                         <END>%&gt;</END>
115                 </SPAN>
116         </RULES>
117         <RULES SET="DIRECTIVES" DEFAULT="MARKUP">
118                 <!-- JSP scriptlet expression -->
119                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
120                         <BEGIN>&lt;%=</BEGIN>
121                         <END>%&gt;</END>
122                 </SPAN>
123
124                 <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">
125                         <BEGIN>"</BEGIN>
126                         <END>"</END>
127                 </SPAN>
128
129                 <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">
130                         <BEGIN>'</BEGIN>
131                         <END>'</END>
132                 </SPAN>
133
134                 <SEQ TYPE="MARKUP">/</SEQ>
135                 <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>
136                 <SEQ TYPE="OPERATOR">:</SEQ>
137
138                 <KEYWORDS>
139                         <KEYWORD1>taglib</KEYWORD1>
140                         <KEYWORD1>include</KEYWORD1>
141                         <KEYWORD1>page</KEYWORD1>
142                         <KEYWORD1>tag</KEYWORD1>
143                         <KEYWORD1>tagAttribute</KEYWORD1>
144                         <KEYWORD1>tagVariable</KEYWORD1>
145
146                         <KEYWORD2>language</KEYWORD2>
147                         <KEYWORD2>session</KEYWORD2>
148                         <KEYWORD2>contentType</KEYWORD2>
149                         <KEYWORD2>charset</KEYWORD2>
150                         <KEYWORD2>import</KEYWORD2>
151                         <KEYWORD2>buffer</KEYWORD2>
152                         <KEYWORD2>autoflush</KEYWORD2>
153                         <KEYWORD2>isThreadSafe</KEYWORD2>
154                         <KEYWORD2>info</KEYWORD2>
155                         <KEYWORD2>errorPage</KEYWORD2>
156                         <KEYWORD2>isErrorpage</KEYWORD2>
157                         <KEYWORD2>extends</KEYWORD2>
158                         <KEYWORD2>file</KEYWORD2>
159                         <KEYWORD2>uri</KEYWORD2>
160                         <KEYWORD2>prefix</KEYWORD2>
161                         <KEYWORD2>method</KEYWORD2>
162                         <KEYWORD2>name</KEYWORD2>
163                         <KEYWORD2>default</KEYWORD2>
164                         <KEYWORD2>required</KEYWORD2>
165                         <KEYWORD2>rtexprvalue</KEYWORD2>
166                         <KEYWORD2>id</KEYWORD2>
167                         <KEYWORD2>type</KEYWORD2>
168                         <KEYWORD2>scope</KEYWORD2>
169                 </KEYWORDS>
170         </RULES>
171
172         <RULES SET="TAGS" DEFAULT="MARKUP">
173                 <!-- JSP comment -->
174                 <SPAN TYPE="COMMENT2">
175                         <BEGIN>&lt;%--</BEGIN>
176                         <END>--%&gt;</END>
177                 </SPAN>
178
179                 <!-- JSP scriptlet expression -->
180                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
181                         <BEGIN>&lt;%=</BEGIN>
182                         <END>%&gt;</END>
183                 </SPAN>
184
185                 <SPAN TYPE="MARKUP" DELEGATE="CSS+JSP">
186                         <BEGIN>style='</BEGIN>
187                         <END>'</END>
188                 </SPAN>
189
190                 <SPAN TYPE="MARKUP" DELEGATE="CSS+JSP">
191                         <BEGIN>style="</BEGIN>
192                         <END>"</END>
193                 </SPAN>
194
195                 <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">
196                         <BEGIN>"</BEGIN>
197                         <END>"</END>
198                 </SPAN>
199
200                 <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">
201                         <BEGIN>'</BEGIN>
202                         <END>'</END>
203                 </SPAN>
204
205                 <SEQ TYPE="MARKUP">/</SEQ>
206                 <MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="OPERATOR">:</MARK_FOLLOWING>
207                 <SEQ TYPE="OPERATOR">:</SEQ>
208                 
209                 <IMPORT DELEGATE="html::TAGS"/>
210         </RULES>
211
212
213
214         <RULES SET="CSS+JSP" DEFAULT="LITERAL1">
215                 <SPAN TYPE="KEYWORD2" DELEGATE="java::MAIN">
216                         <BEGIN>&lt;%=</BEGIN>
217                         <END>%&gt;</END>
218                 </SPAN>
219                 <SPAN TYPE="KEYWORD2" DELEGATE="EL">
220                         <BEGIN>${</BEGIN>
221                         <END>}</END>
222                 </SPAN>
223                 <IMPORT DELEGATE="css::MAIN"/>
224         </RULES>
225
226         <RULES SET="ATTRVALUE" DEFAULT="LITERAL1" ESCAPE="\">
227                 <!-- JSP scriptlet expression -->
228                 <SPAN TYPE="KEYWORD1" DELEGATE="java::MAIN">
229                         <BEGIN>&lt;%=</BEGIN>
230                         <END>%&gt;</END>
231                 </SPAN>
232                 <SPAN TYPE="KEYWORD2" DELEGATE="EL">
233                         <BEGIN>${</BEGIN>
234                         <END>}</END>
235                 </SPAN>
236                 <SEQ TYPE="LITERAL1" DELEGATE="JAVASCRIPT+JSP">javascript:</SEQ>
237         </RULES>
238
239
240         <RULES SET="JAVASCRIPT+JSP">
241                 <!-- JSP scriptlet expression -->
242                 <SPAN TYPE="KEYWORD2" DELEGATE="java::MAIN">
243                         <BEGIN>&lt;%=</BEGIN>
244                         <END>%&gt;</END>
245                 </SPAN>
246                 <SPAN TYPE="KEYWORD2" DELEGATE="EL">
247                         <BEGIN>${</BEGIN>
248                         <END>}</END>
249                 </SPAN>
250                 <IMPORT DELEGATE="javascript::MAIN"/>
251         </RULES>
252
253         <RULES SET="EL" HIGHLIGHT_DIGITS="TRUE" DIGIT_RE="(0[lL]?|[1-9]\d{0,9}(\d{0,9}[lL])?|0[xX]\p{XDigit}{1,8}(\p{XDigit}{0,8}[lL])?|0[0-7]{1,11}([0-7]{0,11}[lL])?|([0-9]+\.[0-9]*|\.[0-9]+)([eE][+-]?[0-9]+)?[fFdD]?|[0-9]+([eE][+-]?[0-9]+[fFdD]?|([eE][+-]?[0-9]+)?[fFdD]))">
254                 <MARK_PREVIOUS TYPE="LABEL" MATCH_TYPE="OPERATOR">:</MARK_PREVIOUS>
255                 <IMPORT DELEGATE="java::MAIN"/>
256         </RULES>
257         
258         <RULES SET="JAVA">
259                 <SEQ_REGEXP TYPE="COMMENT2">[/][/](.*?)(?=[%][&gt;])</SEQ_REGEXP>
260                 <IMPORT DELEGATE="java::MAIN"/>
261         </RULES>
262         
263 </MODE>
264 <!-- :noTabs=false: -->