ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
providex.php
Go to the documentation of this file.
1 <?php
2 /******************************************************************************
3  * providex.php
4  * ----------
5  * Author: Jeff Wilder (jeff@coastallogix.com)
6  * Copyright: (c) 2008 Coastal Logix (http://www.coastallogix.com)
7  * Release Version: 1.0.9.0
8  * Date Started: 2008/10/18
9  *
10  * ProvideX language file for GeSHi.
11  *
12  * CHANGES
13  * -------
14  * 2008/10/21 (1.0.0)
15  * - First Release
16  *
17  * TODO
18  * -------------------------
19  * 1. Create a regexp for numeric global variables (ex: %VarName = 3)
20  * 2. Add standard object control properties
21  *
22  ******************************************************************************
23  *
24  * This file is part of GeSHi.
25  *
26  * GeSHi is free software; you can redistribute it and/or modify
27  * it under the terms of the GNU General Public License as published by
28  * the Free Software Foundation; either version 2 of the License, or
29  * (at your option) any later version.
30  *
31  * GeSHi is distributed in the hope that it will be useful,
32  * but WITHOUT ANY WARRANTY; without even the implied warranty of
33  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
34  * GNU General Public License for more details.
35  *
36  * You should have received a copy of the GNU General Public License
37  * along with GeSHi; if not, write to the Free Software
38  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
39  *
40  *****************************************************************************/
41 $language_data = array (
42  'LANG_NAME' => 'ProvideX',
43  'COMMENT_SINGLE' => array(1 => '!'),
44  'COMMENT_MULTI' => array('/*' => '*/'),
45  'COMMENT_REGEXP' => array(
46  // Single-Line Comments using REM command
47  2 => "/\bREM\b.*?$/i"
48  ),
49  'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
50  'QUOTEMARKS' => array('"'),
51  'ESCAPE_CHAR' => '',
52  'KEYWORDS' => array(
53  1 => array(
54  // Directives
55  '*break', '*continue', '*end', '*escape', '*next', '*proceed',
56  '*retry', '*return', '*same', 'accept', 'add index', 'addr',
57  'auto', 'begin', 'break', 'button', 'bye', 'call', 'case',
58  'chart', 'check_box', 'class', 'clear', 'clip_board', 'close',
59  'continue', 'control', 'create required', 'create table',
60  'cwdir', 'data', 'day_format', 'def', 'default', 'defctl',
61  'defprt', 'deftty', 'delete required', 'dictionary', 'dim', 'direct',
62  'directory', 'disable', 'drop', 'drop_box', 'dump', 'edit',
63  'else', 'enable', 'end switch', 'end', 'end_if', 'endtrace',
64  'enter', 'erase', 'error_handler', 'escape', 'event', 'execute',
65  'exit', 'exitto', 'extract', 'file', 'find', 'floating point',
66  'for', 'function', 'get_file_box', 'gosub', 'goto', 'grid',
67  'h_scrollbar', 'hide', 'if', 'index', 'indexed', 'input',
68  'insert', 'invoke', 'iolist', 'keyed', 'let', 'like',
69  'line_switch', 'list', 'list_box', 'load', 'local', 'lock',
70  'long_form', 'menu_bar', 'merge', 'message_lib', 'mnemonic',
71  'msgbox', 'multi_line', 'multi_media', 'next', 'object', 'obtain',
72  'on', 'open', 'password', 'perform', 'pop', 'popup_menu',
73  'precision', 'prefix', 'preinput', 'print', 'process', 'program',
74  'property', 'purge', 'quit', 'radio_button', 'randomize',
75  'read', 'record', 'redim', 'refile', 'release', 'rem', 'remove',
76  'rename', 'renumber', 'repeat', 'reset', 'restore', 'retry',
77  'return', 'round', 'run', 'save', 'select', 'serial', 'server',
78  'set_focus', 'set_nbf', 'set_param', 'setctl', 'setday', 'setdev',
79  'setdrive', 'seterr', 'setesc', 'setfid', 'setmouse', 'settime',
80  'settrace', 'short_form', 'show', 'sort', 'start', 'static',
81  'step', 'stop', 'switch', 'system_help', 'system_jrnl', 'table',
82  'then', 'to', 'translate', 'tristate_box', 'unlock', 'until',
83  'update', 'user_lex', 'v_scrollbar', 'vardrop_box', 'varlist_box',
84  'via', 'video_palette', 'wait', 'wend', 'while', 'winprt_setup',
85  'with', 'write'
86  ),
87  2 => array(
88  // System Functions
89  '@x', '@y', 'abs', 'acs', 'and', 'arg', 'asc', 'asn', 'ath',
90  'atn', 'bin', 'bsz', 'chg', 'chr', 'cmp', 'cos', 'cpl',
91  'crc', 'cse', 'ctl', 'cvs', 'dec', 'dir', 'dll', 'dsk',
92  'dte', 'env', 'ept', 'err', 'evn', 'evs', 'exp', 'ffn',
93  'fib', 'fid', 'fin', 'fpt', 'gap', 'gbl', 'gep', 'hsa',
94  'hsh', 'hta', 'hwn', 'i3e', 'ind', 'int', 'iol', 'ior',
95  'jul', 'jst', 'kec', 'kef', 'kel', 'ken', 'kep', 'key',
96  'kgn', 'lcs', 'len', 'lno', 'log', 'lrc', 'lst', 'max',
97  'mem', 'mid', 'min', 'mnm', 'mod', 'msg', 'msk', 'mxc',
98  'mxl', 'new', 'not', 'nul', 'num', 'obj', 'opt', 'pad',
99  'pck', 'pfx', 'pgm', 'pos', 'prc', 'prm', 'pth', 'pub',
100  'rcd', 'rdx', 'rec', 'ref', 'rnd', 'rno', 'sep', 'sgn',
101  'sin', 'sqr', 'srt', 'ssz', 'stk', 'stp', 'str', 'sub',
102  'swp', 'sys', 'tan', 'tbl', 'tcb', 'tmr', 'trx', 'tsk',
103  'txh', 'txw', 'ucp', 'ucs', 'upk', 'vin', 'vis', 'xeq',
104  'xfa', 'xor', '_obj'
105  ),
106  3 => array(
107  // System Variables
108  // Vars that are duplicates of functions
109  // 'ctl', 'err', 'pfx', 'prm', 'rnd', 'sep', 'sys',
110  'bkg', 'chn', 'day', 'dlm', 'dsz', 'eom', 'ers', 'esc',
111  'gfn', 'gid', 'hfn', 'hlp', 'hwd', 'lfa', 'lfo', 'lip',
112  'lpg', 'lwd', 'mse', 'msl', 'nar', 'nid', 'pgn', 'psz',
113  'quo', 'ret', 'sid', 'ssn', 'tim', 'tme', 'tms', 'tsm',
114  'uid', 'unt', 'who'
115 
116  ),
117  4 => array(
118  // Nomads Variables
119  '%Flmaint_Lib$', '%Flmaint_Msg$', '%Nomads_Activation_Ok',
120  '%Nomads_Auto_Qry', '%Nomads_Disable_Debug',
121  '%Nomads_Disable_Trace', '%Nomads_Fkey_Handler$',
122  '%Nomads_Fkey_Tbl$', '%Nomads_Notest', '%Nomads_Onexit$',
123  '%Nomads_Post_Display', '%Nomads_Pre_Display$',
124  '%Nomads_Process$', '%Nomads_Trace_File$',
125  '%Nomad_Actv_Folder_Colors$', '%Nomad_Automation_Enabled',
126  '%Nomad_Auto_Close', '%Nomad_Center_Wdw', '%Nomad_Concurrent_Wdw',
127  '%Nomad_Custom_Define', '%Nomad_Custom_Dir$',
128  '%Nomad_Custom_Genmtc', '%Nomad_Custom_Skip_Definition',
129  '%Nomad_Def_Sfx$', '%Nomad_Enter_Tab', '%Nomad_Esc_Sel',
130  '%Nomad_Isjavx', '%Nomad_Iswindx', '%Nomad_Iswindx$',
131  '%Nomad_Menu$', '%Nomad_Menu_Leftedge_Clr$',
132  '%Nomad_Menu_Textbackground_Clr$', '%Nomad_Mln_Sep$',
133  '%Nomad_Msgmnt$', '%Nomad_Noplusw', '%Nomad_No_Customize',
134  '%Nomad_Object_Persistence', '%Nomad_Object_Resize',
135  '%Nomad_Open_Load', '%Nomad_Override_Font$',
136  '%Nomad_Palette_Loaded', '%Nomad_Panel_Info_Force',
137  '%Nomad_Panel_Info_Prog$', '%Nomad_Pnl_Def_Colour$',
138  '%Nomad_Pnl_Def_Font$', '%Nomad_Prg_Cache', '%Nomad_Qry_Attr$',
139  '%Nomad_Qry_Btn$', '%Nomad_Qry_Clear_Start', '%Nomad_Qry_Tip$',
140  '%Nomad_Qry_Wide', '%Nomad_Query_Clear_Status', '%Nomad_Query_Kno',
141  '%Nomad_Query_No_Gray', '%Nomad_Query_Odb_Ignore',
142  '%Nomad_Query_Retkno', '%Nomad_Query_Sbar_Max',
143  '%Nomad_Relative_Wdw', '%Nomad_Save_Qry_Path', '%Nomad_Script_Fn',
144  '%Nomad_Script_Log', '%Nomad_Script_Wdw',
145  '%Nomad_Skip_Change_Logic', '%Nomad_Skip_Onselect_Logic',
146  '%Nomad_Stk$', '%Nomad_Tab_Dir', '%Nomad_Timeout',
147  '%Nomad_Turbo_Off', '%Nomad_Visual_Effect',
148  '%Nomad_Visual_Override', '%Nomad_Win_Ver', '%Nomad_Xchar',
149  '%Nomad_Xmax', '%Nomad_Ychar', '%Nomad_Ymax', '%Scr_Def_Attr$',
150  '%Scr_Def_H_Fl$', '%Scr_Def_H_Id$', '%Scr_Lib', '%Scr_Lib$',
151  '%Z__Usr_Sec$', 'Alternate_Panel$', 'Alternate_Panel_Type$',
152  'Arg_1$', 'Arg_10$', 'Arg_11$', 'Arg_12$', 'Arg_13$', 'Arg_14$',
153  'Arg_15$', 'Arg_16$', 'Arg_17$', 'Arg_18$', 'Arg_19$', 'Arg_2$',
154  'Arg_20$', 'Arg_3$', 'Arg_4$', 'Arg_5$', 'Arg_6$', 'Arg_7$',
155  'Arg_8$', 'Arg_9$', 'Change_Flg', 'Cmd_Str$', 'Default_Prog$',
156  'Disp_Cmd$', 'Entire_Record$', 'Exit_Cmd$', 'Fldr_Default_Prog$',
157  'Folder_Id$', 'Id', 'Id$', 'Ignore_Exit', 'Initialize_Flg',
158  'Init_Text$', 'Init_Val$', 'Main_Scrn_K$', 'Mnu_Ln$',
159  'Next_Folder', 'Next_Id', 'Next_Id$', 'No_Flush', 'Prime_Key$',
160  'Prior_Val', 'Prior_Val$', 'Qry_Val$', 'Refresh_Flg',
161  'Replacement_Folder$', 'Replacement_Lib$', 'Replacement_Scrn$',
162  'Scrn_Id$', 'Scrn_K$', 'Scrn_Lib$', 'Tab_Table$', '_Eom$'
163  ),
164  5 => array(
165  // Mnemonics
166  "'!w'", "'*c'", "'*h'", "'*i'", "'*o'", "'*r'", "'*x'",
167  "'+b'", "'+d'", "'+e'", "'+f'", "'+i'", "'+n'",
168  "'+p'", "'+s'", "'+t'", "'+u'", "'+v'", "'+w'", "'+x'",
169  "'+z'", "'-b'", "'-d'", "'-e'", "'-f'", "'-i'",
170  "'-n'", "'-p'", "'-s'", "'-t'", "'-u'", "'-v'", "'-w'",
171  "'-x'", "'-z'", "'2d'", "'3d'", "'4d'", "'@@'", "'ab'",
172  "'arc'", "'at'", "'backgr'", "'bb'", "'be'", "'beep'",
173  "'bg'", "'bi'", "'bj'", "'bk'", "'black'", "'blue'",
174  "'bm'", "'bo'", "'box'", "'br'", "'bs'", "'bt'", "'bu'",
175  "'bw'", "'bx'", "'caption'", "'ce'", "'cf'", "'ch'",
176  "'ci'", "'circle'", "'cl'", "'colour'", "'cp'", "'cpi'",
177  "'cr'", "'cs'", "'cursor'", "'cyan''_cyan'", "'dc'",
178  "'default'", "'df'", "'dialogue'", "'dn'", "'do'",
179  "'drop'", "'eb'", "'ee'", "'ef'", "'eg'", "'ei'", "'ej'",
180  "'el'", "'em'", "'eo'", "'ep'", "'er'", "'es'", "'et'",
181  "'eu'", "'ew'", "'ff'", "'fill'", "'fl'", "'font'",
182  "'frame'", "'gd'", "'ge'", "'gf'", "'goto'", "'green'",
183  "'gs'", "'hide'", "'ic'", "'image'", "'jc'",
184  "'jd'", "'jl'", "'jn'", "'jr'", "'js'", "'l6'", "'l8'",
185  "'lc'", "'ld'", "'lf'", "'li'", "'line'", "'lm'",
186  "'lpi'", "'lt'", "'magenta'", "'maxsize'", "'me'",
187  "'message'", "'minsize'", "'mn'", "'mode'",
188  "'move'", "'mp'", "'ms'", "'ni'", "'offset'", "'option'",
189  "'pe'", "'pen'", "'picture'", "'pie'", "'pm'", "'polygon'",
190  "'pop'", "'ps'", "'push'", "'rb'", "'rc'", "'rectangle'",
191  "'red'", "'rl'", "'rm'", "'rp'", "'rs'", "'rt'", "'sb'",
192  "'scroll'", "'sd'", "'se'", "'sf'", "'show'", "'size'",
193  "'sl'", "'sn'", "'sp'", "'sr'", "'swap'", "'sx'", "'text'",
194  "'textwdw'", "'tr'", "'tw'", "'uc'", "'up'", "'vt'", "'wa'",
195  "'wc'", "'wd'", "'wg'", "'white'", "'window'", "'wm'",
196  "'wp'", "'wr'", "'wrap'", "'ws'", "'wx'", "'xp'", "'yellow'",
197  "'zx'", "'_black'", "'_blue'", "'_colour'", "'_green'",
198  "'_magenta'", "'_red'", "'_white'", "'_yellow'"
199  ),
200  ),
201  'SYMBOLS' => array(
202  0 => array('+', '-', '*', '/', '^', '|'),
203  1 => array('++', '--', '+=', '-=', '*=', '/=', '^=', '|='),
204  2 => array('&lt;', '&gt;', '='),
205  3 => array('(', ')', '[', ']', '{', '}'),
206  4 => array(',', '@', ';', '\\')
207  ),
208  'CASE_SENSITIVE' => array(
209  GESHI_COMMENTS => false,
210  1 => false,
211  2 => false,
212  3 => false,
213  4 => false,
214  5 => false,
215  ),
216  'STYLES' => array(
217  'KEYWORDS' => array(
218  1 => 'color: navy;', // Directives
219  2 => 'color: blue;', // System Functions
220  3 => 'color: blue;', // System Variables
221  4 => 'color: #6A5ACD; font-style: italic;', // Nomads Global Variables
222  5 => 'color: #BDB76B;', // Mnemonics
223  ),
224  'COMMENTS' => array(
225  1 => 'color: #008080; font-style: italic;',
226  2 => 'color: #008080;',
227  'MULTI' => 'color: #008080; font-style: italic;'
228  ),
229  'BRACKETS' => array(
230  0 => 'color: #000066;'
231  ),
232  'STRINGS' => array(
233  0 => 'color: green;'
234  ),
235  'NUMBERS' => array(
236  0 => 'color: #00008B;'
237  ),
238  'METHODS' => array(
239  ),
240  'SYMBOLS' => array(
241  0 => 'color: #008000;',
242  1 => 'color: #000099;',
243  2 => 'color: #000099;',
244  3 => 'color: #0000C9;',
245  4 => 'color: #000099;'
246  ),
247  'ESCAPE_CHAR' => array(
248  0 => 'color: #000099;'
249  ),
250  'SCRIPT' => array(
251  ),
252  'REGEXPS' => array(
253  1 => 'color: #006400; font-weight: bold',
254  2 => 'color: #6A5ACD;'
255  )
256  ),
257  'URLS' => array(
258  1 => 'http://www.allbasic.info./wiki/index.php/PX:Directive_{FNAME}',
259  2 => 'http://www.allbasic.info./wiki/index.php/PX:System_function_{FNAME}',
260  3 => 'http://www.allbasic.info./wiki/index.php/PX:System_variable_{FNAME}',
261  4 => 'http://www.allbasic.info./wiki/index.php/PX:Nomads_{FNAME}',
262  5 => 'http://www.allbasic.info./wiki/index.php/PX:Mnemonic_{FNAMEU}'
263  ),
264  'OOLANG' => true,
265  'OBJECT_SPLITTERS' => array(
266  1 => "'"
267  ),
268  'REGEXPS' => array(
269  1 => array(
270  // Line Labels
271  GESHI_SEARCH => '([[:space:]])([a-zA-Z_][a-zA-Z0-9_]+)(:)',
272  GESHI_REPLACE => '\\2',
273  GESHI_MODIFIERS => '',
274  GESHI_BEFORE => '\\1',
275  GESHI_AFTER => '\\3'
276  ),
277  2 => array(
278  // Global String Variables
279  GESHI_SEARCH => '(\%)([a-zA-Z_][a-zA-Z0-9_]+)(\$)',
280  GESHI_REPLACE => '\\1\\2\\3',
281  GESHI_MODIFIERS => '',
282  GESHI_BEFORE => '',
283  GESHI_AFTER => ''
284  )
285  ),
286  'STRICT_MODE_APPLIES' => GESHI_NEVER,
287  'SCRIPT_DELIMITERS' => array(
288  ),
289  'HIGHLIGHT_STRICT_BLOCK' => array(
290  ),
291  'PARSER_CONTROL' => array(
292  'ENABLE_FLAGS' => array(
293  'NUMBERS' => GESHI_NEVER
294  )
295  ),
296  'TAB_WIDTH' => 4
297 );
const GESHI_MODIFIERS
The key of the regex array defining any modifiers to the regular expression.
Definition: geshi.php:137
const GESHI_BEFORE
The key of the regex array defining what bracket group in a matched search to put before the replacem...
Definition: geshi.php:140
const GESHI_COMMENTS
Used in language files to mark comments.
Definition: geshi.php:149
const GESHI_REPLACE
The key of the regex array defining what bracket group in a matched search to use as a replacement...
Definition: geshi.php:135
$language_data
Definition: providex.php:41
const GESHI_SEARCH
The key of the regex array defining what to search for.
Definition: geshi.php:132
const GESHI_NEVER
#+ private
Definition: geshi.php:123
const GESHI_CAPS_NO_CHANGE
Lowercase keywords found.
Definition: geshi.php:94
const GESHI_AFTER
The key of the regex array defining what bracket group in a matched search to put after the replaceme...
Definition: geshi.php:143