|
1 <?php |
|
2 /************************************************************************************* |
|
3 * d.php |
|
4 * ----- |
|
5 * Author: Thomas Kuehne (thomas@kuehne.cn) |
|
6 * Copyright: (c) 2005 Thomas Kuehne (http://thomas.kuehne.cn/) |
|
7 * Release Version: 1.0.7.20 |
|
8 * Date Started: 2005/04/22 |
|
9 * |
|
10 * D language file for GeSHi. |
|
11 * |
|
12 * CHANGES |
|
13 * ------- |
|
14 * 2005/04/22 (0.0.2) |
|
15 * - added _d_* and sizeof/ptrdiff_t |
|
16 * 2005/04/20 (0.0.1) |
|
17 * - First release |
|
18 * |
|
19 * TODO (updated 2005/04/22) |
|
20 * ------------------------- |
|
21 * * nested comments |
|
22 * * correct handling of r"" and `` |
|
23 * * correct handling of ... and .. |
|
24 * |
|
25 ************************************************************************************* |
|
26 * |
|
27 * This file is part of GeSHi. |
|
28 * |
|
29 * GeSHi is free software; you can redistribute it and/or modify |
|
30 * it under the terms of the GNU General Public License as published by |
|
31 * the Free Software Foundation; either version 2 of the License, or |
|
32 * (at your option) any later version. |
|
33 * |
|
34 * GeSHi is distributed in the hope that it will be useful, |
|
35 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
36 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
37 * GNU General Public License for more details. |
|
38 * |
|
39 * You should have received a copy of the GNU General Public License |
|
40 * along with GeSHi; if not, write to the Free Software |
|
41 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
42 * |
|
43 ************************************************************************************/ |
|
44 |
|
45 $language_data = array ( |
|
46 'LANG_NAME' => 'D', |
|
47 'COMMENT_SINGLE' => array(1 => '//'), |
|
48 'COMMENT_MULTI' => array('/*' => '*/'), |
|
49 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, |
|
50 'QUOTEMARKS' => array('"', "'", '`'), |
|
51 'ESCAPE_CHAR' => '\\', |
|
52 'KEYWORDS' => array( |
|
53 1 => array( |
|
54 'while', |
|
55 'switch', |
|
56 'if', |
|
57 'foreach', |
|
58 'for', |
|
59 'goto', |
|
60 'return', |
|
61 'else', |
|
62 'do', |
|
63 'case', |
|
64 'continue', |
|
65 'break' |
|
66 ), |
|
67 2 => array( |
|
68 'with', |
|
69 'union', |
|
70 'typeof', |
|
71 'typeid', |
|
72 'typedef', |
|
73 'try', |
|
74 'true', |
|
75 'throw', |
|
76 'this', |
|
77 'super', |
|
78 'pragma', |
|
79 'out', |
|
80 'null', |
|
81 'new', |
|
82 'module', |
|
83 'mixin', |
|
84 'is', |
|
85 'invariant', |
|
86 'interface', |
|
87 'inout', |
|
88 'in', |
|
89 'import', |
|
90 'function', |
|
91 'finally', |
|
92 'false', |
|
93 'extern', |
|
94 'delete', |
|
95 'delegate', |
|
96 'default', |
|
97 'catch', |
|
98 'cast', |
|
99 'body', |
|
100 'assert', |
|
101 'asm', |
|
102 'alias' |
|
103 ), |
|
104 3 => array( |
|
105 'TypeInfo', |
|
106 'SwitchError', |
|
107 'OutOfMemoryException', |
|
108 'Object', |
|
109 'ModuleInfo', |
|
110 'Interface', |
|
111 'Exception', |
|
112 'Error', |
|
113 'ClassInfo', |
|
114 'ArrayBoundsError', |
|
115 'AssertError', |
|
116 '_d_throw', |
|
117 '_d_switch_ustring', |
|
118 '_d_switch_string', |
|
119 '_d_switch_dstring', |
|
120 '_d_OutOfMemory', |
|
121 '_d_obj_eq', |
|
122 '_d_obj_cmp', |
|
123 '_d_newclass', |
|
124 '_d_newbitarray', |
|
125 '_d_newarrayi', |
|
126 '_d_new', |
|
127 '_d_monitorrelease', |
|
128 '_d_monitor_prolog', |
|
129 '_d_monitor_handler', |
|
130 '_d_monitorexit', |
|
131 '_d_monitor_epilog', |
|
132 '_d_monitorenter', |
|
133 '_d_local_unwind', |
|
134 '_d_isbaseof2', |
|
135 '_d_isbaseof', |
|
136 '_d_invariant', |
|
137 '_d_interface_vtbl', |
|
138 '_d_interface_cast', |
|
139 '_d_framehandler', |
|
140 '_d_exception_filter', |
|
141 '_d_exception', |
|
142 '_d_dynamic_cast', |
|
143 '_d_delmemory', |
|
144 '_d_delinterface', |
|
145 '_d_delclass', |
|
146 '_d_delarray', |
|
147 '_d_criticalexit', |
|
148 '_d_criticalenter', |
|
149 '_d_create_exception_object', |
|
150 '_d_callfinalizer', |
|
151 '_d_arraysetlengthb', |
|
152 '_d_arraysetlength', |
|
153 '_d_arraysetbit2', |
|
154 '_d_arraysetbit', |
|
155 '_d_arraycopybit', |
|
156 '_d_arraycopy', |
|
157 '_d_arraycatn', |
|
158 '_d_arraycatb', |
|
159 '_d_arraycat', |
|
160 '_d_arraycast_frombit', |
|
161 '_d_arraycast', |
|
162 '_d_arrayappendcb', |
|
163 '_d_arrayappendc', |
|
164 '_d_arrayappendb', |
|
165 '_d_arrayappend', |
|
166 ), |
|
167 4 => array( |
|
168 'wchar', |
|
169 'volatile', |
|
170 'void', |
|
171 'version', |
|
172 'ushort', |
|
173 'unittest', |
|
174 'ulong', |
|
175 'uint', |
|
176 'ucent', |
|
177 'ubyte', |
|
178 'template', |
|
179 'struct', |
|
180 'static', |
|
181 'synchronized', |
|
182 'size_t', |
|
183 'short', |
|
184 'real', |
|
185 'public', |
|
186 'protected', |
|
187 'private', |
|
188 'ptrdiff_t', |
|
189 'package', |
|
190 'override', |
|
191 'long', |
|
192 'int', |
|
193 'ireal', |
|
194 'ifloat', |
|
195 'idouble', |
|
196 'float', |
|
197 'final', |
|
198 'export', |
|
199 'enum', |
|
200 'double', |
|
201 'deprecated', |
|
202 'debug', |
|
203 'dchar', |
|
204 'creal', |
|
205 'const', |
|
206 'class', |
|
207 'char', |
|
208 'cfloat', |
|
209 'cent', |
|
210 'cdouble', |
|
211 'byte', |
|
212 'bool', |
|
213 'bit', |
|
214 'auto', |
|
215 'align', |
|
216 'abstract' |
|
217 ) |
|
218 ), |
|
219 'SYMBOLS' => array( |
|
220 '(', ')', '[', ']', '{', '}', '?', '!', ';', ':', ',', '...', '..', |
|
221 '+', '-', '*', '/', '%', '&', '|', '^', '<', '>', '=', '~', |
|
222 ), |
|
223 'CASE_SENSITIVE' => array( |
|
224 GESHI_COMMENTS => true, |
|
225 1 => true, |
|
226 2 => true, |
|
227 3 => true, |
|
228 4 => true |
|
229 ), |
|
230 'STYLES' => array( |
|
231 'KEYWORDS' => array( |
|
232 1 => 'color: #b1b100;', |
|
233 2 => 'color: #000000; font-weight: bold;', |
|
234 3 => 'color: #aaaadd; font-weight: bold;', |
|
235 4 => 'color: #993333;' |
|
236 ), |
|
237 'COMMENTS' => array( |
|
238 1=> 'color: #808080; font-style: italic;', |
|
239 2=> 'color: #a1a100;', |
|
240 'MULTI' => 'color: #808080; font-style: italic;' |
|
241 ), |
|
242 'ESCAPE_CHAR' => array( |
|
243 0 => 'color: #000099; font-weight: bold;' |
|
244 ), |
|
245 'BRACKETS' => array( |
|
246 0 => 'color: #66cc66;' |
|
247 ), |
|
248 'STRINGS' => array( |
|
249 0 => 'color: #ff0000;' |
|
250 ), |
|
251 'NUMBERS' => array( |
|
252 0 => 'color: #cc66cc;' |
|
253 ), |
|
254 'METHODS' => array( |
|
255 1 => 'color: #006600;', |
|
256 2 => 'color: #006600;' |
|
257 ), |
|
258 'SYMBOLS' => array( |
|
259 0 => 'color: #66cc66;' |
|
260 ), |
|
261 'SCRIPT' => array( |
|
262 ), |
|
263 'REGEXPS' => array( |
|
264 ) |
|
265 ), |
|
266 'URLS' => array( |
|
267 1 => '', |
|
268 2 => '', |
|
269 3 => '', |
|
270 4 => '' |
|
271 ), |
|
272 'OOLANG' => true, |
|
273 'OBJECT_SPLITTERS' => array( |
|
274 1 => '.', |
|
275 ), |
|
276 'REGEXPS' => array( |
|
277 ), |
|
278 'STRICT_MODE_APPLIES' => GESHI_NEVER, |
|
279 'SCRIPT_DELIMITERS' => array( |
|
280 ), |
|
281 'HIGHLIGHT_STRICT_BLOCK' => array( |
|
282 ) |
|
283 ); |
|
284 |
|
285 ?> |