ILIAS  release_5-2 Revision v5.2.25-18-g3f80b82851
erlang.php
Go to the documentation of this file.
1 <?php
2 /*************************************************************************************
3  * erlang.php
4  * --------
5  * Author: Benny Baumann (BenBE@geshi.org)
6  * Contributions:
7  * - Uwe Dauernheim (uwe@dauernheim.net)
8  * - Dan Forest-Barbier (dan@twisted.in)
9  * Copyright: (c) 2008 Uwe Dauernheim (http://www.kreisquadratur.de/)
10  * Release Version: 1.0.8.12
11  * Date Started: 2008-09-27
12  *
13  * Erlang language file for GeSHi.
14  *
15  * CHANGES
16  * -------
17  * 2009/05/02 (1.0.8.3)
18  * - Now using 'PARSER_CONTROL' instead of huge rexgexps, better and cleaner
19  *
20  * 2009/04/26 (1.0.8.3)
21  * - Only link to existing docs / Fixes
22  *
23  * 2008-09-28 (1.0.0.1)
24  * [!] Bug fixed with keyword module.
25  * [+] Added more function names
26  *
27  * 2008-09-27 (1.0.0)
28  * [ ] First Release
29  *
30  * TODO (updated 2008-09-27)
31  * -------------------------
32  * [!] Stop ';' from being transformed to '<SEMI>'
33  *
34  *************************************************************************************
35  *
36  * This file is part of GeSHi.
37  *
38  * GeSHi is free software; you can redistribute it and/or modify
39  * it under the terms of the GNU General Public License as published by
40  * the Free Software Foundation; either version 2 of the License, or
41  * (at your option) any later version.
42  *
43  * GeSHi is distributed in the hope that it will be useful,
44  * but WITHOUT ANY WARRANTY; without even the implied warranty of
45  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
46  * GNU General Public License for more details.
47  *
48  * You should have received a copy of the GNU General Public License
49  * along with GeSHi; if not, write to the Free Software
50  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
51  *
52  ************************************************************************************/
53 
55  'LANG_NAME' => 'Erlang',
56  'COMMENT_SINGLE' => array(1 => '%'),
57  'COMMENT_MULTI' => array(),
58  'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
59  'QUOTEMARKS' => array('"'),
60  'HARDQUOTE' => array("'", "'"),
61  'HARDESCAPE' => array("'", "\\"),
62  'HARDCHAR' => "\\",
63  'ESCAPE_CHAR' => '\\',
65  'KEYWORDS' => array(
66  //Control flow keywrods
67  1 => array(
68  'after', 'andalso', 'begin', 'case', 'catch', 'end', 'fun', 'if',
69  'of', 'orelse', 'receive', 'try', 'when', 'query'
70  ),
71  //Binary operators
72  2 => array(
73  'and', 'band', 'bnot', 'bor', 'bsl', 'bsr', 'bxor', 'div', 'not',
74  'or', 'rem', 'xor'
75  ),
76  3 => array(
77  'abs', 'alive', 'apply', 'atom_to_list', 'binary_to_list',
78  'binary_to_term', 'concat_binary', 'date', 'disconnect_node',
79  'element', 'erase', 'exit', 'float', 'float_to_list', 'get',
80  'get_keys', 'group_leader', 'halt', 'hd', 'integer_to_list',
81  'is_alive', 'length', 'link', 'list_to_atom', 'list_to_binary',
82  'list_to_float', 'list_to_integer', 'list_to_pid', 'list_to_tuple',
83  'load_module', 'make_ref', 'monitor_node', 'node', 'nodes', 'now',
84  'open_port', 'pid_to_list', 'process_flag', 'process_info',
85  'process', 'put', 'register', 'registered', 'round', 'self',
86  'setelement', 'size', 'spawn', 'spawn_link', 'split_binary',
87  'statistics', 'term_to_binary', 'throw', 'time', 'tl', 'trunc',
88  'tuple_to_list', 'unlink', 'unregister', 'whereis'
89  ),
90  // Built-In Functions
91  4 => array(
92  'atom', 'binary', 'constant', 'function', 'integer', 'is_atom',
93  'is_binary', 'is_constant', 'is_function', 'is_integer', 'is_list',
94  'is_number', 'is_pid', 'is_reference', 'is_record', 'list',
95  'number', 'pid', 'ports', 'port_close', 'port_info', 'reference'
96  ),
97  // Erlang/OTP internal modules (scary one)
98  5 => array(
99  'alarm_handler', 'any', 'app', 'application', 'appmon', 'appup',
100  'array', 'asn1ct', 'asn1rt', 'auth', 'base64', 'beam_lib', 'c',
101  'calendar', 'code', 'common_test_app', 'compile', 'config',
102  'corba', 'corba_object', 'cosEventApp', 'CosEventChannelAdmin',
103  'CosEventChannelAdmin_ConsumerAdmin',
104  'CosEventChannelAdmin_EventChannel',
105  'CosEventChannelAdmin_ProxyPullConsumer',
106  'CosEventChannelAdmin_ProxyPullSupplier',
107  'CosEventChannelAdmin_ProxyPushConsumer',
108  'CosEventChannelAdmin_ProxyPushSupplier',
109  'CosEventChannelAdmin_SupplierAdmin', 'CosEventDomainAdmin',
110  'CosEventDomainAdmin_EventDomain',
111  'CosEventDomainAdmin_EventDomainFactory',
112  'cosEventDomainApp', 'CosFileTransfer_Directory',
113  'CosFileTransfer_File', 'CosFileTransfer_FileIterator',
114  'CosFileTransfer_FileTransferSession',
115  'CosFileTransfer_VirtualFileSystem',
116  'cosFileTransferApp', 'CosNaming', 'CosNaming_BindingIterator',
117  'CosNaming_NamingContext', 'CosNaming_NamingContextExt',
118  'CosNotification', 'CosNotification_AdminPropertiesAdmin',
119  'CosNotification_QoSAdmin', 'cosNotificationApp',
120  'CosNotifyChannelAdmin_ConsumerAdmin',
121  'CosNotifyChannelAdmin_EventChannel',
122  'CosNotifyChannelAdmin_EventChannelFactory',
123  'CosNotifyChannelAdmin_ProxyConsumer',
124  'CosNotifyChannelAdmin_ProxyPullConsumer',
125  'CosNotifyChannelAdmin_ProxyPullSupplier',
126  'CosNotifyChannelAdmin_ProxyPushConsumer',
127  'CosNotifyChannelAdmin_ProxyPushSupplier',
128  'CosNotifyChannelAdmin_ProxySupplier',
129  'CosNotifyChannelAdmin_SequenceProxyPullConsumer',
130  'CosNotifyChannelAdmin_SequenceProxyPullSupplier',
131  'CosNotifyChannelAdmin_SequenceProxyPushConsumer',
132  'CosNotifyChannelAdmin_SequenceProxyPushSupplier',
133  'CosNotifyChannelAdmin_StructuredProxyPullConsumer',
134  'CosNotifyChannelAdmin_StructuredProxyPullSupplier',
135  'CosNotifyChannelAdmin_StructuredProxyPushConsumer',
136  'CosNotifyChannelAdmin_StructuredProxyPushSupplier',
137  'CosNotifyChannelAdmin_SupplierAdmin',
138  'CosNotifyComm_NotifyPublish', 'CosNotifyComm_NotifySubscribe',
139  'CosNotifyFilter_Filter', 'CosNotifyFilter_FilterAdmin',
140  'CosNotifyFilter_FilterFactory', 'CosNotifyFilter_MappingFilter',
141  'cosProperty', 'CosPropertyService_PropertiesIterator',
142  'CosPropertyService_PropertyNamesIterator',
143  'CosPropertyService_PropertySet',
144  'CosPropertyService_PropertySetDef',
145  'CosPropertyService_PropertySetDefFactory',
146  'CosPropertyService_PropertySetFactory', 'cosTime',
147  'CosTime_TimeService', 'CosTime_TIO', 'CosTime_UTO',
148  'CosTimerEvent_TimerEventHandler',
149  'CosTimerEvent_TimerEventService', 'cosTransactions',
150  'CosTransactions_Control', 'CosTransactions_Coordinator',
151  'CosTransactions_RecoveryCoordinator', 'CosTransactions_Resource',
152  'CosTransactions_SubtransactionAwareResource',
153  'CosTransactions_Terminator', 'CosTransactions_TransactionFactory',
154  'cover', 'cprof', 'cpu_sup', 'crashdump', 'crypto', 'crypto_app',
155  'ct', 'ct_cover', 'ct_ftp', 'ct_master', 'ct_rpc', 'ct_snmp',
156  'ct_ssh', 'ct_telnet', 'dbg', 'debugger', 'dets', 'dialyzer',
157  'dict', 'digraph', 'digraph_utils', 'disk_log', 'disksup',
158  'docb_gen', 'docb_transform', 'docb_xml_check', 'docbuilder_app',
159  'driver_entry', 'edoc', 'edoc_doclet', 'edoc_extract',
160  'edoc_layout', 'edoc_lib', 'edoc_run', 'egd', 'ei', 'ei_connect',
161  'epmd', 'epp', 'epp_dodger', 'eprof', 'erl', 'erl_boot_server',
162  'erl_call', 'erl_comment_scan', 'erl_connect', 'erl_ddll',
163  'erl_driver', 'erl_error', 'erl_eterm', 'erl_eval',
164  'erl_expand_records', 'erl_format', 'erl_global', 'erl_id_trans',
165  'erl_internal', 'erl_lint', 'erl_malloc', 'erl_marshal',
166  'erl_parse', 'erl_pp', 'erl_prettypr', 'erl_prim_loader',
167  'erl_prim_loader_stub', 'erl_recomment', 'erl_scan',
168  'erl_set_memory_block', 'erl_syntax', 'erl_syntax_lib', 'erl_tar',
169  'erl_tidy', 'erlang', 'erlang_mode', 'erlang_stub', 'erlc',
170  'erlsrv', 'error_handler', 'error_logger', 'erts_alloc',
171  'erts_alloc_config', 'escript', 'et', 'et_collector',
172  'et_selector', 'et_viewer', 'etop', 'ets', 'eunit', 'file',
173  'file_sorter', 'filelib', 'filename', 'fixed', 'fprof', 'ftp',
174  'gb_sets', 'gb_trees', 'gen_event', 'gen_fsm', 'gen_sctp',
175  'gen_server', 'gen_tcp', 'gen_udp', 'gl', 'global', 'global_group',
176  'glu', 'gs', 'heart', 'http', 'httpd', 'httpd_conf',
177  'httpd_socket', 'httpd_util', 'i', 'ic', 'ic_c_protocol',
178  'ic_clib', 'igor', 'inet', 'inets', 'init', 'init_stub',
179  'instrument', 'int', 'interceptors', 'inviso', 'inviso_as_lib',
180  'inviso_lfm', 'inviso_lfm_tpfreader', 'inviso_rt',
181  'inviso_rt_meta', 'io', 'io_lib', 'kernel_app', 'lib', 'lists',
182  'lname', 'lname_component', 'log_mf_h', 'make', 'math', 'megaco',
183  'megaco_codec_meas', 'megaco_codec_transform',
184  'megaco_edist_compress', 'megaco_encoder', 'megaco_flex_scanner',
185  'megaco_tcp', 'megaco_transport', 'megaco_udp', 'megaco_user',
186  'memsup', 'mnesia', 'mnesia_frag_hash', 'mnesia_registry',
187  'mod_alias', 'mod_auth', 'mod_esi', 'mod_security',
188  'Module_Interface', 'ms_transform', 'net_adm', 'net_kernel',
189  'new_ssl', 'nteventlog', 'observer_app', 'odbc', 'orber',
190  'orber_acl', 'orber_diagnostics', 'orber_ifr', 'orber_tc',
191  'orddict', 'ordsets', 'os', 'os_mon', 'os_mon_mib', 'os_sup',
192  'otp_mib', 'overload', 'packages', 'percept', 'percept_profile',
193  'pg', 'pg2', 'pman', 'pool', 'prettypr', 'proc_lib', 'proplists',
194  'public_key', 'qlc', 'queue', 'random', 'rb', 're', 'regexp',
195  'registry', 'rel', 'release_handler', 'reltool', 'relup', 'rpc',
196  'run_erl', 'run_test', 'runtime_tools_app', 'sasl_app', 'script',
197  'seq_trace', 'sets', 'shell', 'shell_default', 'slave', 'snmp',
198  'snmp_app', 'snmp_community_mib', 'snmp_framework_mib',
199  'snmp_generic', 'snmp_index', 'snmp_notification_mib', 'snmp_pdus',
200  'snmp_standard_mib', 'snmp_target_mib', 'snmp_user_based_sm_mib',
201  'snmp_view_based_acm_mib', 'snmpa', 'snmpa_conf', 'snmpa_error',
202  'snmpa_error_io', 'snmpa_error_logger', 'snmpa_error_report',
203  'snmpa_local_db', 'snmpa_mpd', 'snmpa_network_interface',
204  'snmpa_network_interface_filter',
205  'snmpa_notification_delivery_info_receiver',
206  'snmpa_notification_filter', 'snmpa_supervisor', 'snmpc', 'snmpm',
207  'snmpm_conf', 'snmpm_mpd', 'snmpm_network_interface', 'snmpm_user',
208  'sofs', 'ssh', 'ssh_channel', 'ssh_connection', 'ssh_sftp',
209  'ssh_sftpd', 'ssl', 'ssl_app', 'ssl_pkix', 'start', 'start_erl',
210  'start_webtool', 'stdlib_app', 'string', 'supervisor',
211  'supervisor_bridge', 'sys', 'systools', 'tags', 'test_server',
212  'test_server_app', 'test_server_ctrl', 'tftp', 'timer', 'toolbar',
213  'ttb', 'tv', 'unicode', 'unix_telnet', 'user', 'webtool', 'werl',
214  'win32reg', 'wrap_log_reader', 'wx', 'wx_misc', 'wx_object',
215  'wxAcceleratorEntry', 'wxAcceleratorTable', 'wxArtProvider',
216  'wxAuiDockArt', 'wxAuiManager', 'wxAuiNotebook', 'wxAuiPaneInfo',
217  'wxAuiTabArt', 'wxBitmap', 'wxBitmapButton', 'wxBitmapDataObject',
218  'wxBoxSizer', 'wxBrush', 'wxBufferedDC', 'wxBufferedPaintDC',
219  'wxButton', 'wxCalendarCtrl', 'wxCalendarDateAttr',
220  'wxCalendarEvent', 'wxCaret', 'wxCheckBox', 'wxCheckListBox',
221  'wxChildFocusEvent', 'wxChoice', 'wxClientDC', 'wxClipboard',
222  'wxCloseEvent', 'wxColourData', 'wxColourDialog',
223  'wxColourPickerCtrl', 'wxColourPickerEvent', 'wxComboBox',
224  'wxCommandEvent', 'wxContextMenuEvent', 'wxControl',
225  'wxControlWithItems', 'wxCursor', 'wxDataObject', 'wxDateEvent',
226  'wxDatePickerCtrl', 'wxDC', 'wxDialog', 'wxDirDialog',
227  'wxDirPickerCtrl', 'wxDisplayChangedEvent', 'wxEraseEvent',
228  'wxEvent', 'wxEvtHandler', 'wxFileDataObject', 'wxFileDialog',
229  'wxFileDirPickerEvent', 'wxFilePickerCtrl', 'wxFindReplaceData',
230  'wxFindReplaceDialog', 'wxFlexGridSizer', 'wxFocusEvent', 'wxFont',
231  'wxFontData', 'wxFontDialog', 'wxFontPickerCtrl',
232  'wxFontPickerEvent', 'wxFrame', 'wxGauge', 'wxGBSizerItem',
233  'wxGenericDirCtrl', 'wxGLCanvas', 'wxGraphicsBrush',
234  'wxGraphicsContext', 'wxGraphicsFont', 'wxGraphicsMatrix',
235  'wxGraphicsObject', 'wxGraphicsPath', 'wxGraphicsPen',
236  'wxGraphicsRenderer', 'wxGrid', 'wxGridBagSizer', 'wxGridCellAttr',
237  'wxGridCellEditor', 'wxGridCellRenderer', 'wxGridEvent',
238  'wxGridSizer', 'wxHelpEvent', 'wxHtmlEasyPrinting', 'wxIcon',
239  'wxIconBundle', 'wxIconizeEvent', 'wxIdleEvent', 'wxImage',
240  'wxImageList', 'wxJoystickEvent', 'wxKeyEvent',
241  'wxLayoutAlgorithm', 'wxListBox', 'wxListCtrl', 'wxListEvent',
242  'wxListItem', 'wxListView', 'wxMask', 'wxMaximizeEvent',
243  'wxMDIChildFrame', 'wxMDIClientWindow', 'wxMDIParentFrame',
244  'wxMemoryDC', 'wxMenu', 'wxMenuBar', 'wxMenuEvent', 'wxMenuItem',
245  'wxMessageDialog', 'wxMiniFrame', 'wxMirrorDC',
246  'wxMouseCaptureChangedEvent', 'wxMouseEvent', 'wxMoveEvent',
247  'wxMultiChoiceDialog', 'wxNavigationKeyEvent', 'wxNcPaintEvent',
248  'wxNotebook', 'wxNotebookEvent', 'wxNotifyEvent',
249  'wxPageSetupDialog', 'wxPageSetupDialogData', 'wxPaintDC',
250  'wxPaintEvent', 'wxPalette', 'wxPaletteChangedEvent', 'wxPanel',
251  'wxPasswordEntryDialog', 'wxPen', 'wxPickerBase', 'wxPostScriptDC',
252  'wxPreviewCanvas', 'wxPreviewControlBar', 'wxPreviewFrame',
253  'wxPrintData', 'wxPrintDialog', 'wxPrintDialogData', 'wxPrinter',
254  'wxPrintout', 'wxPrintPreview', 'wxProgressDialog',
255  'wxQueryNewPaletteEvent', 'wxRadioBox', 'wxRadioButton',
256  'wxRegion', 'wxSashEvent', 'wxSashLayoutWindow', 'wxSashWindow',
257  'wxScreenDC', 'wxScrollBar', 'wxScrolledWindow', 'wxScrollEvent',
258  'wxScrollWinEvent', 'wxSetCursorEvent', 'wxShowEvent',
259  'wxSingleChoiceDialog', 'wxSizeEvent', 'wxSizer', 'wxSizerFlags',
260  'wxSizerItem', 'wxSlider', 'wxSpinButton', 'wxSpinCtrl',
261  'wxSpinEvent', 'wxSplashScreen', 'wxSplitterEvent',
262  'wxSplitterWindow', 'wxStaticBitmap', 'wxStaticBox',
263  'wxStaticBoxSizer', 'wxStaticLine', 'wxStaticText', 'wxStatusBar',
264  'wxStdDialogButtonSizer', 'wxStyledTextCtrl', 'wxStyledTextEvent',
265  'wxSysColourChangedEvent', 'wxTextAttr', 'wxTextCtrl',
266  'wxTextDataObject', 'wxTextEntryDialog', 'wxToggleButton',
267  'wxToolBar', 'wxToolTip', 'wxTopLevelWindow', 'wxTreeCtrl',
268  'wxTreeEvent', 'wxUpdateUIEvent', 'wxWindow', 'wxWindowCreateEvent',
269  'wxWindowDC', 'wxWindowDestroyEvent', 'wxXmlResource', 'xmerl',
270  'xmerl_eventp', 'xmerl_scan', 'xmerl_xpath', 'xmerl_xs',
271  'xmerl_xsd', 'xref', 'yecc', 'zip', 'zlib', 'zlib_stub'
272  ),
273  // Binary modifiers
274  6 => array(
275  'big', 'binary', 'float', 'integer', 'little', 'signed', 'unit', 'unsigned'
276  )
277  ),
278  'SYMBOLS' => array(
279  0 => array('(', ')', '[', ']', '{', '}'),
280  1 => array('->', ',', ';', '.'),
281  2 => array('<<', '>>'),
282  3 => array('=', '||', '-', '+', '*', '/', '++', '--', '!', '<', '>', '>=',
283  '=<', '==', '/=', '=:=', '=/=')
284  ),
285  'CASE_SENSITIVE' => array(
286  GESHI_COMMENTS => false,
287  1 => true,
288  2 => true,
289  3 => true,
290  4 => true,
291  5 => true,
292  6 => true
293  ),
294  'STYLES' => array(
295  'KEYWORDS' => array(
296  1 => 'color: #186895;',
297  2 => 'color: #014ea4;',
298  3 => 'color: #fa6fff;',
299  4 => 'color: #fa6fff;',
300  5 => 'color: #ff4e18;',
301  6 => 'color: #9d4f37;'
302  ),
303  'COMMENTS' => array(
304  1 => 'color: #666666; font-style: italic;',
305  'MULTI' => 'color: #666666; font-style: italic;'
306  ),
307  'ESCAPE_CHAR' => array(
308  0 => 'color: #000099; font-weight: bold;',
309  'HARD' => 'color: #000099; font-weight: bold;'
310  ),
311  'BRACKETS' => array(
312  0 => 'color: #109ab8;'
313  ),
314  'STRINGS' => array(
315  0 => 'color: #ff7800;'
316  ),
317  'NUMBERS' => array(
318  0 => 'color: #ff9600;'
319  ),
320  'METHODS' => array(
321  1 => 'color: #006600;',
322  2 => 'color: #006600;'
323  ),
324  'SYMBOLS' => array(
325  0 => 'color: #004866;',
326  1 => 'color: #6bb810;',
327  2 => 'color: #ee3800;',
328  3 => 'color: #014ea4;'
329  ),
330  'REGEXPS' => array(
331  0 => 'color: #6941fd;',
332  1 => 'color: #d400ed;',
333  2 => 'color: #5400b3;',
334  3 => 'color: #ff3c00;',
335  4 => 'color: #6941fd;',
336  5 => 'color: #45b3e6;',
337  6 => 'color: #ff9600;',
338  7 => 'color: #d400ed;',
339  8 => 'color: #ff9600;'
340  ),
341  'SCRIPT' => array(
342  )
343  ),
344  'URLS' => array(
345  1 => '',
346  2 => '',
347  3 => '',
348  4 => '',
349  5 => 'http://erlang.org/doc/man/{FNAME}.html',
350  6 => ''
351  ),
352  'OOLANG' => true,
353  'OBJECT_SPLITTERS' => array(
354  1 => '-&gt;',
355  2 => ':'
356  ),
357  'REGEXPS' => array(
358  //�Macro definitions
359  0 => array(
360  GESHI_SEARCH => '(-define\s*\()([a-zA-Z0-9_]+)(\(|,)',
361  GESHI_REPLACE => '\2',
362  GESHI_MODIFIERS => '',
363  GESHI_BEFORE => '\1',
364  GESHI_AFTER => '\3'
365  ),
366  // Record definitions
367  1 => array(
368  GESHI_SEARCH => '(-record\s*\()([a-zA-Z0-9_]+)(,)',
369  GESHI_REPLACE => '\2',
370  GESHI_MODIFIERS => '',
371  GESHI_BEFORE => '\1',
372  GESHI_AFTER => '\3'
373  ),
374  // Precompiler directives
375  2 => array(
376  GESHI_SEARCH => '(-)([a-z][a-zA-Z0-9_]*)(\()',
377  GESHI_REPLACE => '\2',
378  GESHI_MODIFIERS => '',
379  GESHI_BEFORE => '\1',
380  GESHI_AFTER => '\3'
381  ),
382  // Functions
383  3 => array(
384  GESHI_SEARCH => '([a-z]\w*|\'\w*\')(\s*\()',
385  GESHI_REPLACE => '\1',
386  GESHI_MODIFIERS => '',
387  GESHI_BEFORE => '',
388  GESHI_AFTER => '\2'
389  ),
390  // Macros
391  4 => array(
392  GESHI_SEARCH => '(\?)([a-zA-Z0-9_]+)',
393  GESHI_REPLACE => '\2',
394  GESHI_MODIFIERS => '',
395  GESHI_BEFORE => '\1',
396  GESHI_AFTER => ''
397  ),
398  // Variables - With hack to avoid interfering wish GeSHi internals
399  5 => array(
400  GESHI_SEARCH => '([([{,<+*-\/=\s!]|&lt;)(?!(?:PIPE|SEMI|DOT|NUM|REG3XP\d*)\W)([A-Z_]\w*)(?!\w)',
401  GESHI_REPLACE => '\2',
402  GESHI_MODIFIERS => '',
403  GESHI_BEFORE => '\1',
404  GESHI_AFTER => ''
405  ),
406  // ASCII�codes
407  6 => '(\$[a-zA-Z0-9_])',
408  // Records
409  7 => array(
410  GESHI_SEARCH => '(#)([a-z][a-zA-Z0-9_]*)(\.|\{)',
411  GESHI_REPLACE => '\2',
412  GESHI_MODIFIERS => '',
413  GESHI_BEFORE => '\1',
414  GESHI_AFTER => '\3'
415  ),
416  // Numbers with a different radix
417  8 => '(?<=>)(#[a-zA-Z0-9]*)'
418  ),
419  'STRICT_MODE_APPLIES' => GESHI_NEVER,
420  'SCRIPT_DELIMITERS' => array(),
421  'HIGHLIGHT_STRICT_BLOCK' => array(),
422  'TAB_WIDTH' => 4,
423  'PARSER_CONTROL' => array(
424  'KEYWORDS' => array(
425  3 => array(
426  'DISALLOWED_BEFORE' => '(?<![\w])',
427  'DISALLOWED_AFTER' => ''//'(?=\s*\()'
428  ),
429  5 => array(
430  'DISALLOWED_BEFORE' => '(?<=\'|)',
431  'DISALLOWED_AFTER' => '(?=(\'|):)'
432  ),
433  6 => array(
434  'DISALLOWED_BEFORE' => '(?<=\/|-)',
435  'DISALLOWED_AFTER' => ''
436  )
437  )
438  )
439 );
$language_data
Definition: erlang.php:54
const GESHI_MODIFIERS
The key of the regex array defining any modifiers to the regular expression.
Definition: geshi.php:138
const GESHI_NUMBER_FLT_SCI_ZERO
Number format to highlight floating-point numbers with support for scientific notation (E) and requir...
Definition: geshi.php:229
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:141
const GESHI_COMMENTS
Used in language files to mark comments.
Definition: geshi.php:150
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:136
const GESHI_SEARCH
The key of the regex array defining what to search for.
Definition: geshi.php:133
Create styles array
The data for the language used.
const GESHI_NEVER
#+ private
Definition: geshi.php:124
const GESHI_NUMBER_INT_BASIC
Basic number format for integers.
Definition: geshi.php:199
const GESHI_CAPS_NO_CHANGE
Lowercase keywords found.
Definition: geshi.php:95
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:144