ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
cobol.php
Go to the documentation of this file.
1 <?php
2 /*************************************************************************************
3  * cobol.php
4  * ----------
5  * Author: BenBE (BenBE@omorphia.org)
6  * Copyright: (c) 2007-2008 BenBE (http://www.omorphia.de/)
7  * Release Version: 1.0.9.0
8  * Date Started: 2007/07/02
9  *
10  * COBOL language file for GeSHi.
11  *
12  * Most of the compiler directives, reserved words and intrinsic functions are
13  * from the 2009 COBOL Draft Standard, Micro Focus, and GNU Cobol. The lists of
14  * these were found in the draft standard (Sections 8.9, 8.10, 8.11 and 8.12),
15  * Micro Focus' COBOL Language Reference and the GNU Cobol FAQ.
16  *
17  * CHANGES
18  * -------
19  * 2013/11/17 (1.0.8.13)
20  * - Changed compiler directives to be handled like comments.
21  * - Fixed bug where keywords in identifiers were highlighted.
22  * 2013/08/19 (1.0.8.13)
23  * - Added more intrinsic functions, reserved words, and compiler directives
24  * from the (upcoming) standard.
25  * 2013/07/07 (1.0.8.13)
26  * - Added more reserved words, compiler directives and intrinsic functions.
27  * - Added modern comment syntax and corrected the other one.
28  * - Set OOLANG to true and added an object splitter.
29  * - Added extra symbols.
30  * - Fixed bug where scope terminators were only the statement in
31  * end-statement was highlighted.
32  *
33  * TODO (updated 2013/11/17)
34  * -------------------------
35  *
36  *************************************************************************************
37  *
38  * This file is part of GeSHi.
39  *
40  * GeSHi is free software; you can redistribute it and/or modify
41  * it under the terms of the GNU General Public License as published by
42  * the Free Software Foundation; either version 2 of the License, or
43  * (at your option) any later version.
44  *
45  * GeSHi is distributed in the hope that it will be useful,
46  * but WITHOUT ANY WARRANTY; without even the implied warranty of
47  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
48  * GNU General Public License for more details.
49  *
50  * You should have received a copy of the GNU General Public License
51  * along with GeSHi; if not, write to the Free Software
52  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
53  *
54  ************************************************************************************/
55 
56 $language_data = array (
57  'LANG_NAME' => 'COBOL',
58  'COMMENT_SINGLE' => array(
59  1 => '*>', // COBOL 2002 inline comment
60  2 => '>>' // COBOL compiler directive indicator
61  ),
62  'COMMENT_MULTI' => array(),
63  'COMMENT_REGEXP' => array(
64  1 => '/^......(\*.*?$)/m', // Fixed-form comment
65  2 => '/\$SET.*/i' // MF compiler directive indicator
66  ),
67  'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
68  'QUOTEMARKS' => array('"', "'"),
69  'ESCAPE_CHAR' => '',
70  'NUMBERS' =>
75  'KEYWORDS' => array(
76  // Statements containing spaces. These are separate to other statements
77  // so that they are highlighted correctly.
78  1 => array(
79  'DELETE FILE', 'GO TO', 'NEXT SENTENCE', 'XML GENERATE',
80  'XML PARSE'
81  ),
82 
83  2 => array( // Other Reserved Words
84  '3-D', 'ABSENT', 'ABSTRACT', 'ACCESS', 'ACQUIRE',
85  'ACTION', 'ACTIVE-CLASS', 'ACTIVE-X', 'ACTUAL', 'ADDRESS',
86  'ADDRESS-ARRAY', 'ADDRESS-OFFSET', 'ADJUSTABLE-COLUMNS',
87  'ADVANCING', 'AFP-5A', 'AFTER', 'ALIGNED', 'ALIGNMENT', 'ALL',
88  'ALLOW', 'ALLOWING', 'ALPHABET', 'ALPHABETIC',
89  'ALPHABETIC-LOWER', 'ALPHABETIC-UPPER', 'ALPHANUMERIC',
90  'ALPHANUMERIC-EDITED', 'ALSO', 'ALTERNATE', 'AND', 'ANY',
91  'ANYCASE',
92  'APPLY', 'ARE', 'AREA', 'AREAS', 'ARGUMENT-NUMBER',
93  'ARGUMENT-VALUE',
94  'ARITHMETIC', 'AS', 'ASCENDING',
95  'ASSEMBLY-ATTRIBUTES', 'ASSIGN', 'AT', 'ATTRIBUTE', 'AUTHOR',
96  'AUTO', 'AUTO-DECIMAL', 'AUTO-HYPHEN-SKIP', 'AUTO-MINIMIZE',
97  'AUTO-RESIZE', 'AUTO-SKIP', 'AUTO-SPIN', 'AUTOMATIC',
98  'AUTOTERMINATE', 'AWAY-FROM-ZERO',
99  'AX-EVENT-LIST', 'B-AND', 'B-EXOR', 'B-LEFT',
100  'B-NOT', 'B-OR', 'B-RIGHT', 'B-XOR', 'BACKGROUND-COLOR',
101  'BACKGROUND-COLOUR', 'BACKGROUND-HIGH', 'BACKGROUND-LOW',
102  'BACKGROUND-STANDARD', 'BACKWARD', 'BAR', 'BASED', 'BASIS', 'BEEP',
103  'BEFORE', 'BEGINNING', 'BELL', 'BINARY', 'BINARY-CHAR',
104  'BINARY-DOUBLE', 'BINARY-LONG', 'BINARY-SHORT', 'BIND', 'BIT',
105  'BITMAP', 'BITMAP-END', 'BITMAP-HANDLE', 'BITMAP-NUMBER',
106  'BITMAP-RAW-HEIGHT', 'BITMAP-RAW-WIDTH', 'BITMAP-SCALE',
107  'BITMAP-START', 'BITMAP-TIMER', 'BITMAP-TRAILING', 'BITMAP-WIDTH',
108  'BLANK', 'BLINK', 'BLINKING', 'BLOB', 'BLOB-FILE', 'BLOB-LOCATOR',
109  'BLOCK', 'BOLD', 'BOOLEAN', 'BOTTOM', 'BOX', 'BOXED', 'BROWSING',
110  'BUSY', 'BUTTONS', 'BY', 'C01', 'C02', 'C03', 'C04',
111  'C05',
112  'C06', 'C07', 'C08', 'C09', 'C10', 'C11', 'C12', 'CALENDAR-FONT',
113  'CALLED', 'CANCEL-BUTTON', 'CAPACITY', 'CATCH', 'CBL',
114  'CBL-CTR', 'CCOL', 'CD', 'CELL', 'CELL-COLOR', 'CELL-DATA',
115  'CELL-FONT', 'CELL-PROTECTION', 'CELLS', 'CENTER', 'CENTERED',
116  'CENTERED-HEADINGS', 'CENTURY-DATE', 'CENTURY-DAY', 'CF', 'CH',
117  'CHAINING', 'CHANGED', 'CHAR-VARYING',
118  'CHARACTER',
119  'CHARACTERS', 'CHART', 'CHECK-BOX', 'CHECKING', 'CLASS',
120  'CLASS-ATTRIBUTES', 'CLASS-CONTROL', 'CLASS-ID', 'CLASS-OBJECT',
121  'CLASSIFICATION',
122  'CLEAR-SELECTION', 'CLINE', 'CLINES', 'CLOB', 'CLOB-FILE',
123  'CLOB-LOCATOR', 'CLOCK-UNITS', 'COBOL', 'CODE', 'CODE-SET',
124  'COERCION', 'COL', 'COLLATING', 'COLORS', 'COLOUR',
125  'COLOURS', 'COLS', 'COLUMN', 'COLUMN-COLOR', 'COLUMN-DIVIDERS',
126  'COLUMN-FONT', 'COLUMN-HEADINGS', 'COLUMN-PROTECTION', 'COLUMNS',
127  'COM-REG', 'COMBO-BOX', 'COMMA', 'COMMITMENT', 'COMMON',
128  'COMMUNICATION', 'COMP', 'COMP-0', 'COMP-1', 'COMP-2', 'COMP-3',
129  'COMP-4', 'COMP-5', 'COMP-6', 'COMP-X', 'COMPRESSION',
130  'COMPUTATIONAL', 'COMPUTATIONAL-0', 'COMPUTATIONAL-1',
131  'COMPUTATIONAL-2', 'COMPUTATIONAL-3', 'COMPUTATIONAL-4',
132  'COMPUTATIONAL-5', 'COMPUTATIONAL-6', 'COMPUTATIONAL-X',
133  'CONDITION-VALUE', 'CONFIGURATION', 'CONSOLE', 'CONSTANT',
134  'CONSTRAIN', 'CONSTRAINTS', 'CONTAINS', 'CONTENT',
135  'CONTROL', 'CONTROL-AREA', 'CONTROLS', 'CONTROLS-UNCROPPED',
136  'CONVERSION', 'CONVERT', 'CONVERTING', 'COPY-SELECTION',
137  'CORE-INDEX', 'CORR', 'CORRESPONDING', 'COUNT',
138  'CREATING', 'CRT', 'CRT-UNDER', 'CSIZE', 'CSP', 'CURRENCY',
139  'CURSOR', 'CURSOR-COL', 'CURSOR-COLOR',
140  'CURSOR-FRAME-WIDTH', 'CURSOR-ROW', 'CURSOR-X', 'CURSOR-Y',
141  'CUSTOM-ATTRIBUTE', 'CUSTOM-PRINT-TEMPLATE', 'CYCLE', 'CYL-INDEX',
142  'CYL-OVERFLOW', 'DASHED', 'DATA', 'DATA-COLUMNS',
143  'DATA-POINTER', 'DATA-TYPES', 'DATABASE-KEY', 'DATABASE-KEY-LONG',
144  'DATE', 'DATE-COMPILED', 'DATE-ENTRY', 'DATE-RECORD',
145  'DATE-WRITTEN', 'DAY', 'DAY-OF-WEEK', 'DBCLOB', 'DBCLOB-FILE',
146  'DBCLOB-LOCATOR', 'DBCS', 'DE', 'DEBUG', 'DEBUG-CONTENTS',
147  'DEBUG-ITEM', 'DEBUG-LINE', 'DEBUG-NAME', 'DEBUG-SUB-1',
148  'DEBUG-SUB-2', 'DEBUG-SUB-3', 'DEBUGGING', 'DECIMAL',
149  'DECIMAL-POINT', 'DECLARATIVES', 'DEFAULT',
150  'DEFAULT-BUTTON', 'DEFAULT-FONT', 'DEFINITION',
151  'DELEGATE-ID', 'DELIMITED', 'DELIMITER', 'DEPENDING',
152  'DESCENDING', 'DESTINATION', 'DESTROY', 'DETAIL', 'DICTIONARY',
153  'DISABLE', 'DISC', 'DISJOINING', 'DISK', 'DISP',
154  'DISPLAY-1', 'DISPLAY-COLUMNS', 'DISPLAY-FORMAT', 'DISPLAY-ST',
155  'DIVIDER-COLOR', 'DIVIDERS', 'DIVISION', 'DOT-DASH',
156  'DOTTED', 'DOWN', 'DRAG-COLOR', 'DRAW', 'DROP', 'DROP-DOWN',
157  'DROP-LIST', 'DUPLICATES', 'DYNAMIC', 'EBCDIC', 'EC', 'ECHO', 'EGCS',
158  'EGI', 'EJECT', 'ELEMENTARY', 'ELSE', 'EMI', 'EMPTY-CHECK',
159  'ENABLE', 'ENABLED', 'END', 'END-ACCEPT', 'END-ADD', 'END-CALL',
160  'END-CHAIN', 'END-COLOR', 'END-COMPUTE', 'END-DELEGATE',
161  'END-DELETE', 'END-DISPLAY', 'END-DIVIDE', 'END-EVALUATE',
162  'END-IF', 'END-INVOKE', 'END-MODIFY', 'END-MOVE', 'END-MULTIPLY',
163  'END-OF-PAGE', 'END-PERFORM', 'END-READ', 'END-RECEIVE',
164  'END-RETURN', 'END-REWRITE', 'END-SEARCH', 'END-START',
165  'END-STRING', 'END-SUBTRACT', 'END-SYNC', 'END-TRY',
166  'END-UNSTRING', 'END-WAIT', 'END-WRITE', 'END-XML', 'ENDING',
167  'ENGRAVED', 'ENSURE-VISIBLE', 'ENTRY-CONVENTION',
168  'ENTRY-FIELD',
169  'ENTRY-REASON', 'ENUM', 'ENUM-ID', 'ENVIRONMENT',
170  'ENVIRONMENT-NAME', 'ENVIRONMENT-VALUE', 'EOL', 'EOP',
171  'EOS', 'EQUAL', 'EQUALS', 'ERASE', 'ERROR', 'ESCAPE',
172  'ESCAPE-BUTTON', 'ESI', 'EVENT', 'EVENT-LIST',
173  'EVENT-POINTER', 'EVERY', 'EXCEEDS', 'EXCEPTION',
174  'EXCEPTION-OBJECT', 'EXCEPTION-VALUE', 'EXCESS-3',
175  'EXCLUDE-EVENT-LIST', 'EXCLUSIVE',
176  'EXPAND', 'EXPANDS', 'EXTEND', 'EXTENDED',
177  'EXTENDED-SEARCH', 'EXTENSION', 'EXTERNAL', 'EXTERNAL-FORM',
178  'EXTERNALLY-DESCRIBED-KEY', 'FACTORY', 'FALSE', 'FD',
179  'FH--FCD', 'FH--KEYDEF', 'FILE', 'FILE-CONTROL', 'FILE-ID',
180  'FILE-LIMIT', 'FILE-LIMITS', 'FILE-NAME', 'FILE-POS', 'FILL-COLOR',
181  'FILL-COLOR2', 'FILL-PERCENT', 'FILLER', 'FINAL', 'FINALLY',
182  'FINISH-REASON', 'FIRST', 'FIXED', 'FIXED-FONT', 'FIXED-WIDTH',
183  'FLAT', 'FLAT-BUTTONS', 'FLOAT-BINARY-7', 'FLOAT-BINARY-16',
184  'FLOAT-BINARY-34', 'FLOAT-DECIMAL-16', 'FLOAT-DECIMAL-34',
185  'FLOAT-EXTENDED', 'FLOAT-LONG',
186  'FLOAT-SHORT', 'FLOATING', 'FONT', 'FOOTING', 'FOR',
187  'FOREGROUND-COLOR', 'FOREGROUND-COLOUR', 'FOREVER', 'FORMAT',
188  'FRAME', 'FRAMED', 'FROM', 'FULL', 'FULL-HEIGHT',
189  'FUNCTION', 'FUNCTION-ID', 'FUNCTION-POINTER', 'GENERATE',
190  'GET', 'GETTER', 'GIVING', 'GLOBAL', 'GO-BACK', 'GO-FORWARD',
191  'GO-HOME', 'GO-SEARCH', 'GRAPHICAL', 'GREATER', 'GRID',
192  'GRIP', 'GROUP', 'GROUP-USAGE', 'GROUP-VALUE', 'HANDLE',
193  'HAS-CHILDREN', 'HEADING', 'HEADING-COLOR', 'HEADING-DIVIDER-COLOR',
194  'HEADING-FONT', 'HEAVY', 'HEIGHT', 'HEIGHT-IN-CELLS', 'HELP-ID',
195  'HIDDEN-DATA', 'HIGH', 'HIGH-COLOR', 'HIGH-VALUE', 'HIGH-VALUES',
196  'HIGHLIGHT', 'HORIZONTAL', 'HOT-TRACK', 'HSCROLL', 'HSCROLL-POS',
197  'I-O', 'I-O-CONTROL', 'ICON', 'ID', 'IDENTIFICATION',
198  'IDENTIFIED', 'IFINITY', 'IGNORE', 'IGNORING', 'IMPLEMENTS', 'IN',
199  'INDEPENDENT', 'INDEX', 'INDEXED', 'INDEXER', 'INDEXER-ID', 'INDIC',
200  'INDICATE', 'INDICATOR', 'INDICATORS', 'INDIRECT',
201  'INHERITING', 'INHERITS',
202  'INITIAL', 'INITIALIZED', 'INPUT',
203  'INPUT-OUTPUT', 'INQUIRE', 'INSERT', 'INSERT-ROWS',
204  'INSERTION-INDEX', 'INSTALLATION', 'INSTANCE',
205  'INTERFACE', 'INTERFACE-ID', 'INTERMEDIATE',
206  'INTERNAL', 'INTO', 'INTRINSIC',
207  'INVALID', 'INVOKED', 'IS', 'ITEM', 'ITEM-BOLD',
208  'ITEM-ID', 'ITEM-TEXT', 'ITEM-TO-ADD', 'ITEM-TO-DELETE',
209  'ITEM-TO-EMPTY', 'ITEM-VALUE', 'ITERATOR', 'ITERATOR-ID', 'J',
210  'JOINED', 'JOINING', 'JUST', 'JUSTIFIED', 'KANJI',
211  'KEPT', 'KEY', 'KEY-YY', 'KEYBOARD', 'LABEL', 'LABEL-OFFSET',
212  'LARGE-FONT', 'LAST', 'LAST-ROW', 'LAYOUT-DATA', 'LAYOUT-MANAGER',
213  'LC_ALL', 'LC_COLLATE', 'LC_CTYPE', 'LC_CURRENCY', 'LC_MESSAGES',
214  'LC_MONETARY', 'LC_NUMERIC', 'LC_TIME', 'LEADING', 'LEADING-SHIFT',
215  'LEAVE', 'LEFT', 'LEFT-JUSTIFY', 'LEFT-TEXT', 'LEFTLINE',
216  'LENGTH-CHECK', 'LESS', 'LIMIT', 'LIMITS', 'LIN', 'LINAGE',
217  'LINAGE-COUNTER', 'LINE', 'LINE-COUNTER', 'LINES', 'LINES-AT-ROOT',
218  'LINK', 'LINKAGE', 'LIST', 'LIST-BOX', 'LM-RESIZE', 'LOCAL-STORAGE',
219  'LOCALE', 'LOCK', 'LOCKING', 'LONG-DATE', 'LONG-VARBINARY',
220  'LONG-VARCHAR', 'LOW', 'LOW-COLOR', 'LOW-VALUE', 'LOW-VALUES',
221  'LOWER', 'LOWERED', 'LOWLIGHT', 'MANUAL', 'MASS-UPDATE',
222  'MASTER-INDEX', 'MAX-HEIGHT', 'MAX-LINES', 'MAX-PROGRESS',
223  'MAX-SIZE', 'MAX-TEXT', 'MAX-VAL', 'MAX-WIDTH', 'MDI-CHILD',
224  'MDI-FRAME', 'MEDIUM-FONT', 'MEMORY', 'MENU', 'MESSAGE',
225  'MESSAGES', 'METACLASS', 'METHOD', 'METHOD-ID', 'MIN-HEIGHT',
226  'MIN-LINES', 'MIN-SIZE', 'MIN-VAL', 'MIN-WIDTH', 'MODAL', 'MODE',
227  'MODELESS', 'MODIFIED', 'MODULES', 'MONITOR-POINTER',
228  'MORE-LABELS', 'MULTILINE',
229  'MUTEX-POINTER', 'NAME', 'NAMED', 'NATIONAL',
230  'NATIONAL-EDITED', 'NATIVE', 'NAVIGATE-URL', 'NCHAR',
231  'NEAREST-AWAY-FROM-ZERO', 'NEAREST-EVEN', 'NEAREST-TOWARD-ZERO',
232  'NEGATIVE', 'NEGATIVE-INFINITY',
233  'NESTED', 'NET-EVENT-LIST', 'NEW', 'NEWABLE', 'NEXT ', 'NEXT-ITEM',
234  'NO', 'NO-AUTO-DEFAULT', 'NO-AUTOSEL', 'NO-BOX', 'NO-CELL-DRAG',
235  'NO-CLOSE', 'NO-DIVIDERS', 'NO-ECHO', 'NO-F4', 'NO-FOCUS',
236  'NO-GROUP-TAB', 'NO-KEY-LETTER', 'NO-SEARCH', 'NO-TAB', 'NO-UPDOWN',
237  'NOMINAL', 'NONE', 'NORMAL', 'NOT', 'NOT-A-NUMBER', 'NOTIFY',
238  'NOTIFY-CHANGE', 'NOTIFY-DBLCLICK', 'NOTIFY-SELCHANGE',
239  'NSTD-REELS', 'NULL', 'NULLS', 'NUM-COL-HEADINGS',
240  'NUM-ROW-HEADINGS', 'NUM-ROWS', 'NUMBER', 'NUMBERS', 'NUMERIC',
241  'NUMERIC-EDITED', 'NUMERIC-FILL', 'O-FILL', 'OBJECT',
242  'OBJECT-COMPUTER', 'OBJECT-ID', 'OBJECT-REFERENCE',
243  'OBJECT-STORAGE', 'OCCURS', 'OF', 'OFF', 'OK-BUTTON', 'OMITTED',
244  'ONLY', 'OOSTACKPTR', 'OPERATOR', 'OPERATOR-ID',
245  'OPTIONAL', 'OPTIONS', 'OR', 'ORDER', 'ORGANIZATION', 'OTHER',
246  'OTHERWISE', 'OUTPUT', 'OVERFLOW', 'OVERLAP-LEFT', 'OVERLAP-TOP',
247  'OVERLAPPED', 'OVERLINE', 'OVERRIDE', 'PACKED-DECIMAL',
248  'PADDING', 'PAGE', 'PAGE-COUNTER', 'PAGE-SETUP', 'PAGE-SIZE',
249  'PAGED', 'PANEL-INDEX', 'PANEL-STYLE', 'PANEL-TEXT', 'PANEL-WIDTHS',
250  'PARAGRAPH', 'PARAMS', 'PARENT', 'PARSE', 'PARTIAL', 'PASSWORD',
251  'PERMANENT', 'PF', 'PH', 'PIC', 'PICTURE', 'PIXEL',
252  'PIXELS', 'PLACEMENT', 'PLUS', 'POINTER', 'POP-UP', 'POSITION',
253  'POSITION-SHIFT', 'POSITIONING', 'POSITIVE', 'POSITIVE-INFINITY',
254  'PREFIXED', 'PREFIXING', 'PRESENT',
255  'PREVIOUS', 'PRINT', 'PRINT-CONTROL', 'PRINT-NO-PROMPT',
256  'PRINT-PREVIEW', 'PRINT-SWITCH', 'PRINTER', 'PRINTER-1', 'PRINTING',
257  'PRIOR', 'PRIORITY', 'PRIVATE', 'PROCEDURE', 'PROCEDURE-POINTER',
258  'PROCEDURES', 'PROCEED', 'PROCESS', 'PROCESSING', 'PROGRAM',
259  'PROGRAM-ID', 'PROGRAM-POINTER', 'PROGRESS', 'PROHIBITED',
260  'PROMPT', 'PROPERTIES',
261  'PROPERTY', 'PROPERTY-ID', 'PROPERTY-VALUE', 'PROTECTED',
262  'PROTOTYPE', 'PUBLIC', 'PURGE', 'PUSH-BUTTON', 'QUERY-INDEX',
263  'QUEUE', 'QUOTE', 'QUOTES', 'RADIO-BUTTON', 'RAISED',
264  'RAISING', 'RD', 'READ-ONLY', 'READING',
265  'READY', 'RECORD', 'RECORD-DATA', 'RECORD-OVERFLOW',
266  'RECORD-TO-ADD', 'RECORD-TO-DELETE', 'RECORDING', 'RECORDS',
267  'RECURSIVE', 'REDEFINE', 'REDEFINES', 'REDEFINITION', 'REEL',
268  'REFERENCE', 'REFERENCES', 'REFRESH', 'REGION-COLOR', 'RELATION',
269  'RELATIVE', 'RELOAD', 'REMAINDER', 'REMARKS', 'REMOVAL',
270  'RENAMES', 'REORG-CRITERIA', 'REPEATED', 'REPLACE', 'REPLACING',
271  'REPORT', 'REPORTING', 'REPORTS', 'REPOSITORY', 'REQUIRED',
272  'REPRESENTS-NOT-A-NUMBER',
273  'REREAD', 'RERUN', 'RESERVE', 'RESET-GRID', 'RESET-LIST',
274  'RESET-TABS', 'RESIZABLE', 'RESTRICTED', 'RESULT-SET-LOCATOR',
275  'RETRY', 'RETURN-CODE', 'RETURNING',
276  'REVERSE-VIDEO', 'REVERSED', 'REWIND', 'RF', 'RH',
277  'RIGHT', 'RIGHT-ALIGN', 'RIGHT-JUSTIFY', 'RIMMED',
278  'ROLLING', 'ROUNDED', 'ROUNDING', 'ROW-COLOR', 'ROW-COLOR-PATTERN',
279  'ROW-DIVIDERS', 'ROW-FONT', 'ROW-HEADINGS', 'ROW-PROTECTION',
280  'ROWID', 'RUN', 'S01', 'S02', 'S03', 'S04', 'S05', 'SAME',
281  'SAVE-AS', 'SAVE-AS-NO-PROMPT', 'SCREEN', 'SCROLL', 'SCROLL-BAR',
282  'SD', 'SEARCH-OPTIONS', 'SEARCH-TEXT', 'SECONDS',
283  'SECTION', 'SECURE', 'SECURITY', 'SEEK', 'SEGMENT', 'SEGMENT-LIMIT',
284  'SELECT-ALL', 'SELECTION-INDEX', 'SELECTION-TEXT',
285  'SELECTIVE', 'SELF', 'SELF-ACT', 'SELFCLASS', 'SEMAPHORE-POINTER',
286  'SEND', 'SENTENCE', 'SEPARATE', 'SEPARATION', 'SEQUENCE',
287  'SEQUENTIAL', 'SETTER', 'SHADING', 'SHADOW',
288  'SHARING', 'SHIFT-IN', 'SHIFT-OUT', 'SHORT-DATE', 'SHOW-LINES',
289  'SHOW-NONE', 'SHOW-SEL-ALWAYS', 'SIGNED', 'SIGNED-INT',
290  'SIGNED-LONG', 'SIGNED-SHORT', 'SIZE', 'SKIP1',
291  'SKIP2', 'SKIP3', 'SMALL-FONT', 'SORT-CONTROL',
292  'SORT-CORE-SIZE', 'SORT-FILE-SIZE', 'SORT-MERGE', 'SORT-MESSAGE',
293  'SORT-MODE-SIZE', 'SORT-OPTION', 'SORT-ORDER', 'SORT-RETURN',
294  'SORT-TAPE', 'SORT-TAPES', 'SOURCE', 'SOURCE-COMPUTER', 'SOURCES',
295  'SPACE', 'SPACE-FILL', 'SPACES', 'SPECIAL-NAMES', 'SPINNER', 'SQL',
296  'SQUARE', 'STANDARD', 'STANDARD-1', 'STANDARD-2', 'STANDARD-3',
297  'STANDARD-BINARY', 'STANDARD-DECIMAL',
298  'START-X', 'START-Y', 'STARTING', 'STATEMENT', 'STATIC',
299  'STATIC-LIST',
300  'STATUS', 'STATUS-BAR', 'STATUS-TEXT', 'STEP',
301  'STOP-BROWSER', 'STRONG', 'STYLE', 'SUB-QUEUE-1',
302  'SUB-QUEUE-2', 'SUB-QUEUE-3', 'SUBFILE', 'SUBWINDOW',
303  'SUFFIXING', 'SUPER', 'SYMBOL', 'SYMBOLIC',
304  'SYNCHRONIZED', 'SYSIN', 'SYSIPT', 'SYSLST', 'SYSOUT',
305  'SYSPCH', 'SYSPUNCH', 'SYSTEM', 'SYSTEM-DEFAULT', 'SYSTEM-INFO',
306  'TAB', 'TAB-CONTROL', 'TAB-TO-ADD', 'TAB-TO-DELETE', 'TABLE',
307  'TALLY', 'TALLYING', 'TAPE', 'TAPES', 'TEMPORARY', 'TERMINAL',
308  'TERMINAL-INFO', 'TERMINATION-VALUE', 'TEST', 'TEXT',
309  'THAN', 'THEN', 'THREAD', 'THREAD-LOCAL', 'THREAD-LOCAL-STORAGE',
310  'THREAD-POINTER', 'THROUGH', 'THRU', 'THUMB-POSITION',
311  'TILED-HEADINGS', 'TIME', 'TIME-OF-DAY', 'TIME-OUT', 'TIME-RECORD',
312  'TIMEOUT', 'TIMES', 'TIMESTAMP', 'TIMESTAMP-OFFSET',
313  'TIMESTAMP-OFFSET-RECORD', 'TIMESTAMP-RECORD', 'TITLE', 'TITLE-BAR',
314  'TITLE-POSITION', 'TO', 'TOOL-BAR', 'TOP', 'TOTALED', 'TOTALING',
315  'TOWARD-GREATER', 'TOWARD-LESSER',
316  'TRACE', 'TRACK-AREA', 'TRACK-LIMIT', 'TRACK-THUMB', 'TRACKS',
317  'TRADITIONAL-FONT', 'TRAILING', 'TRAILING-SHIFT', 'TRAILING-SIGN',
318  'TRANSACTION', 'TRANSPARENT', 'TRANSPARENT-COLOR',
319  'TREE-VIEW', 'TRUE', 'TRUNCATION', 'TYPE', 'TYPEDEF', 'UCS-4',
320  'UNDERLINE', 'UNDERLINED', 'UNEQUAL', 'UNFRAMED', 'UNIT', 'UNITS',
321  'UNIVERSAL', 'UNSIGNED', 'UNSIGNED-INT', 'UNSIGNED-LONG',
322  'UNSIGNED-SHORT',
323  'UNSORTED', 'UP', 'UPDATE', 'UNTIL', 'UPON', 'UPPER',
324  'UPSI-0', 'UPSI-1', 'UPSI-2', 'UPSI-3', 'UPSI-4', 'UPSI-5',
325  'UPSI-6', 'UPSI-7', 'USAGE', 'USE-ALT', 'USE-RETURN',
326  'USE-TAB', 'USER', 'USER-COLORS', 'USER-DEFAULT', 'USER-GRAY',
327  'USER-WHITE', 'USING', 'UTF-16', 'UTF-8', 'VALID',
328  'VAL-STATUS', 'VALIDATE-STATUS',
329  'VALUE', 'VALUE-FORMAT', 'VALUES', 'VALUETYPE', 'VALUETYPE-ID',
330  'VARBINARY', 'VARIABLE', 'VARIANT', 'VARYING', 'VERTICAL',
331  'VERY-HEAVY', 'VIRTUAL-WIDTH', 'VISIBLE', 'VPADDING', 'VSCROLL',
332  'VSCROLL-BAR', 'VSCROLL-POS', 'VTOP', 'WEB-BROWSER', 'WHEN',
333  'WHERE', 'WIDTH', 'WIDTH-IN-CELLS', 'WINDOW',
334  'WITH', 'WORDS', 'WORKING-STORAGE', 'WRAP', 'WRITE-ONLY',
335  'WRITE-VERIFY', 'WRITING', ' XML', 'XML ', 'XML-CODE', 'XML-EVENT',
336  'XML-NTEXT', 'XML-TEXT', 'YIELDING', 'YYYYDDD', 'YYYYMMDD', 'ZERO',
337  'ZERO-FILL', 'ZEROES', 'ZEROS'
338  ),
339  3 => array( // Statement Keywords containing no spaces.
340  'ACCEPT', 'ADD', 'ALTER', 'ALLOCATE', 'ATTACH', 'CALL', 'CANCEL',
341  'CHAIN', 'CREATE',
342  'CLOSE', 'COLOR', 'COMPUTE', 'COMMIT', 'CONTINUE',
343  'COPY', 'DECLARE', 'DELEGATE', 'DELETE', 'DETACH', 'DISPLAY',
344  'DIVIDE',
345  'ENTER', 'ENTRY', 'EVALUATE', 'EXAMINE',
346  'EXEC', 'EXECUTE', 'EXHIBIT', 'EXIT', 'FREE', 'GOBACK',
347  'IF', 'INITIALIZE', 'INITIATE', 'INSPECT', 'INVOKE', 'MERGE',
348  'MODIFY', 'MOVE', 'MULTIPLY', 'NOTE', 'ON', 'OPEN',
349  'PERFORM', 'RAISE', 'READ', 'RECEIVE', 'RELEASE', 'RETURN',
350  'RESET', 'RESUME',
351  'REWRITE', 'ROLLBACK', 'SEARCH', 'SELECT', 'SERVICE', 'SET', 'SORT',
352  'START', 'STOP', 'STRING', 'SUBTRACT', 'SYNC',
353  'SUPPRESS', 'TERMINATE',
354  'TRANSFORM', 'TRY', 'UNLOCKFILE', 'UNLOCK', 'UNSTRING', 'USE',
355  'VALIDATE', 'WAIT', 'WRITE'
356  ),
357  4 => array( // Intrinsic functions
358  'ABS', 'ACOS', 'ANNUITY', 'ASIN', 'ATAN', 'BOOLEAN-OF-INTEGER',
359  'BYTE-LENGTH', 'CHAR', 'CHAR-NATIONAL',
360  'COS', 'COMBINED-DATETIME', 'CONCATENATE', 'CURRENT-DATE',
361  'DATE-OF-INTEGER', 'DATE-TO-YYYYMMDD', 'DAY-TO-YYYYDDD',
362  'DAY-OF-INTEGER', 'DISPLAY-OF', 'E', 'EXCEPTION-FILE',
363  'EXCEPTION-FILE-N', 'EXCEPTION-LOCATION',
364  'EXCEPTION-LOCATION-N', 'EXCEPTION-STATEMENT', 'EXCEPTION-STATUS',
365  'EXP', 'EXP10', 'FACTORIAL', 'FORMATTED-CURRENT-DATE',
366  'FORMATTED-DATE', 'FORMATTED-DATETIME', 'FORMATTED-TIME',
367  'FRACTION-PART', 'HIGHEST-ALGEBRAIC', 'INTEGER',
368  'INTEGER-OF-BOOLEAN', 'INTEGER-OF-DATE', 'INTEGER-OF-DAY',
369  'INTEGER-OF-FORMATTED-DATE', 'INTEGER-PART', 'LENGTH',
370  'LOCALE-COMPARE',
371  'LOCALE-DATE', 'LOCALE-TIME', 'LOCALE-TIME-FROM-SECONDS',
372  'LOCALE-TIME-FROM-SECS', 'LOG',
373  'LOG10', 'LOWER-CASE', 'LOWEST-ALGEBRAIC',
374  'MAX', 'MEAN', 'MEDIAN', 'MIDRANGE',
375  'MIN', 'MOD', 'NATIONAL-OF', 'NUMVAL', 'NUMVAL-C', 'NUMVAL-F',
376  'ORD', 'ORD-MAX', 'ORD-MIN',
377  'PI', 'PRESENT-VALUE', 'RANDOM', 'RANGE', 'REM', 'REVERSE',
378  'SECONDS-FROM-FORMATTED-TIME', 'SIGN', 'SIN', 'SQRT',
379  'SECONDS-PAST-MIDNIGHT', 'STANDARD-DEVIATION', 'STANDARD-COMPARE',
380  'STORED-CHAR-LENGTH',
381  'SUBSTITUTE', 'SUBSTITUE-CASE', 'SUM', 'TAN', 'TEST-DATE-YYYYMMDD',
382  'TEST-DAY-YYYYDDD', 'TEST-FORMATTED-TIME', 'TEST-NUMVAL',
383  'TEST-NUMVAL-C', 'TEST-NUMVAL-F',
384  'TRIM', 'UPPER-CASE', 'VARIANCE', 'YEAR-TO-YYYY', 'WHEN-COMPILED'
385  ),
386  ),
387  'SYMBOLS' => array(
388  // Arithmetic and comparison operators must be surrounded by spaces.
389  ' + ', ' - ', ' * ', ' / ', ' ** ', ' ^ ',
390  '.', ',',
391  ' = ', ' < ', ' > ', ' >= ', ' <= ', ' <> ',
392  '(', ')', '[', ']'
393  ),
394  'CASE_SENSITIVE' => array(
395  GESHI_COMMENTS => false,
396  1 => false,
397  2 => false,
398  3 => false,
399  4 => false,
400  ),
401  'STYLES' => array(
402  'KEYWORDS' => array(
403  1 => 'color: #000000; font-weight: bold;',
404  2 => 'color: #008000; font-weight: bold;',
405  3 => 'color: #000000; font-weight: bold;',
406  4 => 'color: #9d7700;',
407  ),
408  'COMMENTS' => array(
409  1 => 'color: #a0a0a0; font-style: italic;',
410  2 => 'color: #000080; font-weight: bold;',
411  ),
412  'ESCAPE_CHAR' => array(
413  ),
414  'BRACKETS' => array(
415  0 => 'color: #339933;'
416  ),
417  'STRINGS' => array(
418  0 => 'color: #ff0000;'
419  ),
420  'NUMBERS' => array(
421  0 => 'color: #993399;'
422  ),
423  'METHODS' => array(
424  1 => 'color: #800080;'
425  ),
426  'SYMBOLS' => array(
427  0 => 'color: #000066;'
428  ),
429  'REGEXPS' => array(
430  ),
431  'SCRIPT' => array(
432  )
433  ),
434  'URLS' => array(
435  1 => '',
436  2 => '',
437  3 => '',
438  4 => ''
439  ),
440  'OOLANG' => true,
441  'OBJECT_SPLITTERS' => array(
442  1 => '::'
443  ),
444  'REGEXPS' => array(
445  ),
446  'STRICT_MODE_APPLIES' => GESHI_NEVER,
447  'SCRIPT_DELIMITERS' => array(
448  ),
449  'HIGHLIGHT_STRICT_BLOCK' => array(
450  ),
451  'TAB_WIDTH' => 4,
452  'PARSER_CONTROL' => array(
453  'KEYWORDS' => array(
454  'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9-\$_\|\#|^&])',
455  ),
456  ),
457 );
const GESHI_NUMBER_FLT_SCI_ZERO
Number format to highlight floating-point numbers with support for scientific notation (E) and requir...
Definition: geshi.php:195
const GESHI_COMMENTS
Used in language files to mark comments.
Definition: geshi.php:149
const GESHI_NUMBER_FLT_NONSCI
Number format to highlight floating-point numbers without support for scientific notation.
Definition: geshi.php:189
const GESHI_NUMBER_FLT_SCI_SHORT
Number format to highlight floating-point numbers with support for scientific notation (E) and option...
Definition: geshi.php:193
const GESHI_NEVER
#+ private
Definition: geshi.php:123
const GESHI_NUMBER_INT_BASIC
Basic number format for integers.
Definition: geshi.php:165
const GESHI_CAPS_NO_CHANGE
Lowercase keywords found.
Definition: geshi.php:94
$language_data
Definition: cobol.php:56