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