]> gitweb.factorcode.org Git - factor.git/blob - basis/xmode/modes/postscript.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / postscript.xml
1 <?xml version="1.0"?>
2
3 <!DOCTYPE MODE SYSTEM "xmode.dtd">
4
5 <!-- PostScript mode, by Slava Pestov. Based on PostScriptTokenMarker by
6      Ralf Engels -->
7 <MODE>
8         <PROPS>
9                 <PROPERTY NAME="lineComment" VALUE="%" />
10         </PROPS>
11         <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
12                 <!-- Comments -->
13                 <EOL_SPAN TYPE="COMMENT2">%!</EOL_SPAN>
14                 <EOL_SPAN TYPE="COMMENT2">%?</EOL_SPAN>
15                 <EOL_SPAN TYPE="COMMENT2">%%</EOL_SPAN>
16                 <EOL_SPAN TYPE="COMMENT1">%</EOL_SPAN>
17
18                 <!-- Literals -->
19                 <SPAN TYPE="LITERAL1" DELEGATE="LITERAL">
20                         <BEGIN>(</BEGIN>
21                         <END>)</END>
22                 </SPAN>
23
24                 <SPAN TYPE="LITERAL1" ESCAPE="\">
25                         <BEGIN>&lt;</BEGIN>
26                         <END>&gt;</END>
27                 </SPAN>
28
29                 <MARK_FOLLOWING TYPE="LABEL">/</MARK_FOLLOWING>
30
31                 <SEQ TYPE="OPERATOR">}</SEQ>
32                 <SEQ TYPE="OPERATOR">{</SEQ>
33                 <SEQ TYPE="OPERATOR">]</SEQ>
34                 <SEQ TYPE="OPERATOR">[</SEQ>
35
36                 <KEYWORDS>
37                         <KEYWORD1>pop</KEYWORD1>
38                         <KEYWORD1>exch</KEYWORD1>
39                         <KEYWORD1>dup</KEYWORD1>
40                         <KEYWORD1>copy</KEYWORD1>
41                         <KEYWORD1>roll</KEYWORD1>
42                         <KEYWORD1>clear</KEYWORD1>
43                         <KEYWORD1>count</KEYWORD1>
44                         <KEYWORD1>mark</KEYWORD1>
45                         <KEYWORD1>cleartomark</KEYWORD1>
46                         <KEYWORD1>counttomark</KEYWORD1>
47
48                         <KEYWORD1>exec</KEYWORD1>
49                         <KEYWORD1>if</KEYWORD1>
50                         <KEYWORD1>ifelse</KEYWORD1>
51                         <KEYWORD1>for</KEYWORD1>
52                         <KEYWORD1>repeat</KEYWORD1>
53                         <KEYWORD1>loop</KEYWORD1>
54                         <KEYWORD1>exit</KEYWORD1>
55                         <KEYWORD1>stop</KEYWORD1>
56                         <KEYWORD1>stopped</KEYWORD1>
57                         <KEYWORD1>countexecstack</KEYWORD1>
58                         <KEYWORD1>execstack</KEYWORD1>
59                         <KEYWORD1>quit</KEYWORD1>
60                         <KEYWORD1>start</KEYWORD1>
61
62                         <OPERATOR>add</OPERATOR>
63                         <OPERATOR>div</OPERATOR>
64                         <OPERATOR>idiv</OPERATOR>
65                         <OPERATOR>mod</OPERATOR>
66                         <OPERATOR>mul</OPERATOR>
67                         <OPERATOR>sub</OPERATOR>
68                         <OPERATOR>abs</OPERATOR>
69                         <OPERATOR>ned</OPERATOR>
70                         <OPERATOR>ceiling</OPERATOR>
71                         <OPERATOR>floor</OPERATOR>
72                         <OPERATOR>round</OPERATOR>
73                         <OPERATOR>truncate</OPERATOR>
74                         <OPERATOR>sqrt</OPERATOR>
75                         <OPERATOR>atan</OPERATOR>
76                         <OPERATOR>cos</OPERATOR>
77                         <OPERATOR>sin</OPERATOR>
78                         <OPERATOR>exp</OPERATOR>
79                         <OPERATOR>ln</OPERATOR>
80                         <OPERATOR>log</OPERATOR>
81                         <OPERATOR>rand</OPERATOR>
82                         <OPERATOR>srand</OPERATOR>
83                         <OPERATOR>rrand</OPERATOR>
84
85                         <LITERAL2>true</LITERAL2>
86                         <LITERAL2>false</LITERAL2>
87                         <LITERAL2>NULL</LITERAL2>
88                 </KEYWORDS>
89         </RULES>
90
91         <RULES SET="LITERAL" DEFAULT="LITERAL1" ESCAPE="\">
92                 <SPAN TYPE="LITERAL1" DELEGATE="LITERAL">
93                         <BEGIN>(</BEGIN>
94                         <END>)</END>
95                 </SPAN>
96         </RULES>
97 </MODE>