]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/ans-forth94.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / ans-forth94.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE MODE SYSTEM "xmode.dtd">
3
4 <!--
5
6     ANS Forth 94 Syntax Highlighting Mode File for jEdit.
7     
8     Copyright (C) 2014, Mark Corbin (mark@dibsco.co.uk)
9
10
11     This library is free software; you can redistribute it and/or modify it
12     under the terms of the GNU Lesser General Public License as published by
13     the Free Software Foundation; either version 2.1 of the License, or
14     (at your option) any later version.
15
16     This library is distributed in the hope that it will be useful, but
17     WITHOUT ANY WARRANTY; without even the implied warranty of
18     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser
19     General Public License for more details.
20
21     You should have received a copy of the GNU Lesser General Public License
22     along with this library; if not, write to the Free Software
23     Foundation, Inc., 51 Franklin Street, Fifth Floor,
24     Boston, MA  02110-1301  USA
25
26 -->
27
28 <!--
29
30 Token Usage:
31
32 COMMENT1        Range and line comments.
33 COMMENT2        Tasks (FIXME TODO NOTE and XXX).
34 DIGIT           All numbers (single, double and floating point).
35 FUNCTION        Word definitions and references.
36 INVALID         Obsolete Forth keywords (all ANS wordsets).
37 KEYWORD1        Forth Keywords (all ANS wordsets).
38 KEYWORD2        Variables.
39 LITERAL1        Strings.
40 LITERAL2        Character literals.
41 LITERAL3        Constants.
42
43 -->
44
45 <!--
46
47 Recommended catalog file entry:
48
49 <MODE NAME="ans-forth94"        FILE="ans-forth94.xml"
50                                 FILE_NAME_GLOB="*.4th" />
51
52 -->
53
54 <MODE>
55   <PROPS>
56     <PROPERTY NAME="commentStart" VALUE="(" />
57     <PROPERTY NAME="commentEnd" VALUE=")" />
58     <PROPERTY NAME="lineComment" VALUE="\" />
59
60     <PROPERTY NAME="indentNextLines" VALUE="((^|\s+)(:|begin|case|else)($|\s+.*))|((^|.*\s+)(do|\?do|of|if)($|\s+.*))" />
61     <PROPERTY NAME="unindentThisLine" VALUE="(^|\s+)(;|again|repeat|until|endcase|else|loop|\+loop|endof|then)($|\s+.*)" />
62     <PROPERTY NAME="unindentNextLines" VALUE="(^|\s+)(;|again|repeat|until|endcase|else|loop|\+loop|endof|then)($|\s+.*)" />
63     <PROPERTY NAME="electricKeys" VALUE=";eflnopt" />
64   </PROPS>
65
66   <RULES IGNORE_CASE="TRUE"
67          NO_WORD_SEP="!£$%^&amp;#&apos;~|\(){}*+,-./_=@:;&lt;&gt;&quot;?[]"
68          HIGHLIGHT_DIGITS="TRUE"
69          DIGIT_RE="((^|\s+)([-]?[0-9]+)($|\s+))|((^|\s+)([-]?[0-9]+[.][0-9]*)($|\s+))|((^|\s+)(([+]|[-])?([0-9]+[.]?[0-9]*)(E|e)([+]|[-])?([0-9]*))($|\s+))">
70
71     <!-- Line Comments. -->
72     <EOL_SPAN_REGEXP TYPE="KEYWORD1"
73                      AT_WORD_START="TRUE"
74                      DELEGATE="LINE-COMMENT">\\($|\s+)</EOL_SPAN_REGEXP>
75
76     <!-- Range Comments. -->
77     <SPAN_REGEXP TYPE="KEYWORD1"
78                  AT_WORD_START="TRUE"
79                  DELEGATE="RANGE-COMMENT">
80       <BEGIN>\(($|\s+)</BEGIN>
81       <END REGEXP="TRUE">(?=\))</END>
82     </SPAN_REGEXP>
83
84     <!-- Quoted Strings. -->
85     <SPAN_REGEXP TYPE="KEYWORD1"
86                  AT_WORD_START="TRUE"
87                  DELEGATE="STRING">
88       <BEGIN>([.]&quot;|ABORT&quot;|S&quot;|C&quot;)($|\s+)</BEGIN>
89       <END REGEXP="TRUE">(?=&quot;)</END>
90     </SPAN_REGEXP>
91
92     <!-- Parsed Strings. -->
93     <SPAN_REGEXP TYPE="KEYWORD1" 
94                  AT_WORD_START="TRUE"
95                  NO_LINE_BREAK="TRUE"
96                  DELEGATE="STRING">
97       <BEGIN>(WORD|PARSE)($|\s+)</BEGIN>
98       <END REGEXP="TRUE">\s+</END>
99     </SPAN_REGEXP>
100
101     <!-- Display Strings. -->
102     <SPAN_REGEXP TYPE="KEYWORD1"
103                  AT_WORD_START="TRUE"
104                  DELEGATE="STRING">
105       <BEGIN>[.]\(($|\s+)</BEGIN>
106       <END REGEXP="TRUE">(?=\))</END>
107     </SPAN_REGEXP>
108
109     <!-- Character Literals. -->
110     <SPAN_REGEXP TYPE="KEYWORD1"
111                     AT_WORD_START="TRUE"
112                     NO_LINE_BREAK="TRUE"
113                     DELEGATE="LITERAL">
114       <BEGIN>(CHAR|\[CHAR\])($|\s+)</BEGIN>
115       <END REGEXP="TRUE">\s+</END>
116     </SPAN_REGEXP>
117
118     <!-- Word Definitions and References. -->
119     <SPAN_REGEXP TYPE="KEYWORD1"
120                     AT_WORD_START="TRUE"
121                     NO_LINE_BREAK="TRUE"
122                     DELEGATE="WORD">
123       <BEGIN>(:|'|CREATE|POSTPONE|MARKER|\[COMPILE\]|CODE|SEE)($|\s+)</BEGIN>
124       <END REGEXP="TRUE">\s+</END>
125     </SPAN_REGEXP>
126
127     <!-- Obsolete Keywords. -->
128     <SPAN_REGEXP TYPE="INVALID"
129                     AT_WORD_START="TRUE"
130                     NO_LINE_BREAK="TRUE"
131                     DELEGATE="WORD">
132       <BEGIN>FORGET($|\s+)</BEGIN>
133       <END REGEXP="TRUE">\s+</END>
134     </SPAN_REGEXP>
135
136     <!-- Variables. -->
137     <SPAN_REGEXP TYPE="KEYWORD1"
138                     AT_WORD_START="TRUE"
139                     NO_LINE_BREAK="TRUE"
140                     DELEGATE="VARIABLE">
141       <BEGIN>(VARIABLE|TO|VALUE|2VARIABLE|FVARIABLE)($|\s+)</BEGIN>
142       <END REGEXP="TRUE">\s+</END>
143     </SPAN_REGEXP>
144
145     <!-- Local Variables. -->
146     <SPAN_REGEXP TYPE="KEYWORD1"
147                     AT_WORD_START="TRUE"
148                     NO_LINE_BREAK="TRUE"
149                     DELEGATE="VARIABLE">
150       <BEGIN>(LOCALS\|)($|\s+)</BEGIN>
151       <END REGEXP="TRUE">(?=\|)</END>
152     </SPAN_REGEXP>
153
154     <!-- Constants. -->
155     <SPAN_REGEXP TYPE="KEYWORD1"
156                     AT_WORD_START="TRUE"
157                     NO_LINE_BREAK="TRUE"
158                     DELEGATE="CONSTANT">
159       <BEGIN>(CONSTANT|2CONSTANT|FCONSTANT)($|\s+)</BEGIN>
160       <END REGEXP="TRUE">\s+</END>
161     </SPAN_REGEXP>
162
163     <KEYWORDS>
164       <!-- Core Keywords -->
165       <KEYWORD1>!</KEYWORD1>
166       <KEYWORD1>#</KEYWORD1>
167       <KEYWORD1>#&gt;</KEYWORD1> <!-- #> -->
168       <KEYWORD1>#S</KEYWORD1>
169       <KEYWORD1>&apos;</KEYWORD1> <!-- ' -->
170       <KEYWORD1>(</KEYWORD1>
171       <KEYWORD1>)</KEYWORD1> <!-- Added to delimit range comments. -->
172       <KEYWORD1>*</KEYWORD1>
173       <KEYWORD1>*/</KEYWORD1>
174       <KEYWORD1>*/MOD</KEYWORD1>
175       <KEYWORD1>+</KEYWORD1>
176       <KEYWORD1>+!</KEYWORD1>
177       <KEYWORD1>+LOOP</KEYWORD1>
178       <KEYWORD1>,</KEYWORD1>
179       <KEYWORD1>-</KEYWORD1>
180       <KEYWORD1>.</KEYWORD1>
181       <KEYWORD1>.&quot;</KEYWORD1> <!-- ." -->
182       <KEYWORD1>&quot;</KEYWORD1> <!-- Added to delimit strings. -->
183       <KEYWORD1>/</KEYWORD1>
184       <KEYWORD1>/MOD</KEYWORD1>
185       <KEYWORD1>0&lt;</KEYWORD1> <!-- 0< -->
186       <KEYWORD1>0=</KEYWORD1>
187       <KEYWORD1>1+</KEYWORD1>
188       <KEYWORD1>1-</KEYWORD1>
189       <KEYWORD1>2!</KEYWORD1>
190       <KEYWORD1>2*</KEYWORD1>
191       <KEYWORD1>2/</KEYWORD1>
192       <KEYWORD1>2@</KEYWORD1>
193       <KEYWORD1>2DROP</KEYWORD1>
194       <KEYWORD1>2DUP</KEYWORD1>
195       <KEYWORD1>2OVER</KEYWORD1>
196       <KEYWORD1>2SWAP</KEYWORD1>
197       <KEYWORD1>:</KEYWORD1>
198       <KEYWORD1>;</KEYWORD1>
199       <KEYWORD1>&lt;</KEYWORD1> <!-- < -->
200       <KEYWORD1>&lt;#</KEYWORD1> <!-- <# -->
201       <KEYWORD1>=</KEYWORD1>
202       <KEYWORD1>&gt;</KEYWORD1> <!-- > -->
203       <KEYWORD1>&gt;BODY</KEYWORD1> <!-- >BODY -->
204       <KEYWORD1>&gt;IN</KEYWORD1> <!-- >IN -->
205       <KEYWORD1>&gt;NUMBER</KEYWORD1> <!-- >NUMBER -->
206       <KEYWORD1>&gt;R</KEYWORD1> <!-- >R -->
207       <KEYWORD1>?DUP</KEYWORD1>
208       <KEYWORD1>@</KEYWORD1>
209       <KEYWORD1>ABORT</KEYWORD1>
210       <KEYWORD1>ABORT&quot;</KEYWORD1> <!-- ABORT" -->
211       <KEYWORD1>ABS</KEYWORD1>
212       <KEYWORD1>ACCEPT</KEYWORD1>
213       <KEYWORD1>ALIGN</KEYWORD1>
214       <KEYWORD1>ALIGNED</KEYWORD1>
215       <KEYWORD1>ALLOT</KEYWORD1>
216       <KEYWORD1>AND</KEYWORD1>
217       <KEYWORD1>BASE</KEYWORD1>
218       <KEYWORD1>BEGIN</KEYWORD1>
219       <KEYWORD1>BL</KEYWORD1>
220       <KEYWORD1>C!</KEYWORD1>
221       <KEYWORD1>C,</KEYWORD1>
222       <KEYWORD1>C@</KEYWORD1>
223       <KEYWORD1>CELL+</KEYWORD1>
224       <KEYWORD1>CELLS</KEYWORD1>
225       <KEYWORD1>CHAR</KEYWORD1>
226       <KEYWORD1>CHAR+</KEYWORD1>
227       <KEYWORD1>CHARS</KEYWORD1>
228       <KEYWORD1>CONSTANT</KEYWORD1>
229       <KEYWORD1>COUNT</KEYWORD1>
230       <KEYWORD1>CR</KEYWORD1>
231       <KEYWORD1>CREATE</KEYWORD1>
232       <KEYWORD1>DECIMAL</KEYWORD1>
233       <KEYWORD1>DEPTH</KEYWORD1>
234       <KEYWORD1>DO</KEYWORD1>
235       <KEYWORD1>DOES&gt;</KEYWORD1> <!-- DOES> -->
236       <KEYWORD1>DROP</KEYWORD1>
237       <KEYWORD1>DUP</KEYWORD1>
238       <KEYWORD1>ELSE</KEYWORD1>
239       <KEYWORD1>EMIT</KEYWORD1>
240       <KEYWORD1>ENVIRONMENT?</KEYWORD1>
241       <KEYWORD1>EVALUATE</KEYWORD1>
242       <KEYWORD1>EXECUTE</KEYWORD1>
243       <KEYWORD1>EXIT</KEYWORD1>
244       <KEYWORD1>FILL</KEYWORD1>
245       <KEYWORD1>FIND</KEYWORD1>
246       <KEYWORD1>FM/MOD</KEYWORD1>
247       <KEYWORD1>HERE</KEYWORD1>
248       <KEYWORD1>HOLD</KEYWORD1>
249       <KEYWORD1>I</KEYWORD1>
250       <KEYWORD1>IF</KEYWORD1>
251       <KEYWORD1>IMMEDIATE</KEYWORD1>
252       <KEYWORD1>INVERT</KEYWORD1>
253       <KEYWORD1>J</KEYWORD1>
254       <KEYWORD1>KEY</KEYWORD1>
255       <KEYWORD1>LEAVE</KEYWORD1>
256       <KEYWORD1>LITERAL</KEYWORD1>
257       <KEYWORD1>LOOP</KEYWORD1>
258       <KEYWORD1>LSHIFT</KEYWORD1>
259       <KEYWORD1>M*</KEYWORD1>
260       <KEYWORD1>MAX</KEYWORD1>
261       <KEYWORD1>MIN</KEYWORD1>
262       <KEYWORD1>MOD</KEYWORD1>
263       <KEYWORD1>MOVE</KEYWORD1>
264       <KEYWORD1>NEGATE</KEYWORD1>
265       <KEYWORD1>OR</KEYWORD1>
266       <KEYWORD1>OVER</KEYWORD1>
267       <KEYWORD1>POSTPONE</KEYWORD1>
268       <KEYWORD1>QUIT</KEYWORD1>
269       <KEYWORD1>R&gt;</KEYWORD1> <!-- R> -->
270       <KEYWORD1>R@</KEYWORD1>
271       <KEYWORD1>RECURSE</KEYWORD1>
272       <KEYWORD1>REPEAT</KEYWORD1>
273       <KEYWORD1>ROT</KEYWORD1>
274       <KEYWORD1>RSHIFT</KEYWORD1>
275       <KEYWORD1>S&quot;</KEYWORD1> <!-- S" -->
276       <KEYWORD1>S&gt;D</KEYWORD1> <!-- S>D -->
277       <KEYWORD1>SIGN</KEYWORD1>
278       <KEYWORD1>SM/REM</KEYWORD1>
279       <KEYWORD1>SOURCE</KEYWORD1>
280       <KEYWORD1>SPACE</KEYWORD1>
281       <KEYWORD1>SPACES</KEYWORD1>
282       <KEYWORD1>STATE</KEYWORD1>
283       <KEYWORD1>SWAP</KEYWORD1>
284       <KEYWORD1>THEN</KEYWORD1>
285       <KEYWORD1>TYPE</KEYWORD1>
286       <KEYWORD1>U.</KEYWORD1>
287       <KEYWORD1>U&lt;</KEYWORD1> <!-- U< -->
288       <KEYWORD1>UM*</KEYWORD1>
289       <KEYWORD1>UM/MOD</KEYWORD1>
290       <KEYWORD1>UNLOOP</KEYWORD1>
291       <KEYWORD1>UNTIL</KEYWORD1>
292       <KEYWORD1>VARIABLE</KEYWORD1>
293       <KEYWORD1>WHILE</KEYWORD1>
294       <KEYWORD1>WORD</KEYWORD1>
295       <KEYWORD1>XOR</KEYWORD1>
296       <KEYWORD1>[</KEYWORD1>
297       <KEYWORD1>[&apos;]</KEYWORD1> <!-- ['] -->
298       <KEYWORD1>[CHAR]</KEYWORD1>
299       <KEYWORD1>]</KEYWORD1>
300       <!-- Core Extension Keywords -->
301       <KEYWORD1>.(</KEYWORD1>
302       <KEYWORD1>.R</KEYWORD1>
303       <KEYWORD1>0&lt;&gt;</KEYWORD1> <!-- 0<> -->
304       <KEYWORD1>0&gt;</KEYWORD1> <!-- 0> -->
305       <KEYWORD1>2&gt;R</KEYWORD1> <!-- 2>R -->
306       <KEYWORD1>2R&gt;</KEYWORD1> <!-- 2R> -->
307       <KEYWORD1>2R@</KEYWORD1>
308       <KEYWORD1>:NONAME</KEYWORD1>
309       <KEYWORD1>&lt;&gt;</KEYWORD1> <!-- <> -->
310       <KEYWORD1>?DO</KEYWORD1>
311       <KEYWORD1>AGAIN</KEYWORD1>
312       <KEYWORD1>C&quot;</KEYWORD1> <!-- C" -->
313       <KEYWORD1>CASE</KEYWORD1>
314       <KEYWORD1>COMPILE,</KEYWORD1>
315       <KEYWORD1>ENDCASE</KEYWORD1>
316       <KEYWORD1>ENDOF</KEYWORD1>
317       <KEYWORD1>ERASE</KEYWORD1>
318       <KEYWORD1>FALSE</KEYWORD1>
319       <KEYWORD1>HEX</KEYWORD1>
320       <KEYWORD1>MARKER</KEYWORD1>
321       <KEYWORD1>NIP</KEYWORD1>
322       <KEYWORD1>OF</KEYWORD1>
323       <KEYWORD1>PAD</KEYWORD1>
324       <KEYWORD1>PARSE</KEYWORD1>
325       <KEYWORD1>PICK</KEYWORD1>
326       <KEYWORD1>REFILL</KEYWORD1>
327       <KEYWORD1>RESTORE-INPUT</KEYWORD1>
328       <KEYWORD1>ROLL</KEYWORD1>
329       <KEYWORD1>SAVE-INPUT</KEYWORD1>
330       <KEYWORD1>SOURCE-ID</KEYWORD1>
331       <KEYWORD1>TO</KEYWORD1>
332       <KEYWORD1>TRUE</KEYWORD1>
333       <KEYWORD1>TUCK</KEYWORD1>
334       <KEYWORD1>U.R</KEYWORD1>
335       <KEYWORD1>U&gt;</KEYWORD1> <!-- U> -->
336       <KEYWORD1>UNUSED</KEYWORD1>
337       <KEYWORD1>VALUE</KEYWORD1>
338       <KEYWORD1>WITHIN</KEYWORD1>
339       <KEYWORD1>[COMPILE]</KEYWORD1>
340       <KEYWORD1>\</KEYWORD1>
341       <!-- Obsolete Core Extension Keywords -->
342       <INVALID>#TIB</INVALID>
343       <INVALID>CONVERT</INVALID>
344       <INVALID>EXPECT</INVALID>
345       <INVALID>QUERY</INVALID>
346       <INVALID>SPAN</INVALID>
347       <INVALID>TIB</INVALID>
348       <!-- Block Keywords -->
349       <KEYWORD1>BLK</KEYWORD1>
350       <KEYWORD1>BLOCK</KEYWORD1>
351       <KEYWORD1>BUFFER</KEYWORD1>
352       <KEYWORD1>EVALUATE</KEYWORD1>
353       <KEYWORD1>FLUSH</KEYWORD1>
354       <KEYWORD1>LOAD</KEYWORD1>
355       <KEYWORD1>SAVE-BUFFERS</KEYWORD1>
356       <KEYWORD1>UPDATE</KEYWORD1>
357       <!-- Block Extension Keywords -->
358       <KEYWORD1>EMPTY-BUFFERS</KEYWORD1>
359       <KEYWORD1>LIST</KEYWORD1>
360       <KEYWORD1>REFILL</KEYWORD1>
361       <KEYWORD1>SCR</KEYWORD1>
362       <KEYWORD1>THRU</KEYWORD1>
363       <KEYWORD1>\</KEYWORD1>
364       <!-- Double Keywords -->
365       <KEYWORD1>2CONSTANT</KEYWORD1>
366       <KEYWORD1>2LITERAL</KEYWORD1>
367       <KEYWORD1>2VARIABLE</KEYWORD1>
368       <KEYWORD1>D+</KEYWORD1>
369       <KEYWORD1>D-</KEYWORD1>
370       <KEYWORD1>D.</KEYWORD1>
371       <KEYWORD1>D.R</KEYWORD1>
372       <KEYWORD1>D0&lt;</KEYWORD1> <!-- D0< -->
373       <KEYWORD1>D0=</KEYWORD1>
374       <KEYWORD1>D2*</KEYWORD1>
375       <KEYWORD1>D2/</KEYWORD1>
376       <KEYWORD1>D&lt;</KEYWORD1> <!-- D< -->
377       <KEYWORD1>D=</KEYWORD1>
378       <KEYWORD1>D&gt;S</KEYWORD1> <!-- D>S -->
379       <KEYWORD1>DABS</KEYWORD1>
380       <KEYWORD1>DMAX</KEYWORD1>
381       <KEYWORD1>DMIN</KEYWORD1>
382       <KEYWORD1>DNEGATE</KEYWORD1>
383       <KEYWORD1>M*/</KEYWORD1>
384       <KEYWORD1>M+</KEYWORD1>
385       <!-- Double Extension Keywords -->
386       <KEYWORD1>2ROT</KEYWORD1>
387       <KEYWORD1>DU&lt;</KEYWORD1> <!-- DU< -->
388       <!-- Exception Keywords -->
389       <KEYWORD1>CATCH</KEYWORD1>
390       <KEYWORD1>THROW</KEYWORD1>
391       <!-- Exception Extension Keywords -->
392       <KEYWORD1>ABORT</KEYWORD1>
393       <KEYWORD1>ABORT&quot;</KEYWORD1> <!-- ABORT" -->
394       <!-- Facility Keywords -->
395       <KEYWORD1>AT-XY</KEYWORD1>
396       <KEYWORD1>KEY?</KEYWORD1>
397       <KEYWORD1>PAGE</KEYWORD1>
398       <!-- Facility Extension Keywords -->
399       <KEYWORD1>EKEY</KEYWORD1>
400       <KEYWORD1>EKEY&gt;CHAR</KEYWORD1> <!-- EKEY>CHAR -->
401       <KEYWORD1>EKEY?</KEYWORD1>
402       <KEYWORD1>EMIT?</KEYWORD1>
403       <KEYWORD1>MS</KEYWORD1>
404       <KEYWORD1>TIME&amp;DATE</KEYWORD1> <!-- TIME&DATE -->
405       <!-- File Keywords -->
406       <KEYWORD1>(</KEYWORD1>
407       <KEYWORD1>BIN</KEYWORD1>
408       <KEYWORD1>CLOSE-FILE</KEYWORD1>
409       <KEYWORD1>CREATE-FILE</KEYWORD1>
410       <KEYWORD1>DELETE-FILE</KEYWORD1>
411       <KEYWORD1>FILE-POSITION</KEYWORD1>
412       <KEYWORD1>FILE-SIZE</KEYWORD1>
413       <KEYWORD1>INCLUDE-FILE</KEYWORD1>
414       <KEYWORD1>INCLUDED</KEYWORD1>
415       <KEYWORD1>OPEN-FILE</KEYWORD1>
416       <KEYWORD1>R/O</KEYWORD1>
417       <KEYWORD1>R/W</KEYWORD1>
418       <KEYWORD1>READ-FILE</KEYWORD1>
419       <KEYWORD1>READ-LINE</KEYWORD1>
420       <KEYWORD1>REPOSITION-FILE</KEYWORD1>
421       <KEYWORD1>RESIZE-FILE</KEYWORD1>
422       <KEYWORD1>S&quot;</KEYWORD1> <!-- S" -->
423       <KEYWORD1>SOURCE-ID</KEYWORD1>
424       <KEYWORD1>W/O</KEYWORD1>
425       <KEYWORD1>WRITE-FILE</KEYWORD1>
426       <KEYWORD1>WRITE-LINE</KEYWORD1>
427       <!-- File Extension Keywords -->
428       <KEYWORD1>FILE-STATUS</KEYWORD1>
429       <KEYWORD1>FLUSH-FILE</KEYWORD1>
430       <KEYWORD1>REFILL</KEYWORD1>
431       <KEYWORD1>RENAME-FILE</KEYWORD1>
432       <!-- Floating Keywords -->
433       <KEYWORD1>&gt;FLOAT</KEYWORD1> <!-- >FLOAT -->
434       <KEYWORD1>D&gt;F</KEYWORD1> <!-- D>F -->
435       <KEYWORD1>F!</KEYWORD1>
436       <KEYWORD1>F*</KEYWORD1>
437       <KEYWORD1>F+</KEYWORD1>
438       <KEYWORD1>F-</KEYWORD1>
439       <KEYWORD1>F/</KEYWORD1>
440       <KEYWORD1>F0&lt;</KEYWORD1> <!-- F0< -->
441       <KEYWORD1>F0=</KEYWORD1>
442       <KEYWORD1>F&lt;</KEYWORD1> <!-- F< -->
443       <KEYWORD1>F&gt;D</KEYWORD1> <!-- F>D -->
444       <KEYWORD1>F@</KEYWORD1>
445       <KEYWORD1>FALIGN</KEYWORD1>
446       <KEYWORD1>FALIGNED</KEYWORD1>
447       <KEYWORD1>FCONSTANT</KEYWORD1>
448       <KEYWORD1>FDEPTH</KEYWORD1>
449       <KEYWORD1>FDROP</KEYWORD1>
450       <KEYWORD1>FDUP</KEYWORD1>
451       <KEYWORD1>FLITERAL</KEYWORD1>
452       <KEYWORD1>FLOAT+</KEYWORD1>
453       <KEYWORD1>FLOATS</KEYWORD1>
454       <KEYWORD1>FLOOR</KEYWORD1>
455       <KEYWORD1>FMAX</KEYWORD1>
456       <KEYWORD1>FMIN</KEYWORD1>
457       <KEYWORD1>FNEGATE</KEYWORD1>
458       <KEYWORD1>FOVER</KEYWORD1>
459       <KEYWORD1>FROT</KEYWORD1>
460       <KEYWORD1>FROUND</KEYWORD1>
461       <KEYWORD1>FSWAP</KEYWORD1>
462       <KEYWORD1>FVARIABLE</KEYWORD1>
463       <KEYWORD1>REPRESENT</KEYWORD1>
464       <!-- Floating Extension Keywords -->
465       <KEYWORD1>DF!</KEYWORD1>
466       <KEYWORD1>DF@</KEYWORD1>
467       <KEYWORD1>DFALIGN</KEYWORD1>
468       <KEYWORD1>DFALIGNED</KEYWORD1>
469       <KEYWORD1>DFLOAT+</KEYWORD1>
470       <KEYWORD1>DFLOATS</KEYWORD1>
471       <KEYWORD1>F**</KEYWORD1>
472       <KEYWORD1>F.</KEYWORD1>
473       <KEYWORD1>FABS</KEYWORD1>
474       <KEYWORD1>FACOS</KEYWORD1>
475       <KEYWORD1>FACOSH</KEYWORD1>
476       <KEYWORD1>FALOG</KEYWORD1>
477       <KEYWORD1>FASIN</KEYWORD1>
478       <KEYWORD1>FASINH</KEYWORD1>
479       <KEYWORD1>FATAN</KEYWORD1>
480       <KEYWORD1>FATAN2</KEYWORD1>
481       <KEYWORD1>FATANH</KEYWORD1>
482       <KEYWORD1>FCOS</KEYWORD1>
483       <KEYWORD1>FCOSH</KEYWORD1>
484       <KEYWORD1>FE.</KEYWORD1>
485       <KEYWORD1>FEXP</KEYWORD1>
486       <KEYWORD1>FEXPM1</KEYWORD1>
487       <KEYWORD1>FLN</KEYWORD1>
488       <KEYWORD1>FLNP1</KEYWORD1>
489       <KEYWORD1>FLOG</KEYWORD1>
490       <KEYWORD1>FS.</KEYWORD1>
491       <KEYWORD1>FSIN</KEYWORD1>
492       <KEYWORD1>FSINCOS</KEYWORD1>
493       <KEYWORD1>FSINH</KEYWORD1>
494       <KEYWORD1>FSQRT</KEYWORD1>
495       <KEYWORD1>FTAN</KEYWORD1>
496       <KEYWORD1>FTANH</KEYWORD1>
497       <KEYWORD1>F~</KEYWORD1>
498       <KEYWORD1>PRECISION</KEYWORD1>
499       <KEYWORD1>SET-PRECISION</KEYWORD1>
500       <KEYWORD1>SF!</KEYWORD1>
501       <KEYWORD1>SF@</KEYWORD1>
502       <KEYWORD1>SFALIGN</KEYWORD1>
503       <KEYWORD1>SFALIGNED</KEYWORD1>
504       <KEYWORD1>SFLOAT+</KEYWORD1>
505       <KEYWORD1>SFLOATS</KEYWORD1>
506       <!-- Local Keywords -->
507       <KEYWORD1>(LOCAL)</KEYWORD1>
508       <KEYWORD1>TO</KEYWORD1>
509       <!-- Local Extension Keywords -->
510       <KEYWORD1>LOCALS|</KEYWORD1>
511       <KEYWORD1>|</KEYWORD1> <!-- Added to delimit local variables. -->
512       <!-- Memory Keywords -->
513       <KEYWORD1>ALLOCATE</KEYWORD1>
514       <KEYWORD1>FREE</KEYWORD1>
515       <KEYWORD1>RESIZE</KEYWORD1>
516       <!-- Tools Keywords -->
517       <KEYWORD1>.S</KEYWORD1>
518       <KEYWORD1>?</KEYWORD1>
519       <KEYWORD1>DUMP</KEYWORD1>
520       <KEYWORD1>SEE</KEYWORD1>
521       <KEYWORD1>WORDS</KEYWORD1>
522       <!-- Tools Extension Keywords -->
523       <KEYWORD1>;CODE</KEYWORD1>
524       <KEYWORD1>AHEAD</KEYWORD1>
525       <KEYWORD1>ASSEMBLER</KEYWORD1>
526       <KEYWORD1>BYE</KEYWORD1>
527       <KEYWORD1>CODE</KEYWORD1>
528       <KEYWORD1>CS-PICK</KEYWORD1>
529       <KEYWORD1>CS-ROLL</KEYWORD1>
530       <KEYWORD1>EDITOR</KEYWORD1>
531       <KEYWORD1>STATE</KEYWORD1>
532       <KEYWORD1>[ELSE]</KEYWORD1>
533       <KEYWORD1>[IF]</KEYWORD1>
534       <KEYWORD1>[THEN]</KEYWORD1>
535       <!-- Obsolete Tools Extension Keywords -->
536       <INVALID>FORGET</INVALID>
537       <!-- Search Keywords -->
538       <KEYWORD1>DEFINITIONS</KEYWORD1>
539       <KEYWORD1>FIND</KEYWORD1>
540       <KEYWORD1>FORTH-WORDLIST</KEYWORD1>
541       <KEYWORD1>GET-CURRENT</KEYWORD1>
542       <KEYWORD1>GET-ORDER</KEYWORD1>
543       <KEYWORD1>SEARCH-WORDLIST</KEYWORD1>
544       <KEYWORD1>SET-CURRENT</KEYWORD1>
545       <KEYWORD1>SET-ORDER</KEYWORD1>
546       <KEYWORD1>WORDLIST</KEYWORD1>
547       <!-- Search Extension Keywords -->
548       <KEYWORD1>ALSO</KEYWORD1>
549       <KEYWORD1>FORTH</KEYWORD1>
550       <KEYWORD1>ONLY</KEYWORD1>
551       <KEYWORD1>ORDER</KEYWORD1>
552       <KEYWORD1>PREVIOUS</KEYWORD1>
553       <!-- String Keywords -->
554       <KEYWORD1>-TRAILING</KEYWORD1>
555       <KEYWORD1>/STRING</KEYWORD1>
556       <KEYWORD1>BLANK</KEYWORD1>
557       <KEYWORD1>CMOVE</KEYWORD1>
558       <KEYWORD1>CMOVE&gt;</KEYWORD1> <!-- CMOVE> -->
559       <KEYWORD1>COMPARE</KEYWORD1>
560       <KEYWORD1>SEARCH</KEYWORD1>
561       <KEYWORD1>SLITERAL</KEYWORD1>
562     </KEYWORDS>
563   </RULES>
564
565   <RULES SET="RANGE-COMMENT" IGNORE_CASE="TRUE" DEFAULT="COMMENT1" HIGHLIGHT_DIGITS="FALSE">
566     <IMPORT DELEGATE="IN-COMMENT" />
567   </RULES>
568
569   <RULES SET="LINE-COMMENT" IGNORE_CASE="TRUE" DEFAULT="COMMENT1" HIGHLIGHT_DIGITS="FALSE">
570     <IMPORT DELEGATE="IN-COMMENT" />
571   </RULES>
572
573   <RULES SET="IN-COMMENT" IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="FALSE">
574     <SEQ_REGEXP TYPE="COMMENT2">(FIXME|TODO|NOTE|XXX)(:|$|\s+)</SEQ_REGEXP>
575   </RULES>
576
577   <RULES SET="STRING" IGNORE_CASE="TRUE" DEFAULT="LITERAL1" HIGHLIGHT_DIGITS="FALSE" />
578
579   <RULES SET="LITERAL" IGNORE_CASE="TRUE" DEFAULT="LITERAL2" HIGHLIGHT_DIGITS="FALSE" />
580
581   <RULES SET="WORD" IGNORE_CASE="TRUE" DEFAULT="FUNCTION" HIGHLIGHT_DIGITS="FALSE" />
582
583   <RULES SET="VARIABLE" IGNORE_CASE="TRUE" DEFAULT="KEYWORD2" HIGHLIGHT_DIGITS="FALSE" />
584
585   <RULES SET="CONSTANT" IGNORE_CASE="TRUE" DEFAULT="LITERAL3" HIGHLIGHT_DIGITS="FALSE" />
586 </MODE>