2 /*************************************************************************************
5 * Author: Tux (tux@inamil.cz)
6 * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
7 * Release Version: 1.0.7.19
8 * Date Started: 2004/07/26
10 * Pascal language file for GeSHi.
15 * - Added support for multiple object splitters
17 * - Added support for URLs
19 * - Added support for symbols
21 * - Pascal is OO language. Some new words.
25 * TODO (updated 2004/11/27)
26 * -------------------------
28 *************************************************************************************
30 * This file is part of GeSHi.
32 * GeSHi is free software; you can redistribute it and/or modify
33 * it under the terms of the GNU General Public License as published by
34 * the Free Software Foundation; either version 2 of the License, or
35 * (at your option) any later version.
37 * GeSHi is distributed in the hope that it will be useful,
38 * but WITHOUT ANY WARRANTY; without even the implied warranty of
39 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
40 * GNU General Public License for more details.
42 * You should have received a copy of the GNU General Public License
43 * along with GeSHi; if not, write to the Free Software
44 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
46 ************************************************************************************/
48 $language_data = array (
49 'LANG_NAME' => 'Pascal',
50 'COMMENT_SINGLE' => array(1 => '//'),
51 'COMMENT_MULTI' => array('{' => '}','(*' => '*)'),
52 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE
,
53 'QUOTEMARKS' => array("'", '"'),
54 'ESCAPE_CHAR' => '\\',
57 'if', 'while', 'until', 'repeat', 'default',
58 'do', 'else', 'for', 'switch', 'goto','label','asm','begin','end',
59 'assembler','case', 'downto', 'to','div','mod','far','forward','in','inherited',
60 'inline','interrupt','label','library','not','var','of','then','stdcall',
61 'cdecl','end.','raise','try','except','name','finally','resourcestring','override','overload',
62 'default','public','protected','private','property','published','stored','catch'
65 'nil', 'false', 'break', 'true', 'function', 'procedure','implementation','interface',
66 'unit','program','initialization','finalization','uses'
69 'abs', 'absolute','and','arc','arctan','chr','constructor','destructor',
70 'dispose','cos','eof','eoln','exp','get','index','ln','new','xor','write','writeln',
71 'shr','sin','sqrt','succ','pred','odd','read','readln','ord','ordinal','blockread','blockwrite'
74 'array', 'char', 'const', 'boolean', 'real', 'integer', 'longint',
75 'word', 'shortint', 'record','byte','bytebool','string',
76 'type','object','export','exports','external','file','longbool','pointer','set',
77 'packed','ansistring','union'
82 'CASE_SENSITIVE' => array(
83 GESHI_COMMENTS
=> true
,
91 1 => 'color: #b1b100;',
92 2 => 'color: #000000; font-weight: bold;',
94 4 => 'color: #993333;'
97 1 => 'color: #808080; font-style: italic;',
98 2 => 'color: #339933;',
99 'MULTI' => 'color: #808080; font-style: italic;'
101 'ESCAPE_CHAR' => array(
102 0 => 'color: #000099; font-weight: bold;'
105 0 => 'color: #66cc66;'
108 0 => 'color: #ff0000;'
111 0 => 'color: #cc66cc;'
114 1 => 'color: #202020;'
117 0 => 'color: #66cc66;'
131 'OBJECT_SPLITTERS' => array(
136 'STRICT_MODE_APPLIES' => GESHI_NEVER
,
137 'SCRIPT_DELIMITERS' => array(
139 'HIGHLIGHT_STRICT_BLOCK' => array(