1<?php
2/*************************************************************************************
3 * dcl.php
4 * --------
5 * Author: Petr Hendl (petr@hendl.cz)
6 * Copyright: (c) 2011 Petr Hendl http://hendl.cz/geshi/
7 * Release Version: 1.0.9.1
8 * Date Started: 2011/02/17
9 *
10 * DCL language file for GeSHi.
11 *
12 * CHANGES
13 * -------
14 * 2011-02-17 (1.0.8.11)
15 *   - First Release
16 *
17 * TODO
18 * -------------------------
19 *
20 *************************************************************************************
21 *
22 *     This file is part of GeSHi.
23 *
24 *   GeSHi is free software; you can redistribute it and/or modify
25 *   it under the terms of the GNU General Public License as published by
26 *   the Free Software Foundation; either version 2 of the License, or
27 *   (at your option) any later version.
28 *
29 *   GeSHi is distributed in the hope that it will be useful,
30 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
31 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
32 *   GNU General Public License for more details.
33 *
34 *   You should have received a copy of the GNU General Public License
35 *   along with GeSHi; if not, write to the Free Software
36 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
37 *
38 ************************************************************************************/
39
40$language_data = array (
41    'LANG_NAME' => 'DCL',
42    'COMMENT_SINGLE' => array('$!', '!'),
43    'COMMENT_MULTI' => array(),
44    'COMMENT_REGEXP' => array(
45        2 => '/(?<=\$)\s*sql\s+.*?(?:quit|exit);?\s*?$/sim' // do not highlight inline sql
46        ),
47    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
48    'QUOTEMARKS' => array('"'),
49    'HARDESCAPE' => array(),
50    'ESCAPE_CHAR' => '',
51    'ESCAPE_REGEXP' => array(
52        1 => "/''[a-zA-Z\\-_]+'/"
53        ),
54    'KEYWORDS' => array(
55        1 => array( // commands
56            'ACCOUNTING', 'ALLOCATE', 'ANALYZE', 'APPEND', 'ASSIGN', 'ATTACH', 'BACKUP',
57            'CALL', 'CANCEL', 'CHECKSUM', 'CLOSE', 'CONNECT', 'CONTINUE', 'CONVERT',
58            'COPY', 'CREATE', 'DEALLOCATE', 'DEASSIGN', 'DEBUG', 'DECK',
59            'DECRYPT', 'DEFINE', 'DELETE', 'DEPOSIT', 'DIFFERENCES', 'DIRECTORY',
60            'DISABLE',  'AUTOSTART', 'DISCONNECT', 'DISMOUNT', 'DUMP', 'EDIT', 'ENABLE',
61            'ENCRYPT', 'ENDSUBROUTINE', 'EOD', 'EOJ', 'EXAMINE', 'EXCHANGE',
62            'EXIT', 'FONT', 'GOSUB', 'GOTO', 'HELP', 'IF', 'THEN', 'ELSE', 'ENDIF', 'INITIALIZE', 'INQUIRE',
63            'INSTALL', 'JAVA', 'JOB', 'LIBRARY', 'LICENSE', 'LINK', 'LOGIN', 'LOGOUT',
64            'MACRO', 'MAIL', 'MERGE', 'MESSAGE', 'MONITOR', 'MOUNT', 'NCS', 'ON', 'OPEN',
65            'PASSWORD', 'PATCH', 'PHONE', 'PIPE', 'PPPD', 'PRINT', 'PRODUCT', 'PURGE',
66            'READ', 'RECALL', 'RENAME', 'REPLY', 'REQUEST', 'RETURN', 'RMU', 'RUN', 'RUNOFF',
67            'SEARCH', 'SET', 'SET AUDIT', 'SET BOOTBLOCK', 'SET BROADCAST',
68            'SET CACHE', 'SET CARD_READER', 'SET CLUSTER', 'SET COMMAND', 'SET CONTROL',
69            'SET CPU', 'SET DAY', 'SET DEFAULT', 'SET DEVICE', 'SET DIRECTORY',
70            'SET DISPLAY', 'SET ENTRY', 'SET FILE', 'SET HOST', 'SET IMAGE', 'SET KEY',
71            'SET LOGINS', 'SET MAGTAPE', 'SET MESSAGE', 'SET NETWORK', 'SET ON', 'SET OUTPUT_RATE',
72            'SET PASSWORD', 'SET PREFERRED_PATH', 'SET PREFIX', 'SET PRINTER', 'SET PROCESS',
73            'SET PROMPT', 'SET PROTECTION', 'SET QUEUE', 'SET RESTART_VALUE',
74            'SET RIGHTS_LIST', 'SET RMS_DEFAULT', 'SET ROOT', 'SET SECURITY',
75            'SET SERVER ACME_SERVER', 'SET SERVER REGISTRY_SERVER', 'SET SERVER SECURITY_SERVER',
76            'SET SHADOW', 'SET SYMBOL', 'SET TERMINAL', 'SET TIME', 'SET VERIFY',
77            'SET VOLUME', 'SET WORKING_SET', 'SHOW', 'SHOW AUDIT',
78            'SHOW BROADCAST', 'SHOW CLUSTER', 'SHOW CPU', 'SHOW DEFAULT', 'SHOW DEVICES',
79            'SHOW DISPLAY', 'SHOW ENTRY', 'SHOW ERROR', 'SHOW FASTPATH', 'SHOW IMAGE',
80            'SHOW INTRUSION', 'SHOW KEY', 'SHOW LICENSE', 'SHOW LOGICAL', 'SHOW MEMORY',
81            'SHOW NETWORK', 'SHOW PRINTER', 'SHOW PROCESS', 'SHOW PROTECTION', 'SHOW QUEUE',
82            'SHOW QUOTA', 'SHOW RMS_DEFAULT', 'SHOW ROOT', 'SHOW SECURITY',
83            'SHOW SERVER ACME_SERVER', 'SHOW SERVER REGISTRY_SERVER', 'SHOW SHADOW',
84            'SHOW STATUS', 'SHOW SYMBOL', 'SHOW SYSTEM', 'SHOW TERMINAL', 'SHOW TIME',
85            'SHOW TRANSLATION', 'SHOW USERS', 'SHOW WORKING_SET', 'SHOW ZONE', 'SORT',
86            'SPAWN', 'START', 'STOP', 'SUBMIT', 'SUBROUTINE', 'SYNCHRONIZE', 'TYPE',
87            'UNLOCK', 'VIEW', 'WAIT', 'WRITE', 'XAUTH'
88            ),
89        2 => array( // lexical functions
90            'F$CONTEXT', 'F$CSID', 'F$CUNITS', 'F$CVSI', 'F$CVTIME', 'F$CVUI',
91            'F$DELTA_TIME', 'F$DEVICE', 'F$DIRECTORY', 'F$EDIT', 'F$ELEMENT',
92            'F$ENVIRONMENT', 'F$EXTRACT', 'F$FAO', 'F$FID_TO_NAME', 'F$FILE_ATTRIBUTES',
93            'F$GETDVI', 'F$GETENV', 'F$GETJPI', 'F$GETQUI', 'F$GETSYI', 'F$IDENTIFIER',
94            'F$INTEGER', 'F$LENGTH', 'F$LICENSE', 'F$LOCATE', 'F$MATCH_WILD', 'F$MESSAGE',
95            'F$MODE', 'F$MULTIPATH', 'F$PARSE', 'F$PID', 'F$PRIVILEGE', 'F$PROCESS',
96            'F$SEARCH', 'F$SETPRV', 'F$STRING', 'F$TIME', 'F$TRNLNM', 'F$TYPE', 'F$UNIQUE',
97            'F$USER', 'F$VERIFY'
98            ),
99        3 => array( // special variables etc
100            'sql$database', 'P1', 'P2', 'P3', 'P4', 'P5', 'P6', 'P7', 'P8', 'P9',
101            '$status', '$severity', 'sys$login', 'sys$system',
102            'sys$input', 'sys$output', 'sys$pipe'
103            )
104        ),
105    'SYMBOLS' => array(
106        '(', ')', '[', ']', '@', '&', '|', '<', '>', '-',
107        '.eqs.', '.eq.', '.lt.', '.lts.', '.gt.', '.gts.', '.ne.', '.nes.',
108        '.le.', '.ge.', '.ges.', '.les.',
109        '.EQS.', '.EQ.', '.LT.', '.LTS.', '.GT.', '.GTS.', '.NE.', '.NES.',
110        '.LE.', '.GE.', '.GES.', '.LES.',
111        '.and.', '.or.', '.not.',
112        '.AND.', '.OR.', '.NOT.',
113        '==', ':==', '=', ':='
114        ),
115    'CASE_SENSITIVE' => array(
116        GESHI_COMMENTS => false,
117        1 => false,
118        2 => false,
119        3 => false
120        ),
121    'STYLES' => array(
122        'KEYWORDS' => array(
123            1 => 'color: #000099; font-weight: bold;',
124            2 => 'color: #0066FF;',
125            3 => 'color: #993300;'
126            ),
127        'COMMENTS' => array(
128            0 => 'color: #666666; font-style: italic;',
129            1 => 'color: #666666; font-style: italic;',
130            2 => 'color: #9999FF; font-style: italic;'
131            ),
132        'ESCAPE_CHAR' => array(
133            0 => 'color: #006666;',
134            1 => 'color: #0099FF;',
135            2 => 'color: red;',
136            3 => 'color: #007800;',
137            4 => 'color: #007800;',
138            5 => 'color: #780078;'
139            ),
140        'BRACKETS' => array(
141            0 => 'color: #7a0874; font-weight: bold;'
142            ),
143        'STRINGS' => array(
144            0 => 'color: #009900;'
145            ),
146        'NUMBERS' => array(
147            0 => 'color: #000000;'
148            ),
149        'METHODS' => array(
150            ),
151        'SYMBOLS' => array(
152            0 => 'color: #000000; font-weight: bold;'
153            ),
154        'REGEXPS' => array(
155            0 => 'color: #0099FF;',                     // variables
156            1 => 'color: #0000FF;',                     // qualifiers
157            2 => 'color: #FF6600; font-weight: bold;'   // labels
158            ),
159        'SCRIPT' => array(
160            )
161        ),
162    'URLS' => array(
163        1 => '',
164        2 => '',
165        3 => ''
166        ),
167    'OOLANG' => false,
168    'OBJECT_SPLITTERS' => array(
169        ),
170    'REGEXPS' => array(
171        // variables
172        0 => "'[a-zA-Z_\\-$]+'",
173        // qualifiers and parameters
174        1 => "(?:\/[a-zA-Z_\/]+)[\s=]",
175        // labels
176        2 => '(?<=\$)\s*[a-zA-Z\-_]+:'
177        ),
178    'STRICT_MODE_APPLIES' => GESHI_NEVER,
179    'SCRIPT_DELIMITERS' => array(
180        ),
181    'HIGHLIGHT_STRICT_BLOCK' => array(
182        ),
183    'TAB_WIDTH' => 4,
184    'PARSER_CONTROL' => array(
185        'COMMENTS' => array(
186        ),
187        'KEYWORDS' => array(
188        )
189    )
190);
191