File:
[local] /
rpl /
vim /
syntax /
rpl.vim
Revision
1.3:
download - view:
text,
annotated -
select for diffs -
revision graph
Fri Aug 6 15:33:05 2010 UTC (14 years, 9 months ago) by
bertrand
Branches:
MAIN
CVS tags:
rpl-4_1_9,
rpl-4_1_8,
rpl-4_1_7,
rpl-4_1_6,
rpl-4_1_5,
rpl-4_1_4,
rpl-4_1_35,
rpl-4_1_34,
rpl-4_1_33,
rpl-4_1_32,
rpl-4_1_31,
rpl-4_1_30,
rpl-4_1_3,
rpl-4_1_29,
rpl-4_1_28,
rpl-4_1_27,
rpl-4_1_26,
rpl-4_1_25,
rpl-4_1_24,
rpl-4_1_23,
rpl-4_1_22,
rpl-4_1_21,
rpl-4_1_20,
rpl-4_1_2,
rpl-4_1_19,
rpl-4_1_18,
rpl-4_1_17,
rpl-4_1_16,
rpl-4_1_15,
rpl-4_1_14,
rpl-4_1_13,
rpl-4_1_12,
rpl-4_1_11,
rpl-4_1_10,
rpl-4_1_1,
rpl-4_1_0,
rpl-4_0_24,
rpl-4_0_22,
rpl-4_0_21,
rpl-4_0_20,
rpl-4_0_19,
rpl-4_0_18,
rpl-4_0,
HEAD
Cohérence
1: " Vim syntax file
2: " Language: RPL/2
3: " Version: 0.15.26 against RPL/2 version 4.00pre8x
4: " Last Change: 2007 july 17
5: " Maintainer: Joël BERTRAND <jkb@systella.fr>
6: " URL: http://www.systella.fr/~bertrand/rpl2/download/rpl.tar.gz
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: syntax match rplControl "\(^\|\s\+\)detach\ze\($\|\s\+\)"
46: syntax match rplControl "\(^\|\s\+\)send\ze\($\|\s\+\)"
47: syntax match rplControl "\(^\|\s\+\)recv\ze\($\|\s\+\)"
48: syntax match rplControl "\(^\|\s\+\)wfproc\ze\($\|\s\+\)"
49: syntax match rplControl "\(^\|\s\+\)wfdata\ze\($\|\s\+\)"
50: syntax match rplControl "\(^\|\s\+\)suspend\ze\($\|\s\+\)"
51: syntax match rplControl "\(^\|\s\+\)swi\ze\($\|\s\+\)"
52: syntax match rplControl "\(^\|\s\+\)wfswi\ze\($\|\s\+\)"
53: syntax match rplControl "\(^\|\s\+\)swilock\ze\($\|\s\+\)"
54: syntax match rplControl "\(^\|\s\+\)swiunlock\ze\($\|\s\+\)"
55: syntax match rplControl "\(^\|\s\+\)swiqueue\ze\($\|\s\+\)"
56: syntax match rplControl "\(^\|\s\+\)stoswi\ze\($\|\s\+\)"
57: syntax match rplControl "\(^\|\s\+\)rclswi\ze\($\|\s\+\)"
58: syntax match rplControl "\(^\|\s\+\)clrswi\ze\($\|\s\+\)"
59:
60: syntax match rplConstant "\(^\|\s\+\)pi\ze\($\|\s\+\)"
61:
62: syntax match rplStatement "\(^\|\s\+\)return\ze\($\|\s\+\)"
63: syntax match rplStatement "\(^\|\s\+\)last\ze\($\|\s\+\)"
64: syntax match rplStatement "\(^\|\s\+\)syseval\ze\($\|\s\+\)"
65: syntax match rplStatement "\(^\|\s\+\)wait\ze\($\|\s\+\)"
66: syntax match rplStatement "\(^\|\s\+\)alarm\ze\($\|\s\+\)"
67: syntax match rplStatement "\(^\|\s\+\)type\ze\($\|\s\+\)"
68: syntax match rplStatement "\(^\|\s\+\)kind\ze\($\|\s\+\)"
69: syntax match rplStatement "\(^\|\s\+\)eval\ze\($\|\s\+\)"
70: syntax match rplStatement "\(^\|\s\+\)use\ze\($\|\s\+\)"
71: syntax match rplStatement "\(^\|\s\+\)remove\ze\($\|\s\+\)"
72: syntax match rplStatement "\(^\|\s\+\)externals\ze\($\|\s\+\)"
73: syntax match rplStatement "\(^\|\s\+\)dup\([2n]\|\)\ze\($\|\s\+\)"
74: syntax match rplStatement "\(^\|\s\+\)drop\([2n]\|\)\ze\($\|\s\+\)"
75: syntax match rplStatement "\(^\|\s\+\)depth\ze\($\|\s\+\)"
76: syntax match rplStatement "\(^\|\s\+\)roll\(d\|\)\ze\($\|\s\+\)"
77: syntax match rplStatement "\(^\|\s\+\)pick\ze\($\|\s\+\)"
78: syntax match rplStatement "\(^\|\s\+\)rot\ze\($\|\s\+\)"
79: syntax match rplStatement "\(^\|\s\+\)swap\ze\($\|\s\+\)"
80: syntax match rplStatement "\(^\|\s\+\)over\ze\($\|\s\+\)"
81: syntax match rplStatement "\(^\|\s\+\)clear\ze\($\|\s\+\)"
82: syntax match rplStatement "\(^\|\s\+\)warranty\ze\($\|\s\+\)"
83: syntax match rplStatement "\(^\|\s\+\)splash\ze\($\|\s\+\)"
84: syntax match rplStatement "\(^\|\s\+\)copyright\ze\($\|\s\+\)"
85: syntax match rplStatement "\(^\|\s\+\)convert\ze\($\|\s\+\)"
86: syntax match rplStatement "\(^\|\s\+\)date\ze\($\|\s\+\)"
87: syntax match rplStatement "\(^\|\s\+\)jdate\ze\($\|\s\+\)"
88: syntax match rplStatement "\(^\|\s\+\)rdate\ze\($\|\s\+\)"
89: syntax match rplStatement "\(^\|\s\+\)time\ze\($\|\s\+\)"
90: syntax match rplStatement "\(^\|\s\+\)mem\ze\($\|\s\+\)"
91: syntax match rplStatement "\(^\|\s\+\)clmf\ze\($\|\s\+\)"
92: syntax match rplStatement "\(^\|\s\+\)->num\ze\($\|\s\+\)"
93: syntax match rplStatement "\(^\|\s\+\)help\ze\($\|\s\+\)"
94:
95: syntax match rplStorage "\(^\|\s\+\)get\(i\|r\|c\|\)\ze\($\|\s\+\)"
96: syntax match rplStorage "\(^\|\s\+\)put\(i\|r\|c\|\)\ze\($\|\s\+\)"
97: syntax match rplStorage "\(^\|\s\+\)rcl\ze\($\|\s\+\)"
98: syntax match rplStorage "\(^\|\s\+\)purge\ze\($\|\s\+\)"
99: syntax match rplStorage "\(^\|\s\+\)sinv\ze\($\|\s\+\)"
100: syntax match rplStorage "\(^\|\s\+\)sneg\ze\($\|\s\+\)"
101: syntax match rplStorage "\(^\|\s\+\)sconj\ze\($\|\s\+\)"
102: syntax match rplStorage "\(^\|\s\+\)steq\ze\($\|\s\+\)"
103: syntax match rplStorage "\(^\|\s\+\)rceq\ze\($\|\s\+\)"
104: syntax match rplStorage "\(^\|\s\+\)vars\ze\($\|\s\+\)"
105: syntax match rplStorage "\(^\|\s\+\)clusr\ze\($\|\s\+\)"
106: syntax match rplStorage "\(^\|\s\+\)sto\([+-/\*]\|\)\ze\($\|\s\+\)"
107: syntax match rplStorage "\(^\|\s\+\)save\ze\($\|\s\+\)"
108: syntax match rplStorage "\(^\|\s\+\)\(\|wf\)protect\ze\($\|\s\+\)"
109: syntax match rplStorage "\(^\|\s\+\)variable\ze\($\|\s\+\)"
110: syntax match rplStorage "\(^\|\s\+\)parameter\ze\($\|\s\+\)"
111: syntax match rplStorage "\(^\|\s\+\)volatile\ze\($\|\s\+\)"
112: syntax match rplStorage "\(^\|\s\+\)static\ze\($\|\s\+\)"
113:
114: syntax match rplAlgConditional "\(^\|\s\+\)ift\(e\|\)\ze\($\|\s\+\)"
115:
116: syntax match rplOperator "\(^\|\s\+\)and\ze\($\|\s\+\)"
117: syntax match rplOperator "\(^\|\s\+\)\(x\|\)or\ze\($\|\s\+\)"
118: syntax match rplOperator "\(^\|\s\+\)not\ze\($\|\s\+\)"
119: syntax match rplOperator "\(^\|\s\+\)same\ze\($\|\s\+\)"
120: syntax match rplOperator "\(^\|\s\+\)==\ze\($\|\s\+\)"
121: syntax match rplOperator "\(^\|\s\+\)<=\ze\($\|\s\+\)"
122: syntax match rplOperator "\(^\|\s\+\)=<\ze\($\|\s\+\)"
123: syntax match rplOperator "\(^\|\s\+\)=>\ze\($\|\s\+\)"
124: syntax match rplOperator "\(^\|\s\+\)>=\ze\($\|\s\+\)"
125: syntax match rplOperator "\(^\|\s\+\)<>\ze\($\|\s\+\)"
126: syntax match rplOperator "\(^\|\s\+\)>\ze\($\|\s\+\)"
127: syntax match rplOperator "\(^\|\s\+\)<\ze\($\|\s\+\)"
128: syntax match rplOperator "\(^\|\s\+\)[+-]\ze\($\|\s\+\)"
129: syntax match rplOperator "\(^\|\s\+\)[/\*]\ze\($\|\s\+\)"
130: syntax match rplOperator "\(^\|\s\+\)\^\ze\($\|\s\+\)"
131: syntax match rplOperator "\(^\|\s\+\)\*\*\ze\($\|\s\+\)"
132:
133: syntax match rplBoolean "\(^\|\s\+\)true\ze\($\|\s\+\)"
134: syntax match rplBoolean "\(^\|\s\+\)false\ze\($\|\s\+\)"
135:
136: syntax match rplReadWrite "\(^\|\s\+\)store\ze\($\|\s\+\)"
137: syntax match rplReadWrite "\(^\|\s\+\)recall\ze\($\|\s\+\)"
138: syntax match rplReadWrite "\(^\|\s\+\)\(\|wf\|un\)lock\ze\($\|\s\+\)"
139: syntax match rplReadWrite "\(^\|\s\+\)open\ze\($\|\s\+\)"
140: syntax match rplReadWrite "\(^\|\s\+\)connect\ze\($\|\s\+\)"
141: syntax match rplReadWrite "\(^\|\s\+\)close\ze\($\|\s\+\)"
142: syntax match rplReadWrite "\(^\|\s\+\)sql\ze\($\|\s\+\)"
143: syntax match rplReadWrite "\(^\|\s\+\)delete\ze\($\|\s\+\)"
144: syntax match rplReadWrite "\(^\|\s\+\)create\ze\($\|\s\+\)"
145: syntax match rplReadWrite "\(^\|\s\+\)format\ze\($\|\s\+\)"
146: syntax match rplReadWrite "\(^\|\s\+\)rewind\ze\($\|\s\+\)"
147: syntax match rplReadWrite "\(^\|\s\+\)backspace\ze\($\|\s\+\)"
148: syntax match rplReadWrite "\(^\|\s\+\)\(\|re\)write\ze\($\|\s\+\)"
149: syntax match rplReadWrite "\(^\|\s\+\)read\ze\($\|\s\+\)"
150: syntax match rplReadWrite "\(^\|\s\+\)inquire\ze\($\|\s\+\)"
151: syntax match rplReadWrite "\(^\|\s\+\)sync\ze\($\|\s\+\)"
152: syntax match rplReadWrite "\(^\|\s\+\)append\ze\($\|\s\+\)"
153: syntax match rplReadWrite "\(^\|\s\+\)suppress\ze\($\|\s\+\)"
154: syntax match rplReadWrite "\(^\|\s\+\)seek\ze\($\|\s\+\)"
155: syntax match rplReadWrite "\(^\|\s\+\)pr\(1\|int\|st\|stc\|lcd\|var\|usr\|md\)\ze\($\|\s\+\)"
156: syntax match rplReadWrite "\(^\|\s\+\)paper\ze\($\|\s\+\)"
157: syntax match rplReadWrite "\(^\|\s\+\)cr\($\|\s\+\)"
158: syntax match rplReadWrite "\(^\|\s\+\)erase\ze\($\|\s\+\)"
159: syntax match rplReadWrite "\(^\|\s\+\)disp\ze\($\|\s\+\)"
160: syntax match rplReadWrite "\(^\|\s\+\)input\ze\($\|\s\+\)"
161: syntax match rplReadWrite "\(^\|\s\+\)prompt\ze\($\|\s\+\)"
162: syntax match rplReadWrite "\(^\|\s\+\)key\ze\($\|\s\+\)"
163: syntax match rplReadWrite "\(^\|\s\+\)cllcd\ze\($\|\s\+\)"
164: syntax match rplReadWrite "\(^\|\s\+\)\(\|re\)draw\ze\($\|\s\+\)"
165: syntax match rplReadWrite "\(^\|\s\+\)drax\ze\($\|\s\+\)"
166: syntax match rplReadWrite "\(^\|\s\+\)indep\ze\($\|\s\+\)"
167: syntax match rplReadWrite "\(^\|\s\+\)depnd\ze\($\|\s\+\)"
168: syntax match rplReadWrite "\(^\|\s\+\)res\ze\($\|\s\+\)"
169: syntax match rplReadWrite "\(^\|\s\+\)axes\ze\($\|\s\+\)"
170: syntax match rplReadWrite "\(^\|\s\+\)label\ze\($\|\s\+\)"
171: syntax match rplReadWrite "\(^\|\s\+\)pmin\ze\($\|\s\+\)"
172: syntax match rplReadWrite "\(^\|\s\+\)pmax\ze\($\|\s\+\)"
173: syntax match rplReadWrite "\(^\|\s\+\)centr\ze\($\|\s\+\)"
174: syntax match rplReadWrite "\(^\|\s\+\)persist\ze\($\|\s\+\)"
175: syntax match rplReadWrite "\(^\|\s\+\)title\ze\($\|\s\+\)"
176: syntax match rplReadWrite "\(^\|\s\+\)\(slice\|auto\|log\|\)scale\ze\($\|\s\+\)"
177: syntax match rplReadWrite "\(^\|\s\+\)eyept\ze\($\|\s\+\)"
178: syntax match rplReadWrite "\(^\|\s\+\)\(p\|s\)par\ze\($\|\s\+\)"
179: syntax match rplReadWrite "\(^\|\s\+\)function\ze\($\|\s\+\)"
180: syntax match rplReadWrite "\(^\|\s\+\)polar\ze\($\|\s\+\)"
181: syntax match rplReadWrite "\(^\|\s\+\)scatter\ze\($\|\s\+\)"
182: syntax match rplReadWrite "\(^\|\s\+\)plotter\ze\($\|\s\+\)"
183: syntax match rplReadWrite "\(^\|\s\+\)wireframe\ze\($\|\s\+\)"
184: syntax match rplReadWrite "\(^\|\s\+\)parametric\ze\($\|\s\+\)"
185: syntax match rplReadWrite "\(^\|\s\+\)slice\ze\($\|\s\+\)"
186: syntax match rplReadWrite "\(^\|\s\+\)\*w\ze\($\|\s\+\)"
187: syntax match rplReadWrite "\(^\|\s\+\)\*h\ze\($\|\s\+\)"
188: syntax match rplReadWrite "\(^\|\s\+\)\*d\ze\($\|\s\+\)"
189: syntax match rplReadWrite "\(^\|\s\+\)\*s\ze\($\|\s\+\)"
190: syntax match rplReadWrite "\(^\|\s\+\)->lcd\ze\($\|\s\+\)"
191: syntax match rplReadWrite "\(^\|\s\+\)lcd->\ze\($\|\s\+\)"
192: syntax match rplReadWrite "\(^\|\s\+\)edit\ze\($\|\s\+\)"
193: syntax match rplReadWrite "\(^\|\s\+\)visit\ze\($\|\s\+\)"
194:
195: syntax match rplIntrinsic "\(^\|\s\+\)abs\ze\($\|\s\+\)"
196: syntax match rplIntrinsic "\(^\|\s\+\)arg\ze\($\|\s\+\)"
197: syntax match rplIntrinsic "\(^\|\s\+\)conj\ze\($\|\s\+\)"
198: syntax match rplIntrinsic "\(^\|\s\+\)re\ze\($\|\s\+\)"
199: syntax match rplIntrinsic "\(^\|\s\+\)im\ze\($\|\s\+\)"
200: syntax match rplIntrinsic "\(^\|\s\+\)mant\ze\($\|\s\+\)"
201: syntax match rplIntrinsic "\(^\|\s\+\)xpon\ze\($\|\s\+\)"
202: syntax match rplIntrinsic "\(^\|\s\+\)ceil\ze\($\|\s\+\)"
203: syntax match rplIntrinsic "\(^\|\s\+\)fact\ze\($\|\s\+\)"
204: syntax match rplIntrinsic "\(^\|\s\+\)fp\ze\($\|\s\+\)"
205: syntax match rplIntrinsic "\(^\|\s\+\)floor\ze\($\|\s\+\)"
206: syntax match rplIntrinsic "\(^\|\s\+\)inv\ze\($\|\s\+\)"
207: syntax match rplIntrinsic "\(^\|\s\+\)ip\ze\($\|\s\+\)"
208: syntax match rplIntrinsic "\(^\|\s\+\)max\ze\($\|\s\+\)"
209: syntax match rplIntrinsic "\(^\|\s\+\)min\ze\($\|\s\+\)"
210: syntax match rplIntrinsic "\(^\|\s\+\)mod\ze\($\|\s\+\)"
211: syntax match rplIntrinsic "\(^\|\s\+\)neg\ze\($\|\s\+\)"
212: syntax match rplIntrinsic "\(^\|\s\+\)relax\ze\($\|\s\+\)"
213: syntax match rplIntrinsic "\(^\|\s\+\)sign\ze\($\|\s\+\)"
214: syntax match rplIntrinsic "\(^\|\s\+\)sq\(\|rt\)\ze\($\|\s\+\)"
215: syntax match rplIntrinsic "\(^\|\s\+\)xroot\ze\($\|\s\+\)"
216: syntax match rplIntrinsic "\(^\|\s\+\)cos\ze\($\|\s\+\)"
217: syntax match rplIntrinsic "\(^\|\s\+\)sin\ze\($\|\s\+\)"
218: syntax match rplIntrinsic "\(^\|\s\+\)tan\ze\($\|\s\+\)"
219: syntax match rplIntrinsic "\(^\|\s\+\)acos\ze\($\|\s\+\)"
220: syntax match rplIntrinsic "\(^\|\s\+\)asin\ze\($\|\s\+\)"
221: syntax match rplIntrinsic "\(^\|\s\+\)atan\ze\($\|\s\+\)"
222: syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)cosh\ze\($\|\s\+\)"
223: syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)sinh\ze\($\|\s\+\)"
224: syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)tanh\ze\($\|\s\+\)"
225: syntax match rplIntrinsic "\(^\|\s\+\)\(\|a\)log\ze\($\|\s\+\)"
226: syntax match rplIntrinsic "\(^\|\s\+\)ln\(\|1\)\ze\($\|\s\+\)"
227: syntax match rplIntrinsic "\(^\|\s\+\)exp\(\|m\)\ze\($\|\s\+\)"
228: syntax match rplIntrinsic "\(^\|\s\+\)trn\ze\($\|\s\+\)"
229: syntax match rplIntrinsic "\(^\|\s\+\)con\ze\($\|\s\+\)"
230: syntax match rplIntrinsic "\(^\|\s\+\)idn\ze\($\|\s\+\)"
231: syntax match rplIntrinsic "\(^\|\s\+\)rdm\ze\($\|\s\+\)"
232: syntax match rplIntrinsic "\(^\|\s\+\)rsd\ze\($\|\s\+\)"
233: syntax match rplIntrinsic "\(^\|\s\+\)cnrm\ze\($\|\s\+\)"
234: syntax match rplIntrinsic "\(^\|\s\+\)cross\ze\($\|\s\+\)"
235: syntax match rplIntrinsic "\(^\|\s\+\)d[eo]t\ze\($\|\s\+\)"
236: syntax match rplIntrinsic "\(^\|\s\+\)[cr]swp\ze\($\|\s\+\)"
237: syntax match rplIntrinsic "\(^\|\s\+\)rci\(j\|\)\ze\($\|\s\+\)"
238: syntax match rplIntrinsic "\(^\|\s\+\)\(in\|de\)cr\ze\($\|\s\+\)"
239: syntax match rplIntrinsic "\(^\|\s\+\)bessel\ze\($\|\s\+\)"
240: syntax match rplIntrinsic "\(^\|\s\+\)gamma\ze\($\|\s\+\)"
241:
242: syntax match rplIntrinsic "\(^\|\s\+\)\(\|g\)egvl\ze\($\|\s\+\)"
243: syntax match rplIntrinsic "\(^\|\s\+\)\(\|g\)\(\|l\|r\)egv\ze\($\|\s\+\)"
244: syntax match rplIntrinsic "\(^\|\s\+\)rnrm\ze\($\|\s\+\)"
245: syntax match rplIntrinsic "\(^\|\s\+\)\(std\|fix\|sci\|eng\)\ze\($\|\s\+\)"
246: syntax match rplIntrinsic "\(^\|\s\+\)\(rad\|deg\)\ze\($\|\s\+\)"
247: syntax match rplIntrinsic "\(^\|\s\+\)\(\|n\)rand\ze\($\|\s\+\)"
248: syntax match rplIntrinsic "\(^\|\s\+\)rdz\ze\($\|\s\+\)"
249: syntax match rplIntrinsic "\(^\|\s\+\)\(\|i\)\(\f|\d\)ft\ze\($\|\s\+\)"
250: syntax match rplIntrinsic "\(^\|\s\+\)\(dec\|bin\|oct\|hex\)\ze\($\|\s\+\)"
251: syntax match rplIntrinsic "\(^\|\s\+\)rclf\ze\($\|\s\+\)"
252: syntax match rplIntrinsic "\(^\|\s\+\)stof\ze\($\|\s\+\)"
253: syntax match rplIntrinsic "\(^\|\s\+\)[cs]f\ze\($\|\s\+\)"
254: syntax match rplIntrinsic "\(^\|\s\+\)chr\ze\($\|\s\+\)"
255: syntax match rplIntrinsic "\(^\|\s\+\)num\ze\($\|\s\+\)"
256: syntax match rplIntrinsic "\(^\|\s\+\)pos\ze\($\|\s\+\)"
257: syntax match rplIntrinsic "\(^\|\s\+\)sub\ze\($\|\s\+\)"
258: syntax match rplIntrinsic "\(^\|\s\+\)size\ze\($\|\s\+\)"
259: syntax match rplIntrinsic "\(^\|\s\+\)\(st\|rc\)ws\ze\($\|\s\+\)"
260: syntax match rplIntrinsic "\(^\|\s\+\)\(r\|s\)\(r\|l\)\(\|b\)\ze\($\|\s\+\)"
261: syntax match rplIntrinsic "\(^\|\s\+\)as\(r\|l\)\ze\($\|\s\+\)"
262: syntax match rplIntrinsic "\(^\|\s\+\)\(int\|der\)\ze\($\|\s\+\)"
263: syntax match rplIntrinsic "\(^\|\s\+\)stos\ze\($\|\s\+\)"
264: syntax match rplIntrinsic "\(^\|\s\+\)\(\|r\)cls\ze\($\|\s\+\)"
265: syntax match rplIntrinsic "\(^\|\s\+\)drws\ze\($\|\s\+\)"
266: syntax match rplIntrinsic "\(^\|\s\+\)scls\ze\($\|\s\+\)"
267: syntax match rplIntrinsic "\(^\|\s\+\)ns\ze\($\|\s\+\)"
268: syntax match rplIntrinsic "\(^\|\s\+\)tot\ze\($\|\s\+\)"
269: syntax match rplIntrinsic "\(^\|\s\+\)mean\ze\($\|\s\+\)"
270: syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)sdev\ze\($\|\s\+\)"
271: syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)var\ze\($\|\s\+\)"
272: syntax match rplIntrinsic "\(^\|\s\+\)maxs\ze\($\|\s\+\)"
273: syntax match rplIntrinsic "\(^\|\s\+\)mins\ze\($\|\s\+\)"
274: syntax match rplIntrinsic "\(^\|\s\+\)\(\|p\)cov\ze\($\|\s\+\)"
275: syntax match rplIntrinsic "\(^\|\s\+\)cols\ze\($\|\s\+\)"
276: syntax match rplIntrinsic "\(^\|\s\+\)s\(x\(\|y\|2\)\|y\(\|2\)\)\ze\($\|\s\+\)"
277: syntax match rplIntrinsic "\(^\|\s\+\)\(x\|y\)col\ze\($\|\s\+\)"
278: syntax match rplIntrinsic "\(^\|\s\+\)corr\ze\($\|\s\+\)"
279: syntax match rplIntrinsic "\(^\|\s\+\)utp[cfnt]\ze\($\|\s\+\)"
280: syntax match rplIntrinsic "\(^\|\s\+\)comb\ze\($\|\s\+\)"
281: syntax match rplIntrinsic "\(^\|\s\+\)perm\ze\($\|\s\+\)"
282: syntax match rplIntrinsic "\(^\|\s\+\)lu\ze\($\|\s\+\)"
283: syntax match rplIntrinsic "\(^\|\s\+\)[lu]chol\ze\($\|\s\+\)"
284: syntax match rplIntrinsic "\(^\|\s\+\)schur\ze\($\|\s\+\)"
285: syntax match rplIntrinsic "\(^\|\s\+\)%\ze\($\|\s\+\)"
286: syntax match rplIntrinsic "\(^\|\s\+\)%ch\ze\($\|\s\+\)"
287: syntax match rplIntrinsic "\(^\|\s\+\)%t\ze\($\|\s\+\)"
288: syntax match rplIntrinsic "\(^\|\s\+\)hms->\ze\($\|\s\+\)"
289: syntax match rplIntrinsic "\(^\|\s\+\)->hms\ze\($\|\s\+\)"
290: syntax match rplIntrinsic "\(^\|\s\+\)hms+\ze\($\|\s\+\)"
291: syntax match rplIntrinsic "\(^\|\s\+\)hms-\ze\($\|\s\+\)"
292: syntax match rplIntrinsic "\(^\|\s\+\)d->r\ze\($\|\s\+\)"
293: syntax match rplIntrinsic "\(^\|\s\+\)r->d\ze\($\|\s\+\)"
294: syntax match rplIntrinsic "\(^\|\s\+\)b->r\ze\($\|\s\+\)"
295: syntax match rplIntrinsic "\(^\|\s\+\)r->b\ze\($\|\s\+\)"
296: syntax match rplIntrinsic "\(^\|\s\+\)c->r\ze\($\|\s\+\)"
297: syntax match rplIntrinsic "\(^\|\s\+\)r->c\ze\($\|\s\+\)"
298: syntax match rplIntrinsic "\(^\|\s\+\)r->p\ze\($\|\s\+\)"
299: syntax match rplIntrinsic "\(^\|\s\+\)p->r\ze\($\|\s\+\)"
300: syntax match rplIntrinsic "\(^\|\s\+\)str->\ze\($\|\s\+\)"
301: syntax match rplIntrinsic "\(^\|\s\+\)->str\ze\($\|\s\+\)"
302: syntax match rplIntrinsic "\(^\|\s\+\)array->\ze\($\|\s\+\)"
303: syntax match rplIntrinsic "\(^\|\s\+\)->array\ze\($\|\s\+\)"
304: syntax match rplIntrinsic "\(^\|\s\+\)list->\ze\($\|\s\+\)"
305: syntax match rplIntrinsic "\(^\|\s\+\)->list\ze\($\|\s\+\)"
306: syntax match rplIntrinsic "\(^\|\s\+\)s+\ze\($\|\s\+\)"
307: syntax match rplIntrinsic "\(^\|\s\+\)s-\ze\($\|\s\+\)"
308: syntax match rplIntrinsic "\(^\|\s\+\)col-\ze\($\|\s\+\)"
309: syntax match rplIntrinsic "\(^\|\s\+\)col->\ze\($\|\s\+\)"
310: syntax match rplIntrinsic "\(^\|\s\+\)->col\ze\($\|\s\+\)"
311: syntax match rplIntrinsic "\(^\|\s\+\)col+\ze\($\|\s\+\)"
312: syntax match rplIntrinsic "\(^\|\s\+\)row-\ze\($\|\s\+\)"
313: syntax match rplIntrinsic "\(^\|\s\+\)row->\ze\($\|\s\+\)"
314: syntax match rplIntrinsic "\(^\|\s\+\)->row\ze\($\|\s\+\)"
315: syntax match rplIntrinsic "\(^\|\s\+\)row+\ze\($\|\s\+\)"
316: syntax match rplIntrinsic "\(^\|\s\+\)->q\ze\($\|\s\+\)"
317: syntax match rplIntrinsic "\(^\|\s\+\)taylr\ze\($\|\s\+\)"
318: syntax match rplIntrinsic "\(^\|\s\+\)mclrin\ze\($\|\s\+\)"
319: syntax match rplIntrinsic "\(^\|\s\+\)\(ob\|ex\)get\ze\($\|\s\+\)"
320: syntax match rplIntrinsic "\(^\|\s\+\)\(ob\|ex\)sub\ze\($\|\s\+\)"
321:
322: syntax match rplObsolete "\(^\|\s\+\)arry->\ze\($\|\s\+\)"hs=e-5
323: syntax match rplObsolete "\(^\|\s\+\)->arry\ze\($\|\s\+\)"hs=e-5
324:
325: " Conditional structures
326: syntax match rplConditionalError "\(^\|\s\+\)case\ze\($\|\s\+\)"hs=e-3
327: syntax match rplConditionalError "\(^\|\s\+\)then\ze\($\|\s\+\)"hs=e-3
328: syntax match rplConditionalError "\(^\|\s\+\)else\ze\($\|\s\+\)"hs=e-3
329: syntax match rplConditionalError "\(^\|\s\+\)elseif\ze\($\|\s\+\)"hs=e-5
330: syntax match rplConditionalError "\(^\|\s\+\)end\ze\($\|\s\+\)"hs=e-2
331: syntax match rplConditionalError "\(^\|\s\+\)\(step\|next\)\ze\($\|\s\+\)"hs=e-3
332: syntax match rplConditionalError "\(^\|\s\+\)until\ze\($\|\s\+\)"hs=e-4
333: syntax match rplConditionalError "\(^\|\s\+\)repeat\ze\($\|\s\+\)"hs=e-5
334: syntax match rplConditionalError "\(^\|\s\+\)default\ze\($\|\s\+\)"hs=e-6
335: syntax match rplConditionalError "\(^\|\s\+\)cycle\ze\($\|\s\+\)"hs=e-4
336: syntax match rplConditionalError "\(^\|\s\+\)exit\ze\($\|\s\+\)"hs=e-3
337:
338: " FOR/(CYCLE)/(EXIT)/NEXT
339: " FOR/(CYCLE)/(EXIT)/STEP
340: " START/(CYCLE)/(EXIT)/NEXT
341: " START/(CYCLE)/(EXIT)/STEP
342: syntax region rplForNext matchgroup=rplRepeat start="\(^\|\s\+\)\(for\|start\)\ze\($\|\s\+\)" end="\(^\|\s\+\)\(next\|step\)\ze\($\|\s\+\)" contains=ALL keepend
343: syntax match rplCycle "\(^\|\s\+\)\(cycle\|exit\)\ze\($\|\s\+\)" contained containedin=rplRepeat
344:
345: " ELSEIF/END
346: syntax region rplElseifEnd matchgroup=rplConditional start="\(^\|\s\+\)elseif\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd keepend
347:
348: " ELSE/END
349: syntax region rplElseEnd matchgroup=rplConditional start="\(^\|\s\+\)else\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd,rplThenEnd,rplElseifEnd keepend
350:
351: " THEN/END
352: syntax region rplThenEnd matchgroup=rplConditional start="\(^\|\s\+\)then\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained containedin=rplIfEnd contains=ALLBUT,rplThenEnd keepend
353:
354: " IF/END
355: syntax region rplIfEnd matchgroup=rplConditional start="\(^\|\s\+\)if\(err\|\)\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplElseEnd,rplElseifEnd keepend extend
356: " if end is accepted !
357: " select end too !
358:
359: " CASE/THEN
360: 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
361:
362: " CASE/END
363: 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
364:
365: " DEFAULT/END
366: syntax region rplDefaultEnd matchgroup=rplConditional start="\(^\|\s\+\)default\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplDefaultEnd keepend contained containedin=rplSelectEnd
367:
368: " SELECT/END
369: syntax region rplSelectEnd matchgroup=rplConditional start="\(^\|\s\+\)select\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplThenEnd keepend extend
370: " select end is accepted !
371:
372: " DO/UNTIL/END
373: syntax region rplUntilEnd matchgroup=rplConditional start="\(^\|\s\+\)until\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplUntilEnd contained containedin=rplDoUntil extend keepend
374: syntax region rplDoUntil matchgroup=rplConditional start="\(^\|\s\+\)do\ze\($\|\s\+\)" end="\(^\|\s\+\)until\ze\($\|\s\+\)" contains=ALL keepend extend
375:
376: " WHILE/REPEAT/END
377: syntax region rplRepeatEnd matchgroup=rplConditional start="\(^\|\s\+\)repeat\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplRepeatEnd contained containedin=rplWhileRepeat extend keepend
378: syntax region rplWhileRepeat matchgroup=rplConditional start="\(^\|\s\+\)while\ze\($\|\s\+\)" end="\(^\|\s\+\)repeat\ze\($\|\s\+\)" contains=ALL keepend extend
379:
380: " Comments
381: syntax match rplCommentError "\*/"
382: syntax region rplCommentString contained start=+"+ end=+"+ end=+\*/+me=s-1
383: syntax region rplCommentLine start="\(^\|\s\+\)//\ze" skip="\\$" end="$" contains=NONE keepend extend
384: syntax region rplComment start="\(^\|\s\+\)/\*\ze" end="\*/" contains=rplCommentString keepend extend
385:
386: " Catch errors caused by too many right parentheses
387: syntax region rplParen transparent start="(" end=")" contains=ALLBUT,rplParenError,rplComplex,rplIncluded keepend extend
388: syntax match rplParenError ")"
389:
390: " Subroutines
391: " Catch errors caused by too many right '>>'
392: syntax match rplSubError "\(^\|\s\+\)>>\ze\($\|\s\+\)"hs=e-1
393: syntax region rplSub matchgroup=rplSubDelimitor start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageSub
394:
395: " Expressions
396: syntax region rplExpr start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError
397:
398: " Local variables
399: syntax match rplStorageError "\(^\|\s\+\)->\ze\($\|\s\+\)"hs=e-1
400: syntax region rplStorageSub matchgroup=rplConditional start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageExpr contained
401: "syntax region rplStorageExpr matchgroup=rplConditional start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError
402: syntax region rplLocalStorageSub matchgroup=rplConditional start="\(^\|\s\+\)->\ze\($\|\s\+\)" end="\(^\|\s\+\)<<\ze\($\|\s\+\)"hs=e-2 contains=rplComment,rplCommentLine,rplStorageError nextgroup=rplStorageSub keepend extend
403: syntax region rplLocalStorageExpr matchgroup=rplConditional start="\(^\|\s\+\)->\ze\($\|\s\+\)" end="'\(\s\+\|\S\+\)\+'" contains=rplComment,rplCommentLine,rplLocalStorage,rplStorageError keepend extend nextgroup=rplStorageExpr
404:
405: " Catch errors caused by too many right brackets
406: syntax match rplArrayError "\]"
407: syntax match rplArray "\]" contained containedin=rplArray
408: syntax region rplArray matchgroup=rplArray start="\[" end="\]" contains=ALLBUT,rplArrayError keepend extend
409:
410: " Catch errors caused by too many right '}'
411: syntax match rplListError "}"
412: syntax match rplList "}" contained containedin=rplList
413: syntax region rplList matchgroup=rplList start="{" end="}" contains=ALLBUT,rplListError,rplIncluded keepend extend
414:
415: " gpp is used by RPL/2
416: syntax match rplPreProc "\_^#\s*\(define\|defeval\|eval\|undef\)\>"
417: syntax match rplPreProc "\_^#\s*\(warning\|error\)\>"
418: syntax match rplPreProc "\_^#\s*\(date\|file\|mode\|line\)\>"
419: syntax match rplPreCondit "\_^#\s*\(if\|ifdef\|ifndef\|elif\|else\|endif\)\>"
420: syntax match rplPreCondit "\_^#\s*\(ifeq\|ifneq\)\>"
421: syntax match rplIncluded contained "\<<\s*\S*\s*>\>"
422:
423: syntax match rplInclude "\_^#\s*include\>\s*["<]" contains=rplIncluded,rplString
424: "syntax match rplExecPath "\%^\_^#!\s*\S*"
425: syntax match rplExecPath "\%^\_^#!\p*\_$"
426:
427: " Any integer
428: syntax match rplInteger "\(^\|\s\+\)[-+]\=\d\+\ze\($\|\s\+\)"
429:
430: " Floating point number
431: " [S][ip].[fp]
432: syntax match rplFloat "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\(\d*\)\=\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign
433: " [S]ip[.fp]E[S]exp
434: syntax match rplFloat "\(^\|\s\+\)[-+]\=\d\+\([\.,]\d*\)\=[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign
435: " [S].fpE[S]exp
436: syntax match rplFloat "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\d\+[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign
437: syntax match rplPoint "\<[\.,]\>"
438: syntax match rplSign "\<[+-]\>"
439:
440: " Complex number
441: " (x,y)
442: syntax match rplComplex "\(^\|\s\+\)([-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=\s*,\s*[-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)"
443: " (x.y)
444: syntax match rplComplex "\(^\|\s\+\)([-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=\s*\.\s*[-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)"
445:
446: " Strings
447: syntax match rplStringGuilles "\\\""
448: syntax match rplStringAntislash "\\\\"
449: syntax region rplString start=+\(^\|\s\+\)"+ end=+"\ze\($\|\s\+\)+ contains=rplStringGuilles,rplStringAntislash
450:
451: syntax match rplTab "\t" transparent
452:
453: " Define the default highlighting.
454: " For version 5.7 and earlier: only when not done already
455: " For version 5.8 and later: only when an item doesn't have highlighting yet
456: if version >= 508 || !exists("did_rpl_syntax_inits")
457: if version < 508
458: let did_rpl_syntax_inits = 1
459: command -nargs=+ HiLink highlight link <args>
460: else
461: command -nargs=+ HiLink highlight default link <args>
462: endif
463:
464: " The default highlighting.
465:
466: HiLink rplControl Statement
467: HiLink rplStatement Statement
468: HiLink rplAlgConditional Conditional
469: HiLink rplConditional Repeat
470: HiLink rplConditionalError Error
471: HiLink rplRepeat Repeat
472: HiLink rplCycle Repeat
473: HiLink rplUntil Repeat
474: HiLink rplIntrinsic Special
475: HiLink rplStorage StorageClass
476: HiLink rplStorageExpr StorageClass
477: HiLink rplStorageError Error
478: HiLink rplReadWrite rplIntrinsic
479:
480: HiLink rplOperator Operator
481:
482: HiLink rplList Special
483: HiLink rplArray Special
484: HiLink rplConstant Identifier
485: HiLink rplExpr Type
486:
487: HiLink rplString String
488: HiLink rplStringGuilles String
489: HiLink rplStringAntislash String
490:
491: HiLink rplBinary Boolean
492: HiLink rplOctal Boolean
493: HiLink rplDecimal Boolean
494: HiLink rplHexadecimal Boolean
495: HiLink rplInteger Number
496: HiLink rplFloat Float
497: HiLink rplComplex Float
498: HiLink rplBoolean Identifier
499:
500: HiLink rplObsolete Todo
501:
502: HiLink rplPreCondit PreCondit
503: HiLink rplInclude Include
504: HiLink rplIncluded rplString
505: HiLink rplInclude Include
506: HiLink rplExecPath Include
507: HiLink rplPreProc PreProc
508: HiLink rplComment Comment
509: HiLink rplCommentLine Comment
510: HiLink rplCommentString Comment
511: HiLink rplSubDelimitor rplStorage
512: HiLink rplCommentError Error
513: HiLink rplParenError Error
514: HiLink rplSubError Error
515: HiLink rplArrayError Error
516: HiLink rplListError Error
517: HiLink rplTab Error
518: HiLink rplBinaryError Error
519: HiLink rplOctalError Error
520: HiLink rplDecimalError Error
521: HiLink rplHexadecimalError Error
522:
523: delcommand HiLink
524: endif
525:
526: let b:current_syntax = "rpl"
527:
528: " vim: ts=8 tw=132
CVSweb interface <joel.bertrand@systella.fr>