ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
phix.php
Go to the documentation of this file.
1<?php
2/*************************************************************************************
3 * phix.php
4 * ---------------------------------
5 * Author: Pete Lomax
6 * Copyright: (c) 2010 Nicholas Koceja
7 * Release Version: 1.0.9.0
8 * Date Started: 16/08/2015
9 *
10 * Phix language file for GeSHi.
11 *
12 * Author's note: The colors are based on those of Edita.
13 *
14 * CHANGES
15 * -------
16 * <date-of-release> (1.0.8.9)
17 * - First Release
18 *
19 * TODO (updated <date-of-release>)
20 * -------------------------
21 * seperate the funtions from the procedures, and have a slight color change for each.
22 *
23 *************************************************************************************
24 *
25 * This file is part of GeSHi.
26 *
27 * GeSHi is free software; you can redistribute it and/or modify
28 * it under the terms of the GNU General Public License as published by
29 * the Free Software Foundation; either version 2 of the License, or
30 * (at your option) any later version.
31 *
32 * GeSHi is distributed in the hope that it will be useful,
33 * but WITHOUT ANY WARRANTY; without even the implied warranty of
34 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
35 * GNU General Public License for more details.
36 *
37 * You should have received a copy of the GNU General Public License
38 * along with GeSHi; if not, write to the Free Software
39 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
40 *
41 ************************************************************************************/
42
44 'LANG_NAME' => 'Phix',
45 'COMMENT_SINGLE' => array(1 => '--'),
46 'COMMENT_MULTI' => array('/*' => '*/'),
47 'COMMENT_REGEXP' => array(2 => '/\/\*(?:(?R)|.)+?\*\//s'),
48 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
49 'QUOTEMARKS' => array("'", '"', '"""', '`'),
50 'ESCAPE_CHAR' => '\\',
51 'KEYWORDS' => array(
52 1 => array( // keywords
53 'and', 'as',
54 'break', 'by',
55 'case', 'constant',
56 'default', 'do',
57 'else', 'elsif', 'end', 'enum', 'exit',
58 'for', 'forward', 'function',
59 'global',
60 'if', 'include',
61 'not',
62 'or',
63 'procedure',
64 'return',
65 'switch',
66 'then', 'to', 'type',
67 'while', 'with', 'without',
68 'xor'
69 ),
70 2 => array( // directives
71 'console',
72 'debug',
73 'fallthru',
74 'fallthrough', 'format',
75 'gui',
76 'ilASM',
77 'jump_table',
78 'profile', 'profile_time',
79 'trace', 'type_check',
80 'warning'
81 ),
82 3 => array( // built-ins
83 'abort',
84 'abs',
85 'adjust_timedate',
86 'allocate',
87 'allocate_string',
88 'allocate_struct',
89 'allow_break',
90 'and_bits',
91 'append',
92 'arccos',
93 'arcsin',
94 'arctan',
95 'atom',
96 'atom_to_float32',
97 'atom_to_float64',
98 'atom_to_float80',
99
100 'bits_to_int',
101 'bk_color',
102 'bytes_to_int',
103
104 'call',
105 'call_back',
106 'call_func',
107 'call_proc',
108 'canonical_path',
109 'ceil',
110 'change_timezone',
111 'chdir',
112 'check_break',
113 'clear_screen',
114 'close',
115 'columnize',
116 'compare',
117 'command_line',
118 'cos',
119 'crash_file',
120 'crash_message',
121 'crash_routine',
122 'create_thread',
123 'current_dir',
124 'cursor',
125 'custom_sort',
126 'c_func',
127 'c_proc',
128
129 'date',
130 'day_of_week',
131 'day_of_year',
132 'db_close',
133 'db_compress',
134 'db_create',
135 'db_create_table',
136 'db_delete_record',
137 'db_delete_table',
138 'db_dump',
139 'db_fatal_id',
140 'db_find_key',
141 'db_insert',
142 'db_open',
143 'db_record_data',
144 'db_record_key',
145 'db_replace_data',
146 'db_select',
147 'db_select_table',
148 'db_table_list',
149 'db_table_size',
150 'define_c_func',
151 'define_c_proc',
152 'define_c_var',
153 'define_cfunc',
154 'define_cproc',
155 'define_struct',
156 'delete',
157 'delete_cs',
158 'delete_routine',
159 'dir',
160 'display_text_image',
161
162 'enter_cs',
163 'equal',
164 'exit_thread',
165
166 'factorial',
167 'factors',
168 'find',
169 'flatten',
170 'float32_to_atom',
171 'float64_to_atom',
172 'float80_to_atom',
173 'floor',
174 'flush',
175 'format_timedate',
176 'free',
177 'free_console',
178
179 'gcd',
180 'get',
181 'getc',
182 'getenv',
183 'gets',
184 'get_bytes',
185 'get_field_details',
186 'get_key',
187 'get_position',
188 'get_proper_path',
189 'get_screen_char',
190 'get_struct_field',
191 'get_struct_size',
192 'get_text',
193 'get_thread_exitcode',
194
195 'iif',
196 'iff',
197 'include_paths',
198 'init_cs',
199 'instance',
200 'integer',
201 'int_to_bits',
202 'int_to_bytes',
203 'is_leap_year',
204
205 'join',
206
207 'leave_cs',
208 'length',
209 'lock_file',
210 'log',
211 'lower',
212
213 'machine_bits',
214 'machine_func',
215 'machine_proc',
216 'match',
217 'max',
218 'mem_copy',
219 'mem_set',
220 'message_box',
221 'min',
222 'mod',
223
224 'not_bits',
225
226 'object',
227 'open',
228 'open_dll',
229 'or_bits',
230
231 'parse_date_string',
232 'peek',
233 'peek1s',
234 'peek1u',
235 'peek2s',
236 'peek2u',
237 'peek4s',
238 'peek4u',
239 'peek8s',
240 'peek8u',
241 'peekNS',
242 'peek_string',
243 'permute',
244 'platform',
245 'poke',
246 'poke1',
247 'poke2',
248 'poke4',
249 'poke8',
250 'pokeN',
251 'position',
252 'power',
253 'prepend',
254 'prime_factors',
255 'print',
256 'printf',
257 'prompt_number',
258 'prompt_string',
259 'puts',
260 'put_screen_char',
261
262 'rand',
263 'read_bitmap',
264 'remainder',
265 'repeat',
266 'resume_thread',
267 'reverse',
268 'rfind',
269 'round',
270 'routine_id',
271
272 'save_bitmap',
273 'save_text_image',
274 'scanf',
275 'scroll',
276 'seek',
277 'sequence',
278 'set_rand',
279 'set_struct_field',
280 'set_system_doevents',
281 'set_timedate_formats',
282 'set_timezone',
283 'set_unicode',
284 'sign',
285 'sin',
286 'sleep',
287 'sort',
288 'sprint',
289 'sprintf',
290 'sqrt',
291 'sq_abs',
292 'sq_add',
293 'sq_and',
294 'sq_and_bits',
295 'sq_arccos',
296 'sq_arcsin',
297 'sq_arctan',
298 'sq_atom',
299 'sq_ceil',
300 'sq_cos',
301 'sq_div',
302 'sq_eq',
303 'sq_floor',
304 'sq_floor_div',
305 'sq_ge',
306 'sq_gt',
307 'sq_int',
308 'sq_le',
309 'sq_log',
310 'sq_lower',
311 'sq_lt',
312 'sq_mod',
313 'sq_mul',
314 'sq_ne',
315 'sq_not',
316 'sq_not_bits',
317 'sq_or',
318 'sq_or_bits',
319 'sq_power',
320 'sq_rand',
321 'sq_round',
322 'sq_rmdr',
323 'sq_seq',
324 'sq_sign',
325 'sq_sin',
326 'sq_sqrt',
327 'sq_str',
328 'sq_sub',
329 'sq_tan',
330 'sq_trunc',
331 'sq_uminus',
332 'sq_upper',
333 'sq_xor',
334 'sq_xor_bits',
335 'string',
336 'substitute',
337 'sum',
338 'suspend_thread',
339 'system',
340 'system_exec',
341 'system_open',
342 'system_wait',
343
344 'tagset',
345 'tan',
346 'task_clock_stop',
347 'task_clock_start',
348 'task_create',
349 'task_list',
350 'task_schedule',
351 'task_self',
352 'task_status',
353 'task_suspend',
354 'task_yield',
355 'text_color',
356 'text_rows',
357 'time',
358 'timedate',
359 'timedelta',
360 'trunc',
361 'try_cs',
362
363 'unlock_file',
364 'upper',
365
366 'value',
367 'video_config',
368
369 'wait_key',
370 'wait_thread',
371 'walk_dir',
372 'where',
373 'wildcard_file',
374 'wildcard_match',
375 'wrap',
376
377 'xor_bits'
378 ),
379 ),
380 'SYMBOLS' => array(
381 0 => array(
382 '(', ')', '{', '}', '[', ']'
383 ),
384 1 => array(
385 '+', '-', '*', '/', '=', '&', '^', '?', ',', ':'
386 )
387 ),
388 'CASE_SENSITIVE' => array(
389 GESHI_COMMENTS => false,
390 1 => true,
391 2 => true,
392 3 => true
393 ),
394 'STYLES' => array(
395 'KEYWORDS' => array(
396 1 => 'color: #008080;', // keywords
397 2 => 'color: #008080;', // directives
398 3 => 'color: #004080;' // builtins
399 ),
400 'COMMENTS' => array(
401 1 => 'color: #000080; font-style: italic;',
402 2 => 'color: #000080; font-style: italic;',
403 'MULTI' => 'color: #000080; font-style: italic;'
404 ),
405 'ESCAPE_CHAR' => array(
406 0 => 'color: #009900; font-weight: bold;'
407 ),
408 'BRACKETS' => array(
409 0 => 'color: #0000FF;'
410 ),
411 'STRINGS' => array(
412 0 => 'color: #008000;'
413 ),
414 'NUMBERS' => array(
415 0 => 'color: #000000;'
416 ),
417 'METHODS' => array( // Do not exist in Phix)
418 0 => ''
419 ),
420 'SYMBOLS' => array(
421 0 => 'color: #0000FF;', // brackets
422 1 => 'color: #0000FF;' // operators
423 ),
424 'REGEXPS' => array(),
425 'SCRIPT' => array( // Never included in scripts.
426 )
427 ),
428 'REGEXPS' => array(),
429 'URLS' => array(
430 1 => '',
431 2 => '',
432 3 => ''
433 ),
434 'OOLANG' => false,
435 'OBJECT_SPLITTERS' => array(),
436 'STRICT_MODE_APPLIES' => GESHI_NEVER,
437 'SCRIPT_DELIMITERS' => array(),
438 'HIGHLIGHT_STRICT_BLOCK' => array()
439);
An exception for terminatinating execution or to throw for unit testing.
const GESHI_CAPS_NO_CHANGE
Lowercase keywords found.
Definition: geshi.php:94
const GESHI_COMMENTS
Used in language files to mark comments.
Definition: geshi.php:149
const GESHI_NEVER
#+ @access private
Definition: geshi.php:123
$language_data
Definition: phix.php:43