Mercurial > vim
comparison runtime/syntax/rpl.vim @ 7:3fc0f57ecb91 v7.0001
updated for version 7.0001
author | vimboss |
---|---|
date | Sun, 13 Jun 2004 20:20:40 +0000 |
parents | |
children | b7811ab264bf |
comparison
equal
deleted
inserted
replaced
6:c2daee826b8f | 7:3fc0f57ecb91 |
---|---|
1 " Vim syntax file | |
2 " Language: RPL/2 | |
3 " Version: 0.15.15 against RPL/2 version 4.00pre7i | |
4 " Last Change: 2003 august 24 | |
5 " Maintainer: Joël BERTRAND <rpl2@free.fr> | |
6 " URL: http://www.makalis.fr/~bertrand/rpl2/download/vim/indent/rpl.vim | |
7 " Credits: Nothing | |
8 | |
9 " For version 5.x: Clear all syntax items | |
10 " For version 6.x: Quit when a syntax file was already loaded | |
11 if version < 600 | |
12 syntax clear | |
13 elseif exists("b:current_syntax") | |
14 finish | |
15 endif | |
16 | |
17 " Keyword characters (not used) | |
18 " set iskeyword=33-127 | |
19 | |
20 " Case sensitive | |
21 syntax case match | |
22 | |
23 " Constants | |
24 syntax match rplConstant "\(^\|\s\+\)\(e\|i\)\ze\($\|\s\+\)" | |
25 | |
26 " Any binary number | |
27 syntax match rplBinaryError "\(^\|\s\+\)#\s*\S\+b\ze" | |
28 syntax match rplBinary "\(^\|\s\+\)#\s*[01]\+b\ze\($\|\s\+\)" | |
29 syntax match rplOctalError "\(^\|\s\+\)#\s*\S\+o\ze" | |
30 syntax match rplOctal "\(^\|\s\+\)#\s*\o\+o\ze\($\|\s\+\)" | |
31 syntax match rplDecimalError "\(^\|\s\+\)#\s*\S\+d\ze" | |
32 syntax match rplDecimal "\(^\|\s\+\)#\s*\d\+d\ze\($\|\s\+\)" | |
33 syntax match rplHexadecimalError "\(^\|\s\+\)#\s*\S\+h\ze" | |
34 syntax match rplHexadecimal "\(^\|\s\+\)#\s*\x\+h\ze\($\|\s\+\)" | |
35 | |
36 " Case unsensitive | |
37 syntax case ignore | |
38 | |
39 syntax match rplControl "\(^\|\s\+\)abort\ze\($\|\s\+\)" | |
40 syntax match rplControl "\(^\|\s\+\)kill\ze\($\|\s\+\)" | |
41 syntax match rplControl "\(^\|\s\+\)cont\ze\($\|\s\+\)" | |
42 syntax match rplControl "\(^\|\s\+\)halt\ze\($\|\s\+\)" | |
43 syntax match rplControl "\(^\|\s\+\)cmlf\ze\($\|\s\+\)" | |
44 syntax match rplControl "\(^\|\s\+\)sst\ze\($\|\s\+\)" | |
45 | |
46 syntax match rplConstant "\(^\|\s\+\)pi\ze\($\|\s\+\)" | |
47 | |
48 syntax match rplStatement "\(^\|\s\+\)return\ze\($\|\s\+\)" | |
49 syntax match rplStatement "\(^\|\s\+\)last\ze\($\|\s\+\)" | |
50 syntax match rplStatement "\(^\|\s\+\)syzeval\ze\($\|\s\+\)" | |
51 syntax match rplStatement "\(^\|\s\+\)wait\ze\($\|\s\+\)" | |
52 syntax match rplStatement "\(^\|\s\+\)type\ze\($\|\s\+\)" | |
53 syntax match rplStatement "\(^\|\s\+\)kind\ze\($\|\s\+\)" | |
54 syntax match rplStatement "\(^\|\s\+\)eval\ze\($\|\s\+\)" | |
55 syntax match rplStatement "\(^\|\s\+\)use\ze\($\|\s\+\)" | |
56 syntax match rplStatement "\(^\|\s\+\)remove\ze\($\|\s\+\)" | |
57 syntax match rplStatement "\(^\|\s\+\)external\ze\($\|\s\+\)" | |
58 syntax match rplStatement "\(^\|\s\+\)dup\([2n]\|\)\ze\($\|\s\+\)" | |
59 syntax match rplStatement "\(^\|\s\+\)drop\([2n]\|\)\ze\($\|\s\+\)" | |
60 syntax match rplStatement "\(^\|\s\+\)depth\ze\($\|\s\+\)" | |
61 syntax match rplStatement "\(^\|\s\+\)roll\(d\|\)\ze\($\|\s\+\)" | |
62 syntax match rplStatement "\(^\|\s\+\)pick\ze\($\|\s\+\)" | |
63 syntax match rplStatement "\(^\|\s\+\)rot\ze\($\|\s\+\)" | |
64 syntax match rplStatement "\(^\|\s\+\)swap\ze\($\|\s\+\)" | |
65 syntax match rplStatement "\(^\|\s\+\)over\ze\($\|\s\+\)" | |
66 syntax match rplStatement "\(^\|\s\+\)clear\ze\($\|\s\+\)" | |
67 syntax match rplStatement "\(^\|\s\+\)warranty\ze\($\|\s\+\)" | |
68 syntax match rplStatement "\(^\|\s\+\)copyright\ze\($\|\s\+\)" | |
69 syntax match rplStatement "\(^\|\s\+\)convert\ze\($\|\s\+\)" | |
70 syntax match rplStatement "\(^\|\s\+\)date\ze\($\|\s\+\)" | |
71 syntax match rplStatement "\(^\|\s\+\)time\ze\($\|\s\+\)" | |
72 syntax match rplStatement "\(^\|\s\+\)mem\ze\($\|\s\+\)" | |
73 syntax match rplStatement "\(^\|\s\+\)clmf\ze\($\|\s\+\)" | |
74 syntax match rplStatement "\(^\|\s\+\)->num\ze\($\|\s\+\)" | |
75 syntax match rplStatement "\(^\|\s\+\)help\ze\($\|\s\+\)" | |
76 | |
77 syntax match rplStorage "\(^\|\s\+\)get\(i\|r\|c\|\)\ze\($\|\s\+\)" | |
78 syntax match rplStorage "\(^\|\s\+\)put\(i\|r\|c\|\)\ze\($\|\s\+\)" | |
79 syntax match rplStorage "\(^\|\s\+\)rcl\ze\($\|\s\+\)" | |
80 syntax match rplStorage "\(^\|\s\+\)purge\ze\($\|\s\+\)" | |
81 syntax match rplStorage "\(^\|\s\+\)sinv\ze\($\|\s\+\)" | |
82 syntax match rplStorage "\(^\|\s\+\)sneg\ze\($\|\s\+\)" | |
83 syntax match rplStorage "\(^\|\s\+\)sconj\ze\($\|\s\+\)" | |
84 syntax match rplStorage "\(^\|\s\+\)steq\ze\($\|\s\+\)" | |
85 syntax match rplStorage "\(^\|\s\+\)rceq\ze\($\|\s\+\)" | |
86 syntax match rplStorage "\(^\|\s\+\)vars\ze\($\|\s\+\)" | |
87 syntax match rplStorage "\(^\|\s\+\)clusr\ze\($\|\s\+\)" | |
88 syntax match rplStorage "\(^\|\s\+\)sto\([+-/\*]\|\)\ze\($\|\s\+\)" | |
89 | |
90 syntax match rplAlgConditional "\(^\|\s\+\)ift\(e\|\)\ze\($\|\s\+\)" | |
91 | |
92 syntax match rplOperator "\(^\|\s\+\)and\ze\($\|\s\+\)" | |
93 syntax match rplOperator "\(^\|\s\+\)\(x\|\)or\ze\($\|\s\+\)" | |
94 syntax match rplOperator "\(^\|\s\+\)not\ze\($\|\s\+\)" | |
95 syntax match rplOperator "\(^\|\s\+\)same\ze\($\|\s\+\)" | |
96 syntax match rplOperator "\(^\|\s\+\)==\ze\($\|\s\+\)" | |
97 syntax match rplOperator "\(^\|\s\+\)<=\ze\($\|\s\+\)" | |
98 syntax match rplOperator "\(^\|\s\+\)=<\ze\($\|\s\+\)" | |
99 syntax match rplOperator "\(^\|\s\+\)=>\ze\($\|\s\+\)" | |
100 syntax match rplOperator "\(^\|\s\+\)>=\ze\($\|\s\+\)" | |
101 syntax match rplOperator "\(^\|\s\+\)<>\ze\($\|\s\+\)" | |
102 syntax match rplOperator "\(^\|\s\+\)>\ze\($\|\s\+\)" | |
103 syntax match rplOperator "\(^\|\s\+\)<\ze\($\|\s\+\)" | |
104 syntax match rplOperator "\(^\|\s\+\)[+-]\ze\($\|\s\+\)" | |
105 syntax match rplOperator "\(^\|\s\+\)[/\*]\ze\($\|\s\+\)" | |
106 syntax match rplOperator "\(^\|\s\+\)\^\ze\($\|\s\+\)" | |
107 syntax match rplOperator "\(^\|\s\+\)\*\*\ze\($\|\s\+\)" | |
108 | |
109 syntax match rplBoolean "\(^\|\s\+\)true\ze\($\|\s\+\)" | |
110 syntax match rplBoolean "\(^\|\s\+\)false\ze\($\|\s\+\)" | |
111 | |
112 syntax match rplReadWrite "\(^\|\s\+\)store\ze\($\|\s\+\)" | |
113 syntax match rplReadWrite "\(^\|\s\+\)recall\ze\($\|\s\+\)" | |
114 syntax match rplReadWrite "\(^\|\s\+\)\(\|wf\|un\)lock\ze\($\|\s\+\)" | |
115 syntax match rplReadWrite "\(^\|\s\+\)open\ze\($\|\s\+\)" | |
116 syntax match rplReadWrite "\(^\|\s\+\)close\ze\($\|\s\+\)" | |
117 syntax match rplReadWrite "\(^\|\s\+\)delete\ze\($\|\s\+\)" | |
118 syntax match rplReadWrite "\(^\|\s\+\)create\ze\($\|\s\+\)" | |
119 syntax match rplReadWrite "\(^\|\s\+\)format\ze\($\|\s\+\)" | |
120 syntax match rplReadWrite "\(^\|\s\+\)rewind\ze\($\|\s\+\)" | |
121 syntax match rplReadWrite "\(^\|\s\+\)backspace\ze\($\|\s\+\)" | |
122 syntax match rplReadWrite "\(^\|\s\+\)\(\|re\)write\ze\($\|\s\+\)" | |
123 syntax match rplReadWrite "\(^\|\s\+\)read\ze\($\|\s\+\)" | |
124 syntax match rplReadWrite "\(^\|\s\+\)inquire\ze\($\|\s\+\)" | |
125 syntax match rplReadWrite "\(^\|\s\+\)sync\ze\($\|\s\+\)" | |
126 syntax match rplReadWrite "\(^\|\s\+\)append\ze\($\|\s\+\)" | |
127 syntax match rplReadWrite "\(^\|\s\+\)suppress\ze\($\|\s\+\)" | |
128 syntax match rplReadWrite "\(^\|\s\+\)seek\ze\($\|\s\+\)" | |
129 syntax match rplReadWrite "\(^\|\s\+\)pr\(1\|int\|st\|stc\|lcd\|var\|usr\|md\)\ze\($\|\s\+\)" | |
130 syntax match rplReadWrite "\(^\|\s\+\)paper\ze\($\|\s\+\)" | |
131 syntax match rplReadWrite "\(^\|\s\+\)cr\($\|\s\+\)" | |
132 syntax match rplReadWrite "\(^\|\s\+\)erase\ze\($\|\s\+\)" | |
133 syntax match rplReadWrite "\(^\|\s\+\)disp\ze\($\|\s\+\)" | |
134 syntax match rplReadWrite "\(^\|\s\+\)input\ze\($\|\s\+\)" | |
135 syntax match rplReadWrite "\(^\|\s\+\)prompt\ze\($\|\s\+\)" | |
136 syntax match rplReadWrite "\(^\|\s\+\)key\ze\($\|\s\+\)" | |
137 syntax match rplReadWrite "\(^\|\s\+\)cllcd\ze\($\|\s\+\)" | |
138 syntax match rplReadWrite "\(^\|\s\+\)\(\|re\)draw\ze\($\|\s\+\)" | |
139 syntax match rplReadWrite "\(^\|\s\+\)drax\ze\($\|\s\+\)" | |
140 syntax match rplReadWrite "\(^\|\s\+\)indep\ze\($\|\s\+\)" | |
141 syntax match rplReadWrite "\(^\|\s\+\)depnd\ze\($\|\s\+\)" | |
142 syntax match rplReadWrite "\(^\|\s\+\)res\ze\($\|\s\+\)" | |
143 syntax match rplReadWrite "\(^\|\s\+\)axes\ze\($\|\s\+\)" | |
144 syntax match rplReadWrite "\(^\|\s\+\)label\ze\($\|\s\+\)" | |
145 syntax match rplReadWrite "\(^\|\s\+\)pmin\ze\($\|\s\+\)" | |
146 syntax match rplReadWrite "\(^\|\s\+\)pmax\ze\($\|\s\+\)" | |
147 syntax match rplReadWrite "\(^\|\s\+\)centr\ze\($\|\s\+\)" | |
148 syntax match rplReadWrite "\(^\|\s\+\)persist\ze\($\|\s\+\)" | |
149 syntax match rplReadWrite "\(^\|\s\+\)title\ze\($\|\s\+\)" | |
150 syntax match rplReadWrite "\(^\|\s\+\)\(slice\|auto\|log\|\)scale\ze\($\|\s\+\)" | |
151 syntax match rplReadWrite "\(^\|\s\+\)eyept\ze\($\|\s\+\)" | |
152 syntax match rplReadWrite "\(^\|\s\+\)\(p\|s\)par\ze\($\|\s\+\)" | |
153 syntax match rplReadWrite "\(^\|\s\+\)function\ze\($\|\s\+\)" | |
154 syntax match rplReadWrite "\(^\|\s\+\)polar\ze\($\|\s\+\)" | |
155 syntax match rplReadWrite "\(^\|\s\+\)scatter\ze\($\|\s\+\)" | |
156 syntax match rplReadWrite "\(^\|\s\+\)plotter\ze\($\|\s\+\)" | |
157 syntax match rplReadWrite "\(^\|\s\+\)wireframe\ze\($\|\s\+\)" | |
158 syntax match rplReadWrite "\(^\|\s\+\)parametric\ze\($\|\s\+\)" | |
159 syntax match rplReadWrite "\(^\|\s\+\)slice\ze\($\|\s\+\)" | |
160 syntax match rplReadWrite "\(^\|\s\+\)\*w\ze\($\|\s\+\)" | |
161 syntax match rplReadWrite "\(^\|\s\+\)\*h\ze\($\|\s\+\)" | |
162 syntax match rplReadWrite "\(^\|\s\+\)\*d\ze\($\|\s\+\)" | |
163 syntax match rplReadWrite "\(^\|\s\+\)\*s\ze\($\|\s\+\)" | |
164 syntax match rplReadWrite "\(^\|\s\+\)->lcd\ze\($\|\s\+\)" | |
165 syntax match rplReadWrite "\(^\|\s\+\)lcd->\ze\($\|\s\+\)" | |
166 syntax match rplReadWrite "\(^\|\s\+\)edit\ze\($\|\s\+\)" | |
167 syntax match rplReadWrite "\(^\|\s\+\)visit\ze\($\|\s\+\)" | |
168 | |
169 syntax match rplIntrinsic "\(^\|\s\+\)abs\ze\($\|\s\+\)" | |
170 syntax match rplIntrinsic "\(^\|\s\+\)arg\ze\($\|\s\+\)" | |
171 syntax match rplIntrinsic "\(^\|\s\+\)conj\ze\($\|\s\+\)" | |
172 syntax match rplIntrinsic "\(^\|\s\+\)re\ze\($\|\s\+\)" | |
173 syntax match rplIntrinsic "\(^\|\s\+\)im\ze\($\|\s\+\)" | |
174 syntax match rplIntrinsic "\(^\|\s\+\)mant\ze\($\|\s\+\)" | |
175 syntax match rplIntrinsic "\(^\|\s\+\)xpon\ze\($\|\s\+\)" | |
176 syntax match rplIntrinsic "\(^\|\s\+\)ceil\ze\($\|\s\+\)" | |
177 syntax match rplIntrinsic "\(^\|\s\+\)fact\ze\($\|\s\+\)" | |
178 syntax match rplIntrinsic "\(^\|\s\+\)fp\ze\($\|\s\+\)" | |
179 syntax match rplIntrinsic "\(^\|\s\+\)floor\ze\($\|\s\+\)" | |
180 syntax match rplIntrinsic "\(^\|\s\+\)inv\ze\($\|\s\+\)" | |
181 syntax match rplIntrinsic "\(^\|\s\+\)ip\ze\($\|\s\+\)" | |
182 syntax match rplIntrinsic "\(^\|\s\+\)max\ze\($\|\s\+\)" | |
183 syntax match rplIntrinsic "\(^\|\s\+\)min\ze\($\|\s\+\)" | |
184 syntax match rplIntrinsic "\(^\|\s\+\)mod\ze\($\|\s\+\)" | |
185 syntax match rplIntrinsic "\(^\|\s\+\)neg\ze\($\|\s\+\)" | |
186 syntax match rplIntrinsic "\(^\|\s\+\)relax\ze\($\|\s\+\)" | |
187 syntax match rplIntrinsic "\(^\|\s\+\)sign\ze\($\|\s\+\)" | |
188 syntax match rplIntrinsic "\(^\|\s\+\)sq\(\|rt\)\ze\($\|\s\+\)" | |
189 syntax match rplIntrinsic "\(^\|\s\+\)xroot\ze\($\|\s\+\)" | |
190 syntax match rplIntrinsic "\(^\|\s\+\)cos\ze\($\|\s\+\)" | |
191 syntax match rplIntrinsic "\(^\|\s\+\)sin\ze\($\|\s\+\)" | |
192 syntax match rplIntrinsic "\(^\|\s\+\)tan\ze\($\|\s\+\)" | |
193 syntax match rplIntrinsic "\(^\|\s\+\)tg\ze\($\|\s\+\)" | |
194 syntax match rplIntrinsic "\(^\|\s\+\)a\(\|rc\)cos\ze\($\|\s\+\)" | |
195 syntax match rplIntrinsic "\(^\|\s\+\)a\(\|rc\)sin\ze\($\|\s\+\)" | |
196 syntax match rplIntrinsic "\(^\|\s\+\)atan\ze\($\|\s\+\)" | |
197 syntax match rplIntrinsic "\(^\|\s\+\)arctg\ze\($\|\s\+\)" | |
198 syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)cosh\ze\($\|\s\+\)" | |
199 syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)sinh\ze\($\|\s\+\)" | |
200 syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)tanh\ze\($\|\s\+\)" | |
201 syntax match rplIntrinsic "\(^\|\s\+\)\(\|arg\)th\ze\($\|\s\+\)" | |
202 syntax match rplIntrinsic "\(^\|\s\+\)arg[cst]h\ze\($\|\s\+\)" | |
203 syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)log\ze\($\|\s\+\)" | |
204 syntax match rplIntrinsic "\(^\|\s\+\)ln\(\|1\)\ze\($\|\s\+\)" | |
205 syntax match rplIntrinsic "\(^\|\s\+\)exp\(\|m\)\ze\($\|\s\+\)" | |
206 syntax match rplIntrinsic "\(^\|\s\+\)trn\ze\($\|\s\+\)" | |
207 syntax match rplIntrinsic "\(^\|\s\+\)con\ze\($\|\s\+\)" | |
208 syntax match rplIntrinsic "\(^\|\s\+\)idn\ze\($\|\s\+\)" | |
209 syntax match rplIntrinsic "\(^\|\s\+\)rdm\ze\($\|\s\+\)" | |
210 syntax match rplIntrinsic "\(^\|\s\+\)rsd\ze\($\|\s\+\)" | |
211 syntax match rplIntrinsic "\(^\|\s\+\)cnrm\ze\($\|\s\+\)" | |
212 syntax match rplIntrinsic "\(^\|\s\+\)cross\ze\($\|\s\+\)" | |
213 syntax match rplIntrinsic "\(^\|\s\+\)d[eo]t\ze\($\|\s\+\)" | |
214 syntax match rplIntrinsic "\(^\|\s\+\)[cr]swp\ze\($\|\s\+\)" | |
215 syntax match rplIntrinsic "\(^\|\s\+\)rci\(j\|\)\ze\($\|\s\+\)" | |
216 syntax match rplIntrinsic "\(^\|\s\+\)\(in\|de\)cr\ze\($\|\s\+\)" | |
217 syntax match rplIntrinsic "\(^\|\s\+\)bessel\ze\($\|\s\+\)" | |
218 | |
219 syntax match rplIntrinsic "\(^\|\s\+\)\(\|g\)egvl\ze\($\|\s\+\)" | |
220 syntax match rplIntrinsic "\(^\|\s\+\)\(\|g\)\(\|l\|r\)egv\ze\($\|\s\+\)" | |
221 syntax match rplIntrinsic "\(^\|\s\+\)rnrm\ze\($\|\s\+\)" | |
222 syntax match rplIntrinsic "\(^\|\s\+\)\(std\|fix\|sci\|eng\)\ze\($\|\s\+\)" | |
223 syntax match rplIntrinsic "\(^\|\s\+\)\(rad\|deg\)\ze\($\|\s\+\)" | |
224 syntax match rplIntrinsic "\(^\|\s\+\)\(\|n\)rand\ze\($\|\s\+\)" | |
225 syntax match rplIntrinsic "\(^\|\s\+\)rdz\ze\($\|\s\+\)" | |
226 syntax match rplIntrinsic "\(^\|\s\+\)\(\|i\)fft\ze\($\|\s\+\)" | |
227 syntax match rplIntrinsic "\(^\|\s\+\)\(dec\|bin\|oct\|hex\)\ze\($\|\s\+\)" | |
228 syntax match rplIntrinsic "\(^\|\s\+\)rclf\ze\($\|\s\+\)" | |
229 syntax match rplIntrinsic "\(^\|\s\+\)stof\ze\($\|\s\+\)" | |
230 syntax match rplIntrinsic "\(^\|\s\+\)[cs]f\ze\($\|\s\+\)" | |
231 syntax match rplIntrinsic "\(^\|\s\+\)chr\ze\($\|\s\+\)" | |
232 syntax match rplIntrinsic "\(^\|\s\+\)num\ze\($\|\s\+\)" | |
233 syntax match rplIntrinsic "\(^\|\s\+\)pos\ze\($\|\s\+\)" | |
234 syntax match rplIntrinsic "\(^\|\s\+\)sub\ze\($\|\s\+\)" | |
235 syntax match rplIntrinsic "\(^\|\s\+\)size\ze\($\|\s\+\)" | |
236 syntax match rplIntrinsic "\(^\|\s\+\)\(st\|rc\)ws\ze\($\|\s\+\)" | |
237 syntax match rplIntrinsic "\(^\|\s\+\)\(r\|s\)\(r\|l\)\(\|b\)\ze\($\|\s\+\)" | |
238 syntax match rplIntrinsic "\(^\|\s\+\)as\(r\|l\)\ze\($\|\s\+\)" | |
239 syntax match rplIntrinsic "\(^\|\s\+\)\(int\|der\)\ze\($\|\s\+\)" | |
240 syntax match rplIntrinsic "\(^\|\s\+\)stos\ze\($\|\s\+\)" | |
241 syntax match rplIntrinsic "\(^\|\s\+\)\(\|r\)cls\ze\($\|\s\+\)" | |
242 syntax match rplIntrinsic "\(^\|\s\+\)drws\ze\($\|\s\+\)" | |
243 syntax match rplIntrinsic "\(^\|\s\+\)scls\ze\($\|\s\+\)" | |
244 syntax match rplIntrinsic "\(^\|\s\+\)ns\ze\($\|\s\+\)" | |
245 syntax match rplIntrinsic "\(^\|\s\+\)tot\ze\($\|\s\+\)" | |
246 syntax match rplIntrinsic "\(^\|\s\+\)mean\ze\($\|\s\+\)" | |
247 syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)sdev\ze\($\|\s\+\)" | |
248 syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)var\ze\($\|\s\+\)" | |
249 syntax match rplIntrinsic "\(^\|\s\+\)maxs\ze\($\|\s\+\)" | |
250 syntax match rplIntrinsic "\(^\|\s\+\)mins\ze\($\|\s\+\)" | |
251 syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)cov\ze\($\|\s\+\)" | |
252 syntax match rplIntrinsic "\(^\|\s\+\)cols\ze\($\|\s\+\)" | |
253 syntax match rplIntrinsic "\(^\|\s\+\)s\(x\(\|y\|2\)\|y\(\|2\)\)\ze\($\|\s\+\)" | |
254 syntax match rplIntrinsic "\(^\|\s\+\)\(x\|y\)col\ze\($\|\s\+\)" | |
255 syntax match rplIntrinsic "\(^\|\s\+\)corr\ze\($\|\s\+\)" | |
256 syntax match rplIntrinsic "\(^\|\s\+\)utp[cfnt]\ze\($\|\s\+\)" | |
257 syntax match rplIntrinsic "\(^\|\s\+\)comb\ze\($\|\s\+\)" | |
258 syntax match rplIntrinsic "\(^\|\s\+\)perm\ze\($\|\s\+\)" | |
259 syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)lu\ze\($\|\s\+\)" | |
260 syntax match rplIntrinsic "\(^\|\s\+\)[lu]chol\ze\($\|\s\+\)" | |
261 syntax match rplIntrinsic "\(^\|\s\+\)schur\ze\($\|\s\+\)" | |
262 syntax match rplIntrinsic "\(^\|\s\+\)%\ze\($\|\s\+\)" | |
263 syntax match rplIntrinsic "\(^\|\s\+\)%ch\ze\($\|\s\+\)" | |
264 syntax match rplIntrinsic "\(^\|\s\+\)%t\ze\($\|\s\+\)" | |
265 syntax match rplIntrinsic "\(^\|\s\+\)hms->\ze\($\|\s\+\)" | |
266 syntax match rplIntrinsic "\(^\|\s\+\)->hms\ze\($\|\s\+\)" | |
267 syntax match rplIntrinsic "\(^\|\s\+\)hms+\ze\($\|\s\+\)" | |
268 syntax match rplIntrinsic "\(^\|\s\+\)hms-\ze\($\|\s\+\)" | |
269 syntax match rplIntrinsic "\(^\|\s\+\)d->r\ze\($\|\s\+\)" | |
270 syntax match rplIntrinsic "\(^\|\s\+\)r->d\ze\($\|\s\+\)" | |
271 syntax match rplIntrinsic "\(^\|\s\+\)b->r\ze\($\|\s\+\)" | |
272 syntax match rplIntrinsic "\(^\|\s\+\)r->b\ze\($\|\s\+\)" | |
273 syntax match rplIntrinsic "\(^\|\s\+\)c->r\ze\($\|\s\+\)" | |
274 syntax match rplIntrinsic "\(^\|\s\+\)r->c\ze\($\|\s\+\)" | |
275 syntax match rplIntrinsic "\(^\|\s\+\)r->p\ze\($\|\s\+\)" | |
276 syntax match rplIntrinsic "\(^\|\s\+\)p->r\ze\($\|\s\+\)" | |
277 syntax match rplIntrinsic "\(^\|\s\+\)str->\ze\($\|\s\+\)" | |
278 syntax match rplIntrinsic "\(^\|\s\+\)->str\ze\($\|\s\+\)" | |
279 syntax match rplIntrinsic "\(^\|\s\+\)array->\ze\($\|\s\+\)" | |
280 syntax match rplIntrinsic "\(^\|\s\+\)->array\ze\($\|\s\+\)" | |
281 syntax match rplIntrinsic "\(^\|\s\+\)list->\ze\($\|\s\+\)" | |
282 syntax match rplIntrinsic "\(^\|\s\+\)->list\ze\($\|\s\+\)" | |
283 syntax match rplIntrinsic "\(^\|\s\+\)s+\ze\($\|\s\+\)" | |
284 syntax match rplIntrinsic "\(^\|\s\+\)s-\ze\($\|\s\+\)" | |
285 syntax match rplIntrinsic "\(^\|\s\+\)col-\ze\($\|\s\+\)" | |
286 syntax match rplIntrinsic "\(^\|\s\+\)col+\ze\($\|\s\+\)" | |
287 syntax match rplIntrinsic "\(^\|\s\+\)row-\ze\($\|\s\+\)" | |
288 syntax match rplIntrinsic "\(^\|\s\+\)row+\ze\($\|\s\+\)" | |
289 syntax match rplIntrinsic "\(^\|\s\+\)->q\ze\($\|\s\+\)" | |
290 | |
291 syntax match rplObsolete "\(^\|\s\+\)arry->\ze\($\|\s\+\)"hs=e-5 | |
292 syntax match rplObsolete "\(^\|\s\+\)->arry\ze\($\|\s\+\)"hs=e-5 | |
293 | |
294 " Conditional structures | |
295 syntax match rplConditionalError "\(^\|\s\+\)case\ze\($\|\s\+\)"hs=e-3 | |
296 syntax match rplConditionalError "\(^\|\s\+\)then\ze\($\|\s\+\)"hs=e-3 | |
297 syntax match rplConditionalError "\(^\|\s\+\)else\ze\($\|\s\+\)"hs=e-3 | |
298 syntax match rplConditionalError "\(^\|\s\+\)elseif\ze\($\|\s\+\)"hs=e-5 | |
299 syntax match rplConditionalError "\(^\|\s\+\)end\ze\($\|\s\+\)"hs=e-2 | |
300 syntax match rplConditionalError "\(^\|\s\+\)\(step\|next\)\ze\($\|\s\+\)"hs=e-3 | |
301 syntax match rplConditionalError "\(^\|\s\+\)until\ze\($\|\s\+\)"hs=e-4 | |
302 syntax match rplConditionalError "\(^\|\s\+\)repeat\ze\($\|\s\+\)"hs=e-5 | |
303 syntax match rplConditionalError "\(^\|\s\+\)default\ze\($\|\s\+\)"hs=e-6 | |
304 | |
305 " FOR/(CYCLE)/(EXIT)/NEXT | |
306 " FOR/(CYCLE)/(EXIT)/STEP | |
307 " START/(CYCLE)/(EXIT)/NEXT | |
308 " START/(CYCLE)/(EXIT)/STEP | |
309 syntax match rplCycle "\(^\|\s\+\)\(cycle\|exit\)\ze\($\|\s\+\)" | |
310 syntax region rplForNext matchgroup=rplRepeat start="\(^\|\s\+\)\(for\|start\)\ze\($\|\s\+\)" end="\(^\|\s\+\)\(next\|step\)\ze\($\|\s\+\)" contains=ALL keepend extend | |
311 | |
312 " ELSEIF/END | |
313 syntax region rplElseifEnd matchgroup=rplConditional start="\(^\|\s\+\)elseif\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd keepend | |
314 | |
315 " ELSE/END | |
316 syntax region rplElseEnd matchgroup=rplConditional start="\(^\|\s\+\)else\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd,rplThenEnd,rplElseifEnd keepend | |
317 | |
318 " THEN/END | |
319 syntax region rplThenEnd matchgroup=rplConditional start="\(^\|\s\+\)then\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained containedin=rplIfEnd contains=ALLBUT,rplThenEnd keepend | |
320 | |
321 " IF/END | |
322 syntax region rplIfEnd matchgroup=rplConditional start="\(^\|\s\+\)if\(err\|\)\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplElseEnd,rplElseifEnd keepend extend | |
323 " if end is accepted ! | |
324 " select end too ! | |
325 | |
326 " CASE/THEN | |
327 syntax region rplCaseThen matchgroup=rplConditional start="\(^\|\s\+\)case\ze\($\|\s\+\)" end="\(^\|\s\+\)then\ze\($\|\s\+\)" contains=ALLBUT,rplCaseThen,rplCaseEnd,rplThenEnd keepend extend contained containedin=rplCaseEnd | |
328 | |
329 " CASE/END | |
330 syntax region rplCaseEnd matchgroup=rplConditional start="\(^\|\s\+\)case\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplCaseEnd,rplThenEnd,rplElseEnd keepend extend contained containedin=rplSelectEnd | |
331 | |
332 " DEFAULT/END | |
333 syntax region rplDefaultEnd matchgroup=rplConditional start="\(^\|\s\+\)default\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplDefaultEnd keepend contained containedin=rplSelectEnd | |
334 | |
335 " SELECT/END | |
336 syntax region rplSelectEnd matchgroup=rplConditional start="\(^\|\s\+\)select\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplThenEnd keepend extend | |
337 " select end is accepted ! | |
338 | |
339 " DO/UNTIL/END | |
340 syntax region rplUntilEnd matchgroup=rplConditional start="\(^\|\s\+\)until\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplUntilEnd contained containedin=rplDoUntil extend keepend | |
341 syntax region rplDoUntil matchgroup=rplConditional start="\(^\|\s\+\)do\ze\($\|\s\+\)" end="\(^\|\s\+\)until\ze\($\|\s\+\)" contains=ALL keepend extend | |
342 | |
343 " WHILE/REPEAT/END | |
344 syntax region rplRepeatEnd matchgroup=rplConditional start="\(^\|\s\+\)repeat\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplRepeatEnd contained containedin=rplWhileRepeat extend keepend | |
345 syntax region rplWhileRepeat matchgroup=rplConditional start="\(^\|\s\+\)while\ze\($\|\s\+\)" end="\(^\|\s\+\)repeat\ze\($\|\s\+\)" contains=ALL keepend extend | |
346 | |
347 " Comments | |
348 syntax match rplCommentError "\*/" | |
349 syntax region rplCommentString contained start=+"+ end=+"+ end=+\*/+me=s-1 | |
350 syntax region rplCommentLine start="\(^\|\s\+\)//\ze" skip="\\$" end="$" contains=NONE keepend extend | |
351 syntax region rplComment start="\(^\|\s\+\)/\*\ze" end="\*/" contains=rplCommentString keepend extend | |
352 | |
353 " Catch errors caused by too many right parentheses | |
354 syntax region rplParen transparent start="(" end=")" contains=ALLBUT,rplParenError,rplComplex,rplIncluded keepend extend | |
355 syntax match rplParenError ")" | |
356 | |
357 " Subroutines | |
358 " Catch errors caused by too many right '>>' | |
359 syntax match rplSubError "\(^\|\s\+\)>>\ze\($\|\s\+\)"hs=e-1 | |
360 syntax region rplSub matchgroup=rplSubDelimitor start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageSub keepend extend | |
361 | |
362 " Expressions | |
363 syntax region rplExpr start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError | |
364 | |
365 " Local variables | |
366 syntax match rplStorageError "\(^\|\s\+\)->\ze\($\|\s\+\)"hs=e-1 | |
367 syntax region rplStorageSub matchgroup=rplStorage start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageExpr contained containedin=rplLocalStorage keepend extend | |
368 syntax region rplStorageExpr matchgroup=rplStorage start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError extend contained containedin=rplLocalStorage | |
369 syntax region rplLocalStorage matchgroup=rplStorage start="\(^\|\s\+\)->\ze\($\|\s\+\)" end="\(^\|\s\+\)\(<<\ze\($\|\s\+\)\|'\)" contains=rplStorageSub,rplStorageExpr,rplComment,rplCommentLine keepend extend | |
370 | |
371 " Catch errors caused by too many right brackets | |
372 syntax match rplArrayError "\]" | |
373 syntax match rplArray "\]" contained containedin=rplArray | |
374 syntax region rplArray matchgroup=rplArray start="\[" end="\]" contains=ALLBUT,rplArrayError keepend extend | |
375 | |
376 " Catch errors caused by too many right '}' | |
377 syntax match rplListError "}" | |
378 syntax match rplList "}" contained containedin=rplList | |
379 syntax region rplList matchgroup=rplList start="{" end="}" contains=ALLBUT,rplListError,rplIncluded keepend extend | |
380 | |
381 " cpp is used by RPL/2 | |
382 syntax match rplPreProc "\_^#\s*\(define\|undef\)\>" | |
383 syntax match rplPreProc "\_^#\s*\(warning\|error\)\>" | |
384 syntax match rplPreCondit "\_^#\s*\(if\|ifdef\|ifndef\|elif\|else\|endif\)\>" | |
385 syntax match rplIncluded contained "\<<\s*\S*\s*>\>" | |
386 syntax match rplInclude "\_^#\s*include\>\s*["<]" contains=rplIncluded,rplString | |
387 "syntax match rplExecPath "\%^\_^#!\s*\S*" | |
388 syntax match rplExecPath "\%^\_^#!\p*\_$" | |
389 | |
390 " Any integer | |
391 syntax match rplInteger "\(^\|\s\+\)[-+]\=\d\+\ze\($\|\s\+\)" | |
392 | |
393 " Floating point number | |
394 " [S][ip].[fp] | |
395 syntax match rplFloat "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\(\d*\)\=\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign | |
396 " [S]ip[.fp]E[S]exp | |
397 syntax match rplFloat "\(^\|\s\+\)[-+]\=\d\+\([\.,]\d*\)\=[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign | |
398 " [S].fpE[S]exp | |
399 syntax match rplFloat "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\d\+[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign | |
400 syntax match rplPoint "\<[\.,]\>" | |
401 syntax match rplSign "\<[+-]\>" | |
402 | |
403 " Complex number | |
404 " (x,y) | |
405 syntax match rplComplex "\(^\|\s\+\)([-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=\s*,\s*[-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)" | |
406 " (x.y) | |
407 syntax match rplComplex "\(^\|\s\+\)([-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=\s*\.\s*[-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)" | |
408 | |
409 " Strings | |
410 syntax match rplStringGuilles "\\\"" | |
411 syntax match rplStringAntislash "\\\\" | |
412 syntax region rplString start=+\(^\|\s\+\)"+ end=+"\ze\($\|\s\+\)+ contains=rplStringGuilles,rplStringAntislash | |
413 | |
414 syntax match rplTab "\t" transparent | |
415 | |
416 " Define the default highlighting. | |
417 " For version 5.7 and earlier: only when not done already | |
418 " For version 5.8 and later: only when an item doesn't have highlighting yet | |
419 if version >= 508 || !exists("did_rpl_syntax_inits") | |
420 if version < 508 | |
421 let did_rpl_syntax_inits = 1 | |
422 command -nargs=+ HiLink highlight link <args> | |
423 else | |
424 command -nargs=+ HiLink highlight default link <args> | |
425 endif | |
426 | |
427 " The default highlighting. | |
428 | |
429 HiLink rplControl Statement | |
430 HiLink rplStatement Statement | |
431 HiLink rplAlgConditional Conditional | |
432 HiLink rplConditional Repeat | |
433 HiLink rplConditionalError Error | |
434 HiLink rplRepeat Repeat | |
435 HiLink rplCycle Repeat | |
436 HiLink rplUntil Repeat | |
437 HiLink rplIntrinsic Special | |
438 HiLink rplStorage StorageClass | |
439 HiLink rplStorageExpr StorageClass | |
440 HiLink rplStorageError Error | |
441 HiLink rplReadWrite rplIntrinsic | |
442 | |
443 HiLink rplOperator Operator | |
444 | |
445 HiLink rplList Special | |
446 HiLink rplArray Special | |
447 HiLink rplConstant Identifier | |
448 HiLink rplExpr Type | |
449 | |
450 HiLink rplString String | |
451 HiLink rplStringGuilles String | |
452 HiLink rplStringAntislash String | |
453 | |
454 HiLink rplBinary Boolean | |
455 HiLink rplOctal Boolean | |
456 HiLink rplDecimal Boolean | |
457 HiLink rplHexadecimal Boolean | |
458 HiLink rplInteger Number | |
459 HiLink rplFloat Float | |
460 HiLink rplComplex Float | |
461 HiLink rplBoolean Identifier | |
462 | |
463 HiLink rplObsolete Todo | |
464 | |
465 HiLink rplPreCondit PreCondit | |
466 HiLink rplInclude Include | |
467 HiLink rplIncluded rplString | |
468 HiLink rplInclude Include | |
469 HiLink rplExecPath Include | |
470 HiLink rplPreProc PreProc | |
471 HiLink rplComment Comment | |
472 HiLink rplCommentLine Comment | |
473 HiLink rplCommentString Comment | |
474 HiLink rplSubDelimitor rplStorage | |
475 HiLink rplCommentError Error | |
476 HiLink rplParenError Error | |
477 HiLink rplSubError Error | |
478 HiLink rplArrayError Error | |
479 HiLink rplListError Error | |
480 HiLink rplTab Error | |
481 HiLink rplBinaryError Error | |
482 HiLink rplOctalError Error | |
483 HiLink rplDecimalError Error | |
484 HiLink rplHexadecimalError Error | |
485 | |
486 delcommand HiLink | |
487 endif | |
488 | |
489 let b:current_syntax = "rpl" | |
490 | |
491 " vim: ts=8 tw=132 |