]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/jhtml.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / jhtml.xml
1 <?xml version="1.0"?>
2
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">
4
5 <!--
6   JHTML mode by Will Sargent <wsargent@atg.com>
7 -->
8
9 <MODE>
10         <PROPS>
11                 <PROPERTY NAME="commentStart" VALUE="&lt;!--" />
12                 <PROPERTY NAME="commentEnd" VALUE="--&gt;" />
13                                 <!-- Indent droplets and oparams -->
14                                 <PROPERTY NAME="indentNextLines"
15                                  VALUE="\s*(&lt;\s*(droplet|oparam))\s+.*" />
16                                 <!-- Sadly, there doesn't seem to be a way to
17                                          undent when we see a /oparam> tag... -->
18         </PROPS>
19         <RULES IGNORE_CASE="TRUE">
20                                 <!-- Allow for Dynamo SSI -->
21                                 <SPAN TYPE="NULL">
22                         <BEGIN>&lt;!--#</BEGIN>
23                         <END>--&gt;</END>
24                                 </SPAN>
25
26                 <!-- SGML comment -->
27                 <SPAN TYPE="COMMENT1">
28                         <BEGIN>&lt;!--</BEGIN>
29                         <END>--&gt;</END>
30                 </SPAN>
31
32                 <!-- markup tags -->
33                 <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">
34                         <BEGIN>`</BEGIN>
35                         <END>`</END>
36                 </SPAN>
37
38                                 <!-- Embedded Java -->
39                 <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">
40                         <BEGIN>&lt;java&gt;</BEGIN>
41                         <END>&lt;/java&gt;</END>
42                 </SPAN>
43
44                                 <!-- Don't know how to do this correctly.
45                                 <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">
46                                                 <BEGIN>&lt;java type=</BEGIN>
47                                                 <END>&lt;/java&gt;</END>
48                                 </SPAN>
49                                 -->
50
51                 <!-- JavaScript -->
52                 <SPAN TYPE="MARKUP" DELEGATE="html::JAVASCRIPT">
53                         <BEGIN>&lt;SCRIPT</BEGIN>
54                         <END>&lt;/SCRIPT&gt;</END>
55                 </SPAN>
56
57                 <!-- stylesheet -->
58                 <SPAN TYPE="MARKUP" DELEGATE="html::CSS">
59                         <BEGIN>&lt;STYLE</BEGIN>
60                         <END>&lt;/STYLE&gt;</END>
61                 </SPAN>
62
63                 <!-- DTD instructions -->
64                 <SPAN TYPE="KEYWORD2" DELEGATE="xml::DTD-TAGS">
65                         <BEGIN>&lt;!</BEGIN>
66                         <END>&gt;</END>
67                 </SPAN>
68
69                                 <!-- All markup defaults to JHTML. -->
70                 <SPAN TYPE="MARKUP" DELEGATE="JHTML">
71                         <BEGIN>&lt;</BEGIN>
72                         <END>&gt;</END>
73                 </SPAN>
74
75                 <!-- SGML entities -->
76                 <SPAN TYPE="LITERAL2" NO_WORD_BREAK="TRUE">
77                         <BEGIN>&amp;</BEGIN>
78                         <END>;</END>
79                 </SPAN>
80         </RULES>
81
82         <RULES SET="JHTML" DEFAULT="MARKUP">
83                 <!-- SGML comment -->
84                 <SPAN TYPE="COMMENT1">
85                         <BEGIN>&lt;!--</BEGIN>
86                         <END>--&gt;</END>
87                 </SPAN>
88
89                 <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">
90                         <BEGIN>"</BEGIN>
91                         <END>"</END>
92                 </SPAN>
93
94                 <SPAN TYPE="LITERAL1" DELEGATE="ATTRVALUE">
95                         <BEGIN>'</BEGIN>
96                         <END>'</END>
97                 </SPAN>
98
99                 <SEQ TYPE="MARKUP">/</SEQ>
100
101                 <KEYWORDS>
102                         <KEYWORD1>importbean</KEYWORD1>
103                         <KEYWORD1>droplet</KEYWORD1>
104                         <KEYWORD1>param</KEYWORD1>
105                         <KEYWORD1>oparam</KEYWORD1>
106                         <KEYWORD1>valueof</KEYWORD1>
107                         <KEYWORD1>setvalue</KEYWORD1>
108                         <KEYWORD1>servlet</KEYWORD1>
109                         <KEYWORD2>bean</KEYWORD2>
110                         <KEYWORD2>submitvalue</KEYWORD2>
111                         <KEYWORD2>declareparam</KEYWORD2>
112                         <KEYWORD2>synchronized</KEYWORD2>
113                         <KEYWORD2>priority</KEYWORD2>
114
115                         <!-- standard converters -->
116                         <KEYWORD2>converter</KEYWORD2>
117                         <KEYWORD2>date</KEYWORD2>
118                         <KEYWORD2>number</KEYWORD2>
119                         <KEYWORD2>required</KEYWORD2>
120                         <KEYWORD2>nullable</KEYWORD2>
121                         <KEYWORD2>currency</KEYWORD2>
122                         <KEYWORD2>currencyConversion</KEYWORD2>
123                         <KEYWORD2>euro</KEYWORD2>
124                         <KEYWORD2>locale</KEYWORD2>
125                         <KEYWORD2>symbol</KEYWORD2>
126
127                         <!-- Can't use this because of image src... -->
128                         <!-- <KEYWORD2>src</KEYWORD2> -->
129                 </KEYWORDS>
130         </RULES>
131
132         <RULES SET="ATTRVALUE" DEFAULT="LITERAL1" HIGHLIGHT_DIGITS="TRUE">
133                 <!-- backticks are java -->
134                 <SPAN TYPE="MARKUP" DELEGATE="java::MAIN">
135                         <BEGIN>`</BEGIN>
136                         <END>`</END>
137                 </SPAN>
138
139                                 <!-- Allow param: and bean: properties to be marked up -->
140                                 <SEQ TYPE="LABEL">param:</SEQ>
141                                 <SEQ TYPE="LABEL">bean:</SEQ>
142         </RULES>
143
144 </MODE>