ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
oz.php
Go to the documentation of this file.
1 <?php
2 /*************************************************************************************
3  * oz.php
4  * --------
5  * Author: Wolfgang Meyer (Wolfgang.Meyer@gmx.net)
6  * Copyright: (c) 2010 Wolfgang Meyer
7  * Release Version: 1.0.9.0
8  * Date Started: 2010/01/03
9  *
10  * Oz language file for GeSHi.
11  *
12  * CHANGES
13  * -------
14  *
15  *************************************************************************************
16  *
17  * This file is part of GeSHi.
18  *
19  * GeSHi is free software; you can redistribute it and/or modify
20  * it under the terms of the GNU General Public License as published by
21  * the Free Software Foundation; either version 2 of the License, or
22  * (at your option) any later version.
23  *
24  * GeSHi is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27  * GNU General Public License for more details.
28  *
29  * You should have received a copy of the GNU General Public License
30  * along with GeSHi; if not, write to the Free Software
31  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
32  *
33  ************************************************************************************/
34 
36  'LANG_NAME' => 'OZ',
37  'COMMENT_SINGLE' => array(1 => '%'),
38  'COMMENT_MULTI' => array('/*' => '*/'),
39  'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
40  'QUOTEMARKS' => array('"','\''),
41  'ESCAPE_CHAR' => '\\',
42  'NUMBERS' => array(),
43  'KEYWORDS' => array(
44  1 => array(
45  'declare','local','in','end','proc','fun','functor','require','prepare',
46  'import','export','define','at','case','then','else','of','elseof',
47  'elsecase','if','elseif','class','from','prop','attr','feat','meth',
48  'self','true','false','unit','div','mod','andthen','orelse','cond','or',
49  'dis','choice','not','thread','try','catch','finally','raise','lock',
50  'skip','fail','for','do'
51  )
52  ),
53  'CASE_SENSITIVE' => array(
54  GESHI_COMMENTS => false,
55  1 => true
56  ),
57  'SYMBOLS' => array(
58  '@', '!', '|', '<-', ':=', '<', '>', '=<', '>=', '<=', '#', '~', '.',
59  '*', '-', '+', '/', '<:', '>:', '=:', '=<:', '>=:', '\\=', '\\=:', ',',
60  '!!', '...', '==', '::', ':::'
61  ),
62  'STYLES' => array(
63  'REGEXPS' => array(
64  1 => 'color: #0000ff;',
65  2 => 'color: #00a030;',
66  3 => 'color: #bc8f8f;',
67  4 => 'color: #0000ff;',
68  5 => 'color: #a020f0;'
69  ),
70  'ESCAPE_CHAR' => array(
71  0 => 'color: #bc8f8f;'
72  ),
73  'KEYWORDS' => array(
74  1 => 'color: #a020f0;'
75  ),
76  'COMMENTS' => array(
77  1 => 'color: #B22222;',
78  'MULTI' => 'color: #B22222;'
79  ),
80  'STRINGS' => array(
81  0 => 'color: #bc8f8f;'
82  ),
83  'SYMBOLS' => array(
84  0 => 'color: #a020f0;'
85  ),
86  'BRACKETS' => array(),
87  'NUMBERS' => array(),
88  'METHODS' => array(),
89  'SCRIPT' => array()
90  ),
91  'OOLANG' => false,
92  'OBJECT_SPLITTERS' => array(),
93  'STRICT_MODE_APPLIES' => GESHI_MAYBE,
94  'SCRIPT_DELIMITERS' => array(),
95  'HIGHLIGHT_STRICT_BLOCK' => array(),
96  'URLS' => array(
97  1 => ''
98  ),
99  'REGEXPS' => array(
100  // function and procedure definition
101  1 => array(
102  GESHI_SEARCH => "(proc|fun)([^{}\n\)]*)(\\{)([\$A-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9_.]*)",
103  GESHI_REPLACE => '\4',
104  GESHI_MODIFIERS => '',
105  GESHI_BEFORE => '\1\2\3',
106  GESHI_AFTER => ''
107  ),
108  // class definition
109  2 => array(
110  GESHI_SEARCH => "(class)([^A-Z\$]*)([\$A-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9_.]*)",
111  GESHI_REPLACE => '\3\4',
112  GESHI_MODIFIERS => '',
113  GESHI_BEFORE => '\1\2',
114  GESHI_AFTER => ''
115  ),
116  // single character
117  3 => array(
118  GESHI_SEARCH => "&amp;.",
119  GESHI_REPLACE => '\0',
120  GESHI_MODIFIERS => '',
121  GESHI_BEFORE => '',
122  GESHI_AFTER => ''
123  ),
124  // method definition
125  4 => array(
126  GESHI_SEARCH => "(meth)([^a-zA-Z]+)([a-zA-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9]*)",
127  GESHI_REPLACE => '\3',
128  GESHI_MODIFIERS => '',
129  GESHI_BEFORE => '\1\2',
130  GESHI_AFTER => ''
131  ),
132  // highlight "[]"
133  // ([] is actually a keyword, but that causes problems in validation; putting it into symbols doesn't work.)
134  5 => array(
135  GESHI_SEARCH => "\[\]",
136  GESHI_REPLACE => '\0',
137  GESHI_MODIFIERS => '',
138  GESHI_BEFORE => '',
139  GESHI_AFTER => ''
140  )
141  )
142 );
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
const GESHI_SEARCH
The key of the regex array defining what to search for.
Definition: geshi.php:132
Create styles array
The data for the language used.
const GESHI_MAYBE
Strict mode might apply, and can be enabled or disabled by GeSHi->enable_strict_mode().
Definition: geshi.php:126
$language_data
Definition: oz.php:35
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