PageRenderTime 100ms CodeModel.GetById 88ms app.highlight 7ms RepoModel.GetById 1ms app.codeStats 1ms

/jEdit/tags/jedit-4-2-pre14/modes/pop11.xml

#
XML | 261 lines | 256 code | 4 blank | 1 comment | 0 complexity | 3dc8c243bb299119e225b8432318ae49 MD5 | raw file
  1<?xml version="1.0"?>
  2
  3<!DOCTYPE MODE SYSTEM "xmode.dtd">
  4
  5<!-- pop11 mode by David S. Moss -->
  6<MODE>
  7	<PROPS>
  8		<PROPERTY NAME="commentStart" VALUE="/*" />
  9		<PROPERTY NAME="commentEnd" VALUE="*/" />
 10		<PROPERTY NAME="lineComment" VALUE=";;;" />
 11    </PROPS>
 12    
 13	<RULES SET="MAIN" ESCAPE="\" IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
 14		<!-- Normal comments. -->
 15		<SPAN TYPE="COMMENT1" DELEGATE="COMMENT">
 16			<BEGIN>/*</BEGIN>
 17			<END>*/</END>
 18		</SPAN>
 19
 20        <EOL_SPAN TYPE="COMMENT1">;;;</EOL_SPAN>
 21        
 22		<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">
 23			<BEGIN>'</BEGIN>
 24			<END>'</END>
 25		</SPAN>
 26
 27		<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">
 28			<BEGIN>"</BEGIN>
 29			<END>"</END>
 30		</SPAN>
 31        
 32        <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">
 33			<BEGIN>`</BEGIN>
 34			<END>`</END>
 35		</SPAN>
 36        
 37        <SPAN TYPE="LITERAL1" DELEGATE="LIST">
 38			<BEGIN>[</BEGIN>
 39			<END>]</END>
 40		</SPAN>
 41        
 42        <SPAN TYPE="LITERAL1" DELEGATE="LIST">
 43			<BEGIN>{</BEGIN>
 44			<END>}</END>
 45		</SPAN>
 46        
 47        <SPAN TYPE="LITERAL1" DELEGATE="LIST">
 48			<BEGIN>![</BEGIN>
 49			<END>]</END>
 50		</SPAN>
 51        
 52        <!-- Functions -->
 53		<MARK_PREVIOUS TYPE="FUNCTION" EXCLUDE_MATCH="TRUE">(</MARK_PREVIOUS>
 54        
 55		<MARK_PREVIOUS AT_LINE_START="TRUE" TYPE="LABEL" EXCLUDE_MATCH="FALSE">:</MARK_PREVIOUS>
 56
 57        <!-- Needs to be before conditional compilation or won't work -->
 58        <SEQ TYPE="NULL">#_&lt;</SEQ>
 59        <SEQ TYPE="NULL">&gt;_#</SEQ>
 60        
 61        <!-- Conditional compilation -->
 62        <MARK_FOLLOWING AT_LINE_START="TRUE" TYPE="LABEL" EXCLUDE_MATCH="FALSE">#_</MARK_FOLLOWING>
 63        
 64		<SEQ TYPE="NULL">)</SEQ>
 65		<SEQ TYPE="NULL">(</SEQ>
 66		<SEQ TYPE="NULL">.</SEQ>
 67		<SEQ TYPE="NULL">,</SEQ>
 68		<SEQ TYPE="NULL">;</SEQ>
 69		<SEQ TYPE="NULL">^</SEQ>
 70		<SEQ TYPE="NULL">@</SEQ>
 71		<SEQ TYPE="NULL">:</SEQ>
 72		<SEQ TYPE="NULL">|</SEQ>
 73		<SEQ TYPE="OPERATOR">=</SEQ>
 74		<SEQ TYPE="OPERATOR">&gt;=</SEQ>
 75		<SEQ TYPE="OPERATOR">&lt;=</SEQ>
 76		<SEQ TYPE="OPERATOR">&lt;&gt;</SEQ>
 77		<SEQ TYPE="OPERATOR">&gt;</SEQ>
 78		<SEQ TYPE="OPERATOR">&lt;</SEQ>
 79		<SEQ TYPE="OPERATOR">+</SEQ>
 80		<SEQ TYPE="OPERATOR">/</SEQ>
 81		<SEQ TYPE="OPERATOR">-</SEQ>
 82		<SEQ TYPE="OPERATOR">*</SEQ>
 83
 84		<KEYWORDS>
 85		    <LITERAL2>false</LITERAL2> 
 86		    <LITERAL2>true</LITERAL2>
 87		    <LITERAL2>database</LITERAL2>
 88		    <LITERAL2>it</LITERAL2>
 89		    <LITERAL2>undef</LITERAL2>
 90            
 91            <!-- keywords -->
 92            <KEYWORD1>define</KEYWORD1>
 93            <KEYWORD1>class</KEYWORD1>
 94            <KEYWORD1>enddefine</KEYWORD1>
 95            <KEYWORD1>dlocal</KEYWORD1>
 96            <KEYWORD1>lvars</KEYWORD1>
 97            <KEYWORD1>vars</KEYWORD1>
 98            <KEYWORD1>slot</KEYWORD1>
 99            <KEYWORD1>instance</KEYWORD1>
100            <KEYWORD1>endinstance</KEYWORD1>
101            <KEYWORD1>method</KEYWORD1>
102		    <KEYWORD1>syntax</KEYWORD1>
103            <KEYWORD1>biginteger</KEYWORD1>
104            <KEYWORD1>boolean</KEYWORD1>
105            <KEYWORD1>complex</KEYWORD1>
106            <KEYWORD1>ddecimal</KEYWORD1>
107            <KEYWORD1>decimal</KEYWORD1>
108            <KEYWORD1>device</KEYWORD1>
109            <KEYWORD1>ident</KEYWORD1>
110            <KEYWORD1>integer</KEYWORD1>
111            <KEYWORD1>intvec</KEYWORD1>
112            <KEYWORD1>key</KEYWORD1>
113            <KEYWORD1>nil</KEYWORD1>
114            <KEYWORD1>pair</KEYWORD1>
115            <KEYWORD1>procedure</KEYWORD1>
116            <KEYWORD1>process</KEYWORD1>
117            <KEYWORD1>prologterm</KEYWORD1>
118            <KEYWORD1>prologvar</KEYWORD1>
119            <KEYWORD1>ratio</KEYWORD1>
120            <KEYWORD1>ref</KEYWORD1>
121            <KEYWORD1>section</KEYWORD1>
122            <KEYWORD1>string</KEYWORD1>
123            <KEYWORD1>termin</KEYWORD1>
124            <KEYWORD1>vector</KEYWORD1>
125            <KEYWORD1>word</KEYWORD1>        
126            
127            <!-- flow control -->
128            <KEYWORD3>if</KEYWORD3>
129            <KEYWORD3>forevery</KEYWORD3>
130            <KEYWORD3>endforevery</KEYWORD3>
131            <KEYWORD3>then</KEYWORD3>
132            <KEYWORD3>switchon</KEYWORD3>
133            <KEYWORD3>endswitchon</KEYWORD3>
134            <KEYWORD3>case</KEYWORD3>
135            <KEYWORD3>elseif</KEYWORD3>
136            <KEYWORD3>else</KEYWORD3>
137            <KEYWORD3>endif</KEYWORD3>
138            <KEYWORD3>for</KEYWORD3>
139            <KEYWORD3>repeat</KEYWORD3>
140            <KEYWORD3>from</KEYWORD3>
141            <KEYWORD3>till</KEYWORD3>
142            <KEYWORD3>step</KEYWORD3>
143            <KEYWORD3>while</KEYWORD3>
144            <KEYWORD3>endfor</KEYWORD3>
145            <KEYWORD3>endrepeat</KEYWORD3>
146            <KEYWORD3>endwhile</KEYWORD3>
147            <KEYWORD3>times</KEYWORD3>
148            <KEYWORD3>to</KEYWORD3>
149            <KEYWORD3>do</KEYWORD3>
150            <KEYWORD3>by</KEYWORD3>
151            <KEYWORD3>in</KEYWORD3>
152            <KEYWORD3>return</KEYWORD3>
153            
154            <!-- other statements -->
155            <KEYWORD2>and</KEYWORD2>
156            <KEYWORD2>or</KEYWORD2>
157            <KEYWORD2>matches</KEYWORD2>
158            <KEYWORD2>quitloop</KEYWORD2>
159            <KEYWORD2>goto</KEYWORD2>
160            <KEYWORD2>uses</KEYWORD2>
161            <KEYWORD2>trace</KEYWORD2>
162            <KEYWORD2>cons_with</KEYWORD2>
163            <KEYWORD2>consstring</KEYWORD2>
164            
165            <!-- Built in functions -->
166            <LITERAL2>interrupt</LITERAL2>
167            <LITERAL2>partapply</LITERAL2>
168            <LITERAL2>consclosure</LITERAL2>
169            <LITERAL2>max</LITERAL2>
170            <LITERAL2>add</LITERAL2>
171            <LITERAL2>remove</LITERAL2>
172            <LITERAL2>alladd</LITERAL2>
173            <LITERAL2>quitif</LITERAL2>
174            <LITERAL2>copydata</LITERAL2>
175            <LITERAL2>copytree</LITERAL2>
176            <LITERAL2>copylist</LITERAL2>
177            <LITERAL2>length</LITERAL2>
178            <LITERAL2>hd</LITERAL2>
179            <LITERAL2>tl</LITERAL2>
180            <LITERAL2>rev</LITERAL2>
181            <LITERAL2>shuffle</LITERAL2>
182            <LITERAL2>oneof</LITERAL2>
183            <LITERAL2>sort</LITERAL2>
184            <LITERAL2>syssort</LITERAL2>
185            <LITERAL2>random</LITERAL2>
186            <LITERAL2>readline</LITERAL2>
187            <LITERAL2>not</LITERAL2>
188            <LITERAL2>pr</LITERAL2>
189            <LITERAL2>nl</LITERAL2>
190            <LITERAL2>present</LITERAL2>
191            <LITERAL2>subword</LITERAL2>
192            <LITERAL2>member</LITERAL2>
193            <LITERAL2>length</LITERAL2>
194            <LITERAL2>listlength</LITERAL2>
195            <LITERAL2>datalength</LITERAL2>
196            <LITERAL2>mishap</LITERAL2>
197            <LITERAL2>last</LITERAL2>
198            <LITERAL2>delete</LITERAL2>
199            <LITERAL2>valof</LITERAL2>
200            <LITERAL2>dataword</LITERAL2>
201            
202            <!-- input validation functions -->
203            <LITERAL2>isnumber</LITERAL2>
204            <LITERAL2>isinteger</LITERAL2>
205            <LITERAL2>islist</LITERAL2>
206            <LITERAL2>isboolean</LITERAL2>
207		</KEYWORDS>
208	</RULES>
209    
210    <RULES SET="LIST" DEFAULT="LITERAL1" HIGHLIGHT_DIGITS="TRUE">		
211        <SPAN TYPE="LITERAL1" DELEGATE="LIST">
212			<BEGIN>[</BEGIN>
213			<END>]</END>
214		</SPAN>
215        
216        <SPAN TYPE="LITERAL1" DELEGATE="LIST">
217			<BEGIN>{</BEGIN>
218			<END>}</END>
219		</SPAN>
220        
221        <SPAN TYPE="LITERAL1" DELEGATE="LIST">
222			<BEGIN>![</BEGIN>
223			<END>]</END>
224		</SPAN>
225        
226		<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">
227			<BEGIN>'</BEGIN>
228			<END>'</END>
229		</SPAN>
230
231		<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" DELEGATE="STRING">
232			<BEGIN>"</BEGIN>
233			<END>"</END>
234		</SPAN>
235        
236        <SPAN DELEGATE="MAIN" TYPE="NULL">
237			<BEGIN>%</BEGIN>
238			<END>%</END>
239		</SPAN>
240        
241		<SPAN TYPE="COMMENT1" DELEGATE="COMMENT">
242			<BEGIN>/*</BEGIN>
243			<END>*/</END>
244		</SPAN>
245
246        <EOL_SPAN TYPE="COMMENT1">;;;</EOL_SPAN>
247		<SEQ TYPE="LITERAL2">=</SEQ>
248		<SEQ TYPE="LITERAL2">==</SEQ>
249		
250        <MARK_FOLLOWING TYPE="LITERAL2">^</MARK_FOLLOWING>
251		<MARK_FOLLOWING TYPE="LITERAL2">?</MARK_FOLLOWING>
252	</RULES>
253    
254    <RULES SET="STRING" ESCAPE="\" DEFAULT="LITERAL1" HIGHLIGHT_DIGITS="FALSE">
255    </RULES>
256    
257    <RULES NO_WORD_SEP="." SET="COMMENT" DEFAULT="COMMENT1" HIGHLIGHT_DIGITS="FALSE">
258        <MARK_PREVIOUS TYPE="LABEL" EXCLUDE_MATCH="FALSE">:</MARK_PREVIOUS>
259		<SEQ TYPE="COMMENT1">*</SEQ>
260    </RULES>
261</MODE>