1<?php
2/*************************************************************************************
3 * pascal.php
4 * ----------
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.8.3
8 * Date Started: 2004/07/26
9 *
10 * Pascal language file for GeSHi.
11 *
12 * CHANGES
13 * -------
14 * 2008/05/23 (1.0.7.22)
15 *   -  Added description of extra language features (SF#1970248)
16 * 2004/11/27 (1.0.2)
17 *  -  Added support for multiple object splitters
18 * 2004/10/27 (1.0.1)
19 *   -  Added support for URLs
20 * 2004/08/05 (1.0.0)
21 *   -  Added support for symbols
22 * 2004/07/27 (0.9.1)
23 *   -  Pascal is OO language. Some new words.
24 * 2004/07/26 (0.9.0)
25 *   -  First Release
26 *
27 * TODO (updated 2004/11/27)
28 * -------------------------
29 *
30 *************************************************************************************
31 *
32 *     This file is part of GeSHi.
33 *
34 *   GeSHi is free software; you can redistribute it and/or modify
35 *   it under the terms of the GNU General Public License as published by
36 *   the Free Software Foundation; either version 2 of the License, or
37 *   (at your option) any later version.
38 *
39 *   GeSHi is distributed in the hope that it will be useful,
40 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
41 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
42 *   GNU General Public License for more details.
43 *
44 *   You should have received a copy of the GNU General Public License
45 *   along with GeSHi; if not, write to the Free Software
46 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
47 *
48 ************************************************************************************/
49
50$language_data = array (
51    'LANG_NAME' => 'Pascal',
52    'COMMENT_SINGLE' => array(1 => '//'),
53    'COMMENT_MULTI' => array('{' => '}','(*' => '*)'),
54    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
55    'QUOTEMARKS' => array('"'),
56    'HARDQUOTE' => array("'", "'"),
57    'HARDESCAPE' => array("''"),
58    'ESCAPE_CHAR' => '\\',
59    'KEYWORDS' => array(
60        1 => array(
61            'absolute','asm','assembler','begin','break','case','catch','cdecl',
62            'const','constructor','default','destructor','div','do','downto',
63            'else','end','except','export','exports','external','far',
64            'finalization','finally','for','forward','function','goto','if',
65            'implementation','in','index','inherited','initialization','inline',
66            'interface','interrupt','label','library','mod','name','not','of',
67            'or','overload','override','private','procedure','program',
68            'property','protected','public','published','raise','repeat',
69            'resourcestring','shl','shr','stdcall','stored','switch','then',
70            'to','try','type','unit','until','uses','var','while','xor'
71            ),
72        2 => array(
73            'nil', 'false', 'true',
74            ),
75        3 => array(
76            'abs','and','arc','arctan','blockread','blockwrite','chr','dispose',
77            'cos','eof','eoln','exp','get','ln','new','odd','ord','ordinal',
78            'pred','read','readln','sin','sqrt','succ','write','writeln'
79            ),
80        4 => array(
81            'ansistring','array','boolean','byte','bytebool','char','file',
82            'integer','longbool','longint','object','packed','pointer','real',
83            'record','set','shortint','smallint','string','union','word'
84            ),
85        ),
86    'SYMBOLS' => array(
87        ',', ':', '=', '+', '-', '*', '/'
88        ),
89    'CASE_SENSITIVE' => array(
90        GESHI_COMMENTS => false,
91        1 => false,
92        2 => false,
93        3 => false,
94        4 => false,
95        ),
96    'STYLES' => array(
97        'KEYWORDS' => array(
98            1 => 'color: #000000; font-weight: bold;',
99            2 => 'color: #000000; font-weight: bold;',
100            3 => 'color: #000066;',
101            4 => 'color: #000066; font-weight: bold;'
102            ),
103        'COMMENTS' => array(
104            1 => 'color: #666666; font-style: italic;',
105            'MULTI' => 'color: #666666; font-style: italic;'
106            ),
107        'ESCAPE_CHAR' => array(
108            0 => 'color: #000099; font-weight: bold;',
109            'HARD' => 'color: #000099; font-weight: bold;'
110            ),
111        'BRACKETS' => array(
112            0 => 'color: #009900;'
113            ),
114        'STRINGS' => array(
115            0 => 'color: #ff0000;',
116            'HARD' => 'color: #ff0000;'
117            ),
118        'NUMBERS' => array(
119            0 => 'color: #cc66cc;'
120            ),
121        'METHODS' => array(
122            1 => 'color: #0066ee;'
123            ),
124        'SYMBOLS' => array(
125            0 => 'color: #339933;'
126            ),
127        'REGEXPS' => array(
128            ),
129        'SCRIPT' => array(
130            )
131        ),
132    'URLS' => array(
133        1 => '',
134        2 => '',
135        3 => '',
136        4 => ''
137        ),
138    'OOLANG' => true,
139    'OBJECT_SPLITTERS' => array(
140        1 => '.'
141        ),
142    'REGEXPS' => array(
143        ),
144    'STRICT_MODE_APPLIES' => GESHI_NEVER,
145    'SCRIPT_DELIMITERS' => array(
146        ),
147    'HIGHLIGHT_STRICT_BLOCK' => array(
148        ),
149    'TAB_WIDTH' => 4
150);
151
152?>
153