geshi/geshi/reg.php0000664000175000017500000001665212014173373013467 0ustar benbebenbe 'Microsoft Registry', 'COMMENT_SINGLE' => array(1 =>';'), 'COMMENT_MULTI' => array( ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array(), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( // 1 => array(), // 2 => array(), /* Registry Key Constants Not Used */ 3 => array( 'HKEY_LOCAL_MACHINE', 'HKEY_CLASSES_ROOT', 'HKEY_CURRENT_USER', 'HKEY_USERS', 'HKEY_CURRENT_CONFIG', 'HKEY_DYN_DATA', 'HKLM', 'HKCR', 'HKCU', 'HKU', 'HKCC', 'HKDD' ) ), 'SYMBOLS' => array( '=' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, // 1 => false, // 2 => false, 3 => false ), 'STYLES' => array( 'KEYWORDS' => array( // 1 => 'color: #00CCFF;', // 2 => 'color: #0000FF;', 3 => 'color: #800000;' ), 'COMMENTS' => array( 1 => 'color: #009900;' ), 'ESCAPE_CHAR' => array( ), 'BRACKETS' => array( 0 => 'color: #000000;' ), 'STRINGS' => array( 0 => 'color: #009900;' ), 'NUMBERS' => array( ), 'METHODS' => array( ), 'SYMBOLS' => array( 0 => 'color: #000000;' ), 'SCRIPT' => array( ), 'REGEXPS' => array( 0 => 'color: #00CCFF;', 1 => 'color: #0000FF;', 2 => '', 3 => 'color: #0000FF;', 4 => 'color: #0000FF;', 5 => '', 6 => '', 7 => '', 8 => 'color: #FF6600;', ) ), 'URLS' => array( // 1 => '', // 2 => '', 3 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( ), 'REGEXPS' => array( // Highlight Key Delimiters 0 => array( GESHI_SEARCH => '((^|\\n)\\s*)(\\\\\\[(.*)\\\\\\])(\\s*(\\n|$))', GESHI_REPLACE => '\\3', GESHI_MODIFIERS => '', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\5' // GESHI_CLASS => 'kw1' ), // Highlight File Format Header Version 5 1 => array( GESHI_SEARCH => '(^\s*)(Windows Registry Editor Version \d+\.\d+)(\s*$)', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => 'm', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\3', GESHI_CLASS => 'geshi_registry_header' ), // Highlight File Format Header Version 4 2 => array( GESHI_SEARCH => '(^\\s*)(REGEDIT\s?\d+)(\s*$)', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => 'm', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\3', GESHI_CLASS => 'geshi_registry_header' ), // Highlight dword: 32 bit integer values 3 => array( GESHI_SEARCH => '(=\s*)(dword:[0-9a-fA-F]{8})(\s*$)', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => 'm', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\3' // GESHI_CLASS => 'kw2' ), // Highlight variable names 4 => array( GESHI_SEARCH => '(^\s*)(\".*?\")(\s*=)', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => 'm', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\3', GESHI_CLASS => 'geshi_variable' ), // Highlight String Values 5 => array( GESHI_SEARCH => '(=\s*)(\".*?\")(\s*$)', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => 'm', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\3', GESHI_CLASS => 'st0' ), // Highlight Hexadecimal Values (Single-Line and Multi-Line) 6 => array( GESHI_SEARCH => '(=\s*\n?\s*)(hex:[0-9a-fA-F]{2}(,(\\\s*\n\s*)?[0-9a-fA-F]{2})*)', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => 'm', GESHI_BEFORE => '\\1', GESHI_AFTER => '', GESHI_CLASS => 'kw2' ), // Highlight Default Variable 7 => array( GESHI_SEARCH => '(^\s*)(@)(\s*=)', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => 'm', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\3', GESHI_CLASS => 'geshi_variable' ), // Highlight GUID's found anywhere. 8 => array( GESHI_SEARCH => '(\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\})', GESHI_REPLACE => '\\1', GESHI_MODIFIERS => 'i', GESHI_BEFORE => '', GESHI_AFTER => '', GESHI_CLASS => 'geshi_guid' ) ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'PARSER_CONTROL' => array( 'ENABLE_FLAGS' => array( 'NUMBERS' => GESHI_NEVER, ) ) ); ?> geshi/geshi/dot.php0000664000175000017500000001570312014173410013464 0ustar benbebenbe 'dot', 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array('"'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( 'URL', 'arrowhead', 'arrowsize', 'arrowtail', 'bb', 'bgcolor', 'bottomlabel', 'center', 'clusterrank', 'color', 'comment', 'constraint', 'decorate', 'dir', 'distortion', 'fillcolor', 'fixedsize', 'fontcolor', 'fontname', 'fontsize', 'group', 'headclip', 'headlabel', 'headport', 'height', 'id', 'label', 'labelangle', 'labeldistance', 'labelfontcolor', 'labelfontname', 'labelfontsize', 'layer', 'layers', 'margin', 'mclimit', 'minlen', 'nodesep', 'nslimit', 'ordering', 'orientation', 'page', 'pagedir', 'peripheries', 'port_label_distance', 'quantum', 'rank', 'rankdir', 'ranksep', 'ratio', 'regular', 'rotate', 'samehead', 'sametail', 'searchsize', 'shape', 'shapefile', 'showboxes', 'sides', 'size', 'skew', 'style', 'tailclip', 'taillabel', 'tailport', 'toplabel', 'weight', 'width' ), 2 => array( 'node', 'graph', 'digraph', 'strict', 'edge', 'subgraph' ), 3 => array( 'Mcircle', 'Mdiamond', 'Mrecord', 'Msquare', 'auto', 'back', 'bold', 'both', 'box', 'circle', 'compress', 'dashed', 'diamond', 'dot', 'dotted', 'doublecircle', 'doubleoctagon', 'egg', 'ellipse', 'epsf', 'false', 'fill', 'filled', 'forward', 'global', 'hexagon', 'house', 'inv', 'invdot', 'invhouse', 'invis', 'invodot', 'invtrapezium', 'invtriangle', 'local', 'max', 'min', 'none', 'normal', 'octagon', 'odot', 'out', 'parallelogram', 'plaintext', 'polygon', 'record', 'same', 'solid', 'trapezium', 'triangle', 'tripleoctagon', 'true' ), 4 => array( 'aliceblue', 'antiquewhite', 'aquamarine', 'azure', 'beige', 'bisque', 'black', 'blanchedalmond', 'blue', 'blueviolet', 'brown', 'burlywood', 'cadetblue', 'chartreuse', 'chocolate', 'coral', 'cornflowerblue', 'cornsilk', 'crimson', 'cyan', 'darkgoldenrod', 'darkgreen', 'darkkhaki', 'darkolivegreen', 'darkorange', 'darkorchid', 'darksalmon', 'darkseagreen', 'darkslateblue', 'darkslategray', 'darkturquoise', 'darkviolet', 'deeppink', 'deepskyblue', 'dimgray', 'dodgerblue', 'firebrick', 'forestgreen', 'gainsboro', 'ghostwhite', 'gold', 'goldenrod', 'gray', 'green', 'greenyellow', 'honeydew', 'hotpink', 'indianred', 'indigo', 'ivory', 'khaki', 'lavender', 'lavenderblush', 'lawngreen', 'lemonchiffon', 'lightblue', 'lightcyan', 'lightgoldenrod', 'lightgoldenrodyellow', 'lightgray', 'lightpink', 'lightsalmon', 'lightseagreen', 'lightskyblue', 'lightslateblue', 'lightslategray', 'lightyellow', 'limegreen', 'linen', 'magenta', 'maroon', 'mediumaquamarine', 'mediumblue', 'mediumorchid', 'mediumpurple', 'mediumseagreen', 'mediumslateblue', 'mediumspringgreen', 'mediumturquoise', 'mediumvioletred', 'midnightblue', 'mintcream', 'mistyrose', 'moccasin', 'navajowhite', 'navy', 'navyblue', 'oldlace', 'olivedrab', 'oralwhite', 'orange', 'orangered', 'orchid', 'palegoldenrod', 'palegreen', 'paleturquoise', 'palevioletred', 'papayawhip', 'peachpuff', 'peru', 'pink', 'plum', 'powderblue', 'purple', 'red', 'rosybrown', 'royalblue', 'saddlebrown', 'salmon', 'salmon2', 'sandybrown', 'seagreen', 'seashell', 'sienna', 'skyblue', 'slateblue', 'slategray', 'snow', 'springgreen', 'steelblue', 'tan', 'thistle', 'tomato', 'turquoise', 'violet', 'violetred', 'wheat', 'white', 'whitesmoke', 'yellow', 'yellowgreen' ) ), 'SYMBOLS' => array( '[', ']', '{', '}', '-', '+', '*', '/', '<', '>', '!', '~', '%', '&', '|', '=' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false, 3 => false, 4 => false, ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #000066;', 2 => 'color: #000000; font-weight: bold;', 3 => 'color: #993333;', 4 => 'color: #b1b100;' ), 'COMMENTS' => array( 1 => 'color: #808080; font-style: italic;', 2 => 'color: #339933;', 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #af624d; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #66cc66;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' ), 'SYMBOLS' => array( 0 => 'color: #66cc66;' ), 'METHODS' => array( ), 'SCRIPT' => array( ), 'REGEXPS' => array( ), ), 'URLS' => array( 1 => '', 2 => '', 3 => '', 4 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array(), 'REGEXPS' => array(), 'STRICT_MODE_APPLIES' => GESHI_MAYBE, 'SCRIPT_DELIMITERS' => array(), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => true, 1 => true, 2 => true, 3 => true ) ); ?>geshi/geshi/euphoria.php0000664000175000017500000001205112014173446014514 0ustar benbebenbe (1.0.8.9) * - First Release * * TODO (updated ) * ------------------------- * seperate the funtions from the procedures, and have a slight color change for each. * ************************************************************************************* * * This file is part of GeSHi. * * GeSHi is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * GeSHi is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with GeSHi; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * ************************************************************************************/ $language_data = array ( 'LANG_NAME' => 'Euphoria', 'COMMENT_SINGLE' => array(1 => '--'), 'COMMENT_MULTI' => array(), //Euphoria doesn't support multi-line comments 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( // keywords 'and', 'by', 'constant', 'do', 'else', 'elsif', 'end', 'exit', 'for', 'function', 'global', 'if', 'include', 'not', 'or', 'procedure', 'return', 'then', 'to', 'type', 'while', 'with', 'without', 'xor' ), 2 => array( // built-ins 'abort', 'and_bits', 'append', 'arctan', 'atom', 'c_func', 'call', 'c_proc', 'call_func', 'call_proc', 'clear_screen', 'close', 'compare', 'command_line', 'cos', 'date', 'equal', 'find', 'find_from', 'floor', 'getc', 'getenv', 'gets', 'get_key', 'get_pixel', 'integer', 'length', 'log', 'machine_func', 'machine_proc', 'match', 'match_from', 'mem_copy', 'mem_set', 'not_bits', 'object', 'open', 'or_bits', 'peek', 'peek4s', 'peek4u', 'pixel', 'platform', 'poke', 'poke4', 'position', 'power', 'prepend', 'print', 'printf', 'profile', 'puts', 'rand', 'remainder', 'repeat', 'routine_id', 'sequence', 'sin', 'sprintf', 'sqrt', 'system', 'system_exec', 'tan', 'task_clock_stop', 'task_clock_start', 'task_create', 'task_list', 'task_schedule', 'task_self', 'task_status', 'task_suspend', 'task_yield', 'time', 'trace', 'xor_bits' ), ), 'SYMBOLS' => array( 0 => array( '(', ')', '{', '}', '[', ']' ), 1 => array( '+', '-', '*', '/', '=', '&', '^' ), 2 => array( '&', '?', ',' ) ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, 2 => true, ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #0000ff; font-weight: bold;', // keywords 2 => 'color: #cc33ff; font-weight: bold;', // builtins ), 'COMMENTS' => array( 1 => 'color: #ff0000; font-style: italic;', 'MULTI' => '' // doesn't exist ), 'ESCAPE_CHAR' => array( 0 => 'color: #009900; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #999900; font-weight: bold;' ), 'STRINGS' => array( 0 => 'color: #00cc00;' ), 'NUMBERS' => array( 0 => 'color: #cc33cc; font-style: italic' ), 'METHODS' => array( // Doesn't exist in Euphoria. Everything is a function =) 0 => '' ), 'SYMBOLS' => array( 0 => 'color: #999900;', // brackets 1 => 'color: #333333;', // operators 2 => 'color: #333333; font-style: bold' // print+concat ), 'REGEXPS' => array( ), 'SCRIPT' => array( // Never included in scripts. ) ), 'REGEXPS' => array( ), 'URLS' => array( 1 => '', 2 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array(), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ) ); ?>geshi/geshi/sql.php0000664000175000017500000001521712014173444013504 0ustar benbebenbe 'SQL', 'COMMENT_SINGLE' => array(1 =>'--'), 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => 1, 'QUOTEMARKS' => array("'", '"', '`'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( 'ADD', 'ALL', 'ALTER', 'AND', 'AS', 'ASC', 'AUTO_INCREMENT', 'BEFORE', 'BEGIN', 'BETWEEN', 'BIGINT', 'BINARY', 'BLOB', 'BOOLEAN', 'BOTH', 'BY', 'CALL', 'CASE', 'CAST', 'CEIL', 'CEILING', 'CHANGE', 'CHAR', 'CHAR_LENGTH', 'CHARACTER', 'CHARACTER_LENGTH', 'CHECK', 'CLOB', 'COALESCE', 'COLLATE', 'COLUMN', 'COLUMNS', 'CONNECT', 'CONSTRAINT', 'CONVERT', 'COUNT', 'CREATE', 'CROSS', 'CURRENT', 'CURRENT_DATE', 'CURRENT_TIME', 'CURRENT_TIMESTAMP', 'CURRENT_USER', 'DATA', 'DATABASE', 'DATABASES', 'DATE', 'DAY', 'DEC', 'DECIMAL', 'DECLARE', 'DEFAULT', 'DELAYED', 'DELETE', 'DESC', 'DESCRIBE', 'DISTINCT', 'DOUBLE', 'DOMAIN', 'DROP', 'ELSE', 'ENCLOSED', 'END', 'ESCAPED', 'EXCEPT', 'EXEC', 'EXECUTE', 'EXISTS', 'EXP', 'EXPLAIN', 'EXTRACT', 'FALSE', 'FIELD', 'FIELDS', 'FILTER', 'FIRST', 'FLOAT', 'FLOOR', 'FLUSH', 'FOR', 'FOREIGN', 'FROM', 'FULL', 'FUNCTION', 'GET', 'GROUP', 'GROUPING', 'GO', 'GOTO', 'GRANT', 'GRANTED', 'HAVING', 'HOUR', 'IDENTIFIED', 'IDENTITY', 'IF', 'IGNORE', 'IN', 'INCREMENT', 'INDEX', 'INFILE', 'INNER', 'INOUT', 'INPUT', 'INSERT', 'INT', 'INTEGER', 'INTERSECT', 'INTERSECTION', 'INTERVAL', 'INTO', 'IS', 'JOIN', 'KEY', 'KEYS', 'KILL', 'LANGUAGE', 'LARGE', 'LAST', 'LEADING', 'LEFT', 'LENGTH', 'LIKE', 'LIMIT', 'LINES', 'LOAD', 'LOCAL', 'LOCK', 'LOW_PRIORITY', 'LOWER', 'MATCH', 'MAX', 'MERGE', 'MIN', 'MINUTE', 'MOD', 'MODIFIES', 'MODIFY', 'MONTH', 'NATIONAL', 'NATURAL', 'NCHAR', 'NEW', 'NEXT', 'NEXTVAL', 'NONE', 'NOT', 'NULL', 'NULLABLE', 'NULLIF', 'NULLS', 'NUMBER', 'NUMERIC', 'OF', 'OLD', 'ON', 'ONLY', 'OPEN', 'OPTIMIZE', 'OPTION', 'OPTIONALLY', 'OR', 'ORDER', 'OUT', 'OUTER', 'OUTFILE', 'OVER', 'POSITION', 'POWER', 'PRECISION', 'PREPARE', 'PRIMARY', 'PROCEDURAL', 'PROCEDURE', 'READ', 'REAL', 'REF', 'REFERENCES', 'REFERENCING', 'REGEXP', 'RENAME', 'REPLACE', 'RESULT', 'RETURN', 'RETURNS', 'REVOKE', 'RIGHT', 'RLIKE', 'ROLLBACK', 'ROW', 'ROW_NUMBER', 'ROWS', 'RESTRICT', 'ROLE', 'ROUTINE', 'ROW_COUNT', 'SAVEPOINT', 'SEARCH', 'SECOND', 'SECTION', 'SELECT', 'SELF', 'SEQUENCE', 'SESSION', 'SET', 'SETVAL', 'SHOW', 'SIMILAR', 'SIZE', 'SMALLINT', 'SOME', 'SONAME', 'SOURCE', 'SPACE', 'SQL', 'SQRT', 'START', 'STATUS', 'STRAIGHT_JOIN', 'STRUCTURE', 'STYLE', 'SUBSTRING', 'SUM', 'TABLE', 'TABLE_NAME', 'TABLES', 'TERMINATED', 'TEMPORARY', 'THEN', 'TIME', 'TIMESTAMP', 'TO', 'TRAILING', 'TRANSACTION', 'TRIGGER', 'TRIM', 'TRUE', 'TRUNCATE', 'TRUSTED', 'TYPE', 'UNDER', 'UNION', 'UNIQUE', 'UNKNOWN', 'UNLOCK', 'UNSIGNED', 'UPDATE', 'UPPER', 'USE', 'USER', 'USING', 'VALUE', 'VALUES', 'VARCHAR', 'VARIABLES', 'VARYING', 'VIEW', 'WHEN', 'WHERE', 'WITH', 'WITHIN', 'WITHOUT', 'WORK', 'WRITE', 'XOR', 'YEAR', 'ZEROFILL' ) ), 'SYMBOLS' => array( '(', ')', '=', '<', '>', '|', ',', '.', '+', '-', '*', '/' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #993333; font-weight: bold;' ), 'COMMENTS' => array( 1 => 'color: #808080; font-style: italic;', //2 => 'color: #808080; font-style: italic;', 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #66cc66;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' ), 'METHODS' => array( ), 'SYMBOLS' => array( 0 => 'color: #66cc66;' ), 'SCRIPT' => array( ), 'REGEXPS' => array( ) ), 'URLS' => array( 1 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ) ); ?>geshi/geshi/pcre.php0000664000175000017500000001341312014173410013623 0ustar benbebenbe 'PCRE', 'COMMENT_SINGLE' => array(), 'COMMENT_MULTI' => array( ), 'COMMENT_REGEXP' => array( // Non-matching groups 1 => "/(?<=\()\?(?::|(?=\())/", // Modifier groups 2 => "/(?<=\()\?[cdegimopsuxUX\-]+(?::|(?=\)))/", // Look-Aheads 3 => "/(?<=\()\?[!=]/", // Look-Behinds 4 => "/(?<=\()\?<[!=]/", // Forward Matching 5 => "/(?<=\()\?>/", // Recursive Matching 6 => "/(?<=\()\?R(?=\))/", // Named Subpattern 7 => "/(?<=\()\?(?:P?<\w+>|\d+(?=\))|P[=>]\w+(?=\)))/", // Back Reference 8 => "/\\\\(?:[1-9]\d?|g\d+|g\{(?:-?\d+|\w+)\}|k<\w+>|k'\w+'|k\{\w+\})/", // Byte sequence: Octal 9 => "/\\\\[0-7]{2,3}/", // Byte sequence: Hex 10 => "/\\\\x[0-9a-fA-F]{2}/", // Byte sequence: Hex 11 => "/\\\\u[0-9a-fA-F]{4}/", // Byte sequence: Hex 12 => "/\\\\U[0-9a-fA-F]{8}/", // Byte sequence: Unicode 13 => "/\\\\[pP]\{[^}\n]+\}/", // One-Char Escapes 14 => "/\\\\[abdefnrstvwzABCDGSWXZ\\\\\\.\[\]\(\)\{\}\^\\\$\?\+\*]/", // Byte sequence: Control-X sequence 15 => "/\\\\c./", // Quantifier 16 => "/\{(?:\d+,?|\d*,\d+)\}/", // Comment Subpattern 17 => "/(?<=\()\?#[^\)]*/", ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array(), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( ), 'SYMBOLS' => array( 0 => array('.'), 1 => array('(', ')'), 2 => array('[', ']', '|'), 3 => array('^', '$'), 4 => array('?', '+', '*'), ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, ), 'STYLES' => array( 'KEYWORDS' => array( ), 'COMMENTS' => array( 1 => 'color: #993333; font-weight: bold;', 2 => 'color: #cc3300; font-weight: bold;', 3 => 'color: #cc0066; font-weight: bold;', 4 => 'color: #cc0066; font-weight: bold;', 5 => 'color: #cc6600; font-weight: bold;', 6 => 'color: #cc00cc; font-weight: bold;', 7 => 'color: #cc9900; font-weight: bold; font-style: italic;', 8 => 'color: #cc9900; font-style: italic;', 9 => 'color: #669933; font-style: italic;', 10 => 'color: #339933; font-style: italic;', 11 => 'color: #339966; font-style: italic;', 12 => 'color: #339999; font-style: italic;', 13 => 'color: #663399; font-style: italic;', 14 => 'color: #999933; font-style: italic;', 15 => 'color: #993399; font-style: italic;', 16 => 'color: #333399; font-style: italic;', 17 => 'color: #666666; font-style: italic;', 'MULTI' => 'color: #666666; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;', 'HARD' => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( 0 => 'color: #ff0000;', ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' ), 'METHODS' => array( 1 => 'color: #006600;', 2 => 'color: #006600;' ), 'SYMBOLS' => array( 0 => 'color: #333399; font-weight: bold;', 1 => 'color: #993333; font-weight: bold;', 2 => 'color: #339933; font-weight: bold;', 3 => 'color: #333399; font-weight: bold;', 4 => 'color: #333399; font-style: italic;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( ) ), 'URLS' => array( ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'PARSER_CONTROL' => array( 'ENABLE_FLAGS' => array( 'BRACKETS' => GESHI_NEVER, 'NUMBERS' => GESHI_NEVER ) ) ); ?>geshi/geshi/klonec.php0000664000175000017500000002570512014173437014165 0ustar benbebenbe 'KLone C', 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),//#pour precede les include de C 'COMMENT_MULTI' => array('/*' => '*/', '' ),//comentaires C et KLone suivi de ceux pour HTML 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array(//mots-cles C 'if', 'return', 'while', 'case', 'class', 'continue', 'default', 'do', 'else', 'for', 'switch', 'goto', 'null', 'break', 'true', 'enum', 'extern', 'inline', 'false' ), 2 => array(//mots-cles KLone 'out', 'request', 'response', ), 3 => array(//fonctions C usuelles 'printf', 'malloc', 'fopen', 'fclose', 'free', 'fputs', 'fgets', 'feof', 'fwrite', 'perror', 'ferror', 'qsort', 'stats', 'sscanf', 'scanf', 'strdup', 'strcpy', 'strcmp', 'strncpy', 'strcasecmp', 'cat', 'strcat', 'strstr', 'strlen', 'strtof', 'strtod', 'strtok', 'towlower', 'towupper', 'cd', 'system', 'exit', 'exec', 'fork', 'vfork', 'kill', 'signal', 'syslog', 'usleep', 'utime', 'wait', 'waitpid', 'waitid', 'ceil', 'eval', 'round', 'floor', 'atoi', 'atol', 'abs', 'cos', 'sin', 'tan', 'acos', 'asin', 'atan', 'exp', 'time', 'ctime', 'localtime', 'asctime', 'gmtime', 'difftime', 'date' ), 4 => array(//fonctions KLone usuelles 'request_get_cookies', 'request_get_cookie', 'request_get_args', 'request_get_arg', 'request_io', 'request_get_uri', 'request_get_filename', 'request_get_query_string', 'request_get_path_info', 'request_get_if_modified_since', 'request_get_http', 'request_get_client_request', 'request_get_content_length', 'request_get_uploads', 'request_get_uploaded_file', 'request_get_method', 'request_get_protocol', 'request_get_resolved_filename', 'request_get_resolved_path_info', 'request_get_addr', 'request_get_peer_addr', 'request_get_header', 'request_get_field', 'request_get_field_value', 'response_set_content_encoding', 'response_disable_caching', 'response_enable_caching', 'response_set_cookie', 'response_set_method', 'response_get_method', 'response_print_header', 'response_set_field', 'response_del_field', 'response_set_content_type', 'response_set_date', 'response_set_last_modified', 'response_set_content_length', 'response_get_status', 'response_get_header', 'response_io', 'response_redirect', 'response_set_status', 'session_get_vars', 'session_get', 'session_set', 'session_age', 'session_clean', 'session_del', 'io_type', 'io_pipe', 'io_dup', 'io_copy', 'io_seek', 'io_tell', 'io_close', 'io_free', 'io_read', 'io_printf', 'io_flush', 'io_write', 'io_putc', 'io_getc', 'io_get_until', 'io_gets', 'io_codec_add_head', 'io_codec_add_tail', 'io_codecs_remove', 'io_name_set', 'io_name_get' ), 5 => array(//types C 'auto', 'char', 'const', 'double', 'float', 'int', 'long', 'register', 'short', 'signed', 'sizeof', 'static', 'string', 'struct', 'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t', 'time_t', 'FILE' ), 6 => array(//mots-cles HTML 'a', 'abbr', 'acronym', 'address', 'applet', 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', 'caption', 'center', 'cite', 'code', 'colgroup', 'col', 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', 'em', 'fieldset', 'font', 'form', 'frame', 'frameset', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', 'kbd', 'label', 'legend', 'link', 'li', 'map', 'meta', 'noframes', 'noscript', 'object', 'ol', 'optgroup', 'option', 'param', 'pre', 'p', 'q', 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', 'ul', 'u', 'var', ), 7 => array(//autres mots-cles HTML 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', 'background', 'bgcolor', 'border', 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', 'enctype', 'face', 'for', 'frame', 'frameborder', 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', 'id', 'ismap', 'label', 'lang', 'language', 'link', 'longdesc', 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', 'name', 'nohref', 'noresize', 'noshade', 'nowrap', 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', 'profile', 'prompt', 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', 'tabindex', 'target', 'text', 'title', 'type', 'usemap', 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', 'width' ) ), 'SYMBOLS' => array( 1 => array( '<%=', '<%!', '<%', '%>' ), 0 => array( '(', ')', '[', ']', '{', '}', '!', '%', '&', '|', '/', '<', '>', '=', '-', '+', '*', '.', ':', ',', ';', '^' ) ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false, 3 => false, 4 => false, 5 => false, 6 => false, 7 => false ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #b1b100; font-weight: bold;',//pour les mots-cles C 2 => 'color: #000000; font-weight: bold;',//pour les mots-cles KLone 3 => 'color: #6600FF;',//pour les fonctions C 4 => 'color: #6600FF;',//pour les fonctions Klone 5 => 'color: #0099FF; font-weight: bold;',//pour les types C 6 => 'color: #990099; font-weight: bold;',//pour les mots-cles HTML 7 => 'color: #000066;'//pour les autres mots-cles HTML ), 'COMMENTS' => array( 1 => 'color: #808080; font-style: italic;',//commentaire sur une ligne C et KLone 2 => 'color: #339933;',//pour les #... en C 'MULTI' => 'color: #808080; font-style: italic;'//commentaire sur plusieurs lignes C et KLone ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #000000;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' ), 'METHODS' => array( 1 => 'color: #006600;', 2 => 'color: #006600;' ), 'SYMBOLS' => array( 0 => 'color: #000000;', 1 => 'color: #000000; font-weight: bold;' ), 'REGEXPS' => array(), 'SCRIPT' => array( 0 => 'background-color:#ffccff; font-weight: bold; color:#000000;', 1 => '', 2 => '', 3 => 'color: #00bbdd; font-weight: bold;', 4 => 'color: #ddbb00;', 5 => 'color: #009900;' ) ), 'URLS' => array( 1 => '', 2 => '', 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', 4 => 'http://www.koanlogic.com/klone/api/html/globals.html', 5 => '', 6 => 'http://december.com/html/4/element/{FNAMEL}.html', 7 => '' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => '.', 2 => '::' ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, 'SCRIPT_DELIMITERS' => array( //delimiteurs pour KLone 0 => array( '<%=' => '%>' ), 1 => array( '<%!' => '%>' ), 2 => array( '<%' => '%>' ), //delimiteur pour HTML 3 => array( ' '>' ), 4 => array( '&' => ';' ), 5 => array( '<' => '>' ) ), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => false, 1 => true, 2 => true, 3 => false, 4 => false, 5 => true ), 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 6 => array( 'DISALLOWED_BEFORE' => '(?<=<|<\/)', 'DISALLOWED_AFTER' => '(?=\s|\/|>)', ), 7 => array( 'DISALLOWED_AFTER' => '(?=\s*=)', ) ) ) ); ?> geshi/geshi/falcon.php0000664000175000017500000002114612014173370014143 0ustar benbebenbe (1.0.8.10) * - First Release * ************************************************************************************* * * This file is part of GeSHi. * * GeSHi is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * GeSHi is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with GeSHi; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * ************************************************************************************/ $language_data = array ( 'LANG_NAME' => 'Falcon', 'COMMENT_SINGLE' => array( 1 => '//' ), 'COMMENT_MULTI' => array( '/*' => '*/' ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array( "'", '"' ), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( 'break','case','catch','class','const','continue','def','default', 'dropping','elif','else','end','enum','for','forfirst','forlast', 'formiddle','from','function','global','if','init','innerfunc', 'launch','loop','object','raise','return','select','state','static', 'switch','try','while' ), 2 => array( 'false','nil','true', ), 3 => array( 'and','as','eq','fself','in','not','notin','or','provides','self','to' ), 4 => array( 'directive','export','import','load','macro' ), 5 => array( 'ArrayType','BooleanType','ClassMethodType','ClassType','DictionaryType', 'FunctionType','MemBufType','MethodType','NilType','NumericType','ObjectType', 'RangeType','StringType','LBindType' ), 6 => array( "CurrentTime","IOStream","InputStream","MemBufFromPtr","OutputStream", "PageDict","ParseRFC2822","abs","acos","all", "allp","any","anyp","argd","argv", "arrayAdd","arrayBuffer","arrayCompact","arrayDel","arrayDelAll", "arrayFill","arrayFind","arrayHead","arrayIns","arrayMerge", "arrayNM","arrayRemove","arrayResize","arrayScan","arraySort", "arrayTail","asin","assert","atan","atan2", "attributes","baseClass","beginCritical","bless","brigade", "broadcast","cascade","ceil","choice","chr", "className","clone","combinations","compare","consume", "cos","deg2rad","deoob","derivedFrom","describe", "deserialize","dictBack","dictBest","dictClear","dictFill", "dictFind","dictFront","dictGet","dictKeys","dictMerge", "dictRemove","dictSet","dictValues","dirChange","dirCurrent", "dirMake","dirMakeLink","dirReadLink","dirRemove","dolist", "endCritical","epoch","eval","exit","exp", "factorial","fileChgroup","fileChmod","fileChown","fileCopy", "fileExt","fileMove","fileName","fileNameMerge","filePath", "fileRemove","fileType","fileUnit","filter","fint", "firstOf","floop","floor","fract","getAssert", "getEnviron","getProperty","getSlot","getSystemEncoding","getenv", "iff","include","input","inspect","int", "isBound","isCallable","isoob","lbind","len", "let","lit","log","map","max", "metaclass","min","numeric","oob","ord", "paramCount","paramIsRef","paramSet","parameter","passvp", "permutations","pow","print","printl","properties", "rad2deg","random","randomChoice","randomDice","randomGrab", "randomPick","randomSeed","randomWalk","readURI","reduce", "retract","round","seconds","serialize","set", "setProperty","setenv","sin","sleep","stdErr", "stdErrRaw","stdIn","stdInRaw","stdOut","stdOutRaw", "strBack","strBackFind","strBackTrim","strBuffer","strCmpIgnoreCase", "strEndsWith","strEscape","strEsq","strFill","strFind", "strFromMemBuf","strFront","strFrontTrim","strLower","strMerge", "strReplace","strReplicate","strSplit","strSplitTrimmed","strStartsWith", "strToMemBuf","strTrim","strUnescape","strUnesq","strUpper", "strWildcardMatch","subscribe","systemErrorDescription","tan","times", "toString","transcodeFrom","transcodeTo","typeOf","unsetenv", "unsubscribe","valof","vmFalconPath","vmIsMain","vmModuleName", "vmModuleVersionInfo","vmSearchPath","vmSystemType","vmVersionInfo","vmVersionName", "writeURI","xmap","yield","yieldOut" ), 7 => array( "AccessError","Array","BOM","Base64","Class", "ClassMethod","CloneError","CmdlineParser","CodeError","Continuation", "Dictionary","Directory","Error","FileStat","Format", "Function","GarbagePointer","GenericError","Integer","InterruptedError", "IoError","Iterator","LateBinding","List","MathError", "MemoryBuffer","MessageError","Method","Numeric","Object", "ParamError","ParseError","Path","Range","Semaphore", "Sequence","Set","Stream","String","StringStream", "SyntaxError","Table","TableError","TimeStamp","TimeZone", "Tokenizer","TypeError","URI","VMSlot" ), 8 => array( "args","scriptName","scriptPath" ), 9 => array( "GC" ), ), 'URLS' => array( 1 => '', 2 => '', 3 => '', 4 => '', 5 => 'http://falconpl.org/project_docs/core/functions.html#typeOf', 6 => 'http://falconpl.org/project_docs/core/functions.html#{FNAME}', 7 => 'http://falconpl.org/project_docs/core/class_{FNAME}.html', 8 => 'http://falconpl.org/project_docs/core/globals.html#{FNAME}', 9 => 'http://falconpl.org/project_docs/core/object_{FNAME}.html)' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, 2 => true, 3 => true, 4 => true, 5 => true, 6 => true, 7 => true, 8 => true, 9 => true ), 'SYMBOLS' => array( '(',')','$','%','&','/','{','[',']','=','}','?','+','-','#','*','@', '<','>','|',',',':',';','\\','^' ), 'REGEXPS' => array( 0 => array( GESHI_SEARCH => '(\[)([a-zA-Z_]|\c{C})(?:[a-zA-Z0-9_]|\p{C})*(\])', GESHI_REPLACE => '\\2', GESHI_MODIFIERS => '', GESHI_BEFORE => '\\1', GESHI_AFTER => '\\3', ), ), 'STRICT_MODE_APPLIES' => GESHI_MAYBE, 'SCRIPT_DELIMITERS' => array( 0 => array( ' '?>' ) ), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => true ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #000080;font-weight:bold;', 2 => 'color: #800000;font-weight:bold;', 3 => 'color: #800000;font-weight:bold;', 4 => 'color: #000080;font-weight:bold;', 5 => 'color: #000000;font-weight:bold;', 6 => 'font-weight:bold;', 7 => 'font-weight:bold;', 8 => 'font-weight:bold;' ), 'COMMENTS' => array( 1 => 'color: #29B900;', 'MULTI' => 'color: #008080' ), 'STRINGS' => array( 0 => 'color: #800000' ), 'BRACKETS' => array( 0 => 'color: #000000' ), 'ESCAPE_CHAR' => array( 0 => 'color: #800000' ), 'NUMBERS' => array( 0 => 'color: #000000' ), 'METHODS' => array( 0 => 'color: #000000' ), 'SYMBOLS' => array( 0 => 'color: #8B0513' ), 'SCRIPT' => array( 0 => '' ), 'REGEXPS' => array( 0 => 'color: #FF00FF' ) ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( '.' ) ); ?>geshi/geshi/visualprolog.php0000664000175000017500000001017612014173426015432 0ustar benbebenbe 'Visual Prolog', 'COMMENT_SINGLE' => array(1 => '%'), 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'HARDQUOTE' => array('@"', '"'), 'HARDESCAPE' => array('""'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( 'clauses','constants','constructors','delegate','domains','facts', 'goal','guards','inherits','monitor','namespace','open', 'predicates','properties','resolve','supports' ), 2 => array( 'align','and','anyflow','as','bitsize','catch','determ','digits', 'div','do','else','elseif','erroneous','externally','failure', 'finally','from','language','mod','multi','nondeterm','or', 'procedure','quot','rem','single','then','to' ), 3 => array( '#bininclude','#else','#elseif','#endif','#error','#export', '#externally','#if','#import','#include','#message','#options', '#orrequires','#requires','#then','#warning' ), ), 'SYMBOLS' => array( '+', '-', '*', '?', '=', '/', '>', '<', '^', '!', ':', '(', ')', '{', '}', '[', ']' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => true, 1 => true, 2 => true, 3 => true ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #808000;', 2 => 'color: #333399;', 3 => 'color: #800080;', ), 'COMMENTS' => array( 1 => 'color: #AA77BD', 'MULTI' => 'color: #AA77BD' ), 'ESCAPE_CHAR' => array( 0 => 'color: #008080;' ), 'BRACKETS' => array( 0 => 'color: #000000;' ), 'STRINGS' => array( 0 => 'color: #00B7B7;' ), 'NUMBERS' => array( 0 => 'color: #0000FF;' ), 'METHODS' => array( ), 'SYMBOLS' => array( 0 => 'color: #000000;' ), 'SCRIPT' => array( ), 'REGEXPS' => array( 0 => 'color: #008000;', 1 => 'color: #808000;', 2 => 'color: #333399;', ) ), 'URLS' => array( 1 => '', 2 => '', 3 => '' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => ':', 2 => '::' ), 'REGEXPS' => array( 0 => "(?)[A-Z_]\w*(?!\w)", 1 => "\\b(end\\s+)?(implement|class|interface)\\b", 2 => "\\b(end\\s+)?(foreach|if|try)\\b", ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'TAB_WIDTH' => 4 ); ?> geshi/geshi/thinbasic.php0000664000175000017500000040314312014173431014644 0ustar benbebenbe 'thinBasic', 'COMMENT_SINGLE' => array(1 => "'"), 'COMMENT_MULTI' => array(), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array('"'), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( 1 => array( 'XOR','XML_TREETOSTRING','XML_PARSEFILE','XML_PARSE','XML_PARENT','XML_NODETYPE','XML_NODETOSTRING','XML_NEXTSIBLING', 'XML_LASTERROR','XML_GETTAG','XML_FREE','XML_FINDNODE','XML_DECODEPARAM','XML_CHILDDATA','XML_CHILD','XML_ATTRIBVALUE', 'XML_ATTRIBNAME','XML_ATTRIBCOUNT','WORD','WITH','WIN_SHOW','WIN_SETTITLE','WIN_SETFOREGROUND','WIN_ISZOOMED', 'WIN_ISVISIBLE','WIN_ISICONIC','WIN_GETTITLE','WIN_GETFOREGROUND','WIN_GETCLASS','WIN_GETACTIVE','WIN_FLASH','WIN_FINDBYTITLE', 'WIN_FINDBYCLASS','WHILE','WEND','VERIFY','VARPTR','VARIANTVT$','VARIANTVT','VARIANT', 'VARIABLE_GETINFO','VARIABLE_EXISTS','VARIABLE_EXIST','VALUE','VAL','USING$','USING','USES', 'USER','UNTIL','UNITS','UNION','UNICODE2ASCII','UDP_SEND','UDP_RECV','UDP_OPENSERVER', 'UDP_OPEN','UDP_FREEFILE','UDP_CLOSE','UCODE$','UCASE$','UBOUND','TYPE','TRIMFULL$', 'TRIM$','TOOLTIP','TOKENIZER_MOVETOEOL','TOKENIZER_KEYSETUSERSTRING','TOKENIZER_KEYSETUSERNUMBER','TOKENIZER_KEYGETUSERSTRING','TOKENIZER_KEYGETUSERNUMBER','TOKENIZER_KEYGETSUBTYPE', 'TOKENIZER_KEYGETNAME','TOKENIZER_KEYGETMAINTYPE','TOKENIZER_KEYFIND','TOKENIZER_KEYADD','TOKENIZER_GETNEXTTOKEN','TOKENIZER_DEFAULT_SET','TOKENIZER_DEFAULT_GET','TOKENIZER_DEFAULT_CODE', 'TOKENIZER_DEFAULT_CHAR','TO','TIMER','TIME$','THEN','TEXTBOX','TEXT','TCP_SEND', 'TCP_RECV','TCP_PRINT','TCP_OPEN','TCP_LINEINPUT','TCP_FREEFILE','TCP_CLOSE','TB_IMGCTX_SETIMAGEADJUSTMENT','TB_IMGCTX_LOADIMAGE', 'TB_IMGCTX_GETIMAGEADJUSTMENT','TBGL_VIEWPORT','TBGL_VERTEX','TBGL_USETEXTUREFLAG','TBGL_USETEXTURE','TBGL_USELINESTIPPLEFLAG','TBGL_USELINESTIPPLE','TBGL_USELIGHTSOURCEFLAG', 'TBGL_USELIGHTSOURCE','TBGL_USELIGHTINGFLAG','TBGL_USELIGHTING','TBGL_USEFOGFLAG','TBGL_USEFOG','TBGL_USEDEPTHMASK','TBGL_USEDEPTHFLAG','TBGL_USEDEPTH', 'TBGL_USECLIPPLANEFLAG','TBGL_USECLIPPLANE','TBGL_USEBLENDFLAG','TBGL_USEBLEND','TBGL_USEALPHATEST','TBGL_TRANSLATE','TBGL_TORUS','TBGL_TEXCOORD2D', 'TBGL_SPHERE','TBGL_SHOWWINDOW','TBGL_SHOWCURSOR','TBGL_SETWINDOWTITLE','TBGL_SETUPLIGHTSOURCE','TBGL_SETUPFOG','TBGL_SETUPCLIPPLANE','TBGL_SETPRIMITIVEQUALITY', 'TBGL_SETLIGHTPARAMETER','TBGL_SETDRAWDISTANCE','TBGL_SCALE','TBGL_SAVESCREENSHOT','TBGL_ROTATEXYZ','TBGL_ROTATE','TBGL_RESETMATRIX','TBGL_RENDERTOTEXTURE', 'TBGL_RENDERMATRIX3D','TBGL_RENDERMATRIX2D','TBGL_PUSHMATRIX','TBGL_PRINTFONT','TBGL_PRINTBMP','TBGL_PRINT','TBGL_POS3DTOPOS2D','TBGL_POPMATRIX', 'TBGL_POLYGONLOOK','TBGL_POINTSIZE','TBGL_POINTINSIDE3D','TBGL_NORMAL','TBGL_NEWLIST','TBGL_MOUSEGETWHEELDELTA','TBGL_MOUSEGETRBUTTON','TBGL_MOUSEGETPOSY', 'TBGL_MOUSEGETPOSX','TBGL_MOUSEGETMBUTTON','TBGL_MOUSEGETLBUTTON','TBGL_M15SETVERTEXZ','TBGL_M15SETVERTEXY','TBGL_M15SETVERTEXXYZ','TBGL_M15SETVERTEXX','TBGL_M15SETVERTEXTEXY', 'TBGL_M15SETVERTEXTEXXY','TBGL_M15SETVERTEXTEXX','TBGL_M15SETVERTEXTEXN','TBGL_M15SETVERTEXRGB','TBGL_M15SETVERTEXR','TBGL_M15SETVERTEXPSTOP','TBGL_M15SETVERTEXPARAM','TBGL_M15SETVERTEXLAYER', 'TBGL_M15SETVERTEXG','TBGL_M15SETVERTEXB','TBGL_M15SETMODELVERTEXCOUNT','TBGL_M15SETBONECHILD','TBGL_M15ROTBONEZ','TBGL_M15ROTBONEY','TBGL_M15ROTBONEX','TBGL_M15ROTBONE', 'TBGL_M15RESETBONES','TBGL_M15RECALCNORMALS','TBGL_M15LOADMODEL','TBGL_M15INITMODELBUFFERS','TBGL_M15GETVERTEXZ','TBGL_M15GETVERTEXY','TBGL_M15GETVERTEXXYZ','TBGL_M15GETVERTEXX', 'TBGL_M15GETVERTEXTEXY','TBGL_M15GETVERTEXTEXXY','TBGL_M15GETVERTEXTEXX','TBGL_M15GETVERTEXTEXN','TBGL_M15GETVERTEXRGB','TBGL_M15GETVERTEXR','TBGL_M15GETVERTEXPSTOP','TBGL_M15GETVERTEXPARAM', 'TBGL_M15GETVERTEXLAYER','TBGL_M15GETVERTEXG','TBGL_M15GETVERTEXB','TBGL_M15GETMODELVERTEXCOUNT','TBGL_M15GETMODELPOLYCOUNT','TBGL_M15ERASECHILDBONES','TBGL_M15DRAWMODEL','TBGL_M15DEFBONERESET', 'TBGL_M15DEFBONELAYER','TBGL_M15DEFBONEBOX','TBGL_M15DEFBONEANCHOR','TBGL_M15DEFBONEADDVERTEX','TBGL_M15CLEARMODEL','TBGL_M15APPLYBONES','TBGL_M15ADDBONETREEITEM','TBGL_LOADTEXTURE', 'TBGL_LOADFONT','TBGL_LOADBMPFONT','TBGL_LINEWIDTH','TBGL_LINESTIPPLE','TBGL_KILLFONT','TBGL_ISWINDOW','TBGL_ISPOINTVISIBLE','TBGL_ISPOINTBEHINDVIEW', 'TBGL_GETWINDOWMULTIKEYSTATE','TBGL_GETWINDOWKEYSTATE','TBGL_GETWINDOWKEYONCE','TBGL_GETWINDOWCLIENT','TBGL_GETTEXTURENAME','TBGL_GETTEXTURELIST','TBGL_GETPIXELINFO','TBGL_GETMULTIASYNCKEYSTATE', 'TBGL_GETLASTGLERROR','TBGL_GETFRAMERATE','TBGL_GETDESKTOPINFO','TBGL_GETASYNCKEYSTATE','TBGL_ERRORMESSAGES','TBGL_ENDPOLY','TBGL_ENDLIST','TBGL_DRAWFRAME', 'TBGL_DESTROYWINDOW','TBGL_DELETELIST','TBGL_CYLINDER','TBGL_CREATEWINDOWEX','TBGL_CREATEWINDOW','TBGL_COLORALPHA','TBGL_COLOR','TBGL_CLEARFRAME', 'TBGL_CAMERA','TBGL_CALLLIST','TBGL_BUILDFONT','TBGL_BOX','TBGL_BLENDFUNC','TBGL_BINDTEXTURE','TBGL_BEGINPOLY','TBGL_BACKCOLOR', 'TBGL_ALPHAFUNC','TBDI_JOYZ','TBDI_JOYY','TBDI_JOYX','TBDI_JOYSTOPEFFECT','TBDI_JOYSLIDER','TBDI_JOYSETRANGEZ','TBDI_JOYSETRANGEY', 'TBDI_JOYSETRANGEXYZ','TBDI_JOYSETRANGEX','TBDI_JOYSETDEADZONEZ','TBDI_JOYSETDEADZONEY','TBDI_JOYSETDEADZONEXYZ','TBDI_JOYSETDEADZONEX','TBDI_JOYSETAUTOCENTER','TBDI_JOYRZ', 'TBDI_JOYRY','TBDI_JOYRX','TBDI_JOYPOV','TBDI_JOYPLAYEFFECT','TBDI_JOYLOADEFFECT','TBDI_JOYHASFF','TBDI_JOYHASEFFECT','TBDI_JOYGETEFFECTNAME', 'TBDI_JOYGETEFFECTGUID','TBDI_JOYCREATEEFFECT','TBDI_JOYCOUNTPOV','TBDI_JOYCOUNTEFFECTS','TBDI_JOYCOUNTBTN','TBDI_JOYCOUNTAXES','TBDI_JOYBUTTON','TBDI_JOYAVAIL', 'TBDI_INIT','TBASS_STREAMFREE','TBASS_STREAMCREATEFILE','TBASS_SETVOLUME','TBASS_SETEAXPRESET','TBASS_SETEAXPARAMETERS','TBASS_SETCONFIG','TBASS_SET3DPOSITION', 'TBASS_SET3DFACTORS','TBASS_SAMPLELOAD','TBASS_SAMPLEGETCHANNEL','TBASS_MUSICLOAD','TBASS_MUSICFREE','TBASS_INIT','TBASS_GETVOLUME','TBASS_GETVERSION', 'TBASS_GETCONFIG','TBASS_FREE','TBASS_ERRORGETCODE','TBASS_CHANNELSTOP','TBASS_CHANNELSETPOSITION','TBASS_CHANNELSETATTRIBUTES','TBASS_CHANNELSET3DPOSITION','TBASS_CHANNELPLAY', 'TBASS_CHANNELPAUSE','TBASS_CHANNELISACTIVE','TBASS_CHANNELGETPOSITION','TBASS_CHANNELGETLENGTH','TBASS_CHANNELGETATTRIBUTES','TBASS_APPLY3D','TANH','TANGENT', 'TAN','TALLY','TABCTRL_ONNOTIFY','TABCTRL_INSERTITEM','TABCTRL_GETCURSEL','SWAP','SUB','STRZIP$', 'STRUNZIP$','STRREVERSE$','STRPTRLEN','STRPTR','STRINSERT$','STRING$','STRING','STRDELETE$', 'STR$','STOP','STEP','STDOUT','STDIN','STAT_SUM','STAT_STDERROR','STAT_STDDEVIATION', 'STAT_RANDOM','STAT_PRODUCT','STAT_MIN','STAT_MEDIAN','STAT_MEANHARMONIC','STAT_MEANGEOMETRIC','STAT_MEANARITHMETIC','STAT_MAX', 'STAT_INVERSESUM','STAT_HISTOGRAM','STAT_FILLARRAY','STAT_COUNT','STAT_COPYARRAY','STAT_CLONEARRAY','STAT_CHISQUARE','STATIC', 'STATE','SQR','SPLIT','SORT','SMTP_STATISTICS','SMTP_SETOPTION','SMTP_SETLOGFILE','SMTP_SENDHTML', 'SMTP_SENDEMAIL','SMTP_GETERROR','SMTP_FINISHED','SMTP_DEBUG','SMTP_CONNECT','SMTP_CLOSE','SLEEP','SIZEOF', 'SIZE','SINH','SINGLE','SIN','SIGNED','SHOW','SHIFT','SHAPETOBMP', 'SGN','SETAT','SET','SENDMESSAGE','SENDKEYSBULK','SENDKEYS','SEND','SELECTEXPRESSION', 'SELECT','SECH','SEC','SCAN','SAPI_SPEAK','SAPI_SETVOLUME','SAPI_SETRATE','SAPI_MODULELOADED', 'SAPI_GETVOLUME','SAPI_GETRATE','RTRIM$','RTF_SETTEXT','RTF_SETFONTSIZE','RTF_SETFONTNAME','RTF_SETFGCOLOR','RTF_SETEFFECT', 'RTF_SETBGCOLOR','RTF_SETALIGN','RTF_SAVETOFILE','RTF_LOADFROMFILE','RTF_GETTEXT','RTF_GETFONTSIZE','RTF_GETFONTNAME','RTF_GETEFFECT', 'RTF_GETCLASS','RTF_APPENDTEXT','RSET$','ROUND','RNDF','RND','RIGHT$','RIGHT', 'RGB','RESOURCE','RESIZE','RESET','REPLACE$','REPEAT$','REMOVE$','REM', 'REGISTRY_SETVALUE','REGISTRY_SETTXTNUM','REGISTRY_SETTXTBOOL','REGISTRY_SETDWORD','REGISTRY_GETVALUE','REGISTRY_GETTXTNUM','REGISTRY_GETTXTBOOL','REGISTRY_GETDWORD', 'REGISTRY_GETALLKEYS','REGISTRY_DELVALUE','REGISTRY_DELKEY','REFERENCE','REF','REDRAW','REDIM','RAS_SETPARAMS', 'RAS_OPENDIALUPDIALOG','RAS_LOADENTRIES','RAS_HANGUPALL','RAS_HANGUP','RAS_GETENTRY','RAS_BEGINDIAL','RANDOMIZE','RADTODEG', 'QUERYPERFORMANCEFREQUENCY','QUERYPERFORMANCECOUNTER','QUAD','PTR','PRESERVE','POST','POPUP','POKE$', 'POKE','PIXELS','PI','PERMUTATIONS','PEEKMESSAGE','PEEK$','PEEK','PC_SYSTEMUPFROM', 'PC_SUSPENDSTATE','PC_SHUTDOWN','PC_SHOWCARET','PC_SETCARETBLINKTIME','PC_RESTARTDIALOG','PC_PREVENTSHUTDOWN','PC_LOCK','PC_INSERTCD', 'PC_HIDECARET','PC_GETSTATEONOFF','PC_GETSCROLLLOCKKEYSTATE','PC_GETNUMLOCKKEYSTATE','PC_GETCARETBLINKTIME','PC_GETCAPSLOCKKEYSTATE','PC_EMPTYBIN','PC_EJECTCD', 'PC_DECODECDERROR','PCT','PARSESET$','PARSECOUNT','PARSE$','PARSE','PARAMETERS','OUTSIDE', 'OS_WINVERSIONTEXT','OS_WINGETVERSIONTIMELINE','OS_SHELLEXECUTE','OS_SHELLABOUT','OS_SHELL','OS_SETLASTCALLDLLERROR','OS_SERVICESTOP','OS_SERVICESTATUSDESCRIPTION', 'OS_SERVICESTARTTYPEDESCRIPTION','OS_SERVICESTART','OS_SERVICESETSTARTTYPE','OS_SERVICEQUERY','OS_SERVICEGETSTARTTYPE','OS_SERVICEGETLIST','OS_PROCESSKILLBYNAME','OS_PROCESSKILLBYID', 'OS_PROCESSISRUNNING','OS_PROCESSGETLIST','OS_PROCESSGETID','OS_PROCESSARERUNNING','OS_MESSAGEBEEP','OS_ISWOW64','OS_ISFEATUREPRESENT','OS_IEVERSION', 'OS_GETWINDOWSDIR','OS_GETUSERNAME','OS_GETTEMPDIR','OS_GETSYSTEMDIR','OS_GETSPECIALFOLDER','OS_GETLASTCALLDLLSTATUS','OS_GETLASTCALLDLLERROR','OS_GETCURRENTTHREADID', 'OS_GETCURRENTPROCESSID','OS_GETCOMPUTERNAME','OS_GETCOMMANDS','OS_GETCOMMAND','OS_FLASHWINDOW','OS_FATALAPPEXIT','OS_ENVIRON','OS_CALLDLL', 'OR','OPTIONAL','OPTION','OPT','ONCE','ON','OFF','NUMBER', 'NOT','NEXT','NEW','MSGBOX','MOUSEPTR','MODULE','MODELESS','MODAL', 'MOD','MKWRD$','MKS$','MKQ$','MKL$','MKI$','MKE$','MKDWD$', 'MKD$','MKCUX$','MKCUR$','MKBYT$','MIN$','MIN','MID$','MENU', 'MDI_CREATE','MCASE$','MAX$','MAX','MAKWRD','MAKLNG','MAKINT','MAKDWR', 'LTRIM$','LSET$','LOWRD','LOOP','LONG','LOINT','LOG_WRITE','LOGB', 'LOG2','LOG10','LOG','LOCAL','LOC','LL_UPDATEBYNAME','LL_UPDATE','LL_TOSTRING', 'LL_TOFILE','LL_NAME','LL_GETITEM','LL_GETBYNUMBER','LL_FROMFILE','LL_FREE','LL_FINDLAST','LL_FINDBYNAME', 'LL_FINDBYDATA','LL_DELETELIKE','LL_DELETEBYNAME','LL_DELETE','LL_DATABYNAME','LL_DATA','LL_COUNT','LL_ADD', 'LISTBOX','LINE','LIBRARY_EXISTS','LIB','LEN','LEFT$','LEFT','LCASE$', 'LBOUND','LABEL','KILL','JOIN$','ITERATE','ISWINDOW','ISUNICODE','ISTRUE', 'ISODD','ISLIKE','ISFALSE','ISEVEN','IP_TOSTRING','IP_ADDR','INTERNALINFO','INTEGER', 'INT','INSTR','INSIDE','INPUTBOX$','INI_SETKEY','INI_GETSECTIONSLIST','INI_GETSECTIONKEYLIST','INI_GETKEY', 'INET_URLDOWNLOAD','INET_PING','INET_OPENDIALUPDIALOG','INET_GETSTATE','INET_GETREMOTEMACADDRESS','INET_GETIP','INET_GETCONNECTIONMODE','INCR', 'IN','IMAGE','IIF$','IIF','IF','ICRYPTO_TESTSHA1','ICRYPTO_TESTMD5','ICRYPTO_TESTCRC32', 'ICRYPTO_TESTCRC16','ICRYPTO_STRING2ASCII','ICRYPTO_SHA1','ICRYPTO_MD5','ICRYPTO_ENCRYPTRIJNDAEL','ICRYPTO_ENCRYPTRC4','ICRYPTO_DECRYPTRIJNDAEL','ICRYPTO_DECRYPTRC4', 'ICRYPTO_CRC32','ICRYPTO_CRC16','ICRYPTO_BYTEXOR','ICRYPTO_BIN2ASCII','ICRYPTO_ASCII2STRING','ICRYPTO_ASCII2BIN','HOST_ADDR','HOSTNAME_TOIP', 'HOSTIP_TONAME','HIWRD','HIINT','HEX$','HASH','HANDLE','GUIDTXT$','GUID$', 'GRAPHIC','GLVOID','GLUSHORT','GLUINT','GLUBYTE','GLSIZEI','GLSHORT','GLOBAL', 'GLINT','GLFLOAT','GLENUM','GLDOUBLE','GLCLAMPF','GLCLAMPD','GLBYTE','GLBOOLEAN', 'GLBITFIELD','GETWINDOWMULTIKEYSTATE','GETWINDOWKEYSTATE','GETTICKCOUNT','GETS','GETMULTIASYNCKEYSTATE','GETMESSAGE','GETCURRENTINSTANCE', 'GETAT','GETASYNCKEYSTATE','GET','FUNCTION_NPARAMS','FUNCTION_EXISTS','FUNCTION_CPARAMS','FUNCTION','FTP_SETSTRING', 'FTP_SETSERVERDIR','FTP_SETNUMBER','FTP_SETMODE','FTP_SETLOGFILE','FTP_SETLOCALDIR','FTP_QUIT','FTP_PUTFILE','FTP_GETSTRING', 'FTP_GETSERVERDIR','FTP_GETNUMBER','FTP_GETLOCALDIR','FTP_GETLIST','FTP_GETFILE','FTP_GETERRORSTRING','FTP_GETERRORNUMBER','FTP_FINISHED', 'FTP_EXTRACT','FTP_DELFILE','FTP_CONNECT','FTP_COMMAND','FRAME','FRAC','FORMAT$','FOR', 'FONT_LIST','FONT_CREATE','FONT','FOCUS','FLUSH','FIX','FILE_SIZE','FILE_SHELLDELETE', 'FILE_SHELLCOPY','FILE_SETDATETIME','FILE_SEEK','FILE_SAVE','FILE_RENAME','FILE_PUT','FILE_PATHSPLIT','FILE_OPEN', 'FILE_LOF','FILE_LOAD','FILE_LINEPRINT','FILE_LINEINPUT','FILE_KILL','FILE_GETVERSIONSTRING','FILE_GETVERSION','FILE_GETTIME', 'FILE_GETDATETIMESTAMP','FILE_GETDATETIME','FILE_GETDATE','FILE_GET','FILE_EXISTS','FILE_EOF','FILE_COPY','FILE_CLOSE', 'FILE_CHANGED','FILE_APPEND','FACTORIAL','EXTRACT$','EXT','EXPORT','EXP2','EXP10', 'EXP','EXIT','EVAL_STRING','EVAL_SETSTRING','EVAL_SETNUMBER','EVAL_MATH','EVAL_LINKEXT','EVAL_GETSTRING', 'EVAL_GETNUMBER','EVAL_ERRORGETTOKEN','EVAL_ERRORDESCRIPTION','EVAL_ERRORCLEAR','EVAL','ERRCLEAR','ERR','ENGINE_GETCURRENTTOKEN', 'ENDIF','END','ENABLE','ELSEIF','ELSE','ECHO','DWORD','DT_YEAR', 'DT_TIMETOSEC','DT_TIMESUBSECONDS','DT_TIMEFORMAT','DT_TIMEADDSECONDS','DT_SETTIMESEPARATOR','DT_SETDATESEPARATOR','DT_SETDATECENTURY','DT_SECTOTIME', 'DT_SECTODATE','DT_SECOND','DT_MONTH','DT_MINUTE','DT_LASTDAYOFMONTH','DT_ISVALIDDATE','DT_ISLEAPYEAR','DT_HOUR', 'DT_GETWEEKDAYNAME','DT_GETWEEKDAY','DT_GETTIMESTAMP','DT_GETTIMESEPARATOR','DT_GETMONTHNAME','DT_GETDATESEPARATOR','DT_GETDATECENTURY','DT_DAY', 'DT_DATETOSEC','DT_DATETIMESUBSECONDS','DT_DATETIMEADDSECONDS','DT_DATESUBDAYS','DT_DATEFORMAT','DT_DATEDIFF','DT_DATEADDDAYS','DT_COOKIEDATE', 'DRAW','DOUBLE','DOEVENTS','DO','DISABLE','DIR_REMOVE','DIR_MAKEALL','DIR_MAKE', 'DIR_LISTARRAY','DIR_LIST','DIR_ISEMPTY','DIR_ISDIR','DIR_GETCURRENT','DIR_EXISTS','DIR_CHANGEDRIVE','DIR_CHANGE', 'DIM','DICTIONARY_MEMINFO','DICTIONARY_LISTKEYS','DICTIONARY_FREE','DICTIONARY_FIND','DICTIONARY_EXISTS','DICTIONARY_CREATE','DICTIONARY_COUNT', 'DICTIONARY_ADD','DIALOG_STOPEVENTS','DIALOG_SAVEFILE','DIALOG_OPENFILE','DIALOG_GETCONTROL','DIALOG_CHOOSECOLOR','DIALOG_BROWSEFORFOLDER','DIALOG', 'DESKTOP','DESCENDING','DESCEND','DELETEOBJECT','DELETE','DEGTORAD','DECR','DECLARE', 'DATE$','CVWRD','CVS','CVQ','CVL','CVI','CVE','CVDWD', 'CVD','CVCUX','CVCUR','CVBYT','CURRENCY','CUR','CSET$','CSCH', 'CSC','CRYPTO_GETPROVIDERTYPESCOUNT','CRYPTO_GETPROVIDERSCOUNT','CRYPTO_GETDEFAULTPROVIDER','CRYPTO_GENRANDOMSTRING','CRYPTO_ENUMPROVIDERTYPES','CRYPTO_ENUMPROVIDERS','CRYPTO_ENCRYPT', 'CRYPTO_DECRYPT','CREATEFONT','COTH','COTAN','COSH','COS','CONTROL_SETTEXT','CONTROL_GETTEXT', 'CONTROL_GETNUMBER','CONTROL','CONST','CONSOLE_WRITELINE','CONSOLE_WRITE','CONSOLE_WAITKEY','CONSOLE_SHOWWINDOW','CONSOLE_SHOWCURSOR', 'CONSOLE_SETTITLE','CONSOLE_SETTEXTATTRIBUTE','CONSOLE_SETSTDHANDLE','CONSOLE_SETSCREENBUFFERSIZE','CONSOLE_SETPROGRESSBARCHAR','CONSOLE_SETOUTPUTMODE','CONSOLE_SETOUTPUTCP','CONSOLE_SETINPUTMODE', 'CONSOLE_SETFILEAPISTOOEM','CONSOLE_SETFILEAPISTOANSI','CONSOLE_SETCURSORSIZE','CONSOLE_SETCURSORPOSITION','CONSOLE_SETCP','CONSOLE_SETACTIVESCREENBUFFER','CONSOLE_SCROLLWINDOW','CONSOLE_SCROLLBUFFERONEROW', 'CONSOLE_SCROLLBUFFER','CONSOLE_SAVESCREEN','CONSOLE_RESTORESCREEN','CONSOLE_READLINE','CONSOLE_READ','CONSOLE_PROGRESSBAR','CONSOLE_PRINTLINE','CONSOLE_PRINTAT', 'CONSOLE_PRINT','CONSOLE_NORMALSCREEN','CONSOLE_LINE','CONSOLE_INKEYB','CONSOLE_INKEY','CONSOLE_HIDECURSOR','CONSOLE_GETTITLE','CONSOLE_GETTEXTATTRIBUTE', 'CONSOLE_GETSTDHANDLE','CONSOLE_GETSIZEY','CONSOLE_GETSIZEX','CONSOLE_GETPROGRESSBARCHAR','CONSOLE_GETOUTPUTMODE','CONSOLE_GETOUTPUTCP','CONSOLE_GETNUMBEROFMOUSEBUTTONS','CONSOLE_GETINPUTMODE', 'CONSOLE_GETCURSORY','CONSOLE_GETCURSORX','CONSOLE_GETCURSORSIZE','CONSOLE_GETCURRENTFONTINDEX','CONSOLE_GETCP','CONSOLE_GENERATECTRLEVENT','CONSOLE_FULLSCREEN','CONSOLE_FREE', 'CONSOLE_FOREGROUNDRGB','CONSOLE_ENABLECTRLC','CONSOLE_DISABLECTRLC','CONSOLE_CREATESCREENBUFFER','CONSOLE_COLORAT','CONSOLE_CLS','CONSOLE_BOX','CONSOLE_BACKGROUNDRGB', 'CONSOLE_ATTACH','CONSOLE_AREFILEAPISANSI','CONSOLE_ALLOC','COM_VARIANTINIT','COM_VARIANTCOPY','COM_VARIANTCLEAR','COM_SUCCEEDED','COM_STRINGFROMCLSID', 'COM_RELEASE','COM_QUERYINTERFACE','COM_PROGIDFROMCLSID','COM_ISEQUALIID','COM_ISEQUALGUID','COM_ISEQUALCLSID','COM_GETOBJECT','COM_GETENGINEGUID', 'COM_EXECUTE','COM_DISPLAYERROR','COM_CREATEOBJECT','COM_CLSIDFROMSTRING','COM_CLSIDFROMPROGID','COM_BUILDVARIANT','COMBOBOX','COMBINATIONS', 'COLOR','CLIPBOARD_SETTEXT','CLIPBOARD_GETTEXT','CLIENT','CLEARMESSAGES','CHR$','CHOOSE$','CHOOSE', 'CHECKBOX','CHECK3STATE','CHECK','CGI_WRITELOGFILE','CGI_WRITE','CGI_URLDECODESTRING','CGI_UPLOADFILESTIME','CGI_UPLOADFILESNUMBER', 'CGI_UPLOADFILESIZE','CGI_STARTSESSION','CGI_SETSESSIONVARIABLE','CGI_RESETDEFAULTSETTINGS','CGI_REMOVESPECIALCHARSPREFIX','CGI_REMOVEQUOTE','CGI_READ','CGI_LOADCONFIGFILE', 'CGI_HEADER','CGI_GETSESSIONVARIABLE','CGI_GETREQUESTMETHOD','CGI_GETQUERYVALUE','CGI_GETCURRENTSESSION','CGI_GETCURRENTGUID','CGI_ENVIRON','CGI_CFGSETOPTION', 'CGI_CFGGETOPTION','CGI_ADDSPECIALCHARSPREFIX','CGI_ADDQUOTE','CEIL','CASE','CALL','BYVAL','BYTE', 'BYREF','BYCMD','BUTTON','BUNDLE_SETSCRIPTPARAMETERS','BUNDLE_SETSCRIPTNAME','BUNDLE_SETFLAGOBFUSCATEMAINSCRIPT','BUNDLE_SETFLAGDELETEAFTERRUN','BUNDLE_SETFLAGCOMPRESSALLFILES', 'BUNDLE_SETFLAGASKBEFOREEXTRACT','BUNDLE_SETEXTRACTIONFOLDER','BUNDLE_SETCREATIONFOLDER','BUNDLE_SETBUNDLENAME','BUNDLE_RESET','BUNDLE_MAKE','BUNDLE_BUILDER','BUNDLE_ADDFOLDER', 'BUNDLE_ADDFILE','BOUNDCHECK','BIN$','BIFF_WRITETEXT','BIFF_WRITENUMBER','BIFF_WRITEDATE','BIFF_SETROWHEIGHT','BIFF_SETCOLWIDTH', 'BIFF_SETBUFFER','BIFF_CREATEFILE','BIFF_CLOSEFILE','BETWEEN','BEEP','BAR','ATTACH','ATN', 'AT','ASSIGN','ASCIZ','ASCIIZ','ASCII2UNICODE','ASCENDING','ASCEND','ASC', 'AS','ARRAY','ARCTANH','ARCSINH','ARCSIN','ARCSECH','ARCSEC','ARCCSCH', 'ARCCSC','ARCCOTH','ARCCOT','ARCCOSH','ARCCOS','APP_TIMER','APP_SOURCEPATH','APP_SOURCENAME', 'APP_SOURCEFULLNAME','APP_PATH','APP_NAME','APP_LISTVARIABLES','APP_LISTKEYWORDS','APP_LISTFUNCTIONS','APP_LISTEQUATES','APP_INCLUDEPATH', 'APP_GETMODULEFULLPATH','APP_COUNTER','APPEND','ANY','ANIMATE_STOP','ANIMATE_PLAY','ANIMATE_OPEN','AND', 'ALIAS','ALERT','ADD','ACODE$','ABS','%DEF','#MINVERSION','#IF', '#ENDIF','#ELSEIF','#ELSE','#DEFAULT','#DEF','SQLWRITEPRIVATEPROFILESTRING','SQLWRITEFILEDSN','SQLWRITEDSNTOINI', 'SQLVALIDDSN','SQLTRANSACT','SQLTABLES','SQLTABLEPRIVILEGES','SQLSTATISTICS','SQLSPECIALCOLUMNS','SQLSETSTMTOPTION','SQLSETSTMTATTR', 'SQLSETSCROLLOPTIONS','SQLSETPOS','SQLSETPARAM','SQLSETENVATTR','SQLSETDESCREC','SQLSETDESCFIELD','SQLSETCURSORNAME','SQLSETCONNECTOPTION', 'SQLSETCONNECTATTR','SQLSETCONFIGMODE','SQLROWCOUNT','SQLREMOVETRANSLATOR','SQLREMOVEDSNFROMINI','SQLREMOVEDRIVERMANAGER','SQLREMOVEDRIVER','SQLREADFILEDSN', 'SQLPUTDATA','SQLPROCEDURES','SQLPROCEDURECOLUMNS','SQLPRIMARYKEYS','SQLPREPARE','SQLPOSTINSTALLERERROR','SQLPARAMOPTIONS','SQLPARAMDATA', 'SQLNUMRESULTCOLS','SQLNUMPARAMS','SQLNATIVESQL','SQLMORERESULTS','SQLMANAGEDATASOURCES','SQLINSTALLTRANSLATOREX','SQLINSTALLERERROR','SQLINSTALLDRIVERMANAGER', 'SQLINSTALLDRIVEREX','SQLGETTYPEINFO','SQLGETTRANSLATOR','SQLGETSTMTOPTION','SQLGETSTMTATTR','SQLGETPRIVATEPROFILESTRING','SQLGETINSTALLEDDRIVERS','SQLGETINFO', 'SQLGETFUNCTIONS','SQLGETENVATTR','SQLGETDIAGREC','SQLGETDIAGFIELD','SQLGETDESCREC','SQLGETDESCFIELD','SQLGETDATA','SQLGETCURSORNAME', 'SQLGETCONNECTOPTION','SQLGETCONNECTATTR','SQLGETCONFIGMODE','SQLFREESTMT','SQLFREEHANDLE','SQLFREEENV','SQLFREECONNECT','SQLFOREIGNKEYS', 'SQLFETCHSCROLL','SQLFETCH','SQLEXTENDEDFETCH','SQLEXECUTE','SQLEXECDIRECT','SQLERROR','SQLENDTRAN','SQLDRIVERS', 'SQLDRIVERCONNECT','SQLDISCONNECT','SQLDESCRIBEPARAM','SQLDESCRIBECOL','SQLDATASOURCES','SQLCREATEDATASOURCE','SQLCOPYDESC','SQLCONNECT', 'SQLCONFIGDRIVER','SQLCONFIGDATASOURCE','SQLCOLUMNS','SQLCOLUMNPRIVILEGES','SQLCOLATTRIBUTES','SQLCOLATTRIBUTE','SQLCLOSECURSOR','SQLCANCEL', 'SQLBULKOPERATIONS','SQLBROWSECONNECT','SQLBINDPARAMETER','SQLBINDPARAM','SQLBINDCOL','SQLALLOCSTMT','SQLALLOCHANDLE','SQLALLOCENV', 'SQLALLOCCONNECT','ODBCWRONGDRIVER','ODBCWRITEPRIVATEPROFILESTRING','ODBCWRITEFILEDSN','ODBCWRITEDSNTOINI','ODBCVALIDDSN','ODBCUPDATERECORD','ODBCUPDATEBYBOOKMARK', 'ODBCUNLOCKRECORD','ODBCUNBINDCOLUMNS','ODBCUNBINDCOL','ODBCTABLESCOUNT','ODBCTABLES','ODBCTABLEPRIVILEGESCOUNT','ODBCTABLEPRIVILEGES','ODBCSUPPORTS', 'ODBCSTATTABLESCHEMANAME','ODBCSTATTABLEPAGES','ODBCSTATTABLECATALOGNAME','ODBCSTATTABLECARDINALITY','ODBCSTATISTICSCOUNT','ODBCSTATISTICS','ODBCSTATINDEXSORTSEQUENCE','ODBCSTATINDEXSCHEMANAME', 'ODBCSTATINDEXQUALIFIER','ODBCSTATINDEXPAGES','ODBCSTATINDEXFILTERCONDITION','ODBCSTATINDEXCOLUMNORDINALPOSITION','ODBCSTATINDEXCOLUMNNAME','ODBCSTATINDEXCATALOGNAME','ODBCSTATINDEXCARDINALITY','ODBCSTATINDEXALLOWDUPLICATES', 'ODBCSPECIALCOLUMNSCOUNT','ODBCSPECIALCOLUMNS','ODBCSETTXNISOLATION','ODBCSETTRANSLATELIB','ODBCSETTRACEFILE','ODBCSETTRACE','ODBCSETSTMTUSEBOOKMARKS','ODBCSETSTMTSIMULATECURSOR', 'ODBCSETSTMTROWSTATUSPTR','ODBCSETSTMTROWSFETCHEDPTR','ODBCSETSTMTROWOPERATIONPTR','ODBCSETSTMTROWBINDTYPE','ODBCSETSTMTROWBINDOFFSETPTR','ODBCSETSTMTROWARRAYSIZE','ODBCSETSTMTRETRIEVEDATA','ODBCSETSTMTQUERYTIMEOUT', 'ODBCSETSTMTPARAMSTATUSPTR','ODBCSETSTMTPARAMSPROCESSEDPTR','ODBCSETSTMTPARAMSETSIZE','ODBCSETSTMTPARAMOPERATIONPTR','ODBCSETSTMTPARAMBINDTYPE','ODBCSETSTMTPARAMBINDOFFSETPTR','ODBCSETSTMTNOSCAN','ODBCSETSTMTMETADATAID', 'ODBCSETSTMTMAXROWS','ODBCSETSTMTMAXLENGTH','ODBCSETSTMTKEYSETSIZE','ODBCSETSTMTFETCHBOOKMARKPTR','ODBCSETSTMTENABLEAUTOIPD','ODBCSETSTMTCURSORTYPE','ODBCSETSTMTCURSORSENSITIVITY','ODBCSETSTMTCURSORSCROLLABLE', 'ODBCSETSTMTCONCURRENCY','ODBCSETSTMTATTR','ODBCSETSTMTASYNCENABLE','ODBCSETSTMTAPPROWDESC','ODBCSETSTMTAPPPARAMDESC','ODBCSETSTATICCURSOR','ODBCSETROWVERCONCURRENCY','ODBCSETRESULT', 'ODBCSETRELATIVEPOSITION','ODBCSETREADONLYCONCURRENCY','ODBCSETQUIETMODE','ODBCSETPOSITION','ODBCSETPOS','ODBCSETPACKETMODE','ODBCSETOPTIMISTICCONCURRENCY','ODBCSETODBCCURSORS', 'ODBCSETMULTIUSERKEYSETCURSOR','ODBCSETMETADATAID','ODBCSETLOGINTIMEOUT','ODBCSETLOCKCONCURRENCY','ODBCSETKEYSETDRIVENCURSOR','ODBCSETFORWARDONLYCURSOR','ODBCSETENVOUTPUTNTS','ODBCSETENVODBCVERSION', 'ODBCSETENVCPMATCH','ODBCSETENVCONNECTIONPOOLING','ODBCSETENVATTR','ODBCSETDYNAMICCURSOR','ODBCSETDESCREC','ODBCSETDESCFIELD','ODBCSETCURSORTYPE','ODBCSETCURSORSENSITIVITY', 'ODBCSETCURSORSCROLLABILITY','ODBCSETCURSORNAME','ODBCSETCURSORLOCKTYPE','ODBCSETCURSORKEYSETSIZE','ODBCSETCURSORCONCURRENCY','ODBCSETCURRENTCATALOG','ODBCSETCONNECTIONTIMEOUT','ODBCSETCONNECTATTR', 'ODBCSETCONFIGMODE','ODBCSETCONCURVALUESCONCURRENCY','ODBCSETAUTOCOMMITON','ODBCSETAUTOCOMMITOFF','ODBCSETAUTOCOMMIT','ODBCSETASYNCENABLE','ODBCSETACCESSMODE','ODBCSETABSOLUTEPOSITION', 'ODBCROWCOUNT','ODBCROLLBACKTRAN','ODBCROLLBACKENVTRAN','ODBCROLLBACKDBCTRAN','ODBCRESULT','ODBCRESETPARAMS','ODBCREMOVETRANSLATOR','ODBCREMOVEDSNFROMINI', 'ODBCREMOVEDRIVERMANAGER','ODBCREMOVEDRIVER','ODBCREFRESHRECORD','ODBCRECORDCOUNT','ODBCREADFILEDSN','ODBCQUOTEDIDENTIFIERCASE','ODBCPUTDATA','ODBCPROCEDURESCOUNT', 'ODBCPROCEDURES','ODBCPROCEDURECOLUMNSCOUNT','ODBCPROCEDURECOLUMNS','ODBCPRIMARYKEYSCOUNT','ODBCPRIMARYKEYS','ODBCPREPARE','ODBCPOSTINSTALLERERROR','ODBCPARAMDATA', 'ODBCOPENSTMT','ODBCOPENCONNECTION','ODBCNUMRESULTCOLS','ODBCNUMPARAMS','ODBCNATIVESQL','ODBCMOVEPREVIOUS','ODBCMOVENEXT','ODBCMOVELAST', 'ODBCMOVEFIRST','ODBCMOVE','ODBCMORERESULTS','ODBCMANAGEDATASOURCES','ODBCLOCKRECORD','ODBCINSTALLTRANSLATOREX','ODBCINSTALLERERROR','ODBCINSTALLDRIVERMANAGER', 'ODBCINSTALLDRIVEREX','ODBCGETXOPENCLIYEAR','ODBCGETUSERNAME','ODBCGETUNION','ODBCGETTYPEINFOCOUNT','ODBCGETTYPEINFO','ODBCGETTXNISOLATIONOPTION','ODBCGETTXNISOLATION', 'ODBCGETTXNCAPABLE','ODBCGETTRANSLATOR','ODBCGETTRANSLATELIB','ODBCGETTRACEFILE','ODBCGETTRACE','ODBCGETTIMEDATEFUNCTIONS','ODBCGETTIMEDATEDIFFINTERVALS','ODBCGETTIMEDATEADDINTERVALS', 'ODBCGETTABLETERM','ODBCGETSYSTEMFUNCTIONS','ODBCGETSUBQUERIES','ODBCGETSTRINGFUNCTIONS','ODBCGETSTMTUSEBOOKMARKS','ODBCGETSTMTSQLSTATE','ODBCGETSTMTSIMULATECURSOR','ODBCGETSTMTROWSTATUSPTR', 'ODBCGETSTMTROWSFETCHEDPTR','ODBCGETSTMTROWOPERATIONPTR','ODBCGETSTMTROWNUMBER','ODBCGETSTMTROWBINDTYPE','ODBCGETSTMTROWBINDOFFSETPTR','ODBCGETSTMTROWARRAYSIZE','ODBCGETSTMTRETRIEVEDATA','ODBCGETSTMTQUERYTIMEOUT', 'ODBCGETSTMTPARAMSTATUSPTR','ODBCGETSTMTPARAMSPROCESSEDPTR','ODBCGETSTMTPARAMSETSIZE','ODBCGETSTMTPARAMOPERATIONPTR','ODBCGETSTMTPARAMBINDTYPE','ODBCGETSTMTPARAMBINDOFFSETPTR','ODBCGETSTMTNOSCAN','ODBCGETSTMTMETADATAID', 'ODBCGETSTMTMAXROWS','ODBCGETSTMTMAXLENGTH','ODBCGETSTMTKEYSETSIZE','ODBCGETSTMTIMPROWDESC','ODBCGETSTMTIMPPARAMDESC','ODBCGETSTMTFETCHBOOKMARKPTR','ODBCGETSTMTERRORINFO','ODBCGETSTMTENABLEAUTOIPD', 'ODBCGETSTMTCURSORTYPE','ODBCGETSTMTCURSORSENSITIVITY','ODBCGETSTMTCURSORSCROLLABLE','ODBCGETSTMTCONCURRENCY','ODBCGETSTMTATTR','ODBCGETSTMTASYNCENABLE','ODBCGETSTMTAPPROWDESC','ODBCGETSTMTAPPPARAMDESC', 'ODBCGETSTATICCURSORATTRIBUTES2','ODBCGETSTATICCURSORATTRIBUTES1','ODBCGETSTATEMENTSQLSTATE','ODBCGETSTATEMENTERRORINFO','ODBCGETSTANDARDCLICONFORMANCE','ODBCGETSQLSTATE','ODBCGETSQLCONFORMANCE','ODBCGETSQL92VALUEEXPRESSIONS', 'ODBCGETSQL92STRINGFUNCTIONS','ODBCGETSQL92ROWVALUECONSTRUCTOR','ODBCGETSQL92REVOKE','ODBCGETSQL92RELATIONALJOINOPERATORS','ODBCGETSQL92PREDICATES','ODBCGETSQL92NUMERICVALUEFUNCTIONS','ODBCGETSQL92GRANT','ODBCGETSQL92FOREIGNKEYUPDATERULE', 'ODBCGETSQL92FOREIGNKEYDELETERULE','ODBCGETSQL92DATETIMEFUNCTIONS','ODBCGETSPECIALCHARACTERS','ODBCGETSERVERNAME','ODBCGETSEARCHPATTERNESCAPE','ODBCGETSCROLLOPTIONS','ODBCGETSCHEMAUSAGE','ODBCGETSCHEMATERM', 'ODBCGETROWUPDATES','ODBCGETQUIETMODE','ODBCGETPROCEDURETERM','ODBCGETPROCEDURESSUPPORT','ODBCGETPRIVATEPROFILESTRING','ODBCGETPOSOPERATIONS','ODBCGETPARAMARRAYSELECTS','ODBCGETPARAMARRAYROWCOUNTS', 'ODBCGETPACKETMODE','ODBCGETOUTERJOINS','ODBCGETORDERBYCOLUMNSINSELECT','ODBCGETOJCAPABILITIES','ODBCGETODBCVER','ODBCGETODBCINTERFACECONFORMANCE','ODBCGETODBCCURSORS','ODBCGETNUMERICFUNCTIONS', 'ODBCGETNULLCOLLATION','ODBCGETNONNULLABLECOLUMNS','ODBCGETNEEDLONGDATALEN','ODBCGETMULTRESULTSETS','ODBCGETMULTIPLEACTIVETXN','ODBCGETMETADATAID','ODBCGETMAXUSERNAMELEN','ODBCGETMAXTABLESINSELECT', 'ODBCGETMAXTABLENAMELEN','ODBCGETMAXSTATEMENTLEN','ODBCGETMAXSCHEMANAMELEN','ODBCGETMAXROWSIZEINCLUDESLONG','ODBCGETMAXROWSIZE','ODBCGETMAXPROCEDURENAMELEN','ODBCGETMAXINDEXSIZE','ODBCGETMAXIDENTIFIERLEN', 'ODBCGETMAXDRIVERCONNECTIONS','ODBCGETMAXCURSORNAMELEN','ODBCGETMAXCONCURRENTACTIVITIES','ODBCGETMAXCOLUMNSINTABLE','ODBCGETMAXCOLUMNSINSELECT','ODBCGETMAXCOLUMNSINORDERBY','ODBCGETMAXCOLUMNSININDEX','ODBCGETMAXCOLUMNSINGROUPBY', 'ODBCGETMAXCOLUMNNAMELEN','ODBCGETMAXCHARLITERALLEN','ODBCGETMAXCATALOGNAMELEN','ODBCGETMAXBINARYLITERALLEN','ODBCGETMAXASYNCCONCURRENTSTATEMENTS','ODBCGETLONGVARCHARDATABYCOLNAME','ODBCGETLONGVARCHARDATA','ODBCGETLOGINTIMEOUT', 'ODBCGETLIKEESCAPECLAUSE','ODBCGETKEYWORDS','ODBCGETKEYSETCURSORATTRIBUTES2','ODBCGETKEYSETCURSORATTRIBUTES1','ODBCGETINTEGRITY','ODBCGETINSTALLERERRORMESSAGE','ODBCGETINSTALLERERRORCODE','ODBCGETINSTALLEDDRIVERS', 'ODBCGETINSERTSTATEMENT','ODBCGETINFOSTR','ODBCGETINFOSCHEMAVIEWS','ODBCGETINFOLONG','ODBCGETINFOINT','ODBCGETINFO','ODBCGETINDEXKEYWORDS','ODBCGETIMPROWDESCREC', 'ODBCGETIMPROWDESCFIELDTYPE','ODBCGETIMPROWDESCFIELDSCALE','ODBCGETIMPROWDESCFIELDPRECISION','ODBCGETIMPROWDESCFIELDOCTETLENGTH','ODBCGETIMPROWDESCFIELDNULLABLE','ODBCGETIMPROWDESCFIELDNAME','ODBCGETIMPROWDESCFIELD','ODBCGETIMPPARAMDESCREC', 'ODBCGETIMPPARAMDESCFIELDTYPE','ODBCGETIMPPARAMDESCFIELDSCALE','ODBCGETIMPPARAMDESCFIELDPRECISION','ODBCGETIMPPARAMDESCFIELDOCTETLENGTH','ODBCGETIMPPARAMDESCFIELDNULLABLE','ODBCGETIMPPARAMDESCFIELDNAME','ODBCGETIMPPARAMDESCFIELD','ODBCGETIDENTIFIERQUOTECHAR', 'ODBCGETIDENTIFIERCASE','ODBCGETGROUPBY','ODBCGETFUNCTIONS','ODBCGETFORWARDONLYCURSORATTRIBUTES2','ODBCGETFORWARDONLYCURSORATTRIBUTES1','ODBCGETFILEUSAGE','ODBCGETEXPRESSIONSINORDERBY','ODBCGETERRORINFO', 'ODBCGETENVSQLSTATE','ODBCGETENVOUTPUTNTS','ODBCGETENVODBCVERSION','ODBCGETENVIRONMENTSQLSTATE','ODBCGETENVIRONMENTERRORINFO','ODBCGETENVERRORINFO','ODBCGETENVCPMATCH','ODBCGETENVCONNECTIONPOOLING', 'ODBCGETENVATTR','ODBCGETDYNAMICCURSORATTRIBUTES2','ODBCGETDYNAMICCURSORATTRIBUTES1','ODBCGETDROPVIEW','ODBCGETDROPTRANSLATION','ODBCGETDROPTABLE','ODBCGETDROPSCHEMA','ODBCGETDROPDOMAIN', 'ODBCGETDROPCOLLATION','ODBCGETDROPCHARACTERSET','ODBCGETDROPASSERTION','ODBCGETDRIVERVER','ODBCGETDRIVERODBCVER','ODBCGETDRIVERNAME','ODBCGETDRIVERMANAGERINSTALLPATH','ODBCGETDRIVERHLIB', 'ODBCGETDRIVERHENV','ODBCGETDRIVERHDBC','ODBCGETDMVERMINOR','ODBCGETDMVERMAJOR','ODBCGETDMVER','ODBCGETDIAGREC','ODBCGETDIAGFIELD','ODBCGETDESCSQLSTATE', 'ODBCGETDESCRIPTORSQLSTATE','ODBCGETDESCRIPTORERRORINFO','ODBCGETDESCRIBEPARAMETER','ODBCGETDESCREC','ODBCGETDESCFIELD','ODBCGETDESCERRORINFO','ODBCGETDEFAULTTXNISOLATION','ODBCGETDDLINDEX', 'ODBCGETDBMSVER','ODBCGETDBMSNAME','ODBCGETDBCSQLSTATE','ODBCGETDBCERRORINFO','ODBCGETDATETIMELITERALS','ODBCGETDATASTRINGBYCOLNAME','ODBCGETDATASTRING','ODBCGETDATASOURCEREADONLY', 'ODBCGETDATASOURCENAME','ODBCGETDATAEXTENSIONS','ODBCGETDATABASENAME','ODBCGETDATA','ODBCGETCURSORTYPE','ODBCGETCURSORSENSITIVITYSUPPORT','ODBCGETCURSORSENSITIVITY','ODBCGETCURSORSCROLLABILITY', 'ODBCGETCURSORROLLBACKBEHAVIOR','ODBCGETCURSORNAME','ODBCGETCURSORLOCKTYPE','ODBCGETCURSORKEYSETSIZE','ODBCGETCURSORCONCURRENCY','ODBCGETCURSORCOMMITBEHAVIOR','ODBCGETCURRENTCATALOG','ODBCGETCREATEVIEW', 'ODBCGETCREATETRANSLATION','ODBCGETCREATETABLE','ODBCGETCREATESCHEMA','ODBCGETCREATEDOMAIN','ODBCGETCREATECOLLATION','ODBCGETCREATECHARACTERSET','ODBCGETCREATEASSERTION','ODBCGETCORRELATIONNAME', 'ODBCGETCONVERTVARCHAR','ODBCGETCONVERTVARBINARY','ODBCGETCONVERTTINYINT','ODBCGETCONVERTTIMESTAMP','ODBCGETCONVERTTIME','ODBCGETCONVERTSMALLINT','ODBCGETCONVERTREAL','ODBCGETCONVERTNUMERIC', 'ODBCGETCONVERTLONGVARCHAR','ODBCGETCONVERTLONGVARBINARY','ODBCGETCONVERTINTERVALYEARMONTH','ODBCGETCONVERTINTERVALDAYTIME','ODBCGETCONVERTINTEGER','ODBCGETCONVERTFUNCTIONS','ODBCGETCONVERTFLOAT','ODBCGETCONVERTDOUBLE', 'ODBCGETCONVERTDECIMAL','ODBCGETCONVERTDATE','ODBCGETCONVERTCHAR','ODBCGETCONVERTBIT','ODBCGETCONVERTBINARY','ODBCGETCONVERTBIGINT','ODBCGETCONNECTIONTIMEOUT','ODBCGETCONNECTIONSQLSTATE', 'ODBCGETCONNECTIONERRORINFO','ODBCGETCONNECTIONDEAD','ODBCGETCONNECTATTR','ODBCGETCONFIGMODE','ODBCGETCONCATNULLBEHAVIOR','ODBCGETCOLUMNALIAS','ODBCGETCOLLATIONSEQ','ODBCGETCATALOGUSAGE', 'ODBCGETCATALOGTERM','ODBCGETCATALOGNAMESEPARATOR','ODBCGETCATALOGNAME','ODBCGETCATALOGLOCATION','ODBCGETBOOKMARKPERSISTENCE','ODBCGETBATCHSUPPORT','ODBCGETBATCHROWCOUNT','ODBCGETAUTOIPD', 'ODBCGETAUTOCOMMIT','ODBCGETASYNCMODE','ODBCGETASYNCENABLE','ODBCGETALTERTABLE','ODBCGETALTERDOMAIN','ODBCGETAGGREGATEFUNCTIONS','ODBCGETACTIVEENVIRONMENTS','ODBCGETACCESSMODE', 'ODBCGETACCESSIBLETABLES','ODBCGETACCESSIBLEPROCEDURES','ODBCFREESTMT','ODBCFREEHANDLE','ODBCFREEENV','ODBCFREEDESC','ODBCFREEDBC','ODBCFREECONNECT', 'ODBCFOREIGNKEYSCOUNT','ODBCFOREIGNKEYS','ODBCFETCHSCROLL','ODBCFETCHBYBOOKMARK','ODBCFETCH','ODBCEXTENDEDFETCH','ODBCEXECUTE','ODBCEXECDIRECT', 'ODBCERROR','ODBCEOF','ODBCENDTRAN','ODBCDRIVERSCOUNT','ODBCDRIVERS','ODBCDRIVERCONNECT','ODBCDISCONNECT','ODBCDESCRIBEPARAM', 'ODBCDESCRIBECOL','ODBCDELETERECORD','ODBCDELETEBYBOOKMARK','ODBCDATASOURCES','ODBCCREATEDATASOURCE','ODBCCOPYDESC','ODBCCONNECTIONISDEAD','ODBCCONNECTIONISALIVE', 'ODBCCONNECT','ODBCCONFIGDRIVER','ODBCCONFIGDATASOURCE','ODBCCOMMITTRAN','ODBCCOMMITENVTRAN','ODBCCOMMITDBCTRAN','ODBCCOLUPDATABLE','ODBCCOLUNSIGNED', 'ODBCCOLUNNAMED','ODBCCOLUMNSCOUNT','ODBCCOLUMNS','ODBCCOLUMNPRIVILEGESCOUNT','ODBCCOLUMNPRIVILEGES','ODBCCOLUMN','ODBCCOLTYPENAME','ODBCCOLTYPE', 'ODBCCOLTABLENAME','ODBCCOLSEARCHABLE','ODBCCOLSCHEMANAME','ODBCCOLSCALE','ODBCCOLPRECISION','ODBCCOLOCTETLENGTH','ODBCCOLNUMPRECRADIX','ODBCCOLNULLABLE', 'ODBCCOLNAME','ODBCCOLLOCALTYPENAME','ODBCCOLLITERALSUFFIX','ODBCCOLLITERALPREFIX','ODBCCOLLENGTH','ODBCCOLLABEL','ODBCCOLISNULL','ODBCCOLFIXEDPRECSCALE', 'ODBCCOLDISPLAYSIZE','ODBCCOLCOUNT','ODBCCOLCONCISETYPE','ODBCCOLCATALOGNAME','ODBCCOLCASESENSITIVE','ODBCCOLBASETABLENAME','ODBCCOLBASECOLUMNNAME','ODBCCOLAUTOUNIQUEVALUE', 'ODBCCOLATTRIBUTE','ODBCCLOSESTMTCURSOR','ODBCCLOSESTMT','ODBCCLOSECURSOR','ODBCCLOSECONNECTION','ODBCCLEARRESULT','ODBCCANCEL','ODBCBULKOPERATIONS', 'ODBCBROWSECONNECT','ODBCBINDPARAMETER','ODBCBINDCOLTOWORD','ODBCBINDCOLTOTIMESTAMP','ODBCBINDCOLTOTIME','ODBCBINDCOLTOSTRING','ODBCBINDCOLTOSINGLE','ODBCBINDCOLTOQUAD', 'ODBCBINDCOLTONUMERIC','ODBCBINDCOLTOLONG','ODBCBINDCOLTOINTEGER','ODBCBINDCOLTODWORD','ODBCBINDCOLTODOUBLE','ODBCBINDCOLTODECIMAL','ODBCBINDCOLTODATE','ODBCBINDCOLTOCURRENCY', 'ODBCBINDCOLTOBYTE','ODBCBINDCOLTOBIT','ODBCBINDCOLTOBINARY','ODBCBINDCOL','ODBCALLOCSTMT','ODBCALLOCHANDLE','ODBCALLOCENV','ODBCALLOCDESC', 'ODBCALLOCDBC','ODBCALLOCCONNECT','ODBCADDRECORD','GLVIEWPORT','GLVERTEXPOINTER','GLVERTEX4SV','GLVERTEX4S','GLVERTEX4IV', 'GLVERTEX4I','GLVERTEX4FV','GLVERTEX4F','GLVERTEX4DV','GLVERTEX4D','GLVERTEX3SV','GLVERTEX3S','GLVERTEX3IV', 'GLVERTEX3I','GLVERTEX3FV','GLVERTEX3F','GLVERTEX3DV','GLVERTEX3D','GLVERTEX2SV','GLVERTEX2S','GLVERTEX2IV', 'GLVERTEX2I','GLVERTEX2FV','GLVERTEX2F','GLVERTEX2DV','GLVERTEX2D','GLUUNPROJECT','GLUTESSVERTEX','GLUTESSPROPERTY', 'GLUTESSNORMAL','GLUTESSENDPOLYGON','GLUTESSENDCONTOUR','GLUTESSCALLBACK','GLUTESSBEGINPOLYGON','GLUTESSBEGINCONTOUR','GLUSPHERE','GLUSCALEIMAGE', 'GLUQUADRICTEXTURE','GLUQUADRICORIENTATION','GLUQUADRICNORMALS','GLUQUADRICDRAWSTYLE','GLUQUADRICCALLBACK','GLUPWLCURVE','GLUPROJECT','GLUPICKMATRIX', 'GLUPERSPECTIVE','GLUPARTIALDISK','GLUORTHO2D','GLUNURBSSURFACE','GLUNURBSPROPERTY','GLUNURBSCURVE','GLUNURBSCALLBACK','GLUNEXTCONTOUR', 'GLUNEWTESS','GLUNEWQUADRIC','GLUNEWNURBSRENDERER','GLULOOKAT','GLULOADSAMPLINGMATRICES','GLUGETTESSPROPERTY','GLUGETSTRING','GLUGETNURBSPROPERTY', 'GLUERRORSTRING','GLUENDTRIM','GLUENDSURFACE','GLUENDPOLYGON','GLUENDCURVE','GLUDISK','GLUDELETETESS','GLUDELETEQUADRIC', 'GLUDELETENURBSRENDERER','GLUCYLINDER','GLUBUILD2DMIPMAPS','GLUBUILD1DMIPMAPS','GLUBEGINTRIM','GLUBEGINSURFACE','GLUBEGINPOLYGON','GLUBEGINCURVE', 'GLTRANSLATEF','GLTRANSLATED','GLTEXSUBIMAGE2D','GLTEXSUBIMAGE1D','GLTEXPARAMETERIV','GLTEXPARAMETERI','GLTEXPARAMETERFV','GLTEXPARAMETERF', 'GLTEXIMAGE2D','GLTEXIMAGE1D','GLTEXGENIV','GLTEXGENI','GLTEXGENFV','GLTEXGENF','GLTEXGENDV','GLTEXGEND', 'GLTEXENVIV','GLTEXENVI','GLTEXENVFV','GLTEXENVF','GLTEXCOORDPOINTER','GLTEXCOORD4SV','GLTEXCOORD4S','GLTEXCOORD4IV', 'GLTEXCOORD4I','GLTEXCOORD4FV','GLTEXCOORD4F','GLTEXCOORD4DV','GLTEXCOORD4D','GLTEXCOORD3SV','GLTEXCOORD3S','GLTEXCOORD3IV', 'GLTEXCOORD3I','GLTEXCOORD3FV','GLTEXCOORD3F','GLTEXCOORD3DV','GLTEXCOORD3D','GLTEXCOORD2SV','GLTEXCOORD2S','GLTEXCOORD2IV', 'GLTEXCOORD2I','GLTEXCOORD2FV','GLTEXCOORD2F','GLTEXCOORD2DV','GLTEXCOORD2D','GLTEXCOORD1SV','GLTEXCOORD1S','GLTEXCOORD1IV', 'GLTEXCOORD1I','GLTEXCOORD1FV','GLTEXCOORD1F','GLTEXCOORD1DV','GLTEXCOORD1D','GLSTENCILOP','GLSTENCILMASK','GLSTENCILFUNC', 'GLSHADEMODEL','GLSELECTBUFFER','GLSCISSOR','GLSCALEF','GLSCALED','GLROTATEF','GLROTATED','GLRENDERMODE', 'GLRECTSV','GLRECTS','GLRECTIV','GLRECTI','GLRECTFV','GLRECTF','GLRECTDV','GLRECTD', 'GLREADPIXELS','GLREADBUFFER','GLRASTERPOS4SV','GLRASTERPOS4S','GLRASTERPOS4IV','GLRASTERPOS4I','GLRASTERPOS4FV','GLRASTERPOS4F', 'GLRASTERPOS4DV','GLRASTERPOS4D','GLRASTERPOS3SV','GLRASTERPOS3S','GLRASTERPOS3IV','GLRASTERPOS3I','GLRASTERPOS3FV','GLRASTERPOS3F', 'GLRASTERPOS3DV','GLRASTERPOS3D','GLRASTERPOS2SV','GLRASTERPOS2S','GLRASTERPOS2IV','GLRASTERPOS2I','GLRASTERPOS2FV','GLRASTERPOS2F', 'GLRASTERPOS2DV','GLRASTERPOS2D','GLPUSHNAME','GLPUSHMATRIX','GLPUSHCLIENTATTRIB','GLPUSHATTRIB','GLPRIORITIZETEXTURES','GLPOPNAME', 'GLPOPMATRIX','GLPOPCLIENTATTRIB','GLPOPATTRIB','GLPOLYGONSTIPPLE','GLPOLYGONOFFSET','GLPOLYGONMODE','GLPOINTSIZE','GLPIXELZOOM', 'GLPIXELTRANSFERI','GLPIXELTRANSFERF','GLPIXELSTOREI','GLPIXELSTOREF','GLPIXELMAPUSV','GLPIXELMAPUIV','GLPIXELMAPFV','GLPASSTHROUGH', 'GLORTHO','GLNORMALPOINTER','GLNORMAL3SV','GLNORMAL3S','GLNORMAL3IV','GLNORMAL3I','GLNORMAL3FV','GLNORMAL3F', 'GLNORMAL3DV','GLNORMAL3D','GLNORMAL3BV','GLNORMAL3B','GLNEWLIST','GLMULTMATRIXF','GLMULTMATRIXD','GLMATRIXMODE', 'GLMATERIALIV','GLMATERIALI','GLMATERIALFV','GLMATERIALF','GLMAPGRID2F','GLMAPGRID2D','GLMAPGRID1F','GLMAPGRID1D', 'GLMAP2F','GLMAP2D','GLMAP1F','GLMAP1D','GLLOGICOP','GLLOADNAME','GLLOADMATRIXF','GLLOADMATRIXD', 'GLLOADIDENTITY','GLLISTBASE','GLLINEWIDTH','GLLINESTIPPLE','GLLIGHTMODELIV','GLLIGHTMODELI','GLLIGHTMODELFV','GLLIGHTMODELF', 'GLLIGHTIV','GLLIGHTI','GLLIGHTFV','GLLIGHTF','GLISTEXTURE','GLISLIST','GLISENABLED','GLINTERLEAVEDARRAYS', 'GLINITNAMES','GLINDEXUBV','GLINDEXUB','GLINDEXSV','GLINDEXS','GLINDEXPOINTER','GLINDEXMASK','GLINDEXIV', 'GLINDEXI','GLINDEXFV','GLINDEXF','GLINDEXDV','GLINDEXD','GLHINT','GLGETTEXPARAMETERIV','GLGETTEXPARAMETERFV', 'GLGETTEXLEVELPARAMETERIV','GLGETTEXLEVELPARAMETERFV','GLGETTEXIMAGE','GLGETTEXGENIV','GLGETTEXGENFV','GLGETTEXGENDV','GLGETTEXENVIV','GLGETTEXENVFV', 'GLGETSTRING','GLGETPOLYGONSTIPPLE','GLGETPOINTERV','GLGETPIXELMAPUSV','GLGETPIXELMAPUIV','GLGETPIXELMAPFV','GLGETMATERIALIV','GLGETMATERIALFV', 'GLGETMAPIV','GLGETMAPFV','GLGETMAPDV','GLGETLIGHTIV','GLGETLIGHTFV','GLGETINTEGERV','GLGETFLOATV','GLGETERROR', 'GLGETDOUBLEV','GLGETCLIPPLANE','GLGETBOOLEANV','GLGENTEXTURES','GLGENLISTS','GLFRUSTUM','GLFRONTFACE','GLFOGIV', 'GLFOGI','GLFOGFV','GLFOGF','GLFLUSH','GLFINISH','GLFEEDBACKBUFFER','GLEVALPOINT2','GLEVALPOINT1', 'GLEVALMESH2','GLEVALMESH1','GLEVALCOORD2FV','GLEVALCOORD2F','GLEVALCOORD2DV','GLEVALCOORD2D','GLEVALCOORD1FV','GLEVALCOORD1F', 'GLEVALCOORD1DV','GLEVALCOORD1D','GLENDLIST','GLEND','GLENABLECLIENTSTATE','GLENABLE','GLEDGEFLAGV','GLEDGEFLAGPOINTER', 'GLEDGEFLAG','GLDRAWPIXELS','GLDRAWELEMENTS','GLDRAWBUFFER','GLDRAWARRAYS','GLDISABLECLIENTSTATE','GLDISABLE','GLDEPTHRANGE', 'GLDEPTHMASK','GLDEPTHFUNC','GLDELETETEXTURES','GLDELETELISTS','GLCULLFACE','GLCOPYTEXSUBIMAGE2D','GLCOPYTEXSUBIMAGE1D','GLCOPYTEXIMAGE2D', 'GLCOPYTEXIMAGE1D','GLCOPYPIXELS','GLCOLORPOINTER','GLCOLORMATERIAL','GLCOLORMASK','GLCOLOR4USV','GLCOLOR4US','GLCOLOR4UIV', 'GLCOLOR4UI','GLCOLOR4UBV','GLCOLOR4UB','GLCOLOR4SV','GLCOLOR4S','GLCOLOR4IV','GLCOLOR4I','GLCOLOR4FV', 'GLCOLOR4F','GLCOLOR4DV','GLCOLOR4D','GLCOLOR4BV','GLCOLOR4B','GLCOLOR3USV','GLCOLOR3US','GLCOLOR3UIV', 'GLCOLOR3UI','GLCOLOR3UBV','GLCOLOR3UB','GLCOLOR3SV','GLCOLOR3S','GLCOLOR3IV','GLCOLOR3I','GLCOLOR3FV', 'GLCOLOR3F','GLCOLOR3DV','GLCOLOR3D','GLCOLOR3BV','GLCOLOR3B','GLCLIPPLANE','GLCLEARSTENCIL','GLCLEARINDEX', 'GLCLEARDEPTH','GLCLEARCOLOR','GLCLEARACCUM','GLCLEAR','GLCALLLISTS','GLCALLLIST','GLBLENDFUNC','GLBITMAP', 'GLBINDTEXTURE','GLBEGIN','GLARRAYELEMENT','GLARETEXTURESRESIDENT','GLALPHAFUNC','GLACCUM'), 2 => array( '$BEL','$BS','$CR','$CRLF','$DQ','$DT_DATE_SEPARATOR','$DT_LANGUAGE','$DT_TIME_SEPARATOR', '$ESC','$FF','$LF','$NUL','$PC_SD_MY_PC','$SPC','$SQL_OPT_TRACE_FILE_DEFAULT','$SQL_SPEC_STRING', '$TAB','$TRACKBAR_CLASS','$VT','%ACM_OPEN','%ACM_OPENW','%ACM_PLAY','%ACM_STOP','%ACN_START', '%ACN_STOP','%ACS_AUTOPLAY','%ACS_CENTER','%ACS_TIMER','%ACS_TRANSPARENT','%APP_COUNTER_FUNLOOKUP','%APP_COUNTER_KEYLOOKUP','%APP_COUNTER_LOOKUP', '%APP_COUNTER_TESTALPHA','%APP_COUNTER_UDTLOOKUP','%APP_COUNTER_VARLOOKUP','%APP_TIMER_EXECTOTAL','%APP_TIMER_INIT','%APP_TIMER_LOAD','%APP_TIMER_PREPROCESSOR','%AW_ACTIVATE', '%AW_BLEND','%AW_CENTER','%AW_HIDE','%AW_HOR_NEGATIVE','%AW_HOR_POSITIVE','%AW_SLIDE','%AW_VER_NEGATIVE','%AW_VER_POSITIVE', '%BCM_FIRST','%BLACK','%BLUE','%BM_GETCHECK','%BM_SETCHECK','%BST_CHECKED','%BST_UNCHECKED','%BS_AUTOCHECKBOX', '%BS_BOTTOM','%BS_CENTER','%BS_DEFAULT','%BS_DEFPUSHBUTTON','%BS_FLAT','%BS_LEFT','%BS_LEFTTEXT','%BS_MULTILINE', '%BS_NOTIFY','%BS_OWNERDRAW','%BS_PUSHLIKE','%BS_RIGHT','%BS_TOP','%BS_VCENTER','%BUNDLE_BUILDER_CANCELLED','%CBM_FIRST', '%CBN_CLOSEUP','%CBN_DBLCLK','%CBN_DROPDOWN','%CBN_EDITCHANGE','%CBN_EDITUPDATE','%CBN_ERRSPACE','%CBN_KILLFOCUS','%CBN_SELCANCEL', '%CBN_SELCHANGE','%CBN_SELENDCANCEL','%CBN_SELENDOK','%CBN_SETFOCUS','%CBS_AUTOHSCROLL','%CBS_DISABLENOSCROLL','%CBS_DROPDOWN','%CBS_DROPDOWNLIST', '%CBS_HASSTRINGS','%CBS_LOWERCASE','%CBS_NOINTEGRALHEIGHT','%CBS_SIMPLE','%CBS_SORT','%CBS_UPPERCASE','%CB_SELECTSTRING','%CCM_FIRST', '%CC_ANYCOLOR','%CC_ENABLEHOOK','%CC_ENABLETEMPLATE','%CC_ENABLETEMPLATEHANDLE','%CC_FULLOPEN','%CC_PREVENTFULLOPEN','%CC_RGBINIT','%CC_SHOWHELP', '%CC_SOLIDCOLOR','%CFE_BOLD','%CFE_ITALIC','%CFE_LINK','%CFE_PROTECTED','%CFE_STRIKEOUT','%CFE_UNDERLINE','%CFM_ANIMATION', '%CFM_BACKCOLOR','%CFM_BOLD','%CFM_CHARSET','%CFM_COLOR','%CFM_FACE','%CFM_ITALIC','%CFM_KERNING','%CFM_LCID', '%CFM_LINK','%CFM_OFFSET','%CFM_PROTECTED','%CFM_REVAUTHOR','%CFM_SIZE','%CFM_SPACING','%CFM_STRIKEOUT','%CFM_STYLE', '%CFM_UNDERLINE','%CFM_UNDERLINETYPE','%CFM_WEIGHT','%CGI_ACCEPT_FILE_UPLOAD','%CGI_AUTO_ADD_SPECIAL_CHARS_PREFIX','%CGI_AUTO_CREATE_VARS','%CGI_BUFFERIZE_OUTPUT','%CGI_DOUBLE_QUOTE', '%CGI_FILE_UPLOAD_BASEPATH','%CGI_FORCE_SESSION_VALIDATION','%CGI_MAX_BYTE_FROM_STD_IN','%CGI_REQUEST_METHOD_GET','%CGI_REQUEST_METHOD_POST','%CGI_SESSION_FILE_BASEPATH','%CGI_SINGLE_QUOTE','%CGI_SPECIAL_CHARS_PREFIX', '%CGI_TEMPORARY_UPLOAD_PATH','%CGI_UPLOAD_CAN_OVERWRITE','%CGI_WRITE_LOG_FILE','%CGI_WRITE_VARS_INTO_LOG_FILE','%CONOLE_ATTACH_PARENT_PROCESS','%CONSOLE_BACKGROUND_BLUE','%CONSOLE_BACKGROUND_GREEN','%CONSOLE_BACKGROUND_INTENSITY', '%CONSOLE_BACKGROUND_RED','%CONSOLE_BOX_FLAG_3DOFF','%CONSOLE_BOX_FLAG_3DON','%CONSOLE_BOX_FLAG_SHADOW','%CONSOLE_COMMON_LVB_GRID_HORIZONTAL','%CONSOLE_COMMON_LVB_GRID_LVERTICAL','%CONSOLE_COMMON_LVB_GRID_RVERTICAL','%CONSOLE_COMMON_LVB_LEADING_BYTE', '%CONSOLE_COMMON_LVB_REVERSE_VIDEO','%CONSOLE_COMMON_LVB_TRAILING_BYTE','%CONSOLE_COMMON_LVB_UNDERSCORE','%CONSOLE_CTRL_BREAK_EVENT','%CONSOLE_CTRL_C_EVENT','%CONSOLE_DOUBLE_CLICK','%CONSOLE_ENABLE_AUTO_POSITION','%CONSOLE_ENABLE_ECHO_INPUT', '%CONSOLE_ENABLE_EXTENDED_FLAGS','%CONSOLE_ENABLE_INSERT_MODE','%CONSOLE_ENABLE_LINE_INPUT','%CONSOLE_ENABLE_MOUSE_INPUT','%CONSOLE_ENABLE_PROCESSED_INPUT','%CONSOLE_ENABLE_PROCESSED_OUTPUT','%CONSOLE_ENABLE_QUICK_EDIT_MODE','%CONSOLE_ENABLE_WINDOW_INPUT', '%CONSOLE_ENABLE_WRAP_AT_EOL_OUTPUT','%CONSOLE_FOREGROUND_BLUE','%CONSOLE_FOREGROUND_GREEN','%CONSOLE_FOREGROUND_INTENSITY','%CONSOLE_FOREGROUND_RED','%CONSOLE_LBUTTON','%CONSOLE_LINE_HORIZONTAL','%CONSOLE_LINE_VERTICAL', '%CONSOLE_MBUTTON','%CONSOLE_MOUSE_MOVED','%CONSOLE_MOUSE_WHEELED','%CONSOLE_RBUTTON','%CONSOLE_SCROLLBUF_DOWN','%CONSOLE_SCROLLBUF_UP','%CONSOLE_SCROLLWND_ABSOLUTE','%CONSOLE_SCROLLWND_RELATIVE', '%CONSOLE_STD_ERROR_HANDLE','%CONSOLE_STD_INPUT_HANDLE','%CONSOLE_STD_OUTPUT_HANDLE','%CONSOLE_SW_FORCEMINIMIZE','%CONSOLE_SW_HIDE','%CONSOLE_SW_MAXIMIZE','%CONSOLE_SW_MINIMIZE','%CONSOLE_SW_RESTORE', '%CONSOLE_SW_SHOW','%CONSOLE_SW_SHOWDEFAULT','%CONSOLE_SW_SHOWMAXIMIZED','%CONSOLE_SW_SHOWMINIMIZED','%CONSOLE_SW_SHOWMINNOACTIVE','%CONSOLE_SW_SHOWNA','%CONSOLE_SW_SHOWNOACTIVATE','%CONSOLE_SW_SHOWNORMAL', '%CONSOLE_UNAVAILABLE','%CRYPTO_CALG_DES','%CRYPTO_CALG_RC2','%CRYPTO_CALG_RC4','%CRYPTO_PROV_DH_SCHANNEL','%CRYPTO_PROV_DSS','%CRYPTO_PROV_DSS_DH','%CRYPTO_PROV_FORTEZZA', '%CRYPTO_PROV_MS_EXCHANGE','%CRYPTO_PROV_RSA_FULL','%CRYPTO_PROV_RSA_SCHANNEL','%CRYPTO_PROV_RSA_SIG','%CRYPTO_PROV_SSL','%CSIDL_ADMINTOOLS','%CSIDL_ALTSTARTUP','%CSIDL_APPDATA', '%CSIDL_BITBUCKET','%CSIDL_CDBURN_AREA','%CSIDL_COMMON_ADMINTOOLS','%CSIDL_COMMON_ALTSTARTUP','%CSIDL_COMMON_APPDATA','%CSIDL_COMMON_DESKTOPDIRECTORY','%CSIDL_COMMON_DOCUMENTS','%CSIDL_COMMON_FAVORITES', '%CSIDL_COMMON_MUSIC','%CSIDL_COMMON_PICTURES','%CSIDL_COMMON_PROGRAMS','%CSIDL_COMMON_STARTMENU','%CSIDL_COMMON_STARTUP','%CSIDL_COMMON_TEMPLATES','%CSIDL_COMMON_VIDEO','%CSIDL_CONTROLS', '%CSIDL_COOKIES','%CSIDL_DESKTOP','%CSIDL_DESKTOPDIRECTORY','%CSIDL_DRIVES','%CSIDL_FAVORITES','%CSIDL_FLAG_CREATE','%CSIDL_FONTS','%CSIDL_HISTORY', '%CSIDL_INTERNET','%CSIDL_INTERNET_CACHE','%CSIDL_LOCAL_APPDATA','%CSIDL_MYDOCUMENTS','%CSIDL_MYMUSIC','%CSIDL_MYPICTURES','%CSIDL_MYVIDEO','%CSIDL_NETHOOD', '%CSIDL_NETWORK','%CSIDL_PERSONAL','%CSIDL_PRINTERS','%CSIDL_PRINTHOOD','%CSIDL_PROFILE','%CSIDL_PROGRAMS','%CSIDL_PROGRAM_FILES','%CSIDL_PROGRAM_FILES_COMMON', '%CSIDL_RECENT','%CSIDL_SENDTO','%CSIDL_STARTMENU','%CSIDL_STARTUP','%CSIDL_SYSTEM','%CSIDL_TEMPLATES','%CSIDL_WINDOWS','%CW_USEDEFAULT', '%CYAN','%DATE_TIME_FILE_CREATION','%DATE_TIME_LAST_FILE_ACCESS','%DATE_TIME_LAST_FILE_WRITE','%DICTIONARY_MEMINFO_DATA','%DICTIONARY_MEMINFO_KEYS','%DICTIONARY_MEMINFO_TOTAL','%DICTIONARY_SORTDESCENDING', '%DICTIONARY_SORTKEYS','%DSCAPS_CERTIFIED','%DSCAPS_CONTINUOUSRATE','%DSCAPS_EMULDRIVER','%DSCAPS_SECONDARY16BIT','%DSCAPS_SECONDARY8BIT','%DSCAPS_SECONDARYMONO','%DSCAPS_SECONDARYSTEREO', '%DSCCAPS_CERTIFIED','%DSCCAPS_EMULDRIVER','%DS_3DLOOK','%DS_ABSALIGN','%DS_CENTER','%DS_CENTERMOUSE','%DS_CONTEXTHELP','%DS_CONTROL', '%DS_MODALFRAME','%DS_NOFAILCREATE','%DS_SETFONT','%DS_SETFOREGROUND','%DS_SYSMODAL','%DTM_FIRST','%DTM_GETMCCOLOR','%DTM_GETMCFONT', '%DTM_GETMONTHCAL','%DTM_GETRANGE','%DTM_GETSYSTEMTIME','%DTM_SETFORMAT','%DTM_SETFORMATW','%DTM_SETMCCOLOR','%DTM_SETMCFONT','%DTM_SETRANGE', '%DTM_SETSYSTEMTIME','%DTN_CLOSEUP','%DTN_DATETIMECHANGE','%DTN_DROPDOWN','%DTN_FORMAT','%DTN_FORMATQUERY','%DTN_FORMATQUERYW','%DTN_FORMATW', '%DTN_USERSTRING','%DTN_USERSTRINGW','%DTN_WMKEYDOWN','%DTN_WMKEYDOWNW','%DTS_APPCANPARSE','%DTS_LONGDATEFORMAT','%DTS_RIGHTALIGN','%DTS_SHORTDATECENTURYFORMAT', '%DTS_SHORTDATEFORMAT','%DTS_SHOWNONE','%DTS_TIMEFORMAT','%DTS_UPDOWN','%DT_DATE_CENTURY','%DT_DATE_OK','%DT_DAY_IN_YEAR','%DT_DIFF_IN_DAYS', '%DT_DIFF_IN_HOURS','%DT_DIFF_IN_MINUTES','%DT_DIFF_IN_SECONDS','%DT_HOURS_IN_DAY','%DT_MINUTES_IN_HOUR','%DT_SECONDS_IN_DAY','%DT_SECONDS_IN_HOUR','%DT_SECONDS_IN_MINUTE', '%DT_SECONDS_IN_YEAR','%DT_USE_LONG_FORM','%DT_USE_SHORT_FORM','%DT_WRONG_DATE','%DT_WRONG_DAY','%DT_WRONG_MONTH','%ECM_FIRST','%ECOOP_AND', '%ECOOP_OR','%ECOOP_SET','%ECOOP_XOR','%ECO_AUTOHSCROLL','%ECO_AUTOVSCROLL','%ECO_AUTOWORDSELECTION','%ECO_NOHIDESEL','%ECO_READONLY', '%ECO_SELECTIONBAR','%ECO_WANTRETURN','%EM_AUTOURLDETECT','%EM_CANPASTE','%EM_CANREDO','%EM_CANUNDO','%EM_CHARFROMPOS','%EM_DISPLAYBAND', '%EM_EMPTYUNDOBUFFER','%EM_EXGETSEL','%EM_EXLIMITTEXT','%EM_EXLINEFROMCHAR','%EM_EXSETSEL','%EM_FINDTEXT','%EM_FINDTEXTEX','%EM_FINDWORDBREAK', '%EM_FMTLINES','%EM_FORMATRANGE','%EM_GETAUTOURLDETECT','%EM_GETCHARFORMAT','%EM_GETEDITSTYLE','%EM_GETEVENTMASK','%EM_GETFIRSTVISIBLELINE','%EM_GETHANDLE', '%EM_GETIMESTATUS','%EM_GETLIMITTEXT','%EM_GETLINE','%EM_GETLINECOUNT','%EM_GETMARGINS','%EM_GETMODIFY','%EM_GETOLEINTERFACE','%EM_GETOPTIONS', '%EM_GETPARAFORMAT','%EM_GETPASSWORDCHAR','%EM_GETRECT','%EM_GETREDONAME','%EM_GETSCROLLPOS','%EM_GETSEL','%EM_GETSELTEXT','%EM_GETTEXTMODE', '%EM_GETTEXTRANGE','%EM_GETTHUMB','%EM_GETUNDONAME','%EM_GETWORDBREAKPROC','%EM_GETWORDBREAKPROCEX','%EM_HIDESELECTION','%EM_LIMITTEXT','%EM_LINEFROMCHAR', '%EM_LINEINDEX','%EM_LINELENGTH','%EM_LINESCROLL','%EM_PASTESPECIAL','%EM_POSFROMCHAR','%EM_REDO','%EM_REPLACESEL','%EM_REQUESTRESIZE', '%EM_SCROLL','%EM_SCROLLCARET','%EM_SELECTIONTYPE','%EM_SETBKGNDCOLOR','%EM_SETCHARFORMAT','%EM_SETEDITSTYLE','%EM_SETEVENTMASK','%EM_SETHANDLE', '%EM_SETIMESTATUS','%EM_SETLIMITTEXT','%EM_SETMARGINS','%EM_SETMODIFY','%EM_SETOLECALLBACK','%EM_SETOPTIONS','%EM_SETPARAFORMAT','%EM_SETPASSWORDCHAR', '%EM_SETREADONLY','%EM_SETRECT','%EM_SETRECTNP','%EM_SETSCROLLPOS','%EM_SETSEL','%EM_SETTABSTOPS','%EM_SETTARGETDEVICE','%EM_SETTEXTMODE', '%EM_SETUNDOLIMIT','%EM_SETWORDBREAKPROC','%EM_SETWORDBREAKPROCEX','%EM_SETWORDWRAPMODE','%EM_SETZOOM','%EM_STOPGROUPTYPING','%EM_STREAMIN','%EM_STREAMOUT', '%EM_UNDO','%ENM_CHANGE','%ENM_CORRECTTEXT','%ENM_DRAGDROPDONE','%ENM_DROPFILES','%ENM_KEYEVENTS','%ENM_MOUSEEVENTS','%ENM_NONE', '%ENM_PARAGRAPHEXPANDED','%ENM_PROTECTED','%ENM_REQUESTRESIZE','%ENM_SCROLL','%ENM_SCROLLEVENTS','%ENM_SELCHANGE','%ENM_UPDATE','%EN_CHANGE', '%EN_MSGFILTER','%EN_SELCHANGE','%EN_UPDATE','%ES_AUTOHSCROLL','%ES_AUTOVSCROLL','%ES_CENTER','%ES_DISABLENOSCROLL','%ES_EX_NOCALLOLEINIT', '%ES_LEFT','%ES_LOWERCASE','%ES_MULTILINE','%ES_NOHIDESEL','%ES_NOOLEDRAGDROP','%ES_NUMBER','%ES_OEMCONVERT','%ES_PASSWORD', '%ES_READONLY','%ES_RIGHT','%ES_SAVESEL','%ES_SELECTIONBAR','%ES_SUNKEN','%ES_UPPERCASE','%ES_WANTRETURN','%EVAL_EXEC_STRING', '%FALSE','%FILE_ADDPATH','%FILE_ARCHIVE','%FILE_BUILDVERSION','%FILE_HIDDEN','%FILE_MAJORVERSION','%FILE_MINORVERSION','%FILE_NORMAL', '%FILE_READONLY','%FILE_REVISIONVERSION','%FILE_SUBDIR','%FILE_SYSTEM','%FILE_VLABEL','%FTP_GET_CONNECT_STATUS','%FTP_GET_FILE_BYTES_RCVD','%FTP_GET_FILE_BYTES_SENT', '%FTP_GET_LAST_RESPONSE','%FTP_GET_LOCAL_IP','%FTP_GET_SERVER_IP','%FTP_GET_TOTAL_BYTES_RCVD','%FTP_GET_TOTAL_BYTES_SENT','%FTP_LIST_FULLLIST','%FTP_LIST_FULLLISTDIR','%FTP_LIST_FULLLISTFILE', '%FTP_SET_ASYNC','%FTP_SET_CONNECT_WAIT','%FTP_SET_MAX_LISTEN_WAIT','%FTP_SET_MAX_RESPONSE_WAIT','%FTP_SET_PASSIVE','%FTP_SET_SYNC','%FW_BLACK','%FW_BOLD', '%FW_DEMIBOLD','%FW_DONTCARE','%FW_EXTRABOLD','%FW_EXTRALIGHT','%FW_HEAVY','%FW_LIGHT','%FW_MEDIUM','%FW_NORMAL', '%FW_REGULAR','%FW_SEMIBOLD','%FW_THIN','%FW_ULTRABOLD','%FW_ULTRALIGHT','%GDTR_MAX','%GDTR_MIN','%GLU_AUTO_LOAD_MATRIX', '%GLU_BEGIN','%GLU_CCW','%GLU_CULLING','%GLU_CW','%GLU_DISPLAY_MODE','%GLU_DOMAIN_DISTANCE','%GLU_EDGE_FLAG','%GLU_END', '%GLU_ERROR','%GLU_EXTENSIONS','%GLU_EXTERIOR','%GLU_FALSE','%GLU_FILL','%GLU_FLAT','%GLU_INCOMPATIBLE_GL_VERSION','%GLU_INSIDE', '%GLU_INTERIOR','%GLU_INVALID_ENUM','%GLU_INVALID_VALUE','%GLU_LINE','%GLU_MAP1_TRIM_2','%GLU_MAP1_TRIM_3','%GLU_NONE','%GLU_NURBS_ERROR1', '%GLU_NURBS_ERROR10','%GLU_NURBS_ERROR11','%GLU_NURBS_ERROR12','%GLU_NURBS_ERROR13','%GLU_NURBS_ERROR14','%GLU_NURBS_ERROR15','%GLU_NURBS_ERROR16','%GLU_NURBS_ERROR17', '%GLU_NURBS_ERROR18','%GLU_NURBS_ERROR19','%GLU_NURBS_ERROR2','%GLU_NURBS_ERROR20','%GLU_NURBS_ERROR21','%GLU_NURBS_ERROR22','%GLU_NURBS_ERROR23','%GLU_NURBS_ERROR24', '%GLU_NURBS_ERROR25','%GLU_NURBS_ERROR26','%GLU_NURBS_ERROR27','%GLU_NURBS_ERROR28','%GLU_NURBS_ERROR29','%GLU_NURBS_ERROR3','%GLU_NURBS_ERROR30','%GLU_NURBS_ERROR31', '%GLU_NURBS_ERROR32','%GLU_NURBS_ERROR33','%GLU_NURBS_ERROR34','%GLU_NURBS_ERROR35','%GLU_NURBS_ERROR36','%GLU_NURBS_ERROR37','%GLU_NURBS_ERROR4','%GLU_NURBS_ERROR5', '%GLU_NURBS_ERROR6','%GLU_NURBS_ERROR7','%GLU_NURBS_ERROR8','%GLU_NURBS_ERROR9','%GLU_OUTLINE_PATCH','%GLU_OUTLINE_POLYGON','%GLU_OUTSIDE','%GLU_OUT_OF_MEMORY', '%GLU_PARAMETRIC_ERROR','%GLU_PARAMETRIC_TOLERANCE','%GLU_PATH_LENGTH','%GLU_POINT','%GLU_SAMPLING_METHOD','%GLU_SAMPLING_TOLERANCE','%GLU_SILHOUETTE','%GLU_SMOOTH', '%GLU_TESS_BEGIN','%GLU_TESS_BEGIN_DATA','%GLU_TESS_BOUNDARY_ONLY','%GLU_TESS_COMBINE','%GLU_TESS_COMBINE_DATA','%GLU_TESS_COORD_TOO_LARGE','%GLU_TESS_EDGE_FLAG','%GLU_TESS_EDGE_FLAG_DATA', '%GLU_TESS_END','%GLU_TESS_END_DATA','%GLU_TESS_ERROR','%GLU_TESS_ERROR1','%GLU_TESS_ERROR2','%GLU_TESS_ERROR3','%GLU_TESS_ERROR4','%GLU_TESS_ERROR5', '%GLU_TESS_ERROR6','%GLU_TESS_ERROR7','%GLU_TESS_ERROR8','%GLU_TESS_ERROR_DATA','%GLU_TESS_MISSING_BEGIN_CONTOUR','%GLU_TESS_MISSING_BEGIN_POLYGON','%GLU_TESS_MISSING_END_CONTOUR','%GLU_TESS_MISSING_END_POLYGON', '%GLU_TESS_NEED_COMBINE_CALLBACK','%GLU_TESS_TOLERANCE','%GLU_TESS_VERTEX','%GLU_TESS_VERTEX_DATA','%GLU_TESS_WINDING_ABS_GEQ_TWO','%GLU_TESS_WINDING_NEGATIVE','%GLU_TESS_WINDING_NONZERO','%GLU_TESS_WINDING_ODD', '%GLU_TESS_WINDING_POSITIVE','%GLU_TESS_WINDING_RULE','%GLU_TRUE','%GLU_UNKNOWN','%GLU_U_STEP','%GLU_VERSION','%GLU_VERSION_1_1','%GLU_VERSION_1_2', '%GLU_VERTEX','%GLU_V_STEP','%GL_2D','%GL_2_BYTES','%GL_3D','%GL_3D_COLOR','%GL_3D_COLOR_TEXTURE','%GL_3_BYTES', '%GL_4D_COLOR_TEXTURE','%GL_4_BYTES','%GL_ABGR_EXT','%GL_ACCUM','%GL_ACCUM_ALPHA_BITS','%GL_ACCUM_BLUE_BITS','%GL_ACCUM_BUFFER_BIT','%GL_ACCUM_CLEAR_VALUE', '%GL_ACCUM_GREEN_BITS','%GL_ACCUM_RED_BITS','%GL_ADD','%GL_ALL_ATTRIB_BITS','%GL_ALPHA','%GL_ALPHA12','%GL_ALPHA16','%GL_ALPHA4', '%GL_ALPHA8','%GL_ALPHA_BIAS','%GL_ALPHA_BITS','%GL_ALPHA_SCALE','%GL_ALPHA_TEST','%GL_ALPHA_TEST_FUNC','%GL_ALPHA_TEST_REF','%GL_ALWAYS', '%GL_AMBIENT','%GL_AMBIENT_AND_DIFFUSE','%GL_AND','%GL_AND_INVERTED','%GL_AND_REVERSE','%GL_ARRAY_ELEMENT_LOCK_COUNT_EXT','%GL_ARRAY_ELEMENT_LOCK_FIRST_EXT','%GL_ATTRIB_STACK_DEPTH', '%GL_AUTO_NORMAL','%GL_AUX0','%GL_AUX1','%GL_AUX2','%GL_AUX3','%GL_AUX_BUFFERS','%GL_BACK','%GL_BACK_LEFT', '%GL_BACK_RIGHT','%GL_BGRA_EXT','%GL_BGR_EXT','%GL_BITMAP','%GL_BITMAP_TOKEN','%GL_BLEND','%GL_BLEND_COLOR_EXT','%GL_BLEND_DST', '%GL_BLEND_EQUATION_EXT','%GL_BLEND_SRC','%GL_BLUE','%GL_BLUE_BIAS','%GL_BLUE_BITS','%GL_BLUE_SCALE','%GL_BYTE','%GL_C3F_V3F', '%GL_C4F_N3F_V3F','%GL_C4UB_V2F','%GL_C4UB_V3F','%GL_CCW','%GL_CLAMP','%GL_CLEAR','%GL_CLIENT_ALL_ATTRIB_BITS','%GL_CLIENT_ATTRIB_STACK_DEPTH', '%GL_CLIENT_PIXEL_STORE_BIT','%GL_CLIENT_VERTEX_ARRAY_BIT','%GL_CLIP_PLANE0','%GL_CLIP_PLANE1','%GL_CLIP_PLANE2','%GL_CLIP_PLANE3','%GL_CLIP_PLANE4','%GL_CLIP_PLANE5', '%GL_CLIP_VOLUME_CLIPPING_HINT_EXT','%GL_COEFF','%GL_COLOR','%GL_COLOR_ARRAY','%GL_COLOR_ARRAY_COUNT_EXT','%GL_COLOR_ARRAY_EXT','%GL_COLOR_ARRAY_POINTER','%GL_COLOR_ARRAY_POINTER_EXT', '%GL_COLOR_ARRAY_SIZE','%GL_COLOR_ARRAY_SIZE_EXT','%GL_COLOR_ARRAY_STRIDE','%GL_COLOR_ARRAY_STRIDE_EXT','%GL_COLOR_ARRAY_TYPE','%GL_COLOR_ARRAY_TYPE_EXT','%GL_COLOR_BUFFER_BIT','%GL_COLOR_CLEAR_VALUE', '%GL_COLOR_INDEX','%GL_COLOR_INDEX12_EXT','%GL_COLOR_INDEX16_EXT','%GL_COLOR_INDEX1_EXT','%GL_COLOR_INDEX2_EXT','%GL_COLOR_INDEX4_EXT','%GL_COLOR_INDEX8_EXT','%GL_COLOR_INDEXES', '%GL_COLOR_LOGIC_OP','%GL_COLOR_MATERIAL','%GL_COLOR_MATERIAL_FACE','%GL_COLOR_MATERIAL_PARAMETER','%GL_COLOR_SUM_EXT','%GL_COLOR_TABLE_ALPHA_SIZE_EXT','%GL_COLOR_TABLE_BIAS_EXT','%GL_COLOR_TABLE_BLUE_SIZE_EXT', '%GL_COLOR_TABLE_EXT','%GL_COLOR_TABLE_FORMAT_EXT','%GL_COLOR_TABLE_GREEN_SIZE_EXT','%GL_COLOR_TABLE_INTENSITY_SIZE_EXT','%GL_COLOR_TABLE_LUMINANCE_SIZE_EXT','%GL_COLOR_TABLE_RED_SIZE_EXT','%GL_COLOR_TABLE_SCALE_EXT','%GL_COLOR_TABLE_WIDTH_EXT', '%GL_COLOR_WRITEMASK','%GL_COMPILE','%GL_COMPILE_AND_EXECUTE','%GL_CONSTANT_ALPHA_EXT','%GL_CONSTANT_ATTENUATION','%GL_CONSTANT_COLOR_EXT','%GL_CONVOLUTION_1D_EXT','%GL_CONVOLUTION_2D_EXT', '%GL_CONVOLUTION_BORDER_MODE_EXT','%GL_CONVOLUTION_FILTER_BIAS_EXT','%GL_CONVOLUTION_FILTER_SCALE_EXT','%GL_CONVOLUTION_FORMAT_EXT','%GL_CONVOLUTION_HEIGHT_EXT','%GL_CONVOLUTION_WIDTH_EXT','%GL_COPY','%GL_COPY_INVERTED', '%GL_COPY_PIXEL_TOKEN','%GL_CULL_FACE','%GL_CULL_FACE_MODE','%GL_CULL_VERTEX_EXT','%GL_CULL_VERTEX_EYE_POSITION_EXT','%GL_CULL_VERTEX_OBJECT_POSITION_EXT','%GL_CURRENT_BIT','%GL_CURRENT_COLOR', '%GL_CURRENT_INDEX','%GL_CURRENT_NORMAL','%GL_CURRENT_RASTER_COLOR','%GL_CURRENT_RASTER_DISTANCE','%GL_CURRENT_RASTER_INDEX','%GL_CURRENT_RASTER_POSITION','%GL_CURRENT_RASTER_POSITION_VALID','%GL_CURRENT_RASTER_TEXTURE_COORDS', '%GL_CURRENT_SECONDARY_COLOR_EXT','%GL_CURRENT_TEXTURE_COORDS','%GL_CW','%GL_DECAL','%GL_DECR','%GL_DEPTH','%GL_DEPTH_BIAS','%GL_DEPTH_BITS', '%GL_DEPTH_BUFFER_BIT','%GL_DEPTH_CLEAR_VALUE','%GL_DEPTH_COMPONENT','%GL_DEPTH_FUNC','%GL_DEPTH_RANGE','%GL_DEPTH_SCALE','%GL_DEPTH_TEST','%GL_DEPTH_WRITEMASK', '%GL_DIFFUSE','%GL_DITHER','%GL_DOMAIN','%GL_DONT_CARE','%GL_DOUBLE','%GL_DOUBLEBUFFER','%GL_DOUBLE_EXT','%GL_DRAW_BUFFER', '%GL_DRAW_PIXEL_TOKEN','%GL_DST_ALPHA','%GL_DST_COLOR','%GL_EDGE_FLAG','%GL_EDGE_FLAG_ARRAY','%GL_EDGE_FLAG_ARRAY_COUNT_EXT','%GL_EDGE_FLAG_ARRAY_EXT','%GL_EDGE_FLAG_ARRAY_POINTER', '%GL_EDGE_FLAG_ARRAY_POINTER_EXT','%GL_EDGE_FLAG_ARRAY_STRIDE','%GL_EDGE_FLAG_ARRAY_STRIDE_EXT','%GL_EMISSION','%GL_ENABLE_BIT','%GL_EQUAL','%GL_EQUIV','%GL_EVAL_BIT', '%GL_EXP','%GL_EXP2','%GL_EXTENSIONS','%GL_EXT_ABGR','%GL_EXT_BGRA','%GL_EXT_BLEND_COLOR','%GL_EXT_BLEND_MINMAX','%GL_EXT_BLEND_SUBTRACT', '%GL_EXT_CLIP_VOLUME_HINT','%GL_EXT_COLOR_TABLE','%GL_EXT_COMPILED_VERTEX_ARRAY','%GL_EXT_CONVOLUTION','%GL_EXT_CULL_VERTEX','%GL_EXT_HISTOGRAM','%GL_EXT_PACKED_PIXELS','%GL_EXT_PALETTED_TEXTURE', '%GL_EXT_POLYGON_OFFSET','%GL_EXT_SECONDARY_COLOR','%GL_EXT_SEPARATE_SPECULAR_COLOR','%GL_EXT_VERTEX_ARRAY','%GL_EYE_LINEAR','%GL_EYE_PLANE','%GL_FALSE','%GL_FASTEST', '%GL_FEEDBACK','%GL_FEEDBACK_BUFFER_POINTER','%GL_FEEDBACK_BUFFER_SIZE','%GL_FEEDBACK_BUFFER_TYPE','%GL_FILL','%GL_FLAT','%GL_FLOAT','%GL_FOG', '%GL_FOG_BIT','%GL_FOG_COLOR','%GL_FOG_DENSITY','%GL_FOG_END','%GL_FOG_HINT','%GL_FOG_INDEX','%GL_FOG_MODE','%GL_FOG_START', '%GL_FRONT','%GL_FRONT_AND_BACK','%GL_FRONT_FACE','%GL_FRONT_LEFT','%GL_FRONT_RIGHT','%GL_FUNC_ADD_EXT','%GL_FUNC_REVERSE_SUBTRACT_EXT','%GL_FUNC_SUBTRACT_EXT', '%GL_GEQUAL','%GL_GREATER','%GL_GREEN','%GL_GREEN_BIAS','%GL_GREEN_BITS','%GL_GREEN_SCALE','%GL_HINT_BIT','%GL_HISTOGRAM_ALPHA_SIZE_EXT', '%GL_HISTOGRAM_BLUE_SIZE_EXT','%GL_HISTOGRAM_EXT','%GL_HISTOGRAM_FORMAT_EXT','%GL_HISTOGRAM_GREEN_SIZE_EXT','%GL_HISTOGRAM_LUMINANCE_SIZE_EXT','%GL_HISTOGRAM_RED_SIZE_EXT','%GL_HISTOGRAM_SINK_EXT','%GL_HISTOGRAM_WIDTH_EXT', '%GL_INCR','%GL_INDEX_ARRAY','%GL_INDEX_ARRAY_COUNT_EXT','%GL_INDEX_ARRAY_EXT','%GL_INDEX_ARRAY_POINTER','%GL_INDEX_ARRAY_POINTER_EXT','%GL_INDEX_ARRAY_STRIDE','%GL_INDEX_ARRAY_STRIDE_EXT', '%GL_INDEX_ARRAY_TYPE','%GL_INDEX_ARRAY_TYPE_EXT','%GL_INDEX_BITS','%GL_INDEX_CLEAR_VALUE','%GL_INDEX_LOGIC_OP','%GL_INDEX_MODE','%GL_INDEX_OFFSET','%GL_INDEX_SHIFT', '%GL_INDEX_WRITEMASK','%GL_INT','%GL_INTENSITY','%GL_INTENSITY12','%GL_INTENSITY16','%GL_INTENSITY4','%GL_INTENSITY8','%GL_INVALID_ENUM', '%GL_INVALID_OPERATION','%GL_INVALID_VALUE','%GL_INVERT','%GL_KEEP','%GL_LEFT','%GL_LEQUAL','%GL_LESS','%GL_LIGHT0', '%GL_LIGHT1','%GL_LIGHT2','%GL_LIGHT3','%GL_LIGHT4','%GL_LIGHT5','%GL_LIGHT6','%GL_LIGHT7','%GL_LIGHTING', '%GL_LIGHTING_BIT','%GL_LIGHT_MODEL_AMBIENT','%GL_LIGHT_MODEL_COLOR_CONTROL_EXT','%GL_LIGHT_MODEL_LOCAL_VIEWER','%GL_LIGHT_MODEL_TWO_SIDE','%GL_LINE','%GL_LINEAR','%GL_LINEAR_ATTENUATION', '%GL_LINEAR_MIPMAP_LINEAR','%GL_LINEAR_MIPMAP_NEAREST','%GL_LINES','%GL_LINE_BIT','%GL_LINE_LOOP','%GL_LINE_RESET_TOKEN','%GL_LINE_SMOOTH','%GL_LINE_SMOOTH_HINT', '%GL_LINE_STIPPLE','%GL_LINE_STIPPLE_PATTERN','%GL_LINE_STIPPLE_REPEAT','%GL_LINE_STRIP','%GL_LINE_TOKEN','%GL_LINE_WIDTH','%GL_LINE_WIDTH_GRANULARITY','%GL_LINE_WIDTH_RANGE', '%GL_LIST_BASE','%GL_LIST_BIT','%GL_LIST_INDEX','%GL_LIST_MODE','%GL_LOAD','%GL_LOGIC_OP','%GL_LOGIC_OP_MODE','%GL_LUMINANCE', '%GL_LUMINANCE12','%GL_LUMINANCE12_ALPHA12','%GL_LUMINANCE12_ALPHA4','%GL_LUMINANCE16','%GL_LUMINANCE16_ALPHA16','%GL_LUMINANCE4','%GL_LUMINANCE4_ALPHA4','%GL_LUMINANCE6_ALPHA2', '%GL_LUMINANCE8','%GL_LUMINANCE8_ALPHA8','%GL_LUMINANCE_ALPHA','%GL_MAP1_COLOR_4','%GL_MAP1_GRID_DOMAIN','%GL_MAP1_GRID_SEGMENTS','%GL_MAP1_INDEX','%GL_MAP1_NORMAL', '%GL_MAP1_TEXTURE_COORD_1','%GL_MAP1_TEXTURE_COORD_2','%GL_MAP1_TEXTURE_COORD_3','%GL_MAP1_TEXTURE_COORD_4','%GL_MAP1_VERTEX_3','%GL_MAP1_VERTEX_4','%GL_MAP2_COLOR_4','%GL_MAP2_GRID_DOMAIN', '%GL_MAP2_GRID_SEGMENTS','%GL_MAP2_INDEX','%GL_MAP2_NORMAL','%GL_MAP2_TEXTURE_COORD_1','%GL_MAP2_TEXTURE_COORD_2','%GL_MAP2_TEXTURE_COORD_3','%GL_MAP2_TEXTURE_COORD_4','%GL_MAP2_VERTEX_3', '%GL_MAP2_VERTEX_4','%GL_MAP_COLOR','%GL_MAP_STENCIL','%GL_MATRIX_MODE','%GL_MAX_ATTRIB_STACK_DEPTH','%GL_MAX_CLIENT_ATTRIB_STACK_DEPTH','%GL_MAX_CLIP_PLANES','%GL_MAX_CONVOLUTION_HEIGHT_EXT', '%GL_MAX_CONVOLUTION_WIDTH_EXT','%GL_MAX_EVAL_ORDER','%GL_MAX_EXT','%GL_MAX_LIGHTS','%GL_MAX_LIST_NESTING','%GL_MAX_MODELVIEW_STACK_DEPTH','%GL_MAX_NAME_STACK_DEPTH','%GL_MAX_PIXEL_MAP_TABLE', '%GL_MAX_PROJECTION_STACK_DEPTH','%GL_MAX_TEXTURE_SIZE','%GL_MAX_TEXTURE_STACK_DEPTH','%GL_MAX_VIEWPORT_DIMS','%GL_MINMAX_EXT','%GL_MINMAX_FORMAT_EXT','%GL_MINMAX_SINK_EXT','%GL_MIN_EXT', '%GL_MODELVIEW','%GL_MODELVIEW_MATRIX','%GL_MODELVIEW_STACK_DEPTH','%GL_MODULATE','%GL_MULT','%GL_N3F_V3F','%GL_NAME_STACK_DEPTH','%GL_NAND', '%GL_NEAREST','%GL_NEAREST_MIPMAP_LINEAR','%GL_NEAREST_MIPMAP_NEAREST','%GL_NEVER','%GL_NICEST','%GL_NONE','%GL_NOOP','%GL_NOR', '%GL_NORMALIZE','%GL_NORMAL_ARRAY','%GL_NORMAL_ARRAY_COUNT_EXT','%GL_NORMAL_ARRAY_EXT','%GL_NORMAL_ARRAY_POINTER','%GL_NORMAL_ARRAY_POINTER_EXT','%GL_NORMAL_ARRAY_STRIDE','%GL_NORMAL_ARRAY_STRIDE_EXT', '%GL_NORMAL_ARRAY_TYPE','%GL_NORMAL_ARRAY_TYPE_EXT','%GL_NOTEQUAL','%GL_NO_ERROR','%GL_OBJECT_LINEAR','%GL_OBJECT_PLANE','%GL_ONE','%GL_ONE_MINUS_CONSTANT_ALPHA_EXT', '%GL_ONE_MINUS_CONSTANT_COLOR_EXT','%GL_ONE_MINUS_DST_ALPHA','%GL_ONE_MINUS_DST_COLOR','%GL_ONE_MINUS_SRC_ALPHA','%GL_ONE_MINUS_SRC_COLOR','%GL_OR','%GL_ORDER','%GL_OR_INVERTED', '%GL_OR_REVERSE','%GL_OUT_OF_MEMORY','%GL_PACK_ALIGNMENT','%GL_PACK_LSB_FIRST','%GL_PACK_ROW_LENGTH','%GL_PACK_SKIP_PIXELS','%GL_PACK_SKIP_ROWS','%GL_PACK_SWAP_BYTES', '%GL_PASS_THROUGH_TOKEN','%GL_PERSPECTIVE_CORRECTION_HINT','%GL_PIXEL_MAP_A_TO_A','%GL_PIXEL_MAP_A_TO_A_SIZE','%GL_PIXEL_MAP_B_TO_B','%GL_PIXEL_MAP_B_TO_B_SIZE','%GL_PIXEL_MAP_G_TO_G','%GL_PIXEL_MAP_G_TO_G_SIZE', '%GL_PIXEL_MAP_I_TO_A','%GL_PIXEL_MAP_I_TO_A_SIZE','%GL_PIXEL_MAP_I_TO_B','%GL_PIXEL_MAP_I_TO_B_SIZE','%GL_PIXEL_MAP_I_TO_G','%GL_PIXEL_MAP_I_TO_G_SIZE','%GL_PIXEL_MAP_I_TO_I','%GL_PIXEL_MAP_I_TO_I_SIZE', '%GL_PIXEL_MAP_I_TO_R','%GL_PIXEL_MAP_I_TO_R_SIZE','%GL_PIXEL_MAP_R_TO_R','%GL_PIXEL_MAP_R_TO_R_SIZE','%GL_PIXEL_MAP_S_TO_S','%GL_PIXEL_MAP_S_TO_S_SIZE','%GL_PIXEL_MODE_BIT','%GL_POINT', '%GL_POINTS','%GL_POINT_BIT','%GL_POINT_SIZE','%GL_POINT_SIZE_GRANULARITY','%GL_POINT_SIZE_RANGE','%GL_POINT_SMOOTH','%GL_POINT_SMOOTH_HINT','%GL_POINT_TOKEN', '%GL_POLYGON','%GL_POLYGON_BIT','%GL_POLYGON_MODE','%GL_POLYGON_OFFSET_BIAS_EXT','%GL_POLYGON_OFFSET_EXT','%GL_POLYGON_OFFSET_FACTOR','%GL_POLYGON_OFFSET_FACTOR_EXT','%GL_POLYGON_OFFSET_FILL', '%GL_POLYGON_OFFSET_LINE','%GL_POLYGON_OFFSET_POINT','%GL_POLYGON_OFFSET_UNITS','%GL_POLYGON_SMOOTH','%GL_POLYGON_SMOOTH_HINT','%GL_POLYGON_STIPPLE','%GL_POLYGON_STIPPLE_BIT','%GL_POLYGON_TOKEN', '%GL_POSITION','%GL_POST_COLOR_MATRIX_COLOR_TABLE_EXT','%GL_POST_CONVOLUTION_ALPHA_BIAS_EXT','%GL_POST_CONVOLUTION_ALPHA_SCALE_EXT','%GL_POST_CONVOLUTION_BLUE_BIAS_EXT','%GL_POST_CONVOLUTION_BLUE_SCALE_EXT','%GL_POST_CONVOLUTION_COLOR_TABLE_EXT','%GL_POST_CONVOLUTION_GREEN_BIAS_EXT', '%GL_POST_CONVOLUTION_GREEN_SCALE_EXT','%GL_POST_CONVOLUTION_RED_BIAS_EXT','%GL_POST_CONVOLUTION_RED_SCALE_EXT','%GL_PROJECTION','%GL_PROJECTION_MATRIX','%GL_PROJECTION_STACK_DEPTH','%GL_PROXY_COLOR_TABLE_EXT','%GL_PROXY_HISTOGRAM_EXT', '%GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_EXT','%GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_EXT','%GL_PROXY_TEXTURE_1D','%GL_PROXY_TEXTURE_2D','%GL_Q','%GL_QUADRATIC_ATTENUATION','%GL_QUADS','%GL_QUAD_STRIP', '%GL_R','%GL_R3_G3_B2','%GL_READ_BUFFER','%GL_RED','%GL_REDUCE_EXT','%GL_RED_BIAS','%GL_RED_BITS','%GL_RED_SCALE', '%GL_RENDER','%GL_RENDERER','%GL_RENDER_MODE','%GL_REPEAT','%GL_REPLACE','%GL_RETURN','%GL_RGB','%GL_RGB10', '%GL_RGB10_A2','%GL_RGB12','%GL_RGB16','%GL_RGB4','%GL_RGB5','%GL_RGB5_A1','%GL_RGB8','%GL_RGBA', '%GL_RGBA12','%GL_RGBA16','%GL_RGBA2','%GL_RGBA4','%GL_RGBA8','%GL_RGBA_MODE','%GL_RIGHT','%GL_S', '%GL_SCISSOR_BIT','%GL_SCISSOR_BOX','%GL_SCISSOR_TEST','%GL_SECONDARY_COLOR_ARRAY_EXT','%GL_SECONDARY_COLOR_ARRAY_POINTER_EXT','%GL_SECONDARY_COLOR_ARRAY_SIZE_EXT','%GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT','%GL_SECONDARY_COLOR_ARRAY_TYPE_EXT', '%GL_SELECT','%GL_SELECTION_BUFFER_POINTER','%GL_SELECTION_BUFFER_SIZE','%GL_SEPARABLE_2D_EXT','%GL_SEPARATE_SPECULAR_COLOR_EXT','%GL_SET','%GL_SHADE_MODEL','%GL_SHININESS', '%GL_SHORT','%GL_SINGLE_COLOR_EXT','%GL_SMOOTH','%GL_SPECULAR','%GL_SPHERE_MAP','%GL_SPOT_CUTOFF','%GL_SPOT_DIRECTION','%GL_SPOT_EXPONENT', '%GL_SRC_ALPHA','%GL_SRC_ALPHA_SATURATE','%GL_SRC_COLOR','%GL_STACK_OVERFLOW','%GL_STACK_UNDERFLOW','%GL_STENCIL','%GL_STENCIL_BITS','%GL_STENCIL_BUFFER_BIT', '%GL_STENCIL_CLEAR_VALUE','%GL_STENCIL_FAIL','%GL_STENCIL_FUNC','%GL_STENCIL_INDEX','%GL_STENCIL_PASS_DEPTH_FAIL','%GL_STENCIL_PASS_DEPTH_PASS','%GL_STENCIL_REF','%GL_STENCIL_TEST', '%GL_STENCIL_VALUE_MASK','%GL_STENCIL_WRITEMASK','%GL_STEREO','%GL_SUBPIXEL_BITS','%GL_T','%GL_T2F_C3F_V3F','%GL_T2F_C4F_N3F_V3F','%GL_T2F_C4UB_V3F', '%GL_T2F_N3F_V3F','%GL_T2F_V3F','%GL_T4F_C4F_N3F_V4F','%GL_T4F_V4F','%GL_TABLE_TOO_LARGE_EXT','%GL_TEXTURE','%GL_TEXTURE_1D','%GL_TEXTURE_2D', '%GL_TEXTURE_ALPHA_SIZE','%GL_TEXTURE_BINDING_1D','%GL_TEXTURE_BINDING_2D','%GL_TEXTURE_BIT','%GL_TEXTURE_BLUE_SIZE','%GL_TEXTURE_BORDER','%GL_TEXTURE_BORDER_COLOR','%GL_TEXTURE_COMPONENTS', '%GL_TEXTURE_COORD_ARRAY','%GL_TEXTURE_COORD_ARRAY_COUNT_EXT','%GL_TEXTURE_COORD_ARRAY_EXT','%GL_TEXTURE_COORD_ARRAY_POINTER','%GL_TEXTURE_COORD_ARRAY_POINTER_EXT','%GL_TEXTURE_COORD_ARRAY_SIZE','%GL_TEXTURE_COORD_ARRAY_SIZE_EXT','%GL_TEXTURE_COORD_ARRAY_STRIDE', '%GL_TEXTURE_COORD_ARRAY_STRIDE_EXT','%GL_TEXTURE_COORD_ARRAY_TYPE','%GL_TEXTURE_COORD_ARRAY_TYPE_EXT','%GL_TEXTURE_ENV','%GL_TEXTURE_ENV_COLOR','%GL_TEXTURE_ENV_MODE','%GL_TEXTURE_GEN_MODE','%GL_TEXTURE_GEN_Q', '%GL_TEXTURE_GEN_R','%GL_TEXTURE_GEN_S','%GL_TEXTURE_GEN_T','%GL_TEXTURE_GREEN_SIZE','%GL_TEXTURE_HEIGHT','%GL_TEXTURE_INTENSITY_SIZE','%GL_TEXTURE_INTERNAL_FORMAT','%GL_TEXTURE_LUMINANCE_SIZE', '%GL_TEXTURE_MAG_FILTER','%GL_TEXTURE_MATRIX','%GL_TEXTURE_MIN_FILTER','%GL_TEXTURE_PRIORITY','%GL_TEXTURE_RED_SIZE','%GL_TEXTURE_RESIDENT','%GL_TEXTURE_STACK_DEPTH','%GL_TEXTURE_WIDTH', '%GL_TEXTURE_WRAP_S','%GL_TEXTURE_WRAP_T','%GL_TRANSFORM_BIT','%GL_TRIANGLES','%GL_TRIANGLE_FAN','%GL_TRIANGLE_STRIP','%GL_TRUE','%GL_UNPACK_ALIGNMENT', '%GL_UNPACK_LSB_FIRST','%GL_UNPACK_ROW_LENGTH','%GL_UNPACK_SKIP_PIXELS','%GL_UNPACK_SKIP_ROWS','%GL_UNPACK_SWAP_BYTES','%GL_UNSIGNED_BYTE','%GL_UNSIGNED_BYTE_3_3_2_EXT','%GL_UNSIGNED_INT', '%GL_UNSIGNED_INT_10_10_10_2_EXT','%GL_UNSIGNED_INT_8_8_8_8_EXT','%GL_UNSIGNED_SHORT','%GL_UNSIGNED_SHORT_4_4_4_4_EXT','%GL_UNSIGNED_SHORT_5_5_5_1_EXT','%GL_V2F','%GL_V3F','%GL_VENDOR', '%GL_VERSION','%GL_VERSION_1_1','%GL_VERTEX_ARRAY','%GL_VERTEX_ARRAY_COUNT_EXT','%GL_VERTEX_ARRAY_EXT','%GL_VERTEX_ARRAY_POINTER','%GL_VERTEX_ARRAY_POINTER_EXT','%GL_VERTEX_ARRAY_SIZE', '%GL_VERTEX_ARRAY_SIZE_EXT','%GL_VERTEX_ARRAY_STRIDE','%GL_VERTEX_ARRAY_STRIDE_EXT','%GL_VERTEX_ARRAY_TYPE','%GL_VERTEX_ARRAY_TYPE_EXT','%GL_VIEWPORT','%GL_VIEWPORT_BIT','%GL_WIN_SWAP_HINT', '%GL_XOR','%GL_ZERO','%GL_ZOOM_X','%GL_ZOOM_Y','%GRAY','%GREEN','%GWLP_HINSTANCE','%GWLP_HWNDPARENT', '%GWLP_ID','%GWLP_USERDATA','%GWLP_WNDPROC','%GWL_EXSTYLE','%GWL_HINSTANCE','%GWL_HWNDPARENT','%GWL_ID','%GWL_STYLE', '%GWL_USERDATA','%GWL_WNDPROC','%HDM_FIRST','%HTCAPTION','%HWND_BOTTOM','%HWND_DESKTOP','%HWND_MESSAGE','%HWND_NOTOPMOST', '%HWND_TOP','%HWND_TOPMOST','%ICRYPTO_XOR_DECREASE','%ICRYPTO_XOR_INCREASE','%ICRYPTO_XOR_NORMAL','%IDABORT','%IDCANCEL','%IDCONTINUE', '%IDIGNORE','%IDNO','%IDOK','%IDRETRY','%IDTIMEOUT','%IDTRYAGAIN','%IDYES','%INTERNET_CONNECTION_CONFIGURED', '%INTERNET_CONNECTION_LAN','%INTERNET_CONNECTION_MODEM','%INTERNET_CONNECTION_MODEM_BUSY','%INTERNET_CONNECTION_OFFLINE','%INTERNET_CONNECTION_PROXY','%INTERNET_RAS_INSTALLED','%LBN_DBLCLK','%LBN_KILLFOCUS', '%LBN_SELCANCEL','%LBN_SELCHANGE','%LBN_SETFOCUS','%LBS_DISABLENOSCROLL','%LBS_EXTENDEDSEL','%LBS_MULTICOLUMN','%LBS_MULTIPLESEL','%LBS_NOINTEGRALHEIGHT', '%LBS_NOSEL','%LBS_NOTIFY','%LBS_SORT','%LBS_STANDARD','%LBS_USETABSTOPS','%LB_ADDFILE','%LB_ADDSTRING','%LB_DELETESTRING', '%LB_DIR','%LB_FINDSTRING','%LB_FINDSTRINGEXACT','%LB_GETANCHORINDEX','%LB_GETCARETINDEX','%LB_GETCOUNT','%LB_GETCURSEL','%LB_GETHORIZONTALEXTENT', '%LB_GETITEMDATA','%LB_GETITEMHEIGHT','%LB_GETITEMRECT','%LB_GETLISTBOXINFO','%LB_GETLOCALE','%LB_GETSEL','%LB_GETSELCOUNT','%LB_GETSELITEMS', '%LB_GETTEXT','%LB_GETTEXTLEN','%LB_GETTOPINDEX','%LB_INITSTORAGE','%LB_INSERTSTRING','%LB_ITEMFROMPOINT','%LB_MULTIPLEADDSTRING','%LB_RESETCONTENT', '%LB_SELECTSTRING','%LB_SELITEMRANGE','%LB_SELITEMRANGEEX','%LB_SETANCHORINDEX','%LB_SETCARETINDEX','%LB_SETCOLUMNWIDTH','%LB_SETCOUNT','%LB_SETCURSEL', '%LB_SETHORIZONTALEXTENT','%LB_SETITEMDATA','%LB_SETITEMHEIGHT','%LB_SETLOCALE','%LB_SETSEL','%LB_SETTABSTOPS','%LB_SETTOPINDEX','%LF_FACESIZE', '%LTGRAY','%LVM_FIRST','%LWA_ALPHA','%LWA_COLORKEY','%MAGENTA','%MAXBYTE','%MAXCHAR','%MAXDWORD', '%MAXSHORT','%MAXWORD','%MAX_PATH','%MB_ABORTRETRYIGNORE','%MB_APPLMODAL','%MB_CANCELTRYCONTINUE','%MB_DEFBUTTON1','%MB_DEFBUTTON2', '%MB_DEFBUTTON3','%MB_HELP','%MB_ICONASTERISK','%MB_ICONERROR','%MB_ICONEXCLAMATION','%MB_ICONHAND','%MB_ICONINFORMATION','%MB_ICONQUESTION', '%MB_ICONSTOP','%MB_ICONWARNING','%MB_OK','%MB_OKCANCEL','%MB_RETRYCANCEL','%MB_SIMPLE','%MB_SYSTEMMODAL','%MB_TOPMOST', '%MB_YESNO','%MB_YESNOCANCEL','%MF_CHECKED','%MF_DISABLED','%MF_ENABLED','%MF_GRAYED','%MF_SEPARATOR','%MF_UNCHECKED', '%MINCHAR','%MINLONG','%MINSHORT','%NULL','%ODBC352_INC','%ODBCVER','%ODBC_ADD_DSN','%ODBC_ADD_SYS_DSN', '%ODBC_BOTH_DSN','%ODBC_CONFIG_DRIVER','%ODBC_CONFIG_DRIVER_MAX','%ODBC_CONFIG_DSN','%ODBC_CONFIG_SYS_DSN','%ODBC_DRIVER_VERSION','%ODBC_ERROR_COMPONENT_NOT_FOUND','%ODBC_ERROR_CREATE_DSN_FAILED', '%ODBC_ERROR_GENERAL_ERR','%ODBC_ERROR_INVALID_BUFF_LEN','%ODBC_ERROR_INVALID_DSN','%ODBC_ERROR_INVALID_HWND','%ODBC_ERROR_INVALID_INF','%ODBC_ERROR_INVALID_KEYWORD_VALUE','%ODBC_ERROR_INVALID_LOG_FILE','%ODBC_ERROR_INVALID_NAME', '%ODBC_ERROR_INVALID_PARAM_SEQUENCE','%ODBC_ERROR_INVALID_PATH','%ODBC_ERROR_INVALID_REQUEST_TYPE','%ODBC_ERROR_INVALID_STR','%ODBC_ERROR_LOAD_LIB_FAILED','%ODBC_ERROR_OUTPUT_STRING_TRUNCATED','%ODBC_ERROR_OUT_OF_MEM','%ODBC_ERROR_REMOVE_DSN_FAILED', '%ODBC_ERROR_REQUEST_FAILED','%ODBC_ERROR_USAGE_UPDATE_FAILED','%ODBC_ERROR_USER_CANCELED','%ODBC_ERROR_WRITING_SYSINFO_FAILED','%ODBC_INSTALL_COMPLETE','%ODBC_INSTALL_DRIVER','%ODBC_INSTALL_INQUIRY','%ODBC_REMOVE_DEFAULT_DSN', '%ODBC_REMOVE_DRIVER','%ODBC_REMOVE_DSN','%ODBC_REMOVE_SYS_DSN','%ODBC_SYSTEM_DSN','%ODBC_USER_DSN','%OFN_ALLOWMULTISELECT','%OFN_CREATEPROMPT','%OFN_ENABLEHOOK', '%OFN_ENABLEINCLUDENOTIFY','%OFN_ENABLESIZING','%OFN_ENABLETEMPLATE','%OFN_ENABLETEMPLATEHANDLE','%OFN_EXPLORER','%OFN_EXTENSIONDIFFERENT','%OFN_FILEMUSTEXIST','%OFN_HIDEREADONLY', '%OFN_LONGNAMES','%OFN_NOCHANGEDIR','%OFN_NODEREFERENCELINKS','%OFN_NOLONGNAMES','%OFN_NONETWORKBUTTON','%OFN_NOREADONLYRETURN','%OFN_NOTESTFILECREATE','%OFN_NOVALIDATE', '%OFN_OVERWRITEPROMPT','%OFN_PATHMUSTEXIST','%OFN_READONLY','%OFN_SHAREAWARE','%OFN_SHOWHELP','%OS_ERROR_CALLFUNCTION','%OS_ERROR_EMPTYSTRING','%OS_ERROR_LOADLIBRARY', '%OS_ERROR_SUCCESS','%OS_ERROR_WRONGPARAMETER','%OS_SHELL_ASYNC','%OS_SHELL_SYNC','%OS_WINDOWS_2K','%OS_WINDOWS_95','%OS_WINDOWS_95_OSR2','%OS_WINDOWS_98', '%OS_WINDOWS_98_SE','%OS_WINDOWS_ME','%OS_WINDOWS_NT','%OS_WINDOWS_SERVER_2003','%OS_WINDOWS_SERVER_LONGHORN','%OS_WINDOWS_SERVER_LONGHORN_DC','%OS_WINDOWS_VISTA','%OS_WINDOWS_XP', '%OS_WNDSTYLE_HIDE','%OS_WNDSTYLE_MAXIMIZED','%OS_WNDSTYLE_MINIMIZED','%OS_WNDSTYLE_MINIMIZEDNOFOCUS','%OS_WNDSTYLE_NORMAL','%OS_WNDSTYLE_NORMALNOFOCUS','%PATH_EXT','%PATH_FILE', '%PATH_FILEEXT','%PATH_ROOT','%PATH_ROOTPATH','%PATH_ROOTPATHPROG','%PATH_ROOTPATHPROGEXT','%PBM_DELTAPOS','%PBM_GETPOS','%PBM_GETRANGE', '%PBM_SETBARCOLOR','%PBM_SETBKCOLOR','%PBM_SETPOS','%PBM_SETRANGE','%PBM_SETRANGE32','%PBM_SETSTEP','%PBM_STEPIT','%PBS_SMOOTH', '%PBS_VERTICAL','%PC_DISABLEWAKEEVENT_OFF','%PC_DISABLEWAKEEVENT_ON','%PC_EB_NOCONFIRMATION','%PC_EB_NOPROGRESSUI','%PC_EB_NORMAL','%PC_EB_NOSOUND','%PC_FORCECRITICAL_OFF', '%PC_FORCECRITICAL_ON','%PC_HIBERNATE_OFF','%PC_HIBERNATE_ON','%PC_RD_FORCE','%PC_RD_FORCEIFHUNG','%PC_RD_LOGOFF','%PC_RD_POWEROFF','%PC_RD_REBOOT', '%PC_RD_SHUTDOWN','%PC_SD_DONOT_FORCE','%PC_SD_DONOT_REBOOT','%PC_SD_FORCE','%PC_SD_REBOOT','%PFA_CENTER','%PFA_LEFT','%PFA_RIGHT', '%PF_3DNOW_INSTRUCTIONS_AVAILABLE','%PF_CHANNELS_ENABLED','%PF_COMPARE64_EXCHANGE128','%PF_COMPARE_EXCHANGE128','%PF_COMPARE_EXCHANGE_DOUBLE','%PF_FLOATING_POINT_EMULATED','%PF_FLOATING_POINT_PRECISION_ERRATA','%PF_MMX_INSTRUCTIONS_AVAILABLE', '%PF_NX_ENABLED','%PF_PAE_ENABLED','%PF_RDTSC_INSTRUCTION_AVAILABLE','%PF_SSE3_INSTRUCTIONS_AVAILABLE','%PF_XMMI64_INSTRUCTIONS_AVAILABLE','%PF_XMMI_INSTRUCTIONS_AVAILABLE','%PGM_FIRST','%RED', '%RTF_UBB','%SAPI_SVSFDEFAULT','%SAPI_SVSFISFILENAME','%SAPI_SVSFISNOTXML','%SAPI_SVSFISXML','%SAPI_SVSFLAGSASYNC','%SAPI_SVSFNLPMASK','%SAPI_SVSFNLPSPEAKPUNC', '%SAPI_SVSFPERSISTXML','%SAPI_SVSFPURGEBEFORESPEAK','%SAPI_SVSFUNUSEDFLAGS','%SAPI_SVSFVOICEMASK','%SBS_SIZEGRIP','%SB_BOTTOM','%SB_ENDSCROLL','%SB_LEFT', '%SB_LINEDOWN','%SB_LINELEFT','%SB_LINERIGHT','%SB_LINEUP','%SB_PAGEDOWN','%SB_PAGELEFT','%SB_PAGERIGHT','%SB_PAGEUP', '%SB_RIGHT','%SB_SETPARTS','%SB_SETTEXT','%SB_THUMBPOSITION','%SB_THUMBTRACK','%SB_TOP','%SCF_ALL','%SCF_ASSOCIATEFONT', '%SCF_DEFAULT','%SCF_NOKBUPDATE','%SCF_SELECTION','%SCF_USEUIRULES','%SCF_WORD','%SC_CLOSE','%SC_CONTEXTHELP','%SC_HOTKEY', '%SC_HSCROLL','%SC_KEYMENU','%SC_MAXIMIZE','%SC_MINIMIZE','%SC_MONITORPOWER','%SC_MOUSEMENU','%SC_MOVE','%SC_NEXTWINDOW', '%SC_PREVWINDOW','%SC_RESTORE','%SC_SCREENSAVE','%SC_SIZE','%SC_TASKLIST','%SC_VSCROLL','%SERVICE_ACTIVE','%SERVICE_AUTO_START', '%SERVICE_BOOT_START','%SERVICE_CONTINUE_PENDING','%SERVICE_DEMAND_START','%SERVICE_DISABLED','%SERVICE_DRIVER','%SERVICE_INACTIVE','%SERVICE_INFO_DISPLAY_NAME','%SERVICE_INFO_NAME', '%SERVICE_PAUSED','%SERVICE_PAUSE_PENDING','%SERVICE_RUNNING','%SERVICE_START_PENDING','%SERVICE_STATE_ALL','%SERVICE_STOPPED','%SERVICE_STOP_PENDING','%SERVICE_SYSTEM_START', '%SERVICE_TYPE_ALL','%SERVICE_WIN32','%SES_ALLOWBEEPS','%SES_BEEPONMAXTEXT','%SES_BIDI','%SES_EMULATE10','%SES_EMULATESYSEDIT','%SES_EXTENDBACKCOLOR', '%SES_LOWERCASE','%SES_MAPCPS','%SES_NOIME','%SES_NOINPUTSEQUENCECHK','%SES_SCROLLONKILLFOCUS','%SES_UPPERCASE','%SES_USEAIMM','%SES_USECRLF', '%SES_XLTCRCRLFTOCR','%SF_RTF','%SF_TEXT','%SMTP_SET_ATTACH_CONTENT_TYPE','%SMTP_SET_CONTENT_TYPE_PREFIX','%SQL_AA_FALSE','%SQL_AA_TRUE','%SQL_ACCESSIBLE_PROCEDURES', '%SQL_ACCESSIBLE_TABLES','%SQL_ACCESS_MODE','%SQL_ACTIVE_CONNECTIONS','%SQL_ACTIVE_ENVIRONMENTS','%SQL_ACTIVE_STATEMENTS','%SQL_ADD','%SQL_AD_ADD_CONSTRAINT_DEFERRABLE','%SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED', '%SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE','%SQL_AD_ADD_DOMAIN_CONSTRAINT','%SQL_AD_ADD_DOMAIN_DEFAULT','%SQL_AD_CONSTRAINT_NAME_DEFINITION','%SQL_AD_DROP_DOMAIN_CONSTRAINT','%SQL_AD_DROP_DOMAIN_DEFAULT','%SQL_AF_ALL', '%SQL_AF_AVG','%SQL_AF_COUNT','%SQL_AF_DISTINCT','%SQL_AF_MAX','%SQL_AF_MIN','%SQL_AF_SUM','%SQL_AGGREGATE_FUNCTIONS','%SQL_ALL_EXCEPT_LIKE', '%SQL_ALL_TYPES','%SQL_ALTER_DOMAIN','%SQL_ALTER_TABLE','%SQL_AM_CONNECTION','%SQL_AM_NONE','%SQL_AM_STATEMENT','%SQL_API_ALL_FUNCTIONS','%SQL_API_LOADBYORDINAL', '%SQL_API_ODBC3_ALL_FUNCTIONS','%SQL_API_ODBC3_ALL_FUNCTIONS_SIZE','%SQL_API_SQLALLOCCONNECT','%SQL_API_SQLALLOCENV','%SQL_API_SQLALLOCHANDLE','%SQL_API_SQLALLOCHANDLESTD','%SQL_API_SQLALLOCSTMT','%SQL_API_SQLBINDCOL', '%SQL_API_SQLBINDPARAM','%SQL_API_SQLBINDPARAMETER','%SQL_API_SQLBROWSECONNECT','%SQL_API_SQLBULKOPERATIONS','%SQL_API_SQLCANCEL','%SQL_API_SQLCLOSECURSOR','%SQL_API_SQLCOLATTRIBUTE','%SQL_API_SQLCOLATTRIBUTES', '%SQL_API_SQLCOLUMNPRIVILEGES','%SQL_API_SQLCOLUMNS','%SQL_API_SQLCONNECT','%SQL_API_SQLCOPYDESC','%SQL_API_SQLDATASOURCES','%SQL_API_SQLDESCRIBECOL','%SQL_API_SQLDESCRIBEPARAM','%SQL_API_SQLDISCONNECT', '%SQL_API_SQLDRIVERCONNECT','%SQL_API_SQLDRIVERS','%SQL_API_SQLENDTRAN','%SQL_API_SQLERROR','%SQL_API_SQLEXECDIRECT','%SQL_API_SQLEXECUTE','%SQL_API_SQLEXTENDEDFETCH','%SQL_API_SQLFETCH', '%SQL_API_SQLFETCHSCROLL','%SQL_API_SQLFOREIGNKEYS','%SQL_API_SQLFREECONNECT','%SQL_API_SQLFREEENV','%SQL_API_SQLFREEHANDLE','%SQL_API_SQLFREESTMT','%SQL_API_SQLGETCONNECTATTR','%SQL_API_SQLGETCONNECTOPTION', '%SQL_API_SQLGETCURSORNAME','%SQL_API_SQLGETDATA','%SQL_API_SQLGETDESCFIELD','%SQL_API_SQLGETDESCREC','%SQL_API_SQLGETDIAGFIELD','%SQL_API_SQLGETDIAGREC','%SQL_API_SQLGETENVATTR','%SQL_API_SQLGETFUNCTIONS', '%SQL_API_SQLGETINFO','%SQL_API_SQLGETSTMTATTR','%SQL_API_SQLGETSTMTOPTION','%SQL_API_SQLGETTYPEINFO','%SQL_API_SQLMORERESULTS','%SQL_API_SQLNATIVESQL','%SQL_API_SQLNUMPARAMS','%SQL_API_SQLNUMRESULTCOLS', '%SQL_API_SQLPARAMDATA','%SQL_API_SQLPARAMOPTIONS','%SQL_API_SQLPREPARE','%SQL_API_SQLPRIMARYKEYS','%SQL_API_SQLPROCEDURECOLUMNS','%SQL_API_SQLPROCEDURES','%SQL_API_SQLPUTDATA','%SQL_API_SQLROWCOUNT', '%SQL_API_SQLSETCONNECTATTR','%SQL_API_SQLSETCONNECTOPTION','%SQL_API_SQLSETCURSORNAME','%SQL_API_SQLSETDESCFIELD','%SQL_API_SQLSETDESCREC','%SQL_API_SQLSETENVATTR','%SQL_API_SQLSETPARAM','%SQL_API_SQLSETPOS', '%SQL_API_SQLSETSCROLLOPTIONS','%SQL_API_SQLSETSTMTATTR','%SQL_API_SQLSETSTMTOPTION','%SQL_API_SQLSPECIALCOLUMNS','%SQL_API_SQLSTATISTICS','%SQL_API_SQLTABLEPRIVILEGES','%SQL_API_SQLTABLES','%SQL_API_SQLTRANSACT', '%SQL_ARD_TYPE','%SQL_ASYNC_ENABLE','%SQL_ASYNC_ENABLE_DEFAULT','%SQL_ASYNC_ENABLE_OFF','%SQL_ASYNC_ENABLE_ON','%SQL_ASYNC_MODE','%SQL_ATTR_ACCESS_MODE','%SQL_ATTR_ANSI_APP', '%SQL_ATTR_APP_PARAM_DESC','%SQL_ATTR_APP_ROW_DESC','%SQL_ATTR_ASYNC_ENABLE','%SQL_ATTR_AUTOCOMMIT','%SQL_ATTR_AUTO_IPD','%SQL_ATTR_CONCURRENCY','%SQL_ATTR_CONNECTION_DEAD','%SQL_ATTR_CONNECTION_POOLING', '%SQL_ATTR_CONNECTION_TIMEOUT','%SQL_ATTR_CP_MATCH','%SQL_ATTR_CURRENT_CATALOG','%SQL_ATTR_CURSOR_SCROLLABLE','%SQL_ATTR_CURSOR_SENSITIVITY','%SQL_ATTR_CURSOR_TYPE','%SQL_ATTR_DISCONNECT_BEHAVIOR','%SQL_ATTR_ENABLE_AUTO_IPD', '%SQL_ATTR_ENLIST_IN_DTC','%SQL_ATTR_ENLIST_IN_XA','%SQL_ATTR_FETCH_BOOKMARK_PTR','%SQL_ATTR_IMP_PARAM_DESC','%SQL_ATTR_IMP_ROW_DESC','%SQL_ATTR_KEYSET_SIZE','%SQL_ATTR_LOGIN_TIMEOUT','%SQL_ATTR_MAX_LENGTH', '%SQL_ATTR_MAX_ROWS','%SQL_ATTR_METADATA_ID','%SQL_ATTR_NOSCAN','%SQL_ATTR_ODBC_CURSORS','%SQL_ATTR_ODBC_VERSION','%SQL_ATTR_OUTPUT_NTS','%SQL_ATTR_PACKET_SIZE','%SQL_ATTR_PARAMSET_SIZE', '%SQL_ATTR_PARAMS_PROCESSED_PTR','%SQL_ATTR_PARAM_BIND_OFFSET_PTR','%SQL_ATTR_PARAM_BIND_TYPE','%SQL_ATTR_PARAM_OPERATION_PTR','%SQL_ATTR_PARAM_STATUS_PTR','%SQL_ATTR_QUERY_TIMEOUT','%SQL_ATTR_QUIET_MODE','%SQL_ATTR_READONLY', '%SQL_ATTR_READWRITE_UNKNOWN','%SQL_ATTR_RETRIEVE_DATA','%SQL_ATTR_ROWS_FETCHED_PTR','%SQL_ATTR_ROW_ARRAY_SIZE','%SQL_ATTR_ROW_BIND_OFFSET_PTR','%SQL_ATTR_ROW_BIND_TYPE','%SQL_ATTR_ROW_NUMBER','%SQL_ATTR_ROW_OPERATION_PTR', '%SQL_ATTR_ROW_STATUS_PTR','%SQL_ATTR_SIMULATE_CURSOR','%SQL_ATTR_TRACE','%SQL_ATTR_TRACEFILE','%SQL_ATTR_TRANSLATE_LIB','%SQL_ATTR_TRANSLATE_OPTION','%SQL_ATTR_TXN_ISOLATION','%SQL_ATTR_USE_BOOKMARKS', '%SQL_ATTR_WRITE','%SQL_AT_ADD_COLUMN','%SQL_AT_ADD_COLUMN_COLLATION','%SQL_AT_ADD_COLUMN_DEFAULT','%SQL_AT_ADD_COLUMN_SINGLE','%SQL_AT_ADD_CONSTRAINT','%SQL_AT_ADD_TABLE_CONSTRAINT','%SQL_AT_CONSTRAINT_DEFERRABLE', '%SQL_AT_CONSTRAINT_INITIALLY_DEFERRED','%SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_AT_CONSTRAINT_NAME_DEFINITION','%SQL_AT_CONSTRAINT_NON_DEFERRABLE','%SQL_AT_DROP_COLUMN','%SQL_AT_DROP_COLUMN_CASCADE','%SQL_AT_DROP_COLUMN_DEFAULT','%SQL_AT_DROP_COLUMN_RESTRICT', '%SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE','%SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT','%SQL_AT_SET_COLUMN_DEFAULT','%SQL_AUTOCOMMIT','%SQL_AUTOCOMMIT_DEFAULT','%SQL_AUTOCOMMIT_OFF','%SQL_AUTOCOMMIT_ON','%SQL_BATCH_ROW_COUNT', '%SQL_BATCH_SUPPORT','%SQL_BEST_ROWID','%SQL_BIGINT','%SQL_BINARY','%SQL_BIND_BY_COLUMN','%SQL_BIND_TYPE','%SQL_BIND_TYPE_DEFAULT','%SQL_BIT', '%SQL_BOOKMARK_PERSISTENCE','%SQL_BP_CLOSE','%SQL_BP_DELETE','%SQL_BP_DROP','%SQL_BP_OTHER_HSTMT','%SQL_BP_SCROLL','%SQL_BP_TRANSACTION','%SQL_BP_UPDATE', '%SQL_BRC_EXPLICIT','%SQL_BRC_PROCEDURES','%SQL_BRC_ROLLED_UP','%SQL_BS_ROW_COUNT_EXPLICIT','%SQL_BS_ROW_COUNT_PROC','%SQL_BS_SELECT_EXPLICIT','%SQL_BS_SELECT_PROC','%SQL_CA1_ABSOLUTE', '%SQL_CA1_BOOKMARK','%SQL_CA1_BULK_ADD','%SQL_CA1_BULK_DELETE_BY_BOOKMARK','%SQL_CA1_BULK_FETCH_BY_BOOKMARK','%SQL_CA1_BULK_UPDATE_BY_BOOKMARK','%SQL_CA1_LOCK_EXCLUSIVE','%SQL_CA1_LOCK_NO_CHANGE','%SQL_CA1_LOCK_UNLOCK', '%SQL_CA1_NEXT','%SQL_CA1_POSITIONED_DELETE','%SQL_CA1_POSITIONED_UPDATE','%SQL_CA1_POS_DELETE','%SQL_CA1_POS_POSITION','%SQL_CA1_POS_REFRESH','%SQL_CA1_POS_UPDATE','%SQL_CA1_RELATIVE', '%SQL_CA1_SELECT_FOR_UPDATE','%SQL_CA2_CRC_APPROXIMATE','%SQL_CA2_CRC_EXACT','%SQL_CA2_LOCK_CONCURRENCY','%SQL_CA2_MAX_ROWS_AFFECTS_ALL','%SQL_CA2_MAX_ROWS_CATALOG','%SQL_CA2_MAX_ROWS_DELETE','%SQL_CA2_MAX_ROWS_INSERT', '%SQL_CA2_MAX_ROWS_SELECT','%SQL_CA2_MAX_ROWS_UPDATE','%SQL_CA2_OPT_ROWVER_CONCURRENCY','%SQL_CA2_OPT_VALUES_CONCURRENCY','%SQL_CA2_READ_ONLY_CONCURRENCY','%SQL_CA2_SENSITIVITY_ADDITIONS','%SQL_CA2_SENSITIVITY_DELETIONS','%SQL_CA2_SENSITIVITY_UPDATES', '%SQL_CA2_SIMULATE_NON_UNIQUE','%SQL_CA2_SIMULATE_TRY_UNIQUE','%SQL_CA2_SIMULATE_UNIQUE','%SQL_CASCADE','%SQL_CATALOG_LOCATION','%SQL_CATALOG_NAME','%SQL_CATALOG_NAME_SEPARATOR','%SQL_CATALOG_TERM', '%SQL_CATALOG_USAGE','%SQL_CA_CONSTRAINT_DEFERRABLE','%SQL_CA_CONSTRAINT_INITIALLY_DEFERRED','%SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CA_CONSTRAINT_NON_DEFERRABLE','%SQL_CA_CREATE_ASSERTION','%SQL_CB_CLOSE','%SQL_CB_DELETE', '%SQL_CB_NON_NULL','%SQL_CB_NULL','%SQL_CB_PRESERVE','%SQL_CCOL_CREATE_COLLATION','%SQL_CCS_COLLATE_CLAUSE','%SQL_CCS_CREATE_CHARACTER_SET','%SQL_CCS_LIMITED_COLLATION','%SQL_CC_CLOSE', '%SQL_CC_DELETE','%SQL_CC_PRESERVE','%SQL_CDO_COLLATION','%SQL_CDO_CONSTRAINT','%SQL_CDO_CONSTRAINT_DEFERRABLE','%SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED','%SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CDO_CONSTRAINT_NAME_DEFINITION', '%SQL_CDO_CONSTRAINT_NON_DEFERRABLE','%SQL_CDO_CREATE_DOMAIN','%SQL_CDO_DEFAULT','%SQL_CD_FALSE','%SQL_CD_TRUE','%SQL_CHAR','%SQL_CLOSE','%SQL_CL_END', '%SQL_CL_START','%SQL_CN_ANY','%SQL_CN_DIFFERENT','%SQL_CN_NONE','%SQL_CODE_DATE','%SQL_CODE_DAY','%SQL_CODE_DAY_TO_HOUR','%SQL_CODE_DAY_TO_MINUTE', '%SQL_CODE_DAY_TO_SECOND','%SQL_CODE_HOUR','%SQL_CODE_HOUR_TO_MINUTE','%SQL_CODE_HOUR_TO_SECOND','%SQL_CODE_MINUTE','%SQL_CODE_MINUTE_TO_SECOND','%SQL_CODE_MONTH','%SQL_CODE_SECOND', '%SQL_CODE_TIME','%SQL_CODE_TIMESTAMP','%SQL_CODE_YEAR','%SQL_CODE_YEAR_TO_MONTH','%SQL_COLATT_OPT_MAX','%SQL_COLATT_OPT_MIN','%SQL_COLLATION_SEQ','%SQL_COLUMN_ALIAS', '%SQL_COLUMN_AUTO_INCREMENT','%SQL_COLUMN_CASE_SENSITIVE','%SQL_COLUMN_COUNT','%SQL_COLUMN_DISPLAY_SIZE','%SQL_COLUMN_IGNORE','%SQL_COLUMN_LABEL','%SQL_COLUMN_LENGTH','%SQL_COLUMN_MONEY', '%SQL_COLUMN_NAME','%SQL_COLUMN_NULLABLE','%SQL_COLUMN_NUMBER_UNKNOWN','%SQL_COLUMN_OWNER_NAME','%SQL_COLUMN_PRECISION','%SQL_COLUMN_QUALIFIER_NAME','%SQL_COLUMN_SCALE','%SQL_COLUMN_SEARCHABLE', '%SQL_COLUMN_TABLE_NAME','%SQL_COLUMN_TYPE','%SQL_COLUMN_TYPE_NAME','%SQL_COLUMN_UNSIGNED','%SQL_COLUMN_UPDATABLE','%SQL_COL_PRED_BASIC','%SQL_COL_PRED_CHAR','%SQL_COMMIT', '%SQL_CONCAT_NULL_BEHAVIOR','%SQL_CONCURRENCY','%SQL_CONCUR_DEFAULT','%SQL_CONCUR_LOCK','%SQL_CONCUR_READ_ONLY','%SQL_CONCUR_ROWVER','%SQL_CONCUR_TIMESTAMP','%SQL_CONCUR_VALUES', '%SQL_CONVERT_BIGINT','%SQL_CONVERT_BINARY','%SQL_CONVERT_BIT','%SQL_CONVERT_CHAR','%SQL_CONVERT_DATE','%SQL_CONVERT_DECIMAL','%SQL_CONVERT_DOUBLE','%SQL_CONVERT_FLOAT', '%SQL_CONVERT_FUNCTIONS','%SQL_CONVERT_GUID','%SQL_CONVERT_INTEGER','%SQL_CONVERT_INTERVAL_DAY_TIME','%SQL_CONVERT_INTERVAL_YEAR_MONTH','%SQL_CONVERT_LONGVARBINARY','%SQL_CONVERT_LONGVARCHAR','%SQL_CONVERT_NUMERIC', '%SQL_CONVERT_REAL','%SQL_CONVERT_SMALLINT','%SQL_CONVERT_TIME','%SQL_CONVERT_TIMESTAMP','%SQL_CONVERT_TINYINT','%SQL_CONVERT_VARBINARY','%SQL_CONVERT_VARCHAR','%SQL_CONVERT_WCHAR', '%SQL_CONVERT_WLONGVARCHAR','%SQL_CONVERT_WVARCHAR','%SQL_CORRELATION_NAME','%SQL_CP_DEFAULT','%SQL_CP_MATCH_DEFAULT','%SQL_CP_OFF','%SQL_CP_ONE_PER_DRIVER','%SQL_CP_ONE_PER_HENV', '%SQL_CP_RELAXED_MATCH','%SQL_CP_STRICT_MATCH','%SQL_CREATE_ASSERTION','%SQL_CREATE_CHARACTER_SET','%SQL_CREATE_COLLATION','%SQL_CREATE_DOMAIN','%SQL_CREATE_SCHEMA','%SQL_CREATE_TABLE', '%SQL_CREATE_TRANSLATION','%SQL_CREATE_VIEW','%SQL_CR_CLOSE','%SQL_CR_DELETE','%SQL_CR_PRESERVE','%SQL_CS_AUTHORIZATION','%SQL_CS_CREATE_SCHEMA','%SQL_CS_DEFAULT_CHARACTER_SET', '%SQL_CTR_CREATE_TRANSLATION','%SQL_CT_COLUMN_COLLATION','%SQL_CT_COLUMN_CONSTRAINT','%SQL_CT_COLUMN_DEFAULT','%SQL_CT_COMMIT_DELETE','%SQL_CT_COMMIT_PRESERVE','%SQL_CT_CONSTRAINT_DEFERRABLE','%SQL_CT_CONSTRAINT_INITIALLY_DEFERRED', '%SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CT_CONSTRAINT_NAME_DEFINITION','%SQL_CT_CONSTRAINT_NON_DEFERRABLE','%SQL_CT_CREATE_TABLE','%SQL_CT_GLOBAL_TEMPORARY','%SQL_CT_LOCAL_TEMPORARY','%SQL_CT_TABLE_CONSTRAINT','%SQL_CURRENT_QUALIFIER', '%SQL_CURSOR_COMMIT_BEHAVIOR','%SQL_CURSOR_DYNAMIC','%SQL_CURSOR_FORWARD_ONLY','%SQL_CURSOR_KEYSET_DRIVEN','%SQL_CURSOR_ROLLBACK_BEHAVIOR','%SQL_CURSOR_SENSITIVITY','%SQL_CURSOR_STATIC','%SQL_CURSOR_TYPE', '%SQL_CURSOR_TYPE_DEFAULT','%SQL_CUR_DEFAULT','%SQL_CUR_USE_DRIVER','%SQL_CUR_USE_IF_NEEDED','%SQL_CUR_USE_ODBC','%SQL_CU_DML_STATEMENTS','%SQL_CU_INDEX_DEFINITION','%SQL_CU_PRIVILEGE_DEFINITION', '%SQL_CU_PROCEDURE_INVOCATION','%SQL_CU_TABLE_DEFINITION','%SQL_CVT_BIGINT','%SQL_CVT_BINARY','%SQL_CVT_BIT','%SQL_CVT_CHAR','%SQL_CVT_DATE','%SQL_CVT_DECIMAL', '%SQL_CVT_DOUBLE','%SQL_CVT_FLOAT','%SQL_CVT_GUID','%SQL_CVT_INTEGER','%SQL_CVT_INTERVAL_DAY_TIME','%SQL_CVT_INTERVAL_YEAR_MONTH','%SQL_CVT_LONGVARBINARY','%SQL_CVT_LONGVARCHAR', '%SQL_CVT_NUMERIC','%SQL_CVT_REAL','%SQL_CVT_SMALLINT','%SQL_CVT_TIME','%SQL_CVT_TIMESTAMP','%SQL_CVT_TINYINT','%SQL_CVT_VARBINARY','%SQL_CVT_VARCHAR', '%SQL_CVT_WCHAR','%SQL_CVT_WLONGVARCHAR','%SQL_CVT_WVARCHAR','%SQL_CV_CASCADED','%SQL_CV_CHECK_OPTION','%SQL_CV_CREATE_VIEW','%SQL_CV_LOCAL','%SQL_C_BINARY', '%SQL_C_BIT','%SQL_C_BOOKMARK','%SQL_C_CHAR','%SQL_C_DATE','%SQL_C_DEFAULT','%SQL_C_DOUBLE','%SQL_C_FLOAT','%SQL_C_GUID', '%SQL_C_INTERVAL_DAY','%SQL_C_INTERVAL_DAY_TO_HOUR','%SQL_C_INTERVAL_DAY_TO_MINUTE','%SQL_C_INTERVAL_DAY_TO_SECOND','%SQL_C_INTERVAL_HOUR','%SQL_C_INTERVAL_HOUR_TO_MINUTE','%SQL_C_INTERVAL_HOUR_TO_SECOND','%SQL_C_INTERVAL_MINUTE', '%SQL_C_INTERVAL_MINUTE_TO_SECOND','%SQL_C_INTERVAL_MONTH','%SQL_C_INTERVAL_SECOND','%SQL_C_INTERVAL_YEAR','%SQL_C_INTERVAL_YEAR_TO_MONTH','%SQL_C_LONG','%SQL_C_NUMERIC','%SQL_C_SBIGINT', '%SQL_C_SHORT','%SQL_C_SLONG','%SQL_C_SSHORT','%SQL_C_STINYINT','%SQL_C_TIME','%SQL_C_TIMESTAMP','%SQL_C_TINYINT','%SQL_C_TYPE_DATE', '%SQL_C_TYPE_TIME','%SQL_C_TYPE_TIMESTAMP','%SQL_C_UBIGINT','%SQL_C_ULONG','%SQL_C_USHORT','%SQL_C_UTINYINT','%SQL_C_VARBOOKMARK','%SQL_DATABASE_NAME', '%SQL_DATA_AT_EXEC','%SQL_DATA_SOURCE_NAME','%SQL_DATA_SOURCE_READ_ONLY','%SQL_DATE','%SQL_DATETIME','%SQL_DATETIME_LITERALS','%SQL_DATE_LEN','%SQL_DAY', '%SQL_DAY_TO_HOUR','%SQL_DAY_TO_MINUTE','%SQL_DAY_TO_SECOND','%SQL_DA_DROP_ASSERTION','%SQL_DBMS_NAME','%SQL_DBMS_VER','%SQL_DB_DEFAULT','%SQL_DB_DISCONNECT', '%SQL_DB_RETURN_TO_POOL','%SQL_DCS_DROP_CHARACTER_SET','%SQL_DC_DROP_COLLATION','%SQL_DDL_INDEX','%SQL_DD_CASCADE','%SQL_DD_DROP_DOMAIN','%SQL_DD_RESTRICT','%SQL_DECIMAL', '%SQL_DEFAULT','%SQL_DEFAULT_PARAM','%SQL_DEFAULT_TXN_ISOLATION','%SQL_DELETE','%SQL_DELETE_BY_BOOKMARK','%SQL_DESCRIBE_PARAMETER','%SQL_DESC_ALLOC_AUTO','%SQL_DESC_ALLOC_TYPE', '%SQL_DESC_ALLOC_USER','%SQL_DESC_ARRAY_SIZE','%SQL_DESC_ARRAY_STATUS_PTR','%SQL_DESC_AUTO_UNIQUE_VALUE','%SQL_DESC_BASE_COLUMN_NAME','%SQL_DESC_BASE_TABLE_NAME','%SQL_DESC_BIND_OFFSET_PTR','%SQL_DESC_BIND_TYPE', '%SQL_DESC_CASE_SENSITIVE','%SQL_DESC_CATALOG_NAME','%SQL_DESC_CONCISE_TYPE','%SQL_DESC_COUNT','%SQL_DESC_DATA_PTR','%SQL_DESC_DATETIME_INTERVAL_CODE','%SQL_DESC_DATETIME_INTERVAL_PRECISION','%SQL_DESC_DISPLAY_SIZE', '%SQL_DESC_FIXED_PREC_SCALE','%SQL_DESC_INDICATOR_PTR','%SQL_DESC_LABEL','%SQL_DESC_LENGTH','%SQL_DESC_LITERAL_PREFIX','%SQL_DESC_LITERAL_SUFFIX','%SQL_DESC_LOCAL_TYPE_NAME','%SQL_DESC_MAXIMUM_SCALE', '%SQL_DESC_MINIMUM_SCALE','%SQL_DESC_NAME','%SQL_DESC_NULLABLE','%SQL_DESC_NUM_PREC_RADIX','%SQL_DESC_OCTET_LENGTH','%SQL_DESC_OCTET_LENGTH_PTR','%SQL_DESC_PARAMETER_TYPE','%SQL_DESC_PRECISION', '%SQL_DESC_ROWS_PROCESSED_PTR','%SQL_DESC_SCALE','%SQL_DESC_SCHEMA_NAME','%SQL_DESC_SEARCHABLE','%SQL_DESC_TABLE_NAME','%SQL_DESC_TYPE','%SQL_DESC_TYPE_NAME','%SQL_DESC_UNNAMED', '%SQL_DESC_UNSIGNED','%SQL_DESC_UPDATABLE','%SQL_DIAG_ALTER_TABLE','%SQL_DIAG_CALL','%SQL_DIAG_CLASS_ORIGIN','%SQL_DIAG_COLUMN_NUMBER','%SQL_DIAG_CONNECTION_NAME','%SQL_DIAG_CREATE_INDEX', '%SQL_DIAG_CREATE_TABLE','%SQL_DIAG_CREATE_VIEW','%SQL_DIAG_CURSOR_ROW_COUNT','%SQL_DIAG_DELETE_WHERE','%SQL_DIAG_DROP_INDEX','%SQL_DIAG_DROP_TABLE','%SQL_DIAG_DROP_VIEW','%SQL_DIAG_DYNAMIC_DELETE_CURSOR', '%SQL_DIAG_DYNAMIC_FUNCTION','%SQL_DIAG_DYNAMIC_FUNCTION_CODE','%SQL_DIAG_DYNAMIC_UPDATE_CURSOR','%SQL_DIAG_GRANT','%SQL_DIAG_INSERT','%SQL_DIAG_MESSAGE_TEXT','%SQL_DIAG_NATIVE','%SQL_DIAG_NUMBER', '%SQL_DIAG_RETURNCODE','%SQL_DIAG_REVOKE','%SQL_DIAG_ROW_COUNT','%SQL_DIAG_ROW_NUMBER','%SQL_DIAG_SELECT_CURSOR','%SQL_DIAG_SERVER_NAME','%SQL_DIAG_SQLSTATE','%SQL_DIAG_SUBCLASS_ORIGIN', '%SQL_DIAG_UNKNOWN_STATEMENT','%SQL_DIAG_UPDATE_WHERE','%SQL_DI_CREATE_INDEX','%SQL_DI_DROP_INDEX','%SQL_DL_SQL92_DATE','%SQL_DL_SQL92_INTERVAL_DAY','%SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR','%SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE', '%SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND','%SQL_DL_SQL92_INTERVAL_HOUR','%SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE','%SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND','%SQL_DL_SQL92_INTERVAL_MINUTE','%SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND','%SQL_DL_SQL92_INTERVAL_MONTH','%SQL_DL_SQL92_INTERVAL_SECOND', '%SQL_DL_SQL92_INTERVAL_YEAR','%SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH','%SQL_DL_SQL92_TIME','%SQL_DL_SQL92_TIMESTAMP','%SQL_DM_VER','%SQL_DOUBLE','%SQL_DRIVER_COMPLETE','%SQL_DRIVER_COMPLETE_REQUIRED', '%SQL_DRIVER_HDBC','%SQL_DRIVER_HDESC','%SQL_DRIVER_HENV','%SQL_DRIVER_HLIB','%SQL_DRIVER_HSTMT','%SQL_DRIVER_NAME','%SQL_DRIVER_NOPROMPT','%SQL_DRIVER_ODBC_VER', '%SQL_DRIVER_PROMPT','%SQL_DRIVER_VER','%SQL_DROP','%SQL_DROP_ASSERTION','%SQL_DROP_CHARACTER_SET','%SQL_DROP_COLLATION','%SQL_DROP_DOMAIN','%SQL_DROP_SCHEMA', '%SQL_DROP_TABLE','%SQL_DROP_TRANSLATION','%SQL_DROP_VIEW','%SQL_DS_CASCADE','%SQL_DS_DROP_SCHEMA','%SQL_DS_RESTRICT','%SQL_DTC_DONE','%SQL_DTC_ENLIST_EXPENSIVE', '%SQL_DTC_TRANSITION_COST','%SQL_DTC_UNENLIST_EXPENSIVE','%SQL_DTR_DROP_TRANSLATION','%SQL_DT_CASCADE','%SQL_DT_DROP_TABLE','%SQL_DT_RESTRICT','%SQL_DV_CASCADE','%SQL_DV_DROP_VIEW', '%SQL_DV_RESTRICT','%SQL_DYNAMIC_CURSOR_ATTRIBUTES1','%SQL_DYNAMIC_CURSOR_ATTRIBUTES2','%SQL_ENSURE','%SQL_ENTIRE_ROWSET','%SQL_ERROR','%SQL_EXPRESSIONS_IN_ORDERBY','%SQL_FALSE', '%SQL_FD_FETCH_ABSOLUTE','%SQL_FD_FETCH_BOOKMARK','%SQL_FD_FETCH_FIRST','%SQL_FD_FETCH_LAST','%SQL_FD_FETCH_NEXT','%SQL_FD_FETCH_PREV','%SQL_FD_FETCH_PRIOR','%SQL_FD_FETCH_RELATIVE', '%SQL_FETCH_ABSOLUTE','%SQL_FETCH_BOOKMARK','%SQL_FETCH_BY_BOOKMARK','%SQL_FETCH_DIRECTION','%SQL_FETCH_FIRST','%SQL_FETCH_FIRST_SYSTEM','%SQL_FETCH_FIRST_USER','%SQL_FETCH_LAST', '%SQL_FETCH_NEXT','%SQL_FETCH_PREV','%SQL_FETCH_PRIOR','%SQL_FETCH_RELATIVE','%SQL_FILE_CATALOG','%SQL_FILE_NOT_SUPPORTED','%SQL_FILE_QUALIFIER','%SQL_FILE_TABLE', '%SQL_FILE_USAGE','%SQL_FLOAT','%SQL_FN_CVT_CAST','%SQL_FN_CVT_CONVERT','%SQL_FN_NUM_ABS','%SQL_FN_NUM_ACOS','%SQL_FN_NUM_ASIN','%SQL_FN_NUM_ATAN', '%SQL_FN_NUM_ATAN2','%SQL_FN_NUM_CEILING','%SQL_FN_NUM_COS','%SQL_FN_NUM_COT','%SQL_FN_NUM_DEGREES','%SQL_FN_NUM_EXP','%SQL_FN_NUM_FLOOR','%SQL_FN_NUM_LOG', '%SQL_FN_NUM_LOG10','%SQL_FN_NUM_MOD','%SQL_FN_NUM_PI','%SQL_FN_NUM_POWER','%SQL_FN_NUM_RADIANS','%SQL_FN_NUM_RAND','%SQL_FN_NUM_ROUND','%SQL_FN_NUM_SIGN', '%SQL_FN_NUM_SIN','%SQL_FN_NUM_SQRT','%SQL_FN_NUM_TAN','%SQL_FN_NUM_TRUNCATE','%SQL_FN_STR_ASCII','%SQL_FN_STR_BIT_LENGTH','%SQL_FN_STR_CHAR','%SQL_FN_STR_CHARACTER_LENGTH', '%SQL_FN_STR_CHAR_LENGTH','%SQL_FN_STR_CONCAT','%SQL_FN_STR_DIFFERENCE','%SQL_FN_STR_INSERT','%SQL_FN_STR_LCASE','%SQL_FN_STR_LEFT','%SQL_FN_STR_LENGTH','%SQL_FN_STR_LOCATE', '%SQL_FN_STR_LOCATE_2','%SQL_FN_STR_LTRIM','%SQL_FN_STR_OCTET_LENGTH','%SQL_FN_STR_POSITION','%SQL_FN_STR_REPEAT','%SQL_FN_STR_REPLACE','%SQL_FN_STR_RIGHT','%SQL_FN_STR_RTRIM', '%SQL_FN_STR_SOUNDEX','%SQL_FN_STR_SPACE','%SQL_FN_STR_SUBSTRING','%SQL_FN_STR_UCASE','%SQL_FN_SYS_DBNAME','%SQL_FN_SYS_IFNULL','%SQL_FN_SYS_USERNAME','%SQL_FN_TD_CURDATE', '%SQL_FN_TD_CURRENT_DATE','%SQL_FN_TD_CURRENT_TIME','%SQL_FN_TD_CURRENT_TIMESTAMP','%SQL_FN_TD_CURTIME','%SQL_FN_TD_DAYNAME','%SQL_FN_TD_DAYOFMONTH','%SQL_FN_TD_DAYOFWEEK','%SQL_FN_TD_DAYOFYEAR', '%SQL_FN_TD_EXTRACT','%SQL_FN_TD_HOUR','%SQL_FN_TD_MINUTE','%SQL_FN_TD_MONTH','%SQL_FN_TD_MONTHNAME','%SQL_FN_TD_NOW','%SQL_FN_TD_QUARTER','%SQL_FN_TD_SECOND', '%SQL_FN_TD_TIMESTAMPADD','%SQL_FN_TD_TIMESTAMPDIFF','%SQL_FN_TD_WEEK','%SQL_FN_TD_YEAR','%SQL_FN_TSI_DAY','%SQL_FN_TSI_FRAC_SECOND','%SQL_FN_TSI_HOUR','%SQL_FN_TSI_MINUTE', '%SQL_FN_TSI_MONTH','%SQL_FN_TSI_QUARTER','%SQL_FN_TSI_SECOND','%SQL_FN_TSI_WEEK','%SQL_FN_TSI_YEAR','%SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1','%SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2','%SQL_GB_COLLATE', '%SQL_GB_GROUP_BY_CONTAINS_SELECT','%SQL_GB_GROUP_BY_EQUALS_SELECT','%SQL_GB_NOT_SUPPORTED','%SQL_GB_NO_RELATION','%SQL_GD_ANY_COLUMN','%SQL_GD_ANY_ORDER','%SQL_GD_BLOCK','%SQL_GD_BOUND', '%SQL_GETDATA_EXTENSIONS','%SQL_GET_BOOKMARK','%SQL_GROUP_BY','%SQL_GUID','%SQL_HANDLE_DBC','%SQL_HANDLE_DESC','%SQL_HANDLE_ENV','%SQL_HANDLE_SENV', '%SQL_HANDLE_STMT','%SQL_HOUR','%SQL_HOUR_TO_MINUTE','%SQL_HOUR_TO_SECOND','%SQL_IC_LOWER','%SQL_IC_MIXED','%SQL_IC_SENSITIVE','%SQL_IC_UPPER', '%SQL_IDENTIFIER_CASE','%SQL_IDENTIFIER_QUOTE_CHAR','%SQL_IGNORE','%SQL_IK_ALL','%SQL_IK_ASC','%SQL_IK_DESC','%SQL_IK_NONE','%SQL_INDEX_ALL', '%SQL_INDEX_CLUSTERED','%SQL_INDEX_HASHED','%SQL_INDEX_KEYWORDS','%SQL_INDEX_OTHER','%SQL_INDEX_UNIQUE','%SQL_INFO_FIRST','%SQL_INFO_SCHEMA_VIEWS','%SQL_INITIALLY_DEFERRED', '%SQL_INITIALLY_IMMEDIATE','%SQL_INSENSITIVE','%SQL_INSERT_STATEMENT','%SQL_INTEGER','%SQL_INTEGRITY','%SQL_INTERVAL','%SQL_INTERVAL_DAY','%SQL_INTERVAL_DAY_TO_HOUR', '%SQL_INTERVAL_DAY_TO_MINUTE','%SQL_INTERVAL_DAY_TO_SECOND','%SQL_INTERVAL_HOUR','%SQL_INTERVAL_HOUR_TO_MINUTE','%SQL_INTERVAL_HOUR_TO_SECOND','%SQL_INTERVAL_MINUTE','%SQL_INTERVAL_MINUTE_TO_SECOND','%SQL_INTERVAL_MONTH', '%SQL_INTERVAL_SECOND','%SQL_INTERVAL_YEAR','%SQL_INTERVAL_YEAR_TO_MONTH','%SQL_INVALID_HANDLE','%SQL_ISV_ASSERTIONS','%SQL_ISV_CHARACTER_SETS','%SQL_ISV_CHECK_CONSTRAINTS','%SQL_ISV_COLLATIONS', '%SQL_ISV_COLUMNS','%SQL_ISV_COLUMN_DOMAIN_USAGE','%SQL_ISV_COLUMN_PRIVILEGES','%SQL_ISV_CONSTRAINT_COLUMN_USAGE','%SQL_ISV_CONSTRAINT_TABLE_USAGE','%SQL_ISV_DOMAINS','%SQL_ISV_DOMAIN_CONSTRAINTS','%SQL_ISV_KEY_COLUMN_USAGE', '%SQL_ISV_REFERENTIAL_CONSTRAINTS','%SQL_ISV_SCHEMATA','%SQL_ISV_SQL_LANGUAGES','%SQL_ISV_TABLES','%SQL_ISV_TABLE_CONSTRAINTS','%SQL_ISV_TABLE_PRIVILEGES','%SQL_ISV_TRANSLATIONS','%SQL_ISV_USAGE_PRIVILEGES', '%SQL_ISV_VIEWS','%SQL_ISV_VIEW_COLUMN_USAGE','%SQL_ISV_VIEW_TABLE_USAGE','%SQL_IS_DAY','%SQL_IS_DAY_TO_HOUR','%SQL_IS_DAY_TO_MINUTE','%SQL_IS_DAY_TO_SECOND','%SQL_IS_HOUR', '%SQL_IS_HOUR_TO_MINUTE','%SQL_IS_HOUR_TO_SECOND','%SQL_IS_INSERT_LITERALS','%SQL_IS_INSERT_SEARCHED','%SQL_IS_INTEGER','%SQL_IS_MINUTE','%SQL_IS_MINUTE_TO_SECOND','%SQL_IS_MONTH', '%SQL_IS_POINTER','%SQL_IS_SECOND','%SQL_IS_SELECT_INTO','%SQL_IS_SMALLINT','%SQL_IS_UINTEGER','%SQL_IS_USMALLINT','%SQL_IS_YEAR','%SQL_IS_YEAR_TO_MONTH', '%SQL_KEYSET_CURSOR_ATTRIBUTES1','%SQL_KEYSET_CURSOR_ATTRIBUTES2','%SQL_KEYSET_SIZE','%SQL_KEYSET_SIZE_DEFAULT','%SQL_KEYWORDS','%SQL_LCK_EXCLUSIVE','%SQL_LCK_NO_CHANGE','%SQL_LCK_UNLOCK', '%SQL_LEN_BINARY_ATTR_OFFSET','%SQL_LEN_DATA_AT_EXEC_OFFSET','%SQL_LIKE_ESCAPE_CLAUSE','%SQL_LIKE_ONLY','%SQL_LOCK_EXCLUSIVE','%SQL_LOCK_NO_CHANGE','%SQL_LOCK_TYPES','%SQL_LOCK_UNLOCK', '%SQL_LOGIN_TIMEOUT','%SQL_LOGIN_TIMEOUT_DEFAULT','%SQL_LONGVARBINARY','%SQL_LONGVARCHAR','%SQL_MAXIMUM_CATALOG_NAME_LENGTH','%SQL_MAXIMUM_COLUMNS_IN_GROUP_BY','%SQL_MAXIMUM_COLUMNS_IN_INDEX','%SQL_MAXIMUM_COLUMNS_IN_ORDER_BY', '%SQL_MAXIMUM_COLUMNS_IN_SELECT','%SQL_MAXIMUM_COLUMN_NAME_LENGTH','%SQL_MAXIMUM_CONCURRENT_ACTIVITIES','%SQL_MAXIMUM_CURSOR_NAME_LENGTH','%SQL_MAXIMUM_DRIVER_CONNECTIONS','%SQL_MAXIMUM_IDENTIFIER_LENGTH','%SQL_MAXIMUM_INDEX_SIZE','%SQL_MAXIMUM_ROW_SIZE', '%SQL_MAXIMUM_SCHEMA_NAME_LENGTH','%SQL_MAXIMUM_STATEMENT_LENGTH','%SQL_MAXIMUM_TABLES_IN_SELECT','%SQL_MAXIMUM_USER_NAME_LENGTH','%SQL_MAX_ASYNC_CONCURRENT_STATEMENTS','%SQL_MAX_BINARY_LITERAL_LEN','%SQL_MAX_CATALOG_NAME_LEN','%SQL_MAX_CHAR_LITERAL_LEN', '%SQL_MAX_COLUMNS_IN_GROUP_BY','%SQL_MAX_COLUMNS_IN_INDEX','%SQL_MAX_COLUMNS_IN_ORDER_BY','%SQL_MAX_COLUMNS_IN_SELECT','%SQL_MAX_COLUMNS_IN_TABLE','%SQL_MAX_COLUMN_NAME_LEN','%SQL_MAX_CONCURRENT_ACTIVITIES','%SQL_MAX_CURSOR_NAME_LEN', '%SQL_MAX_DRIVER_CONNECTIONS','%SQL_MAX_DSN_LENGTH','%SQL_MAX_IDENTIFIER_LEN','%SQL_MAX_INDEX_SIZE','%SQL_MAX_LENGTH','%SQL_MAX_LENGTH_DEFAULT','%SQL_MAX_MESSAGE_LENGTH','%SQL_MAX_NUMERIC_LEN', '%SQL_MAX_OPTION_STRING_LENGTH','%SQL_MAX_OWNER_NAME_LEN','%SQL_MAX_PROCEDURE_NAME_LEN','%SQL_MAX_QUALIFIER_NAME_LEN','%SQL_MAX_ROWS','%SQL_MAX_ROWS_DEFAULT','%SQL_MAX_ROW_SIZE','%SQL_MAX_ROW_SIZE_INCLUDES_LONG', '%SQL_MAX_SCHEMA_NAME_LEN','%SQL_MAX_STATEMENT_LEN','%SQL_MAX_TABLES_IN_SELECT','%SQL_MAX_TABLE_NAME_LEN','%SQL_MAX_USER_NAME_LEN','%SQL_MINUTE','%SQL_MINUTE_TO_SECOND','%SQL_MODE_DEFAULT', '%SQL_MODE_READ_ONLY','%SQL_MODE_READ_WRITE','%SQL_MONTH','%SQL_MULTIPLE_ACTIVE_TXN','%SQL_MULT_RESULT_SETS','%SQL_NAMED','%SQL_NC_END','%SQL_NC_HIGH', '%SQL_NC_LOW','%SQL_NC_START','%SQL_NEED_DATA','%SQL_NEED_LONG_DATA_LEN','%SQL_NNC_NON_NULL','%SQL_NNC_NULL','%SQL_NONSCROLLABLE','%SQL_NON_NULLABLE_COLUMNS', '%SQL_NOSCAN','%SQL_NOSCAN_DEFAULT','%SQL_NOSCAN_OFF','%SQL_NOSCAN_ON','%SQL_NOT_DEFERRABLE','%SQL_NO_ACTION','%SQL_NO_COLUMN_NUMBER','%SQL_NO_DATA', '%SQL_NO_DATA_FOUND','%SQL_NO_NULLS','%SQL_NO_ROW_NUMBER','%SQL_NO_TOTAL','%SQL_NTS','%SQL_NTSL','%SQL_NULLABLE','%SQL_NULLABLE_UNKNOWN', '%SQL_NULL_COLLATION','%SQL_NULL_DATA','%SQL_NULL_HANDLE','%SQL_NULL_HDBC','%SQL_NULL_HDESC','%SQL_NULL_HENV','%SQL_NULL_HSTMT','%SQL_NUMERIC', '%SQL_NUMERIC_FUNCTIONS','%SQL_OAC_LEVEL1','%SQL_OAC_LEVEL2','%SQL_OAC_NONE','%SQL_ODBC_API_CONFORMANCE','%SQL_ODBC_CURSORS','%SQL_ODBC_INTERFACE_CONFORMANCE','%SQL_ODBC_SAG_CLI_CONFORMANCE', '%SQL_ODBC_SQL_CONFORMANCE','%SQL_ODBC_SQL_OPT_IEF','%SQL_ODBC_VER','%SQL_OIC_CORE','%SQL_OIC_LEVEL1','%SQL_OIC_LEVEL2','%SQL_OJ_ALL_COMPARISON_OPS','%SQL_OJ_CAPABILITIES', '%SQL_OJ_FULL','%SQL_OJ_INNER','%SQL_OJ_LEFT','%SQL_OJ_NESTED','%SQL_OJ_NOT_ORDERED','%SQL_OJ_RIGHT','%SQL_OPT_TRACE','%SQL_OPT_TRACEFILE', '%SQL_OPT_TRACE_DEFAULT','%SQL_OPT_TRACE_OFF','%SQL_OPT_TRACE_ON','%SQL_ORDER_BY_COLUMNS_IN_SELECT','%SQL_OSCC_COMPLIANT','%SQL_OSCC_NOT_COMPLIANT','%SQL_OSC_CORE','%SQL_OSC_EXTENDED', '%SQL_OSC_MINIMUM','%SQL_OUTER_JOINS','%SQL_OUTER_JOIN_CAPABILITIES','%SQL_OU_DML_STATEMENTS','%SQL_OU_INDEX_DEFINITION','%SQL_OU_PRIVILEGE_DEFINITION','%SQL_OU_PROCEDURE_INVOCATION','%SQL_OU_TABLE_DEFINITION', '%SQL_OV_ODBC2','%SQL_OV_ODBC3','%SQL_OWNER_TERM','%SQL_OWNER_USAGE','%SQL_PACKET_SIZE','%SQL_PARAM_ARRAY_ROW_COUNTS','%SQL_PARAM_ARRAY_SELECTS','%SQL_PARAM_BIND_BY_COLUMN', '%SQL_PARAM_BIND_TYPE_DEFAULT','%SQL_PARAM_DIAG_UNAVAILABLE','%SQL_PARAM_ERROR','%SQL_PARAM_IGNORE','%SQL_PARAM_INPUT','%SQL_PARAM_INPUT_OUTPUT','%SQL_PARAM_OUTPUT','%SQL_PARAM_PROCEED', '%SQL_PARAM_SUCCESS','%SQL_PARAM_SUCCESS_WITH_INFO','%SQL_PARAM_TYPE_DEFAULT','%SQL_PARAM_TYPE_UNKNOWN','%SQL_PARAM_UNUSED','%SQL_PARC_BATCH','%SQL_PARC_NO_BATCH','%SQL_PAS_BATCH', '%SQL_PAS_NO_BATCH','%SQL_PAS_NO_SELECT','%SQL_PC_NON_PSEUDO','%SQL_PC_NOT_PSEUDO','%SQL_PC_PSEUDO','%SQL_PC_UNKNOWN','%SQL_POSITION','%SQL_POSITIONED_STATEMENTS', '%SQL_POS_ADD','%SQL_POS_DELETE','%SQL_POS_OPERATIONS','%SQL_POS_POSITION','%SQL_POS_REFRESH','%SQL_POS_UPDATE','%SQL_PRED_BASIC','%SQL_PRED_CHAR', '%SQL_PRED_NONE','%SQL_PRED_SEARCHABLE','%SQL_PROCEDURES','%SQL_PROCEDURE_TERM','%SQL_PS_POSITIONED_DELETE','%SQL_PS_POSITIONED_UPDATE','%SQL_PS_SELECT_FOR_UPDATE','%SQL_PT_FUNCTION', '%SQL_PT_PROCEDURE','%SQL_PT_UNKNOWN','%SQL_QL_END','%SQL_QL_START','%SQL_QUALIFIER_LOCATION','%SQL_QUALIFIER_NAME_SEPARATOR','%SQL_QUALIFIER_TERM','%SQL_QUALIFIER_USAGE', '%SQL_QUERY_TIMEOUT','%SQL_QUERY_TIMEOUT_DEFAULT','%SQL_QUICK','%SQL_QUIET_MODE','%SQL_QUOTED_IDENTIFIER_CASE','%SQL_QU_DML_STATEMENTS','%SQL_QU_INDEX_DEFINITION','%SQL_QU_PRIVILEGE_DEFINITION', '%SQL_QU_PROCEDURE_INVOCATION','%SQL_QU_TABLE_DEFINITION','%SQL_RD_DEFAULT','%SQL_RD_OFF','%SQL_RD_ON','%SQL_REAL','%SQL_REFRESH','%SQL_RESET_PARAMS', '%SQL_RESTRICT','%SQL_RESULT_COL','%SQL_RETRIEVE_DATA','%SQL_RETURN_VALUE','%SQL_ROLLBACK','%SQL_ROWSET_SIZE','%SQL_ROWSET_SIZE_DEFAULT','%SQL_ROWVER', '%SQL_ROW_ADDED','%SQL_ROW_DELETED','%SQL_ROW_ERROR','%SQL_ROW_IDENTIFIER','%SQL_ROW_IGNORE','%SQL_ROW_NOROW','%SQL_ROW_NUMBER','%SQL_ROW_NUMBER_UNKNOWN', '%SQL_ROW_PROCEED','%SQL_ROW_SUCCESS','%SQL_ROW_SUCCESS_WITH_INFO','%SQL_ROW_UPDATED','%SQL_ROW_UPDATES','%SQL_SCCO_LOCK','%SQL_SCCO_OPT_ROWVER','%SQL_SCCO_OPT_TIMESTAMP', '%SQL_SCCO_OPT_VALUES','%SQL_SCCO_READ_ONLY','%SQL_SCC_ISO92_CLI','%SQL_SCC_XOPEN_CLI_VERSION1','%SQL_SCHEMA_TERM','%SQL_SCHEMA_USAGE','%SQL_SCOPE_CURROW','%SQL_SCOPE_SESSION', '%SQL_SCOPE_TRANSACTION','%SQL_SCROLLABLE','%SQL_SCROLL_CONCURRENCY','%SQL_SCROLL_DYNAMIC','%SQL_SCROLL_FORWARD_ONLY','%SQL_SCROLL_KEYSET_DRIVEN','%SQL_SCROLL_OPTIONS','%SQL_SCROLL_STATIC', '%SQL_SC_FIPS127_2_TRANSITIONAL','%SQL_SC_NON_UNIQUE','%SQL_SC_SQL92_ENTRY','%SQL_SC_SQL92_FULL','%SQL_SC_SQL92_INTERMEDIATE','%SQL_SC_TRY_UNIQUE','%SQL_SC_UNIQUE','%SQL_SDF_CURRENT_DATE', '%SQL_SDF_CURRENT_TIME','%SQL_SDF_CURRENT_TIMESTAMP','%SQL_SEARCHABLE','%SQL_SEARCH_PATTERN_ESCAPE','%SQL_SECOND','%SQL_SENSITIVE','%SQL_SERVER_NAME','%SQL_SETPARAM_VALUE_MAX', '%SQL_SETPOS_MAX_LOCK_VALUE','%SQL_SETPOS_MAX_OPTION_VALUE','%SQL_SET_DEFAULT','%SQL_SET_NULL','%SQL_SFKD_CASCADE','%SQL_SFKD_NO_ACTION','%SQL_SFKD_SET_DEFAULT','%SQL_SFKD_SET_NULL', '%SQL_SFKU_CASCADE','%SQL_SFKU_NO_ACTION','%SQL_SFKU_SET_DEFAULT','%SQL_SFKU_SET_NULL','%SQL_SG_DELETE_TABLE','%SQL_SG_INSERT_COLUMN','%SQL_SG_INSERT_TABLE','%SQL_SG_REFERENCES_COLUMN', '%SQL_SG_REFERENCES_TABLE','%SQL_SG_SELECT_TABLE','%SQL_SG_UPDATE_COLUMN','%SQL_SG_UPDATE_TABLE','%SQL_SG_USAGE_ON_CHARACTER_SET','%SQL_SG_USAGE_ON_COLLATION','%SQL_SG_USAGE_ON_DOMAIN','%SQL_SG_USAGE_ON_TRANSLATION', '%SQL_SG_WITH_GRANT_OPTION','%SQL_SIGNED_OFFSET','%SQL_SIMULATE_CURSOR','%SQL_SMALLINT','%SQL_SNVF_BIT_LENGTH','%SQL_SNVF_CHARACTER_LENGTH','%SQL_SNVF_CHAR_LENGTH','%SQL_SNVF_EXTRACT', '%SQL_SNVF_OCTET_LENGTH','%SQL_SNVF_POSITION','%SQL_SO_DYNAMIC','%SQL_SO_FORWARD_ONLY','%SQL_SO_KEYSET_DRIVEN','%SQL_SO_MIXED','%SQL_SO_STATIC','%SQL_SPECIAL_CHARACTERS', '%SQL_SPEC_MAJOR','%SQL_SPEC_MINOR','%SQL_SP_BETWEEN','%SQL_SP_COMPARISON','%SQL_SP_EXISTS','%SQL_SP_IN','%SQL_SP_ISNOTNULL','%SQL_SP_ISNULL', '%SQL_SP_LIKE','%SQL_SP_MATCH_FULL','%SQL_SP_MATCH_PARTIAL','%SQL_SP_MATCH_UNIQUE_FULL','%SQL_SP_MATCH_UNIQUE_PARTIAL','%SQL_SP_OVERLAPS','%SQL_SP_QUANTIFIED_COMPARISON','%SQL_SP_UNIQUE', '%SQL_SQL92_DATETIME_FUNCTIONS','%SQL_SQL92_FOREIGN_KEY_DELETE_RULE','%SQL_SQL92_FOREIGN_KEY_UPDATE_RULE','%SQL_SQL92_GRANT','%SQL_SQL92_NUMERIC_VALUE_FUNCTIONS','%SQL_SQL92_PREDICATES','%SQL_SQL92_RELATIONAL_JOIN_OPERATORS','%SQL_SQL92_REVOKE', '%SQL_SQL92_ROW_VALUE_CONSTRUCTOR','%SQL_SQL92_STRING_FUNCTIONS','%SQL_SQL92_VALUE_EXPRESSIONS','%SQL_SQLSTATE_SIZE','%SQL_SQL_CONFORMANCE','%SQL_SQ_COMPARISON','%SQL_SQ_CORRELATED_SUBQUERIES','%SQL_SQ_EXISTS', '%SQL_SQ_IN','%SQL_SQ_QUANTIFIED','%SQL_SRJO_CORRESPONDING_CLAUSE','%SQL_SRJO_CROSS_JOIN','%SQL_SRJO_EXCEPT_JOIN','%SQL_SRJO_FULL_OUTER_JOIN','%SQL_SRJO_INNER_JOIN','%SQL_SRJO_INTERSECT_JOIN', '%SQL_SRJO_LEFT_OUTER_JOIN','%SQL_SRJO_NATURAL_JOIN','%SQL_SRJO_RIGHT_OUTER_JOIN','%SQL_SRJO_UNION_JOIN','%SQL_SRVC_DEFAULT','%SQL_SRVC_NULL','%SQL_SRVC_ROW_SUBQUERY','%SQL_SRVC_VALUE_EXPRESSION', '%SQL_SR_CASCADE','%SQL_SR_DELETE_TABLE','%SQL_SR_GRANT_OPTION_FOR','%SQL_SR_INSERT_COLUMN','%SQL_SR_INSERT_TABLE','%SQL_SR_REFERENCES_COLUMN','%SQL_SR_REFERENCES_TABLE','%SQL_SR_RESTRICT', '%SQL_SR_SELECT_TABLE','%SQL_SR_UPDATE_COLUMN','%SQL_SR_UPDATE_TABLE','%SQL_SR_USAGE_ON_CHARACTER_SET','%SQL_SR_USAGE_ON_COLLATION','%SQL_SR_USAGE_ON_DOMAIN','%SQL_SR_USAGE_ON_TRANSLATION','%SQL_SSF_CONVERT', '%SQL_SSF_LOWER','%SQL_SSF_SUBSTRING','%SQL_SSF_TRANSLATE','%SQL_SSF_TRIM_BOTH','%SQL_SSF_TRIM_LEADING','%SQL_SSF_TRIM_TRAILING','%SQL_SSF_UPPER','%SQL_SS_ADDITIONS', '%SQL_SS_DELETIONS','%SQL_SS_UPDATES','%SQL_STANDARD_CLI_CONFORMANCE','%SQL_STATIC_CURSOR_ATTRIBUTES1','%SQL_STATIC_CURSOR_ATTRIBUTES2','%SQL_STATIC_SENSITIVITY','%SQL_STILL_EXECUTING','%SQL_STRING_FUNCTIONS', '%SQL_SUBQUERIES','%SQL_SUCCESS','%SQL_SUCCESS_WITH_INFO','%SQL_SU_DML_STATEMENTS','%SQL_SU_INDEX_DEFINITION','%SQL_SU_PRIVILEGE_DEFINITION','%SQL_SU_PROCEDURE_INVOCATION','%SQL_SU_TABLE_DEFINITION', '%SQL_SVE_CASE','%SQL_SVE_CAST','%SQL_SVE_COALESCE','%SQL_SVE_NULLIF','%SQL_SYSTEM_FUNCTIONS','%SQL_TABLE_STAT','%SQL_TABLE_TERM','%SQL_TC_ALL', '%SQL_TC_DDL_COMMIT','%SQL_TC_DDL_IGNORE','%SQL_TC_DML','%SQL_TC_NONE','%SQL_TIME','%SQL_TIMEDATE_ADD_INTERVALS','%SQL_TIMEDATE_DIFF_INTERVALS','%SQL_TIMEDATE_FUNCTIONS', '%SQL_TIMESTAMP','%SQL_TIMESTAMP_LEN','%SQL_TIME_LEN','%SQL_TINYINT','%SQL_TRANSACTION_CAPABLE','%SQL_TRANSACTION_ISOLATION_OPTION','%SQL_TRANSACTION_READ_COMMITTED','%SQL_TRANSACTION_READ_UNCOMMITTED', '%SQL_TRANSACTION_REPEATABLE_READ','%SQL_TRANSACTION_SERIALIZABLE','%SQL_TRANSLATE_DLL','%SQL_TRANSLATE_OPTION','%SQL_TRUE','%SQL_TXN_CAPABLE','%SQL_TXN_ISOLATION','%SQL_TXN_ISOLATION_OPTION', '%SQL_TXN_READ_COMMITTED','%SQL_TXN_READ_UNCOMMITTED','%SQL_TXN_REPEATABLE_READ','%SQL_TXN_SERIALIZABLE','%SQL_TYPE_DATE','%SQL_TYPE_NULL','%SQL_TYPE_TIME','%SQL_TYPE_TIMESTAMP', '%SQL_UB_DEFAULT','%SQL_UB_FIXED','%SQL_UB_OFF','%SQL_UB_ON','%SQL_UB_VARIABLE','%SQL_UNBIND','%SQL_UNICODE','%SQL_UNICODE_CHAR', '%SQL_UNICODE_LONGVARCHAR','%SQL_UNICODE_VARCHAR','%SQL_UNION','%SQL_UNION_STATEMENT','%SQL_UNKNOWN_TYPE','%SQL_UNNAMED','%SQL_UNSEARCHABLE','%SQL_UNSIGNED_OFFSET', '%SQL_UNSPECIFIED','%SQL_UPDATE','%SQL_UPDATE_BY_BOOKMARK','%SQL_USER_NAME','%SQL_USE_BOOKMARKS','%SQL_US_UNION','%SQL_US_UNION_ALL','%SQL_U_UNION', '%SQL_U_UNION_ALL','%SQL_VARBINARY','%SQL_VARCHAR','%SQL_XOPEN_CLI_YEAR','%SQL_YEAR','%SQL_YEAR_TO_MONTH','%SRCCOPY','%SS_BITMAP', '%SS_BLACKFRAME','%SS_BLACKRECT','%SS_CENTER','%SS_CENTERIMAGE','%SS_ENDELLIPSIS','%SS_ETCHEDFRAME','%SS_ETCHEDHORZ','%SS_ETCHEDVERT', '%SS_GRAYFRAME','%SS_GRAYRECT','%SS_LEFT','%SS_NOPREFIX','%SS_NOTIFY','%SS_NOWORDWRAP','%SS_PATHELLIPSIS','%SS_RIGHT', '%SS_RIGHTJUST','%SS_SIMPLE','%SS_SUNKEN','%SS_WHITEFRAME','%SS_WHITERECT','%SS_WORDELLIPSIS','%STAT_FILL_FROM_MEMORY','%STAT_FILL_NATURAL', '%STAT_FILL_NATURAL_ERASTONE','%STAT_FILL_NATURAL_EVEN','%STAT_FILL_NATURAL_FIBONACCI','%STAT_FILL_NATURAL_ODD','%STAT_FILL_WITH_NUMBER','%STAT_MINMAX_INDEX','%STAT_MINMAX_VALUE','%STAT_TYPE_BYTE', '%STAT_TYPE_CURRENCY','%STAT_TYPE_DOUBLE','%STAT_TYPE_DWORD','%STAT_TYPE_EXT','%STAT_TYPE_INTEGER','%STAT_TYPE_LONG','%STAT_TYPE_QUAD','%STAT_TYPE_SINGLE', '%STAT_TYPE_WORD','%SWP_ASYNCWINDOWPOS','%SWP_DEFERERASE','%SWP_DRAWFRAME','%SWP_FRAMECHANGED','%SWP_HIDEWINDOW','%SWP_NOACTIVATE','%SWP_NOCOPYBITS', '%SWP_NOMOVE','%SWP_NOOWNERZORDER','%SWP_NOREDRAW','%SWP_NOREPOSITION','%SWP_NOSENDCHANGING','%SWP_NOSIZE','%SWP_NOZORDER','%SWP_SHOWWINDOW', '%SW_FORCEMINIMIZE','%SW_HIDE','%SW_MAXIMIZE','%SW_MINIMIZE','%SW_NORMAL','%SW_RESTORE','%SW_SHOW','%SW_SHOWDEFAULT', '%SW_SHOWMAXIMIZED','%SW_SHOWMINIMIZED','%SW_SHOWMINNOACTIVE','%SW_SHOWNA','%SW_SHOWNOACTIVATE','%SW_SHOWNORMAL','%TBASS_3DALG_DEFAULT','%TBASS_3DALG_FULL', '%TBASS_3DALG_LIGHT','%TBASS_3DALG_OFF','%TBASS_3DMODE_NORMAL','%TBASS_3DMODE_OFF','%TBASS_3DMODE_RELATIVE','%TBASS_ACTIVE_PAUSED','%TBASS_ACTIVE_PLAYING','%TBASS_ACTIVE_STALLED', '%TBASS_ACTIVE_STOPPED','%TBASS_CONFIG_3DALGORITHM','%TBASS_CONFIG_BUFFER','%TBASS_CONFIG_CURVE_PAN','%TBASS_CONFIG_CURVE_VOL','%TBASS_CONFIG_FLOATDSP','%TBASS_CONFIG_GVOL_MUSIC','%TBASS_CONFIG_GVOL_SAMPLE', '%TBASS_CONFIG_GVOL_STREAM','%TBASS_CONFIG_MAXVOL','%TBASS_CONFIG_MP3_CODEC','%TBASS_CONFIG_NET_AGENT','%TBASS_CONFIG_NET_BUFFER','%TBASS_CONFIG_NET_PASSIVE','%TBASS_CONFIG_NET_PREBUF','%TBASS_CONFIG_NET_PROXY', '%TBASS_CONFIG_NET_TIMEOUT','%TBASS_CONFIG_PAUSE_NOPLAY','%TBASS_CONFIG_UPDATEPERIOD','%TBASS_CTYPE_MUSIC_IT','%TBASS_CTYPE_MUSIC_MO3','%TBASS_CTYPE_MUSIC_MOD','%TBASS_CTYPE_MUSIC_MTM','%TBASS_CTYPE_MUSIC_S3M', '%TBASS_CTYPE_MUSIC_XM','%TBASS_CTYPE_RECORD','%TBASS_CTYPE_SAMPLE','%TBASS_CTYPE_STREAM','%TBASS_CTYPE_STREAM_AIFF','%TBASS_CTYPE_STREAM_MP1','%TBASS_CTYPE_STREAM_MP2','%TBASS_CTYPE_STREAM_MP3', '%TBASS_CTYPE_STREAM_OGG','%TBASS_CTYPE_STREAM_WAV','%TBASS_CTYPE_STREAM_WAV_FLOAT','%TBASS_CTYPE_STREAM_WAV_PCM','%TBASS_DATA_AVAILABLE','%TBASS_DATA_FFT1024','%TBASS_DATA_FFT2048','%TBASS_DATA_FFT4096', '%TBASS_DATA_FFT512','%TBASS_DATA_FFT_INDIVIDUAL','%TBASS_DATA_FFT_NOWINDOW','%TBASS_DATA_FLOAT','%TBASS_DEVICE_3D','%TBASS_DEVICE_8BITS','%TBASS_DEVICE_LATENCY','%TBASS_DEVICE_MONO', '%TBASS_DEVICE_NOSPEAKER','%TBASS_DEVICE_SPEAKERS','%TBASS_EAX_ENVIRONMENT_ALLEY','%TBASS_EAX_ENVIRONMENT_ARENA','%TBASS_EAX_ENVIRONMENT_AUDITORIUM','%TBASS_EAX_ENVIRONMENT_BATHROOM','%TBASS_EAX_ENVIRONMENT_CARPETEDHALLWAY','%TBASS_EAX_ENVIRONMENT_CAVE', '%TBASS_EAX_ENVIRONMENT_CITY','%TBASS_EAX_ENVIRONMENT_CONCERTHALL','%TBASS_EAX_ENVIRONMENT_COUNT','%TBASS_EAX_ENVIRONMENT_DIZZY','%TBASS_EAX_ENVIRONMENT_DRUGGED','%TBASS_EAX_ENVIRONMENT_FOREST','%TBASS_EAX_ENVIRONMENT_GENERIC','%TBASS_EAX_ENVIRONMENT_HALLWAY', '%TBASS_EAX_ENVIRONMENT_HANGAR','%TBASS_EAX_ENVIRONMENT_LIVINGROOM','%TBASS_EAX_ENVIRONMENT_MOUNTAINS','%TBASS_EAX_ENVIRONMENT_PADDEDCELL','%TBASS_EAX_ENVIRONMENT_PARKINGLOT','%TBASS_EAX_ENVIRONMENT_PLAIN','%TBASS_EAX_ENVIRONMENT_PSYCHOTIC','%TBASS_EAX_ENVIRONMENT_QUARRY', '%TBASS_EAX_ENVIRONMENT_ROOM','%TBASS_EAX_ENVIRONMENT_SEWERPIPE','%TBASS_EAX_ENVIRONMENT_STONECORRIDOR','%TBASS_EAX_ENVIRONMENT_STONEROOM','%TBASS_EAX_ENVIRONMENT_UNDERWATER','%TBASS_ERROR_ALREADY','%TBASS_ERROR_BUFLOST','%TBASS_ERROR_CODEC', '%TBASS_ERROR_CREATE','%TBASS_ERROR_DECODE','%TBASS_ERROR_DEVICE','%TBASS_ERROR_DRIVER','%TBASS_ERROR_DX','%TBASS_ERROR_EMPTY','%TBASS_ERROR_FILEFORM','%TBASS_ERROR_FILEOPEN', '%TBASS_ERROR_FORMAT','%TBASS_ERROR_FREQ','%TBASS_ERROR_HANDLE','%TBASS_ERROR_ILLPARAM','%TBASS_ERROR_ILLTYPE','%TBASS_ERROR_INIT','%TBASS_ERROR_MEM','%TBASS_ERROR_NO3D', '%TBASS_ERROR_NOCHAN','%TBASS_ERROR_NOEAX','%TBASS_ERROR_NOFX','%TBASS_ERROR_NOHW','%TBASS_ERROR_NONET','%TBASS_ERROR_NOPAUSE','%TBASS_ERROR_NOPLAY','%TBASS_ERROR_NOTAVAIL', '%TBASS_ERROR_NOTFILE','%TBASS_ERROR_PLAYING','%TBASS_ERROR_POSITION','%TBASS_ERROR_SPEAKER','%TBASS_ERROR_START','%TBASS_ERROR_TIMEOUT','%TBASS_ERROR_UNKNOWN','%TBASS_ERROR_VERSION', '%TBASS_FALSE','%TBASS_FILEPOS_CURRENT','%TBASS_FILEPOS_DECODE','%TBASS_FILEPOS_DOWNLOAD','%TBASS_FILEPOS_END','%TBASS_FILEPOS_START','%TBASS_FILE_CLOSE','%TBASS_FILE_LEN', '%TBASS_FILE_READ','%TBASS_FILE_SEEK','%TBASS_FX_CHORUS','%TBASS_FX_COMPRESSOR','%TBASS_FX_DISTORTION','%TBASS_FX_ECHO','%TBASS_FX_FLANGER','%TBASS_FX_GARGLE', '%TBASS_FX_I3DL2REVERB','%TBASS_FX_PARAMEQ','%TBASS_FX_PHASE_180','%TBASS_FX_PHASE_90','%TBASS_FX_PHASE_NEG_180','%TBASS_FX_PHASE_NEG_90','%TBASS_FX_PHASE_ZERO','%TBASS_FX_REVERB', '%TBASS_INPUT_LEVEL','%TBASS_INPUT_OFF','%TBASS_INPUT_ON','%TBASS_INPUT_TYPE_ANALOG','%TBASS_INPUT_TYPE_AUX','%TBASS_INPUT_TYPE_CD','%TBASS_INPUT_TYPE_DIGITAL','%TBASS_INPUT_TYPE_LINE', '%TBASS_INPUT_TYPE_MASK','%TBASS_INPUT_TYPE_MIC','%TBASS_INPUT_TYPE_PHONE','%TBASS_INPUT_TYPE_SPEAKER','%TBASS_INPUT_TYPE_SYNTH','%TBASS_INPUT_TYPE_UNDEF','%TBASS_INPUT_TYPE_WAVE','%TBASS_MP3_SETPOS', '%TBASS_MUSIC_3D','%TBASS_MUSIC_ATTRIB_AMPLIFY','%TBASS_MUSIC_ATTRIB_BPM','%TBASS_MUSIC_ATTRIB_PANSEP','%TBASS_MUSIC_ATTRIB_PSCALER','%TBASS_MUSIC_ATTRIB_SPEED','%TBASS_MUSIC_ATTRIB_VOL_CHAN','%TBASS_MUSIC_ATTRIB_VOL_GLOBAL', '%TBASS_MUSIC_ATTRIB_VOL_INST','%TBASS_MUSIC_AUTOFREE','%TBASS_MUSIC_CALCLEN','%TBASS_MUSIC_DECODE','%TBASS_MUSIC_FLOAT','%TBASS_MUSIC_FT2MOD','%TBASS_MUSIC_FX','%TBASS_MUSIC_LOOP', '%TBASS_MUSIC_MONO','%TBASS_MUSIC_NONINTER','%TBASS_MUSIC_NOSAMPLE','%TBASS_MUSIC_POSRESET','%TBASS_MUSIC_POSRESETEX','%TBASS_MUSIC_PRESCAN','%TBASS_MUSIC_PT1MOD','%TBASS_MUSIC_RAMP', '%TBASS_MUSIC_RAMPS','%TBASS_MUSIC_STOPBACK','%TBASS_MUSIC_SURROUND','%TBASS_MUSIC_SURROUND2','%TBASS_OBJECT_DS','%TBASS_OBJECT_DS3DL','%TBASS_OK','%TBASS_RECORD_PAUSE', '%TBASS_SAMPLE_3D','%TBASS_SAMPLE_8BITS','%TBASS_SAMPLE_FLOAT','%TBASS_SAMPLE_FX','%TBASS_SAMPLE_LOOP','%TBASS_SAMPLE_MONO','%TBASS_SAMPLE_MUTEMAX','%TBASS_SAMPLE_OVER_DIST', '%TBASS_SAMPLE_OVER_POS','%TBASS_SAMPLE_OVER_VOL','%TBASS_SAMPLE_SOFTWARE','%TBASS_SAMPLE_VAM','%TBASS_SLIDE_FREQ','%TBASS_SLIDE_PAN','%TBASS_SLIDE_VOL','%TBASS_SPEAKER_CENLFE', '%TBASS_SPEAKER_CENTER','%TBASS_SPEAKER_FRONT','%TBASS_SPEAKER_FRONTLEFT','%TBASS_SPEAKER_FRONTRIGHT','%TBASS_SPEAKER_LEFT','%TBASS_SPEAKER_LFE','%TBASS_SPEAKER_REAR','%TBASS_SPEAKER_REAR2', '%TBASS_SPEAKER_REAR2LEFT','%TBASS_SPEAKER_REAR2RIGHT','%TBASS_SPEAKER_REARLEFT','%TBASS_SPEAKER_REARRIGHT','%TBASS_SPEAKER_RIGHT','%TBASS_STREAMPROC_END','%TBASS_STREAM_AUTOFREE','%TBASS_STREAM_BLOCK', '%TBASS_STREAM_DECODE','%TBASS_STREAM_PRESCAN','%TBASS_STREAM_RESTRATE','%TBASS_STREAM_STATUS','%TBASS_SYNC_DOWNLOAD','%TBASS_SYNC_END','%TBASS_SYNC_FREE','%TBASS_SYNC_MESSAGE', '%TBASS_SYNC_META','%TBASS_SYNC_MIXTIME','%TBASS_SYNC_MUSICFX','%TBASS_SYNC_MUSICINST','%TBASS_SYNC_MUSICPOS','%TBASS_SYNC_ONETIME','%TBASS_SYNC_POS','%TBASS_SYNC_SLIDE', '%TBASS_SYNC_STALL','%TBASS_TAG_HTTP','%TBASS_TAG_ICY','%TBASS_TAG_ID3','%TBASS_TAG_ID3V2','%TBASS_TAG_META','%TBASS_TAG_MUSIC_INST','%TBASS_TAG_MUSIC_MESSAGE', '%TBASS_TAG_MUSIC_NAME','%TBASS_TAG_MUSIC_SAMPLE','%TBASS_TAG_OGG','%TBASS_TAG_RIFF_INFO','%TBASS_TAG_VENDOR','%TBASS_TRUE','%TBASS_UNICODE','%TBASS_VAM_HARDWARE', '%TBASS_VAM_SOFTWARE','%TBASS_VAM_TERM_DIST','%TBASS_VAM_TERM_PRIO','%TBASS_VAM_TERM_TIME','%TBASS_VERSION','%TBCD_CHANNEL','%TBCD_THUMB','%TBCD_TICS', '%TBGL_ALIGN_CENTER','%TBGL_ALIGN_CENTER_CENTER','%TBGL_ALIGN_CENTER_DOWN','%TBGL_ALIGN_CENTER_UP','%TBGL_ALIGN_LEFT','%TBGL_ALIGN_LEFT_CENTER','%TBGL_ALIGN_LEFT_DOWN','%TBGL_ALIGN_LEFT_UP', '%TBGL_ALIGN_RIGHT','%TBGL_ALIGN_RIGHT_CENTER','%TBGL_ALIGN_RIGHT_DOWN','%TBGL_ALIGN_RIGHT_UP','%TBGL_ALWAYS','%TBGL_EQUAL','%TBGL_ERROR_FILE','%TBGL_ERROR_MSGBOX', '%TBGL_ERROR_NONE','%TBGL_GEQUAL','%TBGL_GREATER','%TBGL_LEQUAL','%TBGL_LESS','%TBGL_LIGHT_AMBIENT','%TBGL_LIGHT_CONSTANT_ATTENUATION','%TBGL_LIGHT_DIFFUSE', '%TBGL_LIGHT_LINEAR_ATTENUATION','%TBGL_LIGHT_POSITION','%TBGL_LIGHT_QUADRATIC_ATTENUATION','%TBGL_LIGHT_SPECULAR','%TBGL_LIGHT_SPOT_CUTOFF','%TBGL_LIGHT_SPOT_DIRECTION','%TBGL_LIGHT_SPOT_EXPONENT','%TBGL_M15B', '%TBGL_M15G','%TBGL_M15LAYER','%TBGL_M15PSTOP','%TBGL_M15R','%TBGL_M15TEXN','%TBGL_M15TEXX','%TBGL_M15TEXY','%TBGL_M15X', '%TBGL_M15Y','%TBGL_M15Z','%TBGL_NEVER','%TBGL_NORMAL_NONE','%TBGL_NORMAL_PRECISE','%TBGL_NORMAL_SMOOTH','%TBGL_NOTEQUAL','%TBGL_OBJ_CUBE', '%TBGL_OBJ_CUBE3','%TBGL_OBJ_CYLINDER','%TBGL_OBJ_SPHERE','%TBGL_PINFO_RGB','%TBGL_PINFO_XYZ','%TBGL_TEX_LINEAR','%TBGL_TEX_MIPMAP','%TBGL_TEX_NEAREST', '%TBM_CLEARSEL','%TBM_CLEARTICS','%TBM_GETBUDDY','%TBM_GETCHANNELRECT','%TBM_GETLINESIZE','%TBM_GETNUMTICS','%TBM_GETPAGESIZE','%TBM_GETPOS', '%TBM_GETPTICS','%TBM_GETRANGEMAX','%TBM_GETRANGEMIN','%TBM_GETSELEND','%TBM_GETSELSTART','%TBM_GETTHUMBLENGTH','%TBM_GETTHUMBRECT','%TBM_GETTIC', '%TBM_GETTICPOS','%TBM_GETTOOLTIPS','%TBM_GETUNICODEFORMAT','%TBM_SETBUDDY','%TBM_SETLINESIZE','%TBM_SETPAGESIZE','%TBM_SETPOS','%TBM_SETRANGE', '%TBM_SETRANGEMAX','%TBM_SETRANGEMIN','%TBM_SETSEL','%TBM_SETSELEND','%TBM_SETSELSTART','%TBM_SETTHUMBLENGTH','%TBM_SETTIC','%TBM_SETTICFREQ', '%TBM_SETTIPSIDE','%TBM_SETTOOLTIPS','%TBM_SETUNICODEFORMAT','%TBS_AUTOTICKS','%TBS_BOTH','%TBS_BOTTOM','%TBS_DOWNISLEFT','%TBS_ENABLESELRANGE', '%TBS_FIXEDLENGTH','%TBS_HORZ','%TBS_LEFT','%TBS_NOTHUMB','%TBS_NOTICKS','%TBS_REVERSED','%TBS_RIGHT','%TBS_TOOLTIPS', '%TBS_TOP','%TBS_VERT','%TBTS_BOTTOM','%TBTS_LEFT','%TBTS_RIGHT','%TBTS_TOP','%TB_%VT_BSTR','%TB_%VT_CY', '%TB_%VT_DATE','%TB_%VT_EMPTY','%TB_%VT_I2','%TB_%VT_I4','%TB_%VT_NULL','%TB_%VT_R4','%TB_%VT_R8','%TB_BOTTOM', '%TB_CLASS_E_NOAGGREGATION','%TB_CO_E_CLASSSTRING','%TB_DISPATCH_METHOD','%TB_DISPATCH_PROPERTYGET','%TB_DISPATCH_PROPERTYPUT','%TB_DISPATCH_PROPERTYPUTREF','%TB_ENDTRACK','%TB_E_INVALIDARG', '%TB_E_NOINTERFACE','%TB_E_OUTOFMEMORY','%TB_IMGCTX_ACTUALSIZE','%TB_IMGCTX_AUTOSIZE','%TB_IMGCTX_FITTOHEIGHT','%TB_IMGCTX_FITTOWIDTH','%TB_IMGCTX_STRETCH','%TB_LINEDOWN', '%TB_LINEUP','%TB_MK_E_CONNECTMANUALLY','%TB_MK_E_EXCEEDEDDEADLINE','%TB_MK_E_INTERMEDIATEINTERFACENOTSUPPORTED','%TB_MK_E_NOOBJECT','%TB_MK_E_SYNTAX','%TB_PAGEDOWN','%TB_PAGEUP', '%TB_REGDB_E_CLASSNOTREG','%TB_REGDB_E_WRITEREGDB','%TB_SIZEOF_TBVARIANT','%TB_S_FALSE','%TB_S_OK','%TB_THUMBPOSITION','%TB_THUMBTRACK','%TB_TOP', '%TCM_FIRST','%TCM_GETCURSEL','%TCN_FOCUSCHANGE','%TCN_GETOBJECT','%TCN_SELCHANGE','%TCN_SELCHANGING','%TCS_BOTTOM','%TCS_BUTTONS', '%TCS_EX_FLATSEPARATORS','%TCS_EX_REGISTERDROP','%TCS_FIXEDWIDTH','%TCS_FLATBUTTONS','%TCS_FOCUSNEVER','%TCS_FOCUSONBUTTONDOWN','%TCS_FORCEICONLEFT','%TCS_FORCELABELLEFT', '%TCS_HOTTRACK','%TCS_MULTILINE','%TCS_MULTISELECT','%TCS_OWNERDRAWFIXED','%TCS_RAGGEDRIGHT','%TCS_RIGHT','%TCS_RIGHTJUSTIFY','%TCS_SCROLLOPPOSITE', '%TCS_SINGLELINE','%TCS_TABS','%TCS_TOOLTIPS','%TCS_VERTICAL','%TM_PLAINTEXT','%TM_RICHTEXT','%TOKENIZER_DEFAULT_ALPHA','%TOKENIZER_DEFAULT_DELIM', '%TOKENIZER_DEFAULT_DQUOTE','%TOKENIZER_DEFAULT_NEWLINE','%TOKENIZER_DEFAULT_NUMERIC','%TOKENIZER_DEFAULT_SPACE','%TOKENIZER_DELIMITER','%TOKENIZER_EOL','%TOKENIZER_ERROR','%TOKENIZER_FINISHED', '%TOKENIZER_NUMBER','%TOKENIZER_QUOTE','%TOKENIZER_STRING','%TOKENIZER_UNDEFTOK','%TRUE','%TV_FIRST','%UDM_GETACCEL','%UDM_GETBASE', '%UDM_GETBUDDY','%UDM_GETPOS','%UDM_GETPOS32','%UDM_GETRANGE','%UDM_GETRANGE32','%UDM_GETUNICODEFORMAT','%UDM_SETACCEL','%UDM_SETBASE', '%UDM_SETBUDDY','%UDM_SETPOS','%UDM_SETPOS32','%UDM_SETRANGE','%UDM_SETRANGE32','%UDM_SETUNICODEFORMAT','%UDS_ALIGNLEFT','%UDS_ALIGNRIGHT', '%UDS_ARROWKEYS','%UDS_AUTOBUDDY','%UDS_HORZ','%UDS_HOTTRACK','%UDS_NOTHOUSANDS','%UDS_SETBUDDYINT','%UDS_WRAP','%UD_MAXVAL', '%UD_MINVAL','%VK_0','%VK_1','%VK_2','%VK_3','%VK_4','%VK_5','%VK_6', '%VK_7','%VK_8','%VK_9','%VK_A','%VK_ACCEPT','%VK_ADD','%VK_APPS','%VK_B', '%VK_BACK','%VK_C','%VK_CANCEL','%VK_CAPITAL','%VK_CLEAR','%VK_CONTROL','%VK_CONVERT','%VK_D', '%VK_DECIMAL','%VK_DELETE','%VK_DIVIDE','%VK_DOWN','%VK_E','%VK_END','%VK_ESCAPE','%VK_EXECUTE', '%VK_F','%VK_F1','%VK_F10','%VK_F11','%VK_F12','%VK_F13','%VK_F14','%VK_F15', '%VK_F16','%VK_F17','%VK_F18','%VK_F19','%VK_F2','%VK_F20','%VK_F21','%VK_F22', '%VK_F23','%VK_F24','%VK_F3','%VK_F4','%VK_F5','%VK_F6','%VK_F7','%VK_F8', '%VK_F9','%VK_FINAL','%VK_G','%VK_H','%VK_HANGEUL','%VK_HANGUL','%VK_HANJA','%VK_HELP', '%VK_HOME','%VK_I','%VK_INSERT','%VK_J','%VK_JUNJA','%VK_K','%VK_KANA','%VK_KANJI', '%VK_L','%VK_LBUTTON','%VK_LEFT','%VK_LINEFEED','%VK_LWIN','%VK_M','%VK_MBUTTON','%VK_MENU', '%VK_MODECHANGE','%VK_MULTIPLY','%VK_N','%VK_NEXT','%VK_NONCONVERT','%VK_NUMLOCK','%VK_NUMPAD0','%VK_NUMPAD1', '%VK_NUMPAD2','%VK_NUMPAD3','%VK_NUMPAD4','%VK_NUMPAD5','%VK_NUMPAD6','%VK_NUMPAD7','%VK_NUMPAD8','%VK_NUMPAD9', '%VK_O','%VK_P','%VK_PAUSE','%VK_PGDN','%VK_PGUP','%VK_PRINT','%VK_PRIOR','%VK_Q', '%VK_R','%VK_RBUTTON','%VK_RETURN','%VK_RIGHT','%VK_RWIN','%VK_S','%VK_SCROLL','%VK_SELECT', '%VK_SEPARATOR','%VK_SHIFT','%VK_SLEEP','%VK_SNAPSHOT','%VK_SPACE','%VK_SUBTRACT','%VK_T','%VK_TAB', '%VK_U','%VK_UP','%VK_V','%VK_W','%VK_X','%VK_XBUTTON1','%VK_XBUTTON2','%VK_Y', '%VK_Z','%VT_ARRAY','%VT_BLOB','%VT_BLOB_OBJECT','%VT_BOOL','%VT_BSTR','%VT_BYREF','%VT_CARRAY', '%VT_CF','%VT_CLSID','%VT_CY','%VT_DATE','%VT_DISPATCH','%VT_EMPTY','%VT_ERROR','%VT_FILETIME', '%VT_HRESULT','%VT_I1','%VT_I2','%VT_I4','%VT_I8','%VT_INT','%VT_LPSTR','%VT_LPWSTR', '%VT_NULL','%VT_PTR','%VT_R4','%VT_R8','%VT_RECORD','%VT_RESERVED','%VT_SAFEARRAY','%VT_STORAGE', '%VT_STORED_OBJECT','%VT_STREAM','%VT_STREAMED_OBJECT','%VT_UI1','%VT_UI2','%VT_UI4','%VT_UI8','%VT_UINT', '%VT_UNKNOWN','%VT_USERDEFINED','%VT_VARIANT','%VT_VECTOR','%VT_VOID','%WAVE_FORMAT_1M08','%WAVE_FORMAT_1M16','%WAVE_FORMAT_1S08', '%WAVE_FORMAT_1S16','%WAVE_FORMAT_2M08','%WAVE_FORMAT_2M16','%WAVE_FORMAT_2S08','%WAVE_FORMAT_2S16','%WAVE_FORMAT_4M08','%WAVE_FORMAT_4M16','%WAVE_FORMAT_4S08', '%WAVE_FORMAT_4S16','%WBF_CUSTOM','%WBF_LEVEL1','%WBF_LEVEL2','%WBF_OVERFLOW','%WBF_WORDBREAK','%WBF_WORDWRAP','%WHITE', '%WIN_FINDTITLECONTAIN','%WIN_FINDTITLEEND','%WIN_FINDTITLEEQUAL','%WIN_FINDTITLESTART','%WM_ACTIVATE','%WM_ACTIVATEAPP','%WM_CAPTURECHANGED','%WM_CHAR', '%WM_CLOSE','%WM_COMMAND','%WM_DESTROY','%WM_DROPFILES','%WM_ERASEBKGND','%WM_GETTEXTLENGTH','%WM_HOTKEY','%WM_HSCROLL', '%WM_IDLE','%WM_INITDIALOG','%WM_KEYDOWN','%WM_KEYUP','%WM_KILLFOCUS','%WM_LBUTTONDBLCLK','%WM_LBUTTONDOWN','%WM_LBUTTONUP', '%WM_MBUTTONDBLCLK','%WM_MBUTTONDOWN','%WM_MBUTTONUP','%WM_MOUSEFIRST','%WM_MOUSEMOVE','%WM_MOUSEWHEEL','%WM_MOVE','%WM_MOVING', '%WM_NCLBUTTONDOWN','%WM_NCRBUTTONDOWN','%WM_NEXTDLGCTL','%WM_NOTIFY','%WM_PAINT','%WM_QUIT','%WM_RBUTTONDBLCLK','%WM_RBUTTONDOWN', '%WM_RBUTTONUP','%WM_SETFOCUS','%WM_SETFONT','%WM_SETTEXT','%WM_SIZE','%WM_SIZING','%WM_SYSCOMMAND','%WM_TIMER', '%WM_USER','%WM_VSCROLL','%WS_BORDER','%WS_CAPTION','%WS_CHILD','%WS_CLIPCHILDREN','%WS_CLIPSIBLINGS','%WS_DISABLED', '%WS_DLGFRAME','%WS_EX_ACCEPTFILES','%WS_EX_APPWINDOW','%WS_EX_CLIENTEDGE','%WS_EX_CONTEXTHELP','%WS_EX_CONTROLPARENT','%WS_EX_LAYERED','%WS_EX_LEFT', '%WS_EX_LEFTSCROLLBAR','%WS_EX_LTRREADING','%WS_EX_MDICHILD','%WS_EX_NOPARENTNOTIFY','%WS_EX_OVERLAPPEDWINDOW','%WS_EX_PALETTEWINDOW','%WS_EX_RIGHT','%WS_EX_RIGHTSCROLLBAR', '%WS_EX_RTLREADING','%WS_EX_STATICEDGE','%WS_EX_TOOLWINDOW','%WS_EX_TOPMOST','%WS_EX_TRANSPARENT','%WS_EX_WINDOWEDGE','%WS_GROUP','%WS_HSCROLL', '%WS_ICONIC','%WS_MAXIMIZE','%WS_MAXIMIZEBOX','%WS_MINIMIZE','%WS_MINIMIZEBOX','%WS_OVERLAPPEDWINDOW','%WS_POPUP','%WS_POPUPWINDOW', '%WS_SYSMENU','%WS_TABSTOP','%WS_THICKFRAME','%WS_VISIBLE','%WS_VSCROLL','%YELLOW','%ZERO','CRLF', 'FALSE','M_E','M_PI','NULL','TAB','TRUE' ) ), 'SYMBOLS' => array( '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #0000FF; font-weight: bold;', 2 => 'color: #993333; font-style: italic; font-weight: bold;' ), 'COMMENTS' => array( 1 => 'color: #008000;' ), 'BRACKETS' => array( 0 => 'color: #333333;' ), 'STRINGS' => array( 0 => 'color: #800080;' ), 'NUMBERS' => array( 0 => 'color: #CC0000;' ), 'METHODS' => array( 1 => 'color: #66cc66;' ), 'SYMBOLS' => array( 0 => 'color: #333333;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099;' ), 'SCRIPT' => array( ), 'REGEXPS' => array( ) ), 'URLS' => array( 1 => '', 2 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( 1 => '_' ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ) ); ?> geshi/geshi/rexx.php0000664000175000017500000001264212014173452013671 0ustar benbebenbe 'rexx', 'COMMENT_SINGLE' => array(1 => '--'), 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( 1 => array( 'address', 'arg', 'attribute', 'call', 'constant', 'do', 'drop', 'exit', 'forward', 'if', 'interpret', 'iterate', 'leave', 'loop', 'nop', 'numeric', 'options', 'parse', 'procedure', 'pull', 'push', 'queue', 'raise', 'return', 'say', 'select', 'signal', 'trace' ), 2 => array( 'by', 'digits', 'engineering', 'error', 'expose', 'failure', 'for', 'forever', 'form', 'fuzz', 'halt', 'name', 'novalue', 'off', 'on', 'over', 'scientific', 'source', 'syntax', 'to', 'until', 'upper', 'version', 'while', 'with' ), 3 => array( 'else', 'end', 'otherwise', 'then', 'when' ), 4 => array( 'rc', 'result', 'sigl' ), 5 => array( 'placeholderforoorexxdirectives' ), 6 => array( 'abbrev', 'abs', 'beep', 'bitand', 'bitor', 'bitxor', 'b2x', 'center', 'centre', 'changestr', 'charin', 'charout', 'chars', 'compare', 'condition', 'copies', 'countstr', 'c2d', 'c2x', 'datatype', 'date', 'delstr', 'delword', 'directory', 'd2c', 'd2x', 'endlocal', 'errortext', 'filespec', 'format', 'insert', 'lastpos', 'left', 'length', 'linein', 'lineout', 'lines', 'lower', 'max', 'min', 'overlay', 'pos', 'queued', 'random', 'reverse', 'right', 'rxfuncadd', 'rxfuncdrop', 'rxfuncquery', 'rxqueue', 'setlocal', 'sign', 'sourceline', 'space', 'stream', 'strip', 'substr', 'subword', 'symbol', 'time', 'translate', 'trunc', 'userid', 'value', 'var', 'verify', 'word', 'wordindex', 'wordlength', 'wordpos', 'words', 'xrange', 'x2b', 'x2c', 'x2d' ) ), 'SYMBOLS' => array( '(', ')', '<', '>', '=', '+', '-', '*', '**', '/', '|', '%', '^', '&', ':' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => true, 1 => false, 2 => false, 3 => false, 4 => false, 5 => false, 6 => false ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #b1b100;', 2 => 'color: #ff0000; font-weight: bold;', 3 => 'color: #00ff00; font-weight: bold;', 4 => 'color: #0000ff; font-weight: bold;', 5 => 'color: #880088; font-weight: bold;', 6 => 'color: #888800; font-weight: bold;' ), 'COMMENTS' => array( 1 => 'color: #666666;', 'MULTI' => 'color: #808080;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #66cc66;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' ), 'METHODS' => array( 1 => 'color: #202020;', 2 => 'color: #202020;' ), 'SYMBOLS' => array( 0 => 'color: #66cc66;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( ) ), 'URLS' => array( 1 => '', 2 => '', 3 => '', 4 => '', 5 => '', 6 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( 1 => '.' ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'TAB_WIDTH' => 4 ); ?> geshi/geshi/c.php0000664000175000017500000002433112014173424013122 0ustar benbebenbe 'C', 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), 'COMMENT_MULTI' => array('/*' => '*/'), 'COMMENT_REGEXP' => array( //Multiline-continued single-line comments 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', //Multiline-continued preprocessor define 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '', 'ESCAPE_REGEXP' => array( //Simple Single Char Escapes 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", //Hexadecimal Char Specs 2 => "#\\\\x[\da-fA-F]{2}#", //Hexadecimal Char Specs 3 => "#\\\\u[\da-fA-F]{4}#", //Hexadecimal Char Specs 4 => "#\\\\U[\da-fA-F]{8}#", //Octal Char Specs 5 => "#\\\\[0-7]{1,3}#" ), 'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, 'KEYWORDS' => array( 1 => array( 'if', 'return', 'while', 'case', 'continue', 'default', 'do', 'else', 'for', 'switch', 'goto' ), 2 => array( 'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline' ), 3 => array( // assert.h 'assert', //complex.h 'cabs', 'cacos', 'cacosh', 'carg', 'casin', 'casinh', 'catan', 'catanh', 'ccos', 'ccosh', 'cexp', 'cimag', 'cis', 'clog', 'conj', 'cpow', 'cproj', 'creal', 'csin', 'csinh', 'csqrt', 'ctan', 'ctanh', //ctype.h 'digittoint', 'isalnum', 'isalpha', 'isascii', 'isblank', 'iscntrl', 'isdigit', 'isgraph', 'islower', 'isprint', 'ispunct', 'isspace', 'isupper', 'isxdigit', 'toascii', 'tolower', 'toupper', //inttypes.h 'imaxabs', 'imaxdiv', 'strtoimax', 'strtoumax', 'wcstoimax', 'wcstoumax', //locale.h 'localeconv', 'setlocale', //math.h 'acos', 'asin', 'atan', 'atan2', 'ceil', 'cos', 'cosh', 'exp', 'fabs', 'floor', 'frexp', 'ldexp', 'log', 'log10', 'modf', 'pow', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', //setjmp.h 'longjmp', 'setjmp', //signal.h 'raise', //stdarg.h 'va_arg', 'va_copy', 'va_end', 'va_start', //stddef.h 'offsetof', //stdio.h 'clearerr', 'fclose', 'fdopen', 'feof', 'ferror', 'fflush', 'fgetc', 'fgetpos', 'fgets', 'fopen', 'fprintf', 'fputc', 'fputchar', 'fputs', 'fread', 'freopen', 'fscanf', 'fseek', 'fsetpos', 'ftell', 'fwrite', 'getc', 'getch', 'getchar', 'gets', 'perror', 'printf', 'putc', 'putchar', 'puts', 'remove', 'rename', 'rewind', 'scanf', 'setbuf', 'setvbuf', 'snprintf', 'sprintf', 'sscanf', 'tmpfile', 'tmpnam', 'ungetc', 'vfprintf', 'vfscanf', 'vprintf', 'vscanf', 'vsprintf', 'vsscanf', //stdlib.h 'abort', 'abs', 'atexit', 'atof', 'atoi', 'atol', 'bsearch', 'calloc', 'div', 'exit', 'free', 'getenv', 'itoa', 'labs', 'ldiv', 'ltoa', 'malloc', 'qsort', 'rand', 'realloc', 'srand', 'strtod', 'strtol', 'strtoul', 'system', //string.h 'memchr', 'memcmp', 'memcpy', 'memmove', 'memset', 'strcat', 'strchr', 'strcmp', 'strcoll', 'strcpy', 'strcspn', 'strerror', 'strlen', 'strncat', 'strncmp', 'strncpy', 'strpbrk', 'strrchr', 'strspn', 'strstr', 'strtok', 'strxfrm', //time.h 'asctime', 'clock', 'ctime', 'difftime', 'gmtime', 'localtime', 'mktime', 'strftime', 'time', //wchar.h 'btowc', 'fgetwc', 'fgetws', 'fputwc', 'fputws', 'fwide', 'fwprintf', 'fwscanf', 'getwc', 'getwchar', 'mbrlen', 'mbrtowc', 'mbsinit', 'mbsrtowcs', 'putwc', 'putwchar', 'swprintf', 'swscanf', 'ungetwc', 'vfwprintf', 'vswprintf', 'vwprintf', 'wcrtomb', 'wcscat', 'wcschr', 'wcscmp', 'wcscoll', 'wcscpy', 'wcscspn', 'wcsftime', 'wcslen', 'wcsncat', 'wcsncmp', 'wcsncpy', 'wcspbrk', 'wcsrchr', 'wcsrtombs', 'wcsspn', 'wcsstr', 'wcstod', 'wcstok', 'wcstol', 'wcstoul', 'wcsxfrm', 'wctob', 'wmemchr', 'wmemcmp', 'wmemcpy', 'wmemmove', 'wmemset', 'wprintf', 'wscanf', //wctype.h 'iswalnum', 'iswalpha', 'iswcntrl', 'iswctype', 'iswdigit', 'iswgraph', 'iswlower', 'iswprint', 'iswpunct', 'iswspace', 'iswupper', 'iswxdigit', 'towctrans', 'towlower', 'towupper', 'wctrans', 'wctype' ), 4 => array( 'auto', 'char', 'const', 'double', 'float', 'int', 'long', 'register', 'short', 'signed', 'sizeof', 'static', 'struct', 'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t', 'int8', 'int16', 'int32', 'int64', 'uint8', 'uint16', 'uint32', 'uint64', 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t', 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t', 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t', 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t', 'int8_t', 'int16_t', 'int32_t', 'int64_t', 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t', 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t', 'size_t', 'off_t' ), ), 'SYMBOLS' => array( '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%', '=', '<', '>', '!', '^', '&', '|', '?', ':', ';', ',' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, 2 => true, 3 => true, 4 => true, ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #b1b100;', 2 => 'color: #000000; font-weight: bold;', 3 => 'color: #000066;', 4 => 'color: #993333;' ), 'COMMENTS' => array( 1 => 'color: #666666; font-style: italic;', 2 => 'color: #339933;', 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;', 1 => 'color: #000099; font-weight: bold;', 2 => 'color: #660099; font-weight: bold;', 3 => 'color: #660099; font-weight: bold;', 4 => 'color: #660099; font-weight: bold;', 5 => 'color: #006699; font-weight: bold;', 'HARD' => '', ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #0000dd;', GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' ), 'METHODS' => array( 1 => 'color: #202020;', 2 => 'color: #202020;' ), 'SYMBOLS' => array( 0 => 'color: #339933;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( ) ), 'URLS' => array( 1 => '', 2 => '', 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', 4 => '' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => '.', 2 => '::' ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'TAB_WIDTH' => 4 ); ?>geshi/geshi/vbnet.php0000664000175000017500000001721312014173401014012 0ustar benbebenbe 'vb.net', 'COMMENT_SINGLE' => array(1 => "'"), 'COMMENT_MULTI' => array(), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array('"'), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( //Keywords 1 => array( 'AddHandler', 'AddressOf', 'Alias', 'And', 'AndAlso', 'As', 'ByRef', 'ByVal', 'Call', 'Case', 'Catch', 'Char', 'Class', 'Const', 'Continue', 'Declare', 'Default', 'Delegate', 'Dim', 'DirectCast', 'Do', 'Each', 'Else', 'ElseIf', 'End', 'EndIf', 'Enum', 'Erase', 'Error', 'Event', 'Exit', 'False', 'Finally', 'For', 'Friend', 'Function', 'Get', 'GetType', 'GetXMLNamespace', 'Global', 'GoSub', 'GoTo', 'Handles', 'If', 'Implements', 'Imports', 'In', 'Inherits', 'Interface', 'Is', 'IsNot', 'Let', 'Lib', 'Like', 'Loop', 'Me', 'Mod', 'Module', 'Module Statement', 'MustInherit', 'MustOverride', 'MyBase', 'MyClass', 'Namespace', 'Narrowing', 'New', 'Next', 'Not', 'Nothing', 'NotInheritable', 'NotOverridable', 'Of', 'On', 'Operator', 'Option', 'Optional', 'Or', 'OrElse', 'Out', 'Overloads', 'Overridable', 'Overrides', 'ParamArray', 'Partial', 'Private', 'Property', 'Protected', 'Public', 'RaiseEvent', 'ReadOnly', 'ReDim', 'REM', 'RemoveHandler', 'Resume', 'Return', 'Select','Set', 'Shadows', 'Shared', 'Static', 'Step', 'Stop', 'Structure', 'Sub', 'SyncLock', 'Then', 'Throw', 'To', 'True', 'Try', 'TryCast', 'TypeOf', 'Using', 'Wend', 'When', 'While', 'Widening', 'With', 'WithEvents', 'WriteOnly', 'Xor' ), //Data Types 2 => array( 'Boolean', 'Byte', 'Date', 'Decimal', 'Double', 'Integer', 'Long', 'Object', 'SByte', 'Short', 'Single', 'String', 'UInteger', 'ULong', 'UShort' ), //Compiler Directives 3 => array( '#Const', '#Else', '#ElseIf', '#End', '#If' ), //Constants 4 => array( 'CBool', 'CByte', 'CChar', 'CChr', 'CDate', 'CDbl', 'CDec','CInt', 'CLng', 'CLng8', 'CObj', 'CSByte', 'CShort', 'CSng', 'CStr', 'CType', 'CUInt', 'CULng', 'CUShort' ), //Linq 5 => array( 'By','From','Group','Where' ), //Built-in functions 7 => array( 'ABS', 'ARRAY', 'ASC', 'ASCB', 'ASCW', 'CALLBYNAME', 'CHOOSE', 'CHR', 'CHR$', 'CHRB', 'CHRB$', 'CHRW', 'CLOSE', 'COMMAND', 'COMMAND$', 'CONVERSION', 'COS', 'CREATEOBJECT', 'CURDIR', 'CVDATE', 'DATEADD', 'DATEDIFF', 'DATEPART', 'DATESERIAL', 'DATEVALUE', 'DAY', 'DDB', 'DIR', 'DIR$', 'EOF', 'ERROR$', 'EXP', 'FILEATTR', 'FILECOPY', 'FILEDATATIME', 'FILELEN', 'FILTER', 'FIX', 'FORMAT', 'FORMAT$', 'FORMATCURRENCY', 'FORMATDATETIME', 'FORMATNUMBER', 'FORMATPERCENT', 'FREEFILE', 'FV', 'GETALLSETTINGS', 'GETATTRGETOBJECT', 'GETSETTING', 'HEX', 'HEX$', 'HOUR', 'IIF', 'IMESTATUS', 'INPUT$', 'INPUTB', 'INPUTB$', 'INPUTBOX', 'INSTR', 'INSTRB', 'INSTRREV', 'INT', 'IPMT', 'IRR', 'ISARRAY', 'ISDATE', 'ISEMPTY', 'ISERROR', 'ISNULL', 'ISNUMERIC', 'ISOBJECT', 'JOIN', 'LBOUND', 'LCASE', 'LCASE$', 'LEFT', 'LEFT$', 'LEFTB', 'LEFTB$', 'LENB', 'LINEINPUT', 'LOC', 'LOF', 'LOG', 'LTRIM', 'LTRIM$', 'MID$', 'MIDB', 'MIDB$', 'MINUTE', 'MIRR', 'MKDIR', 'MONTH', 'MONTHNAME', 'MSGBOX', 'NOW', 'NPER', 'NPV', 'OCT', 'OCT$', 'PARTITION', 'PMT', 'PPMT', 'PV', 'RATE', 'REPLACE', 'RIGHT', 'RIGHT$', 'RIGHTB', 'RIGHTB$', 'RMDIR', 'RND', 'RTRIM', 'RTRIM$', 'SECOND', 'SIN', 'SLN', 'SPACE', 'SPACE$', 'SPC', 'SPLIT', 'SQRT', 'STR', 'STR$', 'STRCOMP', 'STRCONV', 'STRING$', 'STRREVERSE', 'SYD', 'TAB', 'TAN', 'TIMEOFDAY', 'TIMER', 'TIMESERIAL', 'TIMEVALUE', 'TODAY', 'TRIM', 'TRIM$', 'TYPENAME', 'UBOUND', 'UCASE', 'UCASE$', 'VAL', 'WEEKDAY', 'WEEKDAYNAME', 'YEAR' ), ), 'SYMBOLS' => array( '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', '(', ')', '{', '}', '.' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false, 3 => false, 4 => false, 5 => false, 7 => false ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #0000FF; font-weight: bold;', //Keywords 2 => 'color: #6a5acd;', //primitive Data Types 3 => 'color: #6a5acd; font-weight: bold;', //preprocessor-commands 4 => 'color: #cd6a5a;', //Constants 5 => 'color: #cd6a5a; font-weight: bold;', //LinQ 7 => 'color: #000066;', //Built-in functions ), 'COMMENTS' => array( 1 => 'color: #008000; font-style: italic;', 'MULTI' => 'color: #008000; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #008080; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #000000;' ), 'STRINGS' => array( 0 => 'color: #a52a2a; back-color: #fffacd;' ), 'NUMBERS' => array( 0 => 'color: #a52a2a; back-color: #fffacd;' ), 'METHODS' => array( 1 => 'color: #000000;' ), 'SYMBOLS' => array( 0 => 'color: #000000;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( ) ), 'URLS' => array( 1 => '', 2 => '', 3 => 'http://www.google.com/search?q={FNAMEU}+site:msdn.microsoft.com', 4 => '', 5 => '', 7 => 'http://www.google.com/search?q={FNAMEU}+site:msdn.microsoft.com' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 =>'.' ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 7 => array( 'DISALLOWED_AFTER' => '(?!\w)(?=\s*\()' ) ) ) ); ?>geshi/geshi/parasail.php0000664000175000017500000000763312014173417014504 0ustar benbebenbe 'ParaSail', 'COMMENT_SINGLE' => array(1 => '//'), 'COMMENT_MULTI' => array('{' => '}'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array('"'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( 'all', 'block', 'case', 'continue', 'each', 'else', 'elsif', 'exit', 'for', 'forward', 'if', 'loop', 'return', 'reverse', 'some', 'then', 'until', 'while', 'with' ), 2 => array( 'abs', 'and','in', 'mod', 'not', 'null', 'or', 'rem', 'xor' ), 3 => array( 'abstract', 'class', 'concurrent', 'const', 'end', 'extends', 'exports', 'func', 'global', 'implements', 'import', 'interface', 'is', 'lambda', 'locked', 'new', 'of', 'op', 'optional', 'private', 'queued', 'ref', 'separate', 'type', 'var', ) ), 'SYMBOLS' => array( '(', ')', '[', ']', '<', '>' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false, 3 => false, ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #00007f;', 2 => 'color: #0000ff;', 3 => 'color: #46aa03; font-weight:bold;', ), 'BRACKETS' => array( 0 => 'color: #66cc66;' ), 'COMMENTS' => array( 1 => 'color: #adadad; font-style: italic;', 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #66cc66;' ), 'STRINGS' => array( 0 => 'color: #7f007f;' ), 'NUMBERS' => array( 0 => 'color: #ff0000;' ), 'METHODS' => array( 1 => 'color: #202020;' ), 'SYMBOLS' => array( 0 => 'color: #66cc66;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( ) ), 'URLS' => array( 1 => '', 2 => '', 3 => '' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => '.' ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ) ); ?>geshi/geshi/cpp-qt.php0000664000175000017500000010127012014173436014105 0ustar benbebenbe 'C++ (Qt)', 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), 'COMMENT_MULTI' => array('/*' => '*/'), 'COMMENT_REGEXP' => array( //Multiline-continued single-line comments 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', //Multiline-continued preprocessor define 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '', 'ESCAPE_REGEXP' => array( //Simple Single Char Escapes 1 => "#\\\\[abfnrtv\\\'\"?\n]#i", //Hexadecimal Char Specs 2 => "#\\\\x[\da-fA-F]{2}#", //Hexadecimal Char Specs 3 => "#\\\\u[\da-fA-F]{4}#", //Hexadecimal Char Specs 4 => "#\\\\U[\da-fA-F]{8}#", //Octal Char Specs 5 => "#\\\\[0-7]{1,3}#" ), 'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, 'KEYWORDS' => array( 1 => array( 'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return', 'switch', 'while', 'delete', 'new', 'this' ), 2 => array( 'NULL', 'false', 'break', 'true', 'enum', 'errno', 'EDOM', 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr', 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC', 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace', 'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast', 'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class' , 'foreach','connect', 'Q_OBJECT' , 'slots' , 'signals', 'Q_SIGNALS', 'Q_SLOTS', 'Q_FOREACH', 'QCOMPARE', 'QVERIFY', 'qDebug', 'kDebug', 'QBENCHMARK' ), 3 => array( 'cin', 'cerr', 'clog', 'cout', 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' ), 4 => array( 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint', 'register', 'short', 'shortint', 'signed', 'static', 'struct', 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf', 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', 'wchar_t', 'int8', 'int16', 'int32', 'int64', 'uint8', 'uint16', 'uint32', 'uint64', 'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t', 'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t', 'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t', 'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t', 'int8_t', 'int16_t', 'int32_t', 'int64_t', 'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t', 'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t' ), 5 => array( "Q_UINT16", "Q_UINT32", "Q_UINT64", "Q_UINT8", "Q_ULLONG", "Q_ULONG", "Q3Accel", "Q3Action", "Q3ActionGroup", "Q3AsciiBucket", "Q3AsciiCache", "Q3AsciiCacheIterator", "Q3AsciiDict", "Q3AsciiDictIterator", "Q3BaseBucket", "Q3BoxLayout", "Q3Button", "Q3ButtonGroup", "Q3Cache", "Q3CacheIterator", "Q3Canvas", "Q3CanvasEllipse", "Q3CanvasItem", "Q3CanvasItemList", "Q3CanvasLine", "Q3CanvasPixmap", "Q3CanvasPixmapArray", "Q3CanvasPolygon", "Q3CanvasPolygonalItem", "Q3CanvasRectangle", "Q3CanvasSpline", "Q3CanvasSprite", "Q3CanvasText", "Q3CanvasView", "Q3CheckListItem", "Q3CheckTableItem", "Q3CleanupHandler", "Q3ColorDrag", "Q3ComboBox", "Q3ComboTableItem", "Q3CString", "Q3DataBrowser", "Q3DataTable", "Q3DataView", "Q3DateEdit", "Q3DateTimeEdit", "Q3DateTimeEditBase", "Q3DeepCopy", "Q3Dict", "Q3DictIterator", "Q3Dns", "Q3DnsSocket", "Q3DockArea", "Q3DockAreaLayout", "Q3DockWindow", "Q3DragObject", "Q3DropSite", "Q3EditorFactory", "Q3FileDialog", "Q3FileIconProvider", "Q3FilePreview", "Q3Frame", "Q3Ftp", "Q3GArray", "Q3GCache", "Q3GCacheIterator", "Q3GDict", "Q3GDictIterator", "Q3GList", "Q3GListIterator", "Q3GListStdIterator", "Q3Grid", "Q3GridLayout", "Q3GridView", "Q3GroupBox", "Q3GVector", "Q3HBox", "Q3HBoxLayout", "Q3HButtonGroup", "Q3Header", "Q3HGroupBox", "Q3Http", "Q3HttpHeader", "Q3HttpRequestHeader", "Q3HttpResponseHeader", "Q3IconDrag", "Q3IconDragItem", "Q3IconView", "Q3IconViewItem", "Q3ImageDrag", "Q3IntBucket", "Q3IntCache", "Q3IntCacheIterator", "Q3IntDict", "Q3IntDictIterator", "Q3ListBox", "Q3ListBoxItem", "Q3ListBoxPixmap", "Q3ListBoxText", "Q3ListView", "Q3ListViewItem", "Q3ListViewItemIterator", "Q3LNode", "Q3LocalFs", "Q3MainWindow", "Q3MemArray", "Q3MimeSourceFactory", "Q3MultiLineEdit", "Q3NetworkOperation", "Q3NetworkProtocol", "Q3NetworkProtocolDict", "Q3NetworkProtocolFactory", "Q3NetworkProtocolFactoryBase", "Q3ObjectDictionary", "Q3PaintDeviceMetrics", "Q3Painter", "Q3Picture", "Q3PointArray", "Q3PolygonScanner", "Q3PopupMenu", "Q3Process", "Q3ProgressBar", "Q3ProgressDialog", "Q3PtrBucket", "Q3PtrCollection", "Q3PtrDict", "Q3PtrDictIterator", "Q3PtrList", "Q3PtrListIterator", "Q3PtrListStdIterator", "Q3PtrQueue", "Q3PtrStack", "Q3PtrVector", "Q3RangeControl", "Q3ScrollView", "Q3Semaphore", "Q3ServerSocket", "Q3Shared", "Q3Signal", "Q3SimpleRichText", "Q3SingleCleanupHandler", "Q3Socket", "Q3SocketDevice", "Q3SortedList", "Q3SpinWidget", "Q3SqlCursor", "Q3SqlEditorFactory", "Q3SqlFieldInfo", "Q3SqlFieldInfoList", "Q3SqlForm", "Q3SqlPropertyMap", "Q3SqlRecordInfo", "Q3SqlSelectCursor", "Q3StoredDrag", "Q3StrIList", "Q3StringBucket", "Q3StrIVec", "Q3StrList", "Q3StrListIterator", "Q3StrVec", "Q3StyleSheet", "Q3StyleSheetItem", "Q3SyntaxHighlighter", "Q3TabDialog", "Q3Table", "Q3TableItem", "Q3TableSelection", "Q3TextBrowser", "Q3TextDrag", "Q3TextEdit", "Q3TextEditOptimPrivate", "Q3TextStream", "Q3TextView", "Q3TimeEdit", "Q3ToolBar", "Q3TSFUNC", "Q3UriDrag", "Q3Url", "Q3UrlOperator", "Q3ValueList", "Q3ValueListConstIterator", "Q3ValueListIterator", "Q3ValueStack", "Q3ValueVector", "Q3VBox", "Q3VBoxLayout", "Q3VButtonGroup", "Q3VGroupBox", "Q3WhatsThis", "Q3WidgetStack", "Q3Wizard", "QAbstractButton", "QAbstractEventDispatcher", "QAbstractExtensionFactory", "QAbstractExtensionManager", "QAbstractFileEngine", "QAbstractFileEngineHandler", "QAbstractFileEngineIterator", "QAbstractFormBuilder", "QAbstractGraphicsShapeItem", "QAbstractItemDelegate", "QAbstractItemModel", "QAbstractItemView", "QAbstractListModel", "QAbstractMessageHandler", "QAbstractNetworkCache", "QAbstractPageSetupDialog", "QAbstractPrintDialog", "QAbstractProxyModel", "QAbstractScrollArea", "QAbstractSlider", "QAbstractSocket", "QAbstractSpinBox", "QAbstractTableModel", "QAbstractTextDocumentLayout", "QAbstractUndoItem", "QAbstractUriResolver", "QAbstractXmlNodeModel", "QAbstractXmlReceiver", "QAccessible", "QAccessible2Interface", "QAccessibleApplication", "QAccessibleBridge", "QAccessibleBridgeFactoryInterface", "QAccessibleBridgePlugin", "QAccessibleEditableTextInterface", "QAccessibleEvent", "QAccessibleFactoryInterface", "QAccessibleInterface", "QAccessibleInterfaceEx", "QAccessibleObject", "QAccessibleObjectEx", "QAccessiblePlugin", "QAccessibleSimpleEditableTextInterface", "QAccessibleTableInterface", "QAccessibleTextInterface", "QAccessibleValueInterface", "QAccessibleWidget", "QAccessibleWidgetEx", "QAction", "QActionEvent", "QActionGroup", "QApplication", "QArgument", "QAssistantClient", "QAtomicInt", "QAtomicPointer", "QAuthenticator", "QBasicAtomicInt", "QBasicAtomicPointer", "QBasicTimer", "QBitArray", "QBitmap", "QBitRef", "QBool", "QBoxLayout", "QBrush", "QBrushData", "QBuffer", "QButtonGroup", "QByteArray", "QByteArrayMatcher", "QByteRef", "QCache", "QCalendarWidget", "QCDEStyle", "QChar", "QCharRef", "QCheckBox", "QChildEvent", "QCleanlooksStyle", "QClipboard", "QClipboardEvent", "QCloseEvent", "QColor", "QColorDialog", "QColorGroup", "QColormap", "QColumnView", "QComboBox", "QCommandLinkButton", "QCommonStyle", "QCompleter", "QConicalGradient", "QConstString", "QContextMenuEvent", "QCOORD", "QCoreApplication", "QCryptographicHash", "QCursor", "QCursorShape", "QCustomEvent", "QDataStream", "QDataWidgetMapper", "QDate", "QDateEdit", "QDateTime", "QDateTimeEdit", "QDB2Driver", "QDB2Result", "QDBusAbstractAdaptor", "QDBusAbstractInterface", "QDBusArgument", "QDBusConnection", "QDBusConnectionInterface", "QDBusContext", "QDBusError", "QDBusInterface", "QDBusMessage", "QDBusMetaType", "QDBusObjectPath", "QDBusPendingCall", "QDBusPendingCallWatcher", "QDBusPendingReply", "QDBusPendingReplyData", "QDBusReply", "QDBusServer", "QDBusSignature", "QDBusVariant", "QDebug", "QDesignerActionEditorInterface", "QDesignerBrushManagerInterface", "QDesignerComponents", "QDesignerContainerExtension", "QDesignerCustomWidgetCollectionInterface", "QDesignerCustomWidgetInterface", "QDesignerDnDItemInterface", "QDesignerDynamicPropertySheetExtension", "QDesignerExportWidget", "QDesignerExtraInfoExtension", "QDesignerFormEditorInterface", "QDesignerFormEditorPluginInterface", "QDesignerFormWindowCursorInterface", "QDesignerFormWindowInterface", "QDesignerFormWindowManagerInterface", "QDesignerFormWindowToolInterface", "QDesignerIconCacheInterface", "QDesignerIntegrationInterface", "QDesignerLanguageExtension", "QDesignerLayoutDecorationExtension", "QDesignerMemberSheetExtension", "QDesignerMetaDataBaseInterface", "QDesignerMetaDataBaseItemInterface", "QDesignerObjectInspectorInterface", "QDesignerPromotionInterface", "QDesignerPropertyEditorInterface", "QDesignerPropertySheetExtension", "QDesignerResourceBrowserInterface", "QDesignerTaskMenuExtension", "QDesignerWidgetBoxInterface", "QDesignerWidgetDataBaseInterface", "QDesignerWidgetDataBaseItemInterface", "QDesignerWidgetFactoryInterface", "QDesktopServices", "QDesktopWidget", "QDial", "QDialog", "QDialogButtonBox", "QDir", "QDirIterator", "QDirModel", "QDockWidget", "QDomAttr", "QDomCDATASection", "QDomCharacterData", "QDomComment", "QDomDocument", "QDomDocumentFragment", "QDomDocumentType", "QDomElement", "QDomEntity", "QDomEntityReference", "QDomImplementation", "QDomNamedNodeMap", "QDomNode", "QDomNodeList", "QDomNotation", "QDomProcessingInstruction", "QDomText", "QDoubleSpinBox", "QDoubleValidator", "QDrag", "QDragEnterEvent", "QDragLeaveEvent", "QDragMoveEvent", "QDragResponseEvent", "QDropEvent", "QDynamicPropertyChangeEvent", "QErrorMessage", "QEvent", "QEventLoop", "QEventSizeOfChecker", "QExplicitlySharedDataPointer", "QExtensionFactory", "QExtensionManager", "QFactoryInterface", "QFile", "QFileDialog", "QFileIconProvider", "QFileInfo", "QFileInfoList", "QFileInfoListIterator", "QFileOpenEvent", "QFileSystemModel", "QFileSystemWatcher", "QFlag", "QFlags", "QFocusEvent", "QFocusFrame", "QFont", "QFontComboBox", "QFontDatabase", "QFontDialog", "QFontInfo", "QFontMetrics", "QFontMetricsF", "QForeachContainer", "QForeachContainerBase", "QFormBuilder", "QFormLayout", "QFrame", "QFSFileEngine", "QFtp", "QFuture", "QFutureInterface", "QFutureInterfaceBase", "QFutureIterator", "QFutureSynchronizer", "QFutureWatcher", "QFutureWatcherBase", "QGenericArgument", "QGenericReturnArgument", "QGLColormap", "QGLContext", "QGLFormat", "QGLFramebufferObject", "QGlobalStatic", "QGlobalStaticDeleter", "QGLPixelBuffer", "QGLWidget", "QGradient", "QGradientStop", "QGradientStops", "QGraphicsEllipseItem", "QGraphicsGridLayout", "QGraphicsItem", "QGraphicsItemAnimation", "QGraphicsItemGroup", "QGraphicsLayout", "QGraphicsLayoutItem", "QGraphicsLinearLayout", "QGraphicsLineItem", "QGraphicsPathItem", "QGraphicsPixmapItem", "QGraphicsPolygonItem", "QGraphicsProxyWidget", "QGraphicsRectItem", "QGraphicsScene", "QGraphicsSceneContextMenuEvent", "QGraphicsSceneDragDropEvent", "QGraphicsSceneEvent", "QGraphicsSceneHelpEvent", "QGraphicsSceneHoverEvent", "QGraphicsSceneMouseEvent", "QGraphicsSceneMoveEvent", "QGraphicsSceneResizeEvent", "QGraphicsSceneWheelEvent", "QGraphicsSimpleTextItem", "QGraphicsSvgItem", "QGraphicsTextItem", "QGraphicsView", "QGraphicsWidget", "QGridLayout", "QGroupBox", "QGtkStyle", "QHash", "QHashData", "QHashDummyNode", "QHashDummyValue", "QHashIterator", "QHashNode", "QHBoxLayout", "QHeaderView", "QHelpContentItem", "QHelpContentModel", "QHelpContentWidget", "QHelpEngine", "QHelpEngineCore", "QHelpEvent", "QHelpGlobal", "QHelpIndexModel", "QHelpIndexWidget", "QHelpSearchEngine", "QHelpSearchQuery", "QHelpSearchQueryWidget", "QHelpSearchResultWidget", "QHideEvent", "QHostAddress", "QHostInfo", "QHoverEvent", "QHttp", "QHttpHeader", "QHttpRequestHeader", "QHttpResponseHeader", "QIBaseDriver", "QIBaseResult", "QIcon", "QIconDragEvent", "QIconEngine", "QIconEngineFactoryInterface", "QIconEngineFactoryInterfaceV2", "QIconEnginePlugin", "QIconEnginePluginV2", "QIconEngineV2", "QIconSet", "QImage", "QImageIOHandler", "QImageIOHandlerFactoryInterface", "QImageIOPlugin", "QImageReader", "QImageTextKeyLang", "QImageWriter", "QIncompatibleFlag", "QInputContext", "QInputContextFactory", "QInputContextFactoryInterface", "QInputContextPlugin", "QInputDialog", "QInputEvent", "QInputMethodEvent", "Q_INT16", "Q_INT32", "Q_INT64", "Q_INT8", "QInternal", "QIntForSize", "QIntForType", "QIntValidator", "QIODevice", "Q_IPV6ADDR", "QIPv6Address", "QItemDelegate", "QItemEditorCreator", "QItemEditorCreatorBase", "QItemEditorFactory", "QItemSelection", "QItemSelectionModel", "QItemSelectionRange", "QKeyEvent", "QKeySequence", "QLabel", "QLatin1Char", "QLatin1String", "QLayout", "QLayoutItem", "QLayoutIterator", "QLCDNumber", "QLibrary", "QLibraryInfo", "QLine", "QLinearGradient", "QLineEdit", "QLineF", "QLinkedList", "QLinkedListData", "QLinkedListIterator", "QLinkedListNode", "QList", "QListData", "QListIterator", "QListView", "QListWidget", "QListWidgetItem", "Q_LLONG", "QLocale", "QLocalServer", "QLocalSocket", "Q_LONG", "QMacCompatGLenum", "QMacCompatGLint", "QMacCompatGLuint", "QMacGLCompatTypes", "QMacMime", "QMacPasteboardMime", "QMainWindow", "QMap", "QMapData", "QMapIterator", "QMapNode", "QMapPayloadNode", "QMatrix", "QMdiArea", "QMdiSubWindow", "QMenu", "QMenuBar", "QMenubarUpdatedEvent", "QMenuItem", "QMessageBox", "QMetaClassInfo", "QMetaEnum", "QMetaMethod", "QMetaObject", "QMetaObjectExtraData", "QMetaProperty", "QMetaType", "QMetaTypeId", "QMetaTypeId2", "QMimeData", "QMimeSource", "QModelIndex", "QModelIndexList", "QMotifStyle", "QMouseEvent", "QMoveEvent", "QMovie", "QMultiHash", "QMultiMap", "QMutableFutureIterator", "QMutableHashIterator", "QMutableLinkedListIterator", "QMutableListIterator", "QMutableMapIterator", "QMutableSetIterator", "QMutableStringListIterator", "QMutableVectorIterator", "QMutex", "QMutexLocker", "QMYSQLDriver", "QMYSQLResult", "QNetworkAccessManager", "QNetworkAddressEntry", "QNetworkCacheMetaData", "QNetworkCookie", "QNetworkCookieJar", "QNetworkDiskCache", "QNetworkInterface", "QNetworkProxy", "QNetworkProxyFactory", "QNetworkProxyQuery", "QNetworkReply", "QNetworkRequest", "QNoDebug", "QNoImplicitBoolCast", "QObject", "QObjectCleanupHandler", "QObjectData", "QObjectList", "QObjectUserData", "QOCIDriver", "QOCIResult", "QODBCDriver", "QODBCResult", "QPageSetupDialog", "QPaintDevice", "QPaintEngine", "QPaintEngineState", "QPainter", "QPainterPath", "QPainterPathPrivate", "QPainterPathStroker", "QPaintEvent", "QPair", "QPalette", "QPen", "QPersistentModelIndex", "QPicture", "QPictureFormatInterface", "QPictureFormatPlugin", "QPictureIO", "Q_PID", "QPixmap", "QPixmapCache", "QPlainTextDocumentLayout", "QPlainTextEdit", "QPlastiqueStyle", "QPluginLoader", "QPoint", "QPointer", "QPointF", "QPolygon", "QPolygonF", "QPrintDialog", "QPrintEngine", "QPrinter", "QPrinterInfo", "QPrintPreviewDialog", "QPrintPreviewWidget", "QProcess", "QProgressBar", "QProgressDialog", "QProxyModel", "QPSQLDriver", "QPSQLResult", "QPushButton", "QQueue", "QRadialGradient", "QRadioButton", "QReadLocker", "QReadWriteLock", "QRect", "QRectF", "QRegExp", "QRegExpValidator", "QRegion", "QResizeEvent", "QResource", "QReturnArgument", "QRgb", "QRubberBand", "QRunnable", "QScriptable", "QScriptClass", "QScriptClassPropertyIterator", "QScriptContext", "QScriptContextInfo", "QScriptContextInfoList", "QScriptEngine", "QScriptEngineAgent", "QScriptEngineDebugger", "QScriptExtensionInterface", "QScriptExtensionPlugin", "QScriptString", "QScriptSyntaxCheckResult", "QScriptValue", "QScriptValueIterator", "QScriptValueList", "QScrollArea", "QScrollBar", "QSemaphore", "QSessionManager", "QSet", "QSetIterator", "QSettings", "QSharedData", "QSharedDataPointer", "QSharedMemory", "QSharedPointer", "QShortcut", "QShortcutEvent", "QShowEvent", "QSignalMapper", "QSignalSpy", "QSimpleXmlNodeModel", "QSize", "QSizeF", "QSizeGrip", "QSizePolicy", "QSlider", "QSocketNotifier", "QSortFilterProxyModel", "QSound", "QSourceLocation", "QSpacerItem", "QSpinBox", "QSplashScreen", "QSplitter", "QSplitterHandle", "QSpontaneKeyEvent", "QSqlDatabase", "QSqlDriver", "QSqlDriverCreator", "QSqlDriverCreatorBase", "QSqlDriverFactoryInterface", "QSqlDriverPlugin", "QSqlError", "QSqlField", "QSqlIndex", "QSQLite2Driver", "QSQLite2Result", "QSQLiteDriver", "QSQLiteResult", "QSqlQuery", "QSqlQueryModel", "QSqlRecord", "QSqlRelation", "QSqlRelationalDelegate", "QSqlRelationalTableModel", "QSqlResult", "QSqlTableModel", "QSsl", "QSslCertificate", "QSslCipher", "QSslConfiguration", "QSslError", "QSslKey", "QSslSocket", "QStack", "QStackedLayout", "QStackedWidget", "QStandardItem", "QStandardItemEditorCreator", "QStandardItemModel", "QStatusBar", "QStatusTipEvent", "QStdWString", "QString", "QStringList", "QStringListIterator", "QStringListModel", "QStringMatcher", "QStringRef", "QStyle", "QStyledItemDelegate", "QStyleFactory", "QStyleFactoryInterface", "QStyleHintReturn", "QStyleHintReturnMask", "QStyleHintReturnVariant", "QStyleOption", "QStyleOptionButton", "QStyleOptionComboBox", "QStyleOptionComplex", "QStyleOptionDockWidget", "QStyleOptionDockWidgetV2", "QStyleOptionFocusRect", "QStyleOptionFrame", "QStyleOptionFrameV2", "QStyleOptionFrameV3", "QStyleOptionGraphicsItem", "QStyleOptionGroupBox", "QStyleOptionHeader", "QStyleOptionMenuItem", "QStyleOptionProgressBar", "QStyleOptionProgressBarV2", "QStyleOptionQ3DockWindow", "QStyleOptionQ3ListView", "QStyleOptionQ3ListViewItem", "QStyleOptionRubberBand", "QStyleOptionSizeGrip", "QStyleOptionSlider", "QStyleOptionSpinBox", "QStyleOptionTab", "QStyleOptionTabBarBase", "QStyleOptionTabBarBaseV2", "QStyleOptionTabV2", "QStyleOptionTabV3", "QStyleOptionTabWidgetFrame", "QStyleOptionTitleBar", "QStyleOptionToolBar", "QStyleOptionToolBox", "QStyleOptionToolBoxV2", "QStyleOptionToolButton", "QStyleOptionViewItem", "QStyleOptionViewItemV2", "QStyleOptionViewItemV3", "QStyleOptionViewItemV4", "QStylePainter", "QStylePlugin", "QSvgGenerator", "QSvgRenderer", "QSvgWidget", "QSyntaxHighlighter", "QSysInfo", "QSystemLocale", "QSystemSemaphore", "QSystemTrayIcon", "Qt", "Qt3Support", "QTabBar", "QTabletEvent", "QTableView", "QTableWidget", "QTableWidgetItem", "QTableWidgetSelectionRange", "QTabWidget", "QtAlgorithms", "QtAssistant", "QtCleanUpFunction", "QtConcurrentFilter", "QtConcurrentMap", "QtConcurrentRun", "QtContainerFwd", "QtCore", "QTcpServer", "QTcpSocket", "QtDBus", "QtDebug", "QtDesigner", "QTDSDriver", "QTDSResult", "QTemporaryFile", "QtEndian", "QTest", "QTestAccessibility", "QTestAccessibilityEvent", "QTestData", "QTestDelayEvent", "QTestEvent", "QTestEventList", "QTestEventLoop", "QTestKeyClicksEvent", "QTestKeyEvent", "QTestMouseEvent", "QtEvents", "QTextBlock", "QTextBlockFormat", "QTextBlockGroup", "QTextBlockUserData", "QTextBoundaryFinder", "QTextBrowser", "QTextCharFormat", "QTextCodec", "QTextCodecFactoryInterface", "QTextCodecPlugin", "QTextCursor", "QTextDecoder", "QTextDocument", "QTextDocumentFragment", "QTextDocumentWriter", "QTextEdit", "QTextEncoder", "QTextFormat", "QTextFragment", "QTextFrame", "QTextFrameFormat", "QTextFrameLayoutData", "QTextImageFormat", "QTextInlineObject", "QTextIStream", "QTextItem", "QTextLayout", "QTextLength", "QTextLine", "QTextList", "QTextListFormat", "QTextObject", "QTextObjectInterface", "QTextOption", "QTextOStream", "QTextStream", "QTextStreamFunction", "QTextStreamManipulator", "QTextTable", "QTextTableCell", "QTextTableCellFormat", "QTextTableFormat", "QtGlobal", "QtGui", "QtHelp", "QThread", "QThreadPool", "QThreadStorage", "QThreadStorageData", "QTime", "QTimeEdit", "QTimeLine", "QTimer", "QTimerEvent", "QtMsgHandler", "QtNetwork", "QToolBar", "QToolBarChangeEvent", "QToolBox", "QToolButton", "QToolTip", "QtOpenGL", "QtPlugin", "QtPluginInstanceFunction", "QTransform", "QTranslator", "QTreeView", "QTreeWidget", "QTreeWidgetItem", "QTreeWidgetItemIterator", "QTS", "QtScript", "QtScriptTools", "QtSql", "QtSvg", "QtTest", "QtUiTools", "QtWebKit", "QtXml", "QtXmlPatterns", "QTypeInfo", "QUdpSocket", "QUiLoader", "QUintForSize", "QUintForType", "QUndoCommand", "QUndoGroup", "QUndoStack", "QUndoView", "QUnixPrintWidget", "QUpdateLaterEvent", "QUrl", "QUrlInfo", "QUuid", "QValidator", "QVariant", "QVariantComparisonHelper", "QVariantHash", "QVariantList", "QVariantMap", "QVarLengthArray", "QVBoxLayout", "QVector", "QVectorData", "QVectorIterator", "QVectorTypedData", "QWaitCondition", "QWeakPointer", "QWebDatabase", "QWebFrame", "QWebHistory", "QWebHistoryInterface", "QWebHistoryItem", "QWebHitTestResult", "QWebPage", "QWebPluginFactory", "QWebSecurityOrigin", "QWebSettings", "QWebView", "QWhatsThis", "QWhatsThisClickedEvent", "QWheelEvent", "QWidget", "QWidgetAction", "QWidgetData", "QWidgetItem", "QWidgetItemV2", "QWidgetList", "QWidgetMapper", "QWidgetSet", "QWindowsCEStyle", "QWindowsMime", "QWindowsMobileStyle", "QWindowsStyle", "QWindowStateChangeEvent", "QWindowsVistaStyle", "QWindowsXPStyle", "QWizard", "QWizardPage", "QWMatrix", "QWorkspace", "QWriteLocker", "QX11EmbedContainer", "QX11EmbedWidget", "QX11Info", "QXmlAttributes", "QXmlContentHandler", "QXmlDeclHandler", "QXmlDefaultHandler", "QXmlDTDHandler", "QXmlEntityResolver", "QXmlErrorHandler", "QXmlFormatter", "QXmlInputSource", "QXmlItem", "QXmlLexicalHandler", "QXmlLocator", "QXmlName", "QXmlNamePool", "QXmlNamespaceSupport", "QXmlNodeModelIndex", "QXmlParseException", "QXmlQuery", "QXmlReader", "QXmlResultItems", "QXmlSerializer", "QXmlSimpleReader", "QXmlStreamAttribute", "QXmlStreamAttributes", "QXmlStreamEntityDeclaration", "QXmlStreamEntityDeclarations", "QXmlStreamEntityResolver", "QXmlStreamNamespaceDeclaration", "QXmlStreamNamespaceDeclarations", "QXmlStreamNotationDeclaration", "QXmlStreamNotationDeclarations", "QXmlStreamReader", "QXmlStreamStringRef", "QXmlStreamWriter" ) ), 'SYMBOLS' => array( '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':', ',', ';', '|', '<', '>' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, 2 => true, 3 => true, 4 => true, 5 => true, ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #000000; font-weight:bold;', 2 => 'color: #0057AE;', 3 => 'color: #2B74C7;', 4 => 'color: #0057AE;', 5 => 'color: #22aadd;' ), 'COMMENTS' => array( 1 => 'color: #888888;', 2 => 'color: #006E28;', 'MULTI' => 'color: #888888; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;', 1 => 'color: #000099; font-weight: bold;', 2 => 'color: #660099; font-weight: bold;', 3 => 'color: #660099; font-weight: bold;', 4 => 'color: #660099; font-weight: bold;', 5 => 'color: #006699; font-weight: bold;', 'HARD' => '', ), 'BRACKETS' => array( 0 => 'color: #006E28;' ), 'STRINGS' => array( 0 => 'color: #BF0303;' ), 'NUMBERS' => array( 0 => 'color: #B08000;', GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' ), 'METHODS' => array( 1 => 'color: #2B74C7;', 2 => 'color: #2B74C7;', 3 => 'color: #2B74C7;' ), 'SYMBOLS' => array( 0 => 'color: #006E28;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( ) ), 'URLS' => array( 1 => '', 2 => '', 3 => '', 4 => '', 5 => 'http://doc.trolltech.com/latest/{FNAMEL}.html' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => '.', 2 => '::', 3 => '->', ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 'DISALLOWED_BEFORE' => "(?|^])", 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" ), 'OOLANG' => array( 'MATCH_AFTER' => '~?[a-zA-Z][a-zA-Z0-9_]*', ) ) ); ?>geshi/geshi/oxygene.php0000664000175000017500000001336312014173422014357 0ustar benbebenbe 'Oxygene (Delphi Prism)', 'COMMENT_SINGLE' => array(1 => '//'), 'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'), //Compiler directives 'COMMENT_REGEXP' => array(2 => '/{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'), 'CASE_KEYWORDS' => 0, 'QUOTEMARKS' => array("'"), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( 1 => array( 'and', 'begin', 'case', 'const', 'div', 'do', 'downto', 'else', 'end', 'for', 'function', 'if', 'in', 'mod', 'not', 'of', 'or', 'procedure', 'repeat', 'record', 'set', 'shl', 'shr', 'then', 'to', 'type', 'until', 'uses', 'var','while', 'with', 'xor', 'exit', 'break', 'class', 'constructor', 'inherited', 'private', 'public', 'protected', 'property', 'As', 'Is', 'Unit', 'Continue', 'Try', 'Except', 'Forward', 'Interface','Implementation', 'nil', 'out', 'loop', 'namespace', 'true', 'false', 'new', 'ensure', 'require', 'on', 'event', 'delegate', 'method', 'raise', 'assembly', 'module', 'using','locking', 'old', 'invariants', 'operator', 'self', 'async', 'finalizer', 'where', 'yield', 'nullable', 'Future', 'From', 'Finally', 'dynamic' ), 2 => array( 'override', 'virtual', 'External', 'read', 'add', 'remove','final', 'abstract', 'empty', 'global', 'locked', 'sealed', 'reintroduce', 'implements', 'each', 'default', 'partial', 'finalize', 'enum', 'flags', 'result', 'readonly', 'unsafe', 'pinned', 'matching', 'static', 'has', 'step', 'iterator', 'inline', 'nested', 'Implies', 'Select', 'Order', 'By', 'Desc', 'Asc', 'Group', 'Join', 'Take', 'Skip', 'Concat', 'Union', 'Reverse', 'Distinct', 'Into', 'Equals', 'params', 'sequence', 'index', 'notify', 'Parallel', 'create', 'array', 'Queryable', 'Aspect', 'volatile', 'write' ), 3 => array( 'chr', 'ord', 'inc', 'dec', 'assert', 'iff', 'assigned','futureAssigned', 'length', 'low', 'high', 'typeOf', 'sizeOf', 'disposeAndNil', 'Coalesce', 'unquote' ), ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false, 3 => false, // 4 => false, ), 'SYMBOLS' => array( 0 => array('(', ')', '[', ']'), 1 => array('.', ',', ':', ';'), 2 => array('@', '^'), 3 => array('=', '+', '-', '*', '/') ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #000000; font-weight: bold;', 2 => 'color: #000000; font-weight: bold;', 3 => 'color: #000066;', // 4 => 'color: #000066; font-weight: bold;' ), 'COMMENTS' => array( 1 => 'color: #808080; font-style: italic;', 2 => 'color: #008000; font-style: italic;', 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #ff0000; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #000066;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #0000ff;' ), 'METHODS' => array( 1 => 'color: #000000;' ), 'REGEXPS' => array( 0 => 'color: #9ac;', 1 => 'color: #ff0000;' ), 'SYMBOLS' => array( 0 => 'color: #000066;', 1 => 'color: #000066;', 2 => 'color: #000066;', 3 => 'color: #000066;' ), 'SCRIPT' => array( ) ), 'URLS' => array( 1 => '', 2 => '', 3 => '', // 4 => '' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => '.' ), 'REGEXPS' => array( //Hex numbers 0 => '\$[0-9a-fA-F]+', //Characters 1 => '\#\$?[0-9]{1,3}' ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'TAB_WIDTH' => 2 ); ?>geshi/geshi/e.php0000664000175000017500000001771112014173425013131 0ustar benbebenbe 'E', 'COMMENT_SINGLE' => array(1 => '#'), 'COMMENT_MULTI' => array('/**' => '*/'), // Note: This is method doc, not a general comment syntax. 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, // FIXME: The escaping inside ` is actually doubling of any interior `, $, or @ -- backslash is NOT special 'QUOTEMARKS' => array('\'', '"', '`'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( // builtin control structures 1 => array( 'accum', 'break', 'try', 'continue', 'if', 'while', 'for', 'switch' ), // control structures subsidiary keywords 2 => array( 'catch', 'else', 'finally', 'in', 'exit' ), // named operators 3 => array( 'fn', 'via' ), // variable/function/object definers 4 => array( 'def', 'bind', 'var' ), // object definition subsidiary keywords 5 => array( 'extends', 'as', 'implements', 'guards', 'match', 'to', 'method' ), // builtin nouns in safeEnv 6 => array( 'null', 'false', 'true', 'throw', '__loop', '__makeList', '__makeMap', '__makeProtocolDesc', '__makeMessageDesc', '__makeParamDesc', 'any', 'void', 'boolean', '__makeOrderedSpace', 'ValueGuard', '__MatchContext', 'require', '__makeVerbFacet', 'NaN', 'Infinity', '__identityFunc', '__makeInt', '__makeFinalSlot', '__makeVarSlot', '__makeGuardedSlot', '__makeGuard', '__makeTwine', '__makeSourceSpan', '__auditedBy', 'Guard', 'near', 'pbc', 'PassByCopy', 'DeepPassByCopy', 'Data', 'Persistent', 'DeepFrozen', 'int', 'float64', 'char', 'String', 'Twine', 'TextWriter', 'List', 'Map', 'nullOk', 'Tuple', '__Portrayal', 'notNull', 'vow', 'rcvr', 'SturdyRef', 'simple__quasiParser', 'twine__quasiParser', 'rx__quasiParser', 'e__quasiParser', 'epatt__quasiParser', 'sml__quasiParser', 'term__quasiParser', 'traceln', '__equalizer', '__comparer', 'Ref', 'E', 'promiseAllFulfilled', 'EIO', 'help', 'safeScope', '__eval', 'resource__uriGetter', 'type__uriGetter', 'import__uriGetter', 'elib__uriGetter', 'elang__uriGetter', 'opaque__uriGetter' ), // builtin nouns in privilegedEnv 7 => array( 'file__uriGetter', 'fileURL__uriGetter', 'jar__uriGetter', 'http__uriGetter', 'ftp__uriGetter', 'gopher__uriGetter', 'news__uriGetter', 'cap__uriGetter', 'makeCommand', 'stdout', 'stderr', 'stdin', 'print', 'println', 'interp', 'entropy', 'timer', 'introducer', 'identityMgr', 'makeSturdyRef', 'timeMachine', 'unsafe__uriGetter', 'currentVat', 'rune', 'awt__uriGetter', 'swing__uriGetter', 'JPanel__quasiParser', 'swt__uriGetter', 'currentDisplay', 'swtGrid__quasiParser', 'swtGrid`', 'privilegedScope' ), // reserved keywords 8 => array( 'abstract', 'an', 'assert', 'attribute', 'be', 'begin', 'behalf', 'belief', 'believe', 'believes', 'case', 'class', 'const', 'constructor', 'declare', 'default', 'define', 'defmacro', 'delicate', 'deprecated', 'dispatch', 'do', 'encapsulate', 'encapsulated', 'encapsulates', 'end', 'ensure', 'enum', 'eventual', 'eventually', 'export', 'facet', 'forall', 'function', 'given', 'hidden', 'hides', 'inline', 'is', 'know', 'knows', 'lambda', 'let', 'methods', 'module', 'namespace', 'native', 'obeys', 'octet', 'oneway', 'operator', 'package', 'private', 'protected', 'public', 'raises', 'reliance', 'reliant', 'relies', 'rely', 'reveal', 'sake', 'signed', 'static', 'struct', 'suchthat', 'supports', 'suspect', 'suspects', 'synchronized', 'this', 'transient', 'truncatable', 'typedef', 'unsigned', 'unum', 'uses', 'using', 'utf8', 'utf16', 'virtual', 'volatile', 'wstring' ) ), 'SYMBOLS' => array( 1 => array( '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%', '=', '<', '>', '!', '^', '&', '|', '?', ':', ';', ',' ) ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, 2 => true, 3 => true, 4 => true, 5 => true, 6 => true, 7 => true, 8 => true ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #b1b100;', 2 => 'color: #b1b100;', 3 => 'color: #b1b100;', 4 => 'color: #b1b100;', 5 => 'color: #b1b100;', 6 => 'color: #b1b100;', 7 => 'color: #b1b100;', 8 => 'color: #b1b100;' ), 'COMMENTS' => array( 1 => 'color: #666666; font-style: italic;', 'MULTI' => 'color: #666666; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #009900;' ), 'STRINGS' => array( 0 => 'color: #0000ff;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;', ), 'METHODS' => array( 0 => 'color: #004000;' ), 'SYMBOLS' => array( 1 => 'color: #339933;' ), 'REGEXPS' => array(), 'SCRIPT' => array() ), 'URLS' => array( 1 => 'http://wiki.erights.org/wiki/{FNAME}', 2 => 'http://wiki.erights.org/wiki/{FNAME}', 3 => 'http://wiki.erights.org/wiki/{FNAME}', 4 => 'http://wiki.erights.org/wiki/{FNAME}', 5 => 'http://wiki.erights.org/wiki/{FNAME}', 6 => 'http://wiki.erights.org/wiki/{FNAME}', 7 => 'http://wiki.erights.org/wiki/{FNAME}', 8 => 'http://wiki.erights.org/wiki/{FNAME}' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => '.', 2 => '<-', 3 => '::' ), 'REGEXPS' => array(), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array(), 'HIGHLIGHT_STRICT_BLOCK' => array() ); ?>geshi/geshi/povray.php0000664000175000017500000002421212014173402014212 0ustar benbebenbe 'POVRAY', 'COMMENT_SINGLE' => array(1 => '//'), 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( 1 => array( 'yes', 'wrinkles', 'wood', 'width', 'waves', 'water_level', 'warp', 'vturbulence', 'vstr', 'vrotate', 'vnormalize', 'vlength', 'vcross', 'vaxis_rotate', 'variance', 'v_steps', 'uv_mapping', 'utf8', 'use_index', 'use_colour', 'use_color', 'use_alpha', 'up', 'undef', 'ultra_wide_angle', 'u_steps', 'type', 'turbulence', 'turb_depth', 'ttf', 'true', 'triangle_wave', 'translate', 'transform', 'trace', 'toroidal', 'tolerance', 'tiles', 'tile2', 'tightness', 'tiff', 'threshold', 'thickness', 'tga', 'texture_map', 'target', 'sys', 'sum', 'substr', 'sturm', 'strupr', 'strlwr', 'strength', 'str', 'statistics', 'sqr', 'spotted', 'spotlight', 'split_union', 'spline', 'spiral2', 'spiral1', 'spherical', 'specular', 'spacing', 'solid', 'smooth', 'slope', 'slice', 'sky', 'size', 'sine_wave', 'shadowless', 'scattering', 'scallop_wave', 'scale', 'save_file', 'samples', 'roughness', 'rotate', 'ripples', 'right', 'rgbt', 'rgbft', 'rgbf', 'rgb', 'repeat', 'render', 'refraction', 'reflection_exponent', 'recursion_limit', 'reciprocal', 'ratio', 'ramp_wave', 'radius', 'radial', 'quilted', 'quick_colour', 'quick_color', 'quaternion', 'quadratic_spline', 'pwr', 'projected_through', 'prod', 'pretrace_start', 'pretrace_end', 'precompute', 'precision', 'ppm', 'pow', 'pot', 'poly_wave', 'point_at', 'png', 'planar', 'pigment_pattern', 'pi', 'phong_size', 'phong', 'phase', 'pgm', 'perspective', 'pattern', 'pass_through', 'parallel', 'panoramic', 'orthographic', 'orientation', 'orient', 'open', 'onion', 'once', 'on', 'omnimax', 'omega', 'offset', 'off', 'octaves', 'number_of_waves', 'noise_generator', 'no_shadow', 'no_reflection', 'no_image', 'no_bump_scale', 'no', 'nearest_count', 'natural_spline', 'mortar', 'minimum_reuse', 'min_extent', 'metric', 'method', 'metallic', 'media_interaction', 'media_attenuation', 'media', 'max_trace_level', 'max_trace', 'max_sample', 'max_iteration', 'max_intersections', 'max_gradient', 'max_extent', 'matrix', 'material_map', 'marble', 'map_type', 'mandel', 'major_radius', 'magnet', 'low_error_factor', 'look_at', 'location', 'load_file', 'linear_sweep', 'linear_spline', 'leopard', 'lambda', 'julia', 'jpeg', 'jitter', 'irid_wavelength', 'ior', 'inverse', 'intervals', 'interpolate', 'internal', 'inside_vector', 'inside', 'initial_frame', 'initial_clock', 'image_width', 'image_pattern', 'image_height', 'iff', 'hypercomplex', 'hollow', 'hierarchy', 'hf_gray_16', 'hexagon', 'gray_threshold', 'granite', 'gradient', 'global_lights', 'gif', 'gather', 'fresnel', 'frequency', 'frame_number', 'form', 'fog_type', 'fog_offset', 'fog_alt', 'focal_point', 'flip', 'flatness', 'fisheye', 'final_frame', 'final_clock', 'false', 'falloff_angle', 'falloff', 'fade_power', 'fade_distance', 'fade_colour', 'fade_color', 'facets', 'extinction', 'exterior', 'exponent', 'expand_thresholds', 'evaluate', 'error_bound', 'emission', 'eccentricity', 'double_illuminate', 'distance', 'dist_exp', 'dispersion_samples', 'dispersion', 'direction', 'diffuse', 'df3', 'dents', 'density_map', 'density_file', 'density', 'cylindrical', 'cutaway_textures', 'cubic_wave', 'cubic_spline', 'cube', 'crand', 'crackle', 'count', 'coords', 'control1', 'control0', 'conserve_energy', 'conic_sweep', 'confidence', 'concat', 'composite', 'component', 'colour_map', 'colour', 'color', 'collect', 'clock_on', 'clock_delta', 'clock', 'circular', 'chr', 'checker', 'charset', 'cells', 'caustics', 'bumps', 'bump_size', 'brilliance', 'brightness', 'brick_size', 'brick', 'bozo', 'boxed', 'blur_samples', 'black_hole', 'bezier_spline', 'b_spline', 'average', 'autostop', 'assumed_gamma', 'ascii', 'array', 'area_light', 'arc_angle', 'append', 'aperture', 'angle', 'ambient_light', 'ambient', 'always_sample', 'altitude', 'alpha', 'all_intersections', 'all', 'agate_turb', 'agate', 'adc_bailout', 'adaptive', 'accuracy', 'absorption', 'aa_threshold', 'aa_level', 'reflection' ), 2 => array( 'abs', 'acos', 'acosh', 'asc', 'asin', 'asinh', 'atan', 'atanh', 'atan2', 'ceil', 'cos', 'cosh', 'defined', 'degrees', 'dimensions', 'dimension_size', 'div', 'exp', 'file_exists', 'floor', 'int', 'ln', 'log', 'max', 'min', 'mod', 'pov', 'radians', 'rand', 'seed', 'select', 'sin', 'sinh', 'sqrt', 'strcmp', 'strlen', 'tan', 'tanh', 'val', 'vdot', 'vlenght', ), 3 => array ( 'x', 'y', 'z', 't', 'u', 'v', 'red', 'blue', 'green', 'filter', 'transmit', 'gray', 'e', ), 4 => array ( 'camera', 'background', 'fog', 'sky_sphere', 'rainbow', 'global_settings', 'radiosity', 'photon', 'object', 'blob', 'sphere', 'cylinder', 'box', 'cone', 'height_field', 'julia_fractal', 'lathe', 'prism', 'sphere_sweep', 'superellipsoid', 'sor', 'text', 'torus', 'bicubic_patch', 'disc', 'mesh', 'triangle', 'smooth_triangle', 'mesh2', 'vertex_vectors', 'normal_vectors', 'uv_vectors', 'texture_list', 'face_indices', 'normal_indices', 'uv_indices', 'texture', 'polygon', 'plane', 'poly', 'cubic', 'quartic', 'quadric', 'isosurface', 'function', 'contained_by', 'parametric', 'pigment', 'union', 'intersection', 'difference', 'merge', 'light_source', 'looks_like', 'light_group', 'clipped_by', 'bounded_by', 'interior', 'material', 'interior_texture', 'normal', 'finish', 'color_map', 'pigment_map', 'image_map', 'bump_map', 'slope_map', 'normal_map', 'irid', 'photons', ) ), 'SYMBOLS' => array( '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>', '+', '-', '.', '=', '<=', '>=', '!=', ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false, 3 => false, 4 => false ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #a63123;', 2 => 'color: #2312bc;', 3 => 'color: #cc1122; font-weight: bold;', 4 => 'color: #116688; font-weight: bold;', ), 'COMMENTS' => array( 1 => 'color: #808080; font-style: italic;', // 2 => 'color: #808080; font-style: italic;', 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #66cc66;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66aa;' ), 'METHODS' => array( 1 => 'color: #006600;', 2 => 'color: #006600;' ), 'SYMBOLS' => array( 0 => 'color: #66cc66;' ), 'REGEXPS' => array( 0 => 'color: #6666cc; font-weight: bold;', 1 => 'color: #66cc66; font-weight: bold;', 2 => 'color: #66cc66; font-weight: bold;' ), 'SCRIPT' => array( 0 => '', 1 => '', 2 => '', 3 => '' ) ), 'URLS' => array( 1 => '', 2 => '', 3 => '', 4 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( ), 'REGEXPS' => array( # normal hash lines 0 => '\#(?!(include|declare|local|fopen|fclose|read|write|default|version|if|else|end|ifdef|ifndef|switch|case|range|break|while|debug|error|warning|macro) )[[:word:]]*', # syntax functions hash thingis 1 => "\#(include|declare|local|fopen|fclose|read|write|default|version|if|else|end|ifdef|ifndef|switch|case|range|break|while|debug|error|warning|macro)", 2 => array( GESHI_SEARCH => "([a-zA-Z]+)(\n)(.*)(\n)(\\1;?)", GESHI_REPLACE => '\3', GESHI_BEFORE => '\1\2', GESHI_AFTER => '\4\5', GESHI_MODIFIERS => 'siU' ) ), 'STRICT_MODE_APPLIES' => GESHI_MAYBE, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => true, 1 => true, 2 => true, 3 => true ), 'TAB_WIDTH' => 4 ); ?> geshi/geshi/haskell.php0000664000175000017500000001766712014173425014342 0ustar benbebenbe 'Haskell', 'COMMENT_SINGLE' => array( 1 => '--'), 'COMMENT_MULTI' => array('{-' => '-}'), 'COMMENT_REGEXP' => array( 2 => "/-->/", 3 => "/{-(?:(?R)|.)-}/s", //Nested Comments ), 'CASE_KEYWORDS' => 0, 'QUOTEMARKS' => array('"',"'"), 'ESCAPE_CHAR' => '\\', 'KEYWORDS' => array( /* main haskell keywords */ 1 => array( 'as', 'case', 'of', 'class', 'data', 'default', 'deriving', 'do', 'forall', 'hiding', 'if', 'then', 'else', 'import', 'infix', 'infixl', 'infixr', 'instance', 'let', 'in', 'module', 'newtype', 'qualified', 'type', 'where' ), /* define names of main librarys, so we can link to it */ 2 => array( 'Foreign', 'Numeric', 'Prelude' ), /* just link to Prelude functions, cause it's the default opened library when starting Haskell */ 3 => array( 'not', 'otherwise', 'maybe', 'either', 'fst', 'snd', 'curry', 'uncurry', 'compare', 'max', 'min', 'succ', 'pred', 'toEnum', 'fromEnum', 'enumFrom', 'enumFromThen', 'enumFromTo', 'enumFromThenTo', 'minBound', 'maxBound', 'negate', 'abs', 'signum', 'fromInteger', 'toRational', 'quot', 'rem', 'div', 'mod', 'quotRem', 'divMod', 'toInteger', 'recip', 'fromRational', 'pi', 'exp', 'log', 'sqrt', 'logBase', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'sinh', 'cosh', 'tanh', 'asinh', 'acosh', 'atanh', 'properFraction', 'truncate', 'round', 'ceiling', 'floor', 'floatRadix', 'floatDigits', 'floatRange', 'decodeFloat', 'encodeFloat', 'exponent', 'significand', 'scaleFloat', 'isNaN', 'isInfinite', 'isDenomalized', 'isNegativeZero', 'isIEEE', 'atan2', 'subtract', 'even', 'odd', 'gcd', 'lcm', 'fromIntegral', 'realToFrac', 'return', 'fail', 'fmap', 'mapM', 'mapM_', 'sequence', 'sequence_', 'id', 'const','flip', 'until', 'asTypeOf', 'error', 'undefined', 'seq','map','filter', 'head', 'last', 'tail', 'init', 'null', 'length', 'reverse', 'foldl', 'foldl1', 'foldr', 'foldr1', 'and', 'or', 'any', 'all', 'sum', 'product', 'concat', 'concatMap', 'maximum', 'minimum', 'scanl', 'scanl1', 'scanr', 'scanr1', 'iterate', 'repeat', 'cycle', 'take', 'drop', 'splitAt', 'takeWhile', 'dropWhile', 'span', 'break', 'elem', 'notElem', 'lookup', 'zip', 'zip3', 'zipWith', 'zipWith3', 'unzip', 'unzip3', 'lines', 'words', 'unlines', 'unwords', 'showPrec', 'show', 'showList', 'shows', 'showChar', 'showString', 'showParen', 'readsPrec', 'readList', 'reads', 'readParen', 'read', 'lex', 'putChar', 'putStr', 'putStrLn', 'print', 'getChar', 'getLine', 'getContents', 'interact', 'readFile', 'writeFile', 'appendFile', 'readIO', 'readLn', 'ioError', 'userError', 'catch' ), /* here Prelude Types */ 4 => array ( 'Bool', 'Maybe', 'Either', 'Ord', 'Ordering', 'Char', 'String', 'Eq', 'Enum', 'Bounded', 'Int', 'Integer', 'Float', 'Double', 'Rational', 'Num', 'Real', 'Integral', 'Fractional', 'Floating', 'RealFrac', 'RealFloat', 'Monad', 'Functor', 'Show', 'ShowS', 'Read', 'ReadS', 'IO' ), /* finally Prelude Exceptions */ 5 => array ( 'IOError', 'IOException' ) ), /* highlighting symbols is really important in Haskell */ 'SYMBOLS' => array( '|', '->', '<-', '@', '!', '::', '_', '~', '=', '?', '&&', '||', '==', '/=', '<', '<=', '>', '>=','+', '-', '*','/', '%', '**', '^', '^^', '>>=', '>>', '=<<', '$', '.', ',', '$!', '++', '!!' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, 2 => true, /* functions name are case seinsitive */ 3 => true, /* types name too */ 4 => true, /* finally exceptions too */ 5 => true ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #06c; font-weight: bold;', /* nice blue */ 2 => 'color: #06c; font-weight: bold;', /* blue as well */ 3 => 'font-weight: bold;', /* make the preduled functions bold */ 4 => 'color: #cccc00; font-weight: bold;', /* give types a different bg */ 5 => 'color: maroon;' ), 'COMMENTS' => array( 1 => 'color: #5d478b; font-style: italic;', 2 => 'color: #339933; font-weight: bold;', 3 => 'color: #5d478b; font-style: italic;', /* light purple */ 'MULTI' => 'color: #5d478b; font-style: italic;' /* light purple */ ), 'ESCAPE_CHAR' => array( 0 => 'background-color: #3cb371; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: green;' ), 'STRINGS' => array( 0 => 'background-color: #3cb371;' /* nice green */ ), 'NUMBERS' => array( 0 => 'color: red;' /* pink */ ), 'METHODS' => array( 1 => 'color: #060;' /* dark green */ ), 'REGEXPS' => array( ), 'SYMBOLS' => array( 0 => 'color: #339933; font-weight: bold;' ), 'SCRIPT' => array( ) ), 'URLS' => array( /* some of keywords are Prelude functions */ 1 => '', /* link to the wanted library */ 2 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/{FNAME}.html', /* link to Prelude functions */ 3 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#v:{FNAME}', /* link to Prelude types */ 4 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}', /* link to Prelude exceptions */ 5 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}', ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ) ); ?>geshi/geshi/css.php0000664000175000017500000002361212014173426013473 0ustar benbebenbe 'CSS', 'COMMENT_SINGLE' => array(1 => '@'), 'COMMENT_MULTI' => array('/*' => '*/'), 'COMMENT_REGEXP' => array( 2 => "/(?<=\\()\\s*(?:(?:[a-z0-9]+?:\\/\\/)?[a-z0-9_\\-\\.\\/:]+?)?[a-z]+?\\.[a-z]+?(\\?[^\)]+?)?\\s*?(?=\\))/i" ), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array('"', "'"), 'ESCAPE_CHAR' => '', 'ESCAPE_REGEXP' => array( //Simple Single Char Escapes //1 => "#\\\\[nfrtv\$\"\n\\\\]#i", //Hexadecimal Char Specs 2 => "#\\\\[\da-fA-F]{1,6}\s?#i", //Unicode Char Specs //3 => "#\\\\u[\da-fA-F]{1,8}#i", ), 'KEYWORDS' => array( 1 => array( 'aqua', 'azimuth', 'background-attachment', 'background-color', 'background-image', 'background-position', 'background-repeat', 'background', 'black', 'blue', 'border-bottom-color', 'border-radius', 'border-top-left-radius', 'border-top-right-radius', 'border-bottom-right-radius', 'border-bottom-left-radius', 'border-bottom-style', 'border-bottom-width', 'border-left-color', 'border-left-style', 'border-left-width', 'border-right', 'border-right-color', 'border-right-style', 'border-right-width', 'border-top-color', 'border-top-style', 'border-top-width','border-bottom', 'border-collapse', 'border-left', 'border-width', 'border-color', 'border-spacing', 'border-style', 'border-top', 'border', 'caption-side', 'clear', 'clip', 'color', 'content', 'counter-increment', 'counter-reset', 'cue-after', 'cue-before', 'cue', 'cursor', 'direction', 'display', 'elevation', 'empty-cells', 'float', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'font', 'line-height', 'letter-spacing', 'list-style', 'list-style-image', 'list-style-position', 'list-style-type', 'margin-bottom', 'margin-left', 'margin-right', 'margin-top', 'margin', 'marker-offset', 'marks', 'max-height', 'max-width', 'min-height', 'min-width', 'orphans', 'outline', 'outline-color', 'outline-style', 'outline-width', 'overflow', 'padding-bottom', 'padding-left', 'padding-right', 'padding-top', 'padding', 'page', 'page-break-after', 'page-break-before', 'page-break-inside', 'pause-after', 'pause-before', 'pause', 'pitch', 'pitch-range', 'play-during', 'position', 'quotes', 'richness', 'right', 'size', 'speak-header', 'speak-numeral', 'speak-punctuation', 'speak', 'speech-rate', 'stress', 'table-layout', 'text-align', 'text-decoration', 'text-indent', 'text-shadow', 'text-transform', 'top', 'unicode-bidi', 'vertical-align', 'visibility', 'voice-family', 'volume', 'white-space', 'widows', 'width', 'word-spacing', 'z-index', 'bottom', 'left', 'height' ), 2 => array( 'above', 'absolute', 'always', 'armenian', 'aural', 'auto', 'avoid', 'baseline', 'behind', 'below', 'bidi-override', 'blink', 'block', 'bold', 'bolder', 'both', 'capitalize', 'center-left', 'center-right', 'center', 'circle', 'cjk-ideographic', 'close-quote', 'collapse', 'condensed', 'continuous', 'crop', 'crosshair', 'cross', 'cursive', 'dashed', 'decimal-leading-zero', 'decimal', 'default', 'digits', 'disc', 'dotted', 'double', 'e-resize', 'embed', 'extra-condensed', 'extra-expanded', 'expanded', 'fantasy', 'far-left', 'far-right', 'faster', 'fast', 'fixed', 'fuchsia', 'georgian', 'gray', 'green', 'groove', 'hebrew', 'help', 'hidden', 'hide', 'higher', 'high', 'hiragana-iroha', 'hiragana', 'icon', 'inherit', 'inline-table', 'inline', 'inset', 'inside', 'invert', 'italic', 'justify', 'katakana-iroha', 'katakana', 'landscape', 'larger', 'large', 'left-side', 'leftwards', 'level', 'lighter', 'lime', 'line-through', 'list-item', 'loud', 'lower-alpha', 'lower-greek', 'lower-roman', 'lowercase', 'ltr', 'lower', 'low', 'maroon', 'medium', 'message-box', 'middle', 'mix', 'monospace', 'n-resize', 'narrower', 'navy', 'ne-resize', 'no-close-quote', 'no-open-quote', 'no-repeat', 'none', 'normal', 'nowrap', 'nw-resize', 'oblique', 'olive', 'once', 'open-quote', 'outset', 'outside', 'overline', 'pointer', 'portrait', 'purple', 'px', 'red', 'relative', 'repeat-x', 'repeat-y', 'repeat', 'rgb', 'ridge', 'right-side', 'rightwards', 's-resize', 'sans-serif', 'scroll', 'se-resize', 'semi-condensed', 'semi-expanded', 'separate', 'serif', 'show', 'silent', 'silver', 'slow', 'slower', 'small-caps', 'small-caption', 'smaller', 'soft', 'solid', 'spell-out', 'square', 'static', 'status-bar', 'super', 'sw-resize', 'table-caption', 'table-cell', 'table-column', 'table-column-group', 'table-footer-group', 'table-header-group', 'table-row', 'table-row-group', 'teal', 'text', 'text-bottom', 'text-top', 'thick', 'thin', 'transparent', 'ultra-condensed', 'ultra-expanded', 'underline', 'upper-alpha', 'upper-latin', 'upper-roman', 'uppercase', 'url', 'visible', 'w-resize', 'wait', 'white', 'wider', 'x-fast', 'x-high', 'x-large', 'x-loud', 'x-low', 'x-small', 'x-soft', 'xx-large', 'xx-small', 'yellow', 'yes' ) ), 'SYMBOLS' => array( '(', ')', '{', '}', ':', ';', '>', '+', '*', ',', '^', '=' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, 2 => true ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #000000; font-weight: bold;', 2 => 'color: #993333;' ), 'COMMENTS' => array( 1 => 'color: #a1a100;', 2 => 'color: #ff0000; font-style: italic;', 'MULTI' => 'color: #808080; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;', //1 => 'color: #000099; font-weight: bold;', 2 => 'color: #000099; font-weight: bold;' //3 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #00AA00;' ), 'STRINGS' => array( 0 => 'color: #ff0000;' ), 'NUMBERS' => array( 0 => 'color: #cc66cc;' ), 'METHODS' => array( ), 'SYMBOLS' => array( 0 => 'color: #00AA00;' ), 'SCRIPT' => array( ), 'REGEXPS' => array( 0 => 'color: #cc00cc;', 1 => 'color: #6666ff;', 2 => 'color: #3333ff;', 3 => 'color: #933;' ) ), 'URLS' => array( 1 => '', 2 => '' ), 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( ), 'REGEXPS' => array( //DOM Node ID 0 => '\#[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*', //CSS classname 1 => '\.(?!\d)[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*\b(?=[\{\.#\s,:].|<\|)', //CSS Pseudo classes //note: & is needed for > (i.e. > ) 2 => '(? '[+\-]?(\d+|(\d*\.\d+))(em|ex|pt|px|cm|in|%)', ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'TAB_WIDTH' => 4, 'PARSER_CONTROL' => array( 'KEYWORDS' => array( 'DISALLOWED_AFTER' => '(?![\-a-zA-Z0-9_\|%\\-&\.])', 'DISALLOWED_BEFORE' => '(?geshi/geshi/bibtex.php0000664000175000017500000001357312014173405014162 0ustar benbebenbe 'BibTeX', 'OOLANG' => false, 'COMMENT_SINGLE' => array( 1 => '%%' ), 'COMMENT_MULTI' => array(), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array(), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( 0 => array( '@comment','@preamble','@string' ), // Standard entry types 1 => array( '@article','@book','@booklet','@conference','@inbook', '@incollection','@inproceedings','@manual','@mastersthesis', '@misc','@phdthesis','@proceedings','@techreport','@unpublished' ), // Custom entry types 2 => array( '@collection','@patent','@webpage' ), // Standard entry field names 3 => array( 'address','annote','author','booktitle','chapter','crossref', 'edition','editor','howpublished','institution','journal','key', 'month','note','number','organization','pages','publisher','school', 'series','title','type','volume','year' ), // Custom entry field names 4 => array( 'abstract','affiliation','chaptername','cited-by','cites', 'contents','copyright','date-added','date-modified','doi','eprint', 'isbn','issn','keywords','language','lccn','lib-congress', 'location','price','rating','read','size','source','url' ) ), 'URLS' => array( 0 => '', 1 => '', 2 => '', 3 => '', 4 => '' ), 'SYMBOLS' => array( '{', '}', '#', '=', ',' ), 'CASE_SENSITIVE' => array( 1 => false, 2 => false, 3 => false, 4 => false, GESHI_COMMENTS => false, ), // Define the colors for the groups listed above 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #C02020;', // Standard entry types 2 => 'color: #C02020;', // Custom entry types 3 => 'color: #C08020;', // Standard entry field names 4 => 'color: #C08020;' // Custom entry field names ), 'COMMENTS' => array( 1 => 'color: #2C922C; font-style: italic;' ), 'STRINGS' => array( 0 => 'color: #2020C0;' ), 'SYMBOLS' => array( 0 => 'color: #E02020;' ), 'REGEXPS' => array( 1 => 'color: #2020C0;', // {...} 2 => 'color: #C08020;', // BibDesk fields 3 => 'color: #800000;' // LaTeX commands ), 'ESCAPE_CHAR' => array( 0 => 'color: #000000; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #E02020;' ), 'NUMBERS' => array( ), 'METHODS' => array( ), 'SCRIPT' => array( ) ), 'REGEXPS' => array( // {parameters} 1 => array( GESHI_SEARCH => "(?<=\\{)(?:\\{(?R)\\}|[^\\{\\}])*(?=\\})", GESHI_REPLACE => '\0', GESHI_MODIFIERS => 's', GESHI_BEFORE => '', GESHI_AFTER => '' ), 2 => array( GESHI_SEARCH => "\bBdsk-(File|Url)-\d+", GESHI_REPLACE => '\0', GESHI_MODIFIERS => 'Us', GESHI_BEFORE => '', GESHI_AFTER => '' ), 3 => array( GESHI_SEARCH => "\\\\[A-Za-z0-9]*+", GESHI_REPLACE => '\0', GESHI_MODIFIERS => 'Us', GESHI_BEFORE => '', GESHI_AFTER => '' ), ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), 'OBJECT_SPLITTERS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'PARSER_CONTROL' => array( 'ENABLE_FLAGS' => array( 'NUMBERS' => GESHI_NEVER ), 'KEYWORDS' => array( 3 => array( 'DISALLOWED_AFTER' => '(?=\s*=)' ), 4 => array( 'DISALLOWED_AFTER' => '(?=\s*=)' ), ) ) ); ?>geshi/geshi/asp.php0000664000175000017500000001362612014173425013471 0ustar benbebenbe 'ASP', 'COMMENT_SINGLE' => array(1 => "'", 2 => '//'), 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array('"'), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( 1 => array( 'include', 'file', 'Const', 'Dim', 'Option', 'Explicit', 'Implicit', 'Set', 'Select', 'ReDim', 'Preserve', 'ByVal', 'ByRef', 'End', 'Private', 'Public', 'If', 'Then', 'Else', 'ElseIf', 'Case', 'With', 'NOT', 'While', 'Wend', 'For', 'Loop', 'Do', 'Request', 'Response', 'Server', 'ADODB', 'Session', 'Application', 'Each', 'In', 'Get', 'Next', 'INT', 'CINT', 'CBOOL', 'CDATE', 'CBYTE', 'CCUR', 'CDBL', 'CLNG', 'CSNG', 'CSTR', 'Fix', 'Is', 'Sgn', 'String', 'Boolean', 'Currency', 'Me', 'Single', 'Long', 'Integer', 'Byte', 'Variant', 'Double', 'To', 'Let', 'Xor', 'Resume', 'On', 'Error', 'Imp', 'GoTo', 'Call', 'Global' ), 2 => array( 'Null', 'Nothing', 'And', 'False', 'True', 'var', 'Or', 'BOF', 'EOF', 'xor', 'Function', 'Class', 'New', 'Sub' ), 3 => array( 'CreateObject', 'Write', 'Redirect', 'Cookies', 'BinaryRead', 'ClientCertificate', 'Form', 'QueryString', 'ServerVariables', 'TotalBytes', 'AddHeader', 'AppendToLog', 'BinaryWrite', 'Buffer', 'CacheControl', 'Charset', 'Clear', 'ContentType', 'End()', 'Expires', 'ExpiresAbsolute', 'Flush()', 'IsClientConnected', 'PICS', 'Status', 'Connection', 'Recordset', 'Execute', 'Abandon', 'Lock', 'UnLock', 'Command', 'Fields', 'Properties', 'Property', 'Send', 'Replace', 'InStr', 'TRIM', 'NOW', 'Day', 'Month', 'Hour', 'Minute', 'Second', 'Year', 'MonthName', 'LCase', 'UCase', 'Abs', 'Array', 'As', 'LEN', 'MoveFirst', 'MoveLast', 'MovePrevious', 'MoveNext', 'LBound', 'UBound', 'Transfer', 'Open', 'Close', 'MapPath', 'FileExists', 'OpenTextFile', 'ReadAll' ) ), 'SYMBOLS' => array( 1 => array( '<%', '%>' ), 0 => array( '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';', ':', '?', '='), ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, 2 => false, 3 => false, ), 'STYLES' => array( 'KEYWORDS' => array( 1 => 'color: #990099; font-weight: bold;', 2 => 'color: #0000ff; font-weight: bold;', 3 => 'color: #330066;' ), 'COMMENTS' => array( 1 => 'color: #008000;', 2 => 'color: #ff6600;', 'MULTI' => 'color: #008000;' ), 'ESCAPE_CHAR' => array( 0 => 'color: #000099; font-weight: bold;' ), 'BRACKETS' => array( 0 => 'color: #006600; font-weight:bold;' ), 'STRINGS' => array( 0 => 'color: #cc0000;' ), 'NUMBERS' => array( 0 => 'color: #800000;' ), 'METHODS' => array( 1 => 'color: #9900cc;' ), 'SYMBOLS' => array( 0 => 'color: #006600; font-weight: bold;', 1 => 'color: #000000; font-weight: bold;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( 0 => '', 1 => '', 2 => '', 3 => '' ) ), 'URLS' => array( 1 => '', 2 => '', 3 => '' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( 1 => '.' ), 'REGEXPS' => array( ), 'STRICT_MODE_APPLIES' => GESHI_MAYBE, 'SCRIPT_DELIMITERS' => array( 0 => array( '<%' => '%>' ), 1 => array( '' ), 2 => array( '' ), 3 => "/(?P<%=?)(?:\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(?P%>|\Z)/sm" ), 'HIGHLIGHT_STRICT_BLOCK' => array( 0 => true, 1 => true, 2 => true, 3 => true ) ); ?>geshi/geshi/c_loadrunner.php0000664000175000017500000005027212014173372015360 0ustar benbebenbe 'C (LoadRunner)', 'COMMENT_SINGLE' => array(1 => '//'), 'COMMENT_MULTI' => array('/*' => '*/'), 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 'QUOTEMARKS' => array("'", '"'), 'ESCAPE_CHAR' => '', // Escape characters within strings (like \\) are not highlighted differently in LoadRunner, so // I am using GeSHi escape characters (or regular expressions) to highlight LoadRunner {parameters}. // LoadRunner {parameters} must begin with a letter and contain only alphanumeric characters and '_' 'ESCAPE_REGEXP' => array( 0 => "#\{[a-zA-Z]{1}[a-zA-Z_]{0,}\}#", ), // Keywords 'KEYWORDS' => array( // Keywords from http://en.wikipedia.org/wiki/C_syntax 1 => array( 'auto', 'break', 'case', 'char', 'const', 'continue', 'default', 'do', 'double', 'else', 'enum', 'extern', 'float', 'for', 'goto', 'if', 'inline', 'int', 'long', 'register', 'restrict', 'return', 'short', 'signed', 'sizeof', 'static', 'struct', 'switch', 'typedef', 'union', 'unsigned', 'void', 'volatile', 'while', '_Bool', '_Complex', '_Imaginary' ), // C preprocessor directives from http://en.wikipedia.org/wiki/C_preprocessor 2 => array( '#define', '#if', '#ifdef', '#ifndef', '#include', '#else', '#elif', '#endif', '#pragma', '#undef' ), // Functions from lrun.h 3 => array( 'lr_start_transaction', 'lr_start_sub_transaction', 'lr_start_transaction_instance', 'lr_end_transaction', 'lr_end_sub_transaction', 'lr_end_transaction_instance', 'lr_stop_transaction', 'lr_stop_transaction_instance', 'lr_resume_transaction', 'lr_resume_transaction_instance', 'lr_wasted_time', 'lr_set_transaction', 'lr_user_data_point', 'lr_user_data_point_instance', 'lr_user_data_point_ex', 'lr_user_data_point_instance_ex', 'lr_get_transaction_duration', 'lr_get_trans_instance_duration', 'lr_get_transaction_think_time', 'lr_get_trans_instance_think_time', 'lr_get_transaction_wasted_time', 'lr_get_trans_instance_wasted_time', 'lr_get_transaction_status', 'lr_get_trans_instance_status', 'lr_set_transaction_status', 'lr_set_transaction_status_by_name', 'lr_set_transaction_instance_status', 'lr_start_timer', 'lr_end_timer', 'lr_rendezvous', 'lr_rendezvous_ex', 'lr_get_vuser_ip', 'lr_whoami', 'lr_get_host_name', 'lr_get_master_host_name', 'lr_get_attrib_long', 'lr_get_attrib_string', 'lr_get_attrib_double', 'lr_paramarr_idx', 'lr_paramarr_random', 'lr_paramarr_len', 'lr_param_unique', 'lr_param_sprintf', 'lr_load_dll', 'lr_continue_on_error', 'lr_decrypt', 'lr_abort', 'lr_exit', 'lr_peek_events', 'lr_think_time', 'lr_debug_message', 'lr_log_message', 'lr_message', 'lr_error_message', 'lr_output_message', 'lr_vuser_status_message', 'lr_fail_trans_with_error', 'lr_next_row', 'lr_advance_param', 'lr_eval_string', 'lr_eval_string_ext', 'lr_eval_string_ext_free', 'lr_param_increment', 'lr_save_var', 'lr_save_string', 'lr_save_int', 'lr_save_datetime', 'lr_save_searched_string', 'lr_set_debug_message', 'lr_get_debug_message', 'lr_enable_ip_spoofing', 'lr_disable_ip_spoofing', 'lr_convert_string_encoding' ), // Constants from lrun.h 4 => array( 'DP_FLAGS_NO_LOG', 'DP_FLAGS_STANDARD_LOG', 'DP_FLAGS_EXTENDED_LOG', 'merc_timer_handle_t', 'LR_EXIT_VUSER', 'LR_EXIT_ACTION_AND_CONTINUE', 'LR_EXIT_ITERATION_AND_CONTINUE', 'LR_EXIT_VUSER_AFTER_ITERATION', 'LR_EXIT_VUSER_AFTER_ACTION', 'LR_EXIT_MAIN_ITERATION_AND_CONTINUE', 'LR_MSG_CLASS_DISABLE_LOG', 'LR_MSG_CLASS_STANDARD_LOG', 'LR_MSG_CLASS_RETURNED_DATA', 'LR_MSG_CLASS_PARAMETERS', 'LR_MSG_CLASS_ADVANCED_TRACE', 'LR_MSG_CLASS_EXTENDED_LOG', 'LR_MSG_CLASS_SENT_DATA', 'LR_MSG_CLASS_JIT_LOG_ON_ERROR', 'LR_SWITCH_OFF', 'LR_SWITCH_ON', 'LR_SWITCH_DEFAULT', 'ONE_DAY', 'ONE_HOUR', 'ONE_MIN', 'DATE_NOW', 'TIME_NOW', 'LR_MSG_CLASS_BRIEF_LOG', 'LR_MSG_CLASS_RESULT_DATA', 'LR_MSG_CLASS_FULL_TRACE', 'LR_MSG_CLASS_AUTO_LOG', 'LR_MSG_OFF', 'LR_MSG_ON', 'LR_MSG_DEFAULT' ), // Functions from web_api.h 5 => array( 'web_reg_add_cookie', 'web_report_data_point', 'web_text_link', 'web_element', 'web_image_link', 'web_static_image', 'web_image_submit', 'web_button', 'web_edit_field', 'web_radio_group', 'web_check_box', 'web_list', 'web_text_area', 'web_map_area', 'web_eval_java_script', 'web_reg_dialog', 'web_reg_cross_step_download', 'web_browser', 'web_set_rts_key', 'web_save_param_length', 'web_save_timestamp_param', 'web_load_cache', 'web_dump_cache', 'web_add_cookie_ex' ), // Constants from web_api.h 6 => array( 'DESCRIPTION', 'ACTION', 'VERIFICATION', 'LR_NOT_FOUND', 'HTTP_INFO_TOTAL_REQUEST_STAT', 'HTTP_INFO_TOTAL_RESPONSE_STAT', 'LRW_OPT_STOP_VUSER_ON_ERROR', 'LRW_OPT_DISPLAY_IMAGE_BODY' ), // Functions from as_web.h 7 => array( 'web_add_filter', 'web_add_auto_filter', 'web_add_auto_header', 'web_add_header', 'web_add_cookie', 'web_cleanup_auto_headers', 'web_cleanup_cookies', 'web_concurrent_end', 'web_concurrent_start', 'web_create_html_param', 'web_create_html_param_ex', 'web_custom_request', 'web_disable_keep_alive', 'web_enable_keep_alive', 'web_find', 'web_get_int_property', 'web_image', 'web_image_check', 'web_link', 'web_global_verification', 'web_reg_find', 'web_reg_save_param', 'web_convert_param', 'web_remove_auto_filter', 'web_remove_auto_header', 'web_revert_auto_header', 'web_remove_cookie', 'web_save_header', 'web_set_certificate', 'web_set_certificate_ex', 'web_set_connections_limit', 'web_set_max_html_param_len', 'web_set_max_retries', 'web_set_proxy', 'web_set_proxy_bypass', 'web_set_secure_proxy', 'web_set_sockets_option', 'web_set_option', 'web_set_timeout', 'web_set_user', 'web_sjis_to_euc_param', 'web_submit_data', 'web_submit_form', 'web_url', 'web_set_proxy_bypass_local', 'web_cache_cleanup', 'web_create_html_query', 'web_create_radio_button_param', 'web_switch_net_layer' ), // Constants from as_web.h 8 => array( 'ENDFORM', 'LAST', 'ENDITEM', 'EXTRARES', 'ITEMDATA', 'STARTHIDDENS', 'ENDHIDDENS', 'CONNECT', 'RECEIVE', 'RESOLVE', 'STEP', 'REQUEST', 'RESPONSE', 'STARTQUERY', 'ENDQUERY', 'INPROPS', 'OUTPROPS', 'ENDPROPS', 'RAW_BODY_START', 'RAW_BODY_END', 'HTTP_INFO_RETURN_CODE', 'HTTP_INFO_DOWNLOAD_SIZE', 'HTTP_INFO_DOWNLOAD_TIME', 'LRW_NET_SOCKET_OPT_LOAD_VERIFY_FILE', 'LRW_NET_SOCKET_OPT_DEFAULT_VERIFY_PATH', 'LRW_NET_SOCKET_OPT_SSL_VERSION', 'LRW_NET_SOCKET_OPT_SSL_CIPHER_LIST', 'LRW_NET_SOCKET_OPT_SO_REUSE_ADDRESS', 'LRW_NET_SOCKET_OPT_USER_IP_ADDRESS', 'LRW_NET_SOCKET_OPT_IP_ADDRESS_BY_INDEX', 'LRW_NET_SOCKET_OPT_HELP', 'LRW_NET_SOCKET_OPT_PRINT_USER_IP_ADDRESS_LIST', 'LRW_OPT_HTML_CHAR_REF_BACKWARD_COMPATIBILITY', 'LRW_OPT_VALUE_YES', 'LRW_OPT_VALUE_NO' ), // Functions from as_sapgui.h 9 => array( 'sapgui_open_connection', 'sapgui_open_connection_ex', 'sapgui_logon', 'sapgui_create_session', 'sapgui_create_new_session', 'sapgui_call_method', 'sapgui_call_method_ex', 'sapgui_set_property', 'sapgui_get_property', 'sapgui_set_collection_property', 'sapgui_active_object_from_parent_method', 'sapgui_active_object_from_parent_property', 'sapgui_call_method_of_active_object', 'sapgui_call_method_of_active_object_ex', 'sapgui_set_property_of_active_object', 'sapgui_get_property_of_active_object', 'sapgui_select_active_connection', 'sapgui_select_active_session', 'sapgui_select_active_window ', 'sapgui_status_bar_get_text', 'sapgui_status_bar_get_param', 'sapgui_status_bar_get_type', 'sapgui_get_status_bar_text', 'sapgui_get_active_window_title', 'sapgui_is_object_available', 'sapgui_is_tab_selected', 'sapgui_is_object_changeable', 'sapgui_set_ok_code', 'sapgui_send_vkey', 'sapgui_resize_window', 'sapgui_window_resize', 'sapgui_window_maximize', 'sapgui_window_close', 'sapgui_window_restore', 'sapgui_window_scroll_to_row', 'sapgui_press_button', 'sapgui_select_radio_button', 'sapgui_set_password', 'sapgui_set_text', 'sapgui_select_menu', 'sapgui_select_tab', 'sapgui_set_checkbox', 'sapgui_set_focus', 'sapgui_select_combobox_entry', 'sapgui_get_ok_code', 'sapgui_is_radio_button_selected', 'sapgui_get_text', 'sapgui_is_checkbox_selected', 'sapgui_table_set_focus', 'sapgui_table_press_button', 'sapgui_table_select_radio_button', 'sapgui_table_set_password', 'sapgui_table_set_text', 'sapgui_table_set_checkbox', 'sapgui_table_select_combobox_entry', 'sapgui_table_set_row_selected', 'sapgui_table_set_column_selected', 'sapgui_table_set_column_width', 'sapgui_table_reorder', 'sapgui_table_fill_data', 'sapgui_table_get_text', 'sapgui_table_is_radio_button_selected', 'sapgui_table_is_checkbox_selected', 'sapgui_table_is_row_selected', 'sapgui_table_is_column_selected', 'sapgui_table_get_column_width', 'sapgui_grid_clear_selection', 'sapgui_grid_select_all', 'sapgui_grid_selection_changed', 'sapgui_grid_press_column_header', 'sapgui_grid_select_cell', 'sapgui_grid_select_rows', 'sapgui_grid_select_column', 'sapgui_grid_deselect_column', 'sapgui_grid_select_columns', 'sapgui_grid_select_cells', 'sapgui_grid_select_cell_row', 'sapgui_grid_select_cell_column', 'sapgui_grid_set_column_order', 'sapgui_grid_set_column_width', 'sapgui_grid_scroll_to_row', 'sapgui_grid_double_click', 'sapgui_grid_click', 'sapgui_grid_press_button', 'sapgui_grid_press_total_row', 'sapgui_grid_set_cell_data', 'sapgui_grid_set_checkbox', 'sapgui_grid_double_click_current_cell', 'sapgui_grid_click_current_cell', 'sapgui_grid_press_button_current_cell', 'sapgui_grid_press_total_row_current_cell', 'sapgui_grid_press_F1', 'sapgui_grid_press_F4', 'sapgui_grid_press_ENTER', 'sapgui_grid_press_toolbar_button', 'sapgui_grid_press_toolbar_context_button', 'sapgui_grid_open_context_menu', 'sapgui_grid_select_context_menu', 'sapgui_grid_select_toolbar_menu', 'sapgui_grid_fill_data', 'sapgui_grid_get_current_cell_row', 'sapgui_grid_get_current_cell_column', 'sapgui_grid_get_rows_count', 'sapgui_grid_get_columns_count', 'sapgui_grid_get_cell_data', 'sapgui_grid_is_checkbox_selected', 'sapgui_tree_scroll_to_node', 'sapgui_tree_set_hierarchy_header_width', 'sapgui_tree_set_selected_node', 'sapgui_tree_double_click_node', 'sapgui_tree_press_key', 'sapgui_tree_press_button', 'sapgui_tree_set_checkbox', 'sapgui_tree_double_click_item', 'sapgui_tree_click_link', 'sapgui_tree_open_default_context_menu', 'sapgui_tree_open_node_context_menu', 'sapgui_tree_open_header_context_menu', 'sapgui_tree_open_item_context_menu', 'sapgui_tree_select_context_menu', 'sapgui_tree_select_item', 'sapgui_tree_select_node', 'sapgui_tree_unselect_node', 'sapgui_tree_unselect_all', 'sapgui_tree_select_column', 'sapgui_tree_unselect_column', 'sapgui_tree_set_column_order', 'sapgui_tree_collapse_node', 'sapgui_tree_expand_node', 'sapgui_tree_scroll_to_item', 'sapgui_tree_set_column_width', 'sapgui_tree_press_header', 'sapgui_tree_is_checkbox_selected', 'sapgui_tree_get_node_text', 'sapgui_tree_get_item_text', 'sapgui_calendar_scroll_to_date', 'sapgui_calendar_focus_date', 'sapgui_calendar_select_interval', 'sapgui_apogrid_select_all', 'sapgui_apogrid_clear_selection', 'sapgui_apogrid_select_cell', 'sapgui_apogrid_deselect_cell', 'sapgui_apogrid_select_row', 'sapgui_apogrid_deselect_row', 'sapgui_apogrid_select_column', 'sapgui_apogrid_deselect_column', 'sapgui_apogrid_scroll_to_row', 'sapgui_apogrid_scroll_to_column', 'sapgui_apogrid_double_click', 'sapgui_apogrid_set_cell_data', 'sapgui_apogrid_get_cell_data', 'sapgui_apogrid_is_cell_changeable', 'sapgui_apogrid_get_cell_format', 'sapgui_apogrid_get_cell_tooltip', 'sapgui_apogrid_press_ENTER', 'sapgui_apogrid_open_cell_context_menu', 'sapgui_apogrid_select_context_menu_item', 'sapgui_text_edit_scroll_to_line', 'sapgui_text_edit_set_selection_indexes', 'sapgui_text_edit_set_unprotected_text_part', 'sapgui_text_edit_get_first_visible_line', 'sapgui_text_edit_get_selection_index_start', 'sapgui_text_edit_get_selection_index_end', 'sapgui_text_edit_get_number_of_unprotected_text_parts', 'sapgui_text_edit_double_click', 'sapgui_text_edit_single_file_dropped', 'sapgui_text_edit_multiple_files_dropped', 'sapgui_text_edit_press_F1', 'sapgui_text_edit_press_F4', 'sapgui_text_edit_open_context_menu', 'sapgui_text_edit_select_context_menu', 'sapgui_text_edit_modified_status_changed', 'sapgui_htmlviewer_send_event', 'sapgui_htmlviewer_dom_get_property', 'sapgui_toolbar_press_button', 'sapgui_toolbar_press_context_button', 'sapgui_toolbar_select_menu_item', 'sapgui_toolbar_select_menu_item_by_text', 'sapgui_toolbar_select_context_menu_item', 'sapgui_toolbar_select_context_menu_item_by_text' ), // Constants from as_sapgui.h 10 => array( 'BEGIN_OPTIONAL', 'END_OPTIONAL', 'al-keys', 'ENTER', 'HELP', 'F2', 'BACK', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'ESC', 'SHIFT_F1', 'SHIFT_F2', 'SHIFT_F3', 'SHIFT_F4', 'SHIFT_F5', 'SHIFT_F6', 'SHIFT_F7', 'SHIFT_F8', 'SHIFT_F9', 'SHIFT_F10', 'SHIFT_F11', 'SHIFT_F12', 'CTRL_F1', 'CTRL_F2', 'CTRL_F3', 'CTRL_F4', 'CTRL_F5', 'CTRL_F6', 'CTRL_F7', 'CTRL_F8', 'CTRL_F9', 'CTRL_F10', 'CTRL_F11', 'CTRL_F12', 'CTRL_SHIFT_F1', 'CTRL_SHIFT_F2', 'CTRL_SHIFT_F3', 'CTRL_SHIFT_F4', 'CTRL_SHIFT_F5', 'CTRL_SHIFT_F6', 'CTRL_SHIFT_F7', 'CTRL_SHIFT_F8', 'CTRL_SHIFT_F9', 'CTRL_SHIFT_F10', 'CTRL_SHIFT_F11', 'CTRL_SHIFT_F12', 'CANCEL', 'CTRL_F', 'CTRL_PAGE_UP', 'PAGE_UP', 'PAGE_DOWN', 'CTRL_PAGE_DOWN', 'CTRL_G', 'CTRL_P' ), ), // Symbols and Case Sensitivity // Symbols from: http://en.wikipedia.org/wiki/C_syntax 'SYMBOLS' => array( '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%', '=', '<', '>', '!', '^', '&', '|', '?', ':', ';', ',' ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => true, // Standard C reserved keywords 2 => true, // C preprocessor directives 3 => true, // Functions from lrun.h 4 => true, // Constants from lrun.h 5 => true, // Functions from web_api.h 6 => true, // Constants from web_api.h 7 => true, // Functions from as_web.h 8 => true, // Constants from as_web.h 9 => true, // Functions from as_sapgui.h 10 => true, // Constants from as_sapgui.h ), // Styles 'STYLES' => array( 'KEYWORDS' => array( // Functions are brown, constants and reserved words are blue 1 => 'color: #0000ff;', // Standard C reserved keywords 2 => 'color: #0000ff;', // C preprocessor directives 3 => 'color: #8a0000;', // Functions from lrun.h 4 => 'color: #0000ff;', // Constants from lrun.h 5 => 'color: #8a0000;', // Functions from web_api.h 6 => 'color: #0000ff;', // Constants from web_api.h 7 => 'color: #8a0000;', // Functions from as_web.h 8 => 'color: #0000ff;', // Constants from as_web.h 9 => 'color: #8a0000;', // Functions from as_sapgui.h 10 => 'color: #0000ff;', // Constants from as_sapgui.h ), 'COMMENTS' => array( // Comments are grey 1 => 'color: #9b9b9b;', 'MULTI' => 'color: #9b9b9b;' ), 'ESCAPE_CHAR' => array( // GeSHi cannot define a separate style for ESCAPE_REGEXP. The style for ESCAPE_CHAR also applies to ESCAPE_REGEXP. // This is used for LoadRunner {parameters} // {parameters} are pink 0 => 'color: #c000c0;' ), 'BRACKETS' => array( 0 => 'color: #000000;' ), 'STRINGS' => array( // Strings are green 0 => 'color: #008080;' ), 'NUMBERS' => array( // Numbers are green 0 => 'color: #008080;', GESHI_NUMBER_BIN_PREFIX_0B => 'color: #008080;', GESHI_NUMBER_OCT_PREFIX => 'color: #008080;', GESHI_NUMBER_HEX_PREFIX => 'color: #008080;', GESHI_NUMBER_FLT_SCI_SHORT => 'color:#008080;', GESHI_NUMBER_FLT_SCI_ZERO => 'color:#008080;', GESHI_NUMBER_FLT_NONSCI_F => 'color:#008080;', GESHI_NUMBER_FLT_NONSCI => 'color:#008080;' ), 'METHODS' => array( 1 => 'color: #000000;' ), 'SYMBOLS' => array( 0 => 'color: #000000;' ), 'REGEXPS' => array( ), 'SCRIPT' => array( ) ), // URLs for Functions 'URLS' => array( 1 => '', // Standard C reserved keywords 2 => '', // C preprocessor directives 3 => '', // Functions from lrun.h 4 => '', // Constants from lrun.h 5 => '', // Functions from web_api.h 6 => '', // Constants from web_api.h 7 => '', // Functions from as_web.h 8 => '', // Constants from as_web.h 9 => '', // Functions from as_sapgui.h 10 => '', // Constants from as_sapgui.h ), // Object Orientation 'OOLANG' => false, 'OBJECT_SPLITTERS' => array( ), // Regular Expressions // Note that REGEXPS are not applied within strings. 'REGEXPS' => array( ), // Contextual Highlighting and Strict Mode 'STRICT_MODE_APPLIES' => GESHI_NEVER, 'SCRIPT_DELIMITERS' => array( ), 'HIGHLIGHT_STRICT_BLOCK' => array( ), // Tabs // Note that if you are using
 tags for your code, then the browser chooses how many spaces your tabs will translate to.
    'TAB_WIDTH' => 4
);

?>geshi/geshi/chaiscript.php0000664000175000017500000001043412014173403015025 0ustar  benbebenbe 'ChaiScript',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    //Regular Expressions
    'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'break', 'else', 'elseif', 'eval', 'for', 'if', 'return', 'while', 'try', 'catch', 'finally',
            ),
        2 => array(
            'def', 'false', 'fun', 'true', 'var', 'attr',
            ),
        3 => array(
            // built in functions
            'throw',
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}',
        '+', '-', '*', '/', '%',
        '!', '@', '&', '|', '^',
        '<', '>', '=',
        ',', ';', '?', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000066; font-weight: bold;',
            2 => 'color: #003366; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #006600; font-style: italic;',
            2 => 'color: #009966; font-style: italic;',
            'MULTI' => 'color: #006600; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #3366CC;'
            ),
        'NUMBERS' => array(
            0 => 'color: #CC0000;'
            ),
        'METHODS' => array(
            1 => 'color: #660066;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            ),
        1 => array(
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true
        )
);

?>geshi/geshi/cmake.php0000664000175000017500000001620412014173401013753 0ustar  benbebenbe ()
 *  -  First Release
 *
 * TODO (updated )
 * -------------------------
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'CMake',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'ESCAPE_REGEXP' => array(
        // Quoted variables ${...}
        1 => "/\\$(ENV)?\\{[^\\n\\}]*?\\}/i",
        // Quoted registry keys [...]
        2 => "/\\[HKEY[^\n\\]]*?]/i"
        ),
    'KEYWORDS' => array(
        1 => array(
            'add_custom_command', 'add_custom_target', 'add_definitions',
            'add_dependencies', 'add_executable', 'add_library',
            'add_subdirectory', 'add_test', 'aux_source_directory', 'break',
            'build_command', 'cmake_minimum_required', 'cmake_policy',
            'configure_file', 'create_test_sourcelist', 'define_property',
            'else', 'elseif', 'enable_language', 'enable_testing',
            'endforeach', 'endfunction', 'endif', 'endmacro',
            'endwhile', 'execute_process', 'export', 'file', 'find_file',
            'find_library', 'find_package', 'find_path', 'find_program',
            'fltk_wrap_ui', 'foreach', 'function', 'get_cmake_property',
            'get_directory_property', 'get_filename_component', 'get_property',
            'get_source_file_property', 'get_target_property',
            'get_test_property', 'if', 'include', 'include_directories',
            'include_external_msproject', 'include_regular_expression',
            'install', 'link_directories', 'list', 'load_cache',
            'load_command', 'macro', 'mark_as_advanced', 'math', 'message',
            'option', 'output_required_files', 'project', 'qt_wrap_cpp',
            'qt_wrap_ui', 'remove_definitions', 'return', 'separate_arguments',
            'set', 'set_directory_properties', 'set_property',
            'set_source_files_properties', 'set_target_properties',
            'set_tests_properties', 'site_name', 'source_group', 'string',
            'target_link_libraries', 'try_compile', 'try_run', 'unset',
            'variable_watch', 'while'
            ),
        2 => array(
            // Deprecated commands
            'build_name', 'exec_program', 'export_library_dependencies',
            'install_files', 'install_programs', 'install_targets',
            'link_libraries', 'make_directory', 'remove', 'subdir_depends',
            'subdirs', 'use_mangled_mesa', 'utility_source',
            'variable_requires', 'write_file'
            ),
        3 => array(
            // Special command arguments, this list is not comprehesive.
            'AND', 'APPEND', 'ASCII', 'BOOL', 'CACHE', 'COMMAND', 'COMMENT',
            'COMPARE', 'CONFIGURE', 'DEFINED', 'DEPENDS', 'DIRECTORY',
            'EQUAL', 'EXCLUDE_FROM_ALL', 'EXISTS', 'FALSE', 'FATAL_ERROR',
            'FILEPATH', 'FIND', 'FORCE', 'GET', 'GLOBAL', 'GREATER',
            'IMPLICIT_DEPENDS', 'INSERT', 'INTERNAL', 'IS_ABSOLUTE',
            'IS_DIRECTORY', 'IS_NEWER_THAN', 'LENGTH', 'LESS',
            'MAIN_DEPENDENCY', 'MATCH', 'MATCHALL', 'MATCHES', 'MODULE', 'NOT',
            'NOTFOUND', 'OFF', 'ON', 'OR', 'OUTPUT', 'PARENT_SCOPE', 'PATH',
            'POLICY', 'POST_BUILD', 'PRE_BUILD', 'PRE_LINK', 'PROPERTY',
            'RANDOM', 'REGEX', 'REMOVE_AT', 'REMOVE_DUPLICATES', 'REMOVE_ITEM',
            'REPLACE', 'REVERSE', 'SEND_ERROR', 'SHARED', 'SORT', 'SOURCE',
            'STATIC', 'STATUS', 'STREQUAL', 'STRGREATER', 'STRING', 'STRIP',
            'STRLESS', 'SUBSTRING', 'TARGET', 'TEST', 'TOLOWER', 'TOUPPER',
            'TRUE', 'VERBATIM', 'VERSION', 'VERSION_EQUAL', 'VERSION_GREATOR',
            'VERSION_LESS', 'WORKING_DIRECTORY',
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => true
        ),
    'SYMBOLS' => array(
        0 => array('(', ')')
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #1f3f81; font-style: bold;',
            2 => 'color: #1f3f81;',
            3 => 'color: #077807; font-sytle: italic;'
            ),
        'BRACKETS' => array(),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #b08000;',
            2 => 'color: #0000cd;'
            ),
        'STRINGS' => array(
            0 => 'color: #912f11;',
            ),
        'SYMBOLS' => array(
            0 => 'color: #197d8b;'
            ),
        'NUMBERS' => array(),
        'METHODS' => array(),
        'REGEXPS' => array(
            0 => 'color: #b08000;',
            1 => 'color: #0000cd;'
            ),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}',
        2 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}',
        3 => '',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        // Unquoted variables
        0 => "\\$(ENV)?\\{[^\\n}]*?\\}",
        // Unquoted registry keys
        1 => "\\[HKEY[^\n\\]]*?]"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            // These keywords cannot come after a open paren
            1 => array(
                'DISALLOWED_AFTER' =>  '(?= *\()'
                ),
            2 => array(
                'DISALLOWED_AFTER' =>  '(?= *\()'
                )
            ),
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            'METHODS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER
            )
        )
);

?>geshi/geshi/inno.php0000664000175000017500000003140312014173371013642 0ustar  benbebenbe 'Inno',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('(*' => '*)'),
    'CASE_KEYWORDS' => 0,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'Setup','Types','Components','Tasks','Dirs','Files','Icons','INI',
            'InstallDelete','Languages','Messages','CustomMessage',
            'LangOptions','Registry','RUN','UninstallDelete','UninstallRun',
            'app','win','sys','syswow64','src','sd','pf','pf32','pf64','cf',
            'cf32','cf64','tmp','fonts','dao','group','localappdata','sendto',
            'userappdata','commonappdata','userdesktop','commondesktop',
            'userdocs','commondocs','userfavorites','commonfavorites',
            'userprograms','commonprograms','userstartmenu','commonstartmenu',
            'userstartup','commonstartup','usertemplates','commontemplates'
            ),
        2 => array(
            'nil', 'false', 'true', 'var', 'type', 'const','And', 'Array', 'As', 'Begin', 'Case', 'Class', 'Constructor', 'Destructor', 'Div', 'Do', 'DownTo', 'Else',
            'End', 'Except', 'File', 'Finally', 'For', 'Function', 'Goto', 'If', 'Implementation', 'In', 'Inherited', 'Interface',
            'Is', 'Mod', 'Not', 'Object', 'Of', 'On', 'Or', 'Packed', 'Procedure', 'Property', 'Raise', 'Record',
            'Repeat', 'Set', 'Shl', 'Shr', 'Then', 'ThreadVar', 'To', 'Try', 'Unit', 'Until', 'Uses', 'While', 'With', 'Xor',

            'HKCC','HKCR','HKCU','HKLM','HKU','alwaysoverwrite','alwaysskipifsameorolder','append',
            'binary','classic','closeonexit','comparetimestamp','confirmoverwrite',
            'createkeyifdoesntexist','createonlyiffileexists','createvalueifdoesntexist',
            'deleteafterinstall','deletekey','deletevalue','dirifempty','dontcloseonexit',
            'dontcopy','dontcreatekey','disablenouninstallwarning','dword','exclusive','expandsz',
            'external','files','filesandordirs','fixed','fontisnttruetype','ignoreversion','iscustom','isreadme',
            'modern','multisz','new','noerror','none','normal','nowait','onlyifdestfileexists',
            'onlyifdoesntexist','onlyifnewer','overwrite','overwritereadonly','postinstall',
            'preservestringtype','promptifolder','regserver','regtypelib','restart','restartreplace',
            'runhidden','runmaximized','runminimized','sharedfile','shellexec','showcheckbox',
            'skipifnotsilent','skipifsilent','silent','skipifdoesntexist',
            'skipifsourcedoesntexist','sortfilesbyextension','unchecked','uninsalwaysuninstall',
            'uninsclearvalue','uninsdeleteentry','uninsdeletekey','uninsdeletekeyifempty',
            'uninsdeletesection','uninsdeletesectionifempty','uninsdeletevalue',
            'uninsneveruninstall','useapppaths','verysilent','waituntilidle'
            ),
        3 => array(
            'Abs', 'Addr', 'AnsiCompareStr', 'AnsiCompareText', 'AnsiContainsStr', 'AnsiEndsStr', 'AnsiIndexStr', 'AnsiLeftStr',
            'AnsiLowerCase', 'AnsiMatchStr', 'AnsiMidStr', 'AnsiPos', 'AnsiReplaceStr', 'AnsiReverseString', 'AnsiRightStr',
            'AnsiStartsStr', 'AnsiUpperCase', 'ArcCos', 'ArcSin', 'ArcTan', 'Assigned', 'BeginThread', 'Bounds', 'CelsiusToFahrenheit',
            'ChangeFileExt', 'Chr', 'CompareStr', 'CompareText', 'Concat', 'Convert', 'Copy', 'Cos', 'CreateDir', 'CurrToStr',
            'CurrToStrF', 'Date', 'DateTimeToFileDate', 'DateTimeToStr', 'DateToStr', 'DayOfTheMonth', 'DayOfTheWeek', 'DayOfTheYear',
            'DayOfWeek', 'DaysBetween', 'DaysInAMonth', 'DaysInAYear', 'DaySpan', 'DegToRad', 'DeleteFile', 'DiskFree', 'DiskSize',
            'DupeString', 'EncodeDate', 'EncodeDateTime', 'EncodeTime', 'EndOfADay', 'EndOfAMonth', 'Eof', 'Eoln', 'Exp', 'ExtractFileDir',
            'ExtractFileDrive', 'ExtractFileExt', 'ExtractFileName', 'ExtractFilePath', 'FahrenheitToCelsius', 'FileAge',
            'FileDateToDateTime', 'FileExists', 'FilePos', 'FileSearch', 'FileSetDate', 'FileSize', 'FindClose', 'FindCmdLineSwitch',
            'FindFirst', 'FindNext', 'FloatToStr', 'FloatToStrF', 'Format', 'FormatCurr', 'FormatDateTime', 'FormatFloat', 'Frac',
            'GetCurrentDir', 'GetLastError', 'GetMem', 'High', 'IncDay', 'IncMinute', 'IncMonth', 'IncYear', 'InputBox',
            'InputQuery', 'Int', 'IntToHex', 'IntToStr', 'IOResult', 'IsInfinite', 'IsLeapYear', 'IsMultiThread', 'IsNaN',
            'LastDelimiter', 'Length', 'Ln', 'Lo', 'Log10', 'Low', 'LowerCase', 'Max', 'Mean', 'MessageDlg', 'MessageDlgPos',
            'MonthOfTheYear', 'Now', 'Odd', 'Ord', 'ParamCount', 'ParamStr', 'Pi', 'Point', 'PointsEqual', 'Pos', 'Pred',
            'Printer', 'PromptForFileName', 'PtInRect', 'RadToDeg', 'Random', 'RandomRange', 'RecodeDate', 'RecodeTime', 'Rect',
            'RemoveDir', 'RenameFile', 'Round', 'SeekEof', 'SeekEoln', 'SelectDirectory', 'SetCurrentDir', 'Sin', 'SizeOf',
            'Slice', 'Sqr', 'Sqrt', 'StringOfChar', 'StringReplace', 'StringToWideChar', 'StrToCurr', 'StrToDate', 'StrToDateTime',
            'StrToFloat', 'StrToInt', 'StrToInt64', 'StrToInt64Def', 'StrToIntDef', 'StrToTime', 'StuffString', 'Succ', 'Sum', 'Tan',
            'Time', 'TimeToStr', 'Tomorrow', 'Trunc', 'UpCase', 'UpperCase', 'VarType', 'WideCharToString', 'WrapText', 'Yesterday',
            'Append', 'AppendStr', 'Assign', 'AssignFile', 'AssignPrn', 'Beep', 'BlockRead', 'BlockWrite', 'Break',
            'ChDir', 'Close', 'CloseFile', 'Continue', 'DateTimeToString', 'Dec', 'DecodeDate', 'DecodeDateTime',
            'DecodeTime', 'Delete', 'Dispose', 'EndThread', 'Erase', 'Exclude', 'Exit', 'FillChar', 'Flush', 'FreeAndNil',
            'FreeMem', 'GetDir', 'GetLocaleFormatSettings', 'Halt', 'Inc', 'Include', 'Insert', 'MkDir', 'Move', 'New',
            'ProcessPath', 'Randomize', 'Read', 'ReadLn', 'ReallocMem', 'Rename', 'ReplaceDate', 'ReplaceTime',
            'Reset', 'ReWrite', 'RmDir', 'RunError', 'Seek', 'SetLength', 'SetString', 'ShowMessage', 'ShowMessageFmt',
            'ShowMessagePos', 'Str', 'Truncate', 'Val', 'Write', 'WriteLn',

            'AdminPrivilegesRequired','AfterInstall','AllowCancelDuringInstall','AllowNoIcons','AllowRootDirectory','AllowUNCPath','AlwaysRestart','AlwaysShowComponentsList','AlwaysShowDirOnReadyPage','AlwaysShowGroupOnReadyPage ','AlwaysUsePersonalGroup','AppComments','AppContact','AppCopyright','AppendDefaultDirName',
            'AppendDefaultGroupName','AppId','AppModifyPath','AppMutex','AppName','AppPublisher',
            'AppPublisherURL','AppReadmeFile','AppSupportURL','AppUpdatesURL','AppVerName','AppVersion',
            'Attribs','BackColor','BackColor2','BackColorDirection','BackSolid','BeforeInstall',
            'ChangesAssociations','ChangesEnvironment','Check','CodeFile','Comment','Compression','CopyMode',
            'CreateAppDir','CreateUninstallRegKey','DefaultDirName','DefaultGroupName',
            'DefaultUserInfoName','DefaultUserInfoOrg','DefaultUserInfoSerial',
            'Description','DestDir','DestName','DirExistsWarning',
            'DisableDirPage','DisableFinishedPage',
            'DisableProgramGroupPage','DisableReadyMemo','DisableReadyPage',
            'DisableStartupPrompt','DiskClusterSize','DiskSliceSize','DiskSpaceMBLabel',
            'DiskSpanning','DontMergeDuplicateFiles','EnableDirDoesntExistWarning','Encryption',
            'Excludes','ExtraDiskSpaceRequired','Filename','Flags','FlatComponentsList','FontInstall',
            'GroupDescription','HotKey','IconFilename','IconIndex','InfoAfterFile','InfoBeforeFile',
            'InternalCompressLevel','Key','LanguageDetectionMethod',
            'LicenseFile','MergeDuplicateFiles','MessagesFile','MinVersion','Name',
            'OnlyBelowVersion','OutputBaseFilename','OutputManifestFile','OutputDir',
            'Parameters','Password','Permissions','PrivilegesRequired','ReserveBytes',
            'RestartIfNeededByRun','Root','RunOnceId','Section','SetupIconFile',
            'ShowComponentSizes','ShowLanguageDialog','ShowTasksTreeLines','SlicesPerDisk',
            'SolidCompression','Source','SourceDir','StatusMsg','Subkey',
            'TimeStampRounding','TimeStampsInUTC','TouchDate','TouchTime','Type',
            'UninstallDisplayIcon','UninstallDisplayName','UninstallFilesDir','UninstallIconFile',
            'UninstallLogMode','UninstallRestartComputer','UninstallStyle','Uninstallable',
            'UpdateUninstallLogAppName','UsePreviousAppDir','UsePreviousGroup',
            'UsePreviousTasks','UsePreviousSetupType','UsePreviousUserInfo',
            'UserInfoPage','UseSetupLdr','ValueData','ValueName','ValueType',
            'VersionInfoVersion','VersionInfoCompany','VersionInfoDescription','VersionInfoTextVersion',
            'WindowResizable','WindowShowCaption','WindowStartMaximized',
            'WindowVisible','WizardImageBackColor','WizardImageFile','WizardImageStretch','WizardSmallImageBackColor','WizardSmallImageFile','WizardStyle','WorkingDir'
            ),
        4 => array(
            'AnsiChar', 'AnsiString', 'Boolean', 'Byte', 'Cardinal', 'Char', 'Comp', 'Currency', 'Double', 'Extended',
            'Int64', 'Integer', 'LongInt', 'LongWord', 'PAnsiChar', 'PAnsiString', 'PChar', 'PCurrency', 'PDateTime',
            'PExtended', 'PInt64', 'Pointer', 'PShortString', 'PString', 'PVariant', 'PWideChar', 'PWideString',
            'Real', 'Real48', 'ShortInt', 'ShortString', 'Single', 'SmallInt', 'String', 'TBits', 'TConvType', 'TDateTime',
            'Text', 'TextFile', 'TFloatFormat', 'TFormatSettings', 'TList', 'TObject', 'TOpenDialog', 'TPoint',
            'TPrintDialog', 'TRect', 'TReplaceFlags', 'TSaveDialog', 'TSearchRec', 'TStringList', 'TSysCharSet',
            'TThreadFunc', 'Variant', 'WideChar', 'WideString', 'Word'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '@', '%', '&', '*', '|', '/', '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',/*bold Black*/
            2 => 'color: #000000;font-style: italic;',/*Black*/
            3 => 'color: #0000FF;',/*blue*/
            4 => 'color: #CC0000;'/*red*/
            ),
        'COMMENTS' => array(
            1 => 'color: #33FF00; font-style: italic;',
            'MULTI' => 'color: #33FF00; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'REGEXPS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000; font-weight: bold;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/yaml.php0000664000175000017500000001435112014173377013652 0ustar  benbebenbe: since PHP offers no variable-width lookbehind,
 *      these blocks will still be highlighted even when commented out. As it happens,
 *      any line ending with | or > could result in the unintentional highlighting of
 *      all remaining lines in the file, just because I couldn't check for this regex
 *      as a lookbehind:  '/:(\s+)(!!(\w+)(\s+))?/'
 *      If there is a workaround for that, it needs implemented.
 *   *  I may be missing some operators. I deliberately omitted inline array notation
 *      as, in general, it's ugly and tends to conflict with plain-text. Ensuring all
 *      highlighted list delimiters are not plain text would be as simple as checking
 *      that they follow a colon directly. Alas, without variable-length lookbehinds,
 *      if there is a way to do so in GeSHi I am unaware of it.
 *   *  I kind of whored the comment regexp array. It seemed like a safe bet, so it's
 *      where I crammed everything. Some of it may need moved elsewhere for neatness.
 *   *  The !!typename highlight needs not to interfere with ": |" and ": >": Pairing
 *      key: !!type | value is perfectly legal, but again due to lookbehind issues, I
 *      can't add a case for that. Also, it is likely that multiple spaces can be put
 *      between the colon and pipe symbol, which would also break it.
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify it
 *   under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'YAML',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    //Keys
    'COMMENT_REGEXP' => array( // ENTRY ZERO  SHOULD CHECK FOR (\n(\s*)([^#%]+?):(\s+)(!!(\w+)(\s+))?) AS A LOOKBEHIND, BUT IT CAN'T.
        0 => '/(?<=\s[\|>]\n)(\s+)(.*)((?=[\n$])(([\n^](\1(.*)|(?=[\n$])))*)|$)/', // Pipe blocks and > blocks.
        1 => '/#(.*)/', // Blue # comments
        2 => '/%(.*)/', // Red % comments
        3 => '/(^|\n)([^#%^\n]+?)(?=: )/',  // Key-value names
        4 => '/(^|\n)([^#%^\n]+?)(?=:\n)/',// Key-group names
        5 => '/(?<=^---)(\s*)!(\S+)/',    // Comments after ---
        6 => '/(?<=: )(\s*)\&(\S+)/',    // References
        7 => '/(?<=: )(\s*)\*(\S+)/',   // Dereferences
        8 => '/!!(\w+)/',              // Types
        //9 => '/(?<=\n)(\s*)-(?!-)/',       // List items: This needs to search within comments 3 and 4, but I don't know how.
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'all','any','none', "yes", "no"
            ),
        ),
    'SYMBOLS' => array(
        1 => array('---', '...'),
        2 => array(': ', ">\n", "|\n", '<<:', ":\n") // It'd be nice if I could specify that the colon must
        //                                              follow comment 3 or 4 to be considered, and the > and |
        //                                              must follow such a colon.
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'font-weight: bold;'
            ),
        'COMMENTS' => array(
            0 => 'color: #303050;background-color: #F5F5F5',
            1 => 'color: blue;',
            2 => 'font-weight: bold; color: red;',
            3 => 'color: green;',
            4 => 'color: #007F45;',
            5 => 'color: #7f7fFF;',
            6 => 'color: #FF7000;',
            7 => 'color: #FF45C0;',
            8 => 'font-weight: bold; color: #005F5F;',
            //9 => 'font-weight: bold; color: #000000;',
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            ),
        'STRINGS' => array(
            0 => 'color: #CF00CF;'
            ),
        'NUMBERS' => array(
            // 0 => 'color: #33f;' // Don't highlight numbers, really...
            ),
        'METHODS' => array(
            1 => '',
            2 => ''
            ),
        'SYMBOLS' => array(
            1 => 'color: cyan;',
            2 => 'font-weight: bold; color: brown;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(1 => ''),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array( ),
    'REGEXPS' => array( ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array( ),
    'HIGHLIGHT_STRICT_BLOCK' => array( )
);

?>geshi/geshi/cobol.php0000664000175000017500000002652112014173435014003 0ustar  benbebenbe 'COBOL',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(1 => '/^\*.*?$/m'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'"),
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_SCI_SHORT |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array( //Compiler Directives
            'ANSI', 'BLANK', 'NOBLANK', 'CALL-SHARED', 'CANCEL', 'NOCANCEL',
            'CHECK', 'CODE', 'NOCODE', 'COLUMNS', 'COMPACT', 'NOCOMPACT',
            'COMPILE', 'CONSULT', 'NOCONSULT', 'CROSSREF', 'NOCROSSREF',
            'DIAGNOSE-74', 'NODIAGNOSE-74', 'DIAGNOSE-85', 'NODIAGNOSE-85',
            'DIAGNOSEALL', 'NODIAGNOSEALL', 'ENDIF', 'ENDUNIT', 'ENV',
            'ERRORFILE', 'ERRORS', 'FIPS', 'NOFIPS', 'FMAP', 'HEADING', 'HEAP',
            'HIGHPIN', 'HIGHREQUESTERS', 'ICODE', 'NOICODE', 'IF', 'IFNOT',
            'INNERLIST', 'NOINNERLIST', 'INSPECT', 'NOINSPECT', 'LARGEDATA',
            'LD', 'LESS-CODE', 'LIBRARY', 'LINES', 'LIST', 'NOLIST', 'LMAP',
            'NOLMAP', 'MAIN', 'MAP', 'NOMAP', 'NLD', 'NONSTOP', 'NON-SHARED',
            'OPTIMIZE', 'PERFORM-TRACE', 'PORT', 'NOPORT', 'RESETTOG',
            'RUNNABLE', 'RUNNAMED', 'SAVE', 'SAVEABEND', 'NOSAVEABEND',
            'SEARCH', 'NOSEARCH', 'SECTION', 'SETTOG', 'SHARED', 'SHOWCOPY',
            'NOSHOWCOPY', 'SHOWFILE', 'NOSHOWFILE', 'SOURCE', 'SQL', 'NOSQL',
            'SQLMEM', 'SUBSET', 'SUBTYPE', 'SUPPRESS', 'NOSUPPRESS', 'SYMBOLS',
            'NOSYMBOLS', 'SYNTAX', 'TANDEM', 'TRAP2', 'NOTRAP2', 'TRAP2-74',
            'NOTRAP2-74', 'UL', 'WARN', 'NOWARN'
            ),
        2 => array( //Statement Keywords
            'ACCEPT', 'ADD', 'TO', 'GIVING', 'CORRESPONDING', 'ALTER', 'CALL',
            'CHECKPOINT', 'CLOSE', 'COMPUTE', 'CONTINUE', 'COPY',
            'DELETE', 'DISPLAY', 'DIVIDE', 'INTO', 'REMAINDER', 'ENTER',
            'COBOL', 'EVALUATE', 'EXIT', 'GO', 'INITIALIZE',
            'TALLYING', 'REPLACING', 'CONVERTING', 'LOCKFILE', 'MERGE', 'MOVE',
            'MULTIPLY', 'OPEN', 'PERFORM', 'TIMES',
            'UNTIL', 'VARYING', 'RETURN',
            ),
        3 => array( //Reserved in some contexts
            'ACCESS', 'ADDRESS', 'ADVANCING', 'AFTER', 'ALL',
            'ALPHABET', 'ALPHABETIC', 'ALPHABETIC-LOWER', 'ALPHABETIC-UPPER',
            'ALPHANUMERIC', 'ALPHANUMERIC-EDITED', 'ALSO', 'ALTERNATE',
            'AND', 'ANY', 'APPROXIMATE', 'AREA', 'AREAS', 'ASCENDING', 'ASSIGN',
            'AT', 'AUTHOR', 'BEFORE', 'BINARY', 'BLOCK', 'BOTTOM', 'BY',
            'CD', 'CF', 'CH', 'CHARACTER', 'CHARACTERS',
            'CHARACTER-SET', 'CLASS', 'CLOCK-UNITS',
            'CODE-SET', 'COLLATING', 'COLUMN', 'COMMA',
            'COMMON', 'COMMUNICATION', 'COMP', 'COMP-3', 'COMP-5',
            'COMPUTATIONAL', 'COMPUTATIONAL-3', 'COMPUTATIONAL-5',
            'CONFIGURATION', 'CONTAINS', 'CONTENT', 'CONTROL',
            'CONTROLS', 'CORR', 'COUNT',
            'CURRENCY', 'DATA', 'DATE', 'DATE-COMPILED', 'DATE-WRITTEN', 'DAY',
            'DAY-OF-WEEK', 'DE', 'DEBUG-CONTENTS', 'DEBUG-ITEM', 'DEBUG-LINE',
            'DEBUG-SUB-2', 'DEBUG-SUB-3', 'DEBUGGING', 'DECIMAL-POINT',
            'DECLARATIVES', 'DEBUG-NAME', 'DEBUG-SUB-1', 'DELIMITED',
            'DELIMITER', 'DEPENDING', 'DESCENDING', 'DESTINATION', 'DETAIL',
            'DISABLE', 'DIVISION', 'DOWN', 'DUPLICATES',
            'DYNAMIC', 'EGI', 'ELSE', 'EMI', 'ENABLE', 'END', 'END-ADD',
            'END-COMPUTE', 'END-DELETE', 'END-DIVIDE', 'END-EVALUATE', 'END-IF',
            'END-MULTIPLY', 'END-OF-PAGE', 'END-PERFORM', 'END-READ',
            'END-RECEIVE', 'END-RETURN', 'END-REWRITE', 'END-SEARCH',
            'END-START', 'END-STRING', 'END-SUBTRACT', 'END-UNSTRING',
            'END-WRITE', 'EOP', 'EQUAL', 'ERROR', 'ESI',
            'EVERY', 'EXCEPTION', 'EXCLUSIVE', 'EXTEND',
            'EXTENDED-STORAGE', 'EXTERNAL', 'FALSE', 'FD', 'FILE',
            'FILE-CONTROL', 'FILLER', 'FINAL', 'FIRST', 'FOOTING', 'FOR',
            'FROM', 'FUNCTION', 'GENERATE', 'GENERIC', 'GLOBAL',
            'GREATER', 'GROUP', 'GUARDIAN-ERR', 'HIGH-VALUE',
            'HIGH-VALUES', 'I-O', 'I-O-CONTROL', 'IDENTIFICATION', 'IN',
            'INDEX', 'INDEXED', 'INDICATE', 'INITIAL', 'INITIATE',
            'INPUT', 'INPUT-OUTPUT', 'INSTALLATION',
            'INVALID', 'IS', 'JUST', 'JUSTIFIED', 'KEY', 'LABEL', 'LAST',
            'LEADING', 'LEFT', 'LESS', 'LIMIT', 'LIMITS', 'LINAGE',
            'LINAGE-COUNTER', 'LINE', 'LINE-COUNTER', 'LINKAGE', 'LOCK',
            'LOW-VALUE', 'LOW-VALUES', 'MEMORY', 'MESSAGE',
            'MODE', 'MODULES', 'MULTIPLE', 'NATIVE',
            'NEGATIVE', 'NEXT', 'NO', 'NOT', 'NULL', 'NULLS', 'NUMBER',
            'NUMERIC', 'NUMERIC-EDITED', 'OBJECT-COMPUTER', 'OCCURS', 'OF',
            'OFF', 'OMITTED', 'ON', 'OPTIONAL', 'OR', 'ORDER',
            'ORGANIZATION', 'OTHER', 'OUTPUT', 'OVERFLOW', 'PACKED-DECIMAL',
            'PADDING', 'PAGE', 'PAGE-COUNTER', 'PF', 'PH', 'PIC',
            'PICTURE', 'PLUS', 'POINTER', 'POSITION', 'POSITIVE', 'PRINTING',
            'PROCEDURE', 'PROCEDURES', 'PROCEED', 'PROGRAM', 'PROGRAM-ID',
            'PROGRAM-STATUS', 'PROGRAM-STATUS-1', 'PROGRAM-STATUS-2', 'PROMPT',
            'PROTECTED', 'PURGE', 'QUEUE', 'QUOTE', 'QUOTES', 'RD',
            'RECEIVE', 'RECEIVE-CONTROL', 'RECORD', 'RECORDS',
            'REDEFINES', 'REEL', 'REFERENCE', 'REFERENCES', 'RELATIVE',
            'REMOVAL', 'RENAMES', 'REPLACE',
            'REPLY', 'REPORT', 'REPORTING', 'REPORTS', 'RERUN',
            'RESERVE', 'RESET', 'REVERSED', 'REWIND', 'REWRITE', 'RF',
            'RH', 'RIGHT', 'ROUNDED', 'RUN', 'SAME', 'SD',
            'SECURITY', 'SEGMENT', 'SEGMENT-LIMIT', 'SELECT', 'SEND',
            'SENTENCE', 'SEPARATE', 'SEQUENCE', 'SEQUENTIAL', 'SET',
            'SIGN', 'SIZE', 'SORT', 'SORT-MERGE', 'SOURCE-COMPUTER',
            'SPACE', 'SPACES', 'SPECIAL-NAMES', 'STANDARD', 'STANDARD-1',
            'STANDARD-2', 'START', 'STARTBACKUP', 'STATUS', 'STOP', 'STRING',
            'SUB-QUEUE-1', 'SUB-QUEUE-2', 'SUB-QUEUE-3', 'SUBTRACT',
            'SYMBOLIC', 'SYNC', 'SYNCDEPTH', 'SYNCHRONIZED',
            'TABLE', 'TAL', 'TAPE', 'TERMINAL', 'TERMINATE', 'TEST',
            'TEXT', 'THAN', 'THEN', 'THROUGH', 'THRU', 'TIME',
            'TOP', 'TRAILING', 'TRUE', 'TYPE', 'UNIT', 'UNLOCK', 'UNLOCKFILE',
            'UNLOCKRECORD', 'UNSTRING', 'UP', 'UPON', 'USAGE', 'USE',
            'USING', 'VALUE', 'VALUES', 'WHEN', 'WITH', 'WORDS',
            'WORKING-STORAGE', 'WRITE', 'ZERO', 'ZEROES'
            ),
        4 => array( //Standard functions
            'ACOS', 'ANNUITY', 'ASIN', 'ATAN', 'CHAR', 'COS', 'CURRENT-DATE',
            'DATE-OF-INTEGER', 'DAY-OF-INTEGER', 'FACTORIAL', 'INTEGER',
            'INTEGER-OF-DATE', 'INTEGER-OF-DAY', 'INTEGER-PART', 'LENGTH',
            'LOG', 'LOG10', 'LOWER-CASE', 'MAX', 'MEAN', 'MEDIAN', 'MIDRANGE',
            'MIN', 'MOD', 'NUMVAL', 'NUMVAL-C', 'ORD', 'ORD-MAX', 'ORD-MIN',
            'PRESENT-VALUE', 'RANDOM', 'RANGE', 'REM', 'REVERSE', 'SIN', 'SQRT',
            'STANDARD-DEVIATION', 'SUM', 'TAN', 'UPPER-CASE', 'VARIANCE',
            'WHEN-COMPILED'
            ),
        5 => array( //Privileged Built-in Functions
            '#IN', '#OUT', '#TERM', '#TEMP', '#DYNAMIC', 'COBOL85^ARMTRAP',
            'COBOL85^COMPLETION', 'COBOL_COMPLETION_', 'COBOL_CONTROL_',
            'COBOL_GETENV_', 'COBOL_PUTENV_', 'COBOL85^RETURN^SORT^ERRORS',
            'COBOL_RETURN_SORT_ERRORS_', 'COBOL85^REWIND^SEQUENTIAL',
            'COBOL_REWIND_SEQUENTIAL_', 'COBOL85^SET^SORT^PARAM^TEXT',
            'COBOL_SET_SORT_PARAM_TEXT_', 'COBOL85^SET^SORT^PARAM^VALUE',
            'COBOL_SET_SORT_PARAM_VALUE_', 'COBOL_SET_MAX_RECORD_',
            'COBOL_SETMODE_', 'COBOL85^SPECIAL^OPEN', 'COBOL_SPECIAL_OPEN_',
            'COBOLASSIGN', 'COBOL_ASSIGN_', 'COBOLFILEINFO', 'COBOL_FILE_INFO_',
            'COBOLSPOOLOPEN', 'CREATEPROCESS', 'ALTERPARAMTEXT',
            'CHECKLOGICALNAME', 'CHECKMESSAGE', 'DELETEASSIGN', 'DELETEPARAM',
            'DELETESTARTUP', 'GETASSIGNTEXT', 'GETASSIGNVALUE', 'GETBACKUPCPU',
            'GETPARAMTEXT', 'GETSTARTUPTEXT', 'PUTASSIGNTEXT', 'PUTASSIGNVALUE',
            'PUTPARAMTEXT', 'PUTSTARTUPTEXT'
            )
        ),
    'SYMBOLS' => array(
        //Avoid having - in identifiers marked as symbols
        ' + ', ' - ', ' * ', ' / ', ' ** ',
        '.', ',',
        '=',
        '(', ')', '[', ']'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000080; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #008000; font-weight: bold;',
            4 => 'color: #000080;',
            5 => 'color: #008000;',
            ),
        'COMMENTS' => array(
            1 => 'color: #a0a0a0; font-style: italic;',
            'MULTI' => 'color: #a0a0a0; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #339933;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #993399;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
    );

?>
geshi/geshi/objeck.php0000664000175000017500000000726412014173443014144 0ustar  benbebenbe 'Objeck Programming Language',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array('#~' => '~#'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'virtual', 'if', 'else', 'do', 'while', 'use', 'bundle', 'native',
            'static', 'public', 'private', 'class', 'function', 'method',
            'select', 'other', 'enum', 'for', 'each', 'label', 'return', 'from'
            ),
        2 => array(
            'Byte', 'Int', 'Nil', 'Float', 'Char', 'Bool', 'String'
            ),
        3 => array(
            'true', 'false'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%', '=', '<', '>', '&', '|', ':', ';', ',', '+=', '-=', '*=', '/=',
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #b1b100;',
            3 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '->'
        ),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>geshi/geshi/vhdl.php0000664000175000017500000001555512014173376013653 0ustar  benbebenbe 'VHDL',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        // PSL adds C-preprocessor support
        1 => '/(?<=\s)#(?:\\\\\\\\|\\\\\\n|.)*$/m',
        // PSL metacomments (single-line only for now)
        2 => '/--\s*@?psl(?:.)*?;$/m',
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /*keywords*/
        1 => array(
            'access','after','alias','all','attribute','architecture','array','begin',
            'block','body','buffer','bus','case','case?','component','configuration','constant','context',
            'disconnect','downto','else','elsif','end','entity','exit','file','for','force',
            'function','generate','generic','group','guarded','if','impure','in',
            'inertial','inout','is','label','library','linkage','literal','loop',
            'map','new','next','null','of','on','open','others','out','package',
            'port','postponed','procedure','process','protected','pure','range','record','register',
            'reject','release','report','return','select','severity','shared','signal','subtype',
            'then','to','transport','type','unaffected','units','until','use','variable',
            'wait','when','while','with'
            ),
        /*types and standard libs*/
        2 => array(
            'bit','bit_vector','character','boolean','integer','real','time','delay_length','string',
            'severity_level','positive','natural','signed','unsigned','line','text',
            'std_logic','std_logic_vector','std_ulogic','std_ulogic_vector',
            'sfixed','ufixed','float','float32','float64','float128',
            'work','ieee','std_logic_1164','math_real','math_complex','textio',
            'numeric_std','numeric_std_signed','numeric_std_unsigned','numeric_bit'
            ),
        /*operators*/
        3 => array(
            'abs','and','mod','nor','not','or','rem','rol','ror','sla','sll','sra','srl','xnor','xor'
            ),
        /*psl*/
        4 => array(
            'assert','assume','assume_guarantee','clock','const','countones','cover','default',
            'endpoint','fairness','fell','forall','inf','inherit','isunknown','onehot','onehot0','property',
            'prev','restrict','restrict_guarantee','rose','sequence','stable','strong','union','vmode','vprop','vunit'
            ),
        /*psl operators*/
        5 => array(
            'abort','always','before','before!','before!_','before_','eventually!','never',
            'next!','next_a','next_a!','next_e','next_e!','next_event','next_event!','next_event_a','next_event_a!',
            'next_event_e','next_event_e!','until!','until!_','until_','within'
            )
        ),
    'SYMBOLS' => array(
        '[', ']', '(', ')',
        ';',':',
        '<','>','=','+','-','*','/','&','|','?'
    ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000080; font-weight: bold;',
            2 => 'color: #0000ff;',
            3 => 'color: #000066;',
            4 => 'color: #000080; font-weight: bold;',
            5 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000; font-style: italic;',
            2 => 'color: #ff0000; font-weight: bold;',
            'MULTI' => 'color: #008000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000066;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;'
            ),
        'REGEXPS' => array(
            0 => 'color: #ff0000;',
            //1 => 'color: #ff0000;',
            2 => 'color: #ee82ee;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Based literals, scientific notation, and time units
        0 => '(\b\d+#[[:xdigit:]_]+#)|'.
            '(\b[\d_]+(\.[\d_]+)?[eE][+\-]?[\d_]+)|'.
            '(\b(hr|min|sec|ms|us|ns|ps|fs)\b)',
        //Character literals
        /* GeSHi won't match this pattern for some reason and QUOTEMARKS
         * can't be used because it interferes with attribute parsing */
        /*1 => "\b'.'\b",*/
        //Attributes
        2 => "'\w+(?!')"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/xml.php0000664000175000017500000001112312014173376013501 0ustar  benbebenbe 'XML',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            -1 => 'color: #808080; font-style: italic;', // comments
            0 => 'color: #00bbdd;',
            1 => 'color: #ddbb00;',
            2 => 'color: #339933;',
            3 => 'color: #009900;'
            ),
        'REGEXPS' => array(
            0 => 'color: #000066;',
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;'
            )
        ),
    'URLS' => array(
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => array(//attribute names
            GESHI_SEARCH => '([a-z_:][\w\-\.:]*)(=)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => '\\2'
            ),
        1 => array(//Initial header line
            GESHI_SEARCH => '(<[\/?|(\?xml)]?[a-z_:][\w\-\.:]*(\??>)?)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        2 => array(//Tag end markers
            GESHI_SEARCH => '(([\/|\?])?>)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        -1 => array(
            ''
            ),
        0 => array(
            ' '>'
            ),
        1 => array(
            '&' => ';'
            ),
        2 => array(
            ' ']]>'
            ),
        3 => array(
            '<' => '>'
            )
    ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        -1 => false,
        0 => false,
        1 => false,
        2 => false,
        3 => true
        ),
    'TAB_WIDTH' => 2,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'NUMBERS' => GESHI_NEVER
        )
    )
);

?>
geshi/geshi/gnuplot.php0000664000175000017500000002773012014173426014400 0ustar  benbebenbe 'Gnuplot',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('`', '"', "'"),
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_SCI_SHORT |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        // copy output of help command, indent properly and use this replace regexp:
        // ([a-z0-9_\-]+)(( )+|$)          =>     '\1',\3

        // commands as found in `help commands`
        1 => array(
            'bind', 'call', 'cd', 'clear',
            'exit', 'fit', 'help', 'history',
            'if', 'load', 'lower', 'pause',
            'plot', 'print', 'pwd', 'quit',
            'raise', 'replot', 'reread', 'reset',
            'save', 'set', 'shell', 'show',
            'splot', 'system', 'test', 'unset',
            'update'
            ),
        2 => array(
            // set commands as returned by `help set`
            'angles', 'arrow', 'autoscale', 'bars',
            'bmargin', 'border', 'boxwidth', 'cbdata',
            'cbdtics', 'cblabel', 'cbmtics', 'cbrange',
            'cbtics', 'clabel', 'clip', 'cntrparam',
            'colorbox', 'contour', 'datafile', 'date_specifiers',
            'decimalsign', 'dgrid3d', 'dummy', 'encoding',
            'fontpath', 'format', 'grid',
            'hidden3d', 'historysize', 'isosamples', 'key',
            'label', 'lmargin', 'loadpath', 'locale',
            'log', 'logscale', 'macros', 'mapping',
            'margin', 'missing', 'mouse', 'multiplot',
            'mx2tics', 'mxtics', 'my2tics', 'mytics',
            'mztics', 'object', 'offsets', 'origin',
            'output', 'palette', 'parametric', 'pm3d',
            'pointsize', 'polar', 'rmargin',
            'rrange', 'samples', 'size', 'style',
            'surface', 'table', 'term', 'terminal',
            'termoption', 'tics', 'ticscale', 'ticslevel',
            'time_specifiers', 'timefmt', 'timestamp', 'title',
            'trange', 'urange', 'view',
            'vrange', 'x2data', 'x2dtics', 'x2label',
            'x2mtics', 'x2range', 'x2tics', 'x2zeroaxis',
            'xdata', 'xdtics', 'xlabel', 'xmtics',
            'xrange', 'xtics', 'xyplane', 'xzeroaxis',
            'y2data', 'y2dtics', 'y2label', 'y2mtics',
            'y2range', 'y2tics', 'y2zeroaxis', 'ydata',
            'ydtics', 'ylabel', 'ymtics', 'yrange',
            'ytics', 'yzeroaxis', 'zdata', 'zdtics',
            'zero', 'zeroaxis', 'zlabel', 'zmtics',
            'zrange', 'ztics', 'zzeroaxis',
            // same but with leading no
            'noangles', 'noarrow', 'noautoscale', 'nobars',
            'nobmargin', 'noborder', 'noboxwidth', 'nocbdata',
            'nocbdtics', 'nocblabel', 'nocbmtics', 'nocbrange',
            'nocbtics', 'noclabel', 'noclip', 'nocntrparam',
            'nocolorbox', 'nocontour', 'nodatafile', 'nodate_specifiers',
            'nodecimalsign', 'nodgrid3d', 'nodummy', 'noencoding',
            'nofit', 'nofontpath', 'noformat', 'nogrid',
            'nohidden3d', 'nohistorysize', 'noisosamples', 'nokey',
            'nolabel', 'nolmargin', 'noloadpath', 'nolocale',
            'nolog', 'nologscale', 'nomacros', 'nomapping',
            'nomargin', 'nomissing', 'nomouse', 'nomultiplot',
            'nomx2tics', 'nomxtics', 'nomy2tics', 'nomytics',
            'nomztics', 'noobject', 'nooffsets', 'noorigin',
            'nooutput', 'nopalette', 'noparametric', 'nopm3d',
            'nopointsize', 'nopolar', 'noprint', 'normargin',
            'norrange', 'nosamples', 'nosize', 'nostyle',
            'nosurface', 'notable', 'noterm', 'noterminal',
            'notermoption', 'notics', 'noticscale', 'noticslevel',
            'notime_specifiers', 'notimefmt', 'notimestamp', 'notitle',
            'notmargin', 'notrange', 'nourange', 'noview',
            'novrange', 'nox2data', 'nox2dtics', 'nox2label',
            'nox2mtics', 'nox2range', 'nox2tics', 'nox2zeroaxis',
            'noxdata', 'noxdtics', 'noxlabel', 'noxmtics',
            'noxrange', 'noxtics', 'noxyplane', 'noxzeroaxis',
            'noy2data', 'noy2dtics', 'noy2label', 'noy2mtics',
            'noy2range', 'noy2tics', 'noy2zeroaxis', 'noydata',
            'noydtics', 'noylabel', 'noymtics', 'noyrange',
            'noytics', 'noyzeroaxis', 'nozdata', 'nozdtics',
            'nozero', 'nozeroaxis', 'nozlabel', 'nozmtics',
            'nozrange', 'noztics', 'nozzeroaxis',
            ),
        3 => array(
            // predefined variables
            'pi', 'NaN', 'GNUTERM',
            'GPVAL_X_MIN', 'GPVAL_X_MAX', 'GPVAL_Y_MIN', 'GPVAL_Y_MAX',
            'GPVAL_TERM', 'GPVAL_TERMOPTIONS', 'GPVAL_OUTPUT',
            'GPVAL_VERSION', 'GPVAL_PATcHLEVEL', 'GPVAL_COMPILE_OPTIONS',
            'MOUSE_KEY', 'MOUSE_X', 'MOUSE_X2', 'MOUSE_Y', 'MOUSE_Y2',
            'MOUSE_BUTTON', 'MOUSE_SHIFT', 'MOUSE_ALT', 'MOUSE_CTRL'
            ),
        4 => array(
            // predefined functions `help functions`
            'abs', 'acos', 'acosh', 'arg',
            'asin', 'asinh', 'atan', 'atan2',
            'atanh', 'besj0', 'besj1', 'besy0',
            'besy1', 'ceil', 'column', 'cos',
            'cosh', 'defined', 'erf', 'erfc',
            'exists', 'exp', 'floor', 'gamma',
            'gprintf', 'ibeta', 'igamma', 'imag',
            'int', 'inverf', 'invnorm', 'lambertw',
            'lgamma', 'log10', 'norm',
            'rand', 'random', 'real', 'sgn',
            'sin', 'sinh', 'sprintf', 'sqrt',
            'stringcolumn', 'strlen', 'strstrt', 'substr',
            'tan', 'tanh', 'timecolumn',
            'tm_hour', 'tm_mday', 'tm_min', 'tm_mon',
            'tm_sec', 'tm_wday', 'tm_yday', 'tm_year',
            'valid', 'word', 'words',
            ),
        5 => array(
            // mixed arguments
            // there is no sane way to get these ones easily...
            'autofreq', 'x', 'y', 'z',
            'lt', 'linetype', 'lw', 'linewidth', 'ls', 'linestyle',
            'out', 'rotate by', 'screen',
            'enhanced', 'via',
            // `help set key`
            'on', 'off', 'default', 'inside', 'outside', 'tmargin',
            'at', 'left', 'right', 'center', 'top', 'bottom', 'vertical', 'horizontal', 'Left', 'Right',
            'noreverse', 'reverse', 'noinvert', 'invert', 'samplen', 'spacing', 'width', 'height',
            'noautotitle', 'autotitle', 'noenhanced', 'nobox', 'box',

            // help set terminal postscript
            'landscape', 'portrait', 'eps', 'defaultplex', 'simplex', 'duplex',
            'fontfile', 'add', 'delete', 'nofontfiles', 'level1', 'leveldefault',
            'color', 'colour', 'monochrome', 'solid', 'dashed', 'dashlength', 'dl',
            'rounded', 'butt', 'palfuncparam', 'blacktext', 'colortext', 'colourtext',
            'font',

            // help set terminal png
            'notransparent', 'transparent', 'nointerlace', 'interlace',
            'notruecolor', 'truecolor', 'tiny', 'small', 'medium', 'large', 'giant',
            'nocrop', 'crop',

            // `help plot`
            'acsplines', 'bezier', 'binary', 'csplines',
            'every',
            'example', 'frequency', 'index', 'matrix',
            'ranges', 'sbezier', 'smooth',
            'special-filenames', 'thru',
            'unique', 'using', 'with',

            // `help plotting styles`
            'boxerrorbars', 'boxes', 'boxxyerrorbars', 'candlesticks',
            'dots', 'errorbars', 'errorlines', 'filledcurves',
            'financebars', 'fsteps', 'histeps', 'histograms',
            'image', 'impulses', 'labels', 'lines',
            'linespoints', 'points', 'rgbimage', 'steps',
            'vectors', 'xerrorbars', 'xerrorlines', 'xyerrorbars',
            'xyerrorlines', 'yerrorbars', 'yerrorlines',


            // terminals `help terminals`
            'aed512', 'aed767', 'aifm', 'bitgraph',
            'cgm', 'corel', 'dumb', 'dxf',
            'eepic', 'emf', 'emtex', 'epslatex',
            'epson-180dpi', 'epson-60dpi', 'epson-lx800', 'fig',
            'gif', 'gpic', 'hp2623a', 'hp2648',
            'hp500c', 'hpdj', 'hpgl', 'hpljii',
            'hppj', 'imagen', 'jpeg', 'kc-tek40xx',
            'km-tek40xx', 'latex', 'mf', 'mif',
            'mp', 'nec-cp6', 'okidata', 'pbm',
            'pcl5', 'png', 'pop', 'postscript',
            'pslatex', 'pstex', 'pstricks', 'push',
            'qms', 'regis', 'selanar', 'starc',
            'svg', 'tandy-60dpi', 'tek40xx', 'tek410x',
            'texdraw', 'tgif', 'tkcanvas', 'tpic',
            'vttek', 'x11', 'xlib',
            )
        ),
    'REGEXPS' => array(
        //Variable assignment
        0 => "(?\w])([a-zA-Z_][a-zA-Z0-9_]*)\s*=",
        //Numbers with unit
        1 => "(?<=^|\s)([0-9]*\.?[0-9]+\s*cm)"
        ),
    'SYMBOLS' => array(
        '-', '+', '~', '!', '$',
        '*', '/', '%', '=', '<', '>', '&',
        '^', '|', '.', 'eq', 'ne', '?:', ':', '`', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #990000;',
            3 => 'color: #550000;',
            4 => 'color: #7a0874;',
            5 => 'color: #448888;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight:bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000099; font-weight:bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;',
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #007800;',
            1 => 'color: #cc66cc;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => 'http://www.google.com/search?q=%22set+{FNAME}%22+site%3Ahttp%3A%2F%2Fwww.gnuplot.info%2Fdocs%2F&btnI=lucky',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            4 => array(
                'DISALLOWED_AFTER' =>  "(?![\.\-a-zA-Z0-9_%])"
            )
        )
    ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/j.php0000664000175000017500000001512312014173376013136 0ustar  benbebenbe 'J',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        1 => '/(? '/(?<=\bNote\b).*?$\s+\)(?:(?!\n)\s)*$/sm',   //multiline comments in Note
        3 => "/'[^']*?$/m"                        //incomplete strings/open quotes
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("'"),
    'HARDCHAR' => "'",
    'NUMBERS' => array(
        0 => '\b(?:_?\d+(?:\.\d+)?(?:x|[bejprx]_?[\da-z]+(?:\.[\da-z]+)?)?|__?)(?![\w\.\:])',
        ),
    'KEYWORDS' => array(
        //Control words
        1 => array(
            'assert.', 'break.', 'case.', 'catch.', 'catcht.', 'continue.', 'do.',
            'else.', 'elseif.', 'end.', 'fcase.', 'for.', 'goto.', 'if.', 'label.',
            'return.', 'select.', 'throw.', 'trap.', 'try.', 'while.', 'whilst.'
            ),
        //Arguments
        2 => array(
            'm', 'n', 'u', 'v', 'x', 'y'
            ),
        ),
    'SYMBOLS' => array(
        //Punctuation
        0 => array(
            '(', ')'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        //6 => true,
        //7 => true,
        //8 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff; font-weight: bold;',
            2 => 'color: #0000cc; font-weight: bold;',
            //6 => 'color: #000000; font-weight: bold;',
            //7 => 'color: #000000; font-weight: bold;',
            //8 => 'color: #000000; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #666666; font-style: italic; font-weight: bold;',
            3 => 'color: #ff00ff; ',                      //open quote
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            'HARD' => 'font-weight: bold;',
            0 => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            'HARD' => 'color: #ff0000;',
            0 => 'color: #ff0000;',
            ),
        'NUMBERS' => array(
            0 => 'color: #009999; font-weight: bold;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #009900; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff; font-weight: bold;',   //for_xyz. - same as kw1
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '', //'http://www.jsoftware.com/help/dictionary/ctrl.htm',
        2 => '',
        //6 => '', //'http://www.jsoftware.com/jwiki/Vocabulary',
        //7 => '', //'http://www.jsoftware.com/jwiki/Vocabulary',
        //8 => '', //'http://www.jsoftware.com/jwiki/Vocabulary',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => '\b(for|goto|label)_[a-zA-Z]\w*\.',   //for_xyz. - should be kw1
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            ),
        'NUMBERS' => array(
            'PRECHECK_RX' => '#[\d_]#',            // underscore is valid number
            ),
        'KEYWORDS' => array(
            //Control words
            2 => array(
                'DISALLOWED_BEFORE' => '(? '(?![\w\.\:])',
                ),
            //Primtives starting with a symbol (except . or :)
            6 => array(
                'DISALLOWED_BEFORE' => '(?!K)',    // effect should be to allow anything
                'DISALLOWED_AFTER' => '(?=.*)',
                ),
            //Primtives starting with a letter
            7 => array(
                'DISALLOWED_BEFORE' => '(? '(?=.*)',
                ),
            //Primtives starting with symbol . or :
            8 => array(
                'DISALLOWED_BEFORE' => '(?<=\s)',
                'DISALLOWED_AFTER' => '(?=.*)',
                ),
            )
        )
);

?>
geshi/geshi/make.php0000664000175000017500000001220512014173437013616 0ustar  benbebenbe
 * Copyright: (c) 2008 Neil Bird
 * Release Version: 1.0.8.11
 * Date Started: 2008/08/26
 *
 * make language file for GeSHi.
 *
 * (GNU make specific)
 *
 * CHANGES
 * -------
 * 2008/09/05 (1.0.0)
 *  -  First Release
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'GNU make',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_REGEXP' => array(
        //Escaped String Starters
        2 => "/\\\\['\"]/siU"
        ),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            // core
            'ifeq', 'else', 'endif', 'ifneq', 'ifdef', 'ifndef',
            'include', 'vpath', 'export', 'unexport', 'override',
            'info', 'warning', 'error'
            ),
        2 => array(
            // macros, literals
            '.SUFFIXES', '.PHONY', '.DEFAULT', '.PRECIOUS', '.IGNORE', '.SILENT', '.EXPORT_ALL_VARIABLES', '.KEEP_STATE',
            '.LIBPATTERNS', '.NOTPARALLEL', '.DELETE_ON_ERROR', '.INTERMEDIATE', '.POSIX', '.SECONDARY'
            ),
        /*
        3 => array(
            // funcs - see regex
            //'subst', 'addprefix', 'addsuffix', 'basename', 'call', 'dir', 'error', 'eval', 'filter-out', 'filter',
            //'findstring', 'firstword', 'foreach', 'if', 'join', 'notdir', 'origin', 'patsubst', 'shell', 'sort', 'strip',
            //'suffix', 'warning', 'wildcard', 'word', 'wordlist', 'words'
            )*/
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}',
        '!', '@', '%', '&', '|', '/',
        '<', '>',
        '=', '-', '+', '*',
        '.', ':', ',', ';',
        '$'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        //3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #666622; font-weight: bold;',
            2 => 'color: #990000;',
            //3 => 'color: #000000; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #339900; font-style: italic;',
            2 => 'color: #000099; font-weight: bold;',
            'MULTI' => ''
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(  # keep same as symbols so as to make ${} and $() equiv.
            0 => 'color: #004400;'
            ),
        'STRINGS' => array(
            0 => 'color: #CC2200;'
            ),
        'NUMBERS' => array(
            0 => 'color: #CC2200;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #004400;'
            ),
        'REGEXPS' => array(
            0 => 'color: #000088; font-weight: bold;',
            1 => 'color: #0000CC; font-weight: bold;',
            2 => 'color: #000088;'
            ),
        'SCRIPT' => array(),
        'METHODS' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        //3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        //Simple variables
        0 => "\\$(?:[^{(&]|&(?:amp|lt|gt);)",
        //Complex variables/functions [built-ins]
        1 => array(
            GESHI_SEARCH => '(\\$[({])(subst|addprefix|addsuffix|basename|call|dir|error|eval|filter-out|filter,|findstring|firstword|foreach|if|join|notdir|origin|patsubst|shell|sort|strip,|suffix|warning|wildcard|word|wordlist|words)([ })])',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
            //Complex variables/functions [others]
        2 => array(
            GESHI_SEARCH => '(\\$[({])([A-Za-z_][A-Za-z_0-9]*)([ })])',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'TAB_WIDTH' => 8
// vim: set sw=4 sts=4 :
);
?>
geshi/geshi/scilab.php0000664000175000017500000005401412014173370014136 0ustar  benbebenbe 'SciLab',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        2 => "/(?<=\)|\]|\w)'/"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array(),
    'KEYWORDS' => array(
        1 => array(
            'if', 'else', 'elseif', 'end', 'select', 'case', 'for', 'while', 'break'
            ),
        2 => array(
            'STDIN', 'STDOUT', 'STDERR',
            '%i', '%pi', '%e', '%eps', '%nan', '%inf', '%s', '%t', '%f',
            'usual', 'polynomial', 'boolean', 'character', 'function', 'rational', 'state-space',
            'sparse', 'boolean sparse', 'list', 'tlist', 'library', 'endfunction'
            ),
        3 => array(
            '%asn', '%helps', '%k', '%sn', 'abcd', 'abinv', 'abort', 'about', 'About_M2SCI_tools',
            'abs', 'acos', 'acosh', 'acoshm', 'acosm', 'AdCommunications', 'add_demo', 'add_edge',
            'add_help_chapter', 'add_node', 'add_palette', 'addcolor', 'addf', 'addinter', 'addmenu',
            'adj_lists', 'adj2sp', 'aff2ab', 'alufunctions', 'amell', 'analpf', 'analyze', 'and',
            'ans', 'apropos', 'arc_graph', 'arc_number', 'arc_properties', 'argn', 'arhnk', 'arl2',
            'arma', 'arma2p', 'armac', 'armax', 'armax1', 'arsimul', 'artest', 'articul', 'ascii',
            'asciimat', 'asin', 'asinh', 'asinhm', 'asinm', 'assignation', 'atan', 'atanh', 'atanhm',
            'atanm', 'augment', 'auread', 'auwrite', 'axes_properties', 'axis_properties', 'backslash',
            'balanc', 'balreal', 'bandwr', 'banner','bar', 'barh', 'barhomogenize', 'basename', 'bdiag',
            'beep', 'besselh', 'besseli', 'besselj', 'besselk', 'bessely', 'best_match', 'beta','bezout',
            'bifish', 'bilin', 'binomial', 'black', 'bloc2exp', 'bloc2ss', 'bode', 'bool2s',
            'boucle', 'brackets', 'browsevar', 'bsplin3val', 'bstap', 'buttmag', 'buttondialog',
            'bvode', 'bvodeS', 'c_link', 'cainv', 'calendar', 'calerf', 'calfrq', 'call', 'canon', 'casc',
            'cat', 'catch', 'ccontrg', 'cd', 'cdfbet', 'cdfbin', 'cdfchi', 'cdfchn', 'cdff', 'cdffnc',
            'cdfgam', 'cdfnbn', 'cdfnor', 'cdfpoi', 'cdft', 'ceil', 'cell', 'cell2mat', 'cellstr', 'center',
            'cepstrum', 'chain_struct', 'chaintest', 'champ', 'champ_properties', 'champ1', 'char', 'chart',
            'chartooem', 'chdir', 'cheb1mag', 'cheb2mag', 'check_graph', 'chepol', 'chfact', 'chol', 'chsolve',
            'circuit', 'classmarkov', 'clc', 'clean', 'clear', 'clear_pixmap', 'clearfun', 'clearglobal','clf',
            'clipboard', 'close', 'cls2dls', 'cmb_lin', 'cmndred', 'cmoment', 'code2str', 'coeff', 'coff', 'coffg',
            'colcomp', 'colcompr', 'colinout', 'colon', 'color', 'color_list', 'colorbar', 'colordef', 'colormap',
            'colregul', 'comma', 'comments', 'comp', 'companion', 'comparison', 'Compound_properties', 'con_nodes',
            'cond', 'config', 'configure_msvc', 'conj', 'connex', 'console', 'cont_frm', 'cont_mat', 'Contents',
            'continue', 'contour', 'contour2d', 'contour2di', 'contourf', 'contr', 'contract_edge', 'contrss',
            'convex_hull', 'convol', 'convstr', 'copfac', 'copy', 'corr', 'correl', 'cos', 'cosh', 'coshm',
            'cosm', 'cotg', 'coth', 'cothm', 'covar', 'create_palette', 'cshep2d', 'csim', 'cspect', 'Cste',
            'ctr_gram', 'cumprod', 'cumsum', 'cycle_basis', 'czt', 'dasrt', 'dassl', 'datafit', 'date', 'datenum',
            'datevec', 'dbphi', 'dcf', 'ddp', 'debug', 'dec2hex', 'deff', 'definedfields', 'degree', 'delbpt',
            'delete', 'delete_arcs', 'delete_nodes', 'delip', 'delmenu', 'demoplay', 'denom', 'derivat', 'derivative',
            'des2ss', 'des2tf', 'det', 'determ', 'detr', 'detrend', 'dft', 'dhinf', 'dhnorm', 'diag', 'diary',
            'diff', 'diophant', 'dir', 'dirname', 'disp', 'dispbpt', 'dispfiles', 'dlgamma', 'dnaupd', 'do', 'dot',
            'double', 'dragrect', 'draw', 'drawaxis', 'drawlater', 'drawnow', 'driver', 'dsaupd', 'dscr',
            'dsearch', 'dsimul', 'dt_ility', 'dtsi', 'edge_number', 'edit', 'edit_curv', 'edit_error',
            'edit_graph', 'edit_graph_menus', 'editvar', 'eigenmarkov', 'ell1mag',
            'empty', 'emptystr', 'eqfir', 'eqiir', 'equal', 'Equal', 'equil', 'equil1',
            'ereduc', 'erf', 'erfc', 'erfcx', 'errbar', 'errcatch', 'errclear', 'error', 'error_table', 'etime',
            'eval', 'eval_cshep2d', 'eval3d', 'eval3dp', 'evans', 'evstr', 'excel2sci', 'exec', 'execstr', 'exists',
            'exit', 'exp', 'expm', 'external', 'extraction', 'eye', 'fac3d', 'factorial', 'factors', 'faurre', 'fchamp',
            'fcontour', 'fcontour2d', 'fec', 'fec_properties', 'feedback', 'feval', 'ffilt', 'fft', 'fft2', 'fftshift',
            'fgrayplot', 'figure', 'figure_properties', 'figure_style', 'file', 'fileinfo', 'fileparts', 'filter', 'find',
            'find_freq', 'find_path', 'findABCD', 'findAC', 'findBD', 'findBDK', 'findm', 'findmsvccompiler', 'findobj',
            'findR', 'findx0BD', 'firstnonsingleton', 'fit_dat', 'fix', 'floor', 'flts', 'foo', 'format',
            'formatman', 'fort', 'fourplan', 'fplot2d', 'fplot3d', 'fplot3d1', 'fprintf', 'fprintfMat', 'frep2tf',
            'freq', 'freson', 'frexp', 'frfit', 'frmag', 'fscanf', 'fscanfMat', 'fsfirlin', 'fsolve', 'fspecg',
            'fstabst', 'fstair', 'ftest', 'ftuneq', 'full', 'fullfile', 'fullrf', 'fullrfk', 'fun2string', 'Funcall',
            'funcprot', 'functions', 'funptr', 'fusee', 'G_make', 'g_margin', 'gainplot', 'gamitg',
            'gamma', 'gammaln', 'gca', 'gcare', 'gcd', 'gce', 'gcf', 'gda', 'gdf', 'gen_net', 'genfac3d', 'genlib',
            'genmarkov', 'geom3d', 'geomean', 'get', 'get_contents_infer', 'get_function_path', 'getcolor', 'getcwd',
            'getd', 'getdate', 'getenv', 'getf', 'getfield', 'getfont', 'gethistory', 'getio', 'getlinestyle',
            'getlongpathname', 'getmark', 'getmemory', 'getos', 'getpid', 'getscilabkeywords', 'getshell',
            'getshortpathname', 'getsymbol', 'getvalue', 'getversion', 'gfare', 'gfrancis', 'girth', 'givens',
            'glever', 'glist', 'global', 'GlobalProperty', 'glue', 'gmres', 'gpeche', 'gr_menu', 'graduate', 'grand',
            'graph_2_mat', 'graph_center', 'graph_complement', 'graph_diameter', 'graph_power', 'graph_simp', 'graph_sum',
            'graph_union', 'graphic', 'Graphics', 'graphics_entities', 'graph-list', 'graycolormap', 'grayplot',
            'grayplot_properties', 'graypolarplot', 'great', 'grep', 'group', 'gschur', 'gsort', 'gspec', 'gstacksize',
            'gtild', 'h_cl', 'h_inf', 'h_inf_st', 'h_norm', 'h2norm', 'halt', 'hamilton', 'hank', 'hankelsv', 'harmean',
            'hat', 'havewindow', 'head_comments', 'help', 'help_skeleton', 'hermit', 'hess', 'hex2dec', 'hilb', 'hinf',
            'hist3d', 'histplot', 'horner', 'host', 'hotcolormap', 'householder', 'hrmt', 'hsv2rgb', 'hsvcolormap',
            'htrianr', 'hypermat', 'hypermatrices', 'iconvert', 'ieee', 'ifft', 'iir', 'iirgroup', 'iirlp',
            'ilib_build', 'ilib_compile', 'ilib_for_link', 'ilib_gen_gateway', 'ilib_gen_loader', 'ilib_gen_Make',
            'im_inv', 'imag', 'impl', 'imrep2ss', 'imult', 'ind2sub', 'Infer', 'inistate', 'input', 'insertion', 'int',
            'int16', 'int2d', 'int32', 'int3d', 'int8', 'intc', 'intdec', 'integrate', 'interp', 'interp1', 'interp2d',
            'interp3d', 'interpln', 'intersci', 'intersect', 'intg', 'intl', 'intppty', 'intsplin', 'inttrap', 'inttype',
            'inv', 'inv_coeff', 'invr', 'invsyslin', 'iqr', 'is_connex', 'iscellstr', 'isdef', 'isdir', 'isempty',
            'isequal', 'isequalbitwise', 'iserror', 'isglobal', 'isinf', 'isnan', 'isoview', 'isreal', 'javasci',
            'jetcolormap', 'jmat', 'justify', 'kalm', 'karmarkar', 'kernel', 'keyboard', 'knapsack', 'kpure', 'krac2',
            'kron', 'kroneck', 'label_properties', 'labostat', 'LANGUAGE', 'lasterror', 'lattn', 'lattp', 'lcf', 'lcm',
            'lcmdiag', 'ldiv', 'ldivf', 'leastsq', 'left', 'legend', 'legend_properties', 'legendre', 'legends', 'length',
            'leqr', 'less', 'lev', 'levin', 'lex_sort', 'lft', 'lgfft', 'lib', 'lin', 'lin2mu', 'lindquist',
            'line_graph', 'linear_interpn', 'lines', 'LineSpec', 'linf', 'linfn', 'link', 'linmeq', 'linpro', 'linsolve',
            'linspace', 'listfiles', 'listvarinfile', 'lmisolver', 'lmitool', 'load', 'load_graph', 'loadhistory',
            'loadmatfile', 'loadplots', 'loadwave', 'locate', 'log', 'log10', 'log1p', 'log2', 'logm', 'logspace',
            'lotest', 'lqe', 'lqg', 'lqg_ltr', 'lqg2stan', 'lqr', 'ls', 'lsq', 'lsq_splin', 'lsqrsolve', 'lsslist',
            'lstcat', 'lstsize', 'ltitr', 'lu', 'ludel', 'lufact', 'luget', 'lusolve', 'lyap', 'm_circle', 'm2scideclare',
            'macglov', 'macr2lst', 'macr2tree', 'macro', 'macrovar', 'mad', 'make_graph', 'make_index', 'makecell', 'man',
            'manedit', 'mapsound', 'markp2ss', 'mat_2_graph', 'matfile2sci', 'Matlab-Scilab_character_strings', 'Matplot',
            'Matplot_properties', 'Matplot1', 'matrices', 'matrix', 'max', 'max_cap_path', 'max_clique', 'max_flow',
            'maxi', 'mcisendstring', 'mclearerr', 'mclose', 'mdelete', 'mean', 'meanf', 'median', 'menus', 'meof',
            'merror', 'mese', 'mesh', 'mesh2d', 'meshgrid', 'mfft', 'mfile2sci', 'mfprintf', 'mfscanf', 'mget', 'mgeti',
            'mgetl', 'mgetstr', 'milk_drop', 'min', 'min_lcost_cflow', 'min_lcost_flow1', 'min_lcost_flow2',
            'min_qcost_flow', 'min_weight_tree', 'mine', 'mini', 'minreal', 'minss', 'minus', 'mkdir', 'mlist', 'mode',
            'modulo', 'moment', 'mopen', 'move', 'mprintf', 'mps2linpro', 'mput', 'mputl', 'mputstr', 'mrfit', 'mscanf',
            'msd', 'mseek', 'msprintf', 'msscanf', 'mstr2sci', 'mtell', 'mtlb_0', 'mtlb_a', 'mtlb_all', 'mtlb_any',
            'mtlb_axis', 'mtlb_beta', 'mtlb_box', 'mtlb_close', 'mtlb_colordef', 'mtlb_conv', 'mtlb_cumprod', 'mtlb_cumsum',
            'mtlb_dec2hex', 'mtlb_delete', 'mtlb_diag', 'mtlb_diff', 'mtlb_dir', 'mtlb_double', 'mtlb_e', 'mtlb_echo',
            'mtlb_eig', 'mtlb_eval', 'mtlb_exist', 'mtlb_eye', 'mtlb_false', 'mtlb_fft', 'mtlb_fftshift', 'mtlb_find',
            'mtlb_findstr', 'mtlb_fliplr', 'mtlb_fopen', 'mtlb_format', 'mtlb_fprintf', 'mtlb_fread', 'mtlb_fscanf',
            'mtlb_full', 'mtlb_fwrite', 'mtlb_grid', 'mtlb_hold', 'mtlb_i', 'mtlb_ifft', 'mtlb_imp', 'mtlb_int16',
            'mtlb_int32', 'mtlb_int8', 'mtlb_is', 'mtlb_isa', 'mtlb_isfield', 'mtlb_isletter', 'mtlb_isspace', 'mtlb_l',
            'mtlb_legendre', 'mtlb_linspace', 'mtlb_load', 'mtlb_logic', 'mtlb_logical', 'mtlb_lower', 'mtlb_max',
            'mtlb_min', 'mtlb_mode', 'mtlb_more', 'mtlb_num2str', 'mtlb_ones', 'mtlb_plot', 'mtlb_prod', 'mtlb_rand',
            'mtlb_randn', 'mtlb_rcond', 'mtlb_realmax', 'mtlb_realmin', 'mtlb_repmat', 'mtlb_s', 'mtlb_save',
            'mtlb_setstr', 'mtlb_size', 'mtlb_sort', 'mtlb_sparse', 'mtlb_strcmp', 'mtlb_strcmpi', 'mtlb_strfind',
            'mtlb_strrep', 'mtlb_sum', 'mtlb_t', 'mtlb_toeplitz', 'mtlb_tril', 'mtlb_triu', 'mtlb_true', 'mtlb_uint16',
            'mtlb_uint32', 'mtlb_uint8', 'mtlb_upper', 'mtlb_zeros', 'mu2lin', 'mucomp', 'mulf', 'mvvacov', 'name2rgb',
            'names', 'nancumsum', 'nand2mean', 'nanmax', 'nanmean', 'nanmeanf', 'nanmedian', 'nanmin', 'nanstdev',
            'nansum', 'narsimul', 'NDcost', 'ndgrid', 'ndims', 'nearfloat', 'nehari', 'neighbors', 'netclose', 'netwindow',
            'netwindows', 'new', 'newaxes', 'newest', 'newfun', 'nextpow2', 'nf3d', 'nfreq', 'nlev', 'nnz', 'node_number',
            'nodes_2_path', 'nodes_degrees', 'noisegen', 'norm', 'not', 'null', 'number_properties', 'numdiff', 'numer',
            'nyquist', 'object_editor', 'obs_gram', 'obscont', 'obscont1', 'observer', 'obsv_mat', 'obsvss', 'ode',
            'ode_discrete', 'ode_optional_output', 'ode_root', 'odedc', 'odeoptions', 'oemtochar', 'old_style',
            'oldbesseli', 'oldbesselj', 'oldbesselk', 'oldbessely', 'oldload', 'oldplot', 'oldsave', 'ones',
            'Operation', 'optim', 'or', 'orth', 'overloading', 'p_margin', 'param3d', 'param3d_properties',
            'param3d1', 'paramfplot2d', 'parents', 'parrot', 'part', 'path_2_nodes', 'pathconvert', 'pause', 'pbig',
            'pca', 'pcg', 'pdiv', 'pen2ea', 'pencan', 'penlaur', 'percent', 'perctl', 'perfect_match', 'perl',
            'perms', 'permute', 'pertrans', 'pfss', 'phasemag', 'phc', 'pie', 'pinv', 'pipe_network', 'playsnd', 'plot',
            'plot_graph', 'plot2d', 'plot2d_old_version', 'plot2d1', 'plot2d2', 'plot2d3', 'plot2d4', 'plot3d',
            'plot3d_old_version', 'plot3d1', 'plot3d2', 'plot3d3', 'plotframe', 'plotprofile', 'plus', 'plzr',
            'pmodulo', 'pol2des', 'pol2str', 'pol2tex', 'polar', 'polarplot', 'polfact', 'poly', 'polyline_properties',
            'portr3d', 'portrait', 'power', 'ppol', 'prbs_a', 'predecessors', 'predef', 'print', 'printf',
            'printf_conversion', 'printing', 'printsetupbox', 'prod', 'profile', 'progressionbar', 'proj', 'projsl',
            'projspec', 'psmall', 'pspect', 'pvm', 'pvm_addhosts', 'pvm_barrier', 'pvm_bcast', 'pvm_bufinfo', 'pvm_config',
            'pvm_delhosts', 'pvm_error', 'pvm_exit', 'pvm_f772sci', 'pvm_get_timer', 'pvm_getinst', 'pvm_gettid',
            'pvm_gsize', 'pvm_halt', 'pvm_joingroup', 'pvm_kill', 'pvm_lvgroup', 'pvm_mytid', 'pvm_parent', 'pvm_probe',
            'pvm_recv', 'pvm_reduce', 'pvm_sci2f77', 'pvm_send', 'pvm_set_timer', 'pvm_spawn', 'pvm_spawn_independent',
            'pvm_start', 'pvm_tasks', 'pvm_tidtohost', 'pvmd3', 'pwd', 'qassign', 'qld', 'qmr', 'qr', 'quapro', 'quart',
            'quaskro', 'quit', 'quote', 'rand', 'randpencil', 'range', 'rank', 'rankqr', 'rat',  'rcond',
            'rdivf', 'read', 'read4b', 'readb', 'readc_', 'readmps', 'readxls', 'real', 'realtime', 'realtimeinit',
            'rectangle_properties', 'recur', 'reglin', 'regress', 'remez', 'remezb', 'repfreq', 'replot', 'resethistory',
            'residu', 'resume', 'return', 'rgb2name', 'ric_desc', 'ricc', 'riccati', 'rlist', 'rmdir', 'roots', 'rotate',
            'round', 'routh_t', 'rowcomp', 'rowcompr', 'rowinout', 'rowregul', 'rowshuff', 'rpem', 'rref', 'rtitr',
            'rubberbox', 'salesman', 'sample', 'samplef', 'samwr', 'save', 'save_format', 'save_graph', 'savehistory',
            'savematfile', 'savewave', 'sca', 'scaling', 'scanf', 'scanf_conversion', 'scf', 'schur', 'sci_files',
            'sci2exp', 'sci2for', 'sci2map', 'sciargs', 'SciComplex', 'SciComplexArray', 'SciDouble', 'SciDoubleArray',
            'scilab', 'Scilab', 'ScilabEval', 'scilink', 'scipad', 'SciString', 'SciStringArray', 'sd2sci', 'sda', 'sdf',
            'secto3d', 'segs_properties', 'semi', 'semicolon', 'semidef', 'sensi', 'set', 'set_posfig_dim',
            'setbpt', 'setdiff', 'setenv', 'seteventhandler', 'setfield', 'sethomedirectory', 'setlanguage', 'setmenu',
            'sfact', 'Sfgrayplot', 'Sgrayplot', 'sgrid', 'shortest_path', 'show_arcs', 'show_graph', 'show_nodes',
            'show_pixmap', 'showprofile', 'sident', 'sign', 'Signal', 'signm', 'simp', 'simp_mode', 'sin', 'sinc',
            'sincd', 'sinh', 'sinhm', 'sinm', 'size', 'slash', 'sleep', 'sm2des', 'sm2ss', 'smooth', 'solve',
            'sorder', 'sort', 'sound', 'soundsec', 'sp2adj', 'spaninter', 'spanplus', 'spantwo', 'spchol',
            'spcompack', 'spec', 'specfact', 'speye', 'spget', 'splin', 'splin2d', 'splin3d', 'split_edge', 'spones',
            'sprand', 'sprintf', 'spzeros', 'sqroot', 'sqrt', 'sqrtm', 'square', 'squarewave', 'srfaur', 'srkf', 'ss2des',
            'ss2ss', 'ss2tf', 'sscanf', 'sskf', 'ssprint', 'ssrand', 'st_deviation', 'st_ility', 'stabil', 'stacksize',
            'star', 'startup', 'stdev', 'stdevf', 'str2code', 'strange', 'strcat', 'strindex', 'string', 'stringbox',
            'strings', 'stripblanks', 'strong_con_nodes', 'strong_connex', 'strsplit', 'strsubst', 'struct', 'sub2ind',
            'subf', 'subgraph', 'subplot', 'successors', 'sum', 'supernode', 'surf', 'surface_properties', 'sva',
            'svd', 'svplot', 'sylm', 'sylv', 'symbols', 'sysconv', 'sysdiag', 'sysfact', 'syslin', 'syssize', 'system',
            'systems', 'systmat', 'tabul', 'tan', 'tangent', 'tanh', 'tanhm', 'tanm', 'TCL_CreateSlave', 'TCL_DeleteInterp',
            'TCL_EvalFile', 'TCL_EvalStr', 'TCL_ExistInterp', 'TCL_ExistVar', 'TCL_GetVar', 'TCL_GetVersion', 'TCL_SetVar',
            'TCL_UnsetVar', 'TCL_UpVar', 'tdinit', 'testmatrix', 'texprint', 'text_properties', 'tf2des', 'tf2ss', 'then',
            'thrownan', 'tic', 'tilda', 'time_id', 'timer', 'title', 'titlepage', 'TK_EvalFile', 'TK_EvalStr', 'tk_getdir',
            'tk_getfile', 'TK_GetVar', 'tk_savefile', 'TK_SetVar',  'toc', 'toeplitz', 'tohome', 'tokenpos',
            'tokens', 'toolbar', 'toprint', 'trace', 'trans', 'trans_closure', 'translatepaths', 'tree2code', 'trfmod',
            'trianfml', 'tril', 'trimmean', 'trisolve', 'triu', 'try', 'trzeros', 'twinkle', 'type', 'Type', 'typename',
            'typeof', 'ui_observer', 'uicontrol', 'uimenu', 'uint16', 'uint32', 'uint8', 'ulink', 'unglue', 'union',
            'unique', 'unix', 'unix_g', 'unix_s', 'unix_w', 'unix_x', 'unobs', 'unsetmenu', 'unzoom', 'user', 'varargin',
            'varargout', 'Variable', 'variance', 'variancef', 'varn', 'vectorfind', 'waitbar', 'warning', 'wavread',
            'wavwrite', 'wcenter', 'wfir', 'what', 'where', 'whereami', 'whereis', 'who', 'who_user', 'whos',
            'wiener', 'wigner', 'winclose', 'window', 'winlist', 'winopen', 'winqueryreg', 'winsid', 'with_atlas',
            'with_gtk', 'with_javasci', 'with_pvm', 'with_texmacs', 'with_tk', 'writb', 'write', 'write4b', 'x_choices',
            'x_choose', 'x_dialog', 'x_matrix', 'x_mdialog', 'x_message', 'x_message_modeless', 'xarc', 'xarcs', 'xarrows',
            'xaxis', 'xbasc', 'xbasimp', 'xbasr', 'xchange', 'xclea', 'xclear', 'xclick', 'xclip', 'xdel', 'xend',
            'xfarc', 'xfarcs', 'xfpoly', 'xfpolys', 'xfrect', 'xget', 'xgetech', 'xgetfile', 'xgetmouse', 'xgraduate',
            'xgrid', 'xinfo', 'xinit', 'xlfont', 'xload', 'xls_open', 'xls_read', 'xmltohtml', 'xname', 'xnumb', 'xpause',
            'xpoly', 'xpolys', 'xrect', 'xrects', 'xrpoly', 'xs2bmp', 'xs2emf', 'xs2eps', 'xs2fig', 'xs2gif', 'xs2ppm',
            'xs2ps', 'xsave', 'xsegs', 'xselect', 'xset', 'xsetech', 'xsetm', 'xstring', 'xstringb', 'xstringl', 'xtape',
            'xtitle', 'yulewalk', 'zeropen', 'zeros', 'zgrid', 'zoom_rect', 'zpbutt', 'zpch1', 'zpch2', 'zpell'
            )
        ),
    'SYMBOLS' => array(
        '<', '>', '=',
        '!', '@', '~', '&', '|',
        '+','-', '*', '/', '%',
        ',', ';', '?', ':', "'"
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => true,
        2 => true,
        3 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => '',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;',
            4 => 'color: #009999;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm',
        2 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm',
        3 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '->',
        2 => '::'
        ),
    'REGEXPS' => array(
        //Variable
        0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*',
        //File Descriptor
        4 => '<[a-zA-Z_][a-zA-Z0-9_]*>',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/pf.php0000664000175000017500000001266312014173420013306 0ustar  benbebenbe 'OpenBSD Packet Filter',
    'COMMENT_SINGLE' => array('#'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        1 => "/\\$\\{[^\\n\\}]*?\\}/i",
        2 => '/<<-?\s*?(\'?)([a-zA-Z0-9]+)\1\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
        3 => "/\\\\['\"]/siU"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("\'"),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        1 => "#\\\\[nfrtv\\$\\\"\n]#i",
        2 => "#\\$[a-z_][a-z0-9_]*#i",
        3 => "/\\$\\{[^\\n\\}]*?\\}/i",
        4 => "/\\$\\([^\\n\\)]*?\\)/i",
        5 => "/`[^`]*`/"
        ),
    'KEYWORDS' => array(
        1 => array(
            'pass'
        ),
        2 => array(
            'block'
            ),
        3 => array(
            'quick','keep','state','antispoof','table','persist','file','scrub',
            'set','skip','flags','on'
            ),
        4 => array(
            'in','out','proto'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`','='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #009900; font-weight: bold;',
            2 => 'color: #990000; font-weight: bold;',
            3 => 'color: #7a0874;',
            4 => 'color: #336699;'
            ),
        'COMMENTS' => array(
            0 => 'color: #666666; font-style: italic;',
            1 => 'color: #800000;',
            2 => 'color: #cc0000; font-style: italic;',
            3 => 'color: #000000; font-weight: bold;'
            ),
        'ESCAPE_CHAR' => array(
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #007800;',
            3 => 'color: #007800;',
            4 => 'color: #007800;',
            5 => 'color: #780078;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #7a0874; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #CC0000;',
            'HARD' => 'color: #CC0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff00cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #007800;',
            1 => 'color: #007800;',
            2 => 'color: #007800;',
            4 => 'color: #007800;',
            5 => 'color: #660033;',
            6 => 'color: #000099; font-weight: bold;',
            7 => 'color: #0000ff;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Variables (will be handled by comment_regexps)
        0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}",
        //Variables without braces
        1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*",
        //Variable assignment
        2 => "(? "\\$[*#\$\\-\\?!]",
        //Parameters of commands
        5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|$)",
        //IPs
        6 => "([0-9]{1,3}\.){3}[0-9]{1,3}",
        //Tables
        7 => "(<(.*)>)"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
    ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '$'
        ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?  "(?![\.\-a-zA-Z0-9_%\\/])"
        )
    )
);

?>geshi/geshi/genie.php0000664000175000017500000001232712014173434013772 0ustar  benbebenbe 'Genie',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Using and Namespace directives (basic support)
        //Please note that the alias syntax for using is not supported
        3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'HARDQUOTE' => array('@"', '"'),
    'HARDESCAPE' => array('""'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'and', 'as', 'abstract', 'break', 'case', 'cast', 'catch', 'const',
            'construct', 'continue', 'default', 'def', 'delete', 'div',
            'dynamic', 'do', 'downto', 'else', 'ensures', 'except', 'extern',
            'false', 'final', 'finally', 'for', 'foreach', 'get', 'if', 'in',
            'init', 'inline', 'internal', 'implements', 'lock', 'not', 'null',
            'of', 'or', 'otherwise', 'out', 'override', 'pass', 'raise',
            'raises', 'readonly', 'ref', 'requires', 'self', 'set', 'static',
            'super', 'switch', 'to', 'true', 'try', 'unless', 'uses', 'var', 'virtual',
            'volatile', 'void', 'when', 'while'
            ),
//        2 => array(
//            ),
        3 => array(
            'is', 'isa', 'new', 'owned', 'sizeof', 'typeof', 'unchecked',
            'unowned', 'weak'
            ),
        4 => array(
            'bool', 'byte', 'class', 'char', 'date', 'datetime', 'decimal', 'delegate',
            'double', 'enum', 'event', 'exception', 'float', 'int', 'interface',
            'long', 'object', 'prop', 'sbyte', 'short', 'single', 'string',
            'struct', 'ulong', 'ushort'
            ),
//        5 => array(
//            ),
        ),
    'SYMBOLS' => array(
        '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';',
        '(', ')', '{', '}', '[', ']', '|'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
//        2 => false,
        3 => false,
        4 => false,
//        5 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF;',
//            2 => 'color: #FF8000; font-weight: bold;',
            3 => 'color: #008000;',
            4 => 'color: #FF0000;',
//            5 => 'color: #000000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008080; font-style: italic;',
//            2 => 'color: #008080;',
            3 => 'color: #008080;',
            'MULTI' => 'color: #008080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008080; font-weight: bold;',
            'HARD' => 'color: #008080; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #666666;',
            'HARD' => 'color: #666666;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000FF;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
//        2 => '',
        3 => '',
        4 => '',
//        5 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])"
        )
    )
);

?>
geshi/geshi/sdlbasic.php0000664000175000017500000001720112014173442014462 0ustar  benbebenbe 'sdlBasic',
    'COMMENT_SINGLE' => array(1 => "'", 2 => "rem", 3 => "!", 4 => "#"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'const', 'option', 'explicit', 'qbasic', 'include', 'argc',
            'argv', 'command', 'command$', 'run', 'shell', 'os', 'declare',
            'sub', 'function', 'return', 'while', 'wend', 'exit', 'end',
            'continue', 'if', 'then', 'else', 'elseif',
            'select', 'case', 'for', 'each', 'step',
            'next', 'to', 'dim', 'shared', 'common', 'lbound', 'bound',
            'erase', 'asc', 'chr', 'chr$', 'insert', 'insert$', 'instr', 'lcase',
            'lcase$', 'left', 'left$', 'len', 'length', 'ltrim', 'ltrim$', 'mid',
            'mid$', 'replace', 'replace$', 'replacesubstr', 'replacesubstr$',
            'reverse', 'reverse$', 'right', 'right$', 'rinstr', 'rtrim', 'rtrim$',
            'space', 'space$', 'str', 'str$', 'strf', 'strf$', 'string', 'string$',
            'tally', 'trim', 'trim$', 'typeof', 'typeof$', 'ucase', 'ucase$', 'val',
            'abs', 'acos', 'andbit', 'asin', 'atan', 'bitwiseand', 'bitwiseor',
            'bitwisexor', 'cos', 'exp', 'fix', 'floor', 'frac', 'hex', 'hex$', 'int',
            'log', 'min', 'max', 'orbit', 'randomize', 'rnd', 'round', 'sgn', 'sin',
            'sqr', 'tan', 'xorbit', 'open', 'as', 'file', 'input', 'close', 'output',
            'append', 'eof', 'fileexists', 'filecopy', 'filemove', 'filerename',
            'freefile', 'kill', 'loc', 'lof', 'readbyte', 'rename', 'seek',
            'writebyte', 'chdir', 'dir', 'dir$', 'direxists', 'dirfirst', 'dirnext',
            'mkdir', 'rmdir', 'print', 'date', 'date$', 'time', 'time$', 'ticks',
            'data', 'read', 'reservebank', 'freebank', 'copybank', 'loadbank',
            'savebank', 'setbank', 'sizebank', 'poke', 'doke', 'loke', 'peek', 'deek',
            'leek', 'memcopy', 'setdisplay', 'setcaption', 'caption', 'displaywidth',
            'displayheight', 'displaybpp', 'screen', 'directscreen', 'screenopen',
            'screenclose', 'screenclone', 'screencopy', 'screenfade', 'screenfadein',
            'screencrossfade', 'screenalpha', 'screenlock', 'screenunlock',
            'screenrect', 'xscreenrect', 'yscreenrect', 'wscreenrect', 'hscreenrect',
            'flagscreenrect', 'screenwidth', 'screenheight', 'offset', 'xoffset',
            'yoffset', 'cls', 'screenswap', 'autoback', 'setautoback',
            'dualplayfield', 'waitvbl', 'fps', 'rgb', 'enablepalette', 'color',
            'palette', 'colorcycling', 'ink', 'point', 'dot', 'plot', 'line', 'box',
            'bar', 'circle', 'fillcircle', 'ellipse', 'fillellipse', 'paint',
            'loadimage', 'saveimage', 'loadsound', 'savesound', 'loadmusic',
            'hotspot', 'setcolorkey', 'imageexists', 'imagewidth', 'imageheight',
            'deleteimage', 'copyimage', 'setalpha', 'zoomimage', 'rotateimage',
            'rotozoomimage', 'blt', 'pastebob', 'pasteicon', 'grab', 'spriteclip',
            'sprite', 'deletesprite', 'xsprite', 'ysprite', 'spritewidth',
            'spriteheight', 'frsprite', 'livesprite', 'spritehit', 'autoupdatesprite',
            'updatesprite', 'setbob', 'bob', 'deletebob', 'xbob', 'ybob', 'bobwidth',
            'bobheight', 'frbob', 'livebob', 'bobhit', 'autoupdatebob', 'updatebob',
            'text', 'setfont', 'textrender', 'pen', 'paper', 'prints', 'locate',
            'atx', 'aty', 'curson', 'cursoff', 'inputs', 'zoneinputs',
            'isenabledsound', 'soundexists', 'deletesound', 'copysound',
            'musicexists', 'playsound', 'volumesound', 'stopsound', 'pausesound',
            'resumesound', 'vumetersound', 'positionsound', 'soundchannels',
            'playmusic', 'positionmusic', 'stopmusic', 'fademusic', 'pausemusic',
            'resumemusic', 'rewindmusic', 'volumemusic', 'speedmusic', 'numdrivescd',
            'namecd', 'getfreecd', 'opencd', 'indrivecd', 'trackscd', 'curtrackcd',
            'curframecd', 'playcd', 'playtrackscd',
            'pausecd', 'resumecd', 'stopcd', 'ejectcd', 'closecd', 'tracktypecd',
            'tracklengthcd', 'trackoffsetcd', 'key', 'inkey', 'waitkey', 'xmouse',
            'ymouse', 'xmousescreen', 'ymousescreen', 'bmouse', 'changemouse',
            'locatemouse', 'mouseshow', 'mousehide', 'mousezone', 'numjoysticks',
            'namejoystick', 'numaxesjoystick', 'numballsjoystick', 'numhatsjoystick',
            'numbuttonsjoystick', 'getaxisjoystick', 'gethatjoystick',
            'getbuttonjoystick', 'xgetballjoystick', 'ygetballjoystick', 'joy',
            'bjoy', 'wait', 'timer', 'isenabledsock', 'getfreesock', 'opensock',
            'acceptsock', 'isserverready', 'connectsock', 'connectionreadysock',
            'isclientready', 'losesock', 'peeksock', 'readsock', 'readbytesock',
            'readlinesock', 'writesock', 'writebytesock', 'writelinesock',
            'getremoteip', 'getremoteport', 'getlocalip'
            )
        ),
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;',
            2 => 'color: #808080;',
            3 => 'color: #808080;',
            4 => 'color: #808080;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #66cc66;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/gambas.php0000664000175000017500000002442612014173367014145 0ustar  benbebenbe 'GAMBAS',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        //keywords
        1 => array(
            'APPEND', 'AS', 'BREAK', 'BYREF', 'CASE', 'CATCH', 'CLASS', 'CLOSE', 'CONST', 'CONTINUE', 'COPY',
            'CREATE', 'DEBUG', 'DEC', 'DEFAULT', 'DIM', 'DO', 'EACH', 'ELSE', 'END', 'ENDIF', 'ERROR', 'EVENT', 'EXEC',
            'EXPORT', 'EXTERN', 'FALSE', 'FINALLY', 'FLUSH', 'FOR', 'FUNCTION', 'GOTO', 'IF', 'IN', 'INC', 'INHERITS',
            'INPUT', 'FROM', 'IS', 'KILL', 'LAST', 'LIBRARY', 'LIKE', 'LINE INPUT', 'LINK', 'LOCK', 'LOOP', 'ME',
            'MKDIR', 'MOVE', 'NEW', 'NEXT', 'NULL', 'OPEN', 'OPTIONAL', 'OUTPUT', 'PIPE', 'PRINT', 'PRIVATE',
            'PROCEDURE', 'PROPERTY', 'PUBLIC', 'QUIT', 'RAISE', 'RANDOMIZE', 'READ', 'REPEAT', 'RETURN', 'RMDIR',
            'SEEK', 'SELECT', 'SHELL', 'SLEEP', 'STATIC', 'STEP', 'STOP', 'SUB', 'SUPER', 'SWAP', 'THEN', 'TO',
            'TRUE', 'TRY', 'UNLOCK', 'UNTIL', 'WAIT', 'WATCH', 'WEND', 'WHILE', 'WITH', 'WRITE'
            ),
        //functions
        2 => array(
            'Abs', 'Access', 'Acos', 'Acosh', 'Alloc', 'Ang', 'Asc', 'ASin', 'ASinh', 'Asl', 'Asr', 'Assign', 'Atan',
            'ATan2', 'ATanh',
            'BChg', 'BClr', 'Bin', 'BSet', 'BTst',
            'CBool', 'Cbr', 'CByte', 'CDate', 'CFloat', 'Choose', 'Chr', 'CInt', 'CLong', 'Comp', 'Conv', 'Cos',
            'Cosh', 'CShort', 'CSng', 'CStr',
            'DateAdd', 'DateDiff', 'Day', 'DConv', 'Deg', 'DFree', 'Dir',
            'Eof', 'Eval', 'Exist', 'Exp', 'Exp10', 'Exp2', 'Expm',
            'Fix', 'Format', 'Frac', 'Free',
            'Hex', 'Hour', 'Hyp',
            'Iif', 'InStr', 'Int', 'IsAscii', 'IsBlank', 'IsBoolean', 'IsByte', 'IsDate', 'IsDigit', 'IsDir',
            'IsFloat', 'IsHexa', 'IsInteger', 'IsLCase', 'IsLetter', 'IsLong', 'IsNull', 'IsNumber', 'IsObject',
            'IsPunct', 'IsShort', 'IsSingle', 'IsSpace', 'IsString', 'IsUCase', 'IsVariant',
            'LCase', 'Left', 'Len', 'Lof', 'Log', 'Log10', 'Log2', 'Logp', 'Lsl', 'Lsr', 'LTrim',
            'Mag', 'Max', 'Mid', 'Min', 'Minute', 'Month', 'Now', 'Quote',
            'Rad', 'RDir', 'Realloc', 'Replace', 'Right', 'RInStr', 'Rnd', 'Rol', 'Ror', 'Round', 'RTrim',
            'Scan', 'SConv', 'Second', 'Seek', 'Sgn', 'Shl', 'Shr', 'Sin', 'Sinh', 'Space', 'Split', 'Sqr',
            'Stat', 'Str', 'StrPtr', 'Subst',
            'Tan', 'Tanh', 'Temp$', 'Time', 'Timer', 'Tr', 'Trim', 'TypeOf',
            'UCase', 'Unquote', 'Val', 'VarPtr', 'Week', 'WeekDay', 'Year'
            ),
        //string functions
        3 => array(
            'Bin$', 'Chr$', 'Conv$', 'DConv$', 'Format$', 'Hex$', 'LCase$', 'Left$', 'LTrim$', 'Mid$', 'Quote$',
            'Replace$', 'Right$', 'SConv$', 'Space$', 'Str$', 'String$', 'Subst$', 'Tr$', 'Trim$', 'UCase$',
            'Unquote$'
            ),
        //datatypes
        4 => array(
            'Boolean', 'Byte', 'Short', 'Integer', 'Long', 'Single', 'Float', 'Date', 'String', 'Variant', 'Object',
            'Pointer', 'File'
            ),
        //operators
        5 => array(
            'AND', 'DIV', 'MOD', 'NOT', 'OR', 'XOR'
            ),
        //objects/classes
        6 => array(
            'Application', 'Array', 'Byte[]', 'Collection', 'Component', 'Enum', 'Observer', 'Param', 'Process',
            'Stream', 'System', 'User', 'Chart', 'Compress', 'Crypt', 'Blob', 'Connection', 'DB', 'Database',
            'DatabaseUser', 'Field', 'Index', 'Result', 'ResultField', 'Table', 'DataBrowser', 'DataCombo',
            'DataControl', 'DataSource', 'DataView', 'Desktop', 'DesktopFile', 'Balloon', 'ColorButton',
            'ColorChooser', 'DateChooser', 'DirChooser', 'DirView', 'Expander', 'FileChooser', 'FileView',
            'FontChooser', 'InputBox', 'ListContainer', 'SidePanel', 'Stock', 'TableView', 'ToolPanel', 'ValueBox',
            'Wizard', 'Dialog', 'ToolBar', 'WorkSpace', 'DnsClient', 'SerialPort', 'ServerSocket', 'Socket',
            'UdpSocket', 'FtpClient', 'HttpClient', 'SmtpClient', 'Regexp', 'Action', 'Button', 'CheckBox',
            'ColumnView', 'ComboBox', 'Draw', 'Container', 'Control', 'Cursor', 'DrawingArea', 'Embedder',
            'Font', 'Form', 'Frame', 'GridView', 'HBox', 'HPanel', 'HSplit', 'IconView', 'Image', 'Key', 'Label',
            'Line', 'ListBox', 'ListView', 'Menu', 'Message', 'Mouse', 'MovieBox', 'Panel', 'Picture', 'PictureBox',
            'ProgressBar', 'RadioButton', 'ScrollBar', 'ScrollView', 'Separator', 'Slider', 'SpinBox', 'TabStrip',
            'TextArea', 'TextBox', 'TextLabel', 'ToggleButton', 'TrayIcon', 'TreeView', 'VBox', 'VPanel', 'VSplit',
            'Watcher', 'Window', 'Dial', 'Editor', 'LCDNumber', 'Printer', 'TextEdit', 'WebBrowser', 'GLarea',
            'Report', 'ReportCloner', 'ReportContainer', 'ReportControl', 'ReportDrawing', 'ReportField', 'ReportHBox',
            'ReportImage', 'ReportLabel', 'ReportSection', 'ReportSpecialField', 'ReportTextLabel', 'ReportVBox',
            'CDRom', 'Channel', 'Music', 'Sound', 'Settings', 'VideoDevice', 'Vb', 'CGI', 'HTML', 'Request', 'Response',
            'Session', 'XmlDocument', 'XmlNode', 'XmlReader', 'XmlReaderNodeType', 'XmlWriter', 'RpcArray', 'RpcClient',
            'RpcFunction', 'RpcServer', 'RpcStruct', 'RpcType', 'XmlRpc', 'Xslt'
            ),
        //constants
        7 => array(
            'Pi'
            ),
        ),
    'SYMBOLS' => array(
        '&', '&=', '&/', '*', '*=', '+', '+=', '-', '-=', '//', '/', '/=', '=', '==', '\\', '\\=',
        '^', '^=', '[', ']', '{', '}', '<', '>', '<>', '<=', '>='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF; font-weight: bold;',          // Keywords
            2 => 'color: #8B1433;',                             // Functions
            3 => 'color: #8B1433;',                             // String Functions
            4 => 'color: #0600FF;',                             // Data Types
            5 => 'color: #1E90FF;',                             // Operators
            6 => 'color: #0600FF;',                             // Objects/Components
            7 => 'color: #0600FF;'                              // Constants
            ),
        'COMMENTS' => array(
            1 => 'color: #1A5B1A; font-style: italic;',
            'MULTI' => 'color: #1A5B1A; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008080;'
            ),
        'BRACKETS' => array(
            0 => 'color: #612188;'
            ),
        'STRINGS' => array(
            0 => 'color: #7E4B05;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;',
            GESHI_NUMBER_INT_BASIC => 'color: #FF0000;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #6132B2;'
            ),
        'REGEXPS' => array(
            //3 => 'color: #8B1433;'  //fakes '$' colour matched by REGEXP
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://gambasdoc.org/help/lang/{FNAMEL}',
        2 => 'http://gambasdoc.org/help/lang/{FNAMEL}',
        3 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:http://gambasdoc.org/help/lang/&btnI=I%27m%20Feeling%20Lucky',
        4 => 'http://gambasdoc.org/help/lang/type/{FNAMEL}',
        5 => 'http://gambasdoc.org/help/lang/{FNAMEL}',
        6 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:http://gambasdoc.org/&btnI=I%27m%20Feeling%20Lucky',
        7 => 'http://gambasdoc.org/help/lang/{FNAMEL}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 =>'.'
        ),
    'REGEXPS' => array(
        //3 => "\\$(?!\\w)"   //matches '$' at the end of Keyword
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            2 => array(
                'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-&;\$])"
                )
            )
        )
);

?>geshi/geshi/bash.php0000664000175000017500000005173512014173432013624 0ustar  benbebenbe 'Bash',
    // Bash DOES have single line comments with # markers. But bash also has
    // the  $# variable, so comments need special handling (see sf.net
    // 1564839)
    'COMMENT_SINGLE' => array('#'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        //Variables
        1 => "/\\$\\{[^\\n\\}]*?\\}/i",
        //BASH-style Heredoc
        2 => '/<<-?\s*?(\'?)([a-zA-Z0-9]+)\1\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
        //Escaped String Starters
        3 => "/\\\\['\"]/siU",
        // Single-Line Shell usage: Hide the prompt at the beginning
        /* 4 => "/\A(?!#!)\s*(?>[\w:@\\/\\-\\._~]*[$#]\s?)?(?=[^\n]+\n?\Z)|^(?!#!)(\w+@)?[\w\\-\\.]+(:~?)[\w\\/\\-\\._]*?[$#]\s?/ms" */
        4 => "/\A(?!#!)(?:(?>[\w:@\\/\\-\\._~]*)[$#]\s?)(?=(?>[^\n]+)\n?\Z)|^(?!#!)(?:\w+@)?(?>[\w\\-\\.]+)(?>:~?[\w\\/\\-\\._]*?)?[$#]\s?/sm"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("\'"),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[nfrtv\\$\\\"\n]#i",
        // $var
        2 => "#\\$[a-z_][a-z0-9_]*#i",
        // ${...}
        3 => "/\\$\\{[^\\n\\}]*?\\}/i",
        // $(...)
        4 => "/\\$\\([^\\n\\)]*?\\)/i",
        // `...`
        5 => "/`[^`]*`/"
        ),
    'KEYWORDS' => array(
        1 => array(
            'case', 'do', 'done', 'elif', 'else', 'esac', 'fi', 'for', 'function',
            'if', 'in', 'select', 'set', 'then', 'until', 'while', 'time'
            ),
        2 => array(
            'aclocal', 'aconnect', 'apachectl', 'apache2ctl', 'aplay', 'apm',
            'apmsleep', 'apropos', 'apt-cache', 'apt-cdrom', 'apt-config',
            'apt-file', 'apt-ftparchive', 'apt-get', 'apt-key', 'apt-listbugs',
            'apt-listchanges', 'apt-mark', 'apt-mirror', 'apt-sortpkgs',
            'apt-src', 'apticron', 'aptitude', 'aptsh', 'apxs', 'apxs2', 'ar',
            'arch', 'arecord', 'as', 'as86', 'ash', 'autoconf', 'autoheader',
            'automake', 'awk',

            'apachectl start', 'apachectl stop', 'apachectl restart',
            'apachectl graceful', 'apachectl graceful-stop',
            'apachectl configtest', 'apachectl status', 'apachectl fullstatus',
            'apachectl help', 'apache2ctl start', 'apache2ctl stop',
            'apache2ctl restart', 'apache2ctl graceful',
            'apache2ctl graceful-stop', 'apache2ctl configtest',
            'apache2ctl status', 'apache2ctl fullstatus', 'apache2ctl help',

            'apt-cache add', 'apt-cache depends', 'apt-cache dotty',
            'apt-cache dump', 'apt-cache dumpavail', 'apt-cache gencaches',
            'apt-cache pkgnames', 'apt-cache policy', 'apt-cache rdepends',
            'apt-cache search', 'apt-cache show', 'apt-cache showauto',
            'apt-cache showpkg', 'apt-cache showsrc', 'apt-cache stats',
            'apt-cache unmet', 'apt-cache xvcg', 'apt-cdrom add',
            'apt-cdrom ident', 'apt-config dump', 'apt-config shell',
            'apt-file find', 'apt-file list', 'apt-file purge',
            'apt-file search', 'apt-file shot', 'apt-file update',
            'apt-get autoclean', 'apt-get autoremove', 'apt-get build-dep',
            'apt-get check', 'apt-get clean', 'apt-get dist-upgrade',
            'apt-get dselect-upgrade', 'apt-get install', 'apt-get markauto',
            'apt-get purge', 'apt-get remove', 'apt-get source',
            'apt-get unmarkauto', 'apt-get update', 'apt-get upgrade',
            'apt-key add', 'apt-key adv', 'apt-key del', 'apt-key export',
            'apt-key exportall', 'apt-key finger', 'apt-key list',
            'apt-key net-update', 'apt-key update', 'apt-listbugs apt',
            'apt-listbugs list', 'apt-listbugs rss', 'apt-src build',
            'apt-src clean', 'apt-src import', 'apt-src install',
            'apt-src list', 'apt-src location', 'apt-src name',
            'apt-src remove', 'apt-src update', 'apt-src upgrade',
            'apt-src version',

            'basename', 'bash', 'bc', 'bison', 'bunzip2', 'bzcat',
            'bzcmp', 'bzdiff', 'bzegrep', 'bzfgrep', 'bzgrep',
            'bzip2', 'bzip2recover', 'bzless', 'bzmore',

            'c++', 'cal', 'cat', 'chattr', 'cc', 'cdda2wav', 'cdparanoia',
            'cdrdao', 'cd-read', 'cdrecord', 'chfn', 'chgrp', 'chmod',
            'chown', 'chroot', 'chsh', 'chvt', 'clear', 'cmp', 'comm', 'co',
            'col', 'cp', 'cpio', 'cpp', 'csh', 'cut', 'cvs', 'cvs-pserver',

            'cvs add', 'cvs admin', 'cvs annotate', 'cvs checkout',
            'cvs commit', 'cvs diff', 'cvs edit', 'cvs editors', 'cvs export',
            'cvs history', 'cvs import', 'cvs init', 'cvs log', 'cvs login',
            'cvs logout', 'cvs ls', 'cvs pserver', 'cvs rannotate',
            'cvs rdiff', 'cvs release', 'cvs remove', 'cvs rlog', 'cvs rls',
            'cvs rtag', 'cvs server', 'cvs status', 'cvs tag', 'cvs unedit',
            'cvs update', 'cvs version', 'cvs watch', 'cvs watchers',

            'dash', 'date', 'dc', 'dch', 'dcop', 'dd', 'ddate', 'ddd',
            'deallocvt', 'debconf', 'defoma', 'depmod', 'df', 'dh',
            'dialog', 'diff', 'diff3', 'dig', 'dir', 'dircolors', 'directomatic',
            'dirname', 'dmesg', 'dnsdomainname', 'domainname', 'dpkg',
            'dselect', 'du', 'dumpkeys',

            'ed', 'egrep', 'env', 'expr',

            'false', 'fbset', 'fdisk', 'ffmpeg', 'fgconsole','fgrep', 'file',
            'find', 'flex', 'flex++', 'fmt', 'free', 'ftp', 'funzip', 'fuser',

            'g++', 'gawk', 'gc','gcc', 'gdb', 'getent', 'getkeycodes',
            'getopt', 'gettext', 'gettextize', 'gimp', 'gimp-remote',
            'gimptool', 'gmake', 'gocr', 'grep', 'groups', 'gs', 'gunzip',
            'gzexe', 'gzip',

            'git', 'git add', 'git add--interactive', 'git am', 'git annotate',
            'git apply', 'git archive', 'git bisect', 'git bisect--helper',
            'git blame', 'git branch', 'git bundle', 'git cat-file',
            'git check-attr', 'git checkout', 'git checkout-index',
            'git check-ref-format', 'git cherry', 'git cherry-pick',
            'git clean', 'git clone', 'git commit', 'git commit-tree',
            'git config', 'git count-objects', 'git daemon', 'git describe',
            'git diff', 'git diff-files', 'git diff-index', 'git difftool',
            'git difftool--helper', 'git diff-tree', 'git fast-export',
            'git fast-import', 'git fetch', 'git fetch-pack',
            'git filter-branch', 'git fmt-merge-msg', 'git for-each-ref',
            'git format-patch', 'git fsck', 'git fsck-objects', 'git gc',
            'git get-tar-commit-id', 'git grep', 'git hash-object', 'git help',
            'git http-backend', 'git http-fetch', 'git http-push',
            'git imap-send', 'git index-pack', 'git init', 'git init-db',
            'git instaweb', 'git log', 'git lost-found', 'git ls-files',
            'git ls-remote', 'git ls-tree', 'git mailinfo', 'git mailsplit',
            'git merge', 'git merge-base', 'git merge-file', 'git merge-index',
            'git merge-octopus', 'git merge-one-file', 'git merge-ours',
            'git merge-recursive', 'git merge-resolve', 'git merge-subtree',
            'git mergetool', 'git merge-tree', 'git mktag', 'git mktree',
            'git mv', 'git name-rev', 'git notes', 'git pack-objects',
            'git pack-redundant', 'git pack-refs', 'git patch-id',
            'git peek-remote', 'git prune', 'git prune-packed', 'git pull',
            'git push', 'git quiltimport', 'git read-tree', 'git rebase',
            'git rebase--interactive', 'git receive-pack', 'git reflog',
            'git relink', 'git remote', 'git remote-ftp', 'git remote-ftps',
            'git remote-http', 'git remote-https', 'git remote-testgit',
            'git repack', 'git replace', 'git repo-config', 'git request-pull',
            'git rerere', 'git reset', 'git revert', 'git rev-list',
            'git rev-parse', 'git rm', 'git send-pack', 'git shell',
            'git shortlog', 'git show', 'git show-branch', 'git show-index',
            'git show-ref', 'git stage', 'git stash', 'git status',
            'git stripspace', 'git submodule', 'git symbolic-ref', 'git tag',
            'git tar-tree', 'git unpack-file', 'git unpack-objects',
            'git update-index', 'git update-ref', 'git update-server-info',
            'git upload-archive', 'git upload-pack', 'git var',
            'git verify-pack', 'git verify-tag', 'git web--browse',
            'git whatchanged', 'git write-tree',

            'gitaction', 'git-add', 'git-add--interactive', 'git-am',
            'git-annotate', 'git-apply', 'git-archive', 'git-bisect',
            'git-bisect--helper', 'git-blame', 'git-branch', 'git-bundle',
            'git-cat-file', 'git-check-attr', 'git-checkout',
            'git-checkout-index', 'git-check-ref-format', 'git-cherry',
            'git-cherry-pick', 'git-clean', 'git-clone', 'git-commit',
            'git-commit-tree', 'git-config', 'git-count-objects', 'git-daemon',
            'git-describe', 'git-diff', 'git-diff-files', 'git-diff-index',
            'git-difftool', 'git-difftool--helper', 'git-diff-tree',
            'gitdpkgname', 'git-fast-export', 'git-fast-import', 'git-fetch',
            'git-fetch-pack', 'git-fetch--tool', 'git-filter-branch', 'gitfm',
            'git-fmt-merge-msg', 'git-for-each-ref', 'git-format-patch',
            'git-fsck', 'git-fsck-objects', 'git-gc', 'git-get-tar-commit-id',
            'git-grep', 'git-hash-object', 'git-help', 'git-http-fetch',
            'git-http-push', 'git-imap-send', 'git-index-pack', 'git-init',
            'git-init-db', 'git-instaweb', 'gitkeys', 'git-log',
            'git-lost-found', 'git-ls-files', 'git-ls-remote', 'git-ls-tree',
            'git-mailinfo', 'git-mailsplit', 'git-merge', 'git-merge-base',
            'git-merge-file', 'git-merge-index', 'git-merge-octopus',
            'git-merge-one-file', 'git-merge-ours', 'git-merge-recursive',
            'git-merge-resolve', 'git-merge-subtree', 'git-mergetool',
            'git-mergetool--lib', 'git-merge-tree', 'gitmkdirs', 'git-mktag',
            'git-mktree', 'gitmount', 'git-mv', 'git-name-rev',
            'git-pack-objects', 'git-pack-redundant', 'git-pack-refs',
            'git-parse-remote', 'git-patch-id', 'git-peek-remote', 'git-prune',
            'git-prune-packed', 'gitps', 'git-pull', 'git-push',
            'git-quiltimport', 'git-read-tree', 'git-rebase',
            'git-rebase--interactive', 'git-receive-pack', 'git-reflog',
            'gitregrep', 'git-relink', 'git-remote', 'git-repack',
            'git-repo-config', 'git-request-pull', 'git-rerere', 'git-reset',
            'git-revert', 'git-rev-list', 'git-rev-parse', 'gitrfgrep',
            'gitrgrep', 'git-rm', 'git-send-pack', 'git-shell', 'git-shortlog',
            'git-show', 'git-show-branch', 'git-show-index', 'git-show-ref',
            'git-sh-setup', 'git-stage', 'git-stash', 'git-status',
            'git-stripspace', 'git-submodule', 'git-svn', 'git-symbolic-ref',
            'git-tag', 'git-tar-tree', 'gitunpack', 'git-unpack-file',
            'git-unpack-objects', 'git-update-index', 'git-update-ref',
            'git-update-server-info', 'git-upload-archive', 'git-upload-pack',
            'git-var', 'git-verify-pack', 'git-verify-tag', 'gitview',
            'git-web--browse', 'git-whatchanged', 'gitwhich', 'gitwipe',
            'git-write-tree', 'gitxgrep',

            'head', 'hexdump', 'hostname',

            'id', 'ifconfig', 'ifdown', 'ifup', 'igawk', 'install',

            'ip', 'ip addr', 'ip addrlabel', 'ip link', 'ip maddr', 'ip mroute',
            'ip neigh', 'ip route', 'ip rule', 'ip tunnel', 'ip xfrm',

            'join',

            'kbd_mode','kbdrate', 'kdialog', 'kfile', 'kill', 'killall',

            'lame', 'last', 'lastb', 'ld', 'ld86', 'ldd', 'less', 'lex', 'link',
            'ln', 'loadkeys', 'loadunimap', 'locate', 'lockfile', 'login',
            'logname', 'lp', 'lpr', 'ls', 'lsattr', 'lsmod', 'lsmod.old',
            'lspci', 'ltrace', 'lynx',

            'm4', 'make', 'man', 'mapscrn', 'mesg', 'mkdir', 'mkfifo',
            'mknod', 'mktemp', 'more', 'mount', 'mplayer', 'msgfmt', 'mv',

            'namei', 'nano', 'nasm', 'nawk', 'netstat', 'nice',
            'nisdomainname', 'nl', 'nm', 'nm86', 'nmap', 'nohup', 'nop',

            'od', 'openvt',

            'passwd', 'patch', 'pcregrep', 'pcretest', 'perl', 'perror',
            'pgawk', 'pidof', 'ping', 'pr', 'procmail', 'prune', 'ps', 'pstree',
            'ps2ascii', 'ps2epsi', 'ps2frag', 'ps2pdf', 'ps2ps', 'psbook',
            'psmerge', 'psnup', 'psresize', 'psselect', 'pstops',

            'rbash', 'rcs', 'rcs2log', 'read', 'readlink', 'red', 'resizecons',
            'rev', 'rm', 'rmdir', 'rsh', 'run-parts',

            'sash', 'scp', 'screen', 'sed', 'seq', 'sendmail', 'setfont',
            'setkeycodes', 'setleds', 'setmetamode', 'setserial', 'setterm',
            'sh', 'showkey', 'shred', 'size', 'size86', 'skill', 'sleep',
            'slogin', 'snice', 'sort', 'sox', 'split', 'ssed', 'ssh', 'ssh-add',
            'ssh-agent', 'ssh-keygen', 'ssh-keyscan', 'stat', 'strace',
            'strings', 'strip', 'stty', 'su', 'sudo', 'suidperl', 'sum', 'svn',
            'svnadmin', 'svndumpfilter', 'svnlook', 'svnmerge', 'svnmucc',
            'svnserve', 'svnshell', 'svnsync', 'svnversion', 'svnwrap', 'sync',

            'svn add', 'svn ann', 'svn annotate', 'svn blame', 'svn cat',
            'svn changelist', 'svn checkout', 'svn ci', 'svn cl', 'svn cleanup',
            'svn co', 'svn commit', 'svn copy', 'svn cp', 'svn del',
            'svn delete', 'svn di', 'svn diff', 'svn export', 'svn h',
            'svn help', 'svn import', 'svn info', 'svn list', 'svn lock',
            'svn log', 'svn ls', 'svn merge', 'svn mergeinfo', 'svn mkdir',
            'svn move', 'svn mv', 'svn pd', 'svn pdel', 'svn pe', 'svn pedit',
            'svn pg', 'svn pget', 'svn pl', 'svn plist', 'svn praise',
            'svn propdel', 'svn propedit', 'svn propget', 'svn proplist',
            'svn propset', 'svn ps', 'svn pset', 'svn remove', 'svn ren',
            'svn rename', 'svn resolve', 'svn resolved', 'svn revert', 'svn rm',
            'svn st', 'svn stat', 'svn status', 'svn sw', 'svn switch',
            'svn unlock', 'svn up', 'svn update',

            'tac', 'tail', 'tar', 'tee', 'tempfile', 'touch', 'tr', 'tree',
            'true',

            'umount', 'uname', 'unicode_start', 'unicode_stop', 'uniq',
            'unlink', 'unzip', 'updatedb', 'updmap', 'uptime', 'users',
            'utmpdump', 'uuidgen',

            'valgrind', 'vdir', 'vi', 'vim', 'vmstat',

            'w', 'wall', 'watch', 'wc', 'wget', 'whatis', 'whereis',
            'which', 'whiptail', 'who', 'whoami', 'whois', 'wine', 'wineboot',
            'winebuild', 'winecfg', 'wineconsole', 'winedbg', 'winedump',
            'winefile', 'wodim', 'write',

            'xargs', 'xhost', 'xmodmap', 'xset',

            'yacc', 'yes', 'ypdomainname', 'yum',

            'yum check-update', 'yum clean', 'yum deplist', 'yum erase',
            'yum groupinfo', 'yum groupinstall', 'yum grouplist',
            'yum groupremove', 'yum groupupdate', 'yum info', 'yum install',
            'yum list', 'yum localinstall', 'yum localupdate', 'yum makecache',
            'yum provides', 'yum remove', 'yum resolvedep', 'yum search',
            'yum shell', 'yum update', 'yum upgrade', 'yum whatprovides',

            'zcat', 'zcmp', 'zdiff', 'zdump', 'zegrep', 'zfgrep', 'zforce',
            'zgrep', 'zip', 'zipgrep', 'zipinfo', 'zless', 'zmore', 'znew',
            'zsh', 'zsoelim'
            ),
        3 => array(
            'alias', 'bg', 'bind', 'break', 'builtin', 'cd', 'command',
            'compgen', 'complete', 'continue', 'declare', 'dirs', 'disown',
            'echo', 'enable', 'eval', 'exec', 'exit', 'export', 'fc',
            'fg', 'getopts', 'hash', 'help', 'history', 'jobs', 'let',
            'local', 'logout', 'popd', 'printf', 'pushd', 'pwd', 'readonly',
            'return', 'shift', 'shopt', 'source', 'suspend', 'test', 'times',
            'trap', 'type', 'typeset', 'ulimit', 'umask', 'unalias', 'unset',
            'wait'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #c20cb9; font-weight: bold;',
            3 => 'color: #7a0874; font-weight: bold;'
            ),
        'COMMENTS' => array(
            0 => 'color: #666666; font-style: italic;',
            1 => 'color: #800000;',
            2 => 'color: #cc0000; font-style: italic;',
            3 => 'color: #000000; font-weight: bold;',
            4 => 'color: #666666;'
            ),
        'ESCAPE_CHAR' => array(
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #007800;',
            3 => 'color: #007800;',
            4 => 'color: #007800;',
            5 => 'color: #780078;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #7a0874; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #007800;',
            1 => 'color: #007800;',
            2 => 'color: #007800;',
            4 => 'color: #007800;',
            5 => 'color: #660033;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Variables (will be handled by comment_regexps)
        0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}",
        //Variables without braces
        1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*",
        //Variable assignment
        2 => "(? "\\$[*#\$\\-\\?!\d]",
        //Parameters of commands
        5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|<(?:SEMI|PIPE)>|$)"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '$'
        ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?  "(?![\.\-a-zA-Z0-9_%=\\/:])",
            2 => array(
                'SPACE_AS_WHITESPACE' => false
                )
            )
        )
);

?>geshi/geshi/javascript.php0000664000175000017500000001313512014173371015047 0ustar  benbebenbe 'Javascript',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Regular Expressions
        2 => "/(?<=[\\s^])(s|tr|y)\\/(?!\*)(?!\s)(?:\\\\.|(?!\n)[^\\/\\\\])+(? GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            //reserved/keywords; also some non-reserved keywords
            'break','case','catch','const','continue',
            'default','delete','do',
            'else',
            'finally','for','function',
            'get','goto',
            'if','in','instanceof',
            'new',
            'prototype',
            'return',
            'set','static','switch',
            'this','throw','try','typeof',
            'var','void'
            ),
        2 => array(
            //reserved/non-keywords; metaconstants
            'false','null','true','undefined','NaN','Infinity'
            ),
        3 => array(
            //magic properties/functions
            '__proto__','__defineGetter__','__defineSetter__','hasOwnProperty','hasProperty'
            ),
        4 => array(
            //type constructors
            'Object', 'Function', 'Date', 'Math', 'String', 'Number', 'Boolean', 'Array'
            ),
        5 => array(
            //reserved, but invalid in language
            'abstract','boolean','byte','char','class','debugger','double','enum','export','extends',
            'final','float','implements','import','int','interface','long','native',
            'short','super','synchronized','throws','transient','volatile'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}',
        '+', '-', '*', '/', '%',
        '!', '@', '&', '|', '^',
        '<', '>', '=',
        ',', ';', '?', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000066; font-weight: bold;',
            2 => 'color: #003366; font-weight: bold;',
            3 => 'color: #000066;',
            5 => 'color: #FF0000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #006600; font-style: italic;',
            2 => 'color: #009966; font-style: italic;',
            'MULTI' => 'color: #006600; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #3366CC;'
            ),
        'NUMBERS' => array(
            0 => 'color: #CC0000;'
            ),
        'METHODS' => array(
            1 => 'color: #660066;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
    ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            ''
            ),
        1 => array(
            ''
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true
        )
);

?>geshi/geshi/basic4gl.php0000664000175000017500000007546312014173375014411 0ustar  benbebenbe 'Basic4GL',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(

            // Navy Blue Bold Keywords

            'true','rnd_max','m_pi','m_e','false','VK_ZOOM','VK_UP','VK_TAB','VK_SUBTRACT','VK_SPACE','VK_SNAPSHOT',
            'VK_SHIFT','VK_SEPARATOR','VK_SELECT','VK_SCROLL','VK_RWIN','VK_RSHIFT','VK_RMENU','VK_RIGHT','VK_RETURN',
            'VK_RCONTROL','VK_RBUTTON','VK_PROCESSKEY','VK_PRIOR','VK_PRINT','VK_PLAY','VK_PAUSE','VK_NUMPAD9','VK_NUMPAD8',
            'VK_NUMPAD7','VK_NUMPAD6','VK_NUMPAD5','VK_NUMPAD4','VK_NUMPAD3','VK_NUMPAD2','VK_NUMPAD1','VK_NUMPAD0',
            'VK_NUMLOCK','VK_NONCONVERT','VK_NEXT','VK_MULTIPLY','VK_MODECHANGE','VK_MENU','VK_MBUTTON','VK_LWIN',
            'VK_LSHIFT','VK_LMENU','VK_LEFT','VK_LCONTROL','VK_LBUTTON','VK_KANJI','VK_KANA','VK_JUNJA','VK_INSERT',
            'VK_HOME','VK_HELP','VK_HANJA','VK_HANGUL','VK_HANGEUL','VK_FINAL','VK_F9','VK_F8','VK_F7','VK_F6','VK_F5',
            'VK_F4','VK_F3','VK_F24','VK_F23','VK_F22','VK_F21','VK_F20','VK_F2','VK_F19','VK_F18','VK_F17','VK_F16',
            'VK_F15','VK_F14','VK_F13','VK_F12','VK_F11','VK_F10','VK_F1','VK_EXSEL','VK_EXECUTE','VK_ESCAPE','VK_EREOF',
            'VK_END','VK_DOWN','VK_DIVIDE','VK_DELETE','VK_DECIMAL','VK_CRSEL','VK_CONVERT','VK_CONTROL','VK_CLEAR',
            'VK_CAPITAL','VK_CANCEL','VK_BACK','VK_ATTN','VK_APPS','VK_ADD','VK_ACCEPT','TEXT_SIMPLE','TEXT_OVERLAID',
            'TEXT_BUFFERED','SPR_TILEMAP','SPR_SPRITE','SPR_INVALID','MOUSE_RBUTTON','MOUSE_MBUTTON','MOUSE_LBUTTON',
            'GL_ZOOM_Y','GL_ZOOM_X','GL_ZERO','GL_XOR','GL_WIN_swap_hint','GL_WIN_draw_range_elements','GL_VIEWPORT_BIT',
            'GL_VIEWPORT','GL_VERTEX_ARRAY_TYPE_EXT','GL_VERTEX_ARRAY_TYPE','GL_VERTEX_ARRAY_STRIDE_EXT','GL_VERTEX_ARRAY_STRIDE',
            'GL_VERTEX_ARRAY_SIZE_EXT','GL_VERTEX_ARRAY_SIZE','GL_VERTEX_ARRAY_POINTER_EXT','GL_VERTEX_ARRAY_POINTER',
            'GL_VERTEX_ARRAY_EXT','GL_VERTEX_ARRAY_COUNT_EXT','GL_VERTEX_ARRAY','GL_VERSION_1_1','GL_VERSION','GL_VENDOR',
            'GL_V3F','GL_V2F','GL_UNSIGNED_SHORT','GL_UNSIGNED_INT','GL_UNSIGNED_BYTE','GL_UNPACK_SWAP_BYTES','GL_UNPACK_SKIP_ROWS',
            'GL_UNPACK_SKIP_PIXELS','GL_UNPACK_ROW_LENGTH','GL_UNPACK_LSB_FIRST','GL_UNPACK_ALIGNMENT','GL_TRUE','GL_TRIANGLE_STRIP',
            'GL_TRIANGLE_FAN','GL_TRIANGLES','GL_TRANSFORM_BIT','GL_TEXTURE_WRAP_T','GL_TEXTURE_WRAP_S','GL_TEXTURE_WIDTH',
            'GL_TEXTURE_STACK_DEPTH','GL_TEXTURE_RESIDENT','GL_TEXTURE_RED_SIZE','GL_TEXTURE_PRIORITY','GL_TEXTURE_MIN_FILTER',
            'GL_TEXTURE_MATRIX','GL_TEXTURE_MAG_FILTER','GL_TEXTURE_LUMINANCE_SIZE','GL_TEXTURE_INTERNAL_FORMAT','GL_TEXTURE_INTENSITY_SIZE',
            'GL_TEXTURE_HEIGHT','GL_TEXTURE_GREEN_SIZE','GL_TEXTURE_GEN_T','GL_TEXTURE_GEN_S','GL_TEXTURE_GEN_R','GL_TEXTURE_GEN_Q',
            'GL_TEXTURE_GEN_MODE','GL_TEXTURE_ENV_MODE','GL_TEXTURE_ENV_COLOR','GL_TEXTURE_ENV','GL_TEXTURE_COORD_ARRAY_TYPE_EXT',
            'GL_TEXTURE_COORD_ARRAY_TYPE','GL_TEXTURE_COORD_ARRAY_STRIDE_EXT','GL_TEXTURE_COORD_ARRAY_STRIDE','GL_TEXTURE_COORD_ARRAY_SIZE_EXT',
            'GL_TEXTURE_COORD_ARRAY_SIZE','GL_TEXTURE_COORD_ARRAY_POINTER_EXT','GL_TEXTURE_COORD_ARRAY_POINTER','GL_TEXTURE_COORD_ARRAY_EXT',
            'GL_TEXTURE_COORD_ARRAY_COUNT_EXT','GL_TEXTURE_COORD_ARRAY','GL_TEXTURE_COMPONENTS','GL_TEXTURE_BORDER_COLOR','GL_TEXTURE_BORDER',
            'GL_TEXTURE_BLUE_SIZE','GL_TEXTURE_BIT','GL_TEXTURE_BINDING_2D','GL_TEXTURE_BINDING_1D','GL_TEXTURE_ALPHA_SIZE',
            'GL_TEXTURE_2D','GL_TEXTURE_1D','GL_TEXTURE9_ARB','GL_TEXTURE9','GL_TEXTURE8_ARB','GL_TEXTURE8','GL_TEXTURE7_ARB',
            'GL_TEXTURE7','GL_TEXTURE6_ARB','GL_TEXTURE6','GL_TEXTURE5_ARB','GL_TEXTURE5','GL_TEXTURE4_ARB','GL_TEXTURE4',
            'GL_TEXTURE3_ARB','GL_TEXTURE31_ARB','GL_TEXTURE31','GL_TEXTURE30_ARB','GL_TEXTURE30','GL_TEXTURE3','GL_TEXTURE2_ARB',
            'GL_TEXTURE29_ARB','GL_TEXTURE29','GL_TEXTURE28_ARB','GL_TEXTURE28','GL_TEXTURE27_ARB','GL_TEXTURE27','GL_TEXTURE26_ARB',
            'GL_TEXTURE26','GL_TEXTURE25_ARB','GL_TEXTURE25','GL_TEXTURE24_ARB','GL_TEXTURE24','GL_TEXTURE23_ARB','GL_TEXTURE23',
            'GL_TEXTURE22_ARB','GL_TEXTURE22','GL_TEXTURE21_ARB','GL_TEXTURE21','GL_TEXTURE20_ARB','GL_TEXTURE20','GL_TEXTURE2',
            'GL_TEXTURE1_ARB','GL_TEXTURE19_ARB','GL_TEXTURE19','GL_TEXTURE18_ARB','GL_TEXTURE18','GL_TEXTURE17_ARB',
            'GL_TEXTURE17','GL_TEXTURE16_ARB','GL_TEXTURE16','GL_TEXTURE15_ARB','GL_TEXTURE15','GL_TEXTURE14_ARB','GL_TEXTURE14',
            'GL_TEXTURE13_ARB','GL_TEXTURE13','GL_TEXTURE12_ARB','GL_TEXTURE12','GL_TEXTURE11_ARB','GL_TEXTURE11','GL_TEXTURE10_ARB',
            'GL_TEXTURE10','GL_TEXTURE1','GL_TEXTURE0_ARB','GL_TEXTURE0','GL_TEXTURE','GL_T4F_V4F','GL_T4F_C4F_N3F_V4F','GL_T2F_V3F',
            'GL_T2F_N3F_V3F','GL_T2F_C4UB_V3F','GL_T2F_C4F_N3F_V3F','GL_T2F_C3F_V3F','GL_T','GL_SUBPIXEL_BITS','GL_STEREO',
            'GL_STENCIL_WRITEMASK','GL_STENCIL_VALUE_MASK','GL_STENCIL_TEST','GL_STENCIL_REF','GL_STENCIL_PASS_DEPTH_PASS',
            'GL_STENCIL_PASS_DEPTH_FAIL','GL_STENCIL_INDEX','GL_STENCIL_FUNC','GL_STENCIL_FAIL','GL_STENCIL_CLEAR_VALUE',
            'GL_STENCIL_BUFFER_BIT','GL_STENCIL_BITS','GL_STENCIL','GL_STACK_UNDERFLOW','GL_STACK_OVERFLOW','GL_SRC_COLOR',
            'GL_SRC_ALPHA_SATURATE','GL_SRC_ALPHA','GL_SPOT_EXPONENT','GL_SPOT_DIRECTION','GL_SPOT_CUTOFF','GL_SPHERE_MAP',
            'GL_SPECULAR','GL_SOURCE2_RGB_EXT','GL_SOURCE2_RGB','GL_SOURCE2_ALPHA_EXT','GL_SOURCE2_ALPHA','GL_SOURCE1_RGB_EXT',
            'GL_SOURCE1_RGB','GL_SOURCE1_ALPHA_EXT','GL_SOURCE1_ALPHA','GL_SOURCE0_RGB_EXT','GL_SOURCE0_RGB','GL_SOURCE0_ALPHA_EXT',
            'GL_SOURCE0_ALPHA','GL_SMOOTH','GL_SHORT','GL_SHININESS','GL_SHADE_MODEL','GL_SET','GL_SELECTION_BUFFER_SIZE',
            'GL_SELECTION_BUFFER_POINTER','GL_SELECT','GL_SCISSOR_TEST','GL_SCISSOR_BOX','GL_SCISSOR_BIT','GL_S','GL_RIGHT',
            'GL_RGB_SCALE_EXT','GL_RGB_SCALE','GL_RGBA_MODE','GL_RGBA8','GL_RGBA4','GL_RGBA2','GL_RGBA16','GL_RGBA12','GL_RGBA',
            'GL_RGB8','GL_RGB5_A1','GL_RGB5','GL_RGB4','GL_RGB16','GL_RGB12','GL_RGB10_A2','GL_RGB10','GL_RGB','GL_RETURN',
            'GL_REPLACE','GL_REPEAT','GL_RENDER_MODE','GL_RENDERER','GL_RENDER','GL_RED_SCALE','GL_RED_BITS','GL_RED_BIAS',
            'GL_RED','GL_READ_BUFFER','GL_R3_G3_B2','GL_R','GL_QUAD_STRIP','GL_QUADS','GL_QUADRATIC_ATTENUATION','GL_Q',
            'GL_PROXY_TEXTURE_2D','GL_PROXY_TEXTURE_1D','GL_PROJECTION_STACK_DEPTH','GL_PROJECTION_MATRIX','GL_PROJECTION',
            'GL_PRIMARY_COLOR_EXT','GL_PRIMARY_COLOR','GL_PREVIOUS_EXT','GL_PREVIOUS','GL_POSITION','GL_POLYGON_TOKEN',
            'GL_POLYGON_STIPPLE_BIT','GL_POLYGON_STIPPLE','GL_POLYGON_SMOOTH_HINT','GL_POLYGON_SMOOTH','GL_POLYGON_OFFSET_UNITS',
            'GL_POLYGON_OFFSET_POINT','GL_POLYGON_OFFSET_LINE','GL_POLYGON_OFFSET_FILL','GL_POLYGON_OFFSET_FACTOR','GL_POLYGON_MODE',
            'GL_POLYGON_BIT','GL_POLYGON','GL_POINT_TOKEN','GL_POINT_SMOOTH_HINT','GL_POINT_SMOOTH','GL_POINT_SIZE_RANGE',
            'GL_POINT_SIZE_GRANULARITY','GL_POINT_SIZE','GL_POINT_BIT','GL_POINTS','GL_POINT','GL_PIXEL_MODE_BIT',
            'GL_PIXEL_MAP_S_TO_S_SIZE','GL_PIXEL_MAP_S_TO_S','GL_PIXEL_MAP_R_TO_R_SIZE','GL_PIXEL_MAP_R_TO_R','GL_PIXEL_MAP_I_TO_R_SIZE',
            'GL_PIXEL_MAP_I_TO_R','GL_PIXEL_MAP_I_TO_I_SIZE','GL_PIXEL_MAP_I_TO_I','GL_PIXEL_MAP_I_TO_G_SIZE','GL_PIXEL_MAP_I_TO_G',
            'GL_PIXEL_MAP_I_TO_B_SIZE','GL_PIXEL_MAP_I_TO_B','GL_PIXEL_MAP_I_TO_A_SIZE','GL_PIXEL_MAP_I_TO_A','GL_PIXEL_MAP_G_TO_G_SIZE',
            'GL_PIXEL_MAP_G_TO_G','GL_PIXEL_MAP_B_TO_B_SIZE','GL_PIXEL_MAP_B_TO_B','GL_PIXEL_MAP_A_TO_A_SIZE','GL_PIXEL_MAP_A_TO_A',
            'GL_PHONG_WIN','GL_PHONG_HINT_WIN','GL_PERSPECTIVE_CORRECTION_HINT','GL_PASS_THROUGH_TOKEN','GL_PACK_SWAP_BYTES',
            'GL_PACK_SKIP_ROWS','GL_PACK_SKIP_PIXELS','GL_PACK_ROW_LENGTH','GL_PACK_LSB_FIRST','GL_PACK_ALIGNMENT','GL_OUT_OF_MEMORY',
            'GL_OR_REVERSE','GL_OR_INVERTED','GL_ORDER','GL_OR','GL_OPERAND2_RGB_EXT','GL_OPERAND2_RGB','GL_OPERAND2_ALPHA_EXT',
            'GL_OPERAND2_ALPHA','GL_OPERAND1_RGB_EXT','GL_OPERAND1_RGB','GL_OPERAND1_ALPHA_EXT','GL_OPERAND1_ALPHA','GL_OPERAND0_RGB_EXT',
            'GL_OPERAND0_RGB','GL_OPERAND0_ALPHA_EXT','GL_OPERAND0_ALPHA','GL_ONE_MINUS_SRC_COLOR','GL_ONE_MINUS_SRC_ALPHA',
            'GL_ONE_MINUS_DST_COLOR','GL_ONE_MINUS_DST_ALPHA','GL_ONE','GL_OBJECT_PLANE','GL_OBJECT_LINEAR','GL_NO_ERROR',
            'GL_NOTEQUAL','GL_NORMAL_ARRAY_TYPE_EXT','GL_NORMAL_ARRAY_TYPE','GL_NORMAL_ARRAY_STRIDE_EXT','GL_NORMAL_ARRAY_STRIDE',
            'GL_NORMAL_ARRAY_POINTER_EXT','GL_NORMAL_ARRAY_POINTER','GL_NORMAL_ARRAY_EXT','GL_NORMAL_ARRAY_COUNT_EXT',
            'GL_NORMAL_ARRAY','GL_NORMALIZE','GL_NOR','GL_NOOP','GL_NONE','GL_NICEST','GL_NEVER','GL_NEAREST_MIPMAP_NEAREST','GL_NEAREST_MIPMAP_LINEAR',
            'GL_NEAREST','GL_NAND','GL_NAME_STACK_DEPTH','GL_N3F_V3F','GL_MULT','GL_MODULATE','GL_MODELVIEW_STACK_DEPTH','GL_MODELVIEW_MATRIX',
            'GL_MODELVIEW','GL_MAX_VIEWPORT_DIMS','GL_MAX_TEXTURE_UNITS_ARB','GL_MAX_TEXTURE_UNITS','GL_MAX_TEXTURE_STACK_DEPTH',
            'GL_MAX_TEXTURE_SIZE','GL_MAX_PROJECTION_STACK_DEPTH','GL_MAX_PIXEL_MAP_TABLE','GL_MAX_NAME_STACK_DEPTH','GL_MAX_MODELVIEW_STACK_DEPTH',
            'GL_MAX_LIST_NESTING','GL_MAX_LIGHTS','GL_MAX_EVAL_ORDER','GL_MAX_ELEMENTS_VERTICES_WIN','GL_MAX_ELEMENTS_INDICES_WIN',
            'GL_MAX_CLIP_PLANES','GL_MAX_CLIENT_ATTRIB_STACK_DEPTH','GL_MAX_ATTRIB_STACK_DEPTH','GL_MATRIX_MODE','GL_MAP_STENCIL',
            'GL_MAP_COLOR','GL_MAP2_VERTEX_4','GL_MAP2_VERTEX_3','GL_MAP2_TEXTURE_COORD_4','GL_MAP2_TEXTURE_COORD_3','GL_MAP2_TEXTURE_COORD_2',
            'GL_MAP2_TEXTURE_COORD_1','GL_MAP2_NORMAL','GL_MAP2_INDEX','GL_MAP2_GRID_SEGMENTS','GL_MAP2_GRID_DOMAIN','GL_MAP2_COLOR_4',
            'GL_MAP1_VERTEX_4','GL_MAP1_VERTEX_3','GL_MAP1_TEXTURE_COORD_4','GL_MAP1_TEXTURE_COORD_3','GL_MAP1_TEXTURE_COORD_2',
            'GL_MAP1_TEXTURE_COORD_1','GL_MAP1_NORMAL','GL_MAP1_INDEX','GL_MAP1_GRID_SEGMENTS','GL_MAP1_GRID_DOMAIN',
            'GL_MAP1_COLOR_4','GL_LUMINANCE_ALPHA','GL_LUMINANCE8_ALPHA8','GL_LUMINANCE8','GL_LUMINANCE6_ALPHA2','GL_LUMINANCE4_ALPHA4',
            'GL_LUMINANCE4','GL_LUMINANCE16_ALPHA16','GL_LUMINANCE16','GL_LUMINANCE12_ALPHA4','GL_LUMINANCE12_ALPHA12','GL_LUMINANCE12',
            'GL_LUMINANCE','GL_LOGIC_OP_MODE','GL_LOGIC_OP','GL_LOAD','GL_LIST_MODE','GL_LIST_INDEX','GL_LIST_BIT',
            'GL_LIST_BASE','GL_LINE_WIDTH_RANGE','GL_LINE_WIDTH_GRANULARITY','GL_LINE_WIDTH','GL_LINE_TOKEN','GL_LINE_STRIP','GL_LINE_STIPPLE_REPEAT',
            'GL_LINE_STIPPLE_PATTERN','GL_LINE_STIPPLE','GL_LINE_SMOOTH_HINT','GL_LINE_SMOOTH','GL_LINE_RESET_TOKEN','GL_LINE_LOOP',
            'GL_LINE_BIT','GL_LINES','GL_LINEAR_MIPMAP_NEAREST','GL_LINEAR_MIPMAP_LINEAR','GL_LINEAR_ATTENUATION','GL_LINEAR',
            'GL_LINE','GL_LIGHT_MODEL_TWO_SIDE','GL_LIGHT_MODEL_LOCAL_VIEWER','GL_LIGHT_MODEL_AMBIENT','GL_LIGHTING_BIT',
            'GL_LIGHTING','GL_LIGHT7','GL_LIGHT6','GL_LIGHT5','GL_LIGHT4','GL_LIGHT3','GL_LIGHT2','GL_LIGHT1','GL_LIGHT0',
            'GL_LESS','GL_LEQUAL','GL_LEFT','GL_KEEP','GL_INVERT','GL_INVALID_VALUE','GL_INVALID_OPERATION','GL_INVALID_ENUM','GL_INTERPOLATE_EXT',
            'GL_INTERPOLATE','GL_INTENSITY8','GL_INTENSITY4','GL_INTENSITY16','GL_INTENSITY12','GL_INTENSITY','GL_INT',
            'GL_INDEX_WRITEMASK','GL_INDEX_SHIFT','GL_INDEX_OFFSET','GL_INDEX_MODE','GL_INDEX_LOGIC_OP','GL_INDEX_CLEAR_VALUE','GL_INDEX_BITS',
            'GL_INDEX_ARRAY_TYPE_EXT','GL_INDEX_ARRAY_TYPE','GL_INDEX_ARRAY_STRIDE_EXT','GL_INDEX_ARRAY_STRIDE','GL_INDEX_ARRAY_POINTER_EXT',
            'GL_INDEX_ARRAY_POINTER','GL_INDEX_ARRAY_EXT','GL_INDEX_ARRAY_COUNT_EXT','GL_INDEX_ARRAY','GL_INCR','GL_HINT_BIT',
            'GL_GREEN_SCALE','GL_GREEN_BITS','GL_GREEN_BIAS','GL_GREEN','GL_GREATER','GL_GEQUAL','GL_FRONT_RIGHT','GL_FRONT_LEFT',
            'GL_FRONT_FACE','GL_FRONT_AND_BACK','GL_FRONT','GL_FOG_START','GL_FOG_SPECULAR_TEXTURE_WIN','GL_FOG_MODE','GL_FOG_INDEX',
            'GL_FOG_HINT','GL_FOG_END','GL_FOG_DENSITY','GL_FOG_COLOR','GL_FOG_BIT','GL_FOG','GL_FLOAT','GL_FLAT','GL_FILL',
            'GL_FEEDBACK_BUFFER_TYPE','GL_FEEDBACK_BUFFER_SIZE','GL_FEEDBACK_BUFFER_POINTER','GL_FEEDBACK','GL_FASTEST','GL_FALSE',
            'GL_EYE_PLANE','GL_EYE_LINEAR','GL_EXT_vertex_array','GL_EXT_paletted_texture','GL_EXT_bgra','GL_EXTENSIONS','GL_EXP2',
            'GL_EXP','GL_EVAL_BIT','GL_EQUIV','GL_EQUAL','GL_ENABLE_BIT','GL_EMISSION','GL_EDGE_FLAG_ARRAY_STRIDE_EXT','GL_EDGE_FLAG_ARRAY_STRIDE',
            'GL_EDGE_FLAG_ARRAY_POINTER_EXT','GL_EDGE_FLAG_ARRAY_POINTER','GL_EDGE_FLAG_ARRAY_EXT','GL_EDGE_FLAG_ARRAY_COUNT_EXT','GL_EDGE_FLAG_ARRAY',
            'GL_EDGE_FLAG','GL_DST_COLOR','GL_DST_ALPHA','GL_DRAW_PIXEL_TOKEN','GL_DRAW_BUFFER','GL_DOUBLE_EXT','GL_DOUBLEBUFFER',
            'GL_DOUBLE','GL_DONT_CARE','GL_DOMAIN','GL_DITHER','GL_DIFFUSE','GL_DEPTH_WRITEMASK','GL_DEPTH_TEST','GL_DEPTH_SCALE',
            'GL_DEPTH_RANGE','GL_DEPTH_FUNC','GL_DEPTH_COMPONENT','GL_DEPTH_CLEAR_VALUE','GL_DEPTH_BUFFER_BIT','GL_DEPTH_BITS',
            'GL_DEPTH_BIAS','GL_DEPTH','GL_DECR','GL_DECAL','GL_CW','GL_CURRENT_TEXTURE_COORDS','GL_CURRENT_RASTER_TEXTURE_COORDS','GL_CURRENT_RASTER_POSITION_VALID',
            'GL_CURRENT_RASTER_POSITION','GL_CURRENT_RASTER_INDEX','GL_CURRENT_RASTER_DISTANCE','GL_CURRENT_RASTER_COLOR','GL_CURRENT_NORMAL',
            'GL_CURRENT_INDEX','GL_CURRENT_COLOR','GL_CURRENT_BIT','GL_CULL_FACE_MODE','GL_CULL_FACE','GL_COPY_PIXEL_TOKEN',
            'GL_COPY_INVERTED','GL_COPY','GL_CONSTANT_EXT','GL_CONSTANT_ATTENUATION','GL_CONSTANT','GL_COMPILE_AND_EXECUTE','GL_COMPILE','GL_COMBINE_RGB_EXT',
            'GL_COMBINE_RGB','GL_COMBINE_EXT','GL_COMBINE_ALPHA_EXT','GL_COMBINE_ALPHA','GL_COMBINE','GL_COLOR_WRITEMASK',
            'GL_COLOR_TABLE_WIDTH_EXT','GL_COLOR_TABLE_RED_SIZE_EXT','GL_COLOR_TABLE_LUMINANCE_SIZE_EXT','GL_COLOR_TABLE_INTENSITY_SIZE_EXT',
            'GL_COLOR_TABLE_GREEN_SIZE_EXT','GL_COLOR_TABLE_FORMAT_EXT','GL_COLOR_TABLE_BLUE_SIZE_EXT','GL_COLOR_TABLE_ALPHA_SIZE_EXT',
            'GL_COLOR_MATERIAL_PARAMETER','GL_COLOR_MATERIAL_FACE','GL_COLOR_MATERIAL','GL_COLOR_LOGIC_OP','GL_COLOR_INDEXES',
            'GL_COLOR_INDEX8_EXT','GL_COLOR_INDEX4_EXT','GL_COLOR_INDEX2_EXT','GL_COLOR_INDEX1_EXT','GL_COLOR_INDEX16_EXT',
            'GL_COLOR_INDEX12_EXT','GL_COLOR_INDEX','GL_COLOR_CLEAR_VALUE','GL_COLOR_BUFFER_BIT','GL_COLOR_ARRAY_TYPE_EXT',
            'GL_COLOR_ARRAY_TYPE','GL_COLOR_ARRAY_STRIDE_EXT','GL_COLOR_ARRAY_STRIDE','GL_COLOR_ARRAY_SIZE_EXT','GL_COLOR_ARRAY_SIZE',
            'GL_COLOR_ARRAY_POINTER_EXT','GL_COLOR_ARRAY_POINTER','GL_COLOR_ARRAY_EXT','GL_COLOR_ARRAY_COUNT_EXT','GL_COLOR_ARRAY',
            'GL_COLOR','GL_COEFF','GL_CLIP_PLANE5','GL_CLIP_PLANE4','GL_CLIP_PLANE3','GL_CLIP_PLANE2','GL_CLIP_PLANE1','GL_CLIP_PLANE0',
            'GL_CLIENT_VERTEX_ARRAY_BIT','GL_CLIENT_PIXEL_STORE_BIT','GL_CLIENT_ATTRIB_STACK_DEPTH','GL_CLIENT_ALL_ATTRIB_BITS',
            'GL_CLIENT_ACTIVE_TEXTURE_ARB','GL_CLIENT_ACTIVE_TEXTURE','GL_CLEAR','GL_CLAMP','GL_CCW','GL_C4UB_V3F','GL_C4UB_V2F',
            'GL_C4F_N3F_V3F','GL_C3F_V3F','GL_BYTE','GL_BLUE_SCALE','GL_BLUE_BITS','GL_BLUE_BIAS','GL_BLUE','GL_BLEND_SRC','GL_BLEND_DST',
            'GL_BLEND','GL_BITMAP_TOKEN','GL_BITMAP','GL_BGR_EXT','GL_BGRA_EXT','GL_BACK_RIGHT','GL_BACK_LEFT','GL_BACK',
            'GL_AUX_BUFFERS','GL_AUX3','GL_AUX2','GL_AUX1','GL_AUX0','GL_AUTO_NORMAL','GL_ATTRIB_STACK_DEPTH','GL_AND_REVERSE',
            'GL_AND_INVERTED','GL_AND','GL_AMBIENT_AND_DIFFUSE','GL_AMBIENT','GL_ALWAYS','GL_ALPHA_TEST_REF','GL_ALPHA_TEST_FUNC',
            'GL_ALPHA_TEST','GL_ALPHA_SCALE','GL_ALPHA_BITS','GL_ALPHA_BIAS','GL_ALPHA8','GL_ALPHA4','GL_ALPHA16','GL_ALPHA12',
            'GL_ALPHA','GL_ALL_ATTRIB_BITS','GL_ADD_SIGNED_EXT','GL_ADD_SIGNED','GL_ADD','GL_ACTIVE_TEXTURE_ARB','GL_ACTIVE_TEXTURE',
            'GL_ACCUM_RED_BITS','GL_ACCUM_GREEN_BITS','GL_ACCUM_CLEAR_VALUE','GL_ACCUM_BUFFER_BIT','GL_ACCUM_BLUE_BITS','GL_ACCUM_ALPHA_BITS',
            'GL_ACCUM','GL_4_BYTES','GL_4D_COLOR_TEXTURE','GL_3_BYTES','GL_3D_COLOR_TEXTURE','GL_3D_COLOR','GL_3D','GL_2_BYTES',
            'GL_2D','GLU_V_STEP','GLU_VERTEX','GLU_VERSION_1_2','GLU_VERSION_1_1','GLU_VERSION','GLU_U_STEP','GLU_UNKNOWN','GLU_TRUE',
            'GLU_TESS_WINDING_RULE','GLU_TESS_WINDING_POSITIVE','GLU_TESS_WINDING_ODD','GLU_TESS_WINDING_NONZERO','GLU_TESS_WINDING_NEGATIVE',
            'GLU_TESS_WINDING_ABS_GEQ_TWO','GLU_TESS_VERTEX_DATA','GLU_TESS_VERTEX','GLU_TESS_TOLERANCE','GLU_TESS_NEED_COMBINE_CALLBACK','GLU_TESS_MISSING_END_POLYGON',
            'GLU_TESS_MISSING_END_CONTOUR','GLU_TESS_MISSING_BEGIN_POLYGON','GLU_TESS_MISSING_BEGIN_CONTOUR','GLU_TESS_ERROR_DATA',
            'GLU_TESS_ERROR8','GLU_TESS_ERROR7','GLU_TESS_ERROR6','GLU_TESS_ERROR5','GLU_TESS_ERROR4','GLU_TESS_ERROR3','GLU_TESS_ERROR2',
            'GLU_TESS_ERROR1','GLU_TESS_ERROR','GLU_TESS_END_DATA','GLU_TESS_END','GLU_TESS_EDGE_FLAG_DATA','GLU_TESS_EDGE_FLAG',
            'GLU_TESS_COORD_TOO_LARGE','GLU_TESS_COMBINE_DATA','GLU_TESS_COMBINE','GLU_TESS_BOUNDARY_ONLY','GLU_TESS_BEGIN_DATA',
            'GLU_TESS_BEGIN','GLU_SMOOTH','GLU_SILHOUETTE','GLU_SAMPLING_TOLERANCE','GLU_SAMPLING_METHOD','GLU_POINT','GLU_PATH_LENGTH',
            'GLU_PARAMETRIC_TOLERANCE','GLU_PARAMETRIC_ERROR','GLU_OUT_OF_MEMORY','GLU_OUTSIDE','GLU_OUTLINE_POLYGON','GLU_OUTLINE_PATCH',
            'GLU_NURBS_ERROR9','GLU_NURBS_ERROR8','GLU_NURBS_ERROR7','GLU_NURBS_ERROR6','GLU_NURBS_ERROR5','GLU_NURBS_ERROR4',
            'GLU_NURBS_ERROR37','GLU_NURBS_ERROR36','GLU_NURBS_ERROR35','GLU_NURBS_ERROR34','GLU_NURBS_ERROR33','GLU_NURBS_ERROR32',
            'GLU_NURBS_ERROR31','GLU_NURBS_ERROR30','GLU_NURBS_ERROR3','GLU_NURBS_ERROR29','GLU_NURBS_ERROR28','GLU_NURBS_ERROR27','GLU_NURBS_ERROR26',
            'GLU_NURBS_ERROR25','GLU_NURBS_ERROR24','GLU_NURBS_ERROR23','GLU_NURBS_ERROR22','GLU_NURBS_ERROR21','GLU_NURBS_ERROR20',
            'GLU_NURBS_ERROR2','GLU_NURBS_ERROR19','GLU_NURBS_ERROR18','GLU_NURBS_ERROR17','GLU_NURBS_ERROR16','GLU_NURBS_ERROR15','GLU_NURBS_ERROR14',
            'GLU_NURBS_ERROR13','GLU_NURBS_ERROR12','GLU_NURBS_ERROR11','GLU_NURBS_ERROR10','GLU_NURBS_ERROR1','GLU_NONE',
            'GLU_MAP1_TRIM_3','GLU_MAP1_TRIM_2','GLU_LINE','GLU_INVALID_VALUE','GLU_INVALID_ENUM','GLU_INTERIOR','GLU_INSIDE','GLU_INCOMPATIBLE_GL_VERSION',
            'GLU_FLAT','GLU_FILL','GLU_FALSE','GLU_EXTERIOR','GLU_EXTENSIONS','GLU_ERROR','GLU_END','GLU_EDGE_FLAG','GLU_DOMAIN_DISTANCE',
            'GLU_DISPLAY_MODE','GLU_CW','GLU_CULLING','GLU_CCW','GLU_BEGIN','GLU_AUTO_LOAD_MATRIX','CHANNEL_UNORDERED','CHANNEL_ORDERED',
            'CHANNEL_MAX'
            ),
        2 => array(

            // Red Lowercase Keywords

            'WriteWord','WriteString','WriteReal','WriteLine','WriteInt','WriteFloat','WriteDouble','WriteChar','WriteByte',
            'windowwidth','windowheight','waittimer','Vec4','Vec3','Vec2','val','UpdateJoystick','ucase$','Transpose','tickcount',
            'textscroll','textrows','textmode','textcols','tanh','tand','tan','synctimercatchup','synctimer','swapbuffers',
            'str$','stopsoundvoice','stopsounds','stopmusic','sqrt','sqr','sprzorder','spryvel','sprytiles','sprysize','spryrepeat',
            'spryflip','sprycentre','spry','sprxvel','sprxtiles','sprxsize','sprxrepeat','sprxflip','sprxcentre','sprx',
            'sprvisible','sprvel','sprtype','sprtop','sprspin','sprsolid','sprsetzorder','sprsetyvel','sprsetysize','sprsetyrepeat',
            'sprsetyflip','sprsetycentre','sprsety','sprsetxvel','sprsetxsize','sprsetxrepeat','sprsetxflip','sprsetxcentre',
            'sprsetx','sprsetvisible','sprsetvel','sprsettiles','sprsettextures','sprsettexture','sprsetspin','sprsetsolid',
            'sprsetsize','sprsetscale','sprsetpos','sprsetparallax','sprsetframe','sprsetcolor','sprsetanimspeed','sprsetanimloop',
            'sprsetangle','sprsetalpha','sprscale','sprright','sprpos','sprparallax','sprleft','spriteareawidth','spriteareaheight',
            'sprframe','sprcolor','sprcameraz','sprcameray','sprcamerax','sprcamerasetz','sprcamerasety','sprcamerasetx',
            'sprcamerasetpos','sprcamerasetfov','sprcamerasetangle','sprcamerapos','sprcamerafov','sprcameraangle',
            'sprbottom','spranimspeed','spranimloop','spranimdone','sprangle','spralpha','spraddtextures','spraddtexture',
            'sounderror','sleep','sind','sin','showcursor','sgn','settextscroll','setmusicvolume','SendMessage','Seek',
            'scankeydown','RTInvert','rnd','right$','resizetext','resizespritearea','RejectConnection','ReceiveMessage','ReadWord',
            'ReadText','ReadReal','ReadLine','ReadInt','ReadFloat','ReadDouble','ReadChar','ReadByte','randomize','printr',
            'print','pow','playsound','playmusic','performancecounter','Orthonormalize','OpenFileWrite','OpenFileRead','Normalize',
            'newtilemap','newsprite','NewServer','NewConnection','musicplaying','mouse_yd','mouse_y','mouse_xd','mouse_x',
            'mouse_wheel','mouse_button','mid$','MessageSmoothed','MessageReliable','MessagePending','MessageChannel','maxtextureunits',
            'MatrixZero','MatrixTranslate','MatrixScale','MatrixRotateZ','MatrixRotateY','MatrixRotateX','MatrixRotate','MatrixIdentity',
            'MatrixCrossProduct','MatrixBasis','log','locate','loadtexture','loadsound','loadmipmaptexture','loadmipmapimagestrip',
            'loadimagestrip','loadimage','Length','len','left$','lcase$','keydown','Joy_Y','Joy_X','Joy_Up','Joy_Right','Joy_Left',
            'Joy_Keys','Joy_Down','Joy_Button','Joy_3','Joy_2','Joy_1','Joy_0','int','inscankey','input$','inkey$','inittimer',
            'imagewidth','imagestripframes','imageheight','imageformat','imagedatatype','hidecursor','glViewport','glVertex4sv',
            'glVertex4s','glVertex4iv','glVertex4i','glVertex4fv','glVertex4f','glVertex4dv','glVertex4d','glVertex3sv','glVertex3s',
            'glVertex3iv','glVertex3i','glVertex3fv','glVertex3f','glVertex3dv','glVertex3d','glVertex2sv','glVertex2s','glVertex2iv',
            'glVertex2i','glVertex2fv','glVertex2f','glVertex2dv','glVertex2d','gluPerspective','gluOrtho2D','gluLookAt',
            'glubuild2dmipmaps','glTranslatef','glTranslated','gltexsubimage2d','glTexParameteriv','glTexParameteri',
            'glTexParameterfv','glTexParameterf','glteximage2d','glTexGeniv','glTexGeni','glTexGenfv','glTexGenf','glTexGendv',
            'glTexGend','glTexEnviv','glTexEnvi','glTexEnvfv','glTexEnvf','glTexCoord4sv','glTexCoord4s','glTexCoord4iv','glTexCoord4i',
            'glTexCoord4fv','glTexCoord4f','glTexCoord4dv','glTexCoord4d','glTexCoord3sv','glTexCoord3s','glTexCoord3iv','glTexCoord3i',
            'glTexCoord3fv','glTexCoord3f','glTexCoord3dv','glTexCoord3d','glTexCoord2sv','glTexCoord2s','glTexCoord2iv','glTexCoord2i',
            'glTexCoord2fv','glTexCoord2f','glTexCoord2dv','glTexCoord2d','glTexCoord1sv','glTexCoord1s','glTexCoord1iv','glTexCoord1i','glTexCoord1fv',
            'glTexCoord1f','glTexCoord1dv','glTexCoord1d','glStencilOp','glStencilMask','glStencilFunc','glShadeModel','glSelectBuffer',
            'glScissor','glScalef','glScaled','glRotatef','glRotated','glRenderMode','glRectsv','glRects','glRectiv','glRecti',
            'glRectfv','glRectf','glRectdv','glRectd','glReadBuffer','glRasterPos4sv','glRasterPos4s','glRasterPos4iv',
            'glRasterPos4i','glRasterPos4fv','glRasterPos4f','glRasterPos4dv','glRasterPos4d','glRasterPos3sv','glRasterPos3s',
            'glRasterPos3iv','glRasterPos3i','glRasterPos3fv','glRasterPos3f','glRasterPos3dv','glRasterPos3d','glRasterPos2sv',
            'glRasterPos2s','glRasterPos2iv','glRasterPos2i','glRasterPos2fv','glRasterPos2f','glRasterPos2dv','glRasterPos2d',
            'glPushName','glPushMatrix','glPushClientAttrib','glPushAttrib','glPrioritizeTextures','glPopName','glPopMatrix',
            'glPopClientAttrib','glPopAttrib','glpolygonstipple','glPolygonOffset','glPolygonMode','glPointSize','glPixelZoom',
            'glPixelTransferi','glPixelTransferf','glPixelStorei','glPixelStoref','glPassThrough','glOrtho','glNormal3sv','glNormal3s',
            'glNormal3iv','glNormal3i','glNormal3fv','glNormal3f','glNormal3dv','glNormal3d','glNormal3bv','glNormal3b','glNewList',
            'glMultMatrixf','glMultMatrixd','glmultitexcoord2f','glmultitexcoord2d','glMatrixMode','glMaterialiv','glMateriali',
            'glMaterialfv','glMaterialf','glMapGrid2f','glMapGrid2d','glMapGrid1f','glMapGrid1d','glLogicOp','glLoadName','glLoadMatrixf',
            'glLoadMatrixd','glLoadIdentity','glListBase','glLineWidth','glLineStipple','glLightModeliv','glLightModeli','glLightModelfv',
            'glLightModelf','glLightiv','glLighti','glLightfv','glLightf','glIsTexture','glIsList','glIsEnabled','glInitNames',
            'glIndexubv','glIndexub','glIndexsv','glIndexs','glIndexMask','glIndexiv','glIndexi','glIndexfv','glIndexf','glIndexdv',
            'glIndexd','glHint','glGetTexParameteriv','glGetTexParameterfv','glGetTexLevelParameteriv','glGetTexLevelParameterfv',
            'glGetTexGeniv','glGetTexGenfv','glGetTexGendv','glGetTexEnviv','glGetTexEnvfv','glgetstring','glgetpolygonstipple','glGetPixelMapuiv',
            'glGetMaterialiv','glGetMaterialfv','glGetLightiv','glGetLightfv','glGetIntegerv','glGetFloatv',
            'glGetError','glGetDoublev','glGetClipPlane','glGetBooleanv','glgentextures','glgentexture',
            'glgenlists','glFrustum','glFrontFace','glFogiv','glFogi','glFogfv','glFogf','glFlush','glFinish','glFeedbackBuffer',
            'glEvalPoint2','glEvalPoint1','glEvalMesh2','glEvalMesh1','glEvalCoord2fv','glEvalCoord2f','glEvalCoord2dv','glEvalCoord2d',
            'glEvalCoord1fv','glEvalCoord1f','glEvalCoord1dv','glEvalCoord1d','glEndList','glEnd','glEnableClientState','glEnable',
            'glEdgeFlagv','glEdgeFlag','glDrawBuffer','glDrawArrays','glDisableClientState','glDisable','glDepthRange','glDepthMask',
            'glDepthFunc','gldeletetextures','gldeletetexture','gldeletelists','glCullFace','glCopyTexSubImage2D','glCopyTexSubImage1D',
            'glCopyTexImage2D','glCopyTexImage1D','glColorMaterial','glColorMask','glColor4usv','glColor4us','glColor4uiv','glColor4ui',
            'glColor4ubv','glColor4ub','glColor4sv','glColor4s','glColor4iv','glColor4i','glColor4fv','glColor4f','glColor4dv',
            'glColor4d','glColor4bv','glColor4b','glColor3usv','glColor3us','glColor3uiv','glColor3ui','glColor3ubv','glColor3ub',
            'glColor3sv','glColor3s','glColor3iv','glColor3i','glColor3fv','glColor3f','glColor3dv','glColor3d','glColor3bv',
            'glColor3b','glClipPlane','glClearStencil','glClearIndex','glClearDepth','glClearColor','glClearAccum','glClear',
            'glcalllists','glCallList','glBlendFunc','glBindTexture','glBegin','glArrayElement','glAreTexturesResident',
            'glAlphaFunc','glactivetexture','glAccum','font','FindNextFile','FindFirstFile','FindClose','FileError',
            'extensionsupported','exp','execute','EndOfFile','drawtext','divbyzero','Determinant','deletesprite','deletesound',
            'DeleteServer','deleteimage','DeleteConnection','defaultfont','CrossProduct','cosd','cos','copysprite','ConnectionPending',
            'ConnectionHandShaking','ConnectionConnected','ConnectionAddress','compilererrorline','compilererrorcol','compilererror',
            'compilefile','compile','color','cls','CloseFile','clearregion','clearline','clearkeys','chr$','charat$','bindsprite',
            'beep','atnd','atn2d','atn2','atn','atand','asc','argcount','arg','animatesprites','AcceptConnection','abs'
            ),
        3 => array(

            // Blue Lowercase Keywords

            'xor','while','wend','until','type','traditional_print','traditional','to','then','struc','string','step','single',
            'run','return','reset','read','or','null','not','next','lor','loop','language','land','integer','input','if',
            'goto','gosub','for','endstruc','endif','end','elseif','else','double','do','dim','data','const','basic4gl','as',
            'and','alloc'
            )

        ),
    'SYMBOLS' => array(
        '=', '<', '>', '>=', '<=', '+', '-', '*', '/', '%', '(', ')', '{', '}', '[', ']', '&', ';', ':', '$'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000080; font-weight: bold;',
            2 => 'color: #FF0000;',
            3 => 'color: #0000FF;'
            ),
        'COMMENTS' => array(
            1 => 'color: #657CC4; font-style: italic;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000080;'
            ),
        'STRINGS' => array(
            0 => 'color: #008000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000080; font-weight: bold;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #0000FF;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/nsis.php0000664000175000017500000004712012014173372013657 0ustar  benbebenbe 'NSIS',
    'COMMENT_SINGLE' => array(1 => ';', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'",'"','`'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            '!appendfile', '!addIncludeDir', '!addplugindir', '!cd', '!define', '!delfile', '!echo', '!else',
            '!endif', '!error', '!execute', '!ifdef', '!ifmacrodef', '!ifmacrondef', '!ifndef', '!include',
            '!insertmacro', '!macro', '!macroend', '!packhdr', '!tempfile', '!system', '!undef', '!verbose',
            '!warning'
            ),
        2 => array(
            'AddBrandingImage', 'AllowRootDirInstall', 'AutoCloseWindow', 'BGFont',
            'BGGradient', 'BrandingText', 'Caption', 'ChangeUI', 'CheckBitmap', 'CompletedText', 'ComponentText',
            'CRCCheck', 'DetailsButtonText', 'DirShow', 'DirText', 'DirVar', 'DirVerify', 'FileErrorText',
            'Function', 'FunctionEnd', 'Icon', 'InstallButtonText', 'InstallColors', 'InstallDir',
            'InstallDirRegKey', 'InstProgressFlags', 'InstType', 'LangString', 'LangStringUP', 'LicenseBkColor',
            'LicenseData', 'LicenseForceSelection', 'LicenseLangString', 'LicenseText', 'LoadLanguageFile',
            'MiscButtonText', 'Name', 'OutFile', 'Page', 'PageEx', 'PageExEnd', 'Section',
            'SectionEnd', 'SectionGroup', 'SectionGroupEnd', 'SetCompressor', 'SetFont', 'ShowInstDetails',
            'ShowUninstDetails', 'SilentInstall', 'SilentUnInstall', 'SpaceTexts', 'SubCaption', 'SubSection',
            'SubSectionEnd', 'UninstallButtonText', 'UninstallCaption', 'UninstallIcon', 'UninstallSubCaption',
            'UninstallText', 'UninstPage', 'Var', 'VIAddVersionKey', 'VIProductVersion', 'WindowIcon', 'XPStyle'
            ),
        3 => array(
            'AddSize', 'AllowSkipFiles', 'FileBufSize', 'GetInstDirError', 'PageCallbacks',
            'SectionIn', 'SetCompress', 'SetCompressionLevel', 'SetCompressorDictSize',
            'SetDatablockOptimize', 'SetDateSave', 'SetOverwrite', 'SetPluginUnload'
            ),
        4 => array(
            'Abort', 'BringToFront', 'Call', 'CallInstDLL', 'ClearErrors', 'CopyFiles','CreateDirectory',
            'CreateFont', 'CreateShortCut', 'Delete', 'DeleteINISec', 'DeleteINIStr', 'DeleteRegKey',
            'DeleteRegValue', 'DetailPrint', 'EnableWindow', 'EnumRegKey', 'EnumRegValue', 'Exch', 'Exec',
            'ExecShell', 'ExecWait', 'ExpandEnvStrings', 'File', 'FileClose', 'FileOpen', 'FileRead',
            'FileReadByte', 'FileSeek', 'FileWrite', 'FileWriteByte', 'FindClose', 'FindFirst', 'FindNext',
            'FindWindow', 'FlushINI', 'GetCurInstType', 'GetCurrentAddress', 'GetDlgItem', 'GetDLLVersion',
            'GetDLLVersionLocal', 'GetErrorLevel', 'GetFileTime', 'GetFileTimeLocal', 'GetFullPathName',
            'GetFunctionAddress', 'GetLabelAddress', 'GetTempFileName', 'GetWindowText', 'Goto', 'HideWindow',
            'IfAbort', 'IfErrors', 'IfFileExists', 'IfRebootFlag', 'IfSilent', 'InitPluginsDir', 'InstTypeGetText',
            'InstTypeSetText', 'IntCmp', 'IntCmpU', 'IntFmt', 'IntOp', 'IsWindow', 'LockWindow', 'LogSet', 'LogText',
            'MessageBox', 'Nop', 'Pop', 'Push', 'Quit', 'ReadEnvStr', 'ReadIniStr', 'ReadRegDWORD', 'ReadRegStr',
            'Reboot', 'RegDLL', 'Rename', 'ReserveFile', 'Return', 'RMDir', 'SearchPath', 'SectionGetFlags',
            'SectionGetInstTypes', 'SectionGetSize', 'SectionGetText', 'SectionSetFlags', 'SectionSetInstTypes',
            'SectionSetSize', 'SectionSetText', 'SendMessage', 'SetAutoClose', 'SetBrandingImage', 'SetCtlColors',
            'SetCurInstType', 'SetDetailsPrint', 'SetDetailsView', 'SetErrorLevel', 'SetErrors', 'SetFileAttributes',
            'SetOutPath', 'SetRebootFlag', 'SetShellVarContext', 'SetSilent', 'ShowWindow', 'Sleep', 'StrCmp',
            'StrCpy', 'StrLen', 'UnRegDLL', 'WriteINIStr', 'WriteRegBin', 'WriteRegDWORD', 'WriteRegExpandStr',
            'WriteRegStr', 'WriteUninstaller'
            ),
        5 => array(
            'all', 'alwaysoff', 'ARCHIVE', 'auto', 'both', 'bzip2', 'checkbox', 'components', 'current',
            'custom', 'directory', 'false', 'FILE_ATTRIBUTE_ARCHIVE', 'FILE_ATTRIBUTE_HIDDEN', 'FILE_ATTRIBUTE_NORMAL',
            'FILE_ATTRIBUTE_OFFLINE', 'FILE_ATTRIBUTE_READONLY', 'FILE_ATTRIBUTE_SYSTEM,TEMPORARY',
            'FILE_ATTRIBUTE_TEMPORARY', 'force', 'HIDDEN', 'hide', 'HKCC', 'HKCR', 'HKCU', 'HKDD', 'HKEY_CLASSES_ROOT',
            'HKEY_CURRENT_CONFIG', 'HKEY_CURRENT_USER', 'HKEY_DYN_DATA', 'HKEY_LOCAL_MACHINE', 'HKEY_PERFORMANCE_DATA',
            'HKEY_USERS', 'HKLM', 'HKPD', 'HKU', 'IDABORT', 'IDCANCEL', 'IDIGNORE', 'IDNO', 'IDOK', 'IDRETRY', 'IDYES',
            'ifdiff', 'ifnewer', 'instfiles', 'lastused', 'leave', 'license', 'listonly', 'lzma', 'manual',
            'MB_ABORTRETRYIGNORE', 'MB_DEFBUTTON1', 'MB_DEFBUTTON2', 'MB_DEFBUTTON3', 'MB_DEFBUTTON4',
            'MB_ICONEXCLAMATION', 'MB_ICONINFORMATION', 'MB_ICONQUESTION', 'MB_ICONSTOP', 'MB_OK', 'MB_OKCANCEL',
            'MB_RETRYCANCEL', 'MB_RIGHT', 'MB_SETFOREGROUND', 'MB_TOPMOST', 'MB_YESNO', 'MB_YESNOCANCEL', 'nevershow',
            'none', 'normal', 'off', 'OFFLINE', 'on', 'radiobuttons', 'READONLY', 'RO', 'SHCTX', 'SHELL_CONTEXT', 'show',
            'silent', 'silentlog', 'SW_HIDE', 'SW_SHOWMAXIMIZED', 'SW_SHOWMINIMIZED', 'SW_SHOWNORMAL', 'SYSTEM',
            'textonly', 'true', 'try', 'uninstConfirm', 'zlib'
            ),
        6 => array(
            '/a', '/components', '/COMPONENTSONLYONCUSTOM', '/CUSTOMSTRING', '/e', '/FILESONLY', '/FINAL', '/gray', '/GLOBAL',
            '/ifempty', '/IMGID', '/ITALIC', '/lang', '/NOCUSTOM', '/nonfatal', '/NOUNLOAD', '/oname', '/r', '/REBOOTOK',
            '/RESIZETOFIT', '/SOLID', '/SD', '/SHORT', '/silent', '/STRIKE', '/TIMEOUT', '/TRIMCENTER', '/TRIMLEFT',
            '/TRIMRIGHT', '/UNDERLINE', '/windows', '/x'
            ),
        7 => array(
            '.onGUIEnd', '.onGUIInit', '.onInit', '.onInstFailed', '.onInstSuccess', '.onMouseOverSection',
            '.onRebootFailed', '.onSelChange', '.onUserAbort', '.onVerifyInstDir', 'un.onGUIEnd', 'un.onGUIInit',
            'un.onInit', 'un.onRebootFailed', 'un.onUninstFailed', 'un.onUninstSuccess', 'un.onUserAbort'
            ),
        8 => array(
            'MUI.nsh', '"${NSISDIR}\Contrib\Modern UI\System.nsh"', 'MUI_SYSVERSION', 'MUI_ICON', 'MUI_UNICON',
            'MUI_HEADERIMAGE', 'MUI_HEADERIMAGE_BITMAP', 'MUI_HEADERIMAGE_BITMAP_NOSTRETCH', 'MUI_HEADERIMAGE_BITMAP_RTL',
            'MUI_HEADERIMAGE_BITMAP_RTL_NOSTRETCH', 'MUI_HEADERIMAGE_UNBITMAP', 'MUI_HEADERIMAGE_UNBITMAP_NOSTRETCH',
            'MUI_HEADERIMAGE_UNBITMAP_RTL', 'MUI_HEADERIMAGE_UNBITMAP_RTL_NOSTRETCH', 'MUI_HEADERIMAGE_RIGHT', 'MUI_BGCOLOR',
            'MUI_UI', 'MUI_UI_HEADERIMAGE', 'MUI_UI_HEADERIMAGE_RIGHT', 'MUI_UI_COMPONENTSPAGE_SMALLDESC',
            'MUI_UI_COMPONENTSPAGE_NODESC', 'MUI_WELCOMEFINISHPAGE_BITMAP', 'MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH',
            'MUI_WELCOMEFINISHPAGE_INI', 'MUI_UNWELCOMEFINISHPAGE_BITMAP', 'MUI_UNWELCOMEFINISHPAGE_BITMAP_NOSTRETCH',
            'MUI_UNWELCOMEFINISHPAGE_INI', 'MUI_LICENSEPAGE_BGCOLOR', 'MUI_COMPONENTSPAGE_CHECKBITMAP',
            'MUI_COMPONENTSPAGE_SMALLDESC', 'MUI_COMPONENTSPAGE_NODESC', 'MUI_INSTFILESPAGE_COLORS',
            'MUI_INSTFILESPAGE_PROGRESSBAR', 'MUI_FINISHPAGE_NOAUTOCLOSE', 'MUI_UNFINISHPAGE_NOAUTOCLOSE',
            'MUI_ABORTWARNING', 'MUI_ABORTWARNING_TEXT', 'MUI_UNABORTWARNING', 'MUI_UNABORTWARNING_TEXT',
            'MUI_PAGE_WELCOME', 'MUI_PAGE_LICENSE', 'MUI_PAGE_COMPONENTS', 'MUI_PAGE_DIRECTORY',
            'MUI_PAGE_STARTMENU', 'MUI_PAGE_INSTFILES', 'MUI_PAGE_FINISH', 'MUI_UNPAGE_WELCOME',
            'MUI_UNPAGE_CONFIRM', 'MUI_UNPAGE_LICENSE', 'MUI_UNPAGE_COMPONENTS', 'MUI_UNPAGE_DIRECTORY',
            'MUI_UNPAGE_INSTFILES', 'MUI_UNPAGE_FINISH', 'MUI_PAGE_HEADER_TEXT', 'MUI_PAGE_HEADER_SUBTEXT',
            'MUI_WELCOMEPAGE_TITLE', 'MUI_WELCOMEPAGE_TITLE_3LINES', 'MUI_WELCOMEPAGE_TEXT',
            'MUI_LICENSEPAGE_TEXT_TOP', 'MUI_LICENSEPAGE_TEXT_BOTTOM', 'MUI_LICENSEPAGE_BUTTON',
            'MUI_LICENSEPAGE_CHECKBOX', 'MUI_LICENSEPAGE_CHECKBOX_TEXT', 'MUI_LICENSEPAGE_RADIOBUTTONS',
            'MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT', 'MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE',
            'MUI_COMPONENTSPAGE_TEXT_TOP', 'MUI_COMPONENTSPAGE_TEXT_COMPLIST', 'MUI_COMPONENTSPAGE_TEXT_INSTTYPE',
            'MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE', 'MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO',
            'MUI_DIRECTORYPAGE_TEXT_TOP', 'MUI_DIRECTORYPAGE_TEXT_DESTINATION', 'MUI_DIRECTORYPAGE_VARIABLE',
            'MUI_DIRECTORYPAGE_VERIFYONLEAVE', 'MUI_STARTMENU_WRITE_BEGIN', 'MUI_STARTMENU_WRITE_END',
            'MUI_STARTMENUPAGE_TEXT_TOP', 'MUI_STARTMENUPAGE_TEXT_CHECKBOX', 'MUI_STARTMENUPAGE_DEFAULTFOLDER',
            'MUI_STARTMENUPAGE_NODISABLE', 'MUI_STARTMENUPAGE_REGISTRY_ROOT', 'MUI_STARTMENUPAGE_REGISTRY_KEY',
            'MUI_STARTMENUPAGE_REGISTRY_VALUENAME', 'MUI_INSTFILESPAGE_FINISHHEADER_TEXT',
            'MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT', 'MUI_INSTFILESPAGE_ABORTHEADER_TEXT',
            'MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT', 'MUI_FINISHPAGE_TITLE', 'MUI_FINISHPAGE_TITLE_3LINES',
            'MUI_FINISHPAGE_TEXT', 'MUI_FINISHPAGE_TEXT_LARGE', 'MUI_FINISHPAGE_BUTTON',
            'MUI_FINISHPAGE_TEXT_REBOOT', 'MUI_FINISHPAGE_TEXT_REBOOTNOW', 'MUI_FINISHPAGE_TEXT_REBOOTLATER',
            'MUI_FINISHPAGE_RUN', 'MUI_FINISHPAGE_RUN_TEXT', 'MUI_FINISHPAGE_RUN_PARAMETERS',
            'MUI_FINISHPAGE_RUN_NOTCHECKED', 'MUI_FINISHPAGE_RUN_FUNCTION', 'MUI_FINISHPAGE_SHOWREADME',
            'MUI_FINISHPAGE_SHOWREADME_TEXT', 'MUI_FINISHPAGE_SHOWREADME_NOTCHECKED',
            'MUI_FINISHPAGE_SHOWREADME_FUNCTION', 'MUI_FINISHPAGE_LINK', 'MUI_FINISHPAGE_LINK_LOCATION',
            'MUI_FINISHPAGE_LINK_COLOR', 'MUI_FINISHPAGE_NOREBOOTSUPPORT', 'MUI_UNCONFIRMPAGE_TEXT_TOP',
            'MUI_UNCONFIRMPAGE_TEXT_LOCATION', 'MUI_LANGUAGE', 'MUI_LANGDLL_DISPLAY',
            'MUI_LANGDLL_REGISTRY_ROOT', 'MUI_LANGDLL_REGISTRY_KEY', 'MUI_LANGDLL_REGISTRY_VALUENAME',
            'MUI_LANGDLL_WINDOWTITLE', 'MUI_LANGDLL_INFO', 'MUI_LANGDLL_ALWAYSSHOW',
            'MUI_RESERVEFILE_INSTALLOPTIONS', 'MUI_RESERVEFILE_LANGDLL', 'MUI_FUNCTION_DESCRIPTION_BEGIN',
            'MUI_DESCRIPTION_TEXT', 'MUI_FUNCTION_DESCRIPTION_END', 'MUI_INSTALLOPTIONS_EXTRACT',
            'MUI_INSTALLOPTIONS_EXTRACT_AS', 'MUI_HEADER_TEXT', 'MUI_INSTALLOPTIONS_DISPLAY',
            'MUI_INSTALLOPTIONS_INITDIALOG', 'MUI_INSTALLOPTIONS_SHOW',
            'MUI_INSTALLOPTIONS_DISPLAY_RETURN', 'MUI_INSTALLOPTIONS_SHOW_RETURN',
            'MUI_INSTALLOPTIONS_READ', 'MUI_INSTALLOPTIONS_WRITE',
            'MUI_CUSTOMFUNCTION_GUIINIT', 'MUI_CUSTOMFUNCTION_UNGUIINIT',
            'MUI_CUSTOMFUNCTION_ABORT', 'MUI_CUSTOMFUNCTION_UNABORT',
            'MUI_PAGE_CUSTOMFUNCTION_PRE', 'MUI_PAGE_CUSTOMFUNCTION_SHOW', 'MUI_PAGE_CUSTOMFUNCTION_LEAVE',
            'MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT'
            ),
        9 => array(
            'LogicLib.nsh', '${LOGICLIB}', 'LOGICLIB_STRCMP', 'LOGICLIB_INT64CMP', 'LOGICLIB_SECTIONCMP', '${If}', '${Unless}',
            '${ElseIf}', '${ElseUnless}', '${Else}', '${EndIf}', '${EndUnless}', '${AndIf}', '${AndUnless}',
            '${OrIf}', '${OrUnless}', '${IfThen}', '${IfCmd}', '${Select}', '${Case2}', '${Case3}',
            '${Case4}', '${Case5}', '${CaseElse}', '${Default}', '${EndSelect}', '${Switch}',
            '${Case}', '${EndSwitch}', '${Do}', '${DoWhile}', '${UntilWhile}', '${Continue}', '${Break}',
            '${Loop}', '${LoopWhile}', '${LoopUntil}', '${While}', '${ExitWhile}', '${EndWhile}', '${For}',
            '${ForEach}', '${ExitFor}', '${Next}', '${Abort}', '${Errors}', '${RebootFlag}', '${Silent}',
            '${FileExists}', '${Cmd}', '${SectionIsSelected}', '${SectionIsSectionGroup}',
            '${SectionIsSectionGroupEnd}', '${SectionIsBold}', '${SectionIsReadOnly}',
            '${SectionIsExpanded}', '${SectionIsPartiallySelected}'
            ),
        10 => array(
            'StrFunc.nsh', '${STRFUNC}', '${StrCase}', '${StrClb}', '${StrIOToNSIS}', '${StrLoc}', '${StrNSISToIO}', '${StrRep}',
            '${StrSort}', '${StrStr}', '${StrStrAdv}', '${StrTok}', '${StrTrimNewLines}'
            ),
        11 => array(
            'UpgradeDLL.nsh', 'UPGRADEDLL_INCLUDED', 'UpgradeDLL'
            ),
        12 => array(
            'Sections.nsh', 'SECTIONS_INCLUDED', '${SF_SELECTED}', '${SF_SECGRP}', '${SF_SUBSEC}', '${SF_SECGRPEND}',
            '${SF_SUBSECEND}', '${SF_BOLD}', '${SF_RO}', '${SF_EXPAND}', '${SF_PSELECTED}', '${SF_TOGGLED}',
            '${SF_NAMECHG}', '${SECTION_OFF}', 'SelectSection', 'UnselectSection', 'ReverseSection',
            'StartRadioButtons', 'RadioButton', 'EndRadioButtons', '${INSTTYPE_0}', '${INSTTYPE_1}', '${INSTTYPE_2}',
            '${INSTTYPE_3}', '${INSTTYPE_4}', '${INSTTYPE_5}', '${INSTTYPE_6}', '${INSTTYPE_7}', '${INSTTYPE_8}',
            '${INSTTYPE_9}', '${INSTTYPE_10}', '${INSTTYPE_11}', '${INSTTYPE_12}', '${INSTTYPE_13}', '${INSTTYPE_14}',
            '${INSTTYPE_15}', '${INSTTYPE_16}', '${INSTTYPE_17}', '${INSTTYPE_18}', '${INSTTYPE_19}', '${INSTTYPE_20}',
            '${INSTTYPE_21}', '${INSTTYPE_22}', '${INSTTYPE_23}', '${INSTTYPE_24}', '${INSTTYPE_25}', '${INSTTYPE_26}',
            '${INSTTYPE_27}', '${INSTTYPE_28}', '${INSTTYPE_29}', '${INSTTYPE_30}', '${INSTTYPE_31}', '${INSTTYPE_32}',
            'SetSectionInInstType', 'ClearSectionInInstType', 'SetSectionFlag', 'ClearSectionFlag', 'SectionFlagIsSet'
            ),
        13 => array(
            'Colors.nsh', 'WHITE', 'BLACK', 'YELLOW', 'RED', 'GREEN', 'BLUE', 'MAGENTA', 'CYAN', 'rgb2hex'
            ),
        14 => array(
            'FileFunc.nsh', '${Locate}', '${GetSize}', '${DriveSpace}', '${GetDrives}', '${GetTime}', '${GetFileAttributes}', '${GetFileVersion}', '${GetExeName}', '${GetExePath}', '${GetParameters}', '${GetOptions}', '${GetRoot}', '${GetParent}', '${GetFileName}', '${GetBaseName}', '${GetFileExt}', '${BannerTrimPath}', '${DirState}', '${RefreshShellIcons}'
            ),
        15 => array(
            'TextFunc.nsh', '${LineFind}', '${LineRead}', '${FileReadFromEnd}', '${LineSum}', '${FileJoin}', '${TextCompare}', '${ConfigRead}', '${ConfigWrite}', '${FileRecode}', '${TrimNewLines}'
            ),
        16 => array(
            'WordFunc.nsh', '${WordFind}', '${WordFind2X}', '${WordFind3X}', '${WordReplace}', '${WordAdd}', '${WordInsert}', '${StrFilter}', '${VersionCompare}', '${VersionConvert}'
            )
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        9 => false,
        10 => false,
        11 => false,
        12 => false,
        13 => false,
        14 => false,
        15 => false,
        16 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000066; font-weight:bold;',
            2 => 'color: #000066;',
            3 => 'color: #003366;',
            4 => 'color: #000099;',
            5 => 'color: #ff6600;',
            6 => 'color: #ff6600;',
            7 => 'color: #006600;',
            8 => 'color: #006600;',
            9 => 'color: #006600;',
            10 => 'color: #006600;',
            11 => 'color: #006600;',
            12 => 'color: #006600;',
            13 => 'color: #006600;',
            14 => 'color: #006600;',
            15 => 'color: #006600;',
            16 => 'color: #006600;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #660066; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => ''
            ),
        'STRINGS' => array(
            0 => 'color: #660066;'
            ),
        'NUMBERS' => array(
            0 => ''
            ),
        'METHODS' => array(
            0 => ''
            ),
        'SYMBOLS' => array(
            0 => ''
            ),
        'REGEXPS' => array(
            0 => 'color: #660000;',
            1 => 'color: #660000;',
            2 => 'color: #660000;',
            3 => 'color: #660000;',
            4 => 'color: #660000;',
            5 => 'color: #660000;',
            6 => 'color: #660000;',
            7 => 'color: #000099;',
            8 => 'color: #003399;'
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        9 => '',
        10 => '',
        11 => '',
        12 => '',
        13 => '',
        14 => '',
        15 => '',
        16 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => '\$\$',
        1 => '\$\\r',
        2 => '\$\\n',
        3 => '\$\\t',
        4 => '\$[a-zA-Z0-9_]+',
        5 => '\$\{.{1,256}\}',
        6 => '\$\\\(.{1,256}\\\)',
        7 => array(
            GESHI_SEARCH => '([^:\/\\\*\?\"\<\>(?:)\s]*?)(::)([^:\/\\\*\?\"\<\>(?:)\s]*?)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '\\2\\3'
            ),
        8 => array(
            GESHI_SEARCH => '([^:\/\\\*\?\"\<\>(?:)\s]*?)(::)([^:\/\\\*\?\"\<\>(?:)]*?\s)',
            GESHI_REPLACE => '\\3',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1\\2',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/cfdg.php0000664000175000017500000000715312014173413013604 0ustar  benbebenbe
 * Copyright: (c) 2006 John Horigan http://www.ozonehouse.com/john/
 * Release Version: 1.0.8.11
 * Date Started: 2006/03/11
 *
 * CFDG language file for GeSHi.
 *
 * CHANGES
 * -------
 * 2006/03/11 (1.0.0)
 *  -  First Release
 *
 * TODO (updated 2006/03/11)
 * -------------------------
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'CFDG',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'include', 'startshape', 'rule', 'background'
            ),
        2 => array(
            'SQUARE', 'CIRCLE', 'TRIANGLE',
            ),
        3 => array(
            'b','brightness','h','hue','sat','saturation',
            'a','alpha','x','y','z','s','size',
            'r','rotate','f','flip','skew','xml_set_object'
            )
        ),
    'SYMBOLS' => array(
        '[', ']', '{', '}', '*', '|'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #717100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #006666;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/logtalk.php0000664000175000017500000003016212014173435014336 0ustar  benbebenbe 'Logtalk',
    'COMMENT_SINGLE' => array(1 => '%'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(2 => "/0'./sim"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'"),
    'HARDQUOTE' => array('"', '"'),
    'HARDESCAPE' => array(),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]+\\\\#",
        //Octal Char Specs
        3 => "#\\\\[0-7]+\\\\#"
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX_0O |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        // Directives (with arguments)
        1 => array(
            // file directives
            'encoding', 'ensure_loaded',
            // flag directives
            'set_logtalk_flag', 'set_prolog_flag',
            // entity opening directives
            'category', 'object', 'protocol',
            // predicate scope directives
            'private', 'protected', 'public',
            // conditional compilation directives
            'elif', 'if',
            // entity directives
            'calls', 'initialization', 'op', 'uses',
            // predicate directives
            'alias', 'coinductive', 'discontiguous', 'dynamic', 'mode', 'info', 'meta_predicate', 'multifile', 'synchronized',
            // module directives
            'export', 'module', 'reexport', 'use_module'
            ),
        // Directives (no arguments)
        2 => array(
            // entity directives
            'dynamic',
            // multi-threading directives
            'synchronized', 'threaded',
            // entity closing directives
            'end_category', 'end_object', 'end_protocol',
            // conditional compilation directives
            'else', 'endif'
            ),
        // Entity relations
        3 => array(
            'complements', 'extends', 'imports', 'implements','instantiates', 'specializes'
            ),
        // Built-in predicates (with arguments)
        4 => array(
            // event handlers
            'after', 'before',
            // execution-context methods
            'parameter', 'self', 'sender', 'this',
            // predicate reflection
            'current_predicate', 'predicate_property',
            // DCGs and term expansion
            'expand_goal', 'expand_term', 'goal_expansion', 'phrase', 'term_expansion',
            // entity
            'abolish_category', 'abolish_object', 'abolish_protocol',
            'create_category', 'create_object', 'create_protocol',
            'current_category', 'current_object', 'current_protocol',
            'category_property', 'object_property', 'protocol_property',
            // entity relations
            'complements_object', 'conforms_to_protocol',
            'extends_category', 'extends_object', 'extends_protocol',
            'implements_protocol', 'imports_category',
            'instantiates_class', 'specializes_class',
            // events
            'abolish_events', 'current_event', 'define_events',
            // flags
            'current_logtalk_flag', 'set_logtalk_flag',
            'current_prolog_flag', 'set_prolog_flag',
            // compiling, loading, and library path
            'logtalk_compile', 'logtalk_library_path', 'logtalk_load',
            // database
            'abolish', 'asserta', 'assertz', 'clause', 'retract', 'retractall',
            // control
            'call', 'catch', 'ignore', 'once', 'throw',
            // all solutions predicates
            'bagof', 'findall', 'forall', 'setof',
            // multi-threading meta-predicates
            'threaded',
            'threaded_call', 'threaded_once', 'threaded_ignore', 'threaded_exit', 'threaded_peek',
            'threaded_wait', 'threaded_notify',
            // term unification
            'unify_with_occurs_check',
            // atomic term processing
            'atom_chars', 'atom_codes', 'atom_concat', 'atom_length',
            'number_chars', 'number_codes',
            'char_code',
            // term creation and decomposition
            'arg', 'copy_term', 'functor', 'numbervars',
            // term testing
            'atom', 'atomic', 'callable', 'compound', 'float', 'ground', 'integer', 'nonvar', 'number', 'sub_atom', 'var',
            // term comparison
            'compare',
            // stream selection and control
            'current_input', 'current_output', 'set_input', 'set_output',
            'open', 'close', 'flush_output', 'stream_property',
            'at_end_of_stream', 'set_stream_position',
            // character and byte input/output predicates
            'get_byte', 'get_char', 'get_code',
            'peek_byte', 'peek_char', 'peek_code',
            'put_byte', 'put_char', 'put_code',
            'nl',
            // term input/output predicates
            'current_op', 'op',
            'write', 'writeq', 'write_canonical', 'write_term',
            'read', 'read_term',
            'char_conversion', 'current_char_conversion',
            // hooks
            'halt',
            // sorting
            'keysort', 'sort'
            ),
        // Built-in predicates (no arguments)
        5 => array(
            // control
            'fail', 'repeat', 'true',
            // character and byte input/output predicates
            'nl',
            // implementation defined hooks functions
            'halt',
            // arithemtic evaluation
            'is',
            // stream selection and control
            'at_end_of_stream', 'flush_output'
            ),
        // Evaluable functors (with arguments)
        6 => array(
            'float_integer_part', 'float_fractional_part',
            'rem', 'mod', 'abs', 'sign', 'floor', 'truncate', 'round', 'ceiling',
            'cos', 'atan', 'exp', 'log', 'sin', 'sqrt'
            ),
        // Evaluable functors (no arguments)
        7 => array(
            'e', 'pi', 'mod', 'rem'
            ),
        ),
    'SYMBOLS' => array(
        0 => array(
            // external call
            '{', '}'
            ),
        1 => array(
            // arithemtic comparison
            '=:=', '=\=', '<', '=<', '>=', '>',
            // term comparison
            '<<', '>>', '/\\', '\\/', '\\',
            // bitwise functors
            '==', '\==', '@<', '@=<', '@>=', '@>',
            // evaluable functors
            '+', '-', '*', '/', '**',
            // logic and control
            '!', '\\+', ';',
            // message sending operators
            '::', '^^', ':',
            // grammar rule and conditional functors
            '-->', '->',
            // mode operators
            '@', '?',
            // term to list predicate
            '=..',
            // unification
            '=', '\\='
            ),
        2 => array(
            // clause and directive functors
            ':-'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #2e4dc9;',
            2 => 'color: #2e4dc9;',
            3 => 'color: #2e4dc9;',
            4 => 'color: #9d4f37;',
            5 => 'color: #9d4f37;',
            6 => 'color: #9d4f37;',
            7 => 'color: #9d4f37;'
            ),
        'NUMBERS' => array(
            0 => 'color: #430000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #60a0b0; font-style: italic;',
            2 => 'color: #430000;',
            'MULTI' => 'color: #60a0b0; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #9f0000; font-weight: bold;',
            1 => 'color: #9f0000; font-weight: bold;',
            2 => 'color: #9f0000; font-weight: bold;',
            3 => 'color: #9f0000; font-weight: bold;',
            'HARD' => '',
            ),
        'SYMBOLS' => array(
            0 => 'color: #666666;font-weight: bold;',
            1 => 'color: #666666;font-weight: bold;',
            2 => 'color: #000000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #9f0000;',
            'HARD' => 'color: #9f0000;'
            ),
        'METHODS' => array(
            ),
        'REGEXPS' => array(
            0 => 'color: #848484;'
            ),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => '::'
        ),
    'REGEXPS' => array(
        // variables
        0 => '\b(?!(?:PIPE|SEMI|REG3XP\d*)[^a-zA-Z0-9_])[A-Z_][a-zA-Z0-9_]*(?![a-zA-Z0-9_])'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER
        ),
        'KEYWORDS' => array(
            1 => array(
                'DISALLOWED_BEFORE' => '(?<=:-\s)',
                'DISALLOWED_AFTER' => '(?=\()'
            ),
            2 => array(
                'DISALLOWED_BEFORE' => '(?<=:-\s)',
                'DISALLOWED_AFTER' => '(?=\.)'
            ),
            3 => array(
                'DISALLOWED_BEFORE' => '(?|^&\'"])',
                'DISALLOWED_AFTER' => '(?=\()'
            ),
            4 => array(
                'DISALLOWED_BEFORE' => '(?|^&\'"])',
                'DISALLOWED_AFTER' => '(?=\()'
            ),
            5 => array(
                'DISALLOWED_BEFORE' => '(?|^&\'"])',
                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])'
            ),
            6 => array(
                'DISALLOWED_BEFORE' => '(?|^&\'"])',
                'DISALLOWED_AFTER' => '(?=\()'
            ),
            7 => array(
                'DISALLOWED_BEFORE' => '(?|^&\'"])',
                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])'
            )
        )
    ),
);

?>geshi/geshi/pascal.php0000664000175000017500000001305612014173431014143 0ustar  benbebenbe 'Pascal',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'),
    //Compiler directives
    'COMMENT_REGEXP' => array(2 => '/\\{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'"),
    'ESCAPE_CHAR' => '',

    'KEYWORDS' => array(
        1 => array(
            'absolute','asm','assembler','begin','break','case','catch','cdecl',
            'const','constructor','default','destructor','div','do','downto',
            'else','end','except','export','exports','external','far',
            'finalization','finally','for','forward','function','goto','if',
            'implementation','in','index','inherited','initialization','inline',
            'interface','interrupt','label','library','mod','name','not','of',
            'or','overload','override','private','procedure','program',
            'property','protected','public','published','raise','repeat',
            'resourcestring','shl','shr','stdcall','stored','switch','then',
            'to','try','type','unit','until','uses','var','while','with','xor'
            ),
        2 => array(
            'nil', 'false', 'true',
            ),
        3 => array(
            'abs','and','arc','arctan','blockread','blockwrite','chr','dispose',
            'cos','eof','eoln','exp','get','ln','new','odd','ord','ordinal',
            'pred','read','readln','sin','sqrt','succ','write','writeln'
            ),
        4 => array(
            'ansistring','array','boolean','byte','bytebool','char','file',
            'integer','longbool','longint','object','packed','pointer','real',
            'record','set','shortint','smallint','string','union','word'
            ),
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '[', ']'),
        1 => array('.', ',', ':', ';'),
        2 => array('@', '^'),
        3 => array('=', '+', '-', '*', '/')
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;',
            4 => 'color: #000066; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #008000; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #ff0000; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            //'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000cc;',
            1 => 'color: #ff0000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;',
            1 => 'color: #000066;',
            2 => 'color: #000066;',
            3 => 'color: #000066;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        //Hex numbers
        0 => '\$[0-9a-fA-F]+',
        //Characters
        1 => '\#(?:\$[0-9a-fA-F]{1,2}|\d{1,3})'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/boo.php0000664000175000017500000001547212014173405013464 0ustar  benbebenbe 'Boo',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'''", "'", '"""', '"'),
    'HARDQUOTE' => array('"""', '"""'),
    'HARDESCAPE' => array('\"""'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(//Namespace
            'namespace', 'import', 'from'
            ),
        2 => array(//Jump
            'yield', 'return', 'goto', 'continue', 'break'
            ),
        3 => array(//Conditional
            'while', 'unless', 'then', 'in', 'if', 'for', 'else', 'elif'
            ),
        4 => array(//Property
            'set', 'get'
            ),
        5 => array(//Exception
            'try', 'raise', 'failure', 'except', 'ensure'
            ),
        6 => array(//Visibility
            'public', 'private', 'protected', 'internal'
            ),
        7 => array(//Define
            'struct', 'ref', 'of', 'interface', 'event', 'enum', 'do', 'destructor', 'def', 'constructor', 'class'
            ),
        8 => array(//Cast
            'typeof', 'cast', 'as'
            ),
        9 => array(//BiMacro
            'yieldAll', 'using', 'unchecked', 'rawArayIndexing', 'print', 'normalArrayIndexing', 'lock',
            'debug', 'checked', 'assert'
            ),
        10 => array(//BiAttr
            'required', 'property', 'meta', 'getter', 'default'
            ),
        11 => array(//BiFunc
            'zip', 'shellp', 'shellm', 'shell', 'reversed', 'range', 'prompt',
            'matrix', 'map', 'len', 'join', 'iterator', 'gets', 'enumerate', 'cat', 'array'
            ),
        12 => array(//HiFunc
            '__switch__', '__initobj__', '__eval__', '__addressof__', 'quack'
            ),
        13 => array(//Primitive
            'void', 'ushort', 'ulong', 'uint', 'true', 'timespan', 'string', 'single',
            'short', 'sbyte', 'regex', 'object', 'null', 'long', 'int', 'false', 'duck',
            'double', 'decimal', 'date', 'char', 'callable', 'byte', 'bool'
            ),
        14 => array(//Operator
            'not', 'or', 'and', 'is', 'isa',
            ),
        15 => array(//Modifier
            'virtual', 'transient', 'static', 'partial', 'override', 'final', 'abstract'
            ),
        16 => array(//Access
            'super', 'self'
            ),
        17 => array(//Pass
            'pass'
            )
        ),
    'SYMBOLS' => array(
        '[|', '|]', '${', '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>', '+', '-', ';'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        9 => true,
        10 => true,
        11 => true,
        12 => true,
        13 => true,
        14 => true,
        15 => true,
        16 => true,
        17 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color:green;font-weight:bold;',
            2 => 'color:navy;',
            3 => 'color:blue;font-weight:bold;',
            4 => 'color:#8B4513;',
            5 => 'color:teal;font-weight:bold;',
            6 => 'color:blue;font-weight:bold;',
            7 => 'color:blue;font-weight:bold;',
            8 => 'color:blue;font-weight:bold;',
            9 => 'color:maroon;',
            10 => 'color:maroon;',
            11 => 'color:purple;',
            12 => 'color:#4B0082;',
            13 => 'color:purple;font-weight:bold;',
            14 => 'color:#008B8B;font-weight:bold;',
            15 => 'color:brown;',
            16 => 'color:black;font-weight:bold;',
            17 => 'color:gray;'
            ),
        'COMMENTS' => array(
            1 => 'color: #999999; font-style: italic;',
            2 => 'color: #999999; font-style: italic;',
            'MULTI' => 'color: #008000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #0000FF; font-weight: bold;',
            'HARD' => 'color: #0000FF; font-weight: bold;',
            ),
        'BRACKETS' => array(
            0 => 'color: #006400;'
            ),
        'STRINGS' => array(
            0 => 'color: #008000;',
            'HARD' => 'color: #008000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #00008B;'
            ),
        'METHODS' => array(
            0 => 'color: 000000;',
            1 => 'color: 000000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #006400;'
            ),
        'REGEXPS' => array(
            #0 => 'color: #0066ff;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        9 => '',
        10 => '',
        11 => '',
        12 => '',
        13 => '',
        14 => '',
        15 => '',
        16 => '',
        17 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        0 => '.',
        1 => '::'
        ),
    'REGEXPS' => array(
        #0 => '%(@)?\/(?:(?(1)[^\/\\\\\r\n]+|[^\/\\\\\r\n \t]+)|\\\\[\/\\\\\w+()|.*?$^[\]{}\d])+\/%'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/hicest.php0000664000175000017500000000741312014173416014162 0ustar  benbebenbe 'HicEst',
    'COMMENT_SINGLE' => array(1 => '!'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '\''),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            '$cmd_line', 'abs', 'acos', 'alarm', 'alias', 'allocate', 'appendix', 'asin', 'atan', 'axis', 'beep',
            'call', 'ceiling', 'char', 'character', 'com', 'continue', 'cos', 'cosh', 'data', 'diffeq', 'dimension', 'dlg', 'dll',
            'do', 'edit', 'else', 'elseif', 'end', 'enddo', 'endif', 'exp', 'floor', 'function', 'fuz', 'goto', 'iand', 'ichar',
            'ieor', 'if', 'index', 'init', 'int', 'intpol', 'ior', 'key', 'len', 'len_trim', 'line', 'lock', 'log', 'max', 'maxloc',
            'min', 'minloc', 'mod', 'nint', 'not', 'open', 'pop', 'ran', 'read', 'real', 'return', 'rgb', 'roots', 'sign', 'sin',
            'sinh', 'solve', 'sort', 'subroutine', 'sum', 'system', 'tan', 'tanh', 'then', 'time', 'use', 'window', 'write', 'xeq'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '(', ')', '+', '-', '*', '/', '=', '<', '>', '!', '^', ':', ','
            ),
        2 => array(
            '$', '$$'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #ff0000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;',
            2 => 'color: #ff0000;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(1 => ''),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>geshi/geshi/freeswitch.php0000664000175000017500000001235312014173445015047 0ustar  benbebenbe 'FreeSWITCH',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(1 => "/^Comment:.*?$/m"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
//        1 => array(
//            'Disallow', 'Request-rate', 'Robot-version',
//            'Sitemap', 'User-agent', 'Visit-time'
//            )
        ),
    'SYMBOLS' => array(
//        ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false
        ),

//order is important. regexes will overwrite most things....
    'STYLES' => array(
        'KEYWORDS' => array(
//            1 => 'color: #FF0000; font-weight: bold;',//red
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
//            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
//            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
//            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
//            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            0 => 'color: firebrick; font-weight: bold;',
            1 => 'color: cornflowerblue; font-weight: bold;',
            2 => 'color: goldenrod; font-weight: bold;',
            3 => 'color: green; font-weight: bold;',
            4 => 'color: dimgrey; font-style: italic;',
            5 => 'color: green; font-weight: bold;',
            6 => 'color: firebrick; font-weight: bold;',
            7 => 'color: indigo; font-weight: italic;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
//        1 => 'http://www.robotstxt.org/wc/norobots.html'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => array(
            GESHI_SEARCH => '(^.*ERROR.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        1 => array(
            GESHI_SEARCH => '(^.*NOTICE.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        2 => array(
            GESHI_SEARCH => '(^.*DEBUG.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        3 => array(
            GESHI_SEARCH => '(^.*INFO.*|.*info\(.*|^Channel.*|^Caller.*|^variable.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        4 => array(
            GESHI_SEARCH => '(^Dialplan.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        5 => array(
            GESHI_SEARCH => '(Regex\ \(PASS\))',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        6 => array(
            GESHI_SEARCH => '(Regex\ \(FAIL\))',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        7 => array(
            GESHI_SEARCH => '(\d{7,15})',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            )
        ),

    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/dcl.php0000664000175000017500000001771311702144552013453 0ustar  benbebenbe 'DCL',
    'COMMENT_SINGLE' => array('$!', '!'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        2 => '/(?<=\$)\s*sql\s+.*?(?:quit|exit);?\s*?$/sim' // do not highlight inline sql
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDESCAPE' => array(),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        1 => "/''[a-zA-Z\\-_]+'/"
        ),
    'KEYWORDS' => array(
        1 => array( // commands
            'ACCOUNTING', 'ALLOCATE', 'ANALYZE', 'APPEND', 'ASSIGN', 'ATTACH', 'BACKUP',
            'CALL', 'CANCEL', 'CHECKSUM', 'CLOSE', 'CONNECT', 'CONTINUE', 'CONVERT',
            'COPY', 'CREATE', 'DEALLOCATE', 'DEASSIGN', 'DEBUG', 'DECK',
            'DECRYPT', 'DEFINE', 'DELETE', 'DEPOSIT', 'DIFFERENCES', 'DIRECTORY',
            'DISABLE',  'AUTOSTART', 'DISCONNECT', 'DISMOUNT', 'DUMP', 'EDIT', 'ENABLE',
            'ENCRYPT', 'ENDSUBROUTINE', 'EOD', 'EOJ', 'EXAMINE', 'EXCHANGE',
            'EXIT', 'FONT', 'GOSUB', 'GOTO', 'HELP', 'IF', 'THEN', 'ELSE', 'ENDIF', 'INITIALIZE', 'INQUIRE',
            'INSTALL', 'JAVA', 'JOB', 'LIBRARY', 'LICENSE', 'LINK', 'LOGIN', 'LOGOUT',
            'MACRO', 'MAIL', 'MERGE', 'MESSAGE', 'MONITOR', 'MOUNT', 'NCS', 'ON', 'OPEN',
            'PASSWORD', 'PATCH', 'PHONE', 'PIPE', 'PPPD', 'PRINT', 'PRODUCT', 'PURGE',
            'READ', 'RECALL', 'RENAME', 'REPLY', 'REQUEST', 'RETURN', 'RMU', 'RUN', 'RUNOFF',
            'SEARCH', 'SET', 'SET AUDIT', 'SET BOOTBLOCK', 'SET BROADCAST',
            'SET CACHE', 'SET CARD_READER', 'SET CLUSTER', 'SET COMMAND', 'SET CONTROL',
            'SET CPU', 'SET DAY', 'SET DEFAULT', 'SET DEVICE', 'SET DIRECTORY',
            'SET DISPLAY', 'SET ENTRY', 'SET FILE', 'SET HOST', 'SET IMAGE', 'SET KEY',
            'SET LOGINS', 'SET MAGTAPE', 'SET MESSAGE', 'SET NETWORK', 'SET ON', 'SET OUTPUT_RATE',
            'SET PASSWORD', 'SET PREFERRED_PATH', 'SET PREFIX', 'SET PRINTER', 'SET PROCESS',
            'SET PROMPT', 'SET PROTECTION', 'SET QUEUE', 'SET RESTART_VALUE',
            'SET RIGHTS_LIST', 'SET RMS_DEFAULT', 'SET ROOT', 'SET SECURITY',
            'SET SERVER ACME_SERVER', 'SET SERVER REGISTRY_SERVER', 'SET SERVER SECURITY_SERVER',
            'SET SHADOW', 'SET SYMBOL', 'SET TERMINAL', 'SET TIME', 'SET VERIFY',
            'SET VOLUME', 'SET WORKING_SET', 'SHOW', 'SHOW AUDIT',
            'SHOW BROADCAST', 'SHOW CLUSTER', 'SHOW CPU', 'SHOW DEFAULT', 'SHOW DEVICES',
            'SHOW DISPLAY', 'SHOW ENTRY', 'SHOW ERROR', 'SHOW FASTPATH', 'SHOW IMAGE',
            'SHOW INTRUSION', 'SHOW KEY', 'SHOW LICENSE', 'SHOW LOGICAL', 'SHOW MEMORY',
            'SHOW NETWORK', 'SHOW PRINTER', 'SHOW PROCESS', 'SHOW PROTECTION', 'SHOW QUEUE',
            'SHOW QUOTA', 'SHOW RMS_DEFAULT', 'SHOW ROOT', 'SHOW SECURITY',
            'SHOW SERVER ACME_SERVER', 'SHOW SERVER REGISTRY_SERVER', 'SHOW SHADOW',
            'SHOW STATUS', 'SHOW SYMBOL', 'SHOW SYSTEM', 'SHOW TERMINAL', 'SHOW TIME',
            'SHOW TRANSLATION', 'SHOW USERS', 'SHOW WORKING_SET', 'SHOW ZONE', 'SORT',
            'SPAWN', 'START', 'STOP', 'SUBMIT', 'SUBROUTINE', 'SYNCHRONIZE', 'TYPE',
            'UNLOCK', 'VIEW', 'WAIT', 'WRITE', 'XAUTH'
            ),
        2 => array( // lexical functions
            'F$CONTEXT', 'F$CSID', 'F$CUNITS', 'F$CVSI', 'F$CVTIME', 'F$CVUI',
            'F$DELTA_TIME', 'F$DEVICE', 'F$DIRECTORY', 'F$EDIT', 'F$ELEMENT',
            'F$ENVIRONMENT', 'F$EXTRACT', 'F$FAO', 'F$FID_TO_NAME', 'F$FILE_ATTRIBUTES',
            'F$GETDVI', 'F$GETENV', 'F$GETJPI', 'F$GETQUI', 'F$GETSYI', 'F$IDENTIFIER',
            'F$INTEGER', 'F$LENGTH', 'F$LICENSE', 'F$LOCATE', 'F$MATCH_WILD', 'F$MESSAGE',
            'F$MODE', 'F$MULTIPATH', 'F$PARSE', 'F$PID', 'F$PRIVILEGE', 'F$PROCESS',
            'F$SEARCH', 'F$SETPRV', 'F$STRING', 'F$TIME', 'F$TRNLNM', 'F$TYPE', 'F$UNIQUE',
            'F$USER', 'F$VERIFY'
            ),
        3 => array( // special variables etc
            'sql$database', 'P1', 'P2', 'P3', 'P4', 'P5', 'P6', 'P7', 'P8', 'P9',
            '$status', '$severity', 'sys$login', 'sys$system',
            'sys$input', 'sys$output', 'sys$pipe'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '@', '&', '|', '<', '>', '-',
        '.eqs.', '.eq.', '.lt.', '.lts.', '.gt.', '.gts.', '.ne.', '.nes.',
        '.le.', '.ge.', '.ges.', '.les.',
        '.EQS.', '.EQ.', '.LT.', '.LTS.', '.GT.', '.GTS.', '.NE.', '.NES.',
        '.LE.', '.GE.', '.GES.', '.LES.',
        '.and.', '.or.', '.not.',
        '.AND.', '.OR.', '.NOT.',
        '==', ':==', '=', ':='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #0066FF;',
            3 => 'color: #993300;'
            ),
        'COMMENTS' => array(
            0 => 'color: #666666; font-style: italic;',
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #9999FF; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #006666;',
            1 => 'color: #0099FF;',
            2 => 'color: red;',
            3 => 'color: #007800;',
            4 => 'color: #007800;',
            5 => 'color: #780078;'
            ),
        'BRACKETS' => array(
            0 => 'color: #7a0874; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #009900;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0099FF;',                     // variables
            1 => 'color: #0000FF;',                     // qualifiers
            2 => 'color: #FF6600; font-weight: bold;'   // labels
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        // variables
        0 => "'[a-zA-Z_\\-$]+'",
        // qualifiers and parameters
        1 => "(?:\/[a-zA-Z_\/]+)[\s=]",
        // labels
        2 => '(?<=\$)\s*[a-zA-Z\-_]+:'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
        ),
        'KEYWORDS' => array(
        )
    )
);

?>geshi/geshi/nagios.php0000664000175000017500000001776112014173433014171 0ustar  benbebenbe
 * Copyright: (c) 2012 Albéric de Pertat (https://github.com/adepertat/geshi-nagios)
 * Release Version: 1.0.8.11
 * Date Started: 2012/01/19
 *
 * Nagios language file for GeSHi.
 *
 * CHANGES
 * -------
 * 2012/01/19 (1.0.0)
 *  -  First Release
 *
 * TODO (updated 2012/01/19)
 * -------------------------
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array(
    'LANG_NAME' => 'Nagios',
    'COMMENT_SINGLE' => array(1 => ';', 2 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'HARDQUOTE' => array("'", "'"),
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\'',
    'KEYWORDS' => array(
        1 => array(
            'define'
            ),
        2 => array(
            'command', 'contact', 'contactgroup', 'host', 'hostdependency',
            'hostescalation', 'hostextinfo', 'hostgroup', 'service',
            'servicedependency', 'serviceescalation',
            'serviceextinfo', 'servicegroup', 'timeperiod'
            ),
        3 => array(
            'active_checks_enabled', 'passive_checks_enabled', 'alias',
            'display_name', 'host_name', 'address', 'hostgroups', 'parents',
            'hostgroup_members', 'members', 'service_description',
            'servicegroups', 'is_volatile', 'servicegroup_name',
            'servicegroup_members', 'contact_name', 'contactgroups', 'email',
            'pager', 'can_submit_commands', 'contactgroup_name',
            'contactgroup_members', 'host_notifications_enabled',
            'service_notifications_enabled', 'host_notification_period',
            'service_notification_period', 'host_notification_options',
            'service_notification_options', 'host_notification_commands',
            'service_notification_commands', 'check_command',
            'check_freshness', 'check_interval', 'check_period', 'contacts',
            'contact_groups', 'event_handler', 'event_handler_enabled',
            'flap_detection_enabled', 'flap_detection_options',
            'freshness_threshold', 'initial_state', 'low_flap_threshold',
            'high_flap_threshold', 'max_check_attempts',
            'notification_interval', 'first_notification_delay',
            'notification_period', 'notification_options',
            'notifications_enabled', 'stalking_options', 'notes', 'notes_url',
            'action_url', 'icon_image', 'icon_image_alt', 'vrml_image',
            'statusmap_image', '2d_coords', '3d_coords', 'obsess_over_host',
            'obsess_over_hostver_service', 'process_perf_data',
            'retain_status_information', 'retain_nonstatus_information',
            'retry_interval', 'register', 'use', 'name', 'timeperiod_name',
            'exclude', 'command_name', 'command_line', 'dependent_host_name',
            'dependent_hostgroup_name', 'dependent_service_description',
            'inherits_parent', 'execution_failure_criteria',
            'notification_failure_criteria', 'dependency_period',
            'first_notification', 'last_notification', 'escalation_period',
            'escalation_options'
            ),
        4 => array(
            'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday',
            'sunday', 'january', 'february', 'march', 'april', 'may', 'june',
            'july', 'august', 'september', 'october', 'november', 'december',
            'day'
            )
        ),
    'SYMBOLS' => array(
        0 => array(
            '{', '}', ',', '+'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'font-weight:bold;color:#FFDCA8;',
            2 => 'font-weight:bold;color #FFA858;',
            3 => 'font-weight:bold;color:#00C0C0;',
            4 => 'font-weight:bold;color:#C0C0FF;'
            ),
        'SYMBOLS' => array(
            0 => 'font-weight:bold;color:#000000;'
            ),
        'NUMBERS' => array(
            0 => ''
            ),
        'COMMENTS' => array(
            0 => 'color: #AAAAAA; font-style: italic;',
            1 => 'color: #AAAAAA; font-style: italic;',
            2 => 'color: #AAAAAA; font-style: italic;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #660066;',
            'HARD' => 'color: #660066;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'REGEXPS' => array(
            0 => 'font-weight:bold;color:#808080;',
            1 => 'font-weight:bold;color:#000080;',
            2 => 'font-weight:bold;color:red;',
            3 => 'font-weight:bold;color:#808000;',
            4 => 'font-weight:bold;color:blue;',
            5 => 'font-weight:bold;color:#C0FFC0;',
            ),
        'SCRIPT' => array(
            0 => '',
            )
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => '\\'
        ),
    'REGEXPS' => array(
        // Custom macros
        0 => array(
            GESHI_SEARCH => '(\$[a-zA-Z_]+\$)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        // Custom macro definitions
        1 => array(
            GESHI_SEARCH => '(\A|\s)(_[a-zA-Z_]+)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '',
            ),
        // $USERxx$
        2 => array(
            GESHI_SEARCH => '(\$USER[0-9]+\$)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        // $ARGxx$
        3 => array(
            GESHI_SEARCH => '(\$ARG[1-9]\$)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        // register 0
        4 => array(
            GESHI_SEARCH => '(\bregister[\\x20\\t]+[01])',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        // use
        5 => array(
            GESHI_SEARCH => '(use[\\x20\\t]+[^\\x20\\t]+)([\\x20\\t]*[$;#])',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '',
            ),
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => false
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'NUMBERS' => GESHI_NEVER
            )
        )
);

?>
geshi/geshi/properties.php0000664000175000017500000000720212014173376015100 0ustar  benbebenbe 'PROPERTIES',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* Common used variables */
        1 => array(
            '${user.home}'
            ),
        ),
    'SYMBOLS' => array(
        '[', ']', '='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => ''
            ),
        'STRINGS' => array(
            0 => 'color: #933;'
            ),
        'NUMBERS' => array(
            0 => ''
            ),
        'METHODS' => array(
            0 => ''
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;'
            ),
        'REGEXPS' => array(
            0 => 'color: #000080; font-weight:bold;',
            1 => 'color: #008000; font-weight:bold;'
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Entry names
        0 => array(
            GESHI_SEARCH => '^(\s*)([.a-zA-Z0-9_\-]+)(\s*=)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        //Entry values
        1 => array(
            // Evil hackery to get around GeSHi bug: <>" and ; are added so s can be matched
            // Explicit match on variable names because if a comment is before the first < of the span
            // gets chewed up...
            GESHI_SEARCH => '([<>";a-zA-Z0-9_]+\s*)=(.*)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1=',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/diff.php0000664000175000017500000001331512014173405013607 0ustar  benbebenbe 'Diff',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => ' ',
    'KEYWORDS' => array(
            1 => array(
                '\ No newline at end of file'
            ),
//            2 => array(
//                '***************' /* This only seems to works in some cases? */
//            ),
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        1 => false,
//        2 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #aaaaaa; font-style: italic;',
//            2 => 'color: #dd6611;',
            ),
        'COMMENTS' => array(
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => ''
            ),
        'STRINGS' => array(
            0 => ''
            ),
        'NUMBERS' => array(
            0 => ''
            ),
        'METHODS' => array(
            0 => ''
            ),
        'SYMBOLS' => array(
            0 => ''
            ),
        'SCRIPT' => array(
            0 => ''
            ),
        'REGEXPS' => array(
            0 => 'color: #440088;',
            1 => 'color: #991111;',
            2 => 'color: #00b000;',
            3 => 'color: #888822;',
            4 => 'color: #888822;',
            5 => 'color: #0011dd;',
            6 => 'color: #440088;',
            7 => 'color: #991111;',
            8 => 'color: #00b000;',
            9 => 'color: #888822;',
            ),
        ),
    'URLS' => array(
        1 => '',
//        2 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        0 => "[0-9,]+[acd][0-9,]+",
        //Removed lines
        1 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))\\<.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Inserted lines
        2 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))\\>.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Location line
        3 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))-{3}\\s.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Inserted line
        4 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))(\\+){3}\\s.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Modified line
        5 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))\\!.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //File specification
        6 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))[\\@]{2}.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Removed line
        7 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))\\-.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Inserted line
        8 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))\\+.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //File specification
        9 => array(
            GESHI_SEARCH => '(^|(?<=\A\s))(\\*){3}\\s.*$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/fsharp.php0000664000175000017500000002110012014173450014151 0ustar  benbebenbe 'F#',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(3 => '/\(\*(?!\)).*?\*\)/s'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'HARDQUOTE' => array('@"', '"'),
    'HARDESCAPE' => array('"'),
    'HARDCHAR' => '"',
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        /* main F# keywords */
        /* section 3.4 */
        1 => array(
            'abstract', 'and', 'as', 'assert', 'base', 'begin', 'class', 'default', 'delegate', 'do', 'done',
            'downcast', 'downto', 'elif', 'else', 'end', 'exception', 'extern', 'false', 'finally', 'for',
            'fun', 'function', 'if', 'in', 'inherit', 'inline', 'interface', 'internal', 'lazy', 'let',
            'match', 'member', 'module', 'mutable', 'namespace', 'new', 'not', 'null', 'of', 'open', 'or',
            'override', 'private', 'public', 'rec', 'return', 'sig', 'static', 'struct', 'then', 'to',
            'true', 'try', 'type', 'upcast', 'use', 'val', 'void', 'when', 'while', 'with', 'yield',
            'asr', 'land', 'lor', 'lsl', 'lsr', 'lxor', 'mod',
            /* identifiers are reserved for future use by F# */
            'atomic', 'break', 'checked', 'component', 'const', 'constraint', 'constructor',
            'continue', 'eager', 'fixed', 'fori', 'functor', 'global', 'include', 'method', 'mixin',
            'object', 'parallel', 'params', 'process', 'protected', 'pure', 'sealed', 'tailcall',
            'trait', 'virtual', 'volatile',
            /* take monads into account */
            'let!', 'yield!'
            ),
        /* define names of main libraries in F# Core, so we can link to it
         * http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/namespaces.html
         */
        2 => array(
            'Array', 'Array2D', 'Array3D', 'Array4D', 'ComparisonIdentity', 'HashIdentity', 'List',
            'Map', 'Seq', 'SequenceExpressionHelpers', 'Set', 'CommonExtensions', 'Event',
            'ExtraTopLevelOperators', 'LanguagePrimitives', 'NumericLiterals', 'Operators',
            'OptimizedClosures', 'Option', 'String', 'NativePtr', 'Printf'
            ),
        /* 17.2 & 17.3 */
        3 => array(
            'abs', 'acos', 'asin', 'atan', 'atan2', 'ceil', 'cos', 'cosh', 'exp',
            'floor', 'log', 'log10', 'pown', 'round', 'sign', 'sin', 'sinh', 'sqrt',
            'tan', 'tanh',
            'ignore',
            'fst', 'snd',
            'stdin', 'stdout', 'stderr',
            'KeyValue',
            'max', 'min'
            ),
        /* Pervasives Types & Overloaded Conversion Functions */
        4 => array(
            'bool', 'byref', 'byte', 'char', 'decimal', 'double', 'exn', 'float', 'float32',
            'FuncConvert', 'ilsigptr', 'int', 'int16', 'int32', 'int64', 'int8',
            'nativeint', 'nativeptr', 'obj', 'option', 'ref', 'sbyte', 'single', 'string', 'uint16',
            'uint32', 'uint64', 'uint8', 'unativeint', 'unit',
            'enum',
            'async', 'seq', 'dict'
            ),
        /* 17.2 Exceptions */
        5 => array (
            'failwith', 'invalidArg', 'raise', 'rethrow'
            ),
        /* 3.3 Conditional compilation & 13.3 Compiler Directives + light / light off */
        6 => array(
            '(*IF-FSHARP', 'ENDIF-FSHARP*)', '(*F#', 'F#*)', '(*IF-OCAML', 'ENDIF-OCAML*)',
            '#light',
            '#if', '#else', '#endif', '#indent', '#nowarn', '#r', '#reference',
            '#I', '#Include', '#load', '#time', '#help', '#q', '#quit',
            ),
        /* 3.11 Pre-processor Declarations / Identifier Replacements */
        7 => array(
            '__SOURCE_DIRECTORY__', '__SOURCE_FILE__', '__LINE__'
            ),
        /* 17.2 Object Transformation Operators */
        8 => array(
            'box', 'hash', 'sizeof', 'typeof', 'typedefof', 'unbox'
            )
        ),
    /* 17.2 basic operators + the yield and yield! arrows */
    'SYMBOLS' => array(
        1 => array('+', '-', '/', '*', '**', '%', '~-'),
        2 => array('<', '<=', '>', '<=', '=', '<>'),
        3 => array('<<<', '>>>', '^^^', '&&&', '|||', '~~~'),
        4 => array('|>', '>>', '<|', '<<'),
        5 => array('!', '->', '->>'),
        6 => array('[',']','(',')','{','}', '[|', '|]', '(|', '|)'),
        7 => array(':=', ';', ';;')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true, /* keywords */
        2 => true, /* modules */
        3 => true, /* pervasives functions */
        4 => true, /* types and overloaded conversion operators */
        5 => true, /* exceptions */
        6 => true, /* conditional compilation & compiler Directives */
        7 => true, /* pre-processor declarations / identifier replacements */
        8 => true  /* object transformation operators */
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #06c; font-weight: bold;', /* nice blue */
            2 => 'color: #06c; font-weight: bold;', /* nice blue */
            3 => 'color: #06c; font-weight: bold;', /* nice blue */
            4 => 'color: #06c; font-weight: bold;', /* nice blue */
            5 => 'color: #06c; font-weight: bold;', /* nice blue */
            6 => 'color: #06c; font-weight: bold;', /* nice blue */
            7 => 'color: #06c; font-weight: bold;', /* nice blue */
            8 => 'color: #06c; font-weight: bold;' /* nice blue */
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #5d478b; font-style: italic;', /* light purple */
            1 => 'color: #5d478b; font-style: italic;',
            2 => 'color: #5d478b; font-style: italic;', /* light purple */
            3 => 'color: #5d478b; font-style: italic;' /* light purple */
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: #6c6;'
            ),
        'STRINGS' => array(
            0 => 'color: #3cb371;' /* nice green */
            ),
        'NUMBERS' => array(
            0 => 'color: #c6c;' /* pink */
            ),
        'METHODS' => array(
            1 => 'color: #060;' /* dark green */
            ),
        'REGEXPS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #a52a2a;' /* maroon */
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        /* some of keywords are Pervasives functions (land, lxor, asr, ...) */
        1 => '',
        2 => 'http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/namespaces.html',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])"
        )
    )
);

?>geshi/geshi/pli.php0000664000175000017500000002506012014173451013464 0ustar  benbebenbe 'PL/I',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '\''),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'abnormal', 'abs', 'acos', 'acosf', 'add', 'addbuff', 'addr',
            'addrdata', 'alias', 'aligned', 'all', 'alloc', 'allocate',
            'allocation', 'allocn', 'allocsize', 'any', 'anycondition', 'area',
            'ascii', 'asin', 'asinf', 'asm', 'asmtdli', 'assembler',
            'assignable', 'atan', 'atand', 'atanf', 'atanh', 'attach',
            'attention', 'attn', 'auto', 'automatic', 'availablearea',
            'backwards', 'based', 'begin', 'bigendian', 'bin', 'binary',
            'binaryvalue', 'bind', 'binvalue', 'bit', 'bitloc', 'bitlocation',
            'bkwd', 'blksize', 'bool', 'buf', 'buffered', 'buffers', 'bufnd',
            'bufni', 'bufoff', 'bufsp', 'builtin', 'bx', 'by', 'byaddr', 'byte',
            'byvalue', 'b4', 'call', 'cast', 'cds', 'ceil', 'center',
            'centerleft', 'centerright', 'centre', 'centreleft', 'centreright',
            'char', 'character', 'charg', 'chargraphic', 'charval', 'check',
            'checkstg', 'close', 'cmpat', 'cobol', 'col', 'collate', 'column',
            'comment', 'compare', 'compiledate', 'compiletime', 'completion',
            'complex', 'cond', 'condition', 'conjg', 'conn', 'connected',
            'consecutive', 'controlled', 'conv', 'conversion', 'copy', 'cos',
            'cosd', 'cosf', 'cosh', 'count', 'counter', 'cpln', 'cplx', 'cs',
            'cstg', 'ctl', 'ctlasa', 'ctl360', 'currentsize', 'currentstorage',
            'data', 'datafield', 'date', 'datetime', 'days', 'daystodate',
            'daystosecs', 'db', 'dcl', 'dec', 'decimal', 'declare', 'def',
            'default', 'define', 'defined', 'delay', 'delete', 'descriptor',
            'descriptors', 'detach', 'dft', 'dim', 'dimacross', 'dimension',
            'direct', 'display', 'divide', 'do', 'downthru', 'edit', 'else',
            'empty', 'end', 'endfile', 'endpage', 'entry', 'entryaddr', 'env',
            'environment', 'epsilon', 'erf', 'erfc', 'error', 'event', 'excl',
            'exclusive', 'exit', 'exp', 'expf', 'exponent', 'exports', 'ext',
            'external', 'fb', 'fbs', 'fetch', 'file', 'fileddint', 'fileddtest',
            'fileddword', 'fileid', 'fileopen', 'fileread', 'fileseek',
            'filetell', 'filewrite', 'finish', 'first', 'fixed', 'fixedbin',
            'fixeddec', 'fixedoverflow', 'float', 'floatbin', 'floatdec',
            'floor', 'flush', 'fofl', 'format', 'fortran', 'free', 'from',
            'fromalien', 'fs', 'gamma', 'generic', 'genkey', 'get', 'getenv',
            'go', 'goto', 'graphic', 'gx', 'handle', 'hbound', 'hex', 'hexadec',
            'heximage', 'high', 'huge', 'iand', 'ieee', 'ieor', 'if', 'ignore',
            'imag', 'in', 'index', 'indexarea', 'indexed', 'init', 'initial',
            'inline', 'inonly', 'inot', 'inout', 'input', 'int', 'inter',
            'internal', 'into', 'invalidop', 'ior', 'irred', 'irreducible',
            'isfinite', 'isigned', 'isinf', 'isll', 'ismain', 'isnan',
            'isnormal', 'isrl', 'iszero', 'iunsigned', 'key', 'keyed',
            'keyfrom', 'keylength', 'keyloc', 'keyto', 'label', 'last',
            'lbound', 'leave', 'left', 'length', 'like', 'limited', 'line',
            'lineno', 'linesize', 'linkage', 'list', 'littleendian', 'loc',
            'locate', 'location', 'log', 'logf', 'loggamma', 'log10', 'log10f',
            'log2', 'low', 'lowercase', 'lower2', 'maccol', 'maclmar',
            'macname', 'macrmar', 'main', 'max', 'maxexp', 'maxlength',
            'memconvert', 'memcu12', 'memcu14', 'memcu21', 'memcu24', 'memcu41',
            'memcu42', 'memindex', 'memsearch', 'memsearchr', 'memverify',
            'memverifyr', 'min', 'minexp', 'mod', 'mpstr', 'multiply', 'name',
            'native', 'ncp', 'new', 'nocharg', 'nochargraphic', 'nocheck',
            'nocmpat', 'noconv', 'noconversion', 'nodescriptor', 'noexecops',
            'nofixedoverflow', 'nofofl', 'noinline', 'nolock', 'nomap',
            'nomapin', 'nomapout', 'nonasgn', 'nonassignable', 'nonconnected',
            'nonnative', 'noofl', 'nooverflow', 'norescan', 'normal', 'nosize',
            'nostrg', 'nostringrange', 'nostringsize', 'nostrz', 'nosubrg',
            'nosubscriptrange', 'noufl', 'nounderflow', 'nowrite', 'nozdiv',
            'nozerodivide', 'null', 'offset', 'offsetadd', 'offsetdiff',
            'offsetsubtract', 'offsetvalue', 'ofl', 'omitted', 'on', 'onarea',
            'onchar', 'oncode', 'oncondcond', 'oncondid', 'oncount', 'onfile',
            'ongsource', 'onkey', 'online', 'onloc', 'onoffset', 'onsource',
            'onsubcode', 'onwchar', 'onwsource', 'open', 'optional', 'options',
            'order', 'ordinal', 'ordinalname', 'ordinalpred', 'ordinalsucc',
            'other', 'otherwise', 'outonly', 'output', 'overflow', 'package',
            'packagename', 'page', 'pageno', 'pagesize', 'parameter', 'parmset',
            'password', 'pending', 'pic', 'picspec', 'picture', 'places',
            'pliascii', 'plicanc', 'plickpt', 'plidelete', 'plidump',
            'pliebcdic', 'plifill', 'plifree', 'plimove', 'pliover', 'plirest',
            'pliretc', 'pliretv', 'plisaxa', 'plisaxb', 'plisaxc', 'plisaxd',
            'plisrta', 'plisrtb', 'plisrtc', 'plisrtd', 'plitdli', 'plitran11',
            'plitran12', 'plitran21', 'plitran22', 'pointer', 'pointeradd',
            'pointerdiff', 'pointersubtract', 'pointervalue', 'poly', 'pos',
            'position', 'prec', 'precision', 'pred', 'present', 'print',
            'priority', 'proc', 'procedure', 'procedurename', 'procname',
            'prod', 'ptr', 'ptradd', 'ptrdiff', 'ptrsubtract', 'ptrvalue',
            'put', 'putenv', 'quote', 'radix', 'raise2', 'random', 'range',
            'rank', 'read', 'real', 'record', 'recsize', 'recursive', 'red',
            'reducible', 'reentrant', 'refer', 'regional', 'reg12', 'release',
            'rem', 'reorder', 'repattern', 'repeat', 'replaceby2', 'reply',
            'reread', 'rescan', 'reserved', 'reserves', 'resignal', 'respec',
            'retcode', 'return', 'returns', 'reuse', 'reverse', 'revert',
            'rewrite', 'right', 'round', 'rounddec', 'samekey', 'scalarvarying',
            'scale', 'search', 'searchr', 'secs', 'secstodate', 'secstodays',
            'select', 'seql', 'sequential', 'serialize4', 'set', 'sign',
            'signal', 'signed', 'sin', 'sind', 'sinf', 'sinh', 'sis', 'size',
            'skip', 'snap', 'sourcefile', 'sourceline', 'sqrt', 'sqrtf',
            'stackaddr', 'statement', 'static', 'status', 'stg', 'stmt', 'stop',
            'storage', 'stream', 'strg', 'string', 'stringrange', 'stringsize',
            'structure', 'strz', 'subrg', 'subscriptrange', 'substr',
            'subtract', 'succ', 'sum', 'suppress', 'sysin', 'sysnull',
            'sysparm', 'sysprint', 'system', 'sysversion', 'tally', 'tan',
            'tand', 'tanf', 'tanh', 'task', 'then', 'thread', 'threadid',
            'time', 'tiny', 'title', 'to', 'total', 'tpk', 'tpm', 'transient',
            'translate', 'transmit', 'trim', 'trkofl', 'trunc', 'type', 'ufl',
            'ulength', 'ulength16', 'ulength8', 'unal', 'unaligned',
            'unallocated', 'unbuf', 'unbuffered', 'undefinedfile', 'underflow',
            'undf', 'unlock', 'unsigned', 'unspec', 'until', 'update', 'upos',
            'uppercase', 'upthru', 'usubstr', 'usurrogate', 'uvalid', 'uwidth',
            'valid', 'validdate', 'value', 'var', 'varglist', 'vargsize',
            'variable', 'varying', 'varyingz', 'vb', 'vbs', 'verify', 'verifyr',
            'vs', 'vsam', 'wait', 'wchar', 'wcharval', 'weekday', 'when',
            'whigh', 'while', 'widechar', 'wlow', 'write', 'xmlchar', 'y4date',
            'y4julian', 'y4year', 'zdiv', 'zerodivide'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '+', '-', '*', '/', '=', '<', '>', '&', '^', '|', ':', '(', ')', ';', ','
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(1 => ''),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(1 => '.'),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>geshi/geshi/abap.php0000664000175000017500000011357312014173404013610 0ustar  benbebenbe.htm
 *
 * CHANGES
 * -------
 * 2009/02/25 (1.0.8.3)
 *   -  Some more rework of the language file
 * 2009/01/04 (1.0.8.2)
 *   -  Major Release, more than 1000 statements and keywords added = whole abap 7.1 (Sandra Rossi)
 * 2007/06/27 (1.0.0)
 *   -  First Release
 *
 * TODO
 * ----
 *   - in DATA data TYPE type, 2nd "data" and 2nd "type" are highlighted with data
 *     style, but should be ignored. Same problem for all words!!! This is quite impossible to
 *     solve it as we should define syntaxes of all statements (huge effort!) and use a lex
 *     or something like that instead of regexp I guess.
 *   - Some words are considered as being statement names (report, tables, etc.) though they
 *     are used as keyword in some statements. For example: FORM xxxx TABLES itab. It was
 *     arbitrary decided to define them as statement instead of keyword, because it may be
 *     useful to have the URL to SAP help for some of them.
 *   - if a comment is between 2 words of a keyword (for example SEPARATED "comment \n BY),
 *     it is not considered as a keyword, but it should!
 *   - for statements like "READ DATASET", GeSHi does not allow to set URLs because these
 *     statements are determined by REGEXPS. For "READ DATASET", the URL should be
 *     ABAPREAD_DATASET.htm. If a technical solution is found, be careful : URLs
 *     are sometimes not valid because the URL does not exist. For example, for "AT NEW"
 *     statement, the URL should be ABAPAT_ITAB.htm (not ABAPAT_NEW.htm).
 *     There are many other exceptions.
 *     Note: for adding this functionality within your php program, you can execute this code:
 *       function add_urls_to_multi_tokens( $matches ) {
 *           $url = preg_replace( "/[ \n]+/" , "_" , $matches[3] );
 *           if( $url == $matches[3] ) return $matches[0] ;
 *           else return $matches[1]."".$matches[3]."".$matches[4];
 *           }
 *       $html = $geshi->parse_code();
 *       $html = preg_replace_callback( "£(zzz:(control|statement|data);\">)(.+?)()£s", "add_urls_to_multi_tokens", $html );
 *       echo $html;
 *   - Numbers followed by a dot terminating the statement are not properly recognized
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array(
    'LANG_NAME' => 'ABAP',
    'COMMENT_SINGLE' => array(
        1 => '"'
        ),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        // lines beginning with star at 1st position are comments
        // (star anywhere else is not a comment, especially be careful with
        // "assign dref->* to " statement)
        2 => '/^\*.*?$/m'
        ),
    'CASE_KEYWORDS' => 0,
    'QUOTEMARKS' => array(
        1 => "'",
        2 => "`"
        ),
    'ESCAPE_CHAR' => '',

    'KEYWORDS' => array(
        //***********************************************
        // Section 2 : process sequences of several tokens
        //***********************************************

        7 => array(
            'at new',
            'at end of',
            'at first',
            'at last',
            'loop at',
            'loop at screen',
            ),

        8 => array(
            'private section',
            'protected section',
            'public section',
            'at line-selection',
            'at selection-screen',
            'at user-command',
            'assign component',
            'assign table field',
            'call badi',
            'call customer-function',
            'call customer subscreen',
            'call dialog',
            'call function',
            'call method',
            'call screen',
            'call selection-screen',
            'call transaction',
            'call transformation',
            'close cursor',
            'close dataset',
            'commit work',
            'convert date',
            'convert text',
            'convert time stamp',
            'create data',
            'create object',
            'delete dataset',
            'delete from',
            'describe distance',
            'describe field',
            'describe list',
            'describe table',
            'exec sql',
            'exit from sql',
            'exit from step-loop',
            'export dynpro',
            'export nametab',
            'free memory',
            'generate subroutine-pool',
            'get badi',
            'get bit',
            'get cursor',
            'get dataset',
            'get locale',
            'get parameter',
            'get pf-status',
            'get property',
            'get reference',
            'get run time',
            'get time',
            'get time stamp',
            'import directory',
            'insert report',
            'insert text-pool',
            'leave list-processing',
            'leave program',
            'leave screen',
            'leave to list-processing',
            'leave to transaction',
            'modify line',
            'modify screen',
            'move percentage',
            'open cursor',
            'open dataset',
            'raise event',
            'raise exception',
            'read dataset',
            'read line',
            'read report',
            'read table',
            'read textpool',
            'receive results from function',
            'refresh control',
            'rollback work',
            'set bit',
            'set blank lines',
            'set country',
            'set cursor',
            'set dataset',
            'set extended check',
            'set handler',
            'set hold data',
            'set language',
            'set left scroll-boundary',
            'set locale',
            'set margin',
            'set parameter',
            'set pf-status',
            'set property',
            'set run time analyzer',
            'set run time clock',
            'set screen',
            'set titlebar',
            'set update task',
            'set user-command',
            'suppress dialog',
            'truncate dataset',
            'wait until',
            'wait up to',
            ),

        9 => array(
            'accepting duplicate keys',
            'accepting padding',
            'accepting truncation',
            'according to',
            'actual length',
            'adjacent duplicates',
            'after input',
            'all blob columns',
            'all clob columns',
            'all fields',
            'all methods',
            'all other columns',
            'and mark',
            'and return to screen',
            'and return',
            'and skip first screen',
            'and wait',
            'any table',
            'appendage type',
            'archive mode',
            'archiving parameters',
            'area handle',
            'as checkbox',
            'as icon',
            'as line',
            'as listbox',
            'as person table',
            'as search patterns',
            'as separate unit',
            'as subscreen',
            'as symbol',
            'as text',
            'as window',
            'at cursor-selection',
            'at exit-command',
            'at next application statement',
            'at position',

            'backup into',
            'before output',
            'before unwind',
            'begin of block',
            'begin of common part',
            'begin of line',
            'begin of screen',
            'begin of tabbed block',
            'begin of version',
            'begin of',
            'big endian',
            'binary mode',
            'binary search',
            'by kernel module',
            'bypassing buffer',

            'client specified',
            'code page',
            'code page hint',
            'code page into',
            'color black',
            'color blue',
            'color green',
            'color pink',
            'color red',
            'color yellow',
            'compression off',
            'compression on',
            'connect to',
            'corresponding fields of table',
            'corresponding fields of',
            'cover page',
            'cover text',
            'create package',
            'create private',
            'create protected',
            'create public',
            'current position',

            'data buffer',
            'data values',
            'dataset expiration',
            'daylight saving time',
            'default key',
            'default program',
            'default screen',
            'defining database',
            'deleting leading',
            'deleting trailing',
            'directory entry',
            'display like',
            'display offset',
            'during line-selection',
            'dynamic selections',

            'edit mask',
            'end of block',
            'end of common part',
            'end of file',
            'end of line',
            'end of screen',
            'end of tabbed block',
            'end of version',
            'end of',
            'endian into',
            'ending at',
            'enhancement options into',
            'enhancement into',
            'environment time format',
            'execute procedure',
            'exporting list to memory',
            'extension type',

            'field format',
            'field selection',
            'field value into',
            'final methods',
            'first occurrence of',
            'fixed-point arithmetic',
            'for all entries',
            'for all instances',
            'for appending',
            'for columns',
            'for event of',
            'for field',
            'for high',
            'for input',
            'for lines',
            'for low',
            'for node',
            'for output',
            'for select',
            'for table',
            'for testing',
            'for update',
            'for user',
            'frame entry',
            'frame program from',
            'from code page',
            'from context',
            'from database',
            'from logfile id',
            'from number format',
            'from screen',
            'from table',
            'function key',

            'get connection',
            'global friends',
            'group by',

            'hashed table of',
            'hashed table',

            'if found',
            'ignoring case',
            'ignoring conversion errors',
            'ignoring structure boundaries',
            'implementations from',
            'in background',
            'in background task',
            'in background unit',
            'in binary mode',
            'in byte mode',
            'in char-to-hex mode',
            'in character mode',
            'in group',
            'in legacy binary mode',
            'in legacy text mode',
            'in program',
            'in remote task',
            'in text mode',
            'in table',
            'in update task',
            'include bound',
            'include into',
            'include program from',
            'include structure',
            'include type',
            'including gaps',
            'index table',
            'inheriting from',
            'init destination',
            'initial line of',
            'initial line',
            'initial size',
            'internal table',
            'into sortable code',

            'keep in spool',
            'keeping directory entry',
            'keeping logical unit of work',
            'keeping task',
            'keywords from',

            'left margin',
            'left outer',
            'levels into',
            'line format',
            'line into',
            'line of',
            'line page',
            'line value from',
            'line value into',
            'lines of',
            'list authority',
            'list dataset',
            'list name',
            'little endian',
            'lob handle for',
            'local friends',
            'locator for',
            'lower case',

            'main table field',
            'match count',
            'match length',
            'match line',
            'match offset',
            'matchcode object',
            'maximum length',
            'maximum width into',
            'memory id',
            'message into',
            'messages into',
            'modif id',

            'nesting level',
            'new list identification',
            'next cursor',
            'no database selection',
            'no dialog',
            'no end of line',
            'no fields',
            'no flush',
            'no intervals',
            'no intervals off',
            'no standard page heading',
            'no-extension off',
            'non-unique key',
            'non-unique sorted key',
            'not at end of mode',
            'number of lines',
            'number of pages',

            'object key',
            'obligatory off',
            'of current page',
            'of page',
            'of program',
            'offset into',
            'on block',
            'on commit',
            'on end of task',
            'on end of',
            'on exit-command',
            'on help-request for',
            'on radiobutton group',
            'on rollback',
            'on value-request for',
            'open for package',
            'option class-coding',
            'option class',
            'option coding',
            'option expand',
            'option syncpoints',
            'options from',
            'order by',
            'overflow into',

            'package section',
            'package size',
            'preferred parameter',
            'preserving identifier escaping',
            'primary key',
            'print off',
            'print on',
            'program from',
            'program type',

            'radiobutton groups',
            'radiobutton group',
            'range of',
            'reader for',
            'receive buffer',
            'reduced functionality',
            'ref to data',
            'ref to object',
            'ref to',

            'reference into',
            'renaming with suffix',
            'replacement character',
            'replacement count',
            'replacement length',
            'replacement line',
            'replacement offset',
            'respecting blanks',
            'respecting case',
            'result into',
            'risk level',

            'sap cover page',
            'search fkeq',
            'search fkge',
            'search gkeq',
            'search gkge',
            'section of',
            'send buffer',
            'separated by',
            'shared buffer',
            'shared memory',
            'shared memory enabled',
            'skipping byte-order mark',
            'sorted by',
            'sorted table of',
            'sorted table',
            'spool parameters',
            'standard table of',
            'standard table',
            'starting at',
            'starting new task',
            'statements into',
            'structure default',
            'structures into',

            'table field',
            'table of',
            'text mode',
            'time stamp',
            'time zone',
            'to code page',
            'to column',
            'to context',
            'to first page',
            'to last page',
            'to last line',
            'to line',
            'to lower case',
            'to number format',
            'to page',
            'to sap spool',
            'to upper case',
            'tokens into',
            'transporting no fields',
            'type tableview',
            'type tabstrip',

            'unicode enabling',
            'up to',
            'upper case',
            'using edit mask',
            'using key',
            'using no edit mask',
            'using screen',
            'using selection-screen',
            'using selection-set',
            'using selection-sets of program',

            'valid between',
            'valid from',
            'value check',
            'via job',
            'via selection-screen',
            'visible length',

            'whenever found',
            'with analysis',
            'with byte-order mark',
            'with comments',
            'with current switchstates',
            'with explicit enhancements',
            'with frame',
            'with free selections',
            'with further secondary keys',
            'with header line',
            'with hold',
            'with implicit enhancements',
            'with inactive enhancements',
            'with includes',
            'with key',
            'with linefeed',
            'with list tokenization',
            'with native linefeed',
            'with non-unique key',
            'with null',
            'with pragmas',
            'with precompiled headers',
            'with selection-table',
            'with smart linefeed',
            'with table key',
            'with test code',
            'with type-pools',
            'with unique key',
            'with unix linefeed',
            'with windows linefeed',
            'without further secondary keys',
            'without selection-screen',
            'without spool dynpro',
            'without trmac',
            'word into',
            'writer for'
            ),

        //**********************************************************
        // Other abap statements
        //**********************************************************
        3 => array(
            'add',
            'add-corresponding',
            'aliases',
            'append',
            'assign',
            'at',
            'authority-check',

            'break-point',

            'clear',
            'collect',
            'compute',
            'concatenate',
            'condense',
            'class',
            'class-events',
            'class-methods',
            'class-pool',

            'define',
            'delete',
            'demand',
            'detail',
            'divide',
            'divide-corresponding',

            'editor-call',
            'end-of-file',
            'end-enhancement-section',
            'end-of-definition',
            'end-of-page',
            'end-of-selection',
            'endclass',
            'endenhancement',
            'endexec',
            'endform',
            'endfunction',
            'endinterface',
            'endmethod',
            'endmodule',
            'endon',
            'endprovide',
            'endselect',
            'enhancement',
            'enhancement-point',
            'enhancement-section',
            'export',
            'extract',
            'events',

            'fetch',
            'field-groups',
            'find',
            'format',
            'form',
            'free',
            'function-pool',
            'function',

            'get',

            'hide',

            'import',
            'infotypes',
            'input',
            'insert',
            'include',
            'initialization',
            'interface',
            'interface-pool',
            'interfaces',

            'leave',
            'load-of-program',
            'log-point',

            'maximum',
            'message',
            'methods',
            'method',
            'minimum',
            'modify',
            'move',
            'move-corresponding',
            'multiply',
            'multiply-corresponding',

            'new-line',
            'new-page',
            'new-section',

            'overlay',

            'pack',
            'perform',
            'position',
            'print-control',
            'program',
            'provide',
            'put',

            'raise',
            'refresh',
            'reject',
            'replace',
            'report',
            'reserve',

            'scroll',
            'search',
            'select',
            'selection-screen',
            'shift',
            'skip',
            'sort',
            'split',
            'start-of-selection',
            'submit',
            'subtract',
            'subtract-corresponding',
            'sum',
            'summary',
            'summing',
            'supply',
            'syntax-check',

            'top-of-page',
            'transfer',
            'translate',
            'type-pool',

            'uline',
            'unpack',
            'update',

            'window',
            'write'

            ),

        //**********************************************************
        // keywords
        //**********************************************************

        4 => array(
            'abbreviated',
            'abstract',
            'accept',
            'acos',
            'activation',
            'alias',
            'align',
            'all',
            'allocate',
            'and',
            'assigned',
            'any',
            'appending',
            'area',
            'as',
            'ascending',
            'asin',
            'assigning',
            'atan',
            'attributes',
            'avg',

            'backward',
            'between',
            'bit-and',
            'bit-not',
            'bit-or',
            'bit-set',
            'bit-xor',
            'boolc',
            'boolx',
            'bound',
            'bt',
            'blocks',
            'bounds',
            'boxed',
            'by',
            'byte-ca',
            'byte-cn',
            'byte-co',
            'byte-cs',
            'byte-na',
            'byte-ns',

            'ca',
            'calling',
            'casting',
            'ceil',
            'center',
            'centered',
            'changing',
            'char_off',
            'charlen',
            'circular',
            'class_constructor',
            'client',
            'clike',
            'close',
            'cmax',
            'cmin',
            'cn',
            'cnt',
            'co',
            'col_background',
            'col_group',
            'col_heading',
            'col_key',
            'col_negative',
            'col_normal',
            'col_positive',
            'col_total',
            'color',
            'column',
            'comment',
            'comparing',
            'components',
            'condition',
            'context',
            'copies',
            'count',
            'country',
            'cpi',
            'creating',
            'critical',
            'concat_lines_of',
            'cos',
            'cosh',
            'count_any_not_of',
            'count_any_of',
            'cp',
            'cs',
            'csequence',
            'currency',
            'current',
            'cx_static_check',
            'cx_root',
            'cx_dynamic_check',

            'dangerous',
            'database',
            'datainfo',
            'date',
            'dbmaxlen',
            'dd/mm/yy',
            'dd/mm/yyyy',
            'ddmmyy',
            'deallocate',
            'decfloat',
            'decfloat16',
            'decfloat34',
            'decimals',
            'default',
            'deferred',
            'definition',
            'department',
            'descending',
            'destination',
            'disconnect',
            'display-mode',
            'distance',
            'distinct',
            'div',
            'dummy',

            'encoding',
            'end-lines',
            'engineering',
            'environment',
            'eq',
            'equiv',
            'error_message',
            'errormessage',
            'escape',
            'exact',
            'exception-table',
            'exceptions',
            'exclude',
            'excluding',
            'exists',
            'exp',
            'exponent',
            'exporting',
            'extended_monetary',

            'field',
            'filter-table',
            'filters',
            'filter',
            'final',
            'find_any_not_of',
            'find_any_of',
            'find_end',
            'floor',
            'first-line',
            'font',
            'forward',
            'for',
            'frac',
            'from_mixed',
            'friends',
            'from',

            'giving',
            'ge',
            'gt',

            'handle',
            'harmless',
            'having',
            'head-lines',
            'help-id',
            'help-request',
            'high',
            'hold',
            'hotspot',

            'id',
            'ids',
            'immediately',
            'implementation',
            'importing',
            'in',
            'initial',
            'incl',
            'including',
            'increment',
            'index',
            'index-line',
            'inner',
            'inout',
            'intensified',
            'into',
            'inverse',
            'is',
            'iso',

            'join',

            'key',
            'kind',

            'log10',
            'language',
            'late',
            'layout',
            'le',
            'lt',
            'left-justified',
            'leftplus',
            'leftspace',
            'left',
            'length',
            'level',
            'like',
            'line-count',
            'line-size',
            'lines',
            'line',
            'load',
            'long',
            'lower',
            'low',
            'lpi',

            'matches',
            'match',
            'mail',
            'major-id',
            'max',
            'medium',
            'memory',
            'message-id',
            'module',
            'minor-id',
            'min',
            'mm/dd/yyyy',
            'mm/dd/yy',
            'mmddyy',
            'mode',
            'modifier',
            'mod',
            'monetary',

            'name',
            'nb',
            'ne',
            'next',
            'no-display',
            'no-extension',
            'no-gap',
            'no-gaps',
            'no-grouping',
            'no-heading',
            'no-scrolling',
            'no-sign',
            'no-title',
            'no-topofpage',
            'no-zero',
            'nodes',
            'non-unicode',
            'no',
            'number',
            'nmax',
            'nmin',
            'not',
            'null',
            'numeric',
            'numofchar',

            'o',
            'objects',
            'obligatory',
            'occurs',
            'offset',
            'off',
            'of',
            'only',
            'open',
            'option',
            'optional',
            'options',
            'output-length',
            'output',
            'out',
            'on change of',
            'or',
            'others',

            'pad',
            'page',
            'pages',
            'parameter-table',
            'part',
            'performing',
            'pos_high',
            'pos_low',
            'priority',
            'public',
            'pushbutton',

            'queue-only',
            'quickinfo',

            'raising',
            'range',
            'read-only',
            'received',
            'receiver',
            'receiving',
            'redefinition',
            'reference',
            'regex',
            'replacing',
            'reset',
            'responsible',
            'result',
            'results',
            'resumable',
            'returncode',
            'returning',
            'right',
            'right-specified',
            'rightplus',
            'rightspace',
            'round',
            'rows',
            'repeat',
            'requested',
            'rescale',
            'reverse',

            'scale_preserving',
            'scale_preserving_scientific',
            'scientific',
            'scientific_with_leading_zero',
            'screen',
            'scrolling',
            'seconds',
            'segment',
            'shift_left',
            'shift_right',
            'sign',
            'simple',
            'sin',
            'sinh',
            'short',
            'shortdump-id',
            'sign_as_postfix',
            'single',
            'size',
            'some',
            'source',
            'space',
            'spots',
            'stable',
            'state',
            'static',
            'statusinfo',
            'sqrt',
            'string',
            'strlen',
            'structure',
            'style',
            'subkey',
            'submatches',
            'substring',
            'substring_after',
            'substring_before',
            'substring_from',
            'substring_to',
            'super',
            'supplied',
            'switch',

            'tan',
            'tanh',
            'table_line',
            'table',
            'tab',
            'then',
            'timestamp',
            'times',
            'time',
            'timezone',
            'title-lines',
            'title',
            'top-lines',
            'to',
            'to_lower',
            'to_mixed',
            'to_upper',
            'trace-file',
            'trace-table',
            'transporting',
            'trunc',
            'type',

            'under',
            'unique',
            'unit',
            'user-command',
            'using',
            'utf-8',

            'valid',
            'value',
            'value-request',
            'values',
            'vary',
            'varying',
            'version',

            'warning',
            'where',
            'width',
            'with',
            'word',
            'with-heading',
            'with-title',

            'xsequence',
            'xstring',
            'xstrlen',

            'yes',
            'yymmdd',

            'z',
            'zero'

            ),

        //**********************************************************
        // screen statements
        //**********************************************************

        5 => array(
            'call subscreen',
            'chain',
            'endchain',
            'on chain-input',
            'on chain-request',
            'on help-request',
            'on input',
            'on request',
            'on value-request',
            'process'
            ),

        //**********************************************************
        // internal statements
        //**********************************************************

        6 => array(
            'generate dynpro',
            'generate report',
            'import dynpro',
            'import nametab',
            'include methods',
            'load report',
            'scan abap-source',
            'scan and check abap-source',
            'syntax-check for dynpro',
            'syntax-check for program',
            'syntax-trace',
            'system-call',
            'system-exit',
            'verification-message'
            ),

        //**********************************************************
        // Control statements
        //**********************************************************

        1 => array(
            'assert',
            'case',
            'catch',
            'check',
            'cleanup',
            'continue',
            'do',
            'else',
            'elseif',
            'endat',
            'endcase',
            'endcatch',
            'endif',
            'enddo',
            'endloop',
            'endtry',
            'endwhile',
            'exit',
            'if',
            'loop',
            'resume',
            'retry',
            'return',
            'stop',
            'try',
            'when',
            'while'

            ),

        //**********************************************************
        // variable declaration statements
        //**********************************************************

        2 => array(
            'class-data',
            'controls',
            'constants',
            'data',
            'field-symbols',
            'fields',
            'local',
            'parameters',
            'ranges',
            'select-options',
            'statics',
            'tables',
            'type-pools',
            'types'
            )
        ),
    'SYMBOLS' => array(
        0 => array(
            '->*', '->', '=>',
            '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '!', '%', '^', '&', ':', ',', '.'
            ),
        1 => array(
            '>=', '<=', '<', '>', '='
            ),
        2 => array(
            '?='
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        9 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;', //control statements
            2 => 'color: #cc4050; text-transform: uppercase; font-weight: bold; zzz:data;', //data statements
            3 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;', //first token of other statements
            4 => 'color: #500066; text-transform: uppercase; font-weight: bold; zzz:keyword;', // next tokens of other statements ("keywords")
            5 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;',
            6 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;',
            7 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;',
            8 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;',
            9 => 'color: #500066; text-transform: uppercase; font-weight: bold; zzz:keyword;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #339933;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #808080;'
            ),
        'STRINGS' => array(
            0 => 'color: #4da619;'
            ),
        'NUMBERS' => array(
            0 => 'color: #3399ff;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #808080;',
            1 => 'color: #800080;',
            2 => 'color: #0000ff;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm',
        2 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm',
        3 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        9 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '->',
        2 => '=>'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            7 => array(
                'SPACE_AS_WHITESPACE' => true
                ),
            8 => array(
                'SPACE_AS_WHITESPACE' => true
                ),
            9 => array(
                'SPACE_AS_WHITESPACE' => true
                )
            )
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/glsl.php0000664000175000017500000002041012014173412013630 0ustar  benbebenbe 'glSlang',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Multiline-continued single-line comments
        1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Multiline-continued preprocessor define
        2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'if', 'else', 'for', 'while', 'do', 'break', 'continue', 'asm',
            'switch', 'case', 'default', 'return', 'discard',
            'namespace', 'using', 'sizeof', 'cast'
            ),
        2 => array(
            'const', 'uniform', 'attribute', 'centroid', 'varying', 'invariant',
            'in', 'out', 'inout', 'input', 'output', 'typedef', 'volatile',
            'public', 'static', 'extern', 'external', 'packed',
            'inline', 'noinline', 'noperspective', 'flat'
            ),
        3 => array(
            'void', 'bool', 'int', 'long', 'short', 'float', 'half', 'fixed',
            'unsigned', 'lowp', 'mediump', 'highp', 'precision',
            'vec2', 'vec3', 'vec4', 'bvec2', 'bvec3', 'bvec4',
            'dvec2', 'dvec3', 'dvec4', 'fvec2', 'fvec3', 'fvec4',
            'hvec2', 'hvec3', 'hvec4', 'ivec2', 'ivec3', 'ivec4',
            'mat2', 'mat3', 'mat4', 'mat2x2', 'mat3x2', 'mat4x2',
            'mat2x3', 'mat3x3', 'mat4x3', 'mat2x4', 'mat3x4', 'mat4x4',
            'sampler1D', 'sampler2D', 'sampler3D', 'samplerCube',
            'sampler1DShadow', 'sampler2DShadow',
            'struct', 'class', 'union', 'enum', 'interface', 'template'
            ),
        4 => array(
            'this', 'false', 'true'
            ),
        5 => array(
            'radians', 'degrees', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan',
            'pow', 'exp2', 'log2', 'sqrt', 'inversesqrt', 'abs', 'sign', 'ceil',
            'floor', 'fract', 'mod', 'min', 'max', 'clamp', 'mix', 'step',
            'smoothstep', 'length', 'distance', 'dot', 'cross', 'normalize',
            'ftransform', 'faceforward', 'reflect', 'matrixCompMult', 'equal',
            'lessThan', 'lessThanEqual', 'greaterThan', 'greaterThanEqual',
            'notEqual', 'any', 'all', 'not', 'texture1D', 'texture1DProj',
            'texture1DLod', 'texture1DProjLod', 'texture2D', 'texture2DProj',
            'texture2DLod', 'texture2DProjLod', 'texture3D', 'texture3DProj',
            'texture3DLod', 'texture3DProjLod', 'textureCube', 'textureCubeLod',
            'shadow1D', 'shadow1DProj', 'shadow1DLod', 'shadow1DProjLod',
            'shadow2D', 'shadow2DProj', 'shadow2DLod', 'shadow2DProjLod',
            'noise1', 'noise2', 'noise3', 'noise4'
            ),
        6 => array(
            'gl_Position', 'gl_PointSize', 'gl_ClipVertex', 'gl_FragColor',
            'gl_FragData', 'gl_FragDepth', 'gl_FragCoord', 'gl_FrontFacing',
            'gl_Color', 'gl_SecondaryColor', 'gl_Normal', 'gl_Vertex',
            'gl_MultiTexCoord0', 'gl_MultiTexCoord1', 'gl_MultiTexCoord2',
            'gl_MultiTexCoord3', 'gl_MultiTexCoord4', 'gl_MultiTexCoord5',
            'gl_MultiTexCoord6', 'gl_MultiTexCoord7', 'gl_FogCoord',
            'gl_MaxLights', 'gl_MaxClipPlanes', 'gl_MaxTextureUnits',
            'gl_MaxTextureCoords', 'gl_MaxVertexAttribs', 'gl_MaxVaryingFloats',
            'gl_MaxVertexUniformComponents', 'gl_MaxVertexTextureImageUnits',
            'gl_MaxCombinedTextureImageUnits', 'gl_MaxTextureImageUnits',
            'gl_MaxFragmentUniformComponents', 'gl_MaxDrawBuffers', 'gl_Point',
            'gl_ModelViewMatrix', 'gl_ProjectionMatrix', 'gl_FrontMaterial',
            'gl_ModelViewProjectionMatrix', 'gl_TextureMatrix', 'gl_ClipPlane',
            'gl_NormalMatrix', 'gl_ModelViewMatrixInverse', 'gl_BackMaterial',
            'gl_ProjectionMatrixInverse', 'gl_ModelViewProjectionMatrixInverse',
            'gl_TextureMatrixInverse', 'gl_ModelViewMatrixTranspose', 'gl_Fog',
            'gl_ProjectionMatrixTranspose', 'gl_NormalScale', 'gl_DepthRange',
            'gl_odelViewProjectionMatrixTranspose', 'gl_TextureMatrixTranspose',
            'gl_ModelViewMatrixInverseTranspose', 'gl_LightSource',
            'gl_ProjectionMatrixInverseTranspose', 'gl_LightModel',
            'gl_ModelViewProjectionMatrixInverseTranspose', 'gl_TexCoord',
            'gl_TextureMatrixInverseTranspose', 'gl_TextureEnvColor',
            'gl_FrontLightModelProduct', 'gl_BackLightModelProduct',
            'gl_FrontLightProduct', 'gl_BackLightProduct', 'gl_ObjectPlaneS',
            'gl_ObjectPlaneT', 'gl_ObjectPlaneR', 'gl_ObjectPlaneQ',
            'gl_EyePlaneS', 'gl_EyePlaneT', 'gl_EyePlaneR', 'gl_EyePlaneQ',
            'gl_FrontColor', 'gl_BackColor', 'gl_FrontSecondaryColor',
            'gl_BackSecondaryColor', 'gl_FogFragCoord', 'gl_PointCoord'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^',
        '&', '?', ':', '.', '|', ';', ',', '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #333399; font-weight: bold;',
            3 => 'color: #000066; font-weight: bold;',
            4 => 'color: #333399; font-weight: bold;',
            5 => 'color: #993333; font-weight: bold;',
            6 => 'color: #551111;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #009900;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000066;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000ff;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'OOLANG' => array(
            'MATCH_BEFORE' => '',
            'MATCH_AFTER' => '[a-zA-Z_][a-zA-Z0-9_]*',
            'MATCH_SPACES' => '[\s]*'
        )
    )
);

?>geshi/geshi/xbasic.php0000664000175000017500000001256212014173414014153 0ustar  benbebenbe 'XBasic',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'WHILE', 'UNTIL', 'TRUE', 'TO', 'THEN', 'SUB', 'STOP', 'STEP',
            'SELECT', 'RETURN', 'PROGRAM', 'NEXT', 'LOOP', 'IFZ',
            'IFT', 'IFF', 'IF', 'GOTO', 'GOSUB', 'FOR', 'FALSE', 'EXIT',
            'ENDIF', 'END', 'ELSE', 'DO', 'CASE', 'ALL'
            ),
        2 => array(
            'XMAKE', 'XLONGAT', 'XLONG', 'WRITE', 'VOID', 'VERSION$', 'VERSION',
            'USHORTAT', 'USHORT', 'UNION', 'ULONGAT', 'ULONG', 'UCASE$',
            'UBYTEAT', 'UBYTE', 'UBOUND', 'TYPE','TRIM$', 'TAB', 'SWAP',
            'SUBADDRESS', 'SUBADDR', 'STUFF$', 'STRING', 'STRING$', 'STR$',
            'STATIC', 'SSHORTAT', 'SSHORT', 'SPACE$', 'SMAKE', 'SLONGAT', 'SLONG',
            'SIZE', 'SINGLEAT', 'SINGLE', 'SIGNED$', 'SIGN', 'SHELL', 'SHARED',
            'SGN', 'SFUNCTION', 'SET', 'SEEK', 'SCOMPLEX', 'SBYTEAT', 'SBYTE',
            'RTRIM$', 'ROTATER', 'ROTATEL', 'RJUST$', 'RINSTRI', 'RINSTR',
            'RINCHRI', 'RINCHR', 'RIGHT$', 'REDIM', 'READ', 'RCLIP$', 'QUIT',
            'PROGRAM$', 'PRINT', 'POF', 'OPEN', 'OCTO$', 'OCT$', 'NULL$', 'MIN',
            'MID$', 'MAX', 'MAKE', 'LTRIM$', 'LOF', 'LJUST$', 'LIBRARY', 'LEN',
            'LEFT$', 'LCLIP$', 'LCASE$', 'INTERNAL', 'INT', 'INSTRI', 'INSTR',
            'INLINE$', 'INFILE$', 'INCHRI', 'INCHR', 'INC', 'IMPORT', 'HIGH1',
            'HIGH0', 'HEXX$', 'HEX$', 'GOADDRESS', 'GOADDR', 'GMAKE', 'GLOW',
            'GIANTAT', 'GIANT', 'GHIGH', 'FUNCTION', 'FUNCADDRESS', 'FUNCADDR',
            'FORMAT$', 'FIX', 'EXTU', 'EXTS', 'EXTERNAL', 'ERROR', 'ERROR$',
            'EOF', 'DOUBLEAT', 'DOUBLE', 'DMAKE', 'DLOW', 'DIM', 'DHIGH',
            'DECLARE', 'DEC', 'DCOMPLEX', 'CSTRING$', 'CSIZE', 'CSIZE$', 'CLR',
            'CLOSE', 'CLEAR', 'CJUST$', 'CHR$', 'CFUNCTION', 'BITFIELD', 'BINB$',
            'BIN$', 'AUTOX', 'AUTOS', 'AUTO', 'ATTACH', 'ASC', 'ABS'
            ),
        3 => array(
            'XOR', 'OR', 'NOT', 'MOD', 'AND'
            ),
        4 => array(
            'TANH', 'TAN', 'SQRT', 'SINH', 'SIN', 'SECH', 'SEC', 'POWER',
            'LOG10', 'LOG', 'EXP10', 'EXP', 'CSCH', 'CSC', 'COTH', 'COT', 'COSH',
            'COS', 'ATANH', 'ATAN', 'ASINH', 'ASIN', 'ASECH', 'ASEC', 'ACSCH',
            'ACSC', 'ACOSH', 'ACOS'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>',
        '=','+','-'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00a1a1;font-weight: bold',
            2 => 'color: #000066;font-weight: bold',
            3 => 'color: #00a166;font-weight: bold',
            4 => 'color: #0066a1;font-weight: bold'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.xbasic.org',
        4 => 'http://www.xbasic.org'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/pike.php0000664000175000017500000000633512014173417013636 0ustar  benbebenbe 'Pike',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'goto', 'break', 'continue', 'return', 'case', 'default', 'if',
            'else', 'switch', 'while', 'foreach', 'do', 'for', 'gauge',
            'destruct', 'lambda', 'inherit', 'import', 'typeof', 'catch',
            'inline', 'nomask', 'private', 'protected', 'public', 'static'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%', '=', '!', '&', '|', '?', ';'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(1 => ''),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(1 => '.'),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>
geshi/geshi/c_mac.php0000664000175000017500000002356212014173427013752 0ustar  benbebenbe 'C (Mac)',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Multiline-continued single-line comments
        1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Multiline-continued preprocessor define
        2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{2}#",
        //Hexadecimal Char Specs
        3 => "#\\\\u[\da-fA-F]{4}#",
        //Hexadecimal Char Specs
        4 => "#\\\\U[\da-fA-F]{8}#",
        //Octal Char Specs
        5 => "#\\\\[0-7]{1,3}#"
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'if', 'return', 'while', 'case', 'continue', 'default',
            'do', 'else', 'for', 'switch', 'goto'
            ),
        2 => array(
            'NULL', 'false', 'break', 'true', 'enum', 'errno', 'EDOM',
            'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG',
            'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG',
            'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP',
            'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP',
            'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN',
            'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN',
            'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT',
            'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR',
            'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam',
            'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr',
            'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC',
            // Mac-specific constants:
            'kCFAllocatorDefault'
            ),
        3 => array(
            'printf', 'fprintf', 'snprintf', 'sprintf', 'assert',
            'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint',
            'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper',
            'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp',
            'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2',
            'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp',
            'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen',
            'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf',
            'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf',
            'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc',
            'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind',
            'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs',
            'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc',
            'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv',
            'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat',
            'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn',
            'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy',
            'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime',
            'asctime', 'ctime', 'gmtime', 'localtime', 'strftime'
            ),
        4 => array(
            'auto', 'char', 'const', 'double',  'float', 'int', 'long',
            'register', 'short', 'signed', 'static', 'struct',
            'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf',
            'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t',
            'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', 'wchar_t',

            'int8', 'int16', 'int32', 'int64',
            'uint8', 'uint16', 'uint32', 'uint64',

            'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t',
            'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t',

            'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t',
            'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t',

            'int8_t', 'int16_t', 'int32_t', 'int64_t',
            'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t',

            'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t',

            // Mac-specific types:
            'CFArrayRef', 'CFDictionaryRef', 'CFMutableDictionaryRef', 'CFBundleRef', 'CFSetRef', 'CFStringRef',
            'CFURLRef', 'CFLocaleRef', 'CFDateFormatterRef', 'CFNumberFormatterRef', 'CFPropertyListRef',
            'CFTreeRef', 'CFWriteStreamRef', 'CFCharacterSetRef', 'CFMutableStringRef', 'CFNotificationRef',
            'CFReadStreamRef', 'CFNull', 'CFAllocatorRef', 'CFBagRef', 'CFBinaryHeapRef',
            'CFBitVectorRef', 'CFBooleanRef', 'CFDataRef', 'CFDateRef', 'CFMachPortRef', 'CFMessagePortRef',
            'CFMutableArrayRef', 'CFMutableBagRef', 'CFMutableBitVectorRef', 'CFMutableCharacterSetRef',
            'CFMutableDataRef', 'CFMutableSetRef', 'CFNumberRef', 'CFPlugInRef', 'CFPlugInInstanceRef',
            'CFRunLoopRef', 'CFRunLoopObserverRef', 'CFRunLoopSourceRef', 'CFRunLoopTimerRef', 'CFSocketRef',
            'CFTimeZoneRef', 'CFTypeRef', 'CFUserNotificationRef', 'CFUUIDRef', 'CFXMLNodeRef', 'CFXMLParserRef',
            'CFXMLTreeRef'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #0000ff;',
            3 => 'color: #0000dd;',
            4 => 'color: #0000ff;'
            ),
        'COMMENTS' => array(
            1 => 'color: #ff0000;',
            2 => 'color: #339900;',
            'MULTI' => 'color: #ff0000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #660099; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #666666;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
            ),
        'METHODS' => array(
            1 => 'color: #00eeff;',
            2 => 'color: #00eeff;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/d.php0000664000175000017500000002552512014173374013135 0ustar  benbebenbe 'D',
    'COMMENT_SINGLE' => array(2 => '///', 1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/', '/+' => '+/'),
    'COMMENT_REGEXP' => array(
        // doxygen comments
        3 => '#/\*\*(?![\*\/]).*\*/#sU',
        // raw strings
        4 => '#r"[^"]*"#s',
        // Script Style interpreter comment
        5 => "/\A#!(?=\\/).*?$/m"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'"),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[abfnrtv\\'\"?\n\\\\]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{2}#",
        //Hexadecimal Char Specs
        3 => "#\\\\u[\da-fA-F]{4}#",
        //Hexadecimal Char Specs
        4 => "#\\\\U[\da-fA-F]{8}#",
        //Octal Char Specs
        5 => "#\\\\[0-7]{1,3}#",
        //Named entity escapes
        /*6 => "#\\\\&(?:quot|amp|lt|gt|OElig|oelig|Scaron|scaron|Yuml|circ|tilde|".
            "ensp|emsp|thinsp|zwnj|zwj|lrm|rlm|ndash|mdash|lsquo|rsquo|sbquo|".
            "ldquo|rdquo|bdquo|dagger|Dagger|permil|lsaquo|rsaquo|euro|nbsp|".
            "iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|".
            "shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|".
            "sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|".
            "Atilde|Auml|Aring|AElig|Ccedil|Egrave|Eacute|Ecirc|Euml|Igrave|".
            "Iacute|Icirc|Iuml|ETH|Ntilde|Ograve|Oacute|Ocirc|Otilde|Ouml|".
            "times|Oslash|Ugrave|Uacute|Ucirc|Uuml|Yacute|THORN|szlig|agrave|".
            "aacute|acirc|atilde|auml|aring|aelig|ccedil|egrave|eacute|ecirc|".
            "euml|igrave|iacute|icirc|iuml|eth|ntilde|ograve|oacute|ocirc|".
            "otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|".
            "yuml|fnof|Alpha|Beta|Gamma|Delta|Epsilon|Zeta|Eta|Theta|Iota|".
            "Kappa|Lambda|Mu|Nu|Xi|Omicron|Pi|Rho|Sigma|Tau|Upsilon|Phi|Chi|".
            "Psi|Omega|alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|".
            "kappa|lambda|mu|nu|xi|omicron|pi|rho|sigmaf|sigma|tau|upsilon|".
            "phi|chi|psi|omega|thetasym|upsih|piv|bull|hellip|prime|Prime|".
            "oline|frasl|weierp|image|real|trade|alefsym|larr|uarr|rarr|darr|".
            "harr|crarr|lArr|uArr|rArr|dArr|hArr|forall|part|exist|empty|".
            "nabla|isin|notin|ni|prod|sum|minus|lowast|radic|prop|infin|ang|".
            "and|or|cap|cup|int|there4|sim|cong|asymp|ne|equiv|le|ge|sub|sup|".
            "nsub|sube|supe|oplus|otimes|perp|sdot|lceil|rceil|lfloor|rfloor|".
            "lang|rang|loz|spades|clubs|hearts|diams);#",*/
        // optimized:
        6 => "#\\\\&(?:A(?:Elig|acute|circ|grave|lpha|ring|tilde|uml)|Beta|".
            "C(?:cedil|hi)|D(?:agger|elta)|E(?:TH|acute|circ|grave|psilon|ta|uml)|".
            "Gamma|I(?:acute|circ|grave|ota|uml)|Kappa|Lambda|Mu|N(?:tilde|u)|".
            "O(?:Elig|acute|circ|grave|m(?:ega|icron)|slash|tilde|uml)|".
            "P(?:hi|i|rime|si)|Rho|S(?:caron|igma)|T(?:HORN|au|heta)|".
            "U(?:acute|circ|grave|psilon|uml)|Xi|Y(?:acute|uml)|Zeta|".
            "a(?:acute|c(?:irc|ute)|elig|grave|l(?:efsym|pha)|mp|n[dg]|ring|".
            "symp|tilde|uml)|b(?:dquo|eta|rvbar|ull)|c(?:ap|cedil|e(?:dil|nt)|".
            "hi|irc|lubs|o(?:ng|py)|rarr|u(?:p|rren))|d(?:Arr|a(?:gger|rr)|".
            "e(?:g|lta)|i(?:ams|vide))|e(?:acute|circ|grave|m(?:pty|sp)|nsp|".
            "psilon|quiv|t[ah]|u(?:ml|ro)|xist)|f(?:nof|orall|ra(?:c(?:1[24]|34)|sl))|".
            "g(?:amma|e|t)|h(?:Arr|arr|e(?:arts|llip))|i(?:acute|circ|excl|grave|mage|".
            "n(?:fin|t)|ota|quest|sin|uml)|kappa|l(?:Arr|a(?:mbda|ng|quo|rr)|ceil|".
            "dquo|e|floor|o(?:wast|z)|rm|s(?:aquo|quo)|t)|m(?:acr|dash|".
            "i(?:cro|ddot|nus)|u)|n(?:abla|bsp|dash|e|i|ot(?:in)?|sub|tilde|u)|".
            "o(?:acute|circ|elig|grave|line|m(?:ega|icron)|plus|r(?:d[fm])?|".
            "slash|ti(?:lde|mes)|uml)|p(?:ar[at]|er(?:mil|p)|hi|iv?|lusmn|ound|".
            "r(?:ime|o[dp])|si)|quot|r(?:Arr|a(?:dic|ng|quo|rr)|ceil|dquo|e(?:al|g)|".
            "floor|ho|lm|s(?:aquo|quo))|s(?:bquo|caron|dot|ect|hy|i(?:gmaf?|m)|".
            "pades|u(?:be?|m|p[123e]?)|zlig)|t(?:au|h(?:e(?:re4|ta(?:sym)?)|insp|".
            "orn)|i(?:lde|mes)|rade)|u(?:Arr|a(?:cute|rr)|circ|grave|ml|".
            "psi(?:h|lon)|uml)|weierp|xi|y(?:acute|en|uml)|z(?:eta|w(?:j|nj)));#",
        ),
    'HARDQUOTE' => array('`', '`'),
    'HARDESCAPE' => array(),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
                'break', 'case', 'continue', 'do', 'else',
                'for', 'foreach', 'goto', 'if', 'return',
                'switch', 'while', 'foreach_reverse'
            ),
        2 => array(
                'alias', 'asm', 'assert', 'body', 'cast',
                'catch', 'default', 'delegate', 'delete',
                'extern', 'false', 'finally', 'function',
                'import', 'in', 'inout',
                'invariant', 'is', 'lazy', 'mixin', 'module', 'new',
                'null', 'out', 'pragma', 'ref', 'super', 'this',
                'throw', 'true', 'try', 'typeid',
                'typeof', 'union', 'with', 'scope'
            ),
        3 => array(
                'ClassInfo', 'Error', 'Exception',
                'Interface', 'Object', 'IMonitor',
                'OffsetTypeInfo', 'Throwable',
                'TypeInfo_Class', 'TypeInfo', '__traits',
                '__EOF__', '__FILE__', '__LINE__',
            ),
        4 => array(
                'abstract', 'align', 'auto', 'bit', 'bool',
                'byte', 'cdouble', 'cfloat', 'char',
                'class', 'const', 'creal', 'dchar', 'dstring', 'debug',
                'deprecated', 'double', 'enum', 'export',
                'final', 'float', 'idouble', 'ifloat', 'immutable', 'int',
                'interface', 'ireal', 'long', 'nothrow', 'override',
                'package', 'private', 'protected', 'ptrdiff_t',
                'public', 'real', 'short', 'shared', 'size_t',
                'static', 'string', 'struct', 'synchronized',
                'template', 'ubyte', 'ucent', 'uint',
                'ulong', 'unittest', 'ushort', 'version',
                'void', 'volatile', 'wchar', 'wstring',
                '__gshared', '@disable', '@property', 'pure', 'safe'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '?', '!', ';', ':', ',', '...', '..',
        '+', '-', '*', '/', '%', '&', '|', '^', '<', '>', '=', '~',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #aaaadd; font-weight: bold;',
            4 => 'color: #993333;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #009933; font-style: italic;',
            3 => 'color: #009933; font-style: italic;',
            4 => 'color: #ff0000;',
            5 => 'color: #0040ff;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #660099; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold;',
            6 => 'color: #666699; font-weight: bold; font-style: italic;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/q.php0000664000175000017500000001406012014173427013141 0ustar  benbebenbe)
 * -------------------------
 *  - Fix the handling of single line comments
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME'                 => 'q/kdb+',
    'COMMENT_SINGLE'            => array(1 => '//'),
    'COMMENT_MULTI'             => array(),
    'COMMENT_REGEXP'            => array(
        2 => '/ \s\/.*/',         # This needs to get fixed up, since it won't catch some instances
        # Multi line comments (Moved from REGEXPS)
        3 => '/^\/\s*?\n.*?\n\\\s*?\n/smi'
        ),
    'CASE_KEYWORDS'             => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS'                => array('"'),
    'ESCAPE_CHAR'               => '\\',
    'OOLANG'                    => false,
    'OBJECT_SPLITTERS'          => array(),
    'STRICT_MODE_APPLIES'       => GESHI_NEVER,
    'SCRIPT_DELIMITERS'         => array(),
    'HIGHLIGHT_STRICT_BLOCK'    => array(),
    'TAB_WIDTH'                 => 4,
    'KEYWORDS' => array(
        1 => array(
            'abs', 'acos', 'all', 'and', 'any', 'asc', 'asin', 'asof', 'atan', 'attr', 'avg', 'avgs', 'bin', 'ceiling',
            'cols', 'cor', 'cos', 'count', 'cov', 'cross', 'cut', 'deltas', 'desc', 'dev', 'differ', 'distinct',
            'div', 'each', 'enlist', 'eval', 'except', 'exec', 'exit', 'exp', 'fills', 'first', 'flip', 'floor',
            'fkeys', 'get', 'getenv', 'group', 'gtime', 'hclose', 'hcount', 'hdel', 'hopen', 'hsym', 'iasc', 'idesc',
            'in', 'insert', 'inter', 'inv', 'joins', 'key', 'keys', 'last', 'like', 'load', 'log', 'lower',
            'lsq', 'ltime', 'ltrim', 'mavg', 'max', 'maxs', 'mcount', 'md5', 'mdev', 'med', 'meta', 'min', 'mins',
            'mmax', 'mmin', 'mmu', 'mod', 'msum', 'neg', 'next', 'not', 'null', 'or', 'over', 'parse', 'peach',
            'plist', 'prd', 'prds', 'prev', 'rand', 'rank', 'ratios', 'raze', 'read0', 'read1', 'reciprocal',
            'reverse', 'rload', 'rotate', 'rsave', 'rtrim', 'save', 'scan', 'set', 'setenv', 'show', 'signum',
            'sin', 'sqrt', 'ss', 'ssr', 'string', 'sublist', 'sum', 'sums', 'sv', 'system', 'tables', 'tan', 'til', 'trim',
            'txf', 'type', 'ungroup', 'union', 'upper', 'upsert', 'value', 'var', 'view', 'views', 'vs',
            'wavg', 'within', 'wsum', 'xasc', 'xbar', 'xcol', 'xcols', 'xdesc', 'xexp', 'xgroup', 'xkey',
            'xlog', 'xprev', 'xrank'
            ),
        # kdb database template keywords
        2 => array(
            'aj', 'by', 'delete', 'fby', 'from', 'ij', 'lj', 'pj', 'select', 'uj', 'update', 'where', 'wj',
            ),
        ),
    'SYMBOLS' => array(
        '?', '#', ',', '_', '@', '.', '^', '~', '$', '!', '\\', '\\', '/:', '\:', "'", "':", '::', '+', '-', '%', '*'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #009900; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #666666; font-style: italic;',
            3 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #660099; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #990000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            2   => 'color: #999900;',
            ),
        'SCRIPT' => array(
            )
        ),
    'REGEXPS' => array(
        # Symbols
        2 => '`[^\s"]*',
        ),
    'URLS'  => array(
        1   => '',
        2   => '',
        ),
);

?>geshi/geshi/ruby.php0000664000175000017500000002301712014173434013662 0ustar  benbebenbe 'Ruby',
    'COMMENT_SINGLE' => array(1 => "#"),
    'COMMENT_MULTI' => array("=begin" => "=end"),
    'COMMENT_REGEXP' => array(
        //Heredoc
        4 => '/<<\s*?(\w+)\\n.*?\\n\\1(?![a-zA-Z0-9])/si',
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '`','\''),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
                'alias', 'and', 'begin', 'break', 'case', 'class',
                'def', 'defined', 'do', 'else', 'elsif', 'end',
                'ensure', 'for', 'if', 'in', 'module', 'while',
                'next', 'not', 'or', 'redo', 'rescue', 'yield',
                'retry', 'super', 'then', 'undef', 'unless',
                'until', 'when', 'include'
            ),
        2 => array(
                '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true',
                'return'
            ),
        3 => array(
                'Array', 'Float', 'Integer', 'String', 'at_exit',
                'autoload', 'binding', 'caller', 'catch', 'chop', 'chop!',
                'chomp', 'chomp!', 'eval', 'exec', 'exit', 'exit!', 'fail',
                'fork', 'format', 'gets', 'global_variables', 'gsub', 'gsub!',
                'iterator?', 'lambda', 'load', 'local_variables', 'loop',
                'open', 'p', 'print', 'printf', 'proc', 'putc', 'puts',
                'raise', 'rand', 'readline', 'readlines', 'require', 'select',
                'sleep', 'split', 'sprintf', 'srand', 'sub', 'sub!', 'syscall',
                'system', 'trace_var', 'trap', 'untrace_var'
            ),
        4 => array(
                'Abbrev', 'ArgumentError', 'Base64', 'Benchmark',
                'Benchmark::Tms', 'Bignum', 'Binding', 'CGI', 'CGI::Cookie',
                'CGI::HtmlExtension', 'CGI::QueryExtension',
                'CGI::Session', 'CGI::Session::FileStore',
                'CGI::Session::MemoryStore', 'Class', 'Comparable', 'Complex',
                'ConditionVariable', 'Continuation', 'Data',
                'Date', 'DateTime', 'Delegator', 'Dir', 'EOFError', 'ERB',
                'ERB::Util', 'Enumerable', 'Enumerable::Enumerator', 'Errno',
                'Exception', 'FalseClass', 'File',
                'File::Constants', 'File::Stat', 'FileTest', 'FileUtils',
                'FileUtils::DryRun', 'FileUtils::NoWrite',
                'FileUtils::StreamUtils_', 'FileUtils::Verbose', 'Find',
                'Fixnum', 'FloatDomainError', 'Forwardable', 'GC', 'Generator',
                'Hash', 'IO', 'IOError', 'Iconv', 'Iconv::BrokenLibrary',
                'Iconv::Failure', 'Iconv::IllegalSequence',
                'Iconv::InvalidCharacter', 'Iconv::InvalidEncoding',
                'Iconv::OutOfRange', 'IndexError', 'Interrupt', 'Kernel',
                'LoadError', 'LocalJumpError', 'Logger', 'Logger::Application',
                'Logger::Error', 'Logger::Formatter', 'Logger::LogDevice',
                'Logger::LogDevice::LogDeviceMutex', 'Logger::Severity',
                'Logger::ShiftingError', 'Marshal', 'MatchData',
                'Math', 'Matrix', 'Method', 'Module', 'Mutex', 'NameError',
                'NameError::message', 'NilClass', 'NoMemoryError',
                'NoMethodError', 'NotImplementedError', 'Numeric', 'Object',
                'ObjectSpace', 'Observable', 'PStore', 'PStore::Error',
                'Pathname', 'Precision', 'Proc', 'Process', 'Process::GID',
                'Process::Status', 'Process::Sys', 'Process::UID', 'Queue',
                'Range', 'RangeError', 'Rational', 'Regexp', 'RegexpError',
                'RuntimeError', 'ScriptError', 'SecurityError', 'Set',
                'Shellwords', 'Signal', 'SignalException', 'SimpleDelegator',
                'SingleForwardable', 'Singleton', 'SingletonClassMethods',
                'SizedQueue', 'SortedSet', 'StandardError', 'StringIO',
                'StringScanner', 'StringScanner::Error', 'Struct', 'Symbol',
                'SyncEnumerator', 'SyntaxError', 'SystemCallError',
                'SystemExit', 'SystemStackError', 'Tempfile',
                'Test::Unit::TestCase', 'Test::Unit', 'Test', 'Thread',
                'ThreadError', 'ThreadGroup',
                'ThreadsWait', 'Time', 'TrueClass', 'TypeError', 'URI',
                'URI::BadURIError', 'URI::Error', 'URI::Escape', 'URI::FTP',
                'URI::Generic', 'URI::HTTP', 'URI::HTTPS',
                'URI::InvalidComponentError', 'URI::InvalidURIError',
                'URI::LDAP', 'URI::MailTo', 'URI::REGEXP',
                'URI::REGEXP::PATTERN', 'UnboundMethod', 'Vector', 'YAML',
                'ZeroDivisionError', 'Zlib',
                'Zlib::BufError', 'Zlib::DataError', 'Zlib::Deflate',
                'Zlib::Error', 'Zlib::GzipFile', 'Zlib::GzipFile::CRCError',
                'Zlib::GzipFile::Error', 'Zlib::GzipFile::LengthError',
                'Zlib::GzipFile::NoFooter', 'Zlib::GzipReader',
                'Zlib::GzipWriter', 'Zlib::Inflate', 'Zlib::MemError',
                'Zlib::NeedDict', 'Zlib::StreamEnd', 'Zlib::StreamError',
                'Zlib::VersionError',
                'Zlib::ZStream',
                'HTML::Selector', 'HashWithIndifferentAccess', 'Inflector',
                'Inflector::Inflections', 'Mime', 'Mime::Type',
                'OCI8AutoRecover', 'TimeZone', 'XmlSimple'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '%', '&', '*', '|', '/', '<', '>',
        '+', '-', '=>', '<<'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color:#9966CC; font-weight:bold;',
            2 => 'color:#0000FF; font-weight:bold;',
            3 => 'color:#CC0066; font-weight:bold;',
            4 => 'color:#CC00FF; font-weight:bold;',
            ),
        'COMMENTS' => array(
            1 => 'color:#008000; font-style:italic;',
            4 => 'color: #cc0000; font-style: italic;',
            'MULTI' => 'color:#000080; font-style:italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color:#000099;'
            ),
        'BRACKETS' => array(
            0 => 'color:#006600; font-weight:bold;'
            ),
        'STRINGS' => array(
            0 => 'color:#996600;'
            ),
        'NUMBERS' => array(
            0 => 'color:#006666;'
            ),
        'METHODS' => array(
            1 => 'color:#9900CC;'
            ),
        'SYMBOLS' => array(
            0 => 'color:#006600; font-weight:bold;'
            ),
        'REGEXPS' => array(
            0 => 'color:#ff6633; font-weight:bold;',
            1 => 'color:#0066ff; font-weight:bold;',
            2 => 'color:#6666ff; font-weight:bold;',
            3 => 'color:#ff3333; font-weight:bold;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        0 => array(//Variables
            GESHI_SEARCH => "([[:space:]])(\\$[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        1 => array(//Arrays
            GESHI_SEARCH => "([[:space:]])(@[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        2 => "([A-Z][a-zA-Z0-9_]*::)+[A-Z][a-zA-Z0-9_]*",//Static OOP symbols
        3 => array(
            GESHI_SEARCH => "([[:space:]]|\[|\()(:[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            '<%' => '%>'
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        ),
    'TAB_WIDTH' => 2
);

?>geshi/geshi/locobasic.php0000664000175000017500000001113112014173444014632 0ustar  benbebenbe 'Locomotive Basic',
    'COMMENT_SINGLE' => array(1 => "'", 2 => 'REM'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            "AFTER", "AND", "AUTO", "BORDER", "BREAK", "CALL", "CAT", "CHAIN",
            "CLEAR", "CLG", "CLS", "CLOSEIN", "CLOSEOUT", "CONT", "CURSOR",
            "DATA", "DEF", "DEFINT", "DEFREAL", "DEFSTR", "DEG", "DELETE",
            "DERR", "DI", "DIM", "DRAW", "DRAWR", "EDIT", "EI", "ELSE", "END",
            "ENV", "ENT", "EOF", "ERASE", "ERL", "ERR", "ERROR", "EVERY",
            "FILL", "FN", "FOR", "FRAME", "GOSUB", "GOTO", "GRAPHICS", "HIMEM",
            "IF", "INK", "INPUT", "KEY", "LET", "LINE", "LIST", "LOAD",
            "LOCATE", "MASK", "MEMORY", "MERGE", "MODE", "MOVE", "MOVER", "NEW",
            "NEXT", "NOT", "ON", "OPENIN", "OPENOUT", "OR", "ORIGIN", "PAPER",
            "PEEK", "PEN", "PLOT", "PLOTR", "POKE", "PRINT", "RAD", "RANDOMIZE",
            "READ", "RELEASE", "REMAIN", "RENUM", "RESTORE", "RESUME", "RETURN",
            "RUN", "SAVE", "SPEED", "SOUND", "SPC", "SQ", "STEP", "STOP", "SWAP",
            "SYMBOL", "TAB", "TAG", "TAGOFF", "TEST", "TESTR", "TIME", "TO",
            "THEN", "TRON", "TROFF", "USING", "WAIT", "WEND", "WHILE", "WIDTH",
            "WINDOW", "WRITE", "XOR", "ZONE"
            ),
        2 => array(
            "ABS", "ASC", "ATN", "BIN", "CHR", "CINT", "COPYCHR", "COS",
            "CREAL", "DEC", "FIX", "FRE", "EXP", "HEX", "INKEY", "INP", "INSTR",
            "INT", "JOY", "LEFT", "LEN", "LOG", "LOG10", "LOWER", "MAX", "MID",
            "MIN", "MOD", "OUT", "PI", "POS", "RIGHT", "RND", "ROUND", "SGN",
            "SIN", "SPACE", "SQR", "STR", "STRING", "TAN", "UNT", "UPPER",
            "VAL", "VPOS", "XPOS", "YPOS"
            )
        ),
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000088; font-weight: bold;',
            2 => 'color: #AA00AA; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;',
            2 => 'color: #808080;'
            ),
        'BRACKETS' => array(
            0 => 'color: #ff0000;'
            ),
        'STRINGS' => array(
            0 => 'color: #008800;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0044ff;'
            ),
        'METHODS' => array(
            0 => 'color: #66cc66;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/coffeescript.php0000664000175000017500000001027212014173405015352 0ustar  benbebenbe 'CoffeeScript',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array('###' => '###'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    //Longest quotemarks ALWAYS first
    'QUOTEMARKS' => array('"""', "'''", '"', "'"),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(

        /*
        ** Set 1: control keywords
        */
        1 => array(
            'break', 'by', 'catch', 'continue', 'else', 'finally', 'for', 'in', 'of', 'if',
            'return', 'switch', 'then', 'throw', 'try', 'unless', 'when', 'while', 'until'
            ),

        /*
        ** Set 2: logic keywords
        */
        2 => array(
            'and', 'or', 'is', 'isnt', 'not'
            ),

        /*
        ** Set 3: other keywords
        */
        3 => array(
            'instanceof', 'new', 'delete', 'typeof',
            'class', 'super', 'this', 'extends'
            ),

        /*
        ** Set 4: constants
        */
        4 => array(
            'true', 'false', 'on', 'off', 'yes', 'no',
            'Infinity', 'NaN', 'undefined', 'null'
            )
        ),
    'SYMBOLS' => array(
            '(', ')', '[', ']', '{', '}', '*', '&', '|', '%', '!', ',', ';', '<', '>', '?', '`',
            '+', '-', '*', '/', '->', '=>', '<<', '>>', '@', ':', '^'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #ff7700;font-weight:bold;',
            2 => 'color: #008000;',
            3 => 'color: #dc143c;',
            4 => 'color: #0000cd;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: black;'
            ),
        'STRINGS' => array(
            0 => 'color: #483d8b;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff4500;'
            ),
        'METHODS' => array(
            1 => 'color: black;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            ''
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true
        )
);

?>geshi/geshi/systemverilog.php0000664000175000017500000003146712014173401015617 0ustar  benbebenbe.
 *
 ************************************************************************
 * Title:        SystemVerilog Language Keywords File for GeSHi
 * Description:  This file contains the SV keywords defined in the
 *               IEEE1800-2009 Draft Standard in the format expected by
 *               GeSHi.
 *
 * Original Author: Sean O'Boyle
 * Contact:         seanoboyle@intelligentdv.com
 * Company:         Intelligent Design Verification
 * Company URL:     http://intelligentdv.com
 *
 * Download the most recent version here:
 *                  http://intelligentdv.com/downloads
 *
 * File Bugs Here:  http://bugs.intelligentdv.com
 *        Project:  SyntaxFiles
 *
 * File: systemverilog.php
 * $LastChangedBy: benbe $
 * $LastChangedDate: 2012-08-18 01:56:20 +0200 (Sa, 18. Aug 2012) $
 * $LastChangedRevision: 2542 $
 *
 ************************************************************************/

$language_data = array (
    'LANG_NAME' => 'SystemVerilog',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        // system tasks
        1 => array(
            'acos','acosh','asin','asinh','assertfailoff','assertfailon',
            'assertkill','assertnonvacuouson','assertoff','asserton',
            'assertpassoff','assertpasson','assertvacuousoff','async$and$array',
            'async$and$plane','async$nand$array','async$nand$plane',
            'async$nor$array','async$nor$plane','async$or$array',
            'async$or$plane','atan','atan2','atanh','bits','bitstoreal',
            'bitstoshortreal','cast','ceil','changed','changed_gclk',
            'changing_gclk','clog2','cos','cosh','countones','coverage_control',
            'coverage_get','coverage_get_max','coverage_merge','coverage_save',
            'dimensions','display','displayb','displayh','displayo',
            'dist_chi_square','dist_erlang','dist_exponential','dist_normal',
            'dist_poisson','dist_t','dist_uniform','dumpall','dumpfile',
            'dumpflush','dumplimit','dumpoff','dumpon','dumpports',
            'dumpportsall','dumpportsflush','dumpportslimit','dumpportsoff',
            'dumpportson','dumpvars','error','exit','exp','falling_gclk',
            'fclose','fdisplay','fdisplayb','fdisplayh','fdisplayo','fell',
            'fell_gclk','feof','ferror','fflush','fgetc','fgets','finish',
            'floor','fmonitor','fmonitorb','fmonitorh','fmonitoro','fopen',
            'fread','fscanf','fseek','fstrobe','fstrobeb','fstrobeh','fstrobeo',
            'ftell','future_gclk','fwrite','fwriteb','fwriteh','fwriteo',
            'get_coverage','high','hypot','increment','info','isunbounded',
            'isunknown','itor','left','ln','load_coverage_db','log10','low',
            'monitor','monitorb','monitorh','monitoro','monitoroff','monitoron',
            'onehot','onehot0','past','past_gclk','pow','printtimescale',
            'q_add','q_exam','q_full','q_initialize','q_remove','random',
            'readmemb','readmemh','realtime','realtobits','rewind','right',
            'rising_gclk','rose','rose_gclk','rtoi','sampled',
            'set_coverage_db_name','sformat','sformatf','shortrealtobits',
            'signed','sin','sinh','size','sqrt','sscanf','stable','stable_gclk',
            'steady_gclk','stime','stop','strobe','strobeb','strobeh','strobeo',
            'swrite','swriteb','swriteh','swriteo','sync$and$array',
            'sync$and$plane','sync$nand$array','sync$nand$plane',
            'sync$nor$array','sync$nor$plane','sync$or$array','sync$or$plane',
            'system','tan','tanh','test$plusargs','time','timeformat',
            'typename','ungetc','unpacked_dimensions','unsigned',
            'value$plusargs','warning','write','writeb','writeh','writememb',
            'writememh','writeo',
            ),
        // compiler directives
        2 => array(
            '`__FILE__', '`__LINE__', '`begin_keywords', '`case', '`celldefine',
            '`endcelldefine', '`default_nettype', '`define', '`default', '`else',
            '`elsif', '`end_keywords', '`endfor', '`endif',
            '`endprotect', '`endswitch', '`endwhile', '`for', '`format',
            '`if', '`ifdef', '`ifndef', '`include', '`let',
            '`line', '`nounconnected_drive', '`pragma', '`protect', '`resetall',
            '`switch', '`timescale', '`unconnected_drive', '`undef', '`undefineall',
            '`while'
            ),
        // keywords
        3 => array(
            'assert', 'assume', 'cover', 'expect', 'disable',
            'iff', 'binsof', 'intersect', 'first_match', 'throughout',
            'within', 'coverpoint', 'cross', 'wildcard', 'bins',
            'ignore_bins', 'illegal_bins', 'genvar', 'if', 'else',
            'unique', 'priority', 'matches', 'default', 'forever',
            'repeat', 'while', 'for', 'do', 'foreach',
            'break', 'continue', 'return', 'pulsestyle_onevent', 'pulsestyle_ondetect',
            'noshowcancelled', 'showcancelled', 'ifnone', 'posedge', 'negedge',
            'edge', 'wait', 'wait_order', 'timeunit', 'timeprecision',
            's', 'ms', 'us', 'ns',
            'ps', 'fs', 'step', 'new', 'extends',
            'this', 'super', 'protected', 'local', 'rand',
            'randc', 'bind', 'constraint', 'solve', 'before',
            'dist', 'inside', 'with', 'virtual', 'extern',
            'pure', 'forkjoin', 'design', 'instance', 'cell',
            'liblist', 'use', 'library', 'incdir', 'include',
            'modport', 'sync_accept_on', 'reject_on', 'accept_on',
            'sync_reject_on', 'restrict', 'let', 'until', 'until_with',
            'unique0', 'eventually', 's_until', 's_always', 's_eventually',
            's_nexttime', 's_until_with', 'global', 'untyped', 'implies',
            'weak', 'strong', 'nexttime'
            ),
        // block keywords
        4 => array(
            'begin', 'end', 'package', 'endpackage', 'macromodule',
            'module', 'endmodule', 'generate', 'endgenerate', 'program',
            'endprogram', 'class', 'endclass', 'function', 'endfunction',
            'case', 'casex', 'casez', 'randcase', 'endcase',
            'interface', 'endinterface', 'clocking', 'endclocking', 'task',
            'endtask', 'primitive', 'endprimitive', 'fork', 'join',
            'join_any', 'join_none', 'covergroup', 'endgroup', 'checker',
            'endchecker', 'property', 'endproperty', 'randsequence', 'sequence',
            'endsequence', 'specify', 'endspecify', 'config', 'endconfig',
            'table', 'endtable', 'initial', 'final', 'always',
            'always_comb', 'always_ff', 'always_latch', 'alias', 'assign',
            'force', 'release'
            ),

        // types
        5 => array(
            'parameter', 'localparam', 'specparam', 'input', 'output',
            'inout', 'ref', 'byte', 'shortint', 'int',
            'integer', 'longint', 'time', 'bit', 'logic',
            'reg', 'supply0', 'supply1', 'tri', 'triand',
            'trior', 'trireg', 'tri0', 'tri1', 'wire',
            'uwire', 'wand', 'wor', 'signed', 'unsigned',
            'shortreal', 'real', 'realtime', 'type', 'void',
            'struct', 'union', 'tagged', 'const', 'var',
            'automatic', 'static', 'packed', 'vectored', 'scalared',
            'typedef', 'enum', 'string', 'chandle', 'event',
            'null', 'pullup', 'pulldown', 'cmos', 'rcmos',
            'nmos', 'pmos', 'rnmos', 'rpmos', 'and',
            'nand', 'or', 'nor', 'xor', 'xnor',
            'not', 'buf', 'tran', 'rtran', 'tranif0',
            'tranif1', 'rtranif0', 'rtranif1', 'bufif0', 'bufif1',
            'notif0', 'notif1', 'strong0', 'strong1', 'pull0',
            'pull1', 'weak0', 'weak1', 'highz0', 'highz1',
            'small', 'medium', 'large'
            ),

        // DPI
        6 => array(
            'DPI', 'DPI-C', 'import', 'export', 'context'
            ),

        // stdlib
        7 => array(
            'randomize', 'mailbox', 'semaphore', 'put', 'get',
            'try_put', 'try_get', 'peek', 'try_peek', 'process',
            'state', 'self', 'status', 'kill', 'await',
            'suspend', 'resume', 'size', 'delete', 'insert',
            'num', 'first', 'last', 'next', 'prev',
            'pop_front', 'pop_back', 'push_front', 'push_back', 'find',
            'find_index', 'find_first', 'find_last', 'find_last_index', 'min',
            'max', 'unique_index', 'reverse', 'sort', 'rsort',
            'shuffle', 'sum', 'product', 'List', 'List_Iterator',
            'neq', 'eq', 'data', 'empty', 'front',
            'back', 'start', 'finish', 'insert_range', 'erase',
            'erase_range', 'set', 'swap', 'clear', 'purge'
            ),

        // key_deprecated
        8 => array(
            'defparam', 'deassign', 'TODO'
        ),

        ),
    'SYMBOLS' => array(
            '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%',
            '^', '&', '|', '~',
            '?', ':',
            '#', '<<', '<<<',
            '>', '<', '>=', '<=',
            '@', ';', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #996666; font-weight: bold;',
            2 => 'color: #336600; font-weight: bold;',
            3 => 'color: #996600; font-weight: bold;',
            4 => 'color: #000033; font-weight: bold;',
            5 => 'color: #330033; font-weight: bold;',
            6 => 'color: #996600; font-weight: bold;',
            7 => 'color: #CC9900; font-weight: bold;',
            8 => 'color: #990000; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #00008B; font-style: italic;',
            'MULTI' => 'color: #00008B; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #9F79EE'
            ),
        'BRACKETS' => array(
            0 => 'color: #9F79EE;'
            ),
        'STRINGS' => array(
            0 => 'color: #FF00FF;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0055;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #5D478B;'
            ),
        'REGEXPS' => array(
            0 => 'color: #ff0055;',
            1 => 'color: #ff0055;',
            2 => 'color: #ff0055;',
            3 => 'color: #ff0055;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => ''
        ),
    'REGEXPS' => array(
        // integer
        0 => "\d'[bdh][0-9_a-fA-FxXzZ]+",
        // realtime
        1 => "\d*\.\d+[munpf]?s",
        // time s, ms, us, ns, ps, of fs
        2 => "\d+[munpf]?s",
        // real
        3 => "\d*\.\d+"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        0 => ''
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true
        ),
    'TAB_WIDTH' => 3,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            1 => array(
                'DISALLOWED_BEFORE' => '(?<=$)'
                )
            )
        )
);

?>geshi/geshi/qbasic.php0000664000175000017500000001435712014173420014145 0ustar  benbebenbe 'QBasic/QuickBASIC',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        //Single-Line Comments using REM command
        2 => "/\bREM.*?$/i",
        //Line numbers
        3 => "/^\s*\d+/im"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'DO', 'LOOP', 'WHILE', 'WEND', 'THEN', 'ELSE', 'ELSEIF', 'IF',
            'FOR', 'TO', 'NEXT', 'STEP', 'GOTO', 'GOSUB', 'CALL', 'CALLS',
            'SUB', 'FUNCTION', 'RETURN', 'RESUME', 'SELECT', 'CASE', 'UNTIL'
            ),
        3 => array(
            'ABS', 'ABSOLUTE', 'ACCESS', 'ALIAS', 'AND', 'ANY', 'APPEND', 'AS', 'ASC', 'ATN',
            'BASE', 'BEEP', 'BINARY', 'BLOAD', 'BSAVE', 'BYVAL',
            'CDBL', 'CDECL', 'CHAIN', 'CHDIR', 'CHR$', 'CINT', 'CIRCLE', 'CLEAR',
            'CLNG', 'CLOSE', 'CLS', 'COM', 'COMMAND$', 'COMMON', 'CONST', 'COS', 'CSNG',
            'CSRLIN', 'CVD', 'CVDMBF', 'CVI', 'CVL', 'CVS', 'CVSMDF', 'DATA', 'DATE$',
            'DECLARE', 'DEF', 'FN', 'SEG', 'DEFDBL', 'DEFINT', 'DEFLNG', 'DEFSNG', 'DEFSTR',
            'DIM', 'DOUBLE', 'DRAW', 'END', 'ENVIRON', 'ENVIRON$', 'EOF', 'EQV', 'ERASE',
            'ERDEV', 'ERDEV$', 'ERL', 'ERR', 'ERROR', 'EXIT', 'EXP', 'FIELD', 'FILEATTR',
            'FILES', 'FIX', 'FRE', 'FREEFILE', 'GET', 'HEX$', 'IMP', 'INKEY$',
            'INP', 'INPUT', 'INPUT$', 'INSTR', 'INT', 'INTEGER', 'IOCTL', 'IOCTL$', 'IS',
            'KEY', 'KILL', 'LBOUND', 'LCASE$', 'LEFT$', 'LEN', 'LET', 'LINE', 'LIST', 'LOC',
            'LOCAL', 'LOCATE', 'LOCK', 'LOF', 'LOG', 'LONG', 'LPOS', 'LPRINT',
            'LSET', 'LTRIM$', 'MID$', 'MKD$', 'MKDIR', 'MKDMBF$', 'MKI$', 'MKL$',
            'MKS$', 'MKSMBF$', 'MOD', 'NAME', 'NOT', 'OCT$', 'OFF', 'ON', 'PEN', 'PLAY',
            'OPEN', 'OPTION', 'OR', 'OUT', 'OUTPUT',
            'PAINT', 'PALETTE', 'PCOPY', 'PEEK', 'PMAP', 'POINT', 'POKE', 'POS', 'PRESET',
            'PRINT', 'PSET', 'PUT', 'RANDOM', 'RANDOMIZE', 'READ', 'REDIM', 'RESET',
            'RESTORE', 'RIGHT$', 'RMDIR', 'RND', 'RSET', 'RTRIM$', 'RUN', 'SADD', 'SCREEN',
            'SEEK', 'SETMEM', 'SGN', 'SHARED', 'SHELL', 'SIGNAL', 'SIN', 'SINGLE', 'SLEEP',
            'SOUND', 'SPACE$', 'SPC', 'SQR', 'STATIC', 'STICK', 'STOP', 'STR$', 'STRIG',
            'STRING', 'STRING$', 'SWAP', 'SYSTEM', 'TAB', 'TAN', 'TIME$', 'TIMER',
            'TROFF', 'TRON', 'TYPE', 'UBOUND', 'UCASE$', 'UEVENT', 'UNLOCK', 'USING', 'VAL',
            'VARPTR', 'VARPTR$', 'VARSEG', 'VIEW', 'WAIT', 'WIDTH', 'WINDOW', 'WRITE', 'XOR'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', ',', '+', '-', '*', '/', '=', '<', '>', '^'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #a1a100;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;',
            2 => 'color: #808080;',
            3 => 'color: #8080C0;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            1 => 'color: #cc66cc;',
            2 => 'color: #339933;'
            )
        ),
    'URLS' => array(
        1 => '',
        3 => 'http://www.qbasicnews.com/qboho/qck{FNAMEL}.shtml'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        1 => '&(?:H[0-9a-fA-F]+|O[0-7]+)(?!\w)',
        2 => '#[0-9]+(?!\w)'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8
);

?>geshi/geshi/cpp.php0000664000175000017500000002356712014173402013470 0ustar  benbebenbe 'C++',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Multiline-continued single-line comments
        1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Multiline-continued preprocessor define
        2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[abfnrtv\\\'\"?\n]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{2}#",
        //Hexadecimal Char Specs
        3 => "#\\\\u[\da-fA-F]{4}#",
        //Hexadecimal Char Specs
        4 => "#\\\\U[\da-fA-F]{8}#",
        //Octal Char Specs
        5 => "#\\\\[0-7]{1,3}#"
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'break', 'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return',
            'switch', 'throw', 'while'
            ),
        2 => array(
            'NULL', 'false', 'true', 'enum', 'errno', 'EDOM',
            'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG',
            'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG',
            'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP',
            'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP',
            'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN',
            'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN',
            'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT',
            'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR',
            'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam',
            'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr',
            'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC',
            'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace',
            'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast',
            'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class'
            ),
        3 => array(
            'cin', 'cerr', 'clog', 'cout', 'delete', 'new', 'this',
            'printf', 'fprintf', 'snprintf', 'sprintf', 'assert',
            'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint',
            'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper',
            'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp',
            'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2',
            'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp',
            'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen',
            'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf',
            'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf',
            'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc',
            'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind',
            'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs',
            'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc',
            'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv',
            'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat',
            'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn',
            'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy',
            'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime',
            'asctime', 'ctime', 'gmtime', 'localtime', 'strftime'
            ),
        4 => array(
            'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint',
            'register', 'short', 'shortint', 'signed', 'static', 'struct',
            'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf',
            'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t',
            'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', 'wchar_t',

            'int8', 'int16', 'int32', 'int64',
            'uint8', 'uint16', 'uint32', 'uint64',

            'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t',
            'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t',

            'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t',
            'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t',

            'int8_t', 'int16_t', 'int32_t', 'int64_t',
            'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t',

            'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t'
            ),
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '{', '}', '[', ']'),
        1 => array('<', '>','='),
        2 => array('+', '-', '*', '/', '%'),
        3 => array('!', '^', '&', '|'),
        4 => array('?', ':', ';')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #0000ff;',
            3 => 'color: #0000dd;',
            4 => 'color: #0000ff;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666;',
            2 => 'color: #339900;',
            'MULTI' => 'color: #ff0000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #660099; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #008000;'
            ),
        'STRINGS' => array(
            0 => 'color: #FF0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
            ),
        'METHODS' => array(
            1 => 'color: #007788;',
            2 => 'color: #007788;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;',
            1 => 'color: #000080;',
            2 => 'color: #000040;',
            3 => 'color: #000040;',
            4 => 'color: #008080;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\|%\\-])"
        )
    )
);

?>geshi/geshi/clojure.php0000664000175000017500000001175612014173377014361 0ustar  benbebenbe 'Clojure',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(';|' => '|;'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'defn', 'defn-', 'defmulti', 'defmethod', 'defmacro', 'deftest',
            'defstruct', 'def', 'defonce', 'let', 'letfn', 'do', 'cond', 'condp',
            'for', 'loop', 'recur', 'when', 'when-not', 'when-let', 'when-first',
            'if', 'if-let', 'if-not', 'doto', 'and', 'or','not','aget','aset',
            'dosync', 'doseq', 'dotimes', 'dorun', 'doall',
            'load', 'import', 'unimport', 'ns', 'in-ns', 'refer', 'print',
            'try', 'catch', 'finally', 'throw', 'fn', 'update-in',
            'with-open', 'with-local-vars', 'binding',
            'gen-class', 'gen-and-load-class', 'gen-and-save-class',
            'implement', 'proxy', 'lazy-cons', 'with-meta',
            'struct', 'struct-map', 'delay', 'locking', 'sync', 'time', 'apply',
            'remove', 'merge', 'interleave', 'interpose', 'distinct',
            'cons', 'concat', 'lazy-cat', 'cycle', 'rest', 'frest', 'drop',
            'drop-while', 'nthrest', 'take', 'take-while', 'take-nth', 'butlast',
            'reverse', 'sort', 'sort-by', 'split-at', 'partition', 'split-with',
            'first', 'ffirst', 'rfirst', 'zipmap', 'into', 'set', 'vec',
            'to-array-2d', 'not-empty', 'seq?', 'not-every?', 'every?', 'not-any?',
            'map', 'mapcat', 'vector?', 'list?', 'hash-map', 'reduce', 'filter',
            'vals', 'keys', 'rseq', 'subseq', 'rsubseq', 'count', 'empty?',
            'fnseq', 'repeatedly', 'iterate', 'drop-last',
            'repeat', 'replicate', 'range',  'into-array',
            'line-seq', 'resultset-seq', 're-seq', 're-find', 'tree-seq', 'file-seq',
            'iterator-seq', 'enumeration-seq', 'declare',  'xml-seq',
            'symbol?', 'string?', 'vector', 'conj', 'str',
            'pos?', 'neg?', 'zero?', 'nil?', 'inc', 'dec', 'format',
            'alter', 'commute', 'ref-set', 'floor', 'assoc', 'send', 'send-off'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|', '.', '..', '->',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #555;',
            1 => 'color: #555;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
            '::', ':'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/pixelbender.php0000664000175000017500000001374412014173411015203 0ustar  benbebenbe 'Pixel Bender 1.0',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'languageVersion', 'kernel'
            ),
        2 => array(
            'import', 'parameter', 'dependent', 'const', 'input', 'output',
            'evaluatePixel', 'evaluateDependents', 'needed', 'changed', 'generated'
            ),
        3 => array(
            'bool', 'bool2', 'bool3', 'bool4', 'int', 'int2', 'int3', 'int4',
            'float', 'float2', 'float3', 'float4', 'float2x2', 'float3x3', 'float4x4',
            'pixel2', 'pixel3', 'pixel4', 'region', 'image1', 'image2', 'image3', 'image4',
            'imageRef', 'void'
            ),
        4 => array(
            'in', 'out', 'inout', 'if', 'else', 'for', 'while', 'do', 'break',
            'continue', 'return'
            ),
        5 => array(
            'radians', 'degrees', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'pow',
            'exp', 'exp2', 'log', 'log2', 'sqrt', 'inverseSqrt', 'abs', 'sign', 'floor',
            'ceil', 'fract', 'mod', 'min', 'max', 'step', 'clamp', 'mix', 'smoothStep',
            'length', 'distance', 'dot', 'cross', 'normalize', 'matrixCompMult', 'lessThan',
            'lessThanEqual', 'greaterThan', 'greaterThanEqual', 'equal', 'notEqual', 'any',
            'all', 'not', 'nowhere', 'everywhere', 'transform', 'union', 'intersect',
            'outset', 'inset', 'bounds', 'isEmpty', 'sample', 'sampleLinear', 'sampleNearest',
            'outCoord', 'dod', 'pixelSize', 'pixelAspectRatio'
            ),
        6 => array(
            'namespace', 'vendor', 'version', 'minValue', 'maxValue', 'defaultValue', 'description'
            ),
        7 => array(
            '#if', '#endif', '#ifdef', '#elif', 'defined', '#define',
            'AIF_ATI', 'AIF_NVIDIA', 'AIF_FLASH_TARGET'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '%', '&', '|', '+', '-', '*', '/', '=', '<', '>', '?', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0033ff;',
            2 => 'color: #0033ff; font-weight: bold;',
            3 => 'color: #0033ff;',
            4 => 'color: #9900cc; font-weight: bold;',
            5 => 'color: #333333;',
            6 => 'color: #666666;',
            7 => 'color: #990000;',
        ),
        'COMMENTS' => array(
            1 => 'color: #009900;',
            'MULTI' => 'color: #3f5fbf;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #990000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000; font-weight:bold;'
            ),
        'METHODS' => array(
            0 => 'color: #000000;',
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array('.'),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);


?>
geshi/geshi/lolcode.php0000664000175000017500000001077312014173407014327 0ustar  benbebenbe 'LOLcode',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        1 => "/\bBTW\b.*$/im",
        2 => "/(^|\b)(?:OBTW\b.+?\bTLDR|LOL\b.+?\/LOL)(\b|$)/si"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        1 => '/:[)>o":]/',
        2 => '/:\([\da-f]+\)/i',
        3 => '/:\{\w+\}/i',
        4 => '/:\[\w+\]/i',
        ),
    'KEYWORDS' => array(
        //Statements
        1 => array(
            'VISIBLE', 'HAI', 'KTHX', 'KTHXBYE', 'SMOOSH', 'GIMMEH', 'PLZ',
            'ON', 'INVISIBLE', 'R', 'ITZ', 'GTFO', 'COMPLAIN', 'GIMME',

            'OPEN', 'FILE', 'I HAS A', 'AWSUM THX', 'O NOES', 'CAN', 'HAS', 'HAZ',
            'HOW DOES I', 'IF U SAY SO', 'FOUND YR', 'BORROW', 'OWN', 'ALONG',
            'WITH', 'WIT', 'LOOK', 'AT', 'AWSUM', 'THX'
            ),
        //Conditionals
        2 => array(
            'IZ', 'YARLY', 'NOWAI', 'WTF?', 'MEBBE', 'OMG', 'OMGWTF',
            'ORLY?', 'OF', 'NOPE', 'SO', 'IM', 'MAI',

            'O RLY?', 'SUM', 'BOTH SAEM', 'DIFFRINT', 'BOTH', 'EITHER', 'WON',
            'DIFF', 'PRODUKT', 'QUOSHUNT', 'MOD', 'MKAY', 'OK', 'THING',
            'BIGNESS'
            ),
        //Repetition
        3 => array(
            'IN', 'OUTTA', 'LOOP', 'WHILE'
            ),
        //Operators \Math
        4 => array(
            'AN', 'AND', 'NOT', 'UP', 'YR', 'UPPIN', 'NERF', 'NERFIN', 'NERFZ',
            'SMASHING', 'UR', 'KINDA', 'LIKE', 'SAEM', 'BIG', 'SMALL',
            'BIGGR', 'SMALLR', 'BIGGER', 'SMALLER', 'GOOD', 'CUTE', 'THAN'
            )
        ),
    'SYMBOLS' => array(
        '.', ',', '?',
        '!!'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #008000;',
            2 => 'color: #000080;',
            3 => 'color: #000080;',
            4 => 'color: #800000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; style: italic;',
            2 => 'color: #666666; style: italic;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'SPACE_AS_WHITESPACE' => true
            )
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/xpp.php0000664000175000017500000002505512014173372013515 0ustar  benbebenbe
 *
 * CHANGES
 * -------
 * 2007/02/28 (1.0.0)
 *  -  First Release
 *
 * TODO (updated 2007/02/27)
 * -------------------------
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'X++',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array( // Primitive types
            'void',
            'str',
            'real',
            'int64',
            'int',
            'date',
            'container',
            'boolean',
            'anytype'
            ),
        2 => array( // Keywords
            'window',
            'while',
            'try',
            'true',
            'throw',
            'switch',
            'super',
            'static',
            'server',
            'right',
            'return',
            'retry',
            'public',
            'protected',
            'private',
            'print',
            'pause',
            'null',
            'new',
            'mod',
            'left',
            'interface',
            'implements',
            'if',
            'for',
            'final',
            'false',
            'extends',
            'else',
            'edit',
            'do',
            'div',
            'display',
            'default',
            'continue',
            'client',
            'class',
            'changeCompany',
            'case',
            'breakpoint',
            'break',
            'at',
            'abstract'
            ),
        3 => array( // Functions within the Axapta kernel
            'year',
            'wkofyr',
            'webwebpartstr',
            'webstaticfilestr',
            'websitetempstr',
            'websitedefstr',
            'webreportstr',
            'webpagedefstr',
            'weboutputcontentitemstr',
            'webmenustr',
            'webletitemstr',
            'webformstr',
            'webdisplaycontentitemstr',
            'webactionitemstr',
            'varstr',
            'utilmoyr',
            'uint2str',
            'typeof',
            'typeid',
            'trunc',
            'today',
            'timenow',
            'time2str',
            'term',
            'tanh',
            'tan',
            'tablestr',
            'tablestaticmethodstr',
            'tablepname',
            'tablenum',
            'tablename2id',
            'tablemethodstr',
            'tableid2pname',
            'tableid2name',
            'tablefieldgroupstr',
            'tablecollectionstr',
            'systemdateset',
            'systemdateget',
            'syd',
            'substr',
            'strupr',
            'strscan',
            'strrtrim',
            'strrep',
            'strrem',
            'strprompt',
            'strpoke',
            'strnfind',
            'strlwr',
            'strltrim',
            'strline',
            'strlen',
            'strkeep',
            'strins',
            'strfmt',
            'strfind',
            'strdel',
            'strcolseq',
            'strcmp',
            'stralpha',
            'str2time',
            'str2num',
            'str2int64',
            'str2int',
            'str2guid',
            'str2enum',
            'str2date',
            'staticmethodstr',
            'sln',
            'sleep',
            'sinh',
            'sin',
            'setprefix',
            'sessionid',
            'securitykeystr',
            'securitykeynum',
            'runbuf',
            'runas',
            'round',
            'resourcestr',
            'reportstr',
            'refprintall',
            'rate',
            'querystr',
            'pv',
            'pt',
            'prmisdefault',
            'primoyr',
            'prevyr',
            'prevqtr',
            'prevmth',
            'power',
            'pmt',
            'num2str',
            'num2date',
            'num2char',
            'nextyr',
            'nextqtr',
            'nextmth',
            'newguid',
            'mthofyr',
            'mthname',
            'mkdate',
            'minint',
            'min',
            'methodstr',
            'menustr',
            'menuitemoutputstr',
            'menuitemdisplaystr',
            'menuitemactionstr',
            'maxint',
            'maxdate',
            'max',
            'match',
            'logn',
            'log10',
            'literalstr',
            'licensecodestr',
            'licensecodenum',
            'intvnorm',
            'intvno',
            'intvname',
            'intvmax',
            'int64str',
            'indexstr',
            'indexnum',
            'indexname2id',
            'indexid2name',
            'idg',
            'identifierstr',
            'helpfilestr',
            'helpdevstr',
            'helpapplstr',
            'guid2str',
            'getprefix',
            'getCurrentUTCTime',
            'fv',
            'funcname',
            'frac',
            'formstr',
            'fieldstr',
            'fieldpname',
            'fieldnum',
            'fieldname2id',
            'fieldid2pname',
            'fieldid2name',
            'extendedTypeStr',
            'extendedTypeNum',
            'exp10',
            'exp',
            'evalbuf',
            'enumstr',
            'enumnum',
            'enumcnt',
            'enum2str',
            'endmth',
            'dimof',
            'dg',
            'decround',
            'ddb',
            'dayofyr',
            'dayofwk',
            'dayofmth',
            'dayname',
            'date2str',
            'date2num',
            'curuserid',
            'curext',
            'cterm',
            'cosh',
            'cos',
            'corrflagset',
            'corrflagget',
            'convertUTCTimeToLocalTime',
            'convertUTCDateToLocalDate',
            'conpoke',
            'conpeek',
            'connull',
            'conlen',
            'conins',
            'confind',
            'configurationkeystr',
            'configurationkeynum',
            'condel',
            'classstr',
            'classnum',
            'classidget',
            'char2num',
            'beep',
            'atan',
            'asin',
            'ascii2ansi',
            'any2str',
            'any2real',
            'any2int64',
            'any2int',
            'any2guid',
            'any2enum',
            'any2date',
            'ansi2ascii',
            'acos',
            'abs'
            ),
        4 => array( // X++ SQL stuff
            'where',
            'update_recordset',
            'ttsCommit',
            'ttsBegin',
            'ttsAbort',
            'sum',
            'setting',
            'select',
            'reverse',
            'pessimisticLock',
            'outer',
            'order by',
            'optimisticLock',
            'notExists',
            'noFetch',
            'next',
            'minof',
            'maxof',
            'like',
            'join',
            'insert_recordset',
            'index hint',
            'index',
            'group by',
            'from',
            'forUpdate',
            'forceSelectOrder',
            'forcePlaceholders',
            'forceNestedLoop',
            'forceLiterals',
            'flush',
            'firstOnly',
            'firstFast',
            'exists',
            'desc',
            'delete_from',
            'count',
            'avg',
            'asc'
            )
        ),
    'SYMBOLS' => array( // X++ symbols
        '!',
        '&',
        '(',
        ')',
        '*',
        '^',
        '|',
        '~',
        '+',
        ',',
        '-',
        '/',
        ':',
        '<',
        '=',
        '>',
        '?',
        '[',
        ']',
        '{',
        '}'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #0000ff;',
            3 => 'color: #0000ff;',
            4 => 'color: #0000ff;'
            ),
        'COMMENTS' => array(
            1 => 'color: #007f00;',
            'MULTI' => 'color: #007f00; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000;'
            ),
        'METHODS' => array(
            1 => 'color: #000000;',
            2 => 'color: #000000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #00007f;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/mirc.php0000664000175000017500000001470312014173403013631 0ustar  benbebenbe 'mIRC Scripting',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'alias', 'menu', 'dialog',
            ),
        2 => array(
            'if', 'elseif', 'else', 'while', 'return', 'goto', 'var'
            ),
        3 => array(
            'action','ajinvite','amsg','ame','anick','aop','auser',
            'avoice','auto','autojoin','away','background','ban','beep',
            'channel','clear','clearall','clipboard','close','closemsg','color',
            'copy','creq','ctcp','ctcpreply','ctcps','dcc','dde','ddeserver',
            'debug','describe','disable','disconnect','dlevel','dll','dns',
            'dqwindow','ebeeps','echo','editbox','emailaddr','enable','events',
            'exit','filter','findtext','finger','flash','flood','flush',
            'flushini','font','fsend','fserve','fullname','ghide','gload',
            'gmove','gopts','gplay','gpoint','gqreq','groups','gshow','gsize',
            'gstop','gtalk','gunload','guser','help','hop','ignore','invite',
            'join','kick','linesep','links','list','load','loadbuf','localinfo',
            'log','me','mdi','mkdir','mnick','mode','msg','names','nick','noop',
            'notice','notify','omsg','onotice','part','partall','pdcc',
            'perform','ping','play','pop','protect','pvoice','qmsg','qme',
            'query','queryrn','quit','raw','remini','remote','remove','rename',
            'enwin','resetidle','rlevel','rmdir','run','ruser','save','savebuf',
            'saveini','say','server','showmirc','sline','sound','speak','splay',
            'sreq','strip','time',
            //'timer[N/name]', //Handled as a regular expression below ...
            'timers','timestamp','titlebar','tnick','tokenize','topic','ulist',
            'unload','updatenl','url','uwho','window','winhelp','write',
            'writeini','who','whois','whowas'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '/'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #994444;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #990000; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: #FF0000;',
            ),
        'STRINGS' => array(
            ),
        'NUMBERS' => array(
            0 => '',
            ),
        'METHODS' => array(
            0 => 'color: #008000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #FF0000;',
            ),
        'REGEXPS' => array(
            0 => 'color: #000099;',
            1 => 'color: #990000;',
            2 => 'color: #000099;',
            3 => 'color: #888800;',
            4 => 'color: #888800;',
            5 => 'color: #000099;',
            6 => 'color: #990000; font-weight: bold;',
            7 => 'color: #990000; font-weight: bold;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.mirc.com/{FNAMEL}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array('.'),
    'REGEXPS' => array(
        //Variable names
        0 => '\$[a-zA-Z0-9]+',
        //Variable names
        1 => '(%|&)[\w\x80-\xFE]+',
        //Client to Client Protocol handling
        2 => '(on|ctcp) (!|@|&)?(\d|\*):[a-zA-Z]+:',
        /*4 => array(
            GESHI_SEARCH => '((on|ctcp) (!|@|&)?(\d|\*):(Action|Active|Agent|AppActive|Ban|Chat|Close|Connect|Ctcp|CtcpReply|DccServer|DeHelp|DeOp|DeVoice|Dialog|Dns|Error|Exit|FileRcvd|FileSent|GetFail|Help|Hotlink|Input|Invite|Join|KeyDown|KeyUp|Kick|Load|Logon|MidiEnd|Mode|Mp3End|Nick|NoSound|Notice|Notify|Op|Open|Part|Ping|Pong|PlayEnd|Quit|Raw|RawMode|SendFail|Serv|ServerMode|ServerOp|Signal|Snotice|Start|Text|Topic|UnBan|Unload|Unotify|User|Mode|Voice|Wallops|WaveEnd):)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),*/
        //Channel names
        3 => '(#|@)[a-zA-Z0-9]+',
        4 => '-[a-z\d]+',
        //Raw protocol handling
        5 => 'raw (\d|\*):',
        //Timer handling
        6 => '(?|:|\/)\/timer(?!s\b)[0-9a-zA-Z_]+',
        // /...
        7 => '(?|:|\/|\w)\/[a-zA-Z][a-zA-Z0-9]*(?!>)'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'NUMBERS' => GESHI_NEVER
            ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => '(?geshi/geshi/groovy.php0000664000175000017500000014602712014173442014234 0ustar  benbebenbe 'Groovy',
    'COMMENT_SINGLE' => array(1 => '//', 3 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Import and Package directives (Basic Support only)
        2 => '/(?:(?<=import[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i',
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'''", '"""', "'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'case', 'do', 'else', 'for', 'foreach', 'if', 'in', 'switch',
            'while',
            ),
        2 => array(
            'abstract', 'as', 'assert', 'break', 'catch', 'class', 'const',
            'continue', 'def', 'default', 'enum', 'extends',
            'false', 'final', 'finally', 'goto', 'implements', 'import',
            'instanceof', 'interface', 'native', 'new', 'null',
            'package', 'private', 'property', 'protected',
            'public', 'return', 'static', 'strictfp', 'super',
            'synchronized', 'this', 'throw', 'throws',
            'transient', 'true', 'try', 'volatile'
            ),
        3 => array(
            'AbstractAction', 'AbstractBorder', 'AbstractButton',
            'AbstractCellEditor', 'AbstractCollection',
            'AbstractColorChooserPanel', 'AbstractDocument',
            'AbstractDocument.AttributeContext',
            'AbstractDocument.Content',
            'AbstractDocument.ElementEdit',
            'AbstractLayoutCache',
            'AbstractLayoutCache.NodeDimensions', 'AbstractList',
            'AbstractListModel', 'AbstractMap',
            'AbstractMethodError', 'AbstractSequentialList',
            'AbstractSet', 'AbstractTableModel',
            'AbstractUndoableEdit', 'AbstractWriter',
            'AccessControlContext', 'AccessControlException',
            'AccessController', 'AccessException', 'Accessible',
            'AccessibleAction', 'AccessibleBundle',
            'AccessibleComponent', 'AccessibleContext',
            'AccessibleHyperlink', 'AccessibleHypertext',
            'AccessibleIcon', 'AccessibleObject',
            'AccessibleRelation', 'AccessibleRelationSet',
            'AccessibleResourceBundle', 'AccessibleRole',
            'AccessibleSelection', 'AccessibleState',
            'AccessibleStateSet', 'AccessibleTable',
            'AccessibleTableModelChange', 'AccessibleText',
            'AccessibleValue', 'Acl', 'AclEntry',
            'AclNotFoundException', 'Action', 'ActionEvent',
            'ActionListener', 'ActionMap', 'ActionMapUIResource',
            'Activatable', 'ActivateFailedException',
            'ActivationDesc', 'ActivationException',
            'ActivationGroup', 'ActivationGroupDesc',
            'ActivationGroupDesc.CommandEnvironment',
            'ActivationGroupID', 'ActivationID',
            'ActivationInstantiator', 'ActivationMonitor',
            'ActivationSystem', 'Activator', 'ActiveEvent',
            'Adjustable', 'AdjustmentEvent',
            'AdjustmentListener', 'Adler32', 'AffineTransform',
            'AffineTransformOp', 'AlgorithmParameterGenerator',
            'AlgorithmParameterGeneratorSpi',
            'AlgorithmParameters', 'AlgorithmParameterSpec',
            'AlgorithmParametersSpi', 'AllPermission',
            'AlphaComposite', 'AlreadyBound',
            'AlreadyBoundException', 'AlreadyBoundHelper',
            'AlreadyBoundHolder', 'AncestorEvent',
            'AncestorListener', 'Annotation', 'Any', 'AnyHolder',
            'AnySeqHelper', 'AnySeqHolder', 'Applet',
            'AppletContext', 'AppletInitializer', 'AppletStub',
            'ApplicationException', 'Arc2D', 'Arc2D.Double',
            'Arc2D.Float', 'Area', 'AreaAveragingScaleFilter',
            'ARG_IN', 'ARG_INOUT', 'ARG_OUT',
            'ArithmeticException', 'Array',
            'ArrayIndexOutOfBoundsException', 'ArrayList',
            'Arrays', 'ArrayStoreException', 'AsyncBoxView',
            'Attribute', 'AttributedCharacterIterator',
            'AttributedCharacterIterator.Attribute',
            'AttributedString', 'AttributeInUseException',
            'AttributeList', 'AttributeModificationException',
            'Attributes', 'Attributes.Name', 'AttributeSet',
            'AttributeSet.CharacterAttribute',
            'AttributeSet.ColorAttribute',
            'AttributeSet.FontAttribute',
            'AttributeSet.ParagraphAttribute', 'AudioClip',
            'AudioFileFormat', 'AudioFileFormat.Type',
            'AudioFileReader', 'AudioFileWriter', 'AudioFormat',
            'AudioFormat.Encoding', 'AudioInputStream',
            'AudioPermission', 'AudioSystem',
            'AuthenticationException',
            'AuthenticationNotSupportedException',
            'Authenticator', 'Autoscroll', 'AWTError',
            'AWTEvent', 'AWTEventListener',
            'AWTEventMulticaster', 'AWTException',
            'AWTPermission', 'BadKind', 'BadLocationException',
            'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION',
            'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE',
            'BAD_POLICY_VALUE', 'BAD_TYPECODE', 'BandCombineOp',
            'BandedSampleModel', 'BasicArrowButton',
            'BasicAttribute', 'BasicAttributes', 'BasicBorders',
            'BasicBorders.ButtonBorder',
            'BasicBorders.FieldBorder',
            'BasicBorders.MarginBorder',
            'BasicBorders.MenuBarBorder',
            'BasicBorders.RadioButtonBorder',
            'BasicBorders.SplitPaneBorder',
            'BasicBorders.ToggleButtonBorder',
            'BasicButtonListener', 'BasicButtonUI',
            'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI',
            'BasicColorChooserUI', 'BasicComboBoxEditor',
            'BasicComboBoxEditor.UIResource',
            'BasicComboBoxRenderer',
            'BasicComboBoxRenderer.UIResource',
            'BasicComboBoxUI', 'BasicComboPopup',
            'BasicDesktopIconUI', 'BasicDesktopPaneUI',
            'BasicDirectoryModel', 'BasicEditorPaneUI',
            'BasicFileChooserUI', 'BasicGraphicsUtils',
            'BasicHTML', 'BasicIconFactory',
            'BasicInternalFrameTitlePane',
            'BasicInternalFrameUI', 'BasicLabelUI',
            'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI',
            'BasicMenuItemUI', 'BasicMenuUI',
            'BasicOptionPaneUI',
            'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI',
            'BasicPasswordFieldUI', 'BasicPermission',
            'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI',
            'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI',
            'BasicRadioButtonUI', 'BasicRootPaneUI',
            'BasicScrollBarUI', 'BasicScrollPaneUI',
            'BasicSeparatorUI', 'BasicSliderUI',
            'BasicSplitPaneDivider', 'BasicSplitPaneUI',
            'BasicStroke', 'BasicTabbedPaneUI',
            'BasicTableHeaderUI', 'BasicTableUI',
            'BasicTextAreaUI', 'BasicTextFieldUI',
            'BasicTextPaneUI', 'BasicTextUI',
            'BasicTextUI.BasicCaret',
            'BasicTextUI.BasicHighlighter',
            'BasicToggleButtonUI', 'BasicToolBarSeparatorUI',
            'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI',
            'BasicViewportUI', 'BatchUpdateException',
            'BeanContext', 'BeanContextChild',
            'BeanContextChildComponentProxy',
            'BeanContextChildSupport',
            'BeanContextContainerProxy', 'BeanContextEvent',
            'BeanContextMembershipEvent',
            'BeanContextMembershipListener', 'BeanContextProxy',
            'BeanContextServiceAvailableEvent',
            'BeanContextServiceProvider',
            'BeanContextServiceProviderBeanInfo',
            'BeanContextServiceRevokedEvent',
            'BeanContextServiceRevokedListener',
            'BeanContextServices', 'BeanContextServicesListener',
            'BeanContextServicesSupport',
            'BeanContextServicesSupport.BCSSServiceProvider',
            'BeanContextSupport',
            'BeanContextSupport.BCSIterator', 'BeanDescriptor',
            'BeanInfo', 'Beans', 'BevelBorder', 'BigDecimal',
            'BigInteger', 'BinaryRefAddr', 'BindException',
            'Binding', 'BindingHelper', 'BindingHolder',
            'BindingIterator', 'BindingIteratorHelper',
            'BindingIteratorHolder', 'BindingIteratorOperations',
            'BindingListHelper', 'BindingListHolder',
            'BindingType', 'BindingTypeHelper',
            'BindingTypeHolder', 'BitSet', 'Blob', 'BlockView',
            'Book', 'Boolean', 'BooleanControl',
            'BooleanControl.Type', 'BooleanHolder',
            'BooleanSeqHelper', 'BooleanSeqHolder', 'Border',
            'BorderFactory', 'BorderLayout', 'BorderUIResource',
            'BorderUIResource.BevelBorderUIResource',
            'BorderUIResource.CompoundBorderUIResource',
            'BorderUIResource.EmptyBorderUIResource',
            'BorderUIResource.EtchedBorderUIResource',
            'BorderUIResource.LineBorderUIResource',
            'BorderUIResource.MatteBorderUIResource',
            'BorderUIResource.TitledBorderUIResource',
            'BoundedRangeModel', 'Bounds', 'Box', 'Box.Filler',
            'BoxedValueHelper', 'BoxLayout', 'BoxView',
            'BreakIterator', 'BufferedImage',
            'BufferedImageFilter', 'BufferedImageOp',
            'BufferedInputStream', 'BufferedOutputStream',
            'BufferedReader', 'BufferedWriter', 'Button',
            'ButtonGroup', 'ButtonModel', 'ButtonUI', 'Byte',
            'ByteArrayInputStream', 'ByteArrayOutputStream',
            'ByteHolder', 'ByteLookupTable', 'Calendar',
            'CallableStatement', 'CannotProceed',
            'CannotProceedException', 'CannotProceedHelper',
            'CannotProceedHolder', 'CannotRedoException',
            'CannotUndoException', 'Canvas', 'CardLayout',
            'Caret', 'CaretEvent', 'CaretListener', 'CellEditor',
            'CellEditorListener', 'CellRendererPane',
            'Certificate', 'Certificate.CertificateRep',
            'CertificateEncodingException',
            'CertificateException',
            'CertificateExpiredException', 'CertificateFactory',
            'CertificateFactorySpi',
            'CertificateNotYetValidException',
            'CertificateParsingException',
            'ChangedCharSetException', 'ChangeEvent',
            'ChangeListener', 'Character', 'Character.Subset',
            'Character.UnicodeBlock', 'CharacterIterator',
            'CharArrayReader', 'CharArrayWriter',
            'CharConversionException', 'CharHolder',
            'CharSeqHelper', 'CharSeqHolder', 'Checkbox',
            'CheckboxGroup', 'CheckboxMenuItem',
            'CheckedInputStream', 'CheckedOutputStream',
            'Checksum', 'Choice', 'ChoiceFormat', 'Class',
            'ClassCastException', 'ClassCircularityError',
            'ClassDesc', 'ClassFormatError', 'ClassLoader',
            'ClassNotFoundException', 'Clip', 'Clipboard',
            'ClipboardOwner', 'Clob', 'Cloneable',
            'CloneNotSupportedException', 'CMMException',
            'CodeSource', 'CollationElementIterator',
            'CollationKey', 'Collator', 'Collection',
            'Collections', 'Color',
            'ColorChooserComponentFactory', 'ColorChooserUI',
            'ColorConvertOp', 'ColorModel',
            'ColorSelectionModel', 'ColorSpace',
            'ColorUIResource', 'ComboBoxEditor', 'ComboBoxModel',
            'ComboBoxUI', 'ComboPopup', 'CommunicationException',
            'COMM_FAILURE', 'Comparable', 'Comparator',
            'Compiler', 'CompletionStatus',
            'CompletionStatusHelper', 'Component',
            'ComponentAdapter', 'ComponentColorModel',
            'ComponentEvent', 'ComponentInputMap',
            'ComponentInputMapUIResource', 'ComponentListener',
            'ComponentOrientation', 'ComponentSampleModel',
            'ComponentUI', 'ComponentView', 'Composite',
            'CompositeContext', 'CompositeName', 'CompositeView',
            'CompoundBorder', 'CompoundControl',
            'CompoundControl.Type', 'CompoundEdit',
            'CompoundName', 'ConcurrentModificationException',
            'ConfigurationException', 'ConnectException',
            'ConnectIOException', 'Connection', 'Constructor',
            'Container', 'ContainerAdapter', 'ContainerEvent',
            'ContainerListener', 'ContentHandler',
            'ContentHandlerFactory', 'ContentModel', 'Context',
            'ContextList', 'ContextNotEmptyException',
            'ContextualRenderedImageFactory', 'Control',
            'Control.Type', 'ControlFactory',
            'ControllerEventListener', 'ConvolveOp', 'CRC32',
            'CRL', 'CRLException', 'CropImageFilter', 'CSS',
            'CSS.Attribute', 'CTX_RESTRICT_SCOPE',
            'CubicCurve2D', 'CubicCurve2D.Double',
            'CubicCurve2D.Float', 'Current', 'CurrentHelper',
            'CurrentHolder', 'CurrentOperations', 'Cursor',
            'Customizer', 'CustomMarshal', 'CustomValue',
            'DatabaseMetaData', 'DataBuffer', 'DataBufferByte',
            'DataBufferInt', 'DataBufferShort',
            'DataBufferUShort', 'DataFlavor',
            'DataFormatException', 'DatagramPacket',
            'DatagramSocket', 'DatagramSocketImpl',
            'DatagramSocketImplFactory', 'DataInput',
            'DataInputStream', 'DataLine', 'DataLine.Info',
            'DataOutput', 'DataOutputStream', 'DataTruncation',
            'DATA_CONVERSION', 'Date', 'DateFormat',
            'DateFormatSymbols', 'DebugGraphics',
            'DecimalFormat', 'DecimalFormatSymbols',
            'DefaultBoundedRangeModel', 'DefaultButtonModel',
            'DefaultCaret', 'DefaultCellEditor',
            'DefaultColorSelectionModel', 'DefaultComboBoxModel',
            'DefaultDesktopManager', 'DefaultEditorKit',
            'DefaultEditorKit.BeepAction',
            'DefaultEditorKit.CopyAction',
            'DefaultEditorKit.CutAction',
            'DefaultEditorKit.DefaultKeyTypedAction',
            'DefaultEditorKit.InsertBreakAction',
            'DefaultEditorKit.InsertContentAction',
            'DefaultEditorKit.InsertTabAction',
            'DefaultEditorKit.PasteAction,',
            'DefaultFocusManager', 'DefaultHighlighter',
            'DefaultHighlighter.DefaultHighlightPainter',
            'DefaultListCellRenderer',
            'DefaultListCellRenderer.UIResource',
            'DefaultListModel', 'DefaultListSelectionModel',
            'DefaultMenuLayout', 'DefaultMetalTheme',
            'DefaultMutableTreeNode',
            'DefaultSingleSelectionModel',
            'DefaultStyledDocument',
            'DefaultStyledDocument.AttributeUndoableEdit',
            'DefaultStyledDocument.ElementSpec',
            'DefaultTableCellRenderer',
            'DefaultTableCellRenderer.UIResource',
            'DefaultTableColumnModel', 'DefaultTableModel',
            'DefaultTextUI', 'DefaultTreeCellEditor',
            'DefaultTreeCellRenderer', 'DefaultTreeModel',
            'DefaultTreeSelectionModel', 'DefinitionKind',
            'DefinitionKindHelper', 'Deflater',
            'DeflaterOutputStream', 'Delegate', 'DesignMode',
            'DesktopIconUI', 'DesktopManager', 'DesktopPaneUI',
            'DGC', 'Dialog', 'Dictionary', 'DigestException',
            'DigestInputStream', 'DigestOutputStream',
            'Dimension', 'Dimension2D', 'DimensionUIResource',
            'DirContext', 'DirectColorModel', 'DirectoryManager',
            'DirObjectFactory', 'DirStateFactory',
            'DirStateFactory.Result', 'DnDConstants', 'Document',
            'DocumentEvent', 'DocumentEvent.ElementChange',
            'DocumentEvent.EventType', 'DocumentListener',
            'DocumentParser', 'DomainCombiner', 'DomainManager',
            'DomainManagerOperations', 'Double', 'DoubleHolder',
            'DoubleSeqHelper', 'DoubleSeqHolder',
            'DragGestureEvent', 'DragGestureListener',
            'DragGestureRecognizer', 'DragSource',
            'DragSourceContext', 'DragSourceDragEvent',
            'DragSourceDropEvent', 'DragSourceEvent',
            'DragSourceListener', 'Driver', 'DriverManager',
            'DriverPropertyInfo', 'DropTarget',
            'DropTarget.DropTargetAutoScroller',
            'DropTargetContext', 'DropTargetDragEvent',
            'DropTargetDropEvent', 'DropTargetEvent',
            'DropTargetListener', 'DSAKey',
            'DSAKeyPairGenerator', 'DSAParameterSpec',
            'DSAParams', 'DSAPrivateKey', 'DSAPrivateKeySpec',
            'DSAPublicKey', 'DSAPublicKeySpec', 'DTD',
            'DTDConstants', 'DynamicImplementation', 'DynAny',
            'DynArray', 'DynEnum', 'DynFixed', 'DynSequence',
            'DynStruct', 'DynUnion', 'DynValue', 'EditorKit',
            'Element', 'ElementIterator', 'Ellipse2D',
            'Ellipse2D.Double', 'Ellipse2D.Float', 'EmptyBorder',
            'EmptyStackException', 'EncodedKeySpec', 'Entity',
            'EnumControl', 'EnumControl.Type', 'Enumeration',
            'Environment', 'EOFException', 'Error',
            'EtchedBorder', 'Event', 'EventContext',
            'EventDirContext', 'EventListener',
            'EventListenerList', 'EventObject', 'EventQueue',
            'EventSetDescriptor', 'Exception',
            'ExceptionInInitializerError', 'ExceptionList',
            'ExpandVetoException', 'ExportException',
            'ExtendedRequest', 'ExtendedResponse',
            'Externalizable', 'FeatureDescriptor', 'Field',
            'FieldNameHelper', 'FieldPosition', 'FieldView',
            'File', 'FileChooserUI', 'FileDescriptor',
            'FileDialog', 'FileFilter', 'FileInputStream',
            'FilenameFilter', 'FileNameMap',
            'FileNotFoundException', 'FileOutputStream',
            'FilePermission', 'FileReader', 'FileSystemView',
            'FileView', 'FileWriter', 'FilteredImageSource',
            'FilterInputStream', 'FilterOutputStream',
            'FilterReader', 'FilterWriter',
            'FixedHeightLayoutCache', 'FixedHolder',
            'FlatteningPathIterator', 'FlavorMap', 'Float',
            'FloatControl', 'FloatControl.Type', 'FloatHolder',
            'FloatSeqHelper', 'FloatSeqHolder', 'FlowLayout',
            'FlowView', 'FlowView.FlowStrategy', 'FocusAdapter',
            'FocusEvent', 'FocusListener', 'FocusManager',
            'Font', 'FontFormatException', 'FontMetrics',
            'FontRenderContext', 'FontUIResource', 'Format',
            'FormatConversionProvider', 'FormView', 'Frame',
            'FREE_MEM', 'GapContent', 'GeneralPath',
            'GeneralSecurityException', 'GlyphJustificationInfo',
            'GlyphMetrics', 'GlyphVector', 'GlyphView',
            'GlyphView.GlyphPainter', 'GradientPaint',
            'GraphicAttribute', 'Graphics', 'Graphics2D',
            'GraphicsConfigTemplate', 'GraphicsConfiguration',
            'GraphicsDevice', 'GraphicsEnvironment',
            'GrayFilter', 'GregorianCalendar',
            'GridBagConstraints', 'GridBagLayout', 'GridLayout',
            'Group', 'Guard', 'GuardedObject', 'GZIPInputStream',
            'GZIPOutputStream', 'HasControls', 'HashMap',
            'HashSet', 'Hashtable', 'HierarchyBoundsAdapter',
            'HierarchyBoundsListener', 'HierarchyEvent',
            'HierarchyListener', 'Highlighter',
            'Highlighter.Highlight',
            'Highlighter.HighlightPainter', 'HTML',
            'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag',
            'HTMLDocument', 'HTMLDocument.Iterator',
            'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory',
            'HTMLEditorKit.HTMLTextAction',
            'HTMLEditorKit.InsertHTMLTextAction',
            'HTMLEditorKit.LinkController',
            'HTMLEditorKit.Parser',
            'HTMLEditorKit.ParserCallback',
            'HTMLFrameHyperlinkEvent', 'HTMLWriter',
            'HttpURLConnection', 'HyperlinkEvent',
            'HyperlinkEvent.EventType', 'HyperlinkListener',
            'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray',
            'ICC_ProfileRGB', 'Icon', 'IconUIResource',
            'IconView', 'IdentifierHelper', 'Identity',
            'IdentityScope', 'IDLEntity', 'IDLType',
            'IDLTypeHelper', 'IDLTypeOperations',
            'IllegalAccessError', 'IllegalAccessException',
            'IllegalArgumentException',
            'IllegalComponentStateException',
            'IllegalMonitorStateException',
            'IllegalPathStateException', 'IllegalStateException',
            'IllegalThreadStateException', 'Image',
            'ImageConsumer', 'ImageFilter',
            'ImageGraphicAttribute', 'ImageIcon',
            'ImageObserver', 'ImageProducer',
            'ImagingOpException', 'IMP_LIMIT',
            'IncompatibleClassChangeError',
            'InconsistentTypeCode', 'IndexColorModel',
            'IndexedPropertyDescriptor',
            'IndexOutOfBoundsException', 'IndirectionException',
            'InetAddress', 'Inflater', 'InflaterInputStream',
            'InheritableThreadLocal', 'InitialContext',
            'InitialContextFactory',
            'InitialContextFactoryBuilder', 'InitialDirContext',
            'INITIALIZE', 'Initializer', 'InitialLdapContext',
            'InlineView', 'InputContext', 'InputEvent',
            'InputMap', 'InputMapUIResource', 'InputMethod',
            'InputMethodContext', 'InputMethodDescriptor',
            'InputMethodEvent', 'InputMethodHighlight',
            'InputMethodListener', 'InputMethodRequests',
            'InputStream', 'InputStreamReader', 'InputSubset',
            'InputVerifier', 'Insets', 'InsetsUIResource',
            'InstantiationError', 'InstantiationException',
            'Instrument', 'InsufficientResourcesException',
            'Integer', 'INTERNAL', 'InternalError',
            'InternalFrameAdapter', 'InternalFrameEvent',
            'InternalFrameListener', 'InternalFrameUI',
            'InterruptedException', 'InterruptedIOException',
            'InterruptedNamingException', 'INTF_REPOS',
            'IntHolder', 'IntrospectionException',
            'Introspector', 'Invalid',
            'InvalidAlgorithmParameterException',
            'InvalidAttributeIdentifierException',
            'InvalidAttributesException',
            'InvalidAttributeValueException',
            'InvalidClassException',
            'InvalidDnDOperationException',
            'InvalidKeyException', 'InvalidKeySpecException',
            'InvalidMidiDataException', 'InvalidName',
            'InvalidNameException', 'InvalidNameHelper',
            'InvalidNameHolder', 'InvalidObjectException',
            'InvalidParameterException',
            'InvalidParameterSpecException',
            'InvalidSearchControlsException',
            'InvalidSearchFilterException', 'InvalidSeq',
            'InvalidTransactionException', 'InvalidValue',
            'INVALID_TRANSACTION', 'InvocationEvent',
            'InvocationHandler', 'InvocationTargetException',
            'InvokeHandler', 'INV_FLAG', 'INV_IDENT',
            'INV_OBJREF', 'INV_POLICY', 'IOException',
            'IRObject', 'IRObjectOperations', 'IstringHelper',
            'ItemEvent', 'ItemListener', 'ItemSelectable',
            'Iterator', 'JApplet', 'JarEntry', 'JarException',
            'JarFile', 'JarInputStream', 'JarOutputStream',
            'JarURLConnection', 'JButton', 'JCheckBox',
            'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox',
            'JComboBox.KeySelectionManager', 'JComponent',
            'JDesktopPane', 'JDialog', 'JEditorPane',
            'JFileChooser', 'JFrame', 'JInternalFrame',
            'JInternalFrame.JDesktopIcon', 'JLabel',
            'JLayeredPane', 'JList', 'JMenu', 'JMenuBar',
            'JMenuItem', 'JobAttributes',
            'JobAttributes.DefaultSelectionType',
            'JobAttributes.DestinationType',
            'JobAttributes.DialogType',
            'JobAttributes.MultipleDocumentHandlingType',
            'JobAttributes.SidesType', 'JOptionPane', 'JPanel',
            'JPasswordField', 'JPopupMenu',
            'JPopupMenu.Separator', 'JProgressBar',
            'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane',
            'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider',
            'JSplitPane', 'JTabbedPane', 'JTable',
            'JTableHeader', 'JTextArea', 'JTextComponent',
            'JTextComponent.KeyBinding', 'JTextField',
            'JTextPane', 'JToggleButton',
            'JToggleButton.ToggleButtonModel', 'JToolBar',
            'JToolBar.Separator', 'JToolTip', 'JTree',
            'JTree.DynamicUtilTreeNode',
            'JTree.EmptySelectionModel', 'JViewport', 'JWindow',
            'Kernel', 'Key', 'KeyAdapter', 'KeyEvent',
            'KeyException', 'KeyFactory', 'KeyFactorySpi',
            'KeyListener', 'KeyManagementException', 'Keymap',
            'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi',
            'KeySpec', 'KeyStore', 'KeyStoreException',
            'KeyStoreSpi', 'KeyStroke', 'Label', 'LabelUI',
            'LabelView', 'LastOwnerException',
            'LayeredHighlighter',
            'LayeredHighlighter.LayerPainter', 'LayoutManager',
            'LayoutManager2', 'LayoutQueue', 'LdapContext',
            'LdapReferralException', 'Lease',
            'LimitExceededException', 'Line', 'Line.Info',
            'Line2D', 'Line2D.Double', 'Line2D.Float',
            'LineBorder', 'LineBreakMeasurer', 'LineEvent',
            'LineEvent.Type', 'LineListener', 'LineMetrics',
            'LineNumberInputStream', 'LineNumberReader',
            'LineUnavailableException', 'LinkageError',
            'LinkedList', 'LinkException', 'LinkLoopException',
            'LinkRef', 'List', 'ListCellRenderer',
            'ListDataEvent', 'ListDataListener', 'ListIterator',
            'ListModel', 'ListResourceBundle',
            'ListSelectionEvent', 'ListSelectionListener',
            'ListSelectionModel', 'ListUI', 'ListView',
            'LoaderHandler', 'Locale', 'LocateRegistry',
            'LogStream', 'Long', 'LongHolder',
            'LongLongSeqHelper', 'LongLongSeqHolder',
            'LongSeqHelper', 'LongSeqHolder', 'LookAndFeel',
            'LookupOp', 'LookupTable', 'MalformedLinkException',
            'MalformedURLException', 'Manifest', 'Map',
            'Map.Entry', 'MARSHAL', 'MarshalException',
            'MarshalledObject', 'Math', 'MatteBorder',
            'MediaTracker', 'Member', 'MemoryImageSource',
            'Menu', 'MenuBar', 'MenuBarUI', 'MenuComponent',
            'MenuContainer', 'MenuDragMouseEvent',
            'MenuDragMouseListener', 'MenuElement', 'MenuEvent',
            'MenuItem', 'MenuItemUI', 'MenuKeyEvent',
            'MenuKeyListener', 'MenuListener',
            'MenuSelectionManager', 'MenuShortcut',
            'MessageDigest', 'MessageDigestSpi', 'MessageFormat',
            'MetaEventListener', 'MetalBorders',
            'MetalBorders.ButtonBorder',
            'MetalBorders.Flush3DBorder',
            'MetalBorders.InternalFrameBorder',
            'MetalBorders.MenuBarBorder',
            'MetalBorders.MenuItemBorder',
            'MetalBorders.OptionDialogBorder',
            'MetalBorders.PaletteBorder',
            'MetalBorders.PopupMenuBorder',
            'MetalBorders.RolloverButtonBorder',
            'MetalBorders.ScrollPaneBorder',
            'MetalBorders.TableHeaderBorder',
            'MetalBorders.TextFieldBorder',
            'MetalBorders.ToggleButtonBorder',
            'MetalBorders.ToolBarBorder', 'MetalButtonUI',
            'MetalCheckBoxIcon', 'MetalCheckBoxUI',
            'MetalComboBoxButton', 'MetalComboBoxEditor',
            'MetalComboBoxEditor.UIResource',
            'MetalComboBoxIcon', 'MetalComboBoxUI',
            'MetalDesktopIconUI', 'MetalFileChooserUI',
            'MetalIconFactory', 'MetalIconFactory.FileIcon16',
            'MetalIconFactory.FolderIcon16',
            'MetalIconFactory.PaletteCloseIcon',
            'MetalIconFactory.TreeControlIcon',
            'MetalIconFactory.TreeFolderIcon',
            'MetalIconFactory.TreeLeafIcon',
            'MetalInternalFrameTitlePane',
            'MetalInternalFrameUI', 'MetalLabelUI',
            'MetalLookAndFeel', 'MetalPopupMenuSeparatorUI',
            'MetalProgressBarUI', 'MetalRadioButtonUI',
            'MetalScrollBarUI', 'MetalScrollButton',
            'MetalScrollPaneUI', 'MetalSeparatorUI',
            'MetalSliderUI', 'MetalSplitPaneUI',
            'MetalTabbedPaneUI', 'MetalTextFieldUI',
            'MetalTheme', 'MetalToggleButtonUI',
            'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI',
            'MetaMessage', 'Method', 'MethodDescriptor',
            'MidiChannel', 'MidiDevice', 'MidiDevice.Info',
            'MidiDeviceProvider', 'MidiEvent', 'MidiFileFormat',
            'MidiFileReader', 'MidiFileWriter', 'MidiMessage',
            'MidiSystem', 'MidiUnavailableException',
            'MimeTypeParseException', 'MinimalHTMLWriter',
            'MissingResourceException', 'Mixer', 'Mixer.Info',
            'MixerProvider', 'ModificationItem', 'Modifier',
            'MouseAdapter', 'MouseDragGestureRecognizer',
            'MouseEvent', 'MouseInputAdapter',
            'MouseInputListener', 'MouseListener',
            'MouseMotionAdapter', 'MouseMotionListener',
            'MultiButtonUI', 'MulticastSocket',
            'MultiColorChooserUI', 'MultiComboBoxUI',
            'MultiDesktopIconUI', 'MultiDesktopPaneUI',
            'MultiFileChooserUI', 'MultiInternalFrameUI',
            'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel',
            'MultiMenuBarUI', 'MultiMenuItemUI',
            'MultiOptionPaneUI', 'MultiPanelUI',
            'MultiPixelPackedSampleModel', 'MultipleMaster',
            'MultiPopupMenuUI', 'MultiProgressBarUI',
            'MultiScrollBarUI', 'MultiScrollPaneUI',
            'MultiSeparatorUI', 'MultiSliderUI',
            'MultiSplitPaneUI', 'MultiTabbedPaneUI',
            'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI',
            'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI',
            'MultiViewportUI', 'MutableAttributeSet',
            'MutableComboBoxModel', 'MutableTreeNode', 'Name',
            'NameAlreadyBoundException', 'NameClassPair',
            'NameComponent', 'NameComponentHelper',
            'NameComponentHolder', 'NamedValue', 'NameHelper',
            'NameHolder', 'NameNotFoundException', 'NameParser',
            'NamespaceChangeListener', 'NameValuePair',
            'NameValuePairHelper', 'Naming', 'NamingContext',
            'NamingContextHelper', 'NamingContextHolder',
            'NamingContextOperations', 'NamingEnumeration',
            'NamingEvent', 'NamingException',
            'NamingExceptionEvent', 'NamingListener',
            'NamingManager', 'NamingSecurityException',
            'NegativeArraySizeException', 'NetPermission',
            'NoClassDefFoundError', 'NoInitialContextException',
            'NoninvertibleTransformException',
            'NoPermissionException', 'NoRouteToHostException',
            'NoSuchAlgorithmException',
            'NoSuchAttributeException', 'NoSuchElementException',
            'NoSuchFieldError', 'NoSuchFieldException',
            'NoSuchMethodError', 'NoSuchMethodException',
            'NoSuchObjectException', 'NoSuchProviderException',
            'NotActiveException', 'NotBoundException',
            'NotContextException', 'NotEmpty', 'NotEmptyHelper',
            'NotEmptyHolder', 'NotFound', 'NotFoundHelper',
            'NotFoundHolder', 'NotFoundReason',
            'NotFoundReasonHelper', 'NotFoundReasonHolder',
            'NotOwnerException', 'NotSerializableException',
            'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION',
            'NO_RESOURCES', 'NO_RESPONSE',
            'NullPointerException', 'Number', 'NumberFormat',
            'NumberFormatException', 'NVList', 'Object',
            'ObjectChangeListener', 'ObjectFactory',
            'ObjectFactoryBuilder', 'ObjectHelper',
            'ObjectHolder', 'ObjectImpl', 'ObjectInput',
            'ObjectInputStream', 'ObjectInputStream.GetField',
            'ObjectInputValidation', 'ObjectOutput',
            'ObjectOutputStream', 'ObjectOutputStream.PutField',
            'ObjectStreamClass', 'ObjectStreamConstants',
            'ObjectStreamException', 'ObjectStreamField',
            'ObjectView', 'OBJECT_NOT_EXIST', 'ObjID',
            'OBJ_ADAPTER', 'Observable', 'Observer',
            'OctetSeqHelper', 'OctetSeqHolder', 'OMGVMCID',
            'OpenType', 'Operation',
            'OperationNotSupportedException', 'Option',
            'OptionalDataException', 'OptionPaneUI', 'ORB',
            'OutOfMemoryError', 'OutputStream',
            'OutputStreamWriter', 'OverlayLayout', 'Owner',
            'Package', 'PackedColorModel', 'Pageable',
            'PageAttributes', 'PageAttributes.ColorType',
            'PageAttributes.MediaType',
            'PageAttributes.OrientationRequestedType',
            'PageAttributes.OriginType',
            'PageAttributes.PrintQualityType', 'PageFormat',
            'Paint', 'PaintContext', 'PaintEvent', 'Panel',
            'PanelUI', 'Paper', 'ParagraphView',
            'ParameterBlock', 'ParameterDescriptor',
            'ParseException', 'ParsePosition', 'Parser',
            'ParserDelegator', 'PartialResultException',
            'PasswordAuthentication', 'PasswordView', 'Patch',
            'PathIterator', 'Permission', 'PermissionCollection',
            'Permissions', 'PERSIST_STORE', 'PhantomReference',
            'PipedInputStream', 'PipedOutputStream',
            'PipedReader', 'PipedWriter', 'PixelGrabber',
            'PixelInterleavedSampleModel', 'PKCS8EncodedKeySpec',
            'PlainDocument', 'PlainView', 'Point', 'Point2D',
            'Point2D.Double', 'Point2D.Float', 'Policy',
            'PolicyError', 'PolicyHelper', 'PolicyHolder',
            'PolicyListHelper', 'PolicyListHolder',
            'PolicyOperations', 'PolicyTypeHelper', 'Polygon',
            'PopupMenu', 'PopupMenuEvent', 'PopupMenuListener',
            'PopupMenuUI', 'Port', 'Port.Info',
            'PortableRemoteObject',
            'PortableRemoteObjectDelegate', 'Position',
            'Position.Bias', 'PreparedStatement', 'Principal',
            'PrincipalHolder', 'Printable',
            'PrinterAbortException', 'PrinterException',
            'PrinterGraphics', 'PrinterIOException',
            'PrinterJob', 'PrintGraphics', 'PrintJob',
            'PrintStream', 'PrintWriter', 'PrivateKey',
            'PRIVATE_MEMBER', 'PrivilegedAction',
            'PrivilegedActionException',
            'PrivilegedExceptionAction', 'Process',
            'ProfileDataException', 'ProgressBarUI',
            'ProgressMonitor', 'ProgressMonitorInputStream',
            'Properties', 'PropertyChangeEvent',
            'PropertyChangeListener', 'PropertyChangeSupport',
            'PropertyDescriptor', 'PropertyEditor',
            'PropertyEditorManager', 'PropertyEditorSupport',
            'PropertyPermission', 'PropertyResourceBundle',
            'PropertyVetoException', 'ProtectionDomain',
            'ProtocolException', 'Provider', 'ProviderException',
            'Proxy', 'PublicKey', 'PUBLIC_MEMBER',
            'PushbackInputStream', 'PushbackReader',
            'QuadCurve2D', 'QuadCurve2D.Double',
            'QuadCurve2D.Float', 'Random', 'RandomAccessFile',
            'Raster', 'RasterFormatException', 'RasterOp',
            'Reader', 'Receiver', 'Rectangle', 'Rectangle2D',
            'Rectangle2D.Double', 'Rectangle2D.Float',
            'RectangularShape', 'Ref', 'RefAddr', 'Reference',
            'Referenceable', 'ReferenceQueue',
            'ReferralException', 'ReflectPermission', 'Registry',
            'RegistryHandler', 'RemarshalException', 'Remote',
            'RemoteCall', 'RemoteException', 'RemoteObject',
            'RemoteRef', 'RemoteServer', 'RemoteStub',
            'RenderableImage', 'RenderableImageOp',
            'RenderableImageProducer', 'RenderContext',
            'RenderedImage', 'RenderedImageFactory', 'Renderer',
            'RenderingHints', 'RenderingHints.Key',
            'RepaintManager', 'ReplicateScaleFilter',
            'Repository', 'RepositoryIdHelper', 'Request',
            'RescaleOp', 'Resolver', 'ResolveResult',
            'ResourceBundle', 'ResponseHandler', 'ResultSet',
            'ResultSetMetaData', 'ReverbType', 'RGBImageFilter',
            'RMIClassLoader', 'RMIClientSocketFactory',
            'RMIFailureHandler', 'RMISecurityException',
            'RMISecurityManager', 'RMIServerSocketFactory',
            'RMISocketFactory', 'Robot', 'RootPaneContainer',
            'RootPaneUI', 'RoundRectangle2D',
            'RoundRectangle2D.Double', 'RoundRectangle2D.Float',
            'RowMapper', 'RSAKey', 'RSAKeyGenParameterSpec',
            'RSAPrivateCrtKey', 'RSAPrivateCrtKeySpec',
            'RSAPrivateKey', 'RSAPrivateKeySpec', 'RSAPublicKey',
            'RSAPublicKeySpec', 'RTFEditorKit',
            'RuleBasedCollator', 'Runnable', 'Runtime',
            'RunTime', 'RuntimeException', 'RunTimeOperations',
            'RuntimePermission', 'SampleModel',
            'SchemaViolationException', 'Scrollable',
            'Scrollbar', 'ScrollBarUI', 'ScrollPane',
            'ScrollPaneConstants', 'ScrollPaneLayout',
            'ScrollPaneLayout.UIResource', 'ScrollPaneUI',
            'SearchControls', 'SearchResult',
            'SecureClassLoader', 'SecureRandom',
            'SecureRandomSpi', 'Security', 'SecurityException',
            'SecurityManager', 'SecurityPermission', 'Segment',
            'SeparatorUI', 'Sequence', 'SequenceInputStream',
            'Sequencer', 'Sequencer.SyncMode', 'Serializable',
            'SerializablePermission', 'ServantObject',
            'ServerCloneException', 'ServerError',
            'ServerException', 'ServerNotActiveException',
            'ServerRef', 'ServerRequest',
            'ServerRuntimeException', 'ServerSocket',
            'ServiceDetail', 'ServiceDetailHelper',
            'ServiceInformation', 'ServiceInformationHelper',
            'ServiceInformationHolder',
            'ServiceUnavailableException', 'Set',
            'SetOverrideType', 'SetOverrideTypeHelper', 'Shape',
            'ShapeGraphicAttribute', 'Short', 'ShortHolder',
            'ShortLookupTable', 'ShortMessage', 'ShortSeqHelper',
            'ShortSeqHolder', 'Signature', 'SignatureException',
            'SignatureSpi', 'SignedObject', 'Signer',
            'SimpleAttributeSet', 'SimpleBeanInfo',
            'SimpleDateFormat', 'SimpleTimeZone',
            'SinglePixelPackedSampleModel',
            'SingleSelectionModel', 'SizeLimitExceededException',
            'SizeRequirements', 'SizeSequence', 'Skeleton',
            'SkeletonMismatchException',
            'SkeletonNotFoundException', 'SliderUI', 'Socket',
            'SocketException', 'SocketImpl', 'SocketImplFactory',
            'SocketOptions', 'SocketPermission',
            'SocketSecurityException', 'SoftBevelBorder',
            'SoftReference', 'SortedMap', 'SortedSet',
            'Soundbank', 'SoundbankReader', 'SoundbankResource',
            'SourceDataLine', 'SplitPaneUI', 'SQLData',
            'SQLException', 'SQLInput', 'SQLOutput',
            'SQLPermission', 'SQLWarning', 'Stack',
            'StackOverflowError', 'StateEdit', 'StateEditable',
            'StateFactory', 'Statement', 'Streamable',
            'StreamableValue', 'StreamCorruptedException',
            'StreamTokenizer', 'StrictMath', 'String',
            'StringBuffer', 'StringBufferInputStream',
            'StringCharacterIterator', 'StringContent',
            'StringHolder', 'StringIndexOutOfBoundsException',
            'StringReader', 'StringRefAddr', 'StringSelection',
            'StringTokenizer', 'StringValueHelper',
            'StringWriter', 'Stroke', 'Struct', 'StructMember',
            'StructMemberHelper', 'Stub', 'StubDelegate',
            'StubNotFoundException', 'Style', 'StyleConstants',
            'StyleConstants.CharacterConstants',
            'StyleConstants.ColorConstants',
            'StyleConstants.FontConstants',
            'StyleConstants.ParagraphConstants', 'StyleContext',
            'StyledDocument', 'StyledEditorKit',
            'StyledEditorKit.AlignmentAction',
            'StyledEditorKit.BoldAction',
            'StyledEditorKit.FontFamilyAction',
            'StyledEditorKit.FontSizeAction',
            'StyledEditorKit.ForegroundAction',
            'StyledEditorKit.ItalicAction',
            'StyledEditorKit.StyledTextAction',
            'StyledEditorKit.UnderlineAction', 'StyleSheet',
            'StyleSheet.BoxPainter', 'StyleSheet.ListPainter',
            'SwingConstants', 'SwingPropertyChangeSupport',
            'SwingUtilities', 'SyncFailedException',
            'Synthesizer', 'SysexMessage', 'System',
            'SystemColor', 'SystemException', 'SystemFlavorMap',
            'TabableView', 'TabbedPaneUI', 'TabExpander',
            'TableCellEditor', 'TableCellRenderer',
            'TableColumn', 'TableColumnModel',
            'TableColumnModelEvent', 'TableColumnModelListener',
            'TableHeaderUI', 'TableModel', 'TableModelEvent',
            'TableModelListener', 'TableUI', 'TableView',
            'TabSet', 'TabStop', 'TagElement', 'TargetDataLine',
            'TCKind', 'TextAction', 'TextArea', 'TextAttribute',
            'TextComponent', 'TextEvent', 'TextField',
            'TextHitInfo', 'TextLayout',
            'TextLayout.CaretPolicy', 'TextListener',
            'TextMeasurer', 'TextUI', 'TexturePaint', 'Thread',
            'ThreadDeath', 'ThreadGroup', 'ThreadLocal',
            'Throwable', 'Tie', 'TileObserver', 'Time',
            'TimeLimitExceededException', 'Timer', 'TimerTask',
            'Timestamp', 'TimeZone', 'TitledBorder', 'ToolBarUI',
            'Toolkit', 'ToolTipManager', 'ToolTipUI',
            'TooManyListenersException', 'Track',
            'TransactionRequiredException',
            'TransactionRolledbackException',
            'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK',
            'Transferable', 'TransformAttribute', 'TRANSIENT',
            'Transmitter', 'Transparency', 'TreeCellEditor',
            'TreeCellRenderer', 'TreeExpansionEvent',
            'TreeExpansionListener', 'TreeMap', 'TreeModel',
            'TreeModelEvent', 'TreeModelListener', 'TreeNode',
            'TreePath', 'TreeSelectionEvent',
            'TreeSelectionListener', 'TreeSelectionModel',
            'TreeSet', 'TreeUI', 'TreeWillExpandListener',
            'TypeCode', 'TypeCodeHolder', 'TypeMismatch',
            'Types', 'UID', 'UIDefaults',
            'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap',
            'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue',
            'UIManager', 'UIManager.LookAndFeelInfo',
            'UIResource', 'ULongLongSeqHelper',
            'ULongLongSeqHolder', 'ULongSeqHelper',
            'ULongSeqHolder', 'UndeclaredThrowableException',
            'UndoableEdit', 'UndoableEditEvent',
            'UndoableEditListener', 'UndoableEditSupport',
            'UndoManager', 'UnexpectedException',
            'UnicastRemoteObject', 'UnionMember',
            'UnionMemberHelper', 'UNKNOWN', 'UnknownError',
            'UnknownException', 'UnknownGroupException',
            'UnknownHostException', 'UnknownObjectException',
            'UnknownServiceException', 'UnknownUserException',
            'UnmarshalException', 'UnrecoverableKeyException',
            'Unreferenced', 'UnresolvedPermission',
            'UnsatisfiedLinkError', 'UnsolicitedNotification',
            'UnsolicitedNotificationEvent',
            'UnsolicitedNotificationListener',
            'UnsupportedAudioFileException',
            'UnsupportedClassVersionError',
            'UnsupportedEncodingException',
            'UnsupportedFlavorException',
            'UnsupportedLookAndFeelException',
            'UnsupportedOperationException',
            'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE',
            'URL', 'URLClassLoader', 'URLConnection',
            'URLDecoder', 'URLEncoder', 'URLStreamHandler',
            'URLStreamHandlerFactory', 'UserException',
            'UShortSeqHelper', 'UShortSeqHolder',
            'UTFDataFormatException', 'Util', 'UtilDelegate',
            'Utilities', 'ValueBase', 'ValueBaseHelper',
            'ValueBaseHolder', 'ValueFactory', 'ValueHandler',
            'ValueMember', 'ValueMemberHelper',
            'VariableHeightLayoutCache', 'Vector', 'VerifyError',
            'VersionSpecHelper', 'VetoableChangeListener',
            'VetoableChangeSupport', 'View', 'ViewFactory',
            'ViewportLayout', 'ViewportUI',
            'VirtualMachineError', 'Visibility',
            'VisibilityHelper', 'VMID', 'VM_ABSTRACT',
            'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE',
            'VoiceStatus', 'Void', 'WCharSeqHelper',
            'WCharSeqHolder', 'WeakHashMap', 'WeakReference',
            'Window', 'WindowAdapter', 'WindowConstants',
            'WindowEvent', 'WindowListener', 'WrappedPlainView',
            'WritableRaster', 'WritableRenderedImage',
            'WriteAbortedException', 'Writer',
            'WrongTransaction', 'WStringValueHelper',
            'X509Certificate', 'X509CRL', 'X509CRLEntry',
            'X509EncodedKeySpec', 'X509Extension', 'ZipEntry',
            'ZipException', 'ZipFile', 'ZipInputStream',
            'ZipOutputStream', 'ZoneView',
            '_BindingIteratorImplBase', '_BindingIteratorStub',
            '_IDLTypeStub', '_NamingContextImplBase',
            '_NamingContextStub', '_PolicyStub', '_Remote_Stub'
            ),
        4 => array(
            'boolean', 'byte', 'char', 'double', 'float', 'int', 'long',
            'short', 'void'
            ),
        5 => array(
            'allProperties', 'asImmutable', 'asSynchronized', 'collect',
            'count', 'each', 'eachProperty', 'eachPropertyName',
            'eachWithIndex', 'find', 'findAll', 'findIndexOf',
            'flatten', 'get', 'grep', 'inject', 'intersect',
            'join', 'max', 'min', 'pop', 'reverse',
            'reverseEach', 'size', 'sort', 'subMap', 'toList'
            ),
        6 => array(
            'center', 'contains', 'eachMatch', 'padLeft', 'padRight',
            'toCharacter', 'tokenize', 'toLong', 'toURL'
            ),
        7 => array(
            'append', 'eachByte', 'eachFile', 'eachFileRecurse', 'eachLine',
            'eachLines', 'encodeBase64', 'filterLine', 'getText',
            'splitEachLine', 'transformChar', 'transformLine',
            'withOutputStream', 'withPrintWriter', 'withReader',
            'withStream', 'withStreams', 'withWriter',
            'withWriterAppend', 'write', 'writeLine'
            ),
        8 => array(
            'dump', 'getLastMatcher', 'inspect', 'invokeMethod', 'print',
            'println', 'start', 'startDaemon', 'step', 'times',
            'upto', 'use'
            ),
        9 => array(
            'call', 'close', 'eachRow', 'execute', 'executeUpdate', 'Sql'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', '|', '=',
        '=>', '||', '-', '+', '<<', '<<<', '&&'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => false,
        2 => false,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        9 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #aaaadd; font-weight: bold;',
            4 => 'color: #993333;',
            5 => 'color: #663399;',
            6 => 'color: #CC0099;',
            7 => 'color: #FFCC33;',
            8 => 'color: #993399;',
            9 => 'color: #993399; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1=> 'color: #808080; font-style: italic;',
            2=> 'color: #a1a100;',
            3=> 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;'
            )
        ),
    'URLS' => array(
        1 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAMEL}',
        2 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAMEL}',
        3 => 'http://www.google.de/search?as_q={FNAME}&num=100&hl=en&as_occt=url&as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F',
        4 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAME}',
        5 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAME}',
        6 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAME}',
        7 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAME}',
        8 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAME}',
        9 => 'http://www.google.de/search?q=site%3Agroovy.codehaus.org/%20{FNAME}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        //Variables
        0 => '\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\}'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/epc.php0000664000175000017500000001211412014173400013435 0ustar  benbebenbe 'EPC',
    'COMMENT_SINGLE' => array('//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //[Sections]
        //1 => "/^\\[.*\\]/"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(
        0 => '"',
        1 => '$'
        ),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'if', 'then', 'else', 'endif',
            'and', 'or', 'xor', 'hysteresis'
            ),
        2 => array(
            'read', 'write', 'event',
            'gettime', 'settime', 'getdate', 'setdate', 'gettimedate', 'settimedate',
            'hour', 'minute', 'second', 'changehour', 'changeminute', 'changesecond',
            'date', 'month', 'day', 'dayofweek', 'sun', 'azimuth', 'elevation',
            'sunrisehour', 'sunriseminute', 'sunsethour', 'sunsetminute',
            'wtime', 'htime', 'mtime', 'stime',
            'cwtime', 'chtime', 'cmtime', 'cstime',
            'delay', 'after', 'cycle',
            'readflash', 'writeflash',
            'abs', 'acos', 'asin', 'atan', 'cos', 'ceil', 'average', 'exp', 'floor',
            'log', 'max', 'min', 'mod', 'pow', 'sqrt', 'sin', 'tan', 'change', 'convert',
            'eval', 'systemstart', 'random', 'comobject', 'sleep', 'scene', 'storescene', 'callscene',
            'find', 'stringcast', 'stringset', 'stringformat', 'split', 'size',
            'readrs232'. 'sendrs232', 'address', 'readknx',
            'readudp', 'sendudp', 'connecttcp', 'closetcp', 'readtcp', 'sendtcp',
            'resolve', 'sendmail',
            'button', 'webbutton', 'chart', 'webchart', 'webdisplay', 'getslider', 'pshifter', 'mpshifter',
            'getpslider', 'mbutton', 'mbbutton', 'mchart', 'mpchart', 'mpbutton', 'pdisplay', 'pchart',
            'pbutton', 'setslider', 'setpslider', 'slider', 'pslider', 'page', 'line', 'header',
            'footer', 'none', 'plink', 'link', 'frame', 'dframe'
            )
        ),
    'SYMBOLS' => array(
        0 => array(
            '%', 'b01',
            ),
        1 => array(
            '+', '-', '==', '>=', '=<',
            ),
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #e63ec3;',
            2 => 'color: #e63ec3;'
            ),
        'COMMENTS' => array(
            0 => 'color: #0000ff;'
            //1 => 'color: #ffa500;'
            ),
        'ESCAPE_CHAR' => array(
            1 => 'color: #000099;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #8a0808;',
            1 => 'color: #6e6e6e;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0b610b;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #0b610b;',
            1 => 'color: #e63ec3;'
            ),
        'REGEXPS' => array(
            1 => 'color: #0b610b;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        // Numbers, e.g. 255u08
        1 => "[0-9]*[subf][0136][12468]"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '$'
        ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?  "(?![\.\-a-zA-Z0-9_%=\\/])"
        )
    )
);

?>geshi/geshi/lotusscript.php0000664000175000017500000002134312014173411015267 0ustar  benbebenbe 'LotusScript',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array('%REM' => '%END REM'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"' , "|"),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array (
            'Yield', 'Year', 'Xor', 'Write', 'With', 'Width', 'While', 'Wend',
            'Weekday', 'VarType', 'Variant', 'Val', 'UString', 'UString$',
            'UseLSX', 'Use', 'Until', 'Unlock', 'Unicode', 'Uni', 'UChr',
            'UChr$', 'UCase', 'UCase$', 'UBound', 'TypeName', 'Type', 'TRUE',
            'Trim', 'Trim$', 'Today', 'To', 'TimeValue', 'TimeSerial', 'Timer',
            'TimeNumber', 'Time', 'Time$', 'Then', 'Text', 'Tan', 'Tab', 'Sub',
            'StrToken', 'StrToken$', 'StrRightBack', 'StrRightBack$',
            'StrRight', 'StrRight$', 'StrLeftBack', 'StrLeftBack$', 'StrLeft',
            'StrLeft$', 'String', 'String$', 'StrConv', 'StrCompare', 'StrComp',
            'Str', 'Str$', 'Stop', 'Step', 'Static', 'Sqr', 'Split', 'Spc',
            'Space', 'Space$', 'Sleep', 'Single', 'Sin', 'Shell', 'Shared',
            'Sgn', 'SetFileAttr', 'SetAttr', 'Set', 'SendKeys', 'Select',
            'Seek', 'Second', 'RTrim', 'RTrim$', 'RSet', 'Round', 'Rnd',
            'RmDir', 'RightC', 'RightC$', 'RightBP', 'RightBP$', 'RightB',
            'RightB$', 'Right', 'Right$', 'Return', 'Resume', 'Reset',
            'Replace', 'Remove', 'Rem', 'ReDim', 'Read', 'Randomize',
            'Random', 'Put', 'Public', 'Property', 'Private', 'Print',
            'Preserve', 'Pitch', 'PI', 'Output', 'Or', 'Option', 'Open', 'On',
            'Oct', 'Oct$', 'NULL', 'Now', 'NOTHING', 'Not', 'NoPitch', 'NoCase',
            'Next', 'New', 'Name', 'MsgBox', 'Month', 'Mod', 'MkDir', 'Minute',
            'MidC', 'MidC$', 'MidBP', 'MidBP$', 'MidB', 'MidB$', 'Mid', 'Mid$',
            'MessageBox', 'Me', 'LTrim', 'LTrim$', 'LSServer', 'LSI_Info',
            'LSet', 'Loop', 'Long', 'Log', 'LOF', 'Lock', 'LOC', 'LMBCS',
            'ListTag', 'List', 'Line', 'Like', 'Lib', 'Let', 'LenC', 'LenBP',
            'LenB', 'Len', 'LeftC', 'LeftC$', 'LeftBP', 'LeftBP$', 'LeftB',
            'LeftB$', 'Left', 'Left$', 'LCase', 'LCase$', 'LBound', 'Kill',
            'Join', 'IsUnknown', 'IsScalar', 'IsObject', 'IsNumeric', 'IsNull',
            'IsList', 'IsEmpty', 'IsElement', 'IsDate', 'IsArray', 'IsA', 'Is',
            'Integer', 'Int', 'InStrC', 'InStrBP', 'InStrB', 'InStr', 'InputBP',
            'InputBP$', 'InputBox', 'InputBox$', 'InputB', 'InputB$', 'Input',
            'Input$', 'In', 'IMSetMode', 'Implode', 'Implode$', 'Imp',
            'IMEStatus', 'If', 'Hour', 'Hex', 'Hex$', 'Goto', 'GoSub',
            'GetThreadInfo', 'GetFileAttr', 'GetAttr', 'Get', 'Function',
            'FullTrim', 'From', 'FreeFile', 'Fraction', 'Format', 'Format$',
            'ForAll', 'For', 'Fix', 'FileLen', 'FileDateTime', 'FileCopy',
            'FileAttr', 'FALSE', 'Explicit', 'Exp', 'Exit', 'Execute', 'Event',
            'Evaluate', 'Error', 'Error$', 'Err', 'Erl', 'Erase', 'Eqv', 'EOF',
            'Environ', 'Environ$', 'End', 'ElseIf', 'Else', 'Double', 'DoEvents',
            'Do', 'Dir', 'Dir$', 'Dim', 'DestroyLock', 'Delete', 'DefVar',
            'DefStr', 'DefSng', 'DefLng', 'DefInt', 'DefDbl', 'DefCur',
            'DefByte', 'DefBool', 'Declare', 'Day', 'DateValue', 'DateSerial',
            'DateNumber', 'Date', 'Date$', 'DataType', 'CVDate', 'CVar',
            'Currency', 'CurDrive', 'CurDrive$', 'CurDir', 'CurDir$', 'CStr',
            'CSng', 'CreateLock', 'Cos', 'Const', 'Compare', 'Command',
            'Command$', 'CodeUnlock', 'CodeLockCheck', 'CodeLock', 'Close',
            'CLng', 'Class', 'CInt', 'Chr', 'Chr$', 'ChDrive', 'ChDir', 'CDbl',
            'CDat', 'CCur', 'CByte', 'CBool', 'Case', 'Call', 'ByVal', 'Byte',
            'Boolean', 'Bind', 'Binary', 'Bin', 'Bin$', 'Beep', 'Base', 'Atn2',
            'Atn', 'ASin', 'Asc', 'As', 'ArrayUnique', 'ArrayReplace',
            'ArrayGetIndex', 'ArrayAppend', 'Append', 'AppActivate', 'Any',
            'And', 'Alias', 'ActivateApp', 'ACos', 'Access', 'Abs', '%Include',
            '%If', '%END', '%ElseIf', '%Else'
            ),
        2 => array (
            'NotesXSLTransformer', 'NotesXMLProcessor', 'NotesViewNavigator',
            'NotesViewEntryCollection', 'NotesViewEntry', 'NotesViewColumn',
            'NotesView', 'NotesUIWorkspace', 'NotesUIView', 'NotesUIScheduler',
            'NotesUIDocument', 'NotesUIDatabase', 'NotesTimer', 'NotesStream',
            'NotesSession', 'NotesSAXParser', 'NotesSAXException',
            'NotesSAXAttributeList', 'NotesRichTextTable', 'NotesRichTextTab',
            'NotesRichTextStyle', 'NotesRichTextSection', 'NotesRichTextRange',
            'NotesRichTextParagraphStyle', 'NotesRichTextNavigator',
            'NotesRichTextItem', 'NotesRichTextDocLink',
            'NotesReplicationEntry', 'NotesReplication', 'NotesRegistration',
            'NotesOutlineEntry', 'NotesOutline', 'NotesNoteCollection',
            'NotesNewsLetter', 'NotesName', 'NotesMIMEHeader',
            'NotesMIMEEntity', 'NotesLog', 'NotesItem', 'NotesInternational',
            'NotesForm', 'NotesEmbeddedObject', 'NotesDXLImporter',
            'NotesDXLExporter', 'NotesDOMXMLDeclNode', 'NotesDOMTextNode',
            'NotesDOMProcessingInstructionNode', 'NotesDOMParser',
            'NotesDOMNotationNode', 'NotesDOMNodeList', 'NotesDOMNode',
            'NotesDOMNamedNodeMap', 'NotesDOMEntityReferenceNode',
            'NotesDOMEntityNode', 'NotesDOMElementNode',
            'NotesDOMDocumentTypeNode', 'NotesDOMDocumentNode',
            'NotesDOMDocumentFragmentNode', 'NotesDOMCommentNode',
            'NotesDOMCharacterDataNote', 'NotesDOMCDATASectionNode',
            'NotesDOMAttributeNode', 'NotesDocumentCollection', 'NotesDocument',
            'NotesDbDirectory', 'NotesDateTime', 'NotesDateRange',
            'NotesDatabase', 'NotesColorObject', 'NotesAgent',
            'NotesAdministrationProcess', 'NotesACLEntry', 'NotesACL',
            'Navigator', 'Field', 'Button'
            )
        ) ,
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000EE;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #000000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF00FF;'
            ),
        'METHODS' => array(
            1 => 'color: #0000AA;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #006600;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 2
);

?>
geshi/geshi/dos.php0000664000175000017500000001734212014173443013472 0ustar  benbebenbe 'DOS',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    //DOS comment lines
    'COMMENT_REGEXP' => array(
        1 => "/^\s*@?REM\b.*$/mi",
        2 => "/^\s*::.*$/m",
        3 => "/\^./"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* Flow control keywords */
        1 => array(
            'if', 'else', 'goto', 'shift',
            'for', 'in', 'do',
            'call', 'exit'
            ),
        /* IF statement keywords */
        2 => array(
            'not', 'exist', 'errorlevel',
            'defined',
            'equ', 'neq', 'lss', 'leq', 'gtr', 'geq'
            ),
        /* Internal commands */
        3 => array(
            'cd', 'md', 'rd', 'chdir', 'mkdir', 'rmdir', 'dir',
            'del', 'copy', 'move', 'ren', 'rename',
            'echo',
            'setlocal', 'endlocal', 'set',
            'pause',
            'pushd', 'popd', 'title', 'verify'
            ),
        /* Special files */
        4 => array(
            'prn', 'nul', 'lpt3', 'lpt2', 'lpt1', 'con',
            'com4', 'com3', 'com2', 'com1', 'aux'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '@', '%', '!', '|', '<', '>', '&'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00b100; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #b1b100; font-weight: bold;',
            4 => 'color: #0000ff; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #b100b1; font-style: italic;',
            3 => 'color: #33cc33;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #ff0000; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #33cc33;',
            1 => 'color: #33cc33;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            0 => 'color: #b100b1; font-weight: bold;',
            1 => 'color: #448844;',
            2 => 'color: #448888;',
            3 => 'color: #448888;'
            )
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'URLS' => array(
        1 => 'http://www.ss64.com/nt/{FNAMEL}.html',
        2 => 'http://www.ss64.com/nt/{FNAMEL}.html',
        3 => 'http://www.ss64.com/nt/{FNAMEL}.html',
        4 => 'http://www.ss64.com/nt/{FNAMEL}.html'
        ),
    'REGEXPS' => array(
        /* Label */
        0 => array(
/*            GESHI_SEARCH => '((?si:[@\s]+GOTO\s+|\s+:)[\s]*)((? '((?si:[@\s]+GOTO\s+|\s+:)[\s]*)((? '\\2',
            GESHI_MODIFIERS => 'si',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
        ),
        /* Variable assignement */
        1 => array(
/*            GESHI_SEARCH => '(SET[\s]+(?si:\/A[\s]+|\/P[\s]+|))([^=\s\n]+)([\s]*=)',*/
            GESHI_SEARCH => '(SET\s+(?si:\\/A\s+|\\/P\s+)?)([^=\n]+)(\s*=)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'si',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        /* Arguments or variable evaluation */
        2 => array(
/*            GESHI_SEARCH => '(%)([\d*]|[^%\s]*(?=%))((? '(!(?:!(?=[a-z0-9]))?)([\d*]|(?:~[adfnpstxz]*(?:$\w+:)?)?[a-z0-9](?!\w)|[^!>\n]*(?=!))((?)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'si',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        /* Arguments or variable evaluation */
        3 => array(
/*            GESHI_SEARCH => '(%)([\d*]|[^%\s]*(?=%))((? '(%(?:%(?=[a-z0-9]))?)([\d*]|(?:~[adfnpstxz]*(?:$\w+:)?)?[a-z0-9](?!\w)|[^%\n]*(?=%))((? '\\2',
            GESHI_MODIFIERS => 'si',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER
            ),
        'KEYWORDS' => array(
            1 => array(
                'DISALLOWED_BEFORE' => '(? array(
                'DISALLOWED_BEFORE' => '(? array(
                'DISALLOWED_BEFORE' => '(? array(
                'DISALLOWED_BEFORE' => '(?geshi/geshi/autohotkey.php0000664000175000017500000003646512014173435015111 0ustar  benbebenbe 'Autohotkey',
    'COMMENT_SINGLE' => array(
        1 => ';'
        ),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'while','if','and','or','else','return'
            ),
        2 => array(
            // built in variables
            'A_AhkPath','A_AhkVersion','A_AppData','A_AppDataCommon',
            'A_AutoTrim','A_BatchLines','A_CaretX','A_CaretY',
            'A_ComputerName','A_ControlDelay','A_Cursor','A_DD',
            'A_DDD','A_DDDD','A_DefaultMouseSpeed','A_Desktop',
            'A_DesktopCommon','A_DetectHiddenText','A_DetectHiddenWindows','A_EndChar',
            'A_EventInfo','A_ExitReason','A_FormatFloat','A_FormatInteger',
            'A_Gui','A_GuiEvent','A_GuiControl','A_GuiControlEvent',
            'A_GuiHeight','A_GuiWidth','A_GuiX','A_GuiY',
            'A_Hour','A_IconFile','A_IconHidden','A_IconNumber',
            'A_IconTip','A_Index','A_IPAddress1','A_IPAddress2',
            'A_IPAddress3','A_IPAddress4','A_ISAdmin','A_IsCompiled',
            'A_IsCritical','A_IsPaused','A_IsSuspended','A_KeyDelay',
            'A_Language','A_LastError','A_LineFile','A_LineNumber',
            'A_LoopField','A_LoopFileAttrib','A_LoopFileDir','A_LoopFileExt',
            'A_LoopFileFullPath','A_LoopFileLongPath','A_LoopFileName','A_LoopFileShortName',
            'A_LoopFileShortPath','A_LoopFileSize','A_LoopFileSizeKB','A_LoopFileSizeMB',
            'A_LoopFileTimeAccessed','A_LoopFileTimeCreated','A_LoopFileTimeModified','A_LoopReadLine',
            'A_LoopRegKey','A_LoopRegName','A_LoopRegSubkey','A_LoopRegTimeModified',
            'A_LoopRegType','A_MDAY','A_Min','A_MM',
            'A_MMM','A_MMMM','A_Mon','A_MouseDelay',
            'A_MSec','A_MyDocuments','A_Now','A_NowUTC',
            'A_NumBatchLines','A_OSType','A_OSVersion','A_PriorHotkey',
            'A_ProgramFiles','A_Programs','A_ProgramsCommon','A_ScreenHeight',
            'A_ScreenWidth','A_ScriptDir','A_ScriptFullPath','A_ScriptName',
            'A_Sec','A_Space','A_StartMenu','A_StartMenuCommon',
            'A_Startup','A_StartupCommon','A_StringCaseSense','A_Tab',
            'A_Temp','A_ThisFunc','A_ThisHotkey','A_ThisLabel',
            'A_ThisMenu','A_ThisMenuItem','A_ThisMenuItemPos','A_TickCount',
            'A_TimeIdle','A_TimeIdlePhysical','A_TimeSincePriorHotkey','A_TimeSinceThisHotkey',
            'A_TitleMatchMode','A_TitleMatchModeSpeed','A_UserName','A_WDay',
            'A_WinDelay','A_WinDir','A_WorkingDir','A_YDay',
            'A_YEAR','A_YWeek','A_YYYY','Clipboard',
            'ClipboardAll','ComSpec','ErrorLevel','ProgramFiles',
            ),
        3 => array(
            'AutoTrim',
            'BlockInput','Break','Click',
            'ClipWait','Continue','Control',
            'ControlClick','ControlFocus','ControlGet',
            'ControlGetFocus','ControlGetPos','ControlGetText',
            'ControlMove','ControlSend','ControlSendRaw',
            'ControlSetText','CoordMode','Critical',
            'DetectHiddenText','DetectHiddenWindows','DllCall','Drive',
            'DriveGet','DriveSpaceFree',
            'Else','EnvAdd','EnvDiv',
            'EnvGet','EnvMult','EnvSet',
            'EnvSub','EnvUpdate','Exit',
            'ExitApp','FileAppend','FileCopy',
            'FileCopyDir','FileCreateDir','FileCreateShortcut',
            'FileDelete','FileGetAttrib','FileGetShortcut',
            'FileGetSize','FileGetTime','FileGetVersion',
            'FileInstall','FileMove','FileMoveDir',
            'FileRead','FileReadLine','FileRecycle',
            'FileRecycleEmpty','FileRemoveDir','FileSelectFile',
            'FileSelectFolder','FileSetAttrib','FileSetTime',
            'FormatTime','Gosub',
            'Goto','GroupActivate','GroupAdd',
            'GroupClose','GroupDeactivate','Gui',
            'GuiControl','GuiControlGet','Hotkey',
            'IfExist','IfGreater','IfGreaterOrEqual',
            'IfInString','IfLess','IfLessOrEqual',
            'IfMsgBox','IfNotEqual','IfNotExist',
            'IfNotInString','IfWinActive','IfWinExist',
            'IfWinNotActive','IfWinNotExist','ImageSearch',
            'IniDelete','IniRead','IniWrite',
            'Input','InputBox','KeyHistory',
            'KeyWait','ListHotkeys','ListLines',
            'ListVars','Loop',
            'Menu','MouseClick','MouseClickDrag',
            'MouseGetPos','MouseMove','MsgBox',
            'OnMessage','OnExit','OutputDebug',
            'PixelGetColor','PixelSearch','PostMessage',
            'Process','Progress','Random',
            'RegExMatch','RegExReplace','RegisterCallback',
            'RegDelete','RegRead','RegWrite',
            'Reload','Repeat','Return',
            'Run','RunAs','RunWait',
            'Send','SendEvent','SendInput',
            'SendMessage','SendMode','SendPlay',
            'SendRaw','SetBatchLines','SetCapslockState',
            'SetControlDelay','SetDefaultMouseSpeed','SetEnv',
            'SetFormat','SetKeyDelay','SetMouseDelay',
            'SetNumlockState','SetScrollLockState','SetStoreCapslockMode',
            'SetTimer','SetTitleMatchMode','SetWinDelay',
            'SetWorkingDir','Shutdown','Sleep',
            'Sort','SoundBeep','SoundGet',
            'SoundGetWaveVolume','SoundPlay','SoundSet',
            'SoundSetWaveVolume','SplashImage','SplashTextOff',
            'SplashTextOn','SplitPath','StatusBarGetText',
            'StatusBarWait','StringCaseSense','StringGetPos',
            'StringLeft','StringLen','StringLower',
            'StringMid','StringReplace','StringRight',
            'StringSplit','StringTrimLeft','StringTrimRight',
            'StringUpper','Suspend','SysGet',
            'Thread','ToolTip','Transform',
            'TrayTip','URLDownloadToFile','While',
            'VarSetCapacity',
            'WinActivate','WinActivateBottom','WinClose',
            'WinGet','WinGetActiveStats','WinGetActiveTitle',
            'WinGetClass','WinGetPos','WinGetText',
            'WinGetTitle','WinHide','WinKill',
            'WinMaximize','WinMenuSelectItem','WinMinimize',
            'WinMinimizeAll','WinMinimizeAllUndo','WinMove',
            'WinRestore','WinSet','WinSetTitle',
            'WinShow','WinWait','WinWaitActive',
            'WinWaitClose','WinWaitNotActive'
            ),
        4 => array(
            'Abs','ACos','Asc','ASin',
            'ATan','Ceil','Chr','Cos',
            'Exp','FileExist','Floor',
            'GetKeyState','IL_Add','IL_Create','IL_Destroy',
            'InStr','IsFunc','IsLabel','Ln',
            'Log','LV_Add','LV_Delete','LV_DeleteCol',
            'LV_GetCount','LV_GetNext','LV_GetText','LV_Insert',
            'LV_InsertCol','LV_Modify','LV_ModifyCol','LV_SetImageList',
            'Mod','NumGet','NumPut',
            'Round',
            'SB_SetIcon','SB_SetParts','SB_SetText','Sin',
            'Sqrt','StrLen','SubStr','Tan',
            'TV_Add','TV_Delete','TV_GetChild','TV_GetCount',
            'TV_GetNext','TV_Get','TV_GetParent','TV_GetPrev',
            'TV_GetSelection','TV_GetText','TV_Modify',
            'WinActive','WinExist'
            ),
        5 => array(
            // #Directives
            'AllowSameLineComments','ClipboardTimeout','CommentFlag',
            'ErrorStdOut','EscapeChar','HotkeyInterval',
            'HotkeyModifierTimeout','Hotstring','IfWinActive',
            'IfWinExist','IfWinNotActive','IfWinNotExist',
            'Include','IncludeAgain','InstallKeybdHook',
            'InstallMouseHook','KeyHistory','LTrim',
            'MaxHotkeysPerInterval','MaxMem','MaxThreads',
            'MaxThreadsBuffer','MaxThreadsPerHotkey','NoEnv',
            'NoTrayIcon','Persistent','SingleInstance',
            'UseHook','WinActivateForce'
            ),
        6 => array(
            'Shift','LShift','RShift',
            'Alt','LAlt','RAlt',
            'LControl','RControl',
            'Ctrl','LCtrl','RCtrl',
            'LWin','RWin','AppsKey',
            'AltDown','AltUp','ShiftDown',
            'ShiftUp','CtrlDown','CtrlUp',
            'LWinDown','LWinUp','RWinDown',
            'RWinUp','LButton','RButton',
            'MButton','WheelUp','WheelDown',
            'WheelLeft','WheelRight','XButton1',
            'XButton2','Joy1','Joy2',
            'Joy3','Joy4','Joy5',
            'Joy6','Joy7','Joy8',
            'Joy9','Joy10','Joy11',
            'Joy12','Joy13','Joy14',
            'Joy15','Joy16','Joy17',
            'Joy18','Joy19','Joy20',
            'Joy21','Joy22','Joy23',
            'Joy24','Joy25','Joy26',
            'Joy27','Joy28','Joy29',
            'Joy30','Joy31','Joy32',
            'JoyX','JoyY','JoyZ',
            'JoyR','JoyU','JoyV',
            'JoyPOV','JoyName','JoyButtons',
            'JoyAxes','JoyInfo','Space',
            'Tab','Enter',
            'Escape','Esc','BackSpace',
            'BS','Delete','Del',
            'Insert','Ins','PGUP',
            'PGDN','Home','End',
            'Up','Down','Left',
            'Right','PrintScreen','CtrlBreak',
            'Pause','ScrollLock','CapsLock',
            'NumLock','Numpad0','Numpad1',
            'Numpad2','Numpad3','Numpad4',
            'Numpad5','Numpad6','Numpad7',
            'Numpad8','Numpad9','NumpadMult',
            'NumpadAdd','NumpadSub','NumpadDiv',
            'NumpadDot','NumpadDel','NumpadIns',
            'NumpadClear','NumpadUp','NumpadDown',
            'NumpadLeft','NumpadRight','NumpadHome',
            'NumpadEnd','NumpadPgup','NumpadPgdn',
            'NumpadEnter','F1','F2',
            'F3','F4','F5',
            'F6','F7','F8',
            'F9','F10','F11',
            'F12','F13','F14',
            'F15','F16','F17',
            'F18','F19','F20',
            'F21','F22','F23',
            'F24','Browser_Back','Browser_Forward',
            'Browser_Refresh','Browser_Stop','Browser_Search',
            'Browser_Favorites','Browser_Home','Volume_Mute',
            'Volume_Down','Volume_Up','Media_Next',
            'Media_Prev','Media_Stop','Media_Play_Pause',
            'Launch_Mail','Launch_Media','Launch_App1',
            'Launch_App2'
            ),
        7 => array(
            // Gui commands
            'Add',
            'Show', 'Submit', 'Cancel', 'Destroy',
            'Font', 'Color', 'Margin', 'Flash', 'Default',
            'GuiEscape','GuiClose','GuiSize','GuiContextMenu','GuiDropFilesTabStop',
            ),
        8 => array(
            // Gui Controls
            'Button',
            'Checkbox','Radio','DropDownList','DDL',
            'ComboBox','ListBox','ListView',
            'Text', 'Edit', 'UpDown', 'Picture',
            'TreeView','DateTime', 'MonthCal',
            'Slider'
            )
        ),
    'SYMBOLS' => array(
        '(',')','[',']',
        '+','-','*','/','&','^',
        '=','+=','-=','*=','/=','&=',
        '==','<','<=','>','>=',':=',
        ',','.'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #AAAAFF; font-weight: bold;',       // reserved #blue
            2 => 'color: #88FF88;',                         // BIV yellow
            3 => 'color: #FF00FF; font-style: italic;',       // commands purple
            4 => 'color: #888844; font-weight: bold;',       // functions #0080FF
            5 => 'color: #000000; font-style: italic;',    // directives #black
            6 => 'color: #FF0000; font-style: italic;',      // hotkeys #red
            7 => 'color: #000000; font-style: italic;',    // gui commands #black
            8 => 'color: #000000; font-style: italic;'      // gui controls
            ),
        'COMMENTS' => array(
            'MULTI' => 'font-style: italic; color: #669900;',
            1 => 'font-style: italic; color: #009933;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'color: #00FF00; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'font-weight: bold; color: #008080;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF; font-style: italic; font-weight: italic;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000; font-weight: italic;'
            ),
        'REGEXPS' => array(
            0 => 'font-weight: italic; color: #A00A0;',
            1 => 'color: #CC0000; font-style: italic;',
            2 => 'color: #DD0000; font-style: italic;',
            3 => 'color: #88FF88;'
            ),
        'SCRIPT' => array(
            )
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => '_'
        ),
    'REGEXPS' => array(
        //Variables
        0 => '%[a-zA-Z_][a-zA-Z0-9_]*%',
        //hotstrings
        1 => '::[\w\d]+::',
        //labels
        2 => '\w[\w\d]+:\s',
        //Built-in Variables
        3 => '\bA_\w+\b(?![^<]*>)'
        ),
    'URLS' => array(
        1 => '',
        2 => 'http://www.autohotkey.com/docs/Variables.htm#{FNAME}',
        3 => 'http://www.autohotkey.com/docs/commands/{FNAME}.htm',
        4 => 'http://www.autohotkey.com/docs/Functions.htm#BuiltIn',
        5 => 'http://www.autohotkey.com/docs/commands/_{FNAME}.htm',
        6 => '',
        7 => 'http://www.autohotkey.com/docs/commands/Gui.htm#{FNAME}',
        8 => 'http://www.autohotkey.com/docs/commands/GuiControls.htm#{FNAME}'
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true,
        2 => true,
        3 => true
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            5 => array(
                'DISALLOWED_BEFORE' => '(?geshi/geshi/lsl2.php0000664000175000017500000006754712014173415013574 0ustar  benbebenbe 'LSL2',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array( // flow control
            'do',
            'else',
            'for',
            'if',
            'jump',
            'return',
            'state',
            'while',
            ),
        2 => array( // manifest constants
            'ACTIVE',
            'AGENT',
            'AGENT_ALWAYS_RUN',
            'AGENT_ATTACHMENTS',
            'AGENT_AWAY',
            'AGENT_BUSY',
            'AGENT_CROUCHING',
            'AGENT_FLYING',
            'AGENT_IN_AIR',
            'AGENT_MOUSELOOK',
            'AGENT_ON_OBJECT',
            'AGENT_SCRIPTED',
            'AGENT_SITTING',
            'AGENT_TYPING',
            'AGENT_WALKING',
            'ALL_SIDES',
            'ANIM_ON',
            'ATTACH_BACK',
            'ATTACH_BELLY',
            'ATTACH_CHEST',
            'ATTACH_CHIN',
            'ATTACH_HEAD',
            'ATTACH_HUD_BOTTOM',
            'ATTACH_HUD_BOTTOM_LEFT',
            'ATTACH_HUD_BOTTOM_RIGHT',
            'ATTACH_HUD_CENTER_1',
            'ATTACH_HUD_CENTER_2',
            'ATTACH_HUD_TOP_CENTER',
            'ATTACH_HUD_TOP_LEFT',
            'ATTACH_HUD_TOP_RIGHT',
            'ATTACH_LEAR',
            'ATTACH_LEYE',
            'ATTACH_LFOOT',
            'ATTACH_LHAND',
            'ATTACH_LHIP',
            'ATTACH_LLARM',
            'ATTACH_LLLEG',
            'ATTACH_LPEC',
            'ATTACH_LSHOULDER',
            'ATTACH_LUARM',
            'ATTACH_LULEG',
            'ATTACH_MOUTH',
            'ATTACH_NOSE',
            'ATTACH_PELVIS',
            'ATTACH_REAR',
            'ATTACH_REYE',
            'ATTACH_RFOOT',
            'ATTACH_RHAND',
            'ATTACH_RHIP',
            'ATTACH_RLARM',
            'ATTACH_RLLEG',
            'ATTACH_RPEC',
            'ATTACH_RSHOULDER',
            'ATTACH_RUARM',
            'ATTACH_RULEG',
            'CAMERA_ACTIVE',
            'CAMERA_BEHINDNESS_ANGLE',
            'CAMERA_BEHINDNESS_LAG',
            'CAMERA_DISTANCE',
            'CAMERA_FOCUS',
            'CAMERA_FOCUS_LAG',
            'CAMERA_FOCUS_LOCKED',
            'CAMERA_FOCUS_OFFSET',
            'CAMERA_FOCUS_THRESHOLD',
            'CAMERA_PITCH',
            'CAMERA_POSITION',
            'CAMERA_POSITION_LAG',
            'CAMERA_POSITION_LOCKED',
            'CAMERA_POSITION_THRESHOLD',
            'CHANGED_ALLOWED_DROP',
            'CHANGED_COLOR',
            'CHANGED_INVENTORY',
            'CHANGED_LINK',
            'CHANGED_OWNER',
            'CHANGED_REGION',
            'CHANGED_SCALE',
            'CHANGED_SHAPE',
            'CHANGED_TELEPORT',
            'CHANGED_TEXTURE',
            'CLICK_ACTION_NONE',
            'CLICK_ACTION_OPEN',
            'CLICK_ACTION_OPEN_MEDIA',
            'CLICK_ACTION_PAY',
            'CLICK_ACTION_SIT',
            'CLICK_ACTION_TOUCH',
            'CONTROL_BACK',
            'CONTROL_DOWN',
            'CONTROL_FWD',
            'CONTROL_LBUTTON',
            'CONTROL_LEFT',
            'CONTROL_ML_LBUTTON',
            'CONTROL_RIGHT',
            'CONTROL_ROT_LEFT',
            'CONTROL_ROT_RIGHT',
            'CONTROL_UP',
            'DATA_BORN',
            'DATA_NAME',
            'DATA_ONLINE',
            'DATA_PAYINFO',
            'DATA_RATING',
            'DATA_SIM_POS',
            'DATA_SIM_RATING',
            'DATA_SIM_STATUS',
            'DEBUG_CHANNEL',
            'DEG_TO_RAD',
            'EOF',
            'FALSE',
            'HTTP_BODY_MAXLENGTH',
            'HTTP_BODY_TRUNCATED',
            'HTTP_METHOD',
            'HTTP_MIMETYPE',
            'HTTP_VERIFY_CERT',
            'INVENTORY_ALL',
            'INVENTORY_ANIMATION',
            'INVENTORY_BODYPART',
            'INVENTORY_CLOTHING',
            'INVENTORY_GESTURE',
            'INVENTORY_LANDMARK',
            'INVENTORY_NONE',
            'INVENTORY_NOTECARD',
            'INVENTORY_OBJECT',
            'INVENTORY_SCRIPT',
            'INVENTORY_SOUND',
            'INVENTORY_TEXTURE',
            'LAND_LEVEL',
            'LAND_LOWER',
            'LAND_NOISE',
            'LAND_RAISE',
            'LAND_REVERT',
            'LAND_SMOOTH',
            'LINK_ALL_CHILDREN',
            'LINK_ALL_OTHERS',
            'LINK_ROOT',
            'LINK_SET',
            'LINK_THIS',
            'LIST_STAT_GEOMETRIC_MEAN',
            'LIST_STAT_MAX',
            'LIST_STAT_MEAN',
            'LIST_STAT_MEDIAN',
            'LIST_STAT_MIN',
            'LIST_STAT_NUM_COUNT',
            'LIST_STAT_RANGE',
            'LIST_STAT_STD_DEV',
            'LIST_STAT_SUM',
            'LIST_STAT_SUM_SQUARES',
            'LOOP',
            'MASK_BASE',
            'MASK_EVERYONE',
            'MASK_GROUP',
            'MASK_NEXT',
            'MASK_OWNER',
            'NULL_KEY',
            'OBJECT_CREATOR',
            'OBJECT_DESC',
            'OBJECT_GROUP',
            'OBJECT_NAME',
            'OBJECT_OWNER',
            'OBJECT_POS',
            'OBJECT_ROT',
            'OBJECT_UNKNOWN_DETAIL',
            'OBJECT_VELOCITY',
            'PARCEL_DETAILS_AREA',
            'PARCEL_DETAILS_DESC',
            'PARCEL_DETAILS_GROUP',
            'PARCEL_DETAILS_NAME',
            'PARCEL_DETAILS_OWNER',
            'PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY',
            'PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS',
            'PARCEL_FLAG_ALLOW_CREATE_OBJECTS',
            'PARCEL_FLAG_ALLOW_DAMAGE',
            'PARCEL_FLAG_ALLOW_FLY',
            'PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY',
            'PARCEL_FLAG_ALLOW_GROUP_SCRIPTS',
            'PARCEL_FLAG_ALLOW_LANDMARK',
            'PARCEL_FLAG_ALLOW_SCRIPTS',
            'PARCEL_FLAG_ALLOW_TERRAFORM',
            'PARCEL_FLAG_LOCAL_SOUND_ONLY',
            'PARCEL_FLAG_RESTRICT_PUSHOBJECT',
            'PARCEL_FLAG_USE_ACCESS_GROUP',
            'PARCEL_FLAG_USE_ACCESS_LIST',
            'PARCEL_FLAG_USE_BAN_LIST',
            'PARCEL_FLAG_USE_LAND_PASS_LIST',
            'PARCEL_MEDIA_COMMAND_AGENT',
            'PARCEL_MEDIA_COMMAND_AUTO_ALIGN',
            'PARCEL_MEDIA_COMMAND_DESC',
            'PARCEL_MEDIA_COMMAND_LOOP_SET',
            'PARCEL_MEDIA_COMMAND_PAUSE',
            'PARCEL_MEDIA_COMMAND_PLAY',
            'PARCEL_MEDIA_COMMAND_SIZE',
            'PARCEL_MEDIA_COMMAND_STOP',
            'PARCEL_MEDIA_COMMAND_TEXTURE',
            'PARCEL_MEDIA_COMMAND_TIME',
            'PARCEL_MEDIA_COMMAND_TYPE',
            'PARCEL_MEDIA_COMMAND_URL',
            'PASSIVE',
            'PAYMENT_INFO_ON_FILE',
            'PAYMENT_INFO_USED',
            'PAY_DEFAULT',
            'PAY_HIDE',
            'PERMISSION_ATTACH',
            'PERMISSION_CHANGE_LINKS',
            'PERMISSION_CONTROL_CAMERA',
            'PERMISSION_DEBIT',
            'PERMISSION_TAKE_CONTROLS',
            'PERMISSION_TRACK_CAMERA',
            'PERMISSION_TRIGGER_ANIMATION',
            'PERM_ALL',
            'PERM_COPY',
            'PERM_MODIFY',
            'PERM_MOVE',
            'PERM_TRANSFER',
            'PI',
            'PI_BY_TWO',
            'PRIM_BUMP_BARK',
            'PRIM_BUMP_BLOBS',
            'PRIM_BUMP_BRICKS',
            'PRIM_BUMP_BRIGHT',
            'PRIM_BUMP_CHECKER',
            'PRIM_BUMP_CONCRETE',
            'PRIM_BUMP_DARK',
            'PRIM_BUMP_DISKS',
            'PRIM_BUMP_GRAVEL',
            'PRIM_BUMP_LARGETILE',
            'PRIM_BUMP_NONE',
            'PRIM_BUMP_SHINY',
            'PRIM_BUMP_SIDING',
            'PRIM_BUMP_STONE',
            'PRIM_BUMP_STUCCO',
            'PRIM_BUMP_SUCTION',
            'PRIM_BUMP_TILE',
            'PRIM_BUMP_WEAVE',
            'PRIM_BUMP_WOOD',
            'PRIM_COLOR',
            'PRIM_FULLBRIGHT',
            'PRIM_HOLE_CIRCLE',
            'PRIM_HOLE_DEFAULT',
            'PRIM_HOLE_SQUARE',
            'PRIM_HOLE_TRIANGLE',
            'PRIM_MATERIAL',
            'PRIM_MATERIAL_FLESH',
            'PRIM_MATERIAL_GLASS',
            'PRIM_MATERIAL_LIGHT',
            'PRIM_MATERIAL_METAL',
            'PRIM_MATERIAL_PLASTIC',
            'PRIM_MATERIAL_RUBBER',
            'PRIM_MATERIAL_STONE',
            'PRIM_MATERIAL_WOOD',
            'PRIM_PHANTOM',
            'PRIM_PHYSICS',
            'PRIM_POSITION',
            'PRIM_ROTATION',
            'PRIM_SHINY_HIGH',
            'PRIM_SHINY_LOW',
            'PRIM_SHINY_MEDIUM',
            'PRIM_SHINY_NONE',
            'PRIM_SIZE',
            'PRIM_TEMP_ON_REZ',
            'PRIM_TEXTURE',
            'PRIM_TYPE',
            'PRIM_TYPE_BOX',
            'PRIM_TYPE_CYLINDER',
            'PRIM_TYPE_PRISM',
            'PRIM_TYPE_RING',
            'PRIM_TYPE_SPHERE',
            'PRIM_TYPE_TORUS',
            'PRIM_TYPE_TUBE',
            'PSYS_PART_BOUNCE_MASK',
            'PSYS_PART_EMISSIVE_MASK',
            'PSYS_PART_END_ALPHA',
            'PSYS_PART_END_COLOR',
            'PSYS_PART_END_SCALE',
            'PSYS_PART_FLAGS',
            'PSYS_PART_FOLLOW_SRC_MASK',
            'PSYS_PART_FOLLOW_VELOCITY_MASK',
            'PSYS_PART_INTERP_COLOR_MASK',
            'PSYS_PART_INTERP_SCALE_MASK',
            'PSYS_PART_MAX_AGE',
            'PSYS_PART_START_ALPHA',
            'PSYS_PART_START_COLOR',
            'PSYS_PART_START_SCALE',
            'PSYS_PART_TARGET_LINEAR_MASK',
            'PSYS_PART_TARGET_POS_MASK',
            'PSYS_PART_WIND_MASK',
            'PSYS_SRC_ACCEL',
            'PSYS_SRC_ANGLE_BEGIN',
            'PSYS_SRC_ANGLE_END',
            'PSYS_SRC_BURST_PART_COUNT',
            'PSYS_SRC_BURST_RADIUS',
            'PSYS_SRC_BURST_RATE',
            'PSYS_SRC_BURST_SPEED_MAX',
            'PSYS_SRC_BURST_SPEED_MIN',
            'PSYS_SRC_INNERANGLE',
            'PSYS_SRC_MAX_AGE',
            'PSYS_SRC_OMEGA',
            'PSYS_SRC_OUTERANGLE',
            'PSYS_SRC_PATTERN',
            'PSYS_SRC_PATTERN_ANGLE',
            'PSYS_SRC_PATTERN_ANGLE_CONE',
            'PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY',
            'PSYS_SRC_PATTERN_DROP',
            'PSYS_SRC_PATTERN_EXPLODE',
            'PSYS_SRC_TARGET_KEY',
            'PSYS_SRC_TEXTURE',
            'RAD_TO_DEG',
            'REMOTE_DATA_CHANNEL',
            'REMOTE_DATA_REQUEST',
            'SCRIPTED',
            'SQRT2',
            'STATUS_BLOCK_GRAB',
            'STATUS_DIE_AT_EDGE',
            'STATUS_PHANTOM',
            'STATUS_PHYSICS',
            'STATUS_RETURN_AT_EDGE',
            'STATUS_ROTATE_X',
            'STATUS_ROTATE_Y',
            'STATUS_ROTATE_Z',
            'STATUS_SANDBOX',
            'TRUE',
            'TWO_PI',
            'VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY',
            'VEHICLE_ANGULAR_DEFLECTION_TIMESCALE',
            'VEHICLE_ANGULAR_FRICTION_TIMESCALE',
            'VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE',
            'VEHICLE_ANGULAR_MOTOR_DIRECTION',
            'VEHICLE_ANGULAR_MOTOR_TIMESCALE',
            'VEHICLE_BANKING_EFFICIENCY',
            'VEHICLE_BANKING_MIX',
            'VEHICLE_BANKING_TIMESCALE',
            'VEHICLE_BUOYANCY',
            'VEHICLE_FLAG_CAMERA_DECOUPLED',
            'VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT',
            'VEHICLE_FLAG_HOVER_TERRAIN_ONLY',
            'VEHICLE_FLAG_HOVER_UP_ONLY',
            'VEHICLE_FLAG_HOVER_WATER_ONLY',
            'VEHICLE_FLAG_LIMIT_MOTOR_UP',
            'VEHICLE_FLAG_LIMIT_ROLL_ONLY',
            'VEHICLE_FLAG_MOUSELOOK_BANK',
            'VEHICLE_FLAG_MOUSELOOK_STEER',
            'VEHICLE_FLAG_NO_DEFLECTION_UP',
            'VEHICLE_HOVER_EFFICIENCY',
            'VEHICLE_HOVER_HEIGHT',
            'VEHICLE_HOVER_TIMESCALE',
            'VEHICLE_LINEAR_DEFLECTION_EFFICIENCY',
            'VEHICLE_LINEAR_DEFLECTION_TIMESCALE',
            'VEHICLE_LINEAR_FRICTION_TIMESCALE',
            'VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE',
            'VEHICLE_LINEAR_MOTOR_DIRECTION',
            'VEHICLE_LINEAR_MOTOR_OFFSET',
            'VEHICLE_LINEAR_MOTOR_TIMESCALE',
            'VEHICLE_REFERENCE_FRAME',
            'VEHICLE_TYPE_AIRPLANE',
            'VEHICLE_TYPE_BALLOON',
            'VEHICLE_TYPE_BOAT',
            'VEHICLE_TYPE_CAR',
            'VEHICLE_TYPE_NONE',
            'VEHICLE_TYPE_SLED',
            'VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY',
            'VEHICLE_VERTICAL_ATTRACTION_TIMESCALE',
            'ZERO_ROTATION',
            'ZERO_VECTOR',
            ),
        3 => array( // handlers
            'at_rot_target',
            'at_target',
            'attached',
            'changed',
            'collision',
            'collision_end',
            'collision_start',
            'control',
            'dataserver',
            'email',
            'http_response',
            'land_collision',
            'land_collision_end',
            'land_collision_start',
            'link_message',
            'listen',
            'money',
            'moving_end',
            'moving_start',
            'no_sensor',
            'not_at_rot_target',
            'not_at_target',
            'object_rez',
            'on_rez',
            'remote_data',
            'run_time_permissions',
            'sensor',
            'state_entry',
            'state_exit',
            'timer',
            'touch',
            'touch_end',
            'touch_start',
            ),
        4 => array( // data types
            'float',
            'integer',
            'key',
            'list',
            'rotation',
            'string',
            'vector',
            ),
        5 => array( // library
            'default',
            'llAbs',
            'llAcos',
            'llAddToLandBanList',
            'llAddToLandPassList',
            'llAdjustSoundVolume',
            'llAllowInventoryDrop',
            'llAngleBetween',
            'llApplyImpulse',
            'llApplyRotationalImpulse',
            'llAsin',
            'llAtan2',
            'llAttachToAvatar',
            'llAvatarOnSitTarget',
            'llAxes2Rot',
            'llAxisAngle2Rot',
            'llBase64ToInteger',
            'llBase64ToString',
            'llBreakAllLinks',
            'llBreakLink',
            'llCeil',
            'llClearCameraParams',
            'llCloseRemoteDataChannel',
            'llCloud',
            'llCollisionFilter',
            'llCollisionSound',
            'llCollisionSprite',
            'llCos',
            'llCreateLink',
            'llCSV2List',
            'llDeleteSubList',
            'llDeleteSubString',
            'llDetachFromAvatar',
            'llDetectedGrab',
            'llDetectedGroup',
            'llDetectedKey',
            'llDetectedLinkNumber',
            'llDetectedName',
            'llDetectedOwner',
            'llDetectedPos',
            'llDetectedRot',
            'llDetectedTouchBinormal',
            'llDetectedTouchFace',
            'llDetectedTouchNormal',
            'llDetectedTouchPos',
            'llDetectedTouchST',
            'llDetectedTouchUV',
            'llDetectedType',
            'llDetectedVel',
            'llDialog',
            'llDie',
            'llDumpList2String',
            'llEdgeOfWorld',
            'llEjectFromLand',
            'llEmail',
            'llEscapeURL',
            'llEuler2Rot',
            'llFabs',
            'llFloor',
            'llForceMouselook',
            'llFrand',
            'llGetAccel',
            'llGetAgentInfo',
            'llGetAgentLanguage',
            'llGetAgentSize',
            'llGetAlpha',
            'llGetAndResetTime',
            'llGetAnimation',
            'llGetAnimationList',
            'llGetAttached',
            'llGetBoundingBox',
            'llGetCameraPos',
            'llGetCameraRot',
            'llGetCenterOfMass',
            'llGetColor',
            'llGetCreator',
            'llGetDate',
            'llGetEnergy',
            'llGetForce',
            'llGetFreeMemory',
            'llGetGeometricCenter',
            'llGetGMTclock',
            'llGetInventoryCreator',
            'llGetInventoryKey',
            'llGetInventoryName',
            'llGetInventoryNumber',
            'llGetInventoryPermMask',
            'llGetInventoryType',
            'llGetKey',
            'llGetLandOwnerAt',
            'llGetLinkKey',
            'llGetLinkName',
            'llGetLinkNumber',
            'llGetListEntryType',
            'llGetListLength',
            'llGetLocalPos',
            'llGetLocalRot',
            'llGetMass',
            'llGetNextEmail',
            'llGetNotecardLine',
            'llGetNumberOfNotecardLines',
            'llGetNumberOfPrims',
            'llGetNumberOfSides',
            'llGetObjectDesc',
            'llGetObjectDetails',
            'llGetObjectMass',
            'llGetObjectName',
            'llGetObjectPermMask',
            'llGetObjectPrimCount',
            'llGetOmega',
            'llGetOwner',
            'llGetOwnerKey',
            'llGetParcelDetails',
            'llGetParcelFlags',
            'llGetParcelMaxPrims',
            'llGetParcelPrimCount',
            'llGetParcelPrimOwners',
            'llGetPermissions',
            'llGetPermissionsKey',
            'llGetPos',
            'llGetPrimitiveParams',
            'llGetRegionAgentCount',
            'llGetRegionCorner',
            'llGetRegionFlags',
            'llGetRegionFPS',
            'llGetRegionName',
            'llGetRegionTimeDilation',
            'llGetRootPosition',
            'llGetRootRotation',
            'llGetRot',
            'llGetScale',
            'llGetScriptName',
            'llGetScriptState',
            'llGetSimulatorHostname',
            'llGetStartParameter',
            'llGetStatus',
            'llGetSubString',
            'llGetSunDirection',
            'llGetTexture',
            'llGetTextureOffset',
            'llGetTextureRot',
            'llGetTextureScale',
            'llGetTime',
            'llGetTimeOfDay',
            'llGetTimestamp',
            'llGetTorque',
            'llGetUnixTime',
            'llGetVel',
            'llGetWallclock',
            'llGiveInventory',
            'llGiveInventoryList',
            'llGiveMoney',
            'llGround',
            'llGroundContour',
            'llGroundNormal',
            'llGroundRepel',
            'llGroundSlope',
            'llHTTPRequest',
            'llInsertString',
            'llInstantMessage',
            'llIntegerToBase64',
            'llKey2Name',
            'llList2CSV',
            'llList2Float',
            'llList2Integer',
            'llList2Key',
            'llList2List',
            'llList2ListStrided',
            'llList2Rot',
            'llList2String',
            'llList2Vector',
            'llListen',
            'llListenControl',
            'llListenRemove',
            'llListFindList',
            'llListInsertList',
            'llListRandomize',
            'llListReplaceList',
            'llListSort',
            'llListStatistics',
            'llLoadURL',
            'llLog',
            'llLog10',
            'llLookAt',
            'llLoopSound',
            'llLoopSoundMaster',
            'llLoopSoundSlave',
            'llMapDestination',
            'llMD5String',
            'llMessageLinked',
            'llMinEventDelay',
            'llModifyLand',
            'llModPow',
            'llMoveToTarget',
            'llOffsetTexture',
            'llOpenRemoteDataChannel',
            'llOverMyLand',
            'llOwnerSay',
            'llParcelMediaCommandList',
            'llParcelMediaQuery',
            'llParseString2List',
            'llParseStringKeepNulls',
            'llParticleSystem',
            'llPassCollisions',
            'llPassTouches',
            'llPlaySound',
            'llPlaySoundSlave',
            'llPow',
            'llPreloadSound',
            'llPushObject',
            'llRegionSay',
            'llReleaseControls',
            'llRemoteDataReply',
            'llRemoteDataSetRegion',
            'llRemoteLoadScriptPin',
            'llRemoveFromLandBanList',
            'llRemoveFromLandPassList',
            'llRemoveInventory',
            'llRemoveVehicleFlags',
            'llRequestAgentData',
            'llRequestInventoryData',
            'llRequestPermissions',
            'llRequestSimulatorData',
            'llResetLandBanList',
            'llResetLandPassList',
            'llResetOtherScript',
            'llResetScript',
            'llResetTime',
            'llRezAtRoot',
            'llRezObject',
            'llRot2Angle',
            'llRot2Axis',
            'llRot2Euler',
            'llRot2Fwd',
            'llRot2Left',
            'llRot2Up',
            'llRotateTexture',
            'llRotBetween',
            'llRotLookAt',
            'llRotTarget',
            'llRotTargetRemove',
            'llRound',
            'llSameGroup',
            'llSay',
            'llScaleTexture',
            'llScriptDanger',
            'llSendRemoteData',
            'llSensor',
            'llSensorRemove',
            'llSensorRepeat',
            'llSetAlpha',
            'llSetBuoyancy',
            'llSetCameraAtOffset',
            'llSetCameraEyeOffset',
            'llSetCameraParams',
            'llSetClickAction',
            'llSetColor',
            'llSetDamage',
            'llSetForce',
            'llSetForceAndTorque',
            'llSetHoverHeight',
            'llSetLinkAlpha',
            'llSetLinkColor',
            'llSetLinkPrimitiveParams',
            'llSetLinkTexture',
            'llSetLocalRot',
            'llSetObjectDesc',
            'llSetObjectName',
            'llSetParcelMusicURL',
            'llSetPayPrice',
            'llSetPos',
            'llSetPrimitiveParams',
            'llSetRemoteScriptAccessPin',
            'llSetRot',
            'llSetScale',
            'llSetScriptState',
            'llSetSitText',
            'llSetSoundQueueing',
            'llSetSoundRadius',
            'llSetStatus',
            'llSetText',
            'llSetTexture',
            'llSetTextureAnim',
            'llSetTimerEvent',
            'llSetTorque',
            'llSetTouchText',
            'llSetVehicleFlags',
            'llSetVehicleFloatParam',
            'llSetVehicleRotationParam',
            'llSetVehicleType',
            'llSetVehicleVectorParam',
            'llSHA1String',
            'llShout',
            'llSin',
            'llSitTarget',
            'llSleep',
            'llSqrt',
            'llStartAnimation',
            'llStopAnimation',
            'llStopHover',
            'llStopLookAt',
            'llStopMoveToTarget',
            'llStopSound',
            'llStringLength',
            'llStringToBase64',
            'llStringTrim',
            'llSubStringIndex',
            'llTakeControls',
            'llTan',
            'llTarget',
            'llTargetOmega',
            'llTargetRemove',
            'llTeleportAgentHome',
            'llToLower',
            'llToUpper',
            'llTriggerSound',
            'llTriggerSoundLimited',
            'llUnescapeURL',
            'llUnSit',
            'llVecDist',
            'llVecMag',
            'llVecNorm',
            'llVolumeDetect',
            'llWater',
            'llWhisper',
            'llWind',
            'llXorBase64StringsCorrect',
            ),
        6 => array( // deprecated
            'llMakeExplosion',
            'llMakeFire',
            'llMakeFountain',
            'llMakeSmoke',
            'llSound',
            'llSoundPreload',
            'llXorBase64Strings',
            ),
        7 => array( // unimplemented
            'llPointAt',
            'llRefreshPrimURL',
            'llReleaseCamera',
            'llRemoteLoadScript',
            'llSetPrimURL',
            'llStopPointAt',
            'llTakeCamera',
            'llTextBox',
            ),
        8 => array( // God mode
            'llGodLikeRezObject',
            'llSetInventoryPermMask',
            'llSetObjectPermMask',
            ),
        ),
    'SYMBOLS' => array(
        '{', '}', '(', ')', '[', ']',
        '=', '+', '-', '*', '/',
        '+=', '-=', '*=', '/=', '++', '--',
        '!', '%', '&', '|', '&&', '||',
        '==', '!=', '<', '>', '<=', '>=',
        '~', '<<', '>>', '^', ':',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #000080;',
            3 => 'color: #008080;',
            4 => 'color: #228b22;',
            5 => 'color: #b22222;',
            6 => 'color: #8b0000; background-color: #ffff00;',
            7 => 'color: #8b0000; background-color: #fa8072;',
            8 => 'color: #000000; background-color: #ba55d3;',
            ),
        'COMMENTS' => array(
            1 => 'color: #ff7f50; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #006400;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME}
        4 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME}
        5 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME}
        6 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME}
        7 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME}
        8 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME}
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);
?>geshi/geshi/gwbasic.php0000664000175000017500000001224212014173416014316 0ustar  benbebenbe 'GwBasic',
    'COMMENT_SINGLE' => array(1 => "'", 2=> "REM"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
    /* Statements */
        1 => array('END','FOR','NEXT','DATA','INPUT','DIM','READ','LET',
            'GOTO','RUN','IF','RESTORE','GOSUB','RETURN','REM',
            'STOP','PRINT','CLEAR','LIST','NEW','ON','WAIT','DEF',
            'POKE','CONT','OUT','LPRINT','LLIST','WIDTH','ELSE',
            'TRON','TROFF','SWAP','ERASE','EDIT','ERROR','RESUME',
            'DELETE','AUTO','RENUM','DEFSTR','DEFINT','DEFSNG',
            'DEFDBL','LINE','WHILE','WEND','CALL','WRITE','OPTION',
            'RANDOMIZE','OPEN','CLOSE','LOAD','MERGE','SAVE',
            'COLOR','CLS','MOTOR','BSAVE','BLOAD','SOUND','BEEP',
            'PSET','PRESET','SCREEN','KEY','LOCATE','TO','THEN',
            'STEP','USR','FN','SPC','NOT','ERL','ERR','STRING',
            'USING','INSTR','VARPTR','CSRLIN','POINT','OFF',
            'FILES','FIELD','SYSTEM','NAME','LSET','RSET','KILL',
            'PUT','GET','RESET','COMMON','CHAIN','PAINT','COM',
            'CIRCLE','DRAW','PLAY','TIMER','IOCTL','CHDIR','MKDIR',
            'RMDIR','SHELL','VIEW','WINDOW','PMAP','PALETTE','LCOPY',
            'CALLS','PCOPY','LOCK','UNLOCK','RANDOM','APPEND',
            ),
        2 => array(
            /* Functions */
            'CVI','CVS','CVD','MKI','MKS','MKD','ENVIRON',
            'LEFT','RIGHT','MID','SGN','INT','ABS',
            'SQR','SIN','LOG','EXP','COS','TAN','ATN',
            'FRE','INP','POS','LEN','STR','VAL','ASC',
            'CHR','PEEK','SPACE','OCT','HEX','LPOS',
            'CINT','CSNG','CDBL','FIX','PEN','STICK',
            'STRIG','EOF','LOC','LOF'
            ),
        3 => array(
            /* alpha Operators */
            'AND','OR','XOR','EQV','IMP','MOD'
            ),
        4 => array(
            /* parameterless functions */
            'INKEY','DATE','TIME','ERDEV','RND'
            )
        ),
    'SYMBOLS' => array(
        0 => array(
            '>','=','<','+','-','*','/','^','\\'
            ),
        1 => array(
            '?'
            )
        ),
    'CASE_SENSITIVE' => array(
            GESHI_COMMENTS => false,
            1 => false,
            2 => false,
            3 => false,
            4 => false
            ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00a1a1;font-weight: bold',
            2 => 'color: #000066;font-weight: bold',
            3 => 'color: #00a166;font-weight: bold',
            4 => 'color: #0066a1;font-weight: bold'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;',
            2 => 'color: #808080;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
        /* Same as KEYWORDS[3] (and, or, not...) */
            0 => 'color: #00a166;font-weight: bold',
            1 => 'color: #00a1a1;font-weight: bold',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            1 => 'color: #708090'
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        1 => '^[0-9]+ '
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/per.php0000664000175000017500000001703112014173375013472 0ustar  benbebenbe 'per',
    'COMMENT_SINGLE' => array(1 => '--', 2 => '#'),
    'COMMENT_MULTI' => array('{' => '}'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            "ACCELERATOR",
            "ACCELERATOR2",
            "ACTION",
            "ALT",
            "AND",
            "AUTO",
            "AUTONEXT",
            "AUTOSCALE",
            "BETWEEN",
            "BOTH",
            "BUTTON",
            "BUTTONEDIT",
            "BUTTONTEXTHIDDEN",
            "BY",
            "BYTE",
            "CANVAS",
            "CENTER",
            "CHECKBOX",
            "CLASS",
            "COLOR",
            "COLUMNS",
            "COMBOBOX",
            "COMMAND",
            "COMMENT",
            "COMMENTS",
            "COMPACT",
            "COMPRESS",
            "CONFIG",
            "CONTROL",
            "CURRENT",
            "DATABASE",
            "DATEEDIT",
            "DEC",
            "DEFAULT",
            "DEFAULTS",
            "DELIMITERS",
            "DISPLAY",
            "DISPLAYONLY",
            "DOWNSHIFT",
            "DYNAMIC",
            "EDIT",
            "FIXED",
            "FOLDER",
            "FONTPITCH",
            "FORMAT",
            "FORMONLY",
            "GRID",
            "GRIDCHILDRENINPARENT",
            "GROUP",
            "HBOX",
            "HEIGHT",
            "HIDDEN",
            "HORIZONTAL",
            "INCLUDE",
            "INITIAL",
            "INITIALIZER",
            "INPUT",
            "INSTRUCTIONS",
            "INTERVAL",
            "INVISIBLE",
            "IS",
            "ITEM",
            "ITEMS",
            "JUSTIFY",
            "KEY",
            "KEYS",
            "LABEL",
            "LEFT",
            "LIKE",
            "LINES",
            "MATCHES",
            "NAME",
            "NOENTRY",
            "NONCOMPRESS",
            "NORMAL",
            "NOT",
            "NOUPDATE",
            "OPTIONS",
            "OR",
            "ORIENTATION",
            "PACKED",
            "PAGE",
            "PICTURE",
            "PIXELHEIGHT",
            "PIXELS",
            "PIXELWIDTH",
            "POINTS",
            "PROGRAM",
            "PROGRESSBAR",
            "QUERYCLEAR",
            "QUERYEDITABLE",
            "RADIOGROUP",
            "RECORD",
            "REQUIRED",
            "REVERSE",
            "RIGHT",
            "SAMPLE",
            "SCREEN",
            "SCROLL",
            "SCROLLBARS",
            "SCROLLGRID",
            "SECOND",
            "SEPARATOR",
            "SHIFT",
            "SIZE",
            "SIZEPOLICY",
            "SMALLFLOAT",
            "SMALLINT",
            "SPACING",
            "STRETCH",
            "STYLE",
            "TABINDEX",
            "TABLE",
            "TAG",
            "TEXT",
            "TEXTEDIT",
            "THROUGH",
            "THRU",
            "TITLE",
            "TO",
            "TOOLBAR",
            "TOPMENU",
            "TYPE",
            "UNHIDABLE",
            "UNHIDABLECOLUMNS",
            "UNMOVABLE",
            "UNMOVABLECOLUMNS",
            "UNSIZABLE",
            "UNSIZABLECOLUMNS",
            "UNSORTABLE",
            "UNSORTABLECOLUMNS",
            "UPSHIFT",
            "USER",
            "VALIDATE",
            "VALUECHECKED",
            "VALUEMAX",
            "VALUEMIN",
            "VALUEUNCHECKED",
            "VARCHAR",
            "VARIABLE",
            "VBOX",
            "VERIFY",
            "VERSION",
            "VERTICAL",
            "TIMESTAMP",
            "WANTCOLUMNSANCHORED", /* to be removed! */
            "WANTFIXEDPAGESIZE",
            "WANTNORETURNS",
            "WANTTABS",
            "WHERE",
            "WIDGET",
            "WIDTH",
            "WINDOWSTYLE",
            "WITHOUT",
            "WORDWRAP",
            "X",
            "Y",
            "ZEROFILL",
            "SCHEMA",
            "ATTRIBUTES",
            "TABLES",
            "LAYOUT",
            "END"
            ),
        2 => array(
            "YEAR",
            "BLACK",
            "BLINK",
            "BLUE",
            "YELLOW",
            "WHITE",
            "UNDERLINE",
            "CENTURY",
            "FRACTION",
            "CHAR",
            "CHARACTER",
            "CHARACTERS",
            "CYAN",
            "DATE",
            "DATETIME",
            "DAY",
            "DECIMAL",
            "FALSE",
            "FLOAT",
            "GREEN",
            "HOUR",
            "INT",
            "INTEGER",
            "MAGENTA",
            "MINUTE",
            "MONEY",
            "NONE",
            "NULL",
            "REAL",
            "RED",
            "TRUE",
            "TODAY",
            "MONTH",
            "IMAGE"
            ),
        ),
    'SYMBOLS' => array(
        '+', '-', '*', '?', '=', '/', '%', '>', '<', '^', '!', '|', ':',
        '(', ')', '[', ']'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF;',
            2 => 'color: #0000FF; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #008080; font-style: italic;',
            2 => 'color: #008080;',
            'MULTI' => 'color: green'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008080; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #808080;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000FF;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/lua.php0000664000175000017500000001546212014173423013465 0ustar  benbebenbe 'Lua',
    'COMMENT_SINGLE' => array(1 => "--"),
    'COMMENT_MULTI' => array('--[[' => ']]'),
    'COMMENT_REGEXP' => array(2 => '/\[(=*)\[.*?\]\1\]/s'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[\\\\abfnrtv\'\"]#i",
        //Octal Char Specs
        2 => "#\\\\\\d{1,3}#"
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_NONSCI | GESHI_NUMBER_FLT_NONSCI_F |
        GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'break','do','else','elseif','end','for','function','if',
            'local','repeat','return','then','until','while'
            ),
        2 => array(
            'and','in','not','or'
            ),
        3 => array(
            '_VERSION','assert','collectgarbage','dofile','error','gcinfo','loadfile','loadstring',
            'print','tonumber','tostring','type','unpack',
            '_ALERT','_ERRORMESSAGE','_INPUT','_PROMPT','_OUTPUT',
            '_STDERR','_STDIN','_STDOUT','call','dostring','foreach','foreachi','getn','globals','newtype',
            'rawget','rawset','require','sort','tinsert','tremove',
            'abs','acos','asin','atan','atan2','ceil','cos','deg','exp',
            'floor','format','frexp','gsub','ldexp','log','log10','max','min','mod','rad','random','randomseed',
            'sin','sqrt','strbyte','strchar','strfind','strlen','strlower','strrep','strsub','strupper','tan',
            'openfile','closefile','readfrom','writeto','appendto',
            'remove','rename','flush','seek','tmpfile','tmpname','read','write',
            'clock','date','difftime','execute','exit','getenv','setlocale','time',
            '_G','getfenv','getmetatable','ipairs','loadlib','next','pairs','pcall',
            'rawegal','setfenv','setmetatable','xpcall',
            'string.byte','string.char','string.dump','string.find','string.len',
            'string.lower','string.rep','string.sub','string.upper','string.format','string.gfind','string.gsub',
            'table.concat','table.foreach','table.foreachi','table.getn','table.sort','table.insert','table.remove','table.setn',
            'math.abs','math.acos','math.asin','math.atan','math.atan2','math.ceil','math.cos','math.deg','math.exp',
            'math.floor','math.frexp','math.ldexp','math.log','math.log10','math.max','math.min','math.mod',
            'math.pi','math.rad','math.random','math.randomseed','math.sin','math.sqrt','math.tan',
            'coroutine.create','coroutine.resume','coroutine.status',
            'coroutine.wrap','coroutine.yield',
            'io.close','io.flush','io.input','io.lines','io.open','io.output','io.read','io.tmpfile','io.type','io.write',
            'io.stdin','io.stdout','io.stderr',
            'os.clock','os.date','os.difftime','os.execute','os.exit','os.getenv','os.remove','os.rename',
            'os.setlocale','os.time','os.tmpname',
            'string','table','math','coroutine','io','os','debug'
            ),
        4 => array(
            'nil', 'false', 'true'
            ),
        5 => array(
            'Nil', 'Boolean', 'Number', 'String', 'Userdata', 'Thread', 'Table'
            )
        ),
    'SYMBOLS' => array(
        '+', '-', '*', '/', '%', '^', '#',
        '==', '~=', '<=', '>=', '<', '>', '=',
        '(', ')', '{', '}', '[', ']',
        ';', ':', ',', '.', '..', '...'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #aa9900; font-weight: bold;',
            2 => 'color: #aa9900; font-weight: bold;',
            3 => 'color: #0000aa;',
            4 => 'color: #aa9900;',
            5 => 'color: #aa9900;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #ff0000;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff6666;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #aa9900;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/bascomavr.php0000664000175000017500000002423512014173440014656 0ustar  benbebenbe 'BASCOM AVR',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            // Navy Blue Bold Keywords
            '1WRESET' , '1WREAD' , '1WWRITE' , '1WSEARCHFIRST' , '1WSEARCHNEXT' ,'1WVERIFY' , '1WIRECOUNT',
            'CONFIG' , 'ACI' , 'ADC' , 'BCCARD' , 'CLOCK' , 'COM1' ,
            'COM2' , 'PS2EMU' , 'ATEMU' , 'I2CSLAVE' ,
            'INPUT', 'OUTPUT', 'GRAPHLCD' , 'KEYBOARD' , 'TIMER0' , 'TIMER1' ,
            'LCDBUS' , 'LCDMODE' , '1WIRE' , 'LCD' , 'SERIALOUT' ,
            'SERIALIN' , 'SPI' , 'LCDPIN' , 'SDA' , 'SCL' ,
            'WATCHDOG' , 'PORT' , 'COUNTER0', 'COUNTER1' , 'TCPIP' , 'TWISLAVE' ,
            'X10' , 'XRAM' , 'USB',
            'BCD' , 'GRAY2BIN' , 'BIN2GRAY' , 'BIN' , 'MAKEBCD' , 'MAKEDEC' , 'MAKEINT' , 'FORMAT' , 'FUSING' , 'BINVAL' ,
            'CRC8' , 'CRC16' , 'CRC16UNI' , 'CRC32' , 'HIGH' , 'HIGHW' , 'LOW',
            'DATE' , 'TIME'  , 'DATE$' , 'TIME$' , 'DAYOFWEEK' , 'DAYOFYEAR' , 'SECOFDAY' , 'SECELAPSED' , 'SYSDAY' , 'SYSSEC' , 'SYSSECELAPSED',
            'WAIT'  , 'WAITMS' , 'WAITUS' , 'DELAY',
            'BSAVE' , 'BLOAD' , 'GET' , 'VER' , 'DISKFREE' , 'DIR' , 'DriveReset' , 'DriveInit' , 'LINE' , 'INITFILESYSTEM' ,
            'EOF' , 'WRITE' , 'FLUSH' , 'FREEFILE' , 'FILEATTR' , 'FILEDATE' , 'FILETIME' , 'FILEDATETIME' , 'FILELEN' , 'SEEK' ,
            'KILL' , 'DriveGetIdentity' , 'DriveWriteSector' , 'DriveReadSector' , 'LOC' , 'LOF' , 'PUT' , 'OPEN' , 'CLOSE',
            'GLCDCMD' , 'GLCDDATA' , 'SETFONT' , 'PSET' , 'SHOWPIC' , 'SHOWPICE' , 'CIRCLE' , 'BOX',
            'I2CINIT' , 'I2CRECEIVE' , 'I2CSEND' , 'I2CSTART','I2CSTOP','I2CRBYTE','I2CWBYTE',
            'ALIAS' , 'BITWAIT' , 'TOGGLE' , 'RESET' , 'SET' , 'SHIFTIN' , 'SHIFTOUT' , 'DEBOUNCE' , 'PULSEIN' , 'PULSEOUT',
            'IDLE' , 'POWERDOWN' , 'POWERSAVE' , 'ON', 'INTERRUPT' , 'ENABLE' , 'DISABLE' , 'START' , 'VERSION' , 'CLOCKDIVISION' , 'CRYSTAL' , 'STOP',
            'ADR' , 'ADR2' , 'WRITEEEPROM' , 'CPEEK' , 'CPEEKH' , 'PEEK' , 'POKE' , 'OUT' , 'READEEPROM' , 'DATA' , 'INP' , 'READ' , 'RESTORE' , 'LOOKDOWN' , 'LOOKUP' , 'LOOKUPSTR' , 'LOAD' , 'LOADADR' , 'LOADLABEL' , 'LOADWORDADR' , 'MEMCOPY',
            'RC5SEND' , 'RC6SEND' , 'GETRC5' , 'SONYSEND',
            'BAUD' , 'BAUD1', 'BUFSPACE' , 'CLEAR', 'ECHO' , 'WAITKEY' , 'ISCHARWAITING' , 'INKEY' , 'INPUTBIN' , 'INPUTHEX' , 'PRINT', 'PRINT1','PRINT0', 'PRINTBIN' , 'SERIN' , 'SEROUT' , 'SPC' , 'MAKEMODBUS',
            'SPIIN' , 'SPIINIT' , 'SPIMOVE' , 'SPIOUT', 'SINGLE',
            'ASC' , 'UCASE' , 'LCASE' , 'TRIM' , 'SPLIT' , 'LTRIM' , 'INSTR' , 'SPACE' , 'RTRIM' , 'LEFT' , 'LEN' , 'MID' , 'RIGHT' , 'VAL' , 'STR' , 'CHR' , 'CHECKSUM' , 'HEX' , 'HEXVAL',
            'BASE64DEC' , 'BASE64ENC' , 'IP2STR' , 'UDPREAD' , 'UDPWRITE' , 'UDPWRITESTR' , 'TCPWRITE' , 'TCPWRITESTR' , 'TCPREAD' , 'GETDSTIP' , 'GETDSTPORT' , 'SOCKETSTAT' , 'SOCKETCONNECT' , 'SOCKETLISTEN' , 'GETSOCKET' , 'CLOSESOCKET' ,
            'SETTCP' , 'GETTCPREGS' , 'SETTCPREGS' , 'SETIPPROTOCOL' , 'TCPCHECKSUM',
            'HOME' , 'CURSOR' , 'UPPERLINE' , 'THIRDLINE' , 'INITLCD' , 'LOWERLINE' , 'LCDAT' , 'FOURTHLINE' , 'DISPLAY' , 'LCDCONTRAST' , 'LOCATE' , 'SHIFTCURSOR' , 'DEFLCDCHAR' , 'SHIFTLCD' , 'CLS',
            'ACOS' , 'ASIN' , 'ATN' , 'ATN2' , 'EXP' , 'RAD2DEG' , 'FRAC' , 'TAN' , 'TANH' , 'COS' , 'COSH' , 'LOG' , 'LOG10' , 'ROUND' , 'ABS' , 'INT' , 'MAX' , 'MIN' , 'SQR' , 'SGN' , 'POWER' , 'SIN' , 'SINH' , 'FIX' , 'INCR' , 'DECR' , 'DEG2RAD',
            'DBG' , 'DEBUG', 'DTMFOUT' , 'ENCODER' , 'GETADC' , 'GETKBD' , 'GETATKBD' , 'GETRC' , 'VALUE' , 'POPALL' , 'PS2MOUSEXY' , 'PUSHALL' ,
            'RETURN'  , 'RND' , 'ROTATE' , 'SENDSCAN' , 'SENDSCANKBD' , 'SHIFT' , 'SOUND' , 'STCHECK' , 'SWAP' , 'VARPTR' , 'X10DETECT' , 'X10SEND' , 'READMAGCARD' , 'REM' , 'BITS' , 'BYVAL' , 'CALL' , 'READHITAG',
            'Buffered', 'Size', 'Dummy', 'Parity', 'None', 'Stopbits', 'Databits', 'Clockpol', 'Synchrone', 'Prescaler', 'Reference', 'int0', 'int1', 'Interrupts',
            'Auto', 'avcc', 'ack', 'nack', 'Pin', 'Db4', 'Db3', 'Db2', 'Db1', 'Db7', 'Db6', 'Db5', 'Db0',  'e', 'rs', 'twi',
            ),
        2 => array(
            // Red Lowercase Keywords
            '$ASM' , '$BAUD' , '$BAUD1' , '$BGF' , '$BOOT' , '$CRYSTAL' , '$DATA' , '$DBG' , '$DEFAULT' , '$EEPLEAVE' , '$EEPROM' ,
            '$EEPROMHEX' , '$EXTERNAL' , '$HWSTACK' , '$INC' , '$INCLUDE' , '$INITMICRO' , '$LCD' , '$LCDRS' , '$LCDPUTCTRL' ,
            '$LCDPUTDATA' , '$LCDVFO' , '$LIB' , '$LOADER' , '$LOADERSIZE' , '$MAP' , '$NOCOMPILE' , '$NOINIT' , '$NORAMCLEAR' ,
            '$PROG' , '$PROGRAMMER' , '$REGFILE' , '$RESOURCE' , '$ROMSTART', '$SERIALINPUT', '$SERIALINPUT1' , '$SERIALINPUT2LCD' ,
            '$SERIALOUTPUT' , '$SERIALOUTPUT1' , '$SIM' , '$SWSTACK' , '$TIMEOUT' , '$TINY' , '$WAITSTATE' , '$XRAMSIZE' , '$XRAMSTART', '$XA',
            '#IF' , '#ELSE' , '#ENDIF', '$framesize'
            ),
        3 => array(
            // Blue Lowercase Keywords
            'IF', 'THEN', 'ELSE', 'END', 'WHILE', 'WEND', 'DO', 'LOOP', 'SELECT', 'CASE', 'FOR', 'NEXT',
            'GOSUB' , 'GOTO' , 'LOCAL' , 'SUB' , 'DEFBIT', 'DEFBYTE', 'DEFINT', 'DEFWORD', 'DEFLNG', 'DEFSNG', 'DEFDBL',
            'CONST', 'DECLARE', 'FUNCTION', 'DIM', 'EXIT', 'LONG', 'INTEGER', 'BYTE', 'AS', 'STRING', 'WORD'
            ),
        4 => array(
            //light blue
            'PINA.0', 'PINA.1', 'PINA.2', 'PINA.3', 'PINA.4', 'PINA.5', 'PINA.6', 'PINA.7',
            'PINB.0', 'PINB.1', 'PINB.2', 'PINB.3', 'PINB.4', 'PINB.5', 'PINB.6', 'PINB.7',
            'PINC.0', 'PINC.1', 'PINC.2', 'PINC.3', 'PINC.4', 'PINC.5', 'PINC.6', 'PINC.7',
            'PIND.0', 'PIND.1', 'PIND.2', 'PIND.3', 'PIND.4', 'PIND.5', 'PIND.6', 'PIND.7',
            'PINE.0', 'PINE.1', 'PINE.2', 'PINE.3', 'PINE.4', 'PINE.5', 'PINE.6', 'PINE.7',
            'PINF.0', 'PINF.1', 'PINF.2', 'PINF.3', 'PINF.4', 'PINF.5', 'PINF.6', 'PINF.7',

            'PORTA.0', 'PORTA.1', 'PORTA.2', 'PORTA.3', 'PORTA.4', 'PORTA.5', 'PORTA.6', 'PORTA.7',
            'PORTB.0', 'PORTB.1', 'PORTB.2', 'PORTB.3', 'PORTB.4', 'PORTB.5', 'PORTB.6', 'PORTB.7',
            'PORTC.0', 'PORTC.1', 'PORTC.2', 'PORTC.3', 'PORTC.4', 'PORTC.5', 'PORTC.6', 'PORTC.7',
            'PORTD.0', 'PORTD.1', 'PORTD.2', 'PORTD.3', 'PORTD.4', 'PORTD.5', 'PORTD.6', 'PORTD.7',
            'PORTE.0', 'PORTE.1', 'PORTE.2', 'PORTE.3', 'PORTE.4', 'PORTE.5', 'PORTE.6', 'PORTE.7',
            'PORTF.0', 'PORTF.1', 'PORTF.2', 'PORTF.3', 'PORTF.4', 'PORTF.5', 'PORTF.6', 'PORTF.7',

            'DDRA.0', 'DDRA.1', 'DDRA.2', 'DDRA.3', 'DDRA.4', 'DDRA.5', 'DDRA.6', 'DDRA.7',
            'DDRB.0', 'DDRB.1', 'DDRB.2', 'DDRB.3', 'DDRB.4', 'DDRB.5', 'DDRB.6', 'DDRB.7',
            'DDRC.0', 'DDRC.1', 'DDRC.2', 'DDRC.3', 'DDRC.4', 'DDRC.5', 'DDRC.6', 'DDRC.7',
            'DDRD.0', 'DDRD.1', 'DDRD.2', 'DDRD.3', 'DDRD.4', 'DDRD.5', 'DDRD.6', 'DDRD.7',
            'DDRE.0', 'DDRE.1', 'DDRE.2', 'DDRE.3', 'DDRE.4', 'DDRE.5', 'DDRE.6', 'DDRE.7',
            'DDRF.0', 'DDRF.1', 'DDRF.2', 'DDRF.3', 'DDRF.4', 'DDRF.5', 'DDRF.6', 'DDRF.7',

            'DDRA','DDRB','DDRC','DDRD','DDRE','DDRF',
            'PORTA','PORTB','PORTC','PORTD','PORTE','PORTF',
            'PINA','PINB','PINC','PIND','PINE','PINF',
            )
        ),
    'SYMBOLS' => array(
        '=', '<', '>', '>=', '<=', '+', '-', '*', '/', '%', '(', ')', '{', '}', '[', ']',  ';', ':', '$', '&H'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000080; font-weight: bold;',
            2 => 'color: #FF0000;',
            3 => 'color: #0000FF;',
            4 => 'color: #0080FF;',
            ),
        'COMMENTS' => array(
            1 => 'color: #657CC4; font-style: italic;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000080;'
            ),
        'STRINGS' => array(
            0 => 'color: #008000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000080; font-weight: bold;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #0000FF;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/oobas.php0000664000175000017500000001203212014173420013772 0ustar  benbebenbe 'OpenOffice.org Basic',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array(),
    //Single-Line comments using REM keyword
    'COMMENT_REGEXP' => array(2 => '/\bREM.*?$/i'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'dim','private','public','global','as','if','redim','true','set','byval',
            'false','bool','double','integer','long','object','single','variant',
            'msgbox','print','inputbox','green','blue','red','qbcolor',
            'rgb','open','close','reset','freefile','get','input','line',
            'put','write','loc','seek','eof','lof','chdir','chdrive',
            'curdir','dir','fileattr','filecopy','filedatetime','fileexists',
            'filelen','getattr','kill','mkdir','name','rmdir','setattr',
            'dateserial','datevalue','day','month','weekday','year','cdatetoiso',
            'cdatefromiso','hour','minute','second','timeserial','timevalue',
            'date','now','time','timer','erl','err','error','on','goto','resume',
            'and','eqv','imp','not','or','xor','mod','atn','cos','sin','tan','log',
            'exp','rnd','randomize','sqr','fix','int','abs','sgn','hex','oct',
            'it','then','else','select','case','iif','do','loop','for','next','to',
            'while','wend','gosub','return','call','choose','declare',
            'end','exit','freelibrary','function','rem','stop','sub','switch','with',
            'cbool','cdate','cdbl','cint','clng','const','csng','cstr','defbool',
            'defdate','defdbl','defint','deflng','asc','chr','str','val','cbyte',
            'space','string','format','lcase','left','lset','ltrim','mid','right',
            'rset','rtrim','trim','ucase','split','join','converttourl','convertfromurl',
            'instr','len','strcomp','beep','shell','wait','getsystemticks','environ',
            'getsolarversion','getguitype','twipsperpixelx','twipsperpixely',
            'createunostruct','createunoservice','getprocessservicemanager',
            'createunodialog','createunolistener','createunovalue','thiscomponent',
            'globalscope'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;',
            2 => 'color: #808080;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/awk.php0000664000175000017500000001077412014173424013470 0ustar  benbebenbe 'awk',
    'COMMENT_SINGLE' => array(
        1 => '#'
        ),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array (
        1 => array(
            'for', 'in', 'if', 'else', 'while', 'do', 'continue', 'break'
            ),
        2 => array(
            'BEGIN', 'END'
            ),
        3 => array(
            'ARGC', 'ARGV', 'CONVFMT', 'ENVIRON',
            'FILENAME', 'FNR', 'FS', 'NF', 'NR', 'OFMT',
            'OFS','ORS','RLENGTH','RS','RSTART','SUBSEP'
            ),
        4 => array(
            'gsub','index','length','match','split',
            'sprintf','sub','substr','tolower','toupper',
            'atan2','cos','exp','int','log','rand',
            'sin','sqrt','srand'
            ),
        5 => array(
            'print','printf','getline','close','fflush','system'
            ),
        6 => array(
            'function', 'return'
            )
        ),
    'SYMBOLS' => array (
        0 => array(
            '(',')','[',']','{','}'
            ),
        1 => array(
            '!','||','&&'
            ),
        2 => array(
            '<','>','<=','>=','==','!='
            ),
        3 => array(
            '+','-','*','/','%','^','++','--'
            ),
        4 => array(
            '~','!~'
            ),
        5 => array(
            '?',':'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #C20CB9; font-weight: bold;',
            3 => 'color: #4107D5; font-weight: bold;',
            4 => 'color: #07D589; font-weight: bold;',
            5 => 'color: #0BD507; font-weight: bold;',
            6 => 'color: #078CD5; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color:#808080;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'SYMBOLS' => array(
            0 => 'color:black;',
            1 => 'color:black;',
            2 => 'color:black;',
            3 => 'color:black;',
            4 => 'color:#C4C364;',
            5 => 'color:black;font-weight:bold;'),
        'SCRIPT' => array(),
        'REGEXPS' => array(
            0 => 'color:#000088;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #7a0874; font-weight: bold;'
            ),
        'METHODS' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array (),
    'REGEXPS' => array(
        0 => "\\$[a-zA-Z0-9_]+"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array (),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>
geshi/geshi/pys60.php0000664000175000017500000003365712014173406013674 0ustar  benbebenbe 'Python for S60',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'", '"""',"'''",'""','""'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(

        /*
         ** Set 1: reserved words
         ** http://python.org/doc/current/ref/keywords.html
         */
        1 => array(
            'and', 'del', 'for', 'is', 'raise', 'assert', 'elif', 'from', 'lambda', 'return', 'break',
            'else', 'global', 'not', 'try', 'class', 'except', 'if', 'or', 'while', 'continue', 'exec',
            'import', 'pass', 'yield', 'def', 'finally', 'in', 'print', "<<", ">>", "as"
            ),

        /*
         ** Set 2: builtins
         ** http://python.org/doc/current/lib/built-in-funcs.html
         */
        2 => array(
            '__import__', 'abs', 'basestring', 'bool', 'callable', 'chr', 'classmethod', 'cmp',
            'compile', 'complex', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile',
            'file', 'filter', 'float', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help',
            'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'list', 'locals',
            'long', 'map', 'max', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'range',
            'raw_input', 'reduce', 'reload', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice',
            'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode',
            'vars', 'xrange', 'zip',
            // Built-in constants: http://python.org/doc/current/lib/node35.html
            'False', 'True', 'None', 'NotImplemented', 'Ellipsis',
            // Built-in Exceptions: http://python.org/doc/current/lib/module-exceptions.html
            'Exception', 'StandardError', 'ArithmeticError', 'LookupError', 'EnvironmentError',
            'AssertionError', 'AttributeError', 'EOFError', 'FloatingPointError', 'IOError',
            'ImportError', 'IndexError', 'KeyError', 'KeyboardInterrupt', 'MemoryError', 'NameError',
            'NotImplementedError', 'OSError', 'OverflowError', 'ReferenceError', 'RuntimeError',
            'StopIteration', 'SyntaxError', 'SystemError', 'SystemExit', 'TypeError',
            'UnboundlocalError', 'UnicodeError', 'UnicodeEncodeError', 'UnicodeDecodeError',
            'UnicodeTranslateError', 'ValueError', 'WindowsError', 'ZeroDivisionError', 'Warning',
            'UserWarning', 'DeprecationWarning', 'PendingDeprecationWarning', 'SyntaxWarning',
            'RuntimeWarning', 'FutureWarning',
            //Symbian Errors
            "SymbianError", "KernelError",
            // self: this is a common python convention (but not a reserved word)
            'self'
            ),

        /*
         ** Set 3: standard library
         ** http://python.org/doc/current/lib/modindex.html
         */
        3 => array(
            '__builtin__', '__future__', '__main__', '_winreg', 'aifc', 'AL', 'al', 'anydbm',
            'array', 'asynchat', 'asyncore', 'atexit', 'audioop', 'base64', 'BaseHTTPServer',
            'Bastion', 'binascii', 'binhex', 'bisect', 'bsddb', 'bz2', 'calendar', 'cd', 'cgi',
            'CGIHTTPServer', 'cgitb', 'chunk', 'cmath', 'cmd', 'code', 'codecs', 'codeop',
            'collections', 'colorsys', 'commands', 'compileall', 'compiler',
            'ConfigParser', 'Cookie', 'cookielib', 'copy', 'copy_reg', 'cPickle', 'crypt',
            'cStringIO', 'csv', 'curses', 'datetime', 'dbhash', 'dbm', 'decimal', 'DEVICE',
            'difflib', 'dircache', 'dis', 'distutils', 'dl', 'doctest', 'DocXMLRPCServer', 'dumbdbm',
            'dummy_thread', 'dummy_threading', 'email', 'encodings', 'errno', 'exceptions', 'fcntl',
            'filecmp', 'fileinput', 'FL', 'fl', 'flp', 'fm', 'fnmatch', 'formatter', 'fpectl',
            'fpformat', 'ftplib', 'gc', 'gdbm', 'getopt', 'getpass', 'gettext', 'GL', 'gl', 'glob',
            'gopherlib', 'grp', 'gzip', 'heapq', 'hmac', 'hotshot', 'htmlentitydefs', 'htmllib',
            'HTMLParser', 'httplib', 'imageop', 'imaplib', 'imgfile', 'imghdr', 'imp', 'inspect',
            'itertools', 'jpeg', 'keyword', 'linecache', 'locale', 'logging', 'mailbox', 'mailcap',
            'marshal', 'math', 'md5', 'mhlib', 'mimetools', 'mimetypes', 'MimeWriter', 'mimify',
            'mmap', 'msvcrt', 'multifile', 'mutex', 'netrc', 'new', 'nis', 'nntplib', 'operator',
            'optparse', 'os', 'ossaudiodev', 'parser', 'pdb', 'pickle', 'pickletools', 'pipes',
            'pkgutil', 'platform', 'popen2', 'poplib', 'posix', 'posixfile', 'pprint', 'profile',
            'pstats', 'pty', 'pwd', 'py_compile', 'pyclbr', 'pydoc', 'Queue', 'quopri', 'random',
            're', 'readline', 'resource', 'rexec', 'rgbimg', 'rlcompleter',
            'robotparser', 'sched', 'ScrolledText', 'select', 'sets', 'sgmllib', 'sha', 'shelve',
            'shlex', 'shutil', 'signal', 'SimpleHTTPServer', 'SimpleXMLRPCServer', 'site', 'smtpd',
            'smtplib', 'sndhdr', 'socket', 'SocketServer', 'stat', 'statcache', 'statvfs', 'string',
            'StringIO', 'stringprep', 'struct', 'subprocess', 'sunau', 'SUNAUDIODEV', 'sunaudiodev',
            'symbol', 'sys', 'syslog', 'tabnanny', 'tarfile', 'telnetlib', 'tempfile', 'termios',
            'test', 'textwrap', 'thread', 'threading', 'time', 'timeit', 'Tix', 'Tkinter', 'token',
            'tokenize', 'traceback', 'tty', 'turtle', 'types', 'unicodedata', 'unittest', 'urllib2',
            'urllib', 'urlparse', 'user', 'UserDict', 'UserList', 'UserString', 'uu', 'warnings',
            'wave', 'weakref', 'webbrowser', 'whichdb', 'whrandom', 'winsound', 'xdrlib', 'xml',
            'xmllib', 'xmlrpclib', 'zipfile', 'zipimport', 'zlib', "os.path", "sys.path",

            //PythonS60 Standard Library
            //http://pys60.garage.maemo.org/doc/s60/
            //These are the standard modules in the archive

            "appuifw", "globalui","e32", "telephone", "aosocket", "btsocket",
            "sysinfo","camera","graphics","keycapture","key_codes","topwindow", "gles",
            "glcanvas","sensor", "audio","messaging", "inbox","location","positioning",
            "contacts", "e32calendar", "e32db","e32dbm","logs","scriptext",
            "series60_console",

            //These are external but very often usable modules

            "appuifw2","ArchetypeUI","elementtree","lightblue",
            "activaprofile","Adjustor","akntextutils","aosocketnativenew",
            "appreciation","applicationmanager","appswitch","atextit","bt_teror","btconsole",
            "btswitch","cElementTree","cenrep","cerealizer","cl_gui","clipboard",
            "clipboard_CHN","debugger","decompile2",
            "dir_iter","download","easydb","ECenrep","Edit_find","efeature","elocation","envy",
            "EProfile","erestart","error","esyagent","Execwap","exprofile","fastcamera",
            "feature","fgimage","filebrowser","firmware","fold","fonts","fraction","FTP",
            "ftplibnew","fy_manager","fy_menu","gles_utils","gps_location","hack",
            "HTML2TXT","iapconnect","icon_image","image_decoder",
            "ini","interactive_console","inting","key_modifiers","key_tricks","keypress",
            "landmarks","lite_fm","locationacq","locationrequestor",
            "logo","markupbase","mbm","mbm2","minidb","miniinfo","MISC",
            "misty","Msg","ntpath","odict","Paintbox","pathinfo","pexif","pickcolor",
            "powlite_fm","powlite_fm2","powlite_fm3","powlite_fme","prgbar","prodb",
            "profileengine","progressbar","progressbartw","progressnotes",
            "ProgressBarTW2","proshivka","py_upload","pyConnection","PyFileMan",
            "pykeylock","PyPyc","pyqq","pys60crypto","pys60usb","rfc822",
            "RUSOS","scmk","scrollpage","SISFIELDS","SISFIELD","sisfile",
            "SISINFO","sisreader","Sistools","smidi","smsreject","speechy","sre_compile",
            "sre_constants","sre_parse","sre","sysagent","syslang","TextMan",
            "textrenderer","TextWrap","topwind","tsocket","uikludge","uikludges","uitricks",
            "walkfile","wallpaper","wfm_lite",
            "wif_keys","wif","window","wlanmgmt","wlantools","wt_color","wt_requesters",
            "zhkey",

            //These are recent additions
            "miffile"
            ),

        /*
         ** Set 4: special methods
         ** http://python.org/doc/current/ref/specialnames.html
         */
        4 => array(
            ///*
            //// Iterator types: http://python.org/doc/current/lib/typeiter.html
            //'__iter__', 'next',
            //// String types: http://python.org/doc/current/lib/string-methods.html
            //'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs',
            //'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle',
            //'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust',
            //'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title',
            //'translate', 'upper', 'zfill',
            // */

            // Basic customization: http://python.org/doc/current/ref/customization.html
            '__new__', '__init__', '__del__', '__repr__', '__str__',
            '__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__', '__cmp__', '__rcmp__',
            '__hash__', '__nonzero__', '__unicode__', '__dict__',
            // Attribute access: http://python.org/doc/current/ref/attribute-access.html
            '__setattr__', '__delattr__', '__getattr__', '__getattribute__', '__get__', '__set__',
            '__delete__', '__slots__',
            // Class creation, callable objects
            '__metaclass__', '__call__',
            // Container types: http://python.org/doc/current/ref/sequence-types.html
            '__len__', '__getitem__', '__setitem__', '__delitem__', '__iter__', '__contains__',
            '__getslice__', '__setslice__', '__delslice__',
            // Numeric types: http://python.org/doc/current/ref/numeric-types.html
            '__abs__','__add__','__and__','__coerce__','__div__','__divmod__','__float__',
            '__hex__','__iadd__','__isub__','__imod__','__idiv__','__ipow__','__iand__',
            '__ior__','__ixor__', '__ilshift__','__irshift__','__invert__','__int__',
            '__long__','__lshift__',
            '__mod__','__mul__','__neg__','__oct__','__or__','__pos__','__pow__',
            '__radd__','__rdiv__','__rdivmod__','__rmod__','__rpow__','__rlshift__','__rrshift__',
            '__rshift__','__rsub__','__rmul__','__rand__','__rxor__','__ror__',
            '__sub__','__xor__'
            )

        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', '`'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #006000;font-weight:bold;',   // Reserved
            2 => 'color: #800950;font-size:105%',                  // Built-ins + self
            3 => 'color: #003399;font-size:106%',                  // Standard lib
            4 => 'color: #0000cd;'                  // Special methods
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style:italic;font-size:92%',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #930; font-weight: bold;font-size:105%'
            ),
        'BRACKETS' => array(
            0 => 'color: maroon;font-size:102%;padding:2px'
            ),
        'STRINGS' => array(
            0 => 'color: #666;'
            ),
        'NUMBERS' => array(
            0 => 'color: #2356F8;'
            ),
        'METHODS' => array(
            1 => 'color: navy;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66ccFF;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/autoconf.php0000664000175000017500000003750512014173440014523 0ustar  benbebenbe 'Autoconf',
    'COMMENT_SINGLE' => array(2 => '#'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        //Multiline-continued single-line comments
        1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Multiline-continued preprocessor define
        2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Single Line comment started by dnl
        3 => '/(? GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'AC_ACT_IFELSE',
            'AC_AIX',
            'AC_ALLOCA',
            'AC_ARG_ARRAY',
            'AC_ARG_ENABLE',
            'AC_ARG_PROGRAM',
            'AC_ARG_VAR',
            'AC_ARG_WITH',
            'AC_AUTOCONF_VERSION',
            'AC_BEFORE',
            'AC_C_BACKSLASH_A',
            'AC_C_BIGENDIAN',
            'AC_C_CHAR_UNSIGNED',
            'AC_C_CONST',
            'AC_C_CROSS',
            'AC_C_FLEXIBLE_ARRAY_MEMBER',
            'AC_C_INLINE',
            'AC_C_LONG_DOUBLE',
            'AC_C_PROTOTYPES',
            'AC_C_RESTRICT',
            'AC_C_STRINGIZE',
            'AC_C_TYPEOF',
            'AC_C_VARARRAYS',
            'AC_C_VOLATILE',
            'AC_CACHE_CHECK',
            'AC_CACHE_LOAD',
            'AC_CACHE_SAVE',
            'AC_CACHE_VAL',
            'AC_CANONICAL_BUILD',
            'AC_CANONICAL_HOST',
            'AC_CANONICAL_SYSTEM',
            'AC_CANONICAL_TARGET',
            'AC_CHAR_UNSIGNED',
            'AC_CHECK_ALIGNOF',
            'AC_CHECK_DECL',
            'AC_CHECK_DECLS',
            'AC_CHECK_DECLS_ONCE',
            'AC_CHECK_FILE',
            'AC_CHECK_FILES',
            'AC_CHECK_FUNC',
            'AC_CHECK_FUNCS',
            'AC_CHECK_FUNCS_ONCE',
            'AC_CHECK_HEADER',
            'AC_CHECK_HEADERS',
            'AC_CHECK_HEADERS_ONCE',
            'AC_CHECK_LIB',
            'AC_CHECK_MEMBER',
            'AC_CHECK_MEMBERS',
            'AC_CHECK_PROG',
            'AC_CHECK_PROGS',
            'AC_CHECK_SIZEOF',
            'AC_CHECK_TARGET_TOOL',
            'AC_CHECK_TARGET_TOOLS',
            'AC_CHECK_TOOL',
            'AC_CHECK_TOOLS',
            'AC_CHECK_TYPE',
            'AC_CHECK_TYPES',
            'AC_CHECKING',
            'AC_COMPILE_CHECK',
            'AC_COMPILE_IFELSE',
            'AC_COMPUTE_INT',
            'AC_CONFIG_AUX_DIR',
            'AC_CONFIG_COMMANDS',
            'AC_CONFIG_COMMANDS_POST',
            'AC_CONFIG_COMMANDS_PRE',
            'AC_CONFIG_FILES',
            'AC_CONFIG_HEADERS',
            'AC_CONFIG_ITEMS',
            'AC_CONFIG_LIBOBJ_DIR',
            'AC_CONFIG_LINKS',
            'AC_CONFIG_MACRO_DIR',
            'AC_CONFIG_SRCDIR',
            'AC_CONFIG_SUBDIRS',
            'AC_CONFIG_TESTDIR',
            'AC_CONST',
            'AC_COPYRIGHT',
            'AC_CROSS_CHECK',
            'AC_CYGWIN',
            'AC_DATAROOTDIR_CHECKED',
            'AC_DECL_SYS_SIGLIST',
            'AC_DECL_YYTEXT',
            'AC_DEFINE',
            'AC_DEFINE_UNQUOTED',
            'AC_DEFUN',
            'AC_DEFUN_ONCE',
            'AC_DIAGNOSE',
            'AC_DIR_HEADER',
            'AC_DISABLE_OPTION_CHECKING',
            'AC_DYNIX_SEQ',
            'AC_EGREP_CPP',
            'AC_EGREP_HEADER',
            'AC_EMXOS2',
            'AC_ENABLE',
            'AC_ERLANG_CHECK_LIB',
            'AC_ERLANG_NEED_ERL',
            'AC_ERLANG_NEED_ERLC',
            'AC_ERLANG_PATH_ERL',
            'AC_ERLANG_PATH_ERLC',
            'AC_ERLANG_SUBST_ERTS_VER',
            'AC_ERLANG_SUBST_INSTALL_LIB_DIR',
            'AC_ERLANG_SUBST_INSTALL_LIB_SUBDIR',
            'AC_ERLANG_SUBST_LIB_DIR',
            'AC_ERLANG_SUBST_ROOT_DIR',
            'AC_ERROR',
            'AC_EXEEXT',
            'AC_F77_DUMMY_MAIN',
            'AC_F77_FUNC',
            'AC_F77_LIBRARY_LDFLAGS',
            'AC_F77_MAIN',
            'AC_F77_WRAPPERS',
            'AC_FATAL',
            'AC_FC_FREEFORM',
            'AC_FC_FUNC',
            'AC_FC_LIBRARY_LDFLAGS',
            'AC_FC_MAIN',
            'AC_FC_SRCEXT',
            'AC_FC_WRAPPERS',
            'AC_FIND_X',
            'AC_FIND_XTRA',
            'AC_FOREACH',
            'AC_FUNC_ALLOCA',
            'AC_FUNC_CHECK',
            'AC_FUNC_CHOWN',
            'AC_FUNC_CLOSEDIR_VOID',
            'AC_FUNC_ERROR_AT_LINE',
            'AC_FUNC_FNMATCH',
            'AC_FUNC_FNMATCH_GNU',
            'AC_FUNC_FORK',
            'AC_FUNC_FSEEKO',
            'AC_FUNC_GETGROUPS',
            'AC_FUNC_GETLOADAVG',
            'AC_FUNC_GETMNTENT',
            'AC_FUNC_GETPGRP',
            'AC_FUNC_LSTAT',
            'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK',
            'AC_FUNC_MALLOC',
            'AC_FUNC_MBRTOWC',
            'AC_FUNC_MEMCMP',
            'AC_FUNC_MKTIME',
            'AC_FUNC_MMAP',
            'AC_FUNC_OBSTACK',
            'AC_FUNC_REALLOC',
            'AC_FUNC_SELECT_ARGTYPES',
            'AC_FUNC_SETPGRP',
            'AC_FUNC_SETVBUF_REVERSED',
            'AC_FUNC_STAT',
            'AC_FUNC_STRCOLL',
            'AC_FUNC_STRERROR_R',
            'AC_FUNC_STRFTIME',
            'AC_FUNC_STRNLEN',
            'AC_FUNC_STRTOD',
            'AC_FUNC_STRTOLD',
            'AC_FUNC_UTIME_NULL',
            'AC_FUNC_VPRINTF',
            'AC_FUNC_WAIT3',
            'AC_GCC_TRADITIONAL',
            'AC_GETGROUPS_T',
            'AC_GETLOADAVG',
            'AC_GNU_SOURCE',
            'AC_HAVE_FUNCS',
            'AC_HAVE_HEADERS',
            'AC_HAVE_LIBRARY',
            'AC_HAVE_POUNDBANG',
            'AC_HEADER_ASSERT',
            'AC_HEADER_CHECK',
            'AC_HEADER_DIRENT',
            'AC_HEADER_EGREP',
            'AC_HEADER_MAJOR',
            'AC_HEADER_RESOLV',
            'AC_HEADER_STAT',
            'AC_HEADER_STDBOOL',
            'AC_HEADER_STDC',
            'AC_HEADER_SYS_WAIT',
            'AC_HEADER_TIME',
            'AC_HEADER_TIOCGWINSZ',
            'AC_HELP_STRING',
            'AC_INCLUDES_DEFAULT',
            'AC_INIT',
            'AC_INLINE',
            'AC_INT_16_BITS',
            'AC_IRIX_SUN',
            'AC_ISC_POSIX',
            'AC_LANG_ASSERT',
            'AC_LANG_C',
            'AC_LANG_CALL',
            'AC_LANG_CONFTEST',
            'AC_LANG_CPLUSPLUS',
            'AC_LANG_FORTRAN77',
            'AC_LANG_FUNC_LINK_TRY',
            'AC_LANG_POP',
            'AC_LANG_PROGRAM',
            'AC_LANG_PUSH',
            'AC_LANG_RESTORE',
            'AC_LANG_SAVE',
            'AC_LANG_SOURCE',
            'AC_LANG_WERROR',
            'AC_LIBOBJ',
            'AC_LIBSOURCE',
            'AC_LIBSOURCES',
            'AC_LINK_FILES',
            'AC_LINK_IFELSE',
            'AC_LN_S',
            'AC_LONG_64_BITS',
            'AC_LONG_DOUBLE',
            'AC_LONG_FILE_NAMES',
            'AC_MAJOR_HEADER',
            'AC_MEMORY_H',
            'AC_MINGW32',
            'AC_MINIX',
            'AC_MINUS_C_MINUS_O',
            'AC_MMAP',
            'AC_MODE_T',
            'AC_MSG_CHECKING',
            'AC_MSG_ERROR',
            'AC_MSG_FAILURE',
            'AC_MSG_NOTICE',
            'AC_MSG_RESULT',
            'AC_MSG_WARN',
            'AC_OBJEXT',
            'AC_OBSOLETE',
            'AC_OFF_T',
            'AC_OPENMP',
            'AC_OUTPUT',
            'AC_OUTPUT_COMMANDS',
            'AC_PACKAGE_BUGREPORT',
            'AC_PACKAGE_NAME',
            'AC_PACKAGE_STRING',
            'AC_PACKAGE_TARNAME',
            'AC_PACKAGE_URL',
            'AC_PACKAGE_VERSION',
            'AC_PATH_PROG',
            'AC_PATH_PROGS',
            'AC_PATH_PROGS_FEATURE_CHECK',
            'AC_PATH_TARGET_TOOL',
            'AC_PATH_TOOL',
            'AC_PATH_X',
            'AC_PATH_XTRA',
            'AC_PID_T',
            'AC_PREFIX',
            'AC_PREFIX_DEFAULT',
            'AC_PREFIX_PROGRAM',
            'AC_PREPROC_IFELSE',
            'AC_PREREQ',
            'AC_PRESERVE_HELP_ORDER',
            'AC_PROG_AWK',
            'AC_PROG_CC',
            'AC_PROG_CC_C89',
            'AC_PROG_CC_C99',
            'AC_PROG_CC_C_O',
            'AC_PROG_CC_STDC',
            'AC_PROG_CPP',
            'AC_PROG_CPP_WERROR',
            'AC_PROG_CXX',
            'AC_PROG_CXX_C_O',
            'AC_PROG_CXXCPP',
            'AC_PROG_EGREP',
            'AC_PROG_F77',
            'AC_PROG_F77_C_O',
            'AC_PROG_FC',
            'AC_PROG_FC_C_O',
            'AC_PROG_FGREP',
            'AC_PROG_GCC_TRADITIONAL',
            'AC_PROG_GREP',
            'AC_PROG_INSTALL',
            'AC_PROG_LEX',
            'AC_PROG_LN_S',
            'AC_PROG_MAKE_SET',
            'AC_PROG_MKDIR_P',
            'AC_PROG_OBJC',
            'AC_PROG_OBJCPP',
            'AC_PROG_OBJCXX',
            'AC_PROG_OBJCXXCPP',
            'AC_PROG_RANLIB',
            'AC_PROG_SED',
            'AC_PROG_YACC',
            'AC_PROGRAM_CHECK',
            'AC_PROGRAM_EGREP',
            'AC_PROGRAM_PATH',
            'AC_PROGRAMS_CHECK',
            'AC_PROGRAMS_PATH',
            'AC_REMOTE_TAPE',
            'AC_REPLACE_FNMATCH',
            'AC_REPLACE_FUNCS',
            'AC_REQUIRE',
            'AC_REQUIRE_AUX_FILE',
            'AC_REQUIRE_CPP',
            'AC_RESTARTABLE_SYSCALLS',
            'AC_RETSIGTYPE',
            'AC_REVISION',
            'AC_RSH',
            'AC_RUN_IFELSE',
            'AC_SCO_INTL',
            'AC_SEARCH_LIBS',
            'AC_SET_MAKE',
            'AC_SETVBUF_REVERSED',
            'AC_SIZE_T',
            'AC_SIZEOF_TYPE',
            'AC_ST_BLKSIZE',
            'AC_ST_BLOCKS',
            'AC_ST_RDEV',
            'AC_STAT_MACROS_BROKEN',
            'AC_STDC_HEADERS',
            'AC_STRCOLL',
            'AC_STRUCT_DIRENT_D_INO',
            'AC_STRUCT_DIRENT_D_TYPE',
            'AC_STRUCT_ST_BLKSIZE',
            'AC_STRUCT_ST_BLOCKS',
            'AC_STRUCT_ST_RDEV',
            'AC_STRUCT_TIMEZONE',
            'AC_STRUCT_TM',
            'AC_SUBST',
            'AC_SUBST_FILE',
            'AC_SYS_INTERPRETER',
            'AC_SYS_LARGEFILE',
            'AC_SYS_LONG_FILE_NAMES',
            'AC_SYS_POSIX_TERMIOS',
            'AC_SYS_RESTARTABLE_SYSCALLS',
            'AC_SYS_SIGLIST_DECLARED',
            'AC_TEST_CPP',
            'AC_TEST_PROGRAM',
            'AC_TIME_WITH_SYS_TIME',
            'AC_TIMEZONE',
            'AC_TRY_ACT',
            'AC_TRY_COMPILE',
            'AC_TRY_CPP',
            'AC_TRY_LINK',
            'AC_TRY_LINK_FUNC',
            'AC_TRY_RUN',
            'AC_TYPE_GETGROUPS',
            'AC_TYPE_INT16_T',
            'AC_TYPE_INT32_T',
            'AC_TYPE_INT64_T',
            'AC_TYPE_INT8_T',
            'AC_TYPE_INTMAX_T',
            'AC_TYPE_INTPTR_T',
            'AC_TYPE_LONG_DOUBLE',
            'AC_TYPE_LONG_DOUBLE_WIDER',
            'AC_TYPE_LONG_LONG_INT',
            'AC_TYPE_MBSTATE_T',
            'AC_TYPE_MODE_T',
            'AC_TYPE_OFF_T',
            'AC_TYPE_PID_T',
            'AC_TYPE_SIGNAL',
            'AC_TYPE_SIZE_T',
            'AC_TYPE_SSIZE_T',
            'AC_TYPE_UID_T',
            'AC_TYPE_UINT16_T',
            'AC_TYPE_UINT32_T',
            'AC_TYPE_UINT64_T',
            'AC_TYPE_UINT8_T',
            'AC_TYPE_UINTMAX_T',
            'AC_TYPE_UINTPTR_T',
            'AC_TYPE_UNSIGNED_LONG_LONG_INT',
            'AC_UID_T',
            'AC_UNISTD_H',
            'AC_USE_SYSTEM_EXTENSIONS',
            'AC_USG',
            'AC_UTIME_NULL',
            'AC_VALIDATE_CACHED_SYSTEM_TUPLE',
            'AC_VERBOSE',
            'AC_VFORK',
            'AC_VPRINTF',
            'AC_WAIT3',
            'AC_WARN',
            'AC_WARNING',
            'AC_WITH',
            'AC_WORDS_BIGENDIAN',
            'AC_XENIX_DIR',
            'AC_YYTEXT_POINTER',
            'AH_BOTTOM',
            'AH_HEADER',
            'AH_TEMPLATE',
            'AH_TOP',
            'AH_VERBATIM',
            'AU_ALIAS',
            'AU_DEFUN'),
            ),
    'SYMBOLS' => array('(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`'),
    'CASE_SENSITIVE' => array(
            GESHI_COMMENTS => false,
                1 => true,
                ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00ffff;',
            ),
        'COMMENTS' => array(
            1 => 'color: #666666;',
            2 => 'color: #339900;',
            3 => 'color: #666666;',
            'MULTI' => 'color: #ff0000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;',
            1 => 'color: #000099;',
            2 => 'color: #660099;',
            3 => 'color: #660099;',
            4 => 'color: #660099;',
            5 => 'color: #006699;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #008000;'
            ),
        'STRINGS' => array(
            0 => 'color: #996600;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;',
            1 => 'color: #000080;',
            2 => 'color: #000040;',
            3 => 'color: #000040;',
            4 => 'color: #008080;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '$'
            ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?  "(?![\.\-a-zA-Z0-9_%\\/])"
            )
        )
);

?>geshi/geshi/oracle8.php0000664000175000017500000002755712014173376014260 0ustar  benbebenbe 'Oracle 8 SQL',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array("'", '"', '`'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
//Put your package names here - e.g. select distinct ''''|| lower(name) || ''',' from user_source;
//        6 => array(
//            ),

//Put your table names here - e.g. select distinct ''''|| lower(table_name) || ''',' from user_tables;
//        5 => array(
//            ),

//Put your view names here - e.g. select distinct ''''|| lower(view_name) || ''',' from user_views;
//        4 => array(
//            ),

//Put your table field names here - e.g. select distinct ''''|| lower(column_name) || ''',' from user_tab_columns;
//        3 => array(
//            ),

//Put ORACLE reserved keywords here (8.1.7).  I like mine uppercase.
        1 => array(
            'ABS',
            'ACCESS',
            'ACOS',
            'ADD',
            'ADD_MONTHS',
            'ALL',
            'ALTER',
            'ANALYZE',
            'AND',
            'ANY',
            'ARRAY',
            'AS',
            'ASC',
            'ASCII',
            'ASIN',
            'ASSOCIATE',
            'AT',
            'ATAN',
            'ATAN2',
            'AUDIT',
            'AUTHID',
            'AVG',
            'BEGIN',
            'BETWEEN',
            'BFILENAME',
            'BINARY_INTEGER',
            'BITAND',
            'BODY',
            'BOOLEAN',
            'BULK',
            'BY',
            'CALL',
            'CASCADE',
            'CASE',
            'CEIL',
            'CHAR',
            'CHAR_BASE',
            'CHARTOROWID',
            'CHECK',
            'CHR',
            'CLOSE',
            'CLUSTER',
            'COALESCE',
            'COLLECT',
            'COLUMN',
            'COMMENT',
            'COMMIT',
            'COMPRESS',
            'CONCAT',
            'CONNECT',
            'CONSTANT',
            'CONSTRAINT',
            'CONSTRAINTS',
            'CONTEXT',
            'CONTROLFILE',
            'CONVERT',
            'CORR',
            'COS',
            'COSH',
            'COST',
            'COUNT',
            'COVAR_POP',
            'COVAR_SAMP',
            'CREATE',
            'CUME_DIST',
            'CURRENT',
            'CURRVAL',
            'CURSOR',
            'DATABASE',
            'DATE',
            'DAY',
            'DECIMAL',
            'DECLARE',
            'DECODE',
            'DEFAULT',
            'DELETE',
            'DENSE_RANK',
            'DEREF',
            'DESC',
            'DIMENSION',
            'DIRECTORY',
            'DISASSOCIATE',
            'DISTINCT',
            'DO',
            'DROP',
            'DUMP',
            'ELSE',
            'ELSIF',
            'EMPTY_BLOB',
            'EMPTY_CLOB',
            'END',
            'EXCEPTION',
            'EXCLUSIVE',
            'EXEC',
            'EXECUTE',
            'EXISTS',
            'EXIT',
            'EXP',
            'EXPLAIN',
            'EXTENDS',
            'EXTRACT',
            'FALSE',
            'FETCH',
            'FILE',
            'FIRST_VALUE',
            'FLOAT',
            'FLOOR',
            'FOR',
            'FORALL',
            'FROM',
            'FUNCTION',
            'GOTO',
            'GRANT',
            'GREATEST',
            'GROUP',
            'GROUPING',
            'HAVING',
            'HEAP',
            'HEXTORAW',
            'HOUR',
            'IDENTIFIED',
            'IF',
            'IMMEDIATE',
            'IN',
            'INCREMENT',
            'INDEX',
            'INDEXTYPE',
            'INDICATOR',
            'INITCAP',
            'INITIAL',
            'INSERT',
            'INSTR',
            'INSTRB',
            'INTEGER',
            'INTERFACE',
            'INTERSECT',
            'INTERVAL',
            'INTO',
            'IS',
            'ISOLATION',
            'JAVA',
            'KEY',
            'LAG',
            'LAST_DAY',
            'LAST_VALUE',
            'LEAD',
            'LEAST',
            'LENGTH',
            'LENGTHB',
            'LEVEL',
            'LIBRARY',
            'LIKE',
            'LIMITED',
            'LINK',
            'LN',
            'LOCK',
            'LOG',
            'LONG',
            'LOOP',
            'LOWER',
            'LPAD',
            'LTRIM',
            'MAKE_REF',
            'MATERIALIZED',
            'MAX',
            'MAXEXTENTS',
            'MIN',
            'MINUS',
            'MINUTE',
            'MLSLABEL',
            'MOD',
            'MODE',
            'MODIFY',
            'MONTH',
            'MONTHS_BETWEEN',
            'NATURAL',
            'NATURALN',
            'NEW',
            'NEW_TIME',
            'NEXT_DAY',
            'NEXTVAL',
            'NLS_CHARSET_DECL_LEN',
            'NLS_CHARSET_ID',
            'NLS_CHARSET_NAME',
            'NLS_INITCAP',
            'NLS_LOWER',
            'NLS_UPPER',
            'NLSSORT',
            'NOAUDIT',
            'NOCOMPRESS',
            'NOCOPY',
            'NOT',
            'NOWAIT',
            'NTILE',
            'NULL',
            'NULLIF',
            'NUMBER',
            'NUMBER_BASE',
            'NUMTODSINTERVAL',
            'NUMTOYMINTERVAL',
            'NVL',
            'NVL2',
            'OCIROWID',
            'OF',
            'OFFLINE',
            'ON',
            'ONLINE',
            'OPAQUE',
            'OPEN',
            'OPERATOR',
            'OPTION',
            'OR',
            'ORDER',
            'ORGANIZATION',
            'OTHERS',
            'OUT',
            'OUTLINE',
            'PACKAGE',
            'PARTITION',
            'PCTFREE',
            'PERCENT_RANK',
            'PLAN',
            'PLS_INTEGER',
            'POSITIVE',
            'POSITIVEN',
            'POWER',
            'PRAGMA',
            'PRIMARY',
            'PRIOR',
            'PRIVATE',
            'PRIVILEGES',
            'PROCEDURE',
            'PROFILE',
            'PUBLIC',
            'RAISE',
            'RANGE',
            'RANK',
            'RATIO_TO_REPORT',
            'RAW',
            'RAWTOHEX',
            'REAL',
            'RECORD',
            'REF',
            'REFTOHEX',
            'REGR_AVGX',
            'REGR_AVGY',
            'REGR_COUNT',
            'REGR_INTERCEPT',
            'REGR_R2',
            'REGR_SLOPE',
            'REGR_SXX',
            'REGR_SXY',
            'REGR_SYY',
            'RELEASE',
            'RENAME',
            'REPLACE',
            'RESOURCE',
            'RETURN',
            'RETURNING',
            'REVERSE',
            'REVOKE',
            'ROLE',
            'ROLLBACK',
            'ROUND',
            'ROW',
            'ROW_NUMBER',
            'ROWID',
            'ROWIDTOCHAR',
            'ROWNUM',
            'ROWS',
            'ROWTYPE',
            'RPAD',
            'RTRIM',
            'SAVEPOINT',
            'SCHEMA',
            'SECOND',
            'SEGMENT',
            'SELECT',
            'SEPERATE',
            'SEQUENCE',
            'SESSION',
            'SET',
            'SHARE',
            'SIGN',
            'SIN',
            'SINH',
            'SIZE',
            'SMALLINT',
            'SOUNDEX',
            'SPACE',
            'SQL',
            'SQLCODE',
            'SQLERRM',
            'SQRT',
            'START',
            'STATISTICS',
            'STDDEV',
            'STDDEV_POP',
            'STDDEV_SAMP',
            'STOP',
            'SUBSTR',
            'SUBSTRB',
            'SUBTYPE',
            'SUCCESSFUL',
            'SUM',
            'SYNONYM',
            'SYS_CONTEXT',
            'SYS_GUID',
            'SYSDATE',
            'SYSTEM',
            'TABLE',
            'TABLESPACE',
            'TAN',
            'TANH',
            'TEMPORARY',
            'THEN',
            'TIME',
            'TIMESTAMP',
            'TIMEZONE_ABBR',
            'TIMEZONE_HOUR',
            'TIMEZONE_MINUTE',
            'TIMEZONE_REGION',
            'TIMING',
            'TO',
            'TO_CHAR',
            'TO_DATE',
            'TO_LOB',
            'TO_MULTI_BYTE',
            'TO_NUMBER',
            'TO_SINGLE_BYTE',
            'TRANSACTION',
            'TRANSLATE',
            'TRIGGER',
            'TRIM',
            'TRUE',
            'TRUNC',
            'TRUNCATE',
            'TYPE',
            'UI',
            'UID',
            'UNION',
            'UNIQUE',
            'UPDATE',
            'UPPER',
            'USE',
            'USER',
            'USERENV',
            'USING',
            'VALIDATE',
            'VALUE',
            'VALUES',
            'VAR_POP',
            'VAR_SAMP',
            'VARCHAR',
            'VARCHAR2',
            'VARIANCE',
            'VIEW',
            'VSIZE',
            'WHEN',
            'WHENEVER',
            'WHERE',
            'WHILE',
            'WITH',
            'WORK',
            'WRITE',
            'YEAR',
            'ZONE'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '=', '<', '>', '|', '+', '-', '*', '/', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
//        3 => false,
//        4 => false,
//        5 => false,
//        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #993333; font-weight: bold; text-transform: uppercase;'
//Add the styles for groups 3-6 here when used
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #ff0000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
//        3 => '',
//        4 => '',
//        5 => '',
//        6 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/klonecpp.php0000664000175000017500000003235712014173432014521 0ustar  benbebenbe 'KLone C++',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),//#pour precede les include de C
    'COMMENT_MULTI' => array('/*' => '*/', '' ),//comentaires C et KLone suivi de ceux pour HTML
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(//mots-cles C++
            'if', 'return', 'while', 'case', 'continue', 'default',
            'do', 'else', 'for', 'switch', 'goto',
            'break', 'true', 'enum', 'extern', 'inline', 'false',
            'errno', 'stdin', 'stdout', 'stderr',
            'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace',
            'try', 'catch', 'dynamic_cast', 'const_cast', 'reinterpret_cast',
            'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class',
            'EDOM', 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG',
            'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG',
            'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP',
            'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP',
            'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN',
            'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN',
            'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT',
            'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR',
            'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', 'NULL',
            'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX',
            'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC'
            ),
        2 => array(//mots-cles KLone
            'out', 'request', 'response',
            ),
        3 => array(//fonctions C++ usuelles
            'cin', 'cerr', 'clog', 'cout', 'delete', 'new', 'this',
            'printf', 'fprintf', 'snprintf', 'sprintf', 'assert',
            'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint',
            'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper',
            'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp',
            'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2',
            'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp',
            'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen',
            'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf',
            'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf',
            'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc',
            'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind',
            'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs',
            'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc',
            'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv',
            'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat',
            'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn',
            'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy',
            'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime',
            'asctime', 'ctime', 'gmtime', 'localtime', 'strftime'
            ),
        4 => array(//fonctions KLone usuelles
            'request_get_cookies', 'request_get_cookie', 'request_get_args', 'request_get_arg',
            'request_io', 'request_get_uri', 'request_get_filename', 'request_get_query_string', 'request_get_path_info',
            'request_get_if_modified_since', 'request_get_http', 'request_get_client_request',
            'request_get_content_length', 'request_get_uploads', 'request_get_uploaded_file',
            'request_get_method', 'request_get_protocol', 'request_get_resolved_filename',
            'request_get_resolved_path_info', 'request_get_addr', 'request_get_peer_addr',
            'request_get_header', 'request_get_field', 'request_get_field_value',
            'response_set_content_encoding', 'response_disable_caching', 'response_enable_caching',
            'response_set_cookie', 'response_set_method', 'response_get_method',
            'response_print_header', 'response_set_field', 'response_del_field',
            'response_set_content_type', 'response_set_date', 'response_set_last_modified',
            'response_set_content_length', 'response_get_status', 'response_get_header',
            'response_io', 'response_redirect', 'response_set_status',
            'session_get_vars', 'session_get', 'session_set', 'session_age', 'session_clean', 'session_del',
            'io_type', 'io_pipe', 'io_dup', 'io_copy', 'io_seek', 'io_tell', 'io_close',
            'io_free', 'io_read', 'io_printf', 'io_flush', 'io_write', 'io_putc', 'io_getc',
            'io_get_until', 'io_gets', 'io_codec_add_head', 'io_codec_add_tail',
            'io_codecs_remove', 'io_name_set', 'io_name_get'
            ),
        5 => array(//types C++
            'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint',
            'register', 'short', 'shortint', 'signed', 'static', 'struct',
            'typedef', 'union', 'unsigned', 'void', 'volatile', 'jmp_buf',
            'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t',
            'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm',
            'string', 'wchar_t'
            ),
        6 => array(//mots-cles HTML
            'a', 'abbr', 'acronym', 'address', 'applet',

            'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b',

            'caption', 'center', 'cite', 'code', 'colgroup', 'col',

            'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt',

            'em',

            'fieldset', 'font', 'form', 'frame', 'frameset',

            'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html',

            'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i',

            'kbd',

            'label', 'legend', 'link', 'li',

            'map', 'meta',

            'noframes', 'noscript',

            'object', 'ol', 'optgroup', 'option',

            'param', 'pre', 'p',

            'q',

            'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's',

            'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt',

            'ul', 'u',

            'var',
            ),
        7 => array(//autres mots-cles HTML
            'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis',
            'background', 'bgcolor', 'border',
            'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords',
            'data', 'datetime', 'declare', 'defer', 'dir', 'disabled',
            'enctype',
            'face', 'for', 'frame', 'frameborder',
            'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv',
            'id', 'ismap',
            'label', 'lang', 'language', 'link', 'longdesc',
            'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple',
            'name', 'nohref', 'noresize', 'noshade', 'nowrap',
            'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload',
            'profile', 'prompt',
            'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules',
            'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary',
            'tabindex', 'target', 'text', 'title', 'type',
            'usemap',
            'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace',
            'width'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '<%=', '<%!', '<%', '%>'
            ),
        0 => array(
            '(', ')', '[', ']', '{', '}',
            '!', '%', '&', '|', '/',
            '<', '>',
            '=', '-', '+', '*',
            '.', ':', ',', ';', '^'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100; font-weight: bold;',//pour les mots-cles C++
            2 => 'color: #000000; font-weight: bold;',//pour les mots-cles KLone
            3 => 'color: #6600FF;',//pour les fonctions C++
            4 => 'color: #6600FF;',//pour les fonctions Klone
            5 => 'color: #0099FF; font-weight: bold;',//pour les types C++
            6 => 'color: #990099; font-weight: bold;',//pour les mots-cles HTML
            7 => 'color: #000066;'//pour les autres mots-cles HTML
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',//commentaire sur une ligne C++ et KLone
            2 => 'color: #339933;',//pour les #... en C++
            'MULTI' => 'color: #808080; font-style: italic;'//commentaire sur plusieurs lignes C++ et KLone
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;',
            1 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array(
            0 => 'background-color:#ffccff; font-weight: bold; color:#000000;',
            1 => '',
            2 => '',
            3 => 'color: #00bbdd; font-weight: bold;',
            4 => 'color: #ddbb00;',
            5 => 'color: #009900;'
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html',
        4 => 'http://www.koanlogic.com/klone/api/html/globals.html',
        5 => '',
        6 => 'http://december.com/html/4/element/{FNAMEL}.html',
        7 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        //delimiteurs pour KLone
        0 => array(
            '<%=' => '%>'
            ),
        1 => array(
            '<%!' => '%>'
            ),
        2 => array(
            '<%' => '%>'
            ),
        //delimiteur pour HTML
        3 => array(
            ' '>'
            ),
        4 => array(
            '&' => ';'
            ),
        5 => array(
            '<' => '>'
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => false,
        1 => true,
        2 => true,
        3 => false,
        4 => false,
        5 => true
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            6 => array(
                'DISALLOWED_BEFORE' => '(?<=<|<\/)',
                'DISALLOWED_AFTER' => '(?=\s|\/|>)',
            ),
            7 => array(
                'DISALLOWED_AFTER' => '(?=\s*=)',
            )
        )
    )
);

?>
geshi/geshi/verilog.php0000664000175000017500000001365712014173421014355 0ustar  benbebenbe
 * Copyright: (C) 2008 Guenter Dannoritzer
 * Release Version: 1.0.8.11
 * Date Started: 2008/05/28
 *
 * Verilog language file for GeSHi.
 *
 * CHANGES
 * -------
 * 2008/05/29
 *   -  added regular expression to find numbers of the form 4'b001xz
 *   -  added regular expression to find values for `timescale command
 *   -  extended macro keywords
 *
 * TODO (updated 2008/05/29)
 * -------------------------
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'Verilog',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        // keywords
        1 => array('always', 'and', 'assign', 'begin', 'buf', 'bufif0', 'bufif1', 'case',
            'casex', 'casez', 'cmos', 'deassign', 'default', 'defparam',
            'disable', 'edge', 'else', 'end', 'endcase', 'endfunction',
            'endmodule', 'endprimitive', 'endspecify', 'endtable', 'endtask',
            'event', 'fork', 'for', 'force', 'forever', 'function', 'highz0',
            'highz1', 'if', 'ifnone', 'initial', 'inout', 'input', 'integer',
            'join', 'large', 'macromodule', 'medium', 'module', 'nand',
            'negedge', 'nmos', 'nor', 'not', 'notif0', 'notif1', 'or',
            'output', 'parameter', 'pmos', 'posedge', 'primitive', 'pull0',
            'pull1', 'pulldown', 'pullup', 'rcmos', 'real', 'realtime', 'reg',
            'release', 'repeat', 'rnmos', 'rpmos', 'rtran', 'rtranif0',
            'rtranif1', 'scalared', 'small', 'specify', 'specparam',
            'strong0', 'strong1', 'supply0', 'supply1', 'table', 'task',
            'time', 'tran', 'tranif0', 'tranif1', 'tri', 'tri0', 'tri1',
            'triand', 'trior', 'trireg', 'vectored', 'wait', 'wand', 'weak0',
            'weak1', 'while', 'wire', 'wor', 'xnor', 'xor'
            ),
        // system tasks
        2 => array(
            '$display', '$monitor',
            '$dumpall', '$dumpfile', '$dumpflush', '$dumplimit', '$dumpoff',
            '$dumpon', '$dumpvars',
            '$fclose', '$fdisplay', '$fopen',
            '$finish', '$fmonitor', '$fstrobe', '$fwrite',
            '$fgetc', '$ungetc', '$fgets', '$fscanf', '$fread', '$ftell',
            '$fseek', '$frewind', '$ferror', '$fflush', '$feof',
            '$random',
            '$readmemb', '$readmemh', '$readmemx',
            '$signed', '$stime', '$stop',
            '$strobe', '$time', '$unsigned', '$write'
            ),
        // macros
        3 => array(
            '`default-net', '`define',
            '`celldefine', '`default_nettype', '`else', '`elsif', '`endcelldefine',
            '`endif', '`ifdef', '`ifndef', '`include', '`line', '`nounconnected_drive',
            '`resetall', '`timescale', '`unconnected_drive', '`undef'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%',
        '^', '&', '|', '~',
        '?', ':',
        '#', '<<', '<<<',
        '>', '<', '>=', '<=',
        '@', ';', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #A52A2A; font-weight: bold;',
            2 => 'color: #9932CC;',
            3 => 'color: #008800;'
            ),
        'COMMENTS' => array(
            1 => 'color: #00008B; font-style: italic;',
            'MULTI' => 'color: #00008B; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #9F79EE'
            ),
        'BRACKETS' => array(
            0 => 'color: #9F79EE;'
            ),
        'STRINGS' => array(
            0 => 'color: #FF00FF;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0055;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #5D478B;'
            ),
        'REGEXPS' => array(
            0 => 'color: #ff0055;',
            1 => 'color: #ff0055;',
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => ''
        ),
    'REGEXPS' => array(
        // numbers
        0 => "\d'[bdh][0-9_a-fA-FxXzZ]+",
        // time -> 1, 10, or 100; s, ms, us, ns, ps, of fs
        1 => "1[0]{0,2}[munpf]?s"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        1 => ''
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true,
        2 => true,
        3 => true
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/scheme.php0000664000175000017500000001423212014173445014146 0ustar  benbebenbe 'Scheme',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array('#|' => '|#'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'abs', 'acos', 'and', 'angle', 'append', 'appply', 'approximate',
            'asin', 'assoc', 'assq', 'assv', 'atan',

            'begin', 'boolean?', 'bound-identifier=?',

            'caar', 'caddr', 'cadr', 'call-with-current-continuation',
            'call-with-input-file', 'call-with-output-file', 'call/cc', 'car',
            'case', 'catch', 'cdddar', 'cddddr', 'cdr', 'ceiling', 'char->integer',
            'char-alphabetic?', 'char-ci<=?', 'char-ci=?',
            'char-ci>?', 'char-ci=?', 'char-downcase', 'char-lower-case?',
            'char-numeric', 'char-ready', 'char-ready?', 'char-upcase',
            'char-upper-case?', 'char-whitespace?', 'char<=?', 'char=?', 'char>?', 'char?', 'close-input-port', 'close-output-port',
            'complex?', 'cond', 'cons', 'construct-identifier', 'cos',
            'current-input-port', 'current-output-port',

            'd', 'define', 'define-syntax', 'delay', 'denominator', 'display', 'do',

            'e', 'eof-object?', 'eq?', 'equal?', 'eqv?', 'even?', 'exact->inexact',
            'exact?', 'exp', 'expt', 'else',

            'f', 'floor', 'for-each', 'force', 'free-identifer=?',

            'gcd', 'gen-counter', 'gen-loser', 'generate-identifier',

            'identifier->symbol', 'identifier', 'if', 'imag-part', 'inexact->exact',
            'inexact?', 'input-port?', 'integer->char', 'integer?', 'integrate-system',

            'l', 'lambda', 'last-pair', 'lcm', 'length', 'let', 'let*', 'letrec',
            'list', 'list->string', 'list->vector', 'list-ref', 'list-tail', 'list?',
            'load', 'log',

            'magnitude', 'make-polar', 'make-promise', 'make-rectangular',
            'make-string', 'make-vector', 'map', 'map-streams', 'max', 'member',
            'memq', 'memv', 'min', 'modulo',

            'negative', 'newline', 'nil', 'not', 'null?', 'number->string', 'number?',
            'numerator',

            'odd?', 'open-input-file', 'open-output-file', 'or', 'output-port',

            'pair?', 'peek-char', 'positive?', 'procedure?',

            'quasiquote', 'quote', 'quotient',

            'rational', 'rationalize', 'read', 'read-char', 'real-part', 'real?',
            'remainder', 'return', 'reverse',

            's', 'sequence', 'set!', 'set-char!', 'set-cdr!', 'sin', 'sqrt', 'string',
            'string->list', 'string->number', 'string->symbol', 'string-append',
            'string-ci<=?', 'string-ci=?',
            'string-ci>?', 'string-copy', 'string-fill!', 'string-length',
            'string-ref', 'string-set!', 'string<=?', 'string=?', 'string>?', 'string?', 'substring', 'symbol->string',
            'symbol?', 'syntax', 'syntax-rules',

            't', 'tan', 'template', 'transcript-off', 'transcript-on', 'truncate',

            'unquote', 'unquote-splicing', 'unwrap-syntax',

            'vector', 'vector->list', 'vector-fill!', 'vector-length', 'vector-ref',
            'vector-set!', 'vector?',

            'with-input-from-file', 'with-output-to-file', 'write', 'write-char',

            'zero?'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/sparql.php0000664000175000017500000001152312014173430014176 0ustar  benbebenbe 'SPARQL',
    'COMMENT_SINGLE' => array('#'),
    'COMMENT_MULTI' => array('/*' => '*/' ),
    'COMMENT_REGEXP' => array(
        //IRI (it's not a comment ;)
        1 => "/<[^> ]*>/i"
        ),
    'CASE_KEYWORDS' => 1,
    'QUOTEMARKS' => array("'", '"', '`'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'BASE','PREFIX','SELECT','DISTINCT','REDUCED','CONSTRUCT','DESCRIBE','ASK','FROM',
            'NAMED','WHERE','ORDER','BY','ASC','DESC','LIMIT','OFFSET','OPTIONAL','GRAPH',
            'UNION','FILTER','STR','LANG','LANGMATCHES','DATATYPE','BOUND','SAMETERM',
            'ISIRI','ISURI','ISBLANK',
            'ISLITERAL','REGEX','SUBSTR','TRUE',
            'FALSE','LOAD','CLEAR',
            'DROP','ADD','MOVE','COPY',
            'CREATE','DELETE','INSERT',
            'USING','SILENT','DEFAULT','ALL',
            'DATA','WITH','INTO','TO',
            'AS','GROUP','HAVING','UNDEF',
            'BINDINGS','SERVICE','BIND','MINUS_KEYWORD',
            'IRI','URI', 'BNODE',
            'RAND','ABS','CEIL','FLOOR','ROUND',
            'CONCAT','STRLEN',
            'UCASE','LCASE','ENCODE_FOR_URI',
            'CONTAINS','STRSTARTS',
            'STRENDS','STRBEFORE',
            'STRAFTER','REPLACE',
            'YEAR','MONTH',
            'DAY','HOURS',
            'MINUTES','SECONDS',
            'TIMEZONE','TZ',
            'NOW','MD5',
            'SHA1','SHA224',
            'SHA256','SHA384',
            'SHA512','COALESCE',
            'IF','STRLANG','STRDT',
            'ISNUMERIC','COUNT',
            'SUM','MIN',
            'MAX','AVG','SAMPLE',
            'GROUP_CONCAT ','NOT',
            'IN','EXISTS','SEPARATOR'
            )
        ),
    'REGEXPS' => array(
        //Variables without braces
        1 => "\\?[a-zA-Z_][a-zA-Z0-9_]*",
        //prefix
        2 => "[a-zA-Z_.\\-0-9]*:",
        //tag lang
        3 => "@[^ .)}]*",
        ),
    'SYMBOLS' => array(
        0 => array(
            '{', '}' , '.', ';'
            ),
        1 => array(
            '^^',
            '<=','>=','!=','=','<','>','|',
            '&&','||',
            '(',')','[', ']',
            '+','-','*','!','/'
            ),
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #993333; font-weight: bold;'
            ),
        'COMMENTS' => array(
            0 => 'color: #808080; font-style: italic;',
            1 => 'color: #000078;',
            //2 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF63C3;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #0000FF;',
            1 => 'color: #FF8000; font-weight: bold;'
            ),
        'SCRIPT' => array(),
        'REGEXPS' => array(
            1 => 'color: #007800;',
            2 => 'color: #780078;',
            3 => 'color: #005078;'
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>geshi/geshi/tsql.php0000664000175000017500000005556712014173441013701 0ustar  benbebenbe 'T-SQL',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            // Datatypes
            'bigint', 'tinyint', 'money',
            'smallmoney', 'datetime', 'smalldatetime',
            'text', 'nvarchar', 'ntext', 'varbinary', 'image',
            'sql_variant', 'uniqueidentifier',

            // Keywords
            'ABSOLUTE', 'ACTION', 'ADD', 'ADMIN', 'AFTER', 'AGGREGATE', 'ALIAS', 'ALLOCATE', 'ALTER', 'ARE', 'ARRAY', 'AS',
            'ASC', 'ASSERTION', 'AT', 'AUTHORIZATION', 'BACKUP', 'BEFORE', 'BEGIN', 'BINARY', 'BIT', 'BLOB', 'BOOLEAN', 'BOTH', 'BREADTH',
            'BREAK', 'BROWSE', 'BULK', 'BY', 'CALL', 'CASCADE', 'CASCADED', 'CASE', 'CAST', 'CATALOG', 'CATCH', 'CHAR', 'CHARACTER', 'CHECK', 'CHECKPOINT',
            'CLASS', 'CLOB', 'CLOSE', 'CLUSTERED', 'COALESCE', 'COLLATE', 'COLLATION', 'COLUMN', 'COMMIT', 'COMPLETION', 'COMPUTE', 'CONNECT',
            'CONNECTION', 'CONSTRAINT', 'CONSTRAINTS', 'CONSTRUCTOR', 'CONTAINS', 'CONTAINSTABLE', 'CONTINUE', 'CONVERT', 'CORRESPONDING', 'CREATE',
            'CUBE', 'CURRENT', 'CURRENT_DATE', 'CURRENT_PATH', 'CURRENT_ROLE', 'CURRENT_TIME', 'CURRENT_TIMESTAMP', 'CURRENT_USER',
            'CURSOR', 'CYCLE', 'DATA', 'DATABASE', 'DATE', 'DAY', 'DBCC', 'DEALLOCATE', 'DEC', 'DECIMAL', 'DECLARE', 'DEFAULT', 'DEFERRABLE',
            'DEFERRED', 'DELETE', 'DENY', 'DEPTH', 'DEREF', 'DESC', 'DESCRIBE', 'DESCRIPTOR', 'DESTROY', 'DESTRUCTOR', 'DETERMINISTIC',
            'DIAGNOSTICS', 'DICTIONARY', 'DISCONNECT', 'DISK', 'DISTINCT', 'DISTRIBUTED', 'DOMAIN', 'DOUBLE', 'DROP', 'DUMMY', 'DUMP', 'DYNAMIC',
            'EACH', 'ELSE', 'END', 'END-EXEC', 'EQUALS', 'ERRLVL', 'ESCAPE', 'EVERY', 'EXCEPT', 'EXCEPTION', 'EXEC', 'EXECUTE', 'EXIT',
            'EXTERNAL', 'FALSE', 'FETCH', 'FILE', 'FILLFACTOR', 'FIRST', 'FLOAT', 'FOR', 'FOREIGN', 'FOUND', 'FREE', 'FREETEXT', 'FREETEXTTABLE',
            'FROM', 'FULL', 'FUNCTION', 'GENERAL', 'GET', 'GLOBAL', 'GOTO', 'GRANT', 'GROUP', 'GROUPING', 'HAVING', 'HOLDLOCK', 'HOST', 'HOUR',
            'IDENTITY', 'IDENTITY_INSERT', 'IDENTITYCOL', 'IF', 'IGNORE', 'IMMEDIATE', 'INDEX', 'INDICATOR', 'INITIALIZE', 'INITIALLY',
            'INNER', 'INOUT', 'INPUT', 'INSERT', 'INT', 'INTEGER', 'INTERSECT', 'INTERVAL', 'INTO', 'IS', 'ISOLATION', 'ITERATE', 'KEY',
            'KILL', 'LANGUAGE', 'LARGE', 'LAST', 'LATERAL', 'LEADING', 'LEFT', 'LESS', 'LEVEL', 'LIMIT', 'LINENO', 'LOAD', 'LOCAL',
            'LOCALTIME', 'LOCALTIMESTAMP', 'LOCATOR', 'MAP', 'MATCH', 'MINUTE', 'MODIFIES', 'MODIFY', 'MODULE', 'MONTH', 'NAMES', 'NATIONAL',
            'NATURAL', 'NCHAR', 'NCLOB', 'NEW', 'NEXT', 'NO', 'NOCHECK', 'NONCLUSTERED', 'NONE', 'NULLIF', 'NUMERIC', 'OBJECT', 'OF',
            'OFF', 'OFFSETS', 'OLD', 'ON', 'ONLY', 'OPEN', 'OPENDATASOURCE', 'OPENQUERY', 'OPENROWSET', 'OPENXML', 'OPERATION', 'OPTION',
            'ORDER', 'ORDINALITY', 'OUT', 'OUTPUT', 'OVER', 'PAD', 'PARAMETER', 'PARAMETERS', 'PARTIAL', 'PATH', 'PERCENT', 'PLAN',
            'POSTFIX', 'PRECISION', 'PREFIX', 'PREORDER', 'PREPARE', 'PRESERVE', 'PRIMARY', 'PRINT', 'PRIOR', 'PRIVILEGES', 'PROC', 'PROCEDURE',
            'PUBLIC', 'RAISERROR', 'READ', 'READS', 'READTEXT', 'REAL', 'RECONFIGURE', 'RECURSIVE', 'REF', 'REFERENCES', 'REFERENCING', 'RELATIVE',
            'REPLICATION', 'RESTORE', 'RESTRICT', 'RESULT', 'RETURN', 'RETURNS', 'REVOKE', 'RIGHT', 'ROLE', 'ROLLBACK', 'ROLLUP', 'ROUTINE', 'ROW',
            'ROWGUIDCOL', 'ROWS', 'RULE', 'SAVE', 'SAVEPOINT', 'SCHEMA', 'SCOPE', 'SCROLL', 'SEARCH', 'SECOND', 'SECTION', 'SELECT',
            'SEQUENCE', 'SESSION', 'SESSION_USER', 'SET', 'SETS', 'SETUSER', 'SHUTDOWN', 'SIZE', 'SMALLINT', 'SPACE', 'SPECIFIC',
            'SPECIFICTYPE', 'SQL', 'SQLEXCEPTION', 'SQLSTATE', 'SQLWARNING', 'START', 'STATE', 'STATEMENT', 'STATIC', 'STATISTICS', 'STRUCTURE',
            'SYSTEM_USER', 'TABLE', 'TEMPORARY', 'TERMINATE', 'TEXTSIZE', 'THAN', 'THEN', 'TIME', 'TIMESTAMP', 'TIMEZONE_HOUR', 'TIMEZONE_MINUTE',
            'TO', 'TOP', 'TRAILING', 'TRAN', 'TRANSACTION', 'TRANSLATION', 'TREAT', 'TRIGGER', 'TRUE', 'TRUNCATE', 'TRY', 'TSEQUAL', 'UNDER', 'UNION',
            'UNIQUE', 'UNKNOWN', 'UNNEST', 'UPDATE', 'UPDATETEXT', 'USAGE', 'USE', 'USER', 'USING', 'VALUE', 'VALUES', 'VARCHAR', 'VARIABLE',
            'VARYING', 'VIEW', 'WAITFOR', 'WHEN', 'WHENEVER', 'WHERE', 'WHILE', 'WITH', 'WITHOUT', 'WORK', 'WRITE', 'WRITETEXT', 'YEAR', 'ZONE',
            'UNCOMMITTED', 'NOCOUNT',
            ),
        2 => array(
            /*
                Built-in functions
                Highlighted in pink.
            */

            //Configuration Functions
            '@@DATEFIRST','@@OPTIONS','@@DBTS','@@REMSERVER','@@LANGID','@@SERVERNAME',
            '@@LANGUAGE','@@SERVICENAME','@@LOCK_TIMEOUT','@@SPID','@@MAX_CONNECTIONS',
            '@@TEXTSIZE','@@MAX_PRECISION','@@VERSION','@@NESTLEVEL',

            //Cursor Functions
            '@@CURSOR_ROWS','@@FETCH_STATUS',

            //Date and Time Functions
            'DATEADD','DATEDIFF','DATENAME','DATEPART','GETDATE','GETUTCDATE',

            //Mathematical Functions
            'ABS','DEGREES','RAND','ACOS','EXP','ROUND','ASIN','FLOOR','SIGN',
            'ATAN','LOG','SIN','ATN2','LOG10','SQUARE','CEILING','PI','SQRT','COS',
            'POWER','TAN','COT','RADIANS',

            //Meta Data Functions
            'COL_LENGTH','COL_NAME','FULLTEXTCATALOGPROPERTY',
            'COLUMNPROPERTY','FULLTEXTSERVICEPROPERTY','DATABASEPROPERTY','INDEX_COL',
            'DATABASEPROPERTYEX','INDEXKEY_PROPERTY','DB_ID','INDEXPROPERTY','DB_NAME',
            'OBJECT_ID','FILE_ID','OBJECT_NAME','FILE_NAME','OBJECTPROPERTY','FILEGROUP_ID',
            '@@PROCID','FILEGROUP_NAME','SQL_VARIANT_PROPERTY','FILEGROUPPROPERTY',
            'TYPEPROPERTY','FILEPROPERTY',

            //Security Functions
            'IS_SRVROLEMEMBER','SUSER_SID','SUSER_SNAME','USER_ID',
            'HAS_DBACCESS','IS_MEMBER',

            //String Functions
            'ASCII','SOUNDEX','PATINDEX','CHARINDEX','REPLACE','STR',
            'DIFFERENCE','QUOTENAME','STUFF','REPLICATE','SUBSTRING','LEN',
            'REVERSE','UNICODE','LOWER','UPPER','LTRIM','RTRIM',

            //System Functions
            'APP_NAME','COLLATIONPROPERTY','@@ERROR','FORMATMESSAGE',
            'GETANSINULL','HOST_ID','HOST_NAME','IDENT_CURRENT','IDENT_INCR',
            'IDENT_SEED','@@IDENTITY','ISDATE','ISNUMERIC','PARSENAME','PERMISSIONS',
            '@@ROWCOUNT','ROWCOUNT_BIG','SCOPE_IDENTITY','SERVERPROPERTY','SESSIONPROPERTY',
            'STATS_DATE','@@TRANCOUNT','USER_NAME',

            //System Statistical Functions
            '@@CONNECTIONS','@@PACK_RECEIVED','@@CPU_BUSY','@@PACK_SENT',
            '@@TIMETICKS','@@IDLE','@@TOTAL_ERRORS','@@IO_BUSY',
            '@@TOTAL_READ','@@PACKET_ERRORS','@@TOTAL_WRITE',

            //Text and Image Functions
            'TEXTPTR','TEXTVALID',

            //Aggregate functions
            'AVG', 'MAX', 'BINARY_CHECKSUM', 'MIN', 'CHECKSUM', 'SUM', 'CHECKSUM_AGG',
            'STDEV', 'COUNT', 'STDEVP', 'COUNT_BIG', 'VAR', 'VARP'
            ),
        3 => array(
            /*
                System stored procedures
                Higlighted dark brown
            */

            //Active Directory Procedures
            'sp_ActiveDirectory_Obj', 'sp_ActiveDirectory_SCP',

            //Catalog Procedures
            'sp_column_privileges', 'sp_special_columns', 'sp_columns', 'sp_sproc_columns',
            'sp_databases', 'sp_statistics', 'sp_fkeys', 'sp_stored_procedures', 'sp_pkeys',
            'sp_table_privileges', 'sp_server_info', 'sp_tables',

            //Cursor Procedures
            'sp_cursor_list', 'sp_describe_cursor_columns', 'sp_describe_cursor', 'sp_describe_cursor_tables',

            //Database Maintenance Plan Procedures
            'sp_add_maintenance_plan', 'sp_delete_maintenance_plan_db', 'sp_add_maintenance_plan_db',
            'sp_delete_maintenance_plan_job', 'sp_add_maintenance_plan_job', 'sp_help_maintenance_plan',
            'sp_delete_maintenance_plan',

            //Distributed Queries Procedures
            'sp_addlinkedserver', 'sp_indexes', 'sp_addlinkedsrvlogin', 'sp_linkedservers', 'sp_catalogs',
            'sp_primarykeys', 'sp_column_privileges_ex', 'sp_columns_ex',
            'sp_table_privileges_ex', 'sp_tables_ex', 'sp_foreignkeys',

            //Full-Text Search Procedures
            'sp_fulltext_catalog', 'sp_help_fulltext_catalogs_cursor', 'sp_fulltext_column',
            'sp_help_fulltext_columns', 'sp_fulltext_database', 'sp_help_fulltext_columns_cursor',
            'sp_fulltext_service', 'sp_help_fulltext_tables', 'sp_fulltext_table',
            'sp_help_fulltext_tables_cursor', 'sp_help_fulltext_catalogs',

            //Log Shipping Procedures
            'sp_add_log_shipping_database', 'sp_delete_log_shipping_database', 'sp_add_log_shipping_plan',
            'sp_delete_log_shipping_plan', 'sp_add_log_shipping_plan_database',
            'sp_delete_log_shipping_plan_database', 'sp_add_log_shipping_primary',
            'sp_delete_log_shipping_primary', 'sp_add_log_shipping_secondary',
            'sp_delete_log_shipping_secondary', 'sp_can_tlog_be_applied', 'sp_get_log_shipping_monitor_info',
            'sp_change_monitor_role', 'sp_remove_log_shipping_monitor', 'sp_change_primary_role',
            'sp_resolve_logins', 'sp_change_secondary_role', 'sp_update_log_shipping_monitor_info',
            'sp_create_log_shipping_monitor_account', 'sp_update_log_shipping_plan',
            'sp_define_log_shipping_monitor', 'sp_update_log_shipping_plan_database',

            //OLE Automation Extended Stored Procedures
            'sp_OACreate', 'sp_OAMethod', 'sp_OADestroy', 'sp_OASetProperty', 'sp_OAGetErrorInfo',
            'sp_OAStop', 'sp_OAGetProperty',

            //Replication Procedures
            'sp_add_agent_parameter', 'sp_enableagentoffload', 'sp_add_agent_profile',
            'sp_enumcustomresolvers', 'sp_addarticle', 'sp_enumdsn', 'sp_adddistpublisher',
            'sp_enumfullsubscribers', 'sp_adddistributiondb', 'sp_expired_subscription_cleanup',
            'sp_adddistributor', 'sp_generatefilters', 'sp_addmergealternatepublisher',
            'sp_getagentoffloadinfo', 'sp_addmergearticle', 'sp_getmergedeletetype', 'sp_addmergefilter',
            'sp_get_distributor', 'sp_addmergepublication', 'sp_getqueuedrows', 'sp_addmergepullsubscription',
            'sp_getsubscriptiondtspackagename', 'sp_addmergepullsubscription_agent', 'sp_grant_publication_access',
            'sp_addmergesubscription', 'sp_help_agent_default', 'sp_addpublication', 'sp_help_agent_parameter',
            'sp_addpublication_snapshot', 'sp_help_agent_profile', 'sp_addpublisher70', 'sp_helparticle',
            'sp_addpullsubscription', 'sp_helparticlecolumns', 'sp_addpullsubscription_agent', 'sp_helparticledts',
            'sp_addscriptexec', 'sp_helpdistpublisher', 'sp_addsubscriber', 'sp_helpdistributiondb',
            'sp_addsubscriber_schedule', 'sp_helpdistributor', 'sp_addsubscription', 'sp_helpmergealternatepublisher',
            'sp_addsynctriggers', 'sp_helpmergearticle', 'sp_addtabletocontents', 'sp_helpmergearticlecolumn',
            'sp_adjustpublisheridentityrange', 'sp_helpmergearticleconflicts', 'sp_article_validation',
            'sp_helpmergeconflictrows', 'sp_articlecolumn', 'sp_helpmergedeleteconflictrows', 'sp_articlefilter',
            'sp_helpmergefilter', 'sp_articlesynctranprocs', 'sp_helpmergepublication', 'sp_articleview',
            'sp_helpmergepullsubscription', 'sp_attachsubscription', 'sp_helpmergesubscription', 'sp_browsesnapshotfolder',
            'sp_helppublication', 'sp_browsemergesnapshotfolder', 'sp_help_publication_access', 'sp_browsereplcmds',
            'sp_helppullsubscription', 'sp_change_agent_parameter', 'sp_helpreplfailovermode', 'sp_change_agent_profile',
            'sp_helpreplicationdboption', 'sp_changearticle', 'sp_helpreplicationoption', 'sp_changedistpublisher',
            'sp_helpsubscriberinfo', 'sp_changedistributiondb', 'sp_helpsubscription', 'sp_changedistributor_password',
            'sp_ivindexhasnullcols', 'sp_changedistributor_property', 'sp_helpsubscription_properties', 'sp_changemergearticle',
            'sp_link_publication', 'sp_changemergefilter', 'sp_marksubscriptionvalidation', 'sp_changemergepublication',
            'sp_mergearticlecolumn', 'sp_changemergepullsubscription', 'sp_mergecleanupmetadata', 'sp_changemergesubscription',
            'sp_mergedummyupdate', 'sp_changepublication', 'sp_mergesubscription_cleanup', 'sp_changesubscriber',
            'sp_publication_validation', 'sp_changesubscriber_schedule', 'sp_refreshsubscriptions', 'sp_changesubscriptiondtsinfo',
            'sp_reinitmergepullsubscription', 'sp_changesubstatus', 'sp_reinitmergesubscription', 'sp_change_subscription_properties',
            'sp_reinitpullsubscription', 'sp_check_for_sync_trigger', 'sp_reinitsubscription', 'sp_copymergesnapshot',
            'sp_removedbreplication', 'sp_copysnapshot', 'sp_repladdcolumn', 'sp_copysubscription', 'sp_replcmds',
            'sp_deletemergeconflictrow', 'sp_replcounters', 'sp_disableagentoffload', 'sp_repldone', 'sp_drop_agent_parameter',
            'sp_repldropcolumn', 'sp_drop_agent_profile', 'sp_replflush', 'sp_droparticle', 'sp_replicationdboption',
            'sp_dropanonymouseagent', 'sp_replication_agent_checkup', 'sp_dropdistpublisher', 'sp_replqueuemonitor',
            'sp_dropdistributiondb', 'sp_replsetoriginator', 'sp_dropmergealternatepublisher', 'sp_replshowcmds',
            'sp_dropdistributor', 'sp_repltrans', 'sp_dropmergearticle', 'sp_restoredbreplication', 'sp_dropmergefilter',
            'sp_revoke_publication_access', 'sp_scriptsubconflicttable', 'sp_dropmergepublication', 'sp_script_synctran_commands',
            'sp_dropmergepullsubscription', 'sp_setreplfailovermode', 'sp_showrowreplicainfo', 'sp_dropmergesubscription',
            'sp_subscription_cleanup', 'sp_droppublication', 'sp_table_validation', 'sp_droppullsubscription',
            'sp_update_agent_profile', 'sp_dropsubscriber', 'sp_validatemergepublication', 'sp_dropsubscription',
            'sp_validatemergesubscription', 'sp_dsninfo', 'sp_vupgrade_replication', 'sp_dumpparamcmd',

            //Security Procedures
            'sp_addalias', 'sp_droprolemember', 'sp_addapprole', 'sp_dropserver', 'sp_addgroup', 'sp_dropsrvrolemember',
            'sp_dropuser', 'sp_addlogin', 'sp_grantdbaccess', 'sp_addremotelogin',
            'sp_grantlogin', 'sp_addrole', 'sp_helpdbfixedrole', 'sp_addrolemember', 'sp_helpgroup',
            'sp_addserver', 'sp_helplinkedsrvlogin', 'sp_addsrvrolemember', 'sp_helplogins', 'sp_adduser',
            'sp_helpntgroup', 'sp_approlepassword', 'sp_helpremotelogin', 'sp_changedbowner', 'sp_helprole',
            'sp_changegroup', 'sp_helprolemember', 'sp_changeobjectowner', 'sp_helprotect', 'sp_change_users_login',
            'sp_helpsrvrole', 'sp_dbfixedrolepermission', 'sp_helpsrvrolemember', 'sp_defaultdb', 'sp_helpuser',
            'sp_defaultlanguage', 'sp_MShasdbaccess', 'sp_denylogin', 'sp_password', 'sp_dropalias', 'sp_remoteoption',
            'sp_dropapprole', 'sp_revokedbaccess', 'sp_dropgroup', 'sp_revokelogin', 'sp_droplinkedsrvlogin',
            'sp_setapprole', 'sp_droplogin', 'sp_srvrolepermission', 'sp_dropremotelogin', 'sp_validatelogins', 'sp_droprole',

            //SQL Mail Procedures
            'sp_processmail', 'xp_sendmail', 'xp_deletemail', 'xp_startmail', 'xp_findnextmsg', 'xp_stopmail', 'xp_readmail',

            //SQL Profiler Procedures
            'sp_trace_create', 'sp_trace_setfilter', 'sp_trace_generateevent', 'sp_trace_setstatus', 'sp_trace_setevent',

            //SQL Server Agent Procedures
            'sp_add_alert', 'sp_help_jobhistory', 'sp_add_category', 'sp_help_jobschedule', 'sp_add_job',
            'sp_help_jobserver', 'sp_add_jobschedule', 'sp_help_jobstep', 'sp_add_jobserver', 'sp_help_notification',
            'sp_add_jobstep', 'sp_help_operator', 'sp_add_notification', 'sp_help_targetserver',
            'sp_add_operator', 'sp_help_targetservergroup', 'sp_add_targetservergroup', 'sp_helptask',
            'sp_add_targetsvrgrp_member', 'sp_manage_jobs_by_login', 'sp_addtask', 'sp_msx_defect',
            'sp_apply_job_to_targets', 'sp_msx_enlist', 'sp_delete_alert', 'sp_post_msx_operation',
            'sp_delete_category', 'sp_purgehistory', 'sp_delete_job', 'sp_purge_jobhistory', 'sp_delete_jobschedule',
            'sp_reassigntask', 'sp_delete_jobserver', 'sp_remove_job_from_targets', 'sp_delete_jobstep',
            'sp_resync_targetserver', 'sp_delete_notification', 'sp_start_job', 'sp_delete_operator',
            'sp_stop_job', 'sp_delete_targetserver', 'sp_update_alert', 'sp_delete_targetservergroup',
            'sp_update_category', 'sp_delete_targetsvrgrp_member', 'sp_update_job', 'sp_droptask',
            'sp_update_jobschedule', 'sp_help_alert', 'sp_update_jobstep', 'sp_help_category',
            'sp_update_notification', 'sp_help_downloadlist', 'sp_update_operator', 'sp_helphistory',
            'sp_update_targetservergroup', 'sp_help_job', 'sp_updatetask', 'xp_sqlagent_proxy_account',

            //System Procedures
            'sp_add_data_file_recover_suspect_db', 'sp_helpconstraint', 'sp_addextendedproc',
            'sp_helpdb', 'sp_addextendedproperty', 'sp_helpdevice', 'sp_add_log_file_recover_suspect_db',
            'sp_helpextendedproc', 'sp_addmessage', 'sp_helpfile', 'sp_addtype', 'sp_helpfilegroup',
            'sp_addumpdevice', 'sp_helpindex', 'sp_altermessage', 'sp_helplanguage', 'sp_autostats',
            'sp_helpserver', 'sp_attach_db', 'sp_helpsort', 'sp_attach_single_file_db', 'sp_helpstats',
            'sp_bindefault', 'sp_helptext', 'sp_bindrule', 'sp_helptrigger', 'sp_bindsession',
            'sp_indexoption', 'sp_certify_removable', 'sp_invalidate_textptr', 'sp_configure',
            'sp_lock', 'sp_create_removable', 'sp_monitor', 'sp_createstats', 'sp_procoption',
            'sp_cycle_errorlog', 'sp_recompile', 'sp_datatype_info', 'sp_refreshview', 'sp_dbcmptlevel',
            'sp_releaseapplock', 'sp_dboption', 'sp_rename', 'sp_dbremove', 'sp_renamedb',
            'sp_delete_backuphistory', 'sp_resetstatus', 'sp_depends', 'sp_serveroption', 'sp_detach_db',
            'sp_setnetname', 'sp_dropdevice', 'sp_settriggerorder', 'sp_dropextendedproc', 'sp_spaceused',
            'sp_dropextendedproperty', 'sp_tableoption', 'sp_dropmessage', 'sp_unbindefault', 'sp_droptype',
            'sp_unbindrule', 'sp_executesql', 'sp_updateextendedproperty', 'sp_getapplock', 'sp_updatestats',
            'sp_getbindtoken', 'sp_validname', 'sp_help', 'sp_who',

            //Web Assistant Procedures
            'sp_dropwebtask', 'sp_makewebtask', 'sp_enumcodepages', 'sp_runwebtask',

            //XML Procedures
            'sp_xml_preparedocument', 'sp_xml_removedocument',

            //General Extended Procedures
            'xp_cmdshellxp_logininfo', 'xp_enumgroups', 'xp_msver', 'xp_findnextmsgxp_revokelogin',
            'xp_grantlogin', 'xp_sprintf', 'xp_logevent', 'xp_sqlmaint', 'xp_loginconfig', 'xp_sscanf',

            //API System Stored Procedures
            'sp_cursor', 'sp_cursorclose', 'sp_cursorexecute', 'sp_cursorfetch', 'sp_cursoropen',
            'sp_cursoroption', 'sp_cursorprepare', 'sp_cursorunprepare', 'sp_execute', 'sp_prepare', 'sp_unprepare',

            //Misc
            'sp_createorphan', 'sp_droporphans', 'sp_reset_connection', 'sp_sdidebug'
            ),
        4 => array(
            //Function/sp's higlighted brown.
            'fn_helpcollations', 'fn_listextendedproperty ', 'fn_servershareddrives',
            'fn_trace_geteventinfo', 'fn_trace_getfilterinfo', 'fn_trace_getinfo',
            'fn_trace_gettable', 'fn_virtualfilestats','fn_listextendedproperty',
            ),
        ),
    'SYMBOLS' => array(
        '!', '!=', '%', '&', '&&', '(', ')', '*', '+', '-', '/', '<', '<<', '<=',
        '<=>', '<>', '=', '>', '>=', '>>', '^', 'ALL', 'AND', 'ANY', 'BETWEEN', 'CROSS',
        'EXISTS', 'IN', 'JOIN', 'LIKE', 'NOT', 'NULL', 'OR', 'OUTER', 'SOME', '|', '||', '~'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #FF00FF;',
            3 => 'color: #AF0000;',
            4 => 'color: #AF0000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008080;',
            'MULTI' => 'color: #008080;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #808080;'
            ),
        'STRINGS' => array(
            0 => 'color: #FF0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #808080;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/parigp.php0000664000175000017500000003235011702144551014164 0ustar  benbebenbe 'PARI/GP',
    'COMMENT_SINGLE' => array(1 => '\\\\'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' => array(
        # Integers
        1 => GESHI_NUMBER_INT_BASIC,
        # Reals
        2 => GESHI_NUMBER_FLT_SCI_ZERO
        ),
    'KEYWORDS' => array(
        1 => array(
            'addprimes','bestappr','bezout','bezoutres','bigomega','binomial',
            'chinese','content','contfrac','contfracpnqn','core','coredisc',
            'dirdiv','direuler','dirmul','divisors','eulerphi','factor',
            'factorback','factorcantor','factorff','factorial','factorint',
            'factormod','ffgen','ffinit','fflog','fforder','ffprimroot',
            'fibonacci','gcd','hilbert','isfundamental','ispower','isprime',
            'ispseudoprime','issquare','issquarefree','kronecker','lcm',
            'moebius','nextprime','numbpart','numdiv','omega','partitions',
            'polrootsff','precprime','prime','primepi','primes','qfbclassno',
            'qfbcompraw','qfbhclassno','qfbnucomp','qfbnupow','qfbpowraw',
            'qfbprimeform','qfbred','qfbsolve','quadclassunit','quaddisc',
            'quadgen','quadhilbert','quadpoly','quadray','quadregulator',
            'quadunit','removeprimes','sigma','sqrtint','stirling',
            'sumdedekind','zncoppersmith','znlog','znorder','znprimroot',
            'znstar','Col','List','Mat','Mod','Pol','Polrev','Qfb','Ser','Set',
            'Str','Strchr','Strexpand','Strtex','Vec','Vecrev','Vecsmall',
            'binary','bitand','bitneg','bitnegimply','bitor','bittest','bitxor',
            'ceil','centerlift','component','conj','conjvec','denominator',
            'floor','frac','imag','length','lift','norm','norml2','numerator',
            'numtoperm','padicprec','permtonum','precision','random','real',
            'round','simplify','sizebyte','sizedigit','truncate','valuation',
            'variable','ellL1','elladd','ellak','ellan','ellanalyticrank',
            'ellap','ellbil','ellchangecurve','ellchangepoint','ellconvertname',
            'elldivpol','elleisnum','elleta','ellgenerators','ellglobalred',
            'ellgroup','ellheight','ellheightmatrix','ellidentify','ellinit',
            'ellisoncurve','ellj','elllocalred','elllog','elllseries',
            'ellminimalmodel','ellmodulareqn','ellorder','ellordinate',
            'ellpointtoz','ellpow','ellrootno','ellsearch','ellsigma','ellsub',
            'elltaniyama','elltatepairing','elltors','ellweilpairing','ellwp',
            'ellzeta','ellztopoint','bnfcertify','bnfcompress',
            'bnfdecodemodule','bnfinit','bnfisintnorm','bnfisnorm',
            'bnfisprincipal','bnfissunit','bnfisunit','bnfnarrow','bnfsignunit',
            'bnfsunit','bnrL1','bnrclassno','bnrclassnolist','bnrconductor',
            'bnrconductorofchar','bnrdisc','bnrdisclist','bnrinit',
            'bnrisconductor','bnrisprincipal','bnrrootnumber','bnrstark',
            'dirzetak','factornf','galoisexport','galoisfixedfield',
            'galoisgetpol','galoisidentify','galoisinit','galoisisabelian',
            'galoisisnormal','galoispermtopol','galoissubcyclo',
            'galoissubfields','galoissubgroups','idealadd','idealaddtoone',
            'idealappr','idealchinese','idealcoprime','idealdiv','idealfactor',
            'idealfactorback','idealfrobenius','idealhnf','idealintersect',
            'idealinv','ideallist','ideallistarch','ideallog','idealmin',
            'idealmul','idealnorm','idealpow','idealprimedec','idealramgroups',
            'idealred','idealstar','idealtwoelt','idealval','matalgtobasis',
            'matbasistoalg','modreverse','newtonpoly','nfalgtobasis','nfbasis',
            'nfbasistoalg','nfdetint','nfdisc','nfeltadd','nfeltdiv',
            'nfeltdiveuc','nfeltdivmodpr','nfeltdivrem','nfeltmod','nfeltmul',
            'nfeltmulmodpr','nfeltnorm','nfeltpow','nfeltpowmodpr',
            'nfeltreduce','nfeltreducemodpr','nfelttrace','nfeltval','nffactor',
            'nffactorback','nffactormod','nfgaloisapply','nfgaloisconj',
            'nfhilbert','nfhnf','nfhnfmod','nfinit','nfisideal','nfisincl',
            'nfisisom','nfkermodpr','nfmodprinit','nfnewprec','nfroots',
            'nfrootsof1','nfsnf','nfsolvemodpr','nfsubfields','polcompositum',
            'polgalois','polred','polredabs','polredord','poltschirnhaus',
            'rnfalgtobasis','rnfbasis','rnfbasistoalg','rnfcharpoly',
            'rnfconductor','rnfdedekind','rnfdet','rnfdisc','rnfeltabstorel',
            'rnfeltdown','rnfeltreltoabs','rnfeltup','rnfequation',
            'rnfhnfbasis','rnfidealabstorel','rnfidealdown','rnfidealhnf',
            'rnfidealmul','rnfidealnormabs','rnfidealnormrel',
            'rnfidealreltoabs','rnfidealtwoelt','rnfidealup','rnfinit',
            'rnfisabelian','rnfisfree','rnfisnorm','rnfisnorminit','rnfkummer',
            'rnflllgram','rnfnormgroup','rnfpolred','rnfpolredabs',
            'rnfpseudobasis','rnfsteinitz','subgrouplist','zetak','zetakinit',
            'plot','plotbox','plotclip','plotcolor','plotcopy','plotcursor',
            'plotdraw','ploth','plothraw','plothsizes','plotinit','plotkill',
            'plotlines','plotlinetype','plotmove','plotpoints','plotpointsize',
            'plotpointtype','plotrbox','plotrecth','plotrecthraw','plotrline',
            'plotrmove','plotrpoint','plotscale','plotstring','psdraw',
            'psploth','psplothraw','O','deriv','diffop','eval','factorpadic',
            'intformal','padicappr','padicfields','polchebyshev','polcoeff',
            'polcyclo','poldegree','poldisc','poldiscreduced','polhensellift',
            'polhermite','polinterpolate','polisirreducible','pollead',
            'pollegendre','polrecip','polresultant','polroots','polrootsmod',
            'polrootspadic','polsturm','polsubcyclo','polsylvestermatrix',
            'polsym','poltchebi','polzagier','serconvol','serlaplace',
            'serreverse','subst','substpol','substvec','taylor','thue',
            'thueinit','break','for','fordiv','forell','forprime','forstep',
            'forsubgroup','forvec','if','next','return','until','while',
            'Strprintf','addhelp','alarm','alias','allocatemem','apply',
            'default','error','extern','externstr','getheap','getrand',
            'getstack','gettime','global','input','install','kill','print1',
            'print','printf','printtex','quit','read','readvec','select',
            'setrand','system','trap','type','version','warning','whatnow',
            'write1','write','writebin','writetex','divrem','lex','max','min',
            'shift','shiftmul','sign','vecmax','vecmin','derivnum','intcirc',
            'intfouriercos','intfourierexp','intfouriersin','intfuncinit',
            'intlaplaceinv','intmellininv','intmellininvshort','intnum',
            'intnuminit','intnuminitgen','intnumromb','intnumstep','prod',
            'prodeuler','prodinf','solve','sum','sumalt','sumdiv','suminf',
            'sumnum','sumnumalt','sumnuminit','sumpos','Euler','I','Pi','abs',
            'acos','acosh','agm','arg','asin','asinh','atan','atanh','bernfrac',
            'bernreal','bernvec','besselh1','besselh2','besseli','besselj',
            'besseljh','besselk','besseln','cos','cosh','cotan','dilog','eint1',
            'erfc','eta','exp','gamma','gammah','hyperu','incgam','incgamc',
            'lngamma','log','polylog','psi','sin','sinh','sqr','sqrt','sqrtn',
            'tan','tanh','teichmuller','theta','thetanullk','weber','zeta',
            'algdep','charpoly','concat','lindep','listcreate','listinsert',
            'listkill','listpop','listput','listsort','matadjoint',
            'matcompanion','matdet','matdetint','matdiagonal','mateigen',
            'matfrobenius','mathess','mathilbert','mathnf','mathnfmod',
            'mathnfmodid','matid','matimage','matimagecompl','matindexrank',
            'matintersect','matinverseimage','matisdiagonal','matker',
            'matkerint','matmuldiagonal','matmultodiagonal','matpascal',
            'matrank','matrix','matrixqz','matsize','matsnf','matsolve',
            'matsolvemod','matsupplement','mattranspose','minpoly','qfgaussred',
            'qfjacobi','qflll','qflllgram','qfminim','qfperfection','qfrep',
            'qfsign','setintersect','setisset','setminus','setsearch','cmp',
            'setunion','trace','vecextract','vecsort','vector','vectorsmall',
            'vectorv','ellheegner'
            ),

        2 => array(
            'void','bool','negbool','small','int',/*'real',*/'mp','var','lg','pol',
            'vecsmall','vec','list','str','genstr','gen','typ'
            ),

        3 => array(
            'TeXstyle','breakloop','colors','compatible','datadir','debug',
            'debugfiles','debugmem','echo','factor_add_primes','factor_proven',
            'format','graphcolormap','graphcolors','help','histfile','histsize',
            'lines','linewrap',/*'log',*/'logfile','new_galois_format','output',
            'parisize','path','prettyprinter','primelimit','prompt_cont',
            'prompt','psfile','readline','realprecision','recover','secure',
            'seriesprecision',/*'simplify',*/'strictmatch','timer'
            ),

        4 => array(
            'alarmer','archer','errpile','gdiver','impl','syntaxer','invmoder',
            'overflower','talker','typeer','user'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '(',')','{','}','[',']','+','-','*','/','%','=','<','>','!','^','&','|','?',';',':',',','\\','\''
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #e07022;',
            3 => 'color: #00d2d2;',
            4 => 'color: #00d2d2;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000;',
            'MULTI' => 'color: #008000;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #111111; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #002222;'
            ),
        'STRINGS' => array(
            0 => 'color: #800080;'
            ),
        'NUMBERS' => array(
            0 => 'color: #666666;',
            1 => 'color: #666666;',
            2 => 'color: #666666;'
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            0 => 'color: #e07022',    # Should be the same as keyword group 2
            1 => 'color: #555555'
            ),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        0 => array( # types marked on variables
            GESHI_SEARCH => '(? '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '"',
            GESHI_AFTER => '"'
            ),
        1 => array( # literal variables
            GESHI_SEARCH => '(? '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        2 => array(
            '[a-zA-Z][a-zA-Z0-9_]*:' => ''
            ),
        3 => array(
            'default(' => ''
            ),
        4 => array(
            'trap(' => ''
            ),
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>
geshi/geshi/perl6.php0000664000175000017500000001710612014173453013734 0ustar  benbebenbe 'Perl 6',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array('=begin' => '=end'),
    'COMMENT_REGEXP' => array(
        //Regular expressions
        2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU",
        //Regular expression match variables
        3 => '/\$\d+/',
        //Heredoc
        4 => '/<<\s*?([\'"]?)([a-zA-Z0-9]+)\1;[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
        //Beastly hack to finish highlighting each POD block
        5 => '((?<==end) .+)'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDQUOTE' => array("'", "'"),            // An optional 2-element array defining the beginning and end of a hard-quoted string
    'HARDESCAPE' => array('\\\''),
        // Things that must still be escaped inside a hard-quoted string
        // If HARDQUOTE is defined, HARDESCAPE must be defined
        // This will not work unless the first character of each element is either in the
        // QUOTEMARKS array or is the ESCAPE_CHAR
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'do', 'else', 'elsif', 'for', 'if', 'then', 'until',
            'while', 'loop', 'repeat', 'my', 'xor', 'or', 'and',
            'unless', 'next', 'last', 'redo', 'not', 'our', 'let',
            'temp', 'state', 'enum', 'constant', 'continue', 'cmp',
            'ne', 'eq', 'lt', 'gt', 'le', 'ge', 'leg', 'div', 'X',
            'Z', 'x', 'xx', 'given', 'when', 'default', 'has',
            'returns', 'of', 'is', 'does', 'where', 'subset', 'but',
            'True', 'False', 'return', 'die', 'fail'
            ),
        2 => array(
            'use', 'sub', 'multi', 'method', 'submethod', 'proto',
            'class', 'role', 'grammar', 'regex', 'token', 'rule',
            'new', 'BEGIN', 'END', 'CHECK', 'INIT', 'START', 'FIRST',
            'ENTER', 'LEAVE', 'KEEP', 'UNDO', 'NEXT', 'LAST', 'PRE',
            'POST', 'CATCH', 'CONTROL', 'BUILD'
            ),
        3 => array(
            'all', 'any', 'cat', 'classify', 'defined', 'grep', 'first',
            'keys', 'kv', 'join', 'map', 'max', 'min', 'none', 'one', 'pairs',
            'print', 'printf', 'roundrobin', 'pick', 'reduce', 'reverse', 'say',
            'shape', 'sort', 'srand', 'undefine', 'uri', 'values', 'warn', 'zip',

            # Container
            'rotate', 'comb', 'end', 'elems', 'delete',
            'exists', 'pop', 'push', 'shift', 'splice',
            'unshift', 'invert', 'decode',

            # Numeric
            'succ', 'pred', 'abs', 'exp', 'log',
            'log10', 'rand', 'roots', 'cis', 'unpolar', 'i', 'floor',
            'ceiling', 'round', 'truncate', 'sign', 'sqrt',
            'polar', 're', 'im', 'I', 'atan2', 'nude',
            'denominator', 'numerator',

            # Str
            'p5chop', 'chop', 'p5chomp', 'chomp', 'lc', 'lcfirst',
            'uc', 'ucfirst', 'normalize', 'samecase', 'sameaccent',
            'capitalize', 'length', 'chars', 'graphs', 'codes',
            'bytes', 'encode', 'index', 'pack', 'quotemeta', 'rindex',
            'split', 'words', 'flip', 'sprintf', 'fmt',
            'substr', 'trim', 'unpack', 'match', 'subst', 'trans'
            )
        ),
    'SYMBOLS' => array(
        '<', '>', '=',
        '!', '@', '~', '&', '|', '^',
        '+','-', '*', '/', '%',
        ',', ';', '?', '.', ':',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #009966; font-style: italic;',
            3 => 'color: #0000ff;',
            4 => 'color: #cc0000; font-style: italic;',
            5 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        //Variable
        0 => '(?:[$@%]|&)(?:(?:[\^:*?!~]|<)?[a-zA-Z_][a-zA-Z0-9_]*|(?=\.))'
        # We treat the . twigil specially so the name can be highlighted as an
        # object field (via OBJECT_SPLITTERS).
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '$'
        )
    )
);

?>geshi/geshi/llvm.php0000664000175000017500000003272412014173401013652 0ustar  benbebenbe 'LLVM Intermediate Representation',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'HARDQUOTE' => array("\"", "\""),
    'HARDESCAPE' => array("\"", "\\"),
    'HARDCHAR' => "\\",
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        // 1 => "#\\\\[nfrtv\$\"\n\\\\]#i",
        //Hexadecimal Char Specs
        // 2 => "#\\\\x[\da-fA-F]{1,2}#i",
        //Octal Char Specs
        // 3 => "#\\\\[0-7]{1,3}#",
        //String Parsing of Variable Names
        // 4 => "#\\$[a-z0-9_]+(?:\\[[a-z0-9_]+\\]|->[a-z0-9_]+)?|(?:\\{\\$|\\$\\{)[a-z0-9_]+(?:\\[('?)[a-z0-9_]*\\1\\]|->[a-z0-9_]+)*\\}#i",
        //Experimental extension supporting cascaded {${$var}} syntax
        // 5 => "#\$[a-z0-9_]+(?:\[[a-z0-9_]+\]|->[a-z0-9_]+)?|(?:\{\$|\$\{)[a-z0-9_]+(?:\[('?)[a-z0-9_]*\\1\]|->[a-z0-9_]+)*\}|\{\$(?R)\}#i",
        //Format String support in ""-Strings
        // 6 => "#%(?:%|(?:\d+\\\\\\\$)?\\+?(?:\x20|0|'.)?-?(?:\d+|\\*)?(?:\.\d+)?[bcdefFosuxX])#"
        ),
    'NUMBERS' =>
    GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        0 => array(
            'to', 'nuw', 'nsw', 'align', 'inbounds', 'entry', 'return'
            ),
        //Terminator Instructions
        1 => array(
            'ret', 'br', 'switch', 'indirectbr', 'invoke', 'unwind', 'unreachable'
            ),
        //Binary Operations
        2 => array(
            'add', 'fadd', 'sub', 'fsub', 'mul', 'fmul', 'udiv', 'sdiv', 'fdiv', 'urem', 'frem', 'srem'
            ),
        //Bitwise Binary Operations
        3 => array(
            'shl', 'lshr', 'ashr', 'and', 'or', 'xor'
            ),
        //Vector Operations
        4 => array(
            'extractelement', 'insertelement', 'shufflevector'
            ),
        //Aggregate Operations
        5 => array(
            'extractvalue', 'insertvalue'
            ),
        //Memory Access and Addressing Operations
        6 => array(
            'alloca', 'load', 'store', 'getelementptr'
            ),
        //Conversion Operations
        7 => array(
            'trunc', 'zext', 'sext', 'fptrunc', 'fpext', 'fptoui', 'fptosi',
            'uitofp', 'sitofp', 'ptrtoint', 'inttoptr', 'bitcast'
            ),
        //Other Operations
        8 => array(
            'icmp', 'fcmp', 'phi', 'select', 'call', 'va_arg'
            ),
        //Linkage Types
        9 => array(
            'private', 'linker_private', 'linker_private_weak', 'linker_private_weak_def_auto',
            'internal', 'available_externally', 'linkonce', 'common', 'weak', 'appending',
            'extern_weak', 'linkonce_odr', 'weak_odr', 'externally visible', 'dllimport', 'dllexport',
            ),
        //Calling Conventions
        10 => array(
            'ccc', 'fastcc', 'coldcc', 'cc 10'
            ),
        //Named Types
        11 => array(
            'type'
            ),
        //Parameter Attributes
        12 => array(
            'zeroext', 'signext', 'inreg', 'byval', 'sret', 'noalias', 'nocapture', 'nest'
            ),
        //Function Attributes
        13 => array(
            'alignstack', 'alwaysinline', 'inlinehint', 'naked', 'noimplicitfloat', 'noinline', 'noredzone', 'noreturn',
            'nounwind', 'optsize', 'readnone', 'readonly', 'ssp', 'sspreq',
            ),
        //Module-Level Inline Assembly
        14 => array(
            'module asm'
            ),
        //Data Layout
        15 => array(
            'target datalayout'
            ),
        //Primitive Types
        16 => array(
            'x86mmx',
            'void',
            'label',
            'metadata',
            'opaque'
            ),
        //Floating Point Types
        17 => array(
            'float', 'double', 'fp128', 'x86_fp80', 'ppc_fp128',
            ),
        //Simple Constants
        18 => array(
            'false', 'true', 'null'
            ),
        //Global Variable and Function Addresses
        19 => array(
            'global', 'addrspace', 'constant', 'section'
            ),
        //Functions
        20 => array(
            'declare', 'define'
            ),
        //Complex Constants
        21 => array(
            'zeroinitializer'
            ),
        //Undefined Values
        22 => array(
            'undef'
            ),
        //Addresses of Basic Blocks
        23 => array(
            'blockaddress'
            ),
        //Visibility Styles
        24 => array(
            'default', 'hidden', 'protected'
            ),
        25 => array(
            'volatile'
            ),
        26 => array(
            'tail'
            ),
        ),
    'SYMBOLS' => array(
        0 => array(
            '(', ')', '[', ']', '{', '}',
            '!', '@', '%', '&', '|', '/',
            '<', '>',
            '=', '-', '+', '*',
            '.', ':', ',', ';'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        9 => true,
        10 => true,
        11 => true,
        12 => true,
        13 => true,
        14 => true,
        15 => true,
        16 => true,
        17 => true,
        18 => true,
        19 => true,
        20 => true,
        21 => true,
        22 => true,
        23 => true,
        24 => true,
        25 => true,
        26 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            0 => 'color: #209090;',
            1 => 'color: #0000F0;',
            2 => 'color: #00F000; font-weight: bold;',
            3 => 'color: #F00000;',
            4 => 'color: #00F0F0; font-weight: bold;',
            5 => 'color: #F000F0; font-weight: bold;',
            6 => 'color: #403020; font-weight: bold;',
            7 => 'color: #909090; font-weight: bold;',
            8 => 'color: #009090; font-weight: bold;',
            9 => 'color: #900090; font-weight: bold;',
            10 => 'color: #909000; font-weight: bold;',
            11 => 'color: #000090; font-weight: bold;',
            12 => 'color: #900000; font-weight: bold;',
            13 => 'color: #009000; font-weight: bold;',
            14 => 'color: #F0F090; font-weight: bold;',
            15 => 'color: #F090F0; font-weight: bold;',
            16 => 'color: #90F0F0; font-weight: bold;',
            17 => 'color: #9090F0; font-weight: bold;',
            18 => 'color: #90F090; font-weight: bold;',
            19 => 'color: #F09090; font-weight: bold;',
            20 => 'color: #4040F0; font-weight: bold;',
            21 => 'color: #40F040; font-weight: bold;',
            22 => 'color: #F04040; font-weight: bold;',
            23 => 'color: #F0F040; font-weight: bold;',
            24 => 'color: #F040F0; font-weight: bold;',
            25 => 'color: #40F0F0; font-weight: bold;',
            26 => 'color: #904040; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #006699; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold; font-style: italic;',
            6 => 'color: #009933; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;',
            'HARD' => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            ),
        'METHODS' => array(
            1 => 'color: #004000;',
            2 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            ),
        'REGEXPS' => array(
            0 => 'color: #007088;',
            1 => 'color: #007088;',
            // 2 => 'color: #000088;',
            3 => 'color: #700088;',
            4 => 'color: #010088;',
            // 5 => 'color: #610088;',
            // 6 => 'color: #616088;',
            // 7 => 'color: #616988;',
            // 8 => 'color: #616908;',
            9 => 'color: #6109F8;',
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => '',
            4 => '',
            5 => ''
            )
        ),
    'URLS' => array(
        0 => '',
        1 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        2 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        3 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        4 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        5 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        6 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        7 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        8 => 'http://llvm.org/docs/LangRef.html#i_{FNAME}',
        9 => 'http://llvm.org/docs/LangRef.html#linkage_{FNAME}',
        10 => 'http://llvm.org/docs/LangRef.html#callingconv',
        11 => 'http://llvm.org/docs/LangRef.html#namedtypes',
        12 => 'http://llvm.org/docs/LangRef.html#paramattrs',
        13 => 'http://llvm.org/docs/LangRef.html#fnattrs',
        14 => 'http://llvm.org/docs/LangRef.html#moduleasm',
        15 => 'http://llvm.org/docs/LangRef.html#datalayout',
        16 => 'http://llvm.org/docs/LangRef.html#t_{FNAME}',
        17 => 'http://llvm.org/docs/LangRef.html#t_floating',
        18 => 'http://llvm.org/docs/LangRef.html#simpleconstants',
        19 => 'http://llvm.org/docs/LangRef.html#globalvars',
        20 => 'http://llvm.org/docs/LangRef.html#functionstructure',
        21 => 'http://llvm.org/docs/LangRef.html#complexconstants',
        22 => 'http://llvm.org/docs/LangRef.html#undefvalues',
        23 => 'http://llvm.org/docs/LangRef.html#blockaddress',
        24 => 'http://llvm.org/docs/LangRef.html#visibility',
        25 => 'http://llvm.org/docs/LangRef.html#volatile',
        26 => 'http://llvm.org/docs/LangRef.html#i_call',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Variables
        0 => '%[-a-zA-Z$\._][-a-zA-Z$\._0-9]*',
        //Labels
        // 1 => '[-a-zA-Z$\._0-9]+:',
        1 => '(?]*<)',
        //Strings
        // 2 => '"[^"]+"',
        //Unnamed variable slots
        3 => '%[-]?[0-9]+',
        //Integer Types
        4 => array(
            GESHI_SEARCH => '(? '\\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Comments
        // 5 => ';.*',
        //Integer literals
        // 6 => '\\b[-]?[0-9]+\\b',
        //Floating point constants
        // 7 => '\\b[-+]?[0-9]+\.[0-9]*\([eE][-+]?[0-9]+\)?\\b',
        //Hex constants
        // 8 => '\\b0x[0-9A-Fa-f]+\\b',
        //Global variables
        9 => array(
            GESHI_SEARCH => '@[-a-zA-Z$\._][-a-zA-Z$\._0-9]*',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'SCRIPT_DELIMITERS' => array(),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/asm.php0000664000175000017500000007424512014173373013474 0ustar  benbebenbe 'ASM',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    //Line address prefix suppression
    'COMMENT_REGEXP' => array(2 => "/^(?:[0-9a-f]{0,4}:)?[0-9a-f]{4}(?:[0-9a-f]{4})?/mi"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* General-Purpose */
        1 => array(
            /* BCD instructions */
            'aaa','aad','aam','aas','daa','das',
            /* Control flow instructions */
            'ja','jae','jb','jbe','jc','je','jg','jge','jl','jle','jmp','jna',
            'jnae','jnb','jnbe','jnc','jne','jng','jnge','jnl','jnle','jno','jnp','jns','jnz',
            'jo','jp','jpe','jpo','js','jz','jcxz','jecxz','jrcxz','loop','loope','loopne',
            'call','ret','enter','leave','syscall','sysenter','int','into',
            /* Predicate instructions */
            'seta','setae','setb','setbe','setc','sete','setg','setge','setl','setle','setna',
            'setnae','setnb','setnbe','setnc','setne','setng','setnge','setnl','setnle','setno',
            'setnp','setns','setnz','seto','setp','setpe','setpo','sets','setz','salc',
            /* Conditional move instructions */
            'cmovo','cmovno','cmovb','cmovc','cmovnae','cmovae','cmovnb','cmovnc','cmove','cmovz',
            'cmovne','cmovnz','cmovbe','cmovna','cmova','cmovnbe','cmovs','cmovns','cmovp','cmovpe',
            'cmovnp','cmovpo','cmovl','cmovnge','cmovge','cmovnl','cmovle','cmovng','cmovg','cmovnle',
            /* ALU instructions */
            'add','sub','adc','sbb','neg','cmp','inc','dec','and','or','xor','not','test',
            'shl','shr','sal','sar','shld','shrd','rol','ror','rcl','rcr',
            'cbw','cwd','cwde','cdq','cdqe','cqo','bsf','bsr','bt','btc','btr','bts',
            'idiv','imul','div','mul','bswap','nop',
            /* Memory instructions */
            'lea','mov','movsx','movsxd','movzx','xlatb','bound','xchg','xadd','cmpxchg','cmpxchg8b','cmpxchg16b',
            /* Stack instructions */
            'push','pop','pusha','popa','pushad','popad','pushf','popf','pushfd','popfd','pushfq','popfq',
            /* EFLAGS manipulations instructions */
            'clc','cld','stc','std','cmc','lahf','sahf',
            /* Prefix instructions */
            'lock','rep','repe','repz','repne','repnz',
            /* String instructions */
            'cmps','cmpsb','cmpsw',/*'cmpsd',*/ 'cmpsq', /*CMPSD conflicts with the SSE2 instructions of the same name*/
            'movs','movsb','movsw',/*'movsd',*/ 'movsq', /*MOVSD conflicts with the SSE2 instructions of the same name*/
            'scas','scasb','scasw','scasd','scasq',
            'stos','stosb','stosw','stosd','stosq',
            'lods','lodsb','lodsw','lodsd','lodsq',
            /* Information instructions */
            'cpuid','rdtsc','rdtscp','rdpmc','xgetbv',
            'sgdt','sidt','sldt','smsw','str','lar',
            /* LWP instructions */
            'llwpcb','slwpcb','lwpval','lwpins',
            /* Instructions from miscellaneous extensions */
            'crc32','popcnt','lzcnt','tzcnt','movbe','pclmulqdq','rdrand',
            /* FSGSBASE instructions */
            'rdfsbase','rdgsbase','wrfsbase','wrgsbase',
            /* BMI1 instructions */
            'andn','bextr','blsi','blsmk','blsr',
            /* BMI2 instructions */
            'bzhi','mulx','pdep','pext','rorx','sarx','shlx','shrx',
            /* TBM instructions */
            'blcfill','blci','blcic','blcmsk','blcs','blsfill','blsic','t1mskc','tzmsk',
            /* Legacy instructions */
            'arpl','ud2','lds','les','lfs','lgs','lss','lsl','verr','verw',
            /* Privileged instructions */
            'cli','sti','clts','hlt','rsm','in','insb','insw','insd',
            'out','outsb','outsw','outsd','clflush','invd','invlpg','invpcid','wbinvd',
            'iret','iretd','iretq','sysexit','sysret','lidt','lgdt','lldt','lmsw','ltr',
            'monitor','mwait','rdmsr','wrmsr','swapgs',
            'fxsave','fxsave64','fxrstor','fxrstor64',
            'xsave','xsaveopt','xrstor','xsetbv','getsec',
            /* VMX instructions */
            'invept','invvpid','vmcall','vmclear','vmlaunch','vmresume',
            'vmptrld','vmptrst','vmread','vmwrite','vmxoff','vmxon',
            /* SVM (AMD-V) instructions */
            'invlpga','skinit','clgi','stgi','vmload','vmsave','vmmcall','vmrun'
            ),
        /*FPU*/
        2 => array(
            'f2xm1','fabs','fadd','faddp','fbld','fbstp','fchs','fclex','fcom','fcomp','fcompp','fdecstp',
            'fdisi','fdiv','fdivp','fdivr','fdivrp','feni','ffree','fiadd','ficom','ficomp','fidiv',
            'fidivr','fild','fimul','fincstp','finit','fist','fistp','fisub','fisubr','fld','fld1',
            'fldcw','fldenv','fldenvw','fldl2e','fldl2t','fldlg2','fldln2','fldpi','fldz','fmul',
            'fmulp','fnclex','fndisi','fneni','fninit','fnop','fnsave','fnsavew','fnstcw','fnstenv',
            'fnstenvw','fnstsw','fpatan','fprem','fptan','frndint','frstor','frstorw','fsave',
            'fsavew','fscale','fsqrt','fst','fstcw','fstenv','fstenvw','fstp','fstsw','fsub','fsubp',
            'fsubr','fsubrp','ftst','fwait','fxam','fxch','fxtract','fyl2x','fyl2xp1',
            'fsetpm','fcos','fldenvd','fnsaved','fnstenvd','fprem1','frstord','fsaved','fsin','fsincos',
            'fstenvd','fucom','fucomp','fucompp','ffreep',
            /* FCMOV instructions */
            'fcomi','fcomip','fucomi','fucomip',
            'fcmovb','fcmove','fcmovbe','fcmovu','fcmovnb','fcmovne','fcmovnbe','fcmovnu',
            /* SSE3 instructions */
            'fisttp'
            ),
        /*SIMD*/
        3 => array(
            /* MMX instructions */
            'movd','movq',
            'paddb','paddw','paddd','paddsb','paddsw','paddusb','paddusw',
            'psubb','psubw','psubd','psubsb','psubsw','psubusb','psubusw',
            'pand','pandn','por','pxor',
            'pcmpeqb','pcmpeqd','pcmpeqw','pcmpgtb','pcmpgtd','pcmpgtw',
            'pmaddwd','pmulhw','pmullw',
            'psllw','pslld','psllq','psrlw','psrld','psrlq','psraw','psrad',
            'packuswb','packsswb','packssdw',
            'punpcklbw','punpcklwd','punpckldq','punpckhbw','punpckhwd','punpckhdq',
            'emms',
            /* MMX+ instructions */
            'pavgb','pavgw',
            'pextrw','pinsrw','pmovmskb',
            'pmaxsw','pmaxub','pminsw','pminub',
            'pmulhuw','psadbw','pshufw',
            'prefetchnta','prefetcht0','prefetcht1','prefetcht2',
            'maskmovq','movntq','sfence',
            /* EMMX instructions (only available on Cyrix MediaGXm) */
            'paddsiw','psubsiw',
            /*'pmulhrw',*/'pmachriw','pmulhriw', /* PMULHRW conflicts with the 3dnow! instruction of the same name */
            'pmagw','pdistib','paveb',
            'pmvzb','pmvnzb','pmvlzb','pmvgezb',
            /* 3dnow! instructions! */
            'pfacc','pfadd','pfsub','pfsubr','pfmul',
            'pfcmpeq','pfcmpge','pfcmpgt',
            'pfmax','pfmin',
            'pfrcp','pfrcpit1','pfrcpit2','pfrsqit1','pfrsqrt',
            'pi2fd','pf2id',
            'pavgusb','pmulhrw',
            'femms',
            /* 3dnow!+ instructions */
            'pfnacc','pfpnacc','pi2fw','pf2iw','pswapd',
            /* 3dnow! Geode instructions */
            'pfrsqrtv','pfrcpv',
            /* 3dnow! Prefetch instructions */
            'prefetch','prefetchw',
            /* SSE instructions */
            'addss','addps','subss','subps',
            'mulss','mulps','divss','divps','sqrtss','sqrtps',
            'rcpss','rcpps','rsqrtss','rsqrtps',
            'maxss','maxps','minss','minps',
            'cmpss','comiss','ucomiss','cmpps',
            'cmpeqss','cmpltss','cmpless','cmpunordss','cmpneqss','cmpnltss','cmpnless','cmpordss',
            'cmpeqps','cmpltps','cmpleps','cmpunordps','cmpneqps','cmpnltps','cmpnleps','cmpordps',
            'andnps','andps','orps','xorps',
            'cvtsi2ss','cvtss2si','cvttss2si',
            'cvtpi2ps','cvtps2pi','cvttps2pi',
            'movss','movlps','movhps','movlhps','movhlps','movaps','movups','movntps','movmskps',
            'shufps','unpckhps','unpcklps',
            'ldmxcsr','stmxcsr',
            /* SSE2 instructions */
            'addpd','addsd','subpd','subsd',
            'mulsd','mulpd','divsd','divpd','sqrtsd','sqrtpd',
            'maxsd','maxpd','minsd','minpd',
            'cmpsd','comisd','ucomisd','cmppd',
            'cmpeqsd','cmpltsd','cmplesd','cmpunordsd','cmpneqsd','cmpnltsd','cmpnlesd','cmpordsd',
            'cmpeqpd','cmpltpd','cmplepd','cmpunordpd','cmpneqpd','cmpnltpd','cmpnlepd','cmpordpd',
            'andnpd','andpd','orpd','xorpd',
            'cvtsd2ss','cvtpd2ps','cvtss2sd','cvtps2pd',
            'cvtdq2ps','cvtps2dq','cvttps2dq',
            'cvtdq2pd','cvtpd2dq','cvttpd2dq',
            'cvtsi2sd','cvtsd2si','cvttsd2si',
            'cvtpi2pd','cvtpd2pi','cvttpd2pi',
            'movsd','movlpd','movhpd','movapd','movupd','movntpd','movmskpd',
            'shufpd','unpckhpd','unpcklpd',
            'movnti','movdqa','movdqu','movntdq','maskmovdqu',
            'movdq2q','movq2dq',
            'paddq','psubq','pmuludq',
            'pslldq','psrldq',
            'punpcklqdq','punpckhqdq',
            'pshufhw','pshuflw','pshufd',
            'lfence','mfence',
            /* SSE3 instructions */
            'addsubps','addsubpd',
            'haddps','haddpd','hsubps','hsubpd',
            'movsldup','movshdup','movddup',
            'lddqu',
            /* SSSE3 instructions */
            'psignb','psignw','psignd',
            'pabsb','pabsw','pabsd',
            'palignr','pshufb',
            'pmulhrsw','pmaddubsw',
            'phaddw','phaddd','phaddsw',
            'phsubw','phsubd','phsubsw',
            /* SSE4A instructions */
            'extrq','insertq','movntsd','movntss',
            /* SSE4.1 instructions */
            'mpsadbw','phminposuw',
            'pmuldq','pmulld',
            'dpps','dppd',
            'blendps','blendpd','blendvps','blendvpd','pblendvb','pblendw',
            'pmaxsb','pmaxuw','pmaxsd','pmaxud','pminsb','pminuw','pminsd','pminud',
            'roundps','roundss','roundpd','roundsd',
            'insertps','pinsrb','pinsrd','pinsrq',
            'extractps','pextrb','pextrd','pextrq',
            'pmovsxbw','pmovsxbd','pmovsxbq','pmovsxwd','pmovsxwq','pmovsxdq',
            'pmovzxbw','pmovzxbd','pmovzxbq','pmovzxwd','pmovzxwq','pmovzxdq',
            'ptest',
            'pcmpeqq',
            'packusdw',
            'movntdqa',
            /* SSE4.2 instructions */
            'pcmpgtq',
            'pcmpestri','pcmpestrm','pcmpistri','pcmpistrm',
            /* AES instructions */
            'aesenc','aesenclast','aesdec','aesdeclast','aeskeygenassist','aesimc',
            /* VIA Padlock instructions */
            'xcryptcbc','xcryptcfb','xcryptctr','xcryptecb','xcryptofb',
            'xsha1','xsha256','montmul','xstore',
            /* AVX instructions */
            'vaddss','vaddps','vaddsd','vaddpd','vsubss','vsubps','vsubsd','vsubpd',
            'vaddsubps','vaddsubpd',
            'vhaddps','vhaddpd','vhsubps','vhsubpd',
            'vmulss','vmulps','vmulsd','vmulpd',
            'vmaxss','vmaxps','vmaxsd','vmaxpd','vminss','vminps','vminsd','vminpd',
            'vandps','vandpd','vandnps','vandnpd','vorps','vorpd','vxorps','vxorpd',
            'vblendps','vblendpd','vblendvps','vblendvpd',
            'vcmpss','vcomiss','vucomiss','vcmpsd','vcomisd','vucomisd','vcmpps','vcmppd',
            'vcmpeqss','vcmpltss','vcmpless','vcmpunordss','vcmpneqss','vcmpnltss','vcmpnless','vcmpordss',
            'vcmpeq_uqss','vcmpngess','vcmpngtss','vcmpfalsess','vcmpneq_oqss','vcmpgess','vcmpgtss','vcmptruess',
            'vcmpeq_osss','vcmplt_oqss','vcmple_oqss','vcmpunord_sss','vcmpneq_usss','vcmpnlt_uqss','vcmpnle_uqss','vcmpord_sss',
            'vcmpeq_usss','vcmpnge_uqss','vcmpngt_uqss','vcmpfalse_osss','vcmpneq_osss','vcmpge_oqss','vcmpgt_oqss','vcmptrue_usss',
            'vcmpeqps','vcmpltps','vcmpleps','vcmpunordps','vcmpneqps','vcmpnltps','vcmpnleps','vcmpordps',
            'vcmpeq_uqps','vcmpngeps','vcmpngtps','vcmpfalseps','vcmpneq_oqps','vcmpgeps','vcmpgtps','vcmptrueps',
            'vcmpeq_osps','vcmplt_oqps','vcmple_oqps','vcmpunord_sps','vcmpneq_usps','vcmpnlt_uqps','vcmpnle_uqps','vcmpord_sps',
            'vcmpeq_usps','vcmpnge_uqps','vcmpngt_uqps','vcmpfalse_osps','vcmpneq_osps','vcmpge_oqps','vcmpgt_oqps','vcmptrue_usps',
            'vcmpeqsd','vcmpltsd','vcmplesd','vcmpunordsd','vcmpneqsd','vcmpnltsd','vcmpnlesd','vcmpordsd',
            'vcmpeq_uqsd','vcmpngesd','vcmpngtsd','vcmpfalsesd','vcmpneq_oqsd','vcmpgesd','vcmpgtsd','vcmptruesd',
            'vcmpeq_ossd','vcmplt_oqsd','vcmple_oqsd','vcmpunord_ssd','vcmpneq_ussd','vcmpnlt_uqsd','vcmpnle_uqsd','vcmpord_ssd',
            'vcmpeq_ussd','vcmpnge_uqsd','vcmpngt_uqsd','vcmpfalse_ossd','vcmpneq_ossd','vcmpge_oqsd','vcmpgt_oqsd','vcmptrue_ussd',
            'vcmpeqpd','vcmpltpd','vcmplepd','vcmpunordpd','vcmpneqpd','vcmpnltpd','vcmpnlepd','vcmpordpd',
            'vcmpeq_uqpd','vcmpngepd','vcmpngtpd','vcmpfalsepd','vcmpneq_oqpd','vcmpgepd','vcmpgtpd','vcmptruepd',
            'vcmpeq_ospd','vcmplt_oqpd','vcmple_oqpd','vcmpunord_spd','vcmpneq_uspd','vcmpnlt_uqpd','vcmpnle_uqpd','vcmpord_spd',
            'vcmpeq_uspd','vcmpnge_uqpd','vcmpngt_uqpd','vcmpfalse_ospd','vcmpneq_ospd','vcmpge_oqpd','vcmpgt_oqpd','vcmptrue_uspd',
            'vcvtsd2ss','vcvtpd2ps','vcvtss2sd','vcvtps2pd',
            'vcvtsi2ss','vcvtss2si','vcvttss2si',
            'vcvtpi2ps','vcvtps2pi','vcvttps2pi',
            'vcvtdq2ps','vcvtps2dq','vcvttps2dq',
            'vcvtdq2pd','vcvtpd2dq','vcvttpd2dq',
            'vcvtsi2sd','vcvtsd2si','vcvttsd2si',
            'vcvtpi2pd','vcvtpd2pi','vcvttpd2pi',
            'vdivss','vdivps','vdivsd','vdivpd','vsqrtss','vsqrtps','vsqrtsd','vsqrtpd',
            'vdpps','vdppd',
            'vmaskmovps','vmaskmovpd',
            'vmovss','vmovsd','vmovaps','vmovapd','vmovups','vmovupd','vmovntps','vmovntpd',
            'vmovhlps','vmovlhps','vmovlps','vmovlpd','vmovhps','vmovhpd',
            'vmovsldup','vmovshdup','vmovddup',
            'vmovmskps','vmovmskpd',
            'vroundss','vroundps','vroundsd','vroundpd',
            'vrcpss','vrcpps','vrsqrtss','vrsqrtps',
            'vunpcklps','vunpckhps','vunpcklpd','vunpckhpd',
            'vbroadcastss','vbroadcastsd','vbroadcastf128',
            'vextractps','vinsertps','vextractf128','vinsertf128',
            'vshufps','vshufpd','vpermilps','vpermilpd','vperm2f128',
            'vtestps','vtestpd',
            'vpaddb','vpaddusb','vpaddsb','vpaddw','vpaddusw','vpaddsw','vpaddd','vpaddq',
            'vpsubb','vpsubusb','vpsubsb','vpsubw','vpsubusw','vpsubsw','vpsubd','vpsubq',
            'vphaddw','vphaddsw','vphaddd','vphsubw','vphsubsw','vphsubd',
            'vpsllw','vpslld','vpsllq','vpsrlw','vpsrld','vpsrlq','vpsraw','vpsrad',
            'vpand','vpandn','vpor','vpxor',
            'vpblendwb','vpblendw',
            'vpsignb','vpsignw','vpsignd',
            'vpavgb','vpavgw',
            'vpabsb','vpabsw','vpabsd',
            'vmovd','vmovq','vmovdqa','vmovdqu','vlddqu','vmovntdq','vmovntdqa','vmaskmovdqu',
            'vpmovsxbw','vpmovsxbd','vpmovsxbq','vpmovsxwd','vpmovsxwq','vpmovsxdq',
            'vpmovzxbw','vpmovzxbd','vpmovzxbq','vpmovzxwd','vpmovzxwq','vpmovzxdq',
            'vpackuswb','vpacksswb','vpackusdw','vpackssdw',
            'vpcmpeqb','vpcmpeqw','vpcmpeqd','vpcmpeqq','vpcmpgtb','vpcmpgtw','vpcmpgtd','vpcmpgtq',
            'vpmaddubsw','vpmaddwd',
            'vpmullw','vpmulhuw','vpmulhw','vpmulhrsw','vpmulld','vpmuludq','vpmuldq',
            'vpmaxub','vpmaxsb','vpmaxuw','vpmaxsw','vpmaxud','vpmaxsd',
            'vpminub','vpminsb','vpminuw','vpminsw','vpminud','vpminsd',
            'vpmovmskb','vptest',
            'vpunpcklbw','vpunpcklwd','vpunpckldq','vpunpcklqdq',
            'vpunpckhbw','vpunpckhwd','vpunpckhdq','vpunpckhqdq',
            'vpslldq','vpsrldq','vpalignr',
            'vpshufb','vpshuflw','vpshufhw','vpshufd',
            'vpextrb','vpextrw','vpextrd','vpextrq','vpinsrb','vpinsrw','vpinsrd','vpinsrq',
            'vpsadbw','vmpsadbw','vphminposuw',
            'vpcmpestri','vpcmpestrm','vpcmpistri','vpcmpistrm',
            'vpclmulqdq','vaesenc','vaesenclast','vaesdec','vaesdeclast','vaeskeygenassist','vaesimc',
            'vldmxcsr','vstmxcsr','vzeroall','vzeroupper',
            /* AVX2 instructions */
            'vbroadcasti128','vpbroadcastb','vpbroadcastw','vpbroadcastd','vpbroadcastq',
            'vpblendd',
            'vpermd','vpermq','vperm2i128',
            'vextracti128','vinserti128',
            'vpmaskmovd','vpmaskmovq',
            'vpsllvd','vpsllvq','vpsravd','vpsrlvd',
            'vpgatherdd','vpgatherqd','vgatherdq','vgatherqq',
            'vpermps','vpermpd',
            'vgatherdpd','vgatherqpd','vgatherdps','vgatherqps',
            /* XOP instructions */
            'vfrczss','vfrczps','vfrczsd','vfrczpd',
            'vpermil2ps','vperlil2pd',
            'vpcomub','vpcomb','vpcomuw','vpcomw','vpcomud','vpcomd','vpcomuq','vpcomq',
            'vphaddubw','vphaddbw','vphaddubd','vphaddbd','vphaddubq','vphaddbq',
            'vphadduwd','vphaddwd','vphadduwq','vphaddwq','vphaddudq','vphadddq',
            'vphsubbw','vphsubwd','vphsubdq',
            'vpmacsdd','vpmacssdd','vpmacsdql','vpmacssdql','vpmacsdqh','vpmacssdqh',
            'vpmacsww','vpmacssww','vpmacswd','vpmacsswd',
            'vpmadcswd','vpmadcsswd',
            'vpcmov','vpperm',
            'vprotb','vprotw','vprotd','vprotq',
            'vpshab','vpshaw','vpshad','vpshaq',
            'vpshlb','vpshlw','vpshld','vpshlq',
            /* CVT16 instructions */
            'vcvtph2ps','vcvtps2ph',
            /* FMA4 instructions */
            'vfmaddss','vfmaddps','vfmaddsd','vfmaddpd',
            'vfmsubss','vfmsubps','vfmsubsd','vfmsubpd',
            'vnfmaddss','vnfmaddps','vnfmaddsd','vnfmaddpd',
            'vnfmsubss','vnfmsubps','vnfmsubsd','vnfmsubpd',
            'vfmaddsubps','vfmaddsubpd','vfmsubaddps','vfmsubaddpd',
            /* FMA3 instructions */
            'vfmadd132ss','vfmadd213ss','vfmadd231ss',
            'vfmadd132ps','vfmadd213ps','vfmadd231ps',
            'vfmadd132sd','vfmadd213sd','vfmadd231sd',
            'vfmadd132pd','vfmadd213pd','vfmadd231pd',
            'vfmaddsub132ps','vfmaddsub213ps','vfmaddsub231ps',
            'vfmaddsub132pd','vfmaddsub213pd','vfmaddsub231pd',
            'vfmsubadd132ps','vfmsubadd213ps','vfmsubadd231ps',
            'vfmsubadd132pd','vfmsubadd213pd','vfmsubadd231pd',
            'vfmsub132ss','vfmsub213ss','vfmsub231ss',
            'vfmsub132ps','vfmsub213ps','vfmsub231ps',
            'vfmsub132sd','vfmsub213sd','vfmsub231sd',
            'vfmsub132pd','vfmsub213pd','vfmsub231pd',
            'vfnmadd132ss','vfnmadd213ss','vfnmadd231ss',
            'vfnmadd132ps','vfnmadd213ps','vfnmadd231ps',
            'vfnmadd132sd','vfnmadd213sd','vfnmadd231sd',
            'vfnmadd132pd','vfnmadd213pd','vfnmadd231pd',
            'vfnmsub132ss','vfnmsub213ss','vfnmsub231ss',
            'vfnmsub132ps','vfnmsub213ps','vfnmsub231ps',
            'vfnmsub132sd','vfnmsub213sd','vfnmsub231sd',
            'vfnmsub132pd','vfnmsub213pd','vfnmsub231pd'
            ),
        /*registers*/
        4 => array(
            /* General-Purpose Registers */
            'al','ah','bl','bh','cl','ch','dl','dh','sil','dil','bpl','spl',
            'r8b','r9b','r10b','r11b','r12b','r13b','r14b','r15b',
            'ax','bx','cx','dx','si','di','bp','sp',
            'r8w','r9w','r10w','r11w','r12w','r13w','r14w','r15w',
            'eax','ebx','ecx','edx','esi','edi','ebp','esp',
            'r8d','r9d','r10d','r11d','r12d','r13d','r14d','r15d',
            'rax','rcx','rdx','rbx','rsp','rbp','rsi','rdi',
            'r8','r9','r10','r11','r12','r13','r14','r15',
            /* Debug Registers */
            'dr0','dr1','dr2','dr3','dr6','dr7',
            /* Control Registers */
            'cr0','cr2','cr3','cr4','cr8',
            /* Test Registers (Supported on Intel 486 only) */
            'tr3','tr4','tr5','tr6','tr7',
            /* Segment Registers */
            'cs','ds','es','fs','gs','ss',
            /* FPU Registers */
            'st','st0','st1','st2','st3','st4','st5','st6','st7',
            /* MMX Registers */
            'mm0','mm1','mm2','mm3','mm4','mm5','mm6','mm7',
            /* SSE Registers */
            'xmm0','xmm1','xmm2','xmm3','xmm4','xmm5','xmm6','xmm7',
            'xmm8','xmm9','xmm10','xmm11','xmm12','xmm13','xmm14','xmm15',
            /* AVX Registers */
            'ymm0','ymm1','ymm2','ymm3','ymm4','ymm5','ymm6','ymm7',
            'ymm8','ymm9','ymm10','ymm11','ymm12','ymm13','ymm14','ymm15'
            ),
        /*Directive*/
        5 => array(
            'db','dw','dd','dq','dt','do','dy',
            'resb','resw','resd','resq','rest','reso','resy','incbin','equ','times','safeseh',
            '__utf16__','__utf32__',
            'default','cpu','float','start','imagebase','osabi',
            '..start','..imagebase','..gotpc','..gotoff','..gottpoff','..got','..plt','..sym','..tlsie',
            'section','segment','__sect__','group','absolute',
            '.bss','.comment','.data','.lbss','.ldata','.lrodata','.rdata','.rodata','.tbss','.tdata','.text',
            'alloc','bss','code','exec','data','noalloc','nobits','noexec','nowrite','progbits','rdata','tls','write',
            'private','public','common','stack','overlay','class',
            'extern','global','import','export',
            '%define','%idefine','%xdefine','%ixdefine','%assign','%undef',
            '%defstr','%idefstr','%deftok','%ideftok',
            '%strcat','%strlen','%substr',
            '%macro','%imacro','%rmacro','%exitmacro','%endmacro','%unmacro',
            '%if','%ifn','%elif','%elifn','%else','%endif',
            '%ifdef','%ifndef','%elifdef','%elifndef',
            '%ifmacro','%ifnmacro','%elifmacro','%elifnmacro',
            '%ifctx','%ifnctx','%elifctx','%elifnctx',
            '%ifidn','%ifnidn','%elifidn','%elifnidn',
            '%ifidni','%ifnidni','%elifidni','%elifnidni',
            '%ifid','%ifnid','%elifid','%elifnid',
            '%ifnum','%ifnnum','%elifnum','%elifnnum',
            '%ifstr','%ifnstr','%elifstr','%elifnstr',
            '%iftoken','%ifntoken','%eliftoken','%elifntoken',
            '%ifempty','%ifnempty','%elifempty','%elifnempty',
            '%ifenv','%ifnenv','%elifenv','%elifnenv',
            '%rep','%exitrep','%endrep',
            '%while','%exitwhile','%endwhile',
            '%include','%pathsearch','%depend','%use',
            '%push','%pop','%repl','%arg','%local','%stacksize','flat','flat64','large','small',
            '%error','%warning','%fatal',
            '%00','.nolist','%rotate','%line','%!','%final','%clear',
            'struc','endstruc','istruc','at','iend',
            'align','alignb','sectalign',
            'bits','use16','use32','use64',
            '__nasm_major__','__nasm_minor__','__nasm_subminor__','___nasm_patchlevel__',
            '__nasm_version_id__','__nasm_ver__',
            '__file__','__line__','__pass__','__bits__','__output_format__',
            '__date__','__time__','__date_num__','__time_num__','__posix_time__',
            '__utc_date__','__utc_time__','__utc_date_num__','__utc_time_num__',
            '__float_daz__','__float_round__','__float__',
            /* Keywords from standard packages */
            '__use_altreg__',
            '__use_smartalign__','smartalign','__alignmode__',
            '__use_fp__','__infinity__','__nan__','__qnan__','__snan__',
            '__float8__','__float16__','__float32__','__float64__','__float80m__','__float80e__','__float128l__','__float128h__'
            ),
        /*Operands*/
        6 => array(
            'a16','a32','a64','o16','o32','o64','strict',
            'byte','word','dword','qword','tword','oword','yword','nosplit',
            '%0','%1','%2','%3','%4','%5','%6','%7','%8','%9',
            'abs','rel',
            'seg','wrt'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
                '[', ']', '(', ')',
                '+', '-', '*', '/', '%',
                '.', ',', ';', ':'
            ),
        2 => array(
                '$','$$','%+','%?','%??'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f; font-weight: bold;',
            2 => 'color: #0000ff;',
            3 => 'color: #b00040;',
            4 => 'color: #46aa03; font-weight: bold;',
            5 => 'color: #0000ff; font-weight: bold;',
            6 => 'color: #0000ff; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #adadad; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;',
            2 => 'color: #0000ff; font-weight: bold;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => ''
        ),
    'NUMBERS' =>
        GESHI_NUMBER_BIN_PREFIX_PERCENT |
        GESHI_NUMBER_BIN_SUFFIX |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_HEX_SUFFIX |
        GESHI_NUMBER_OCT_SUFFIX |
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])"
        )
    )
);

?>geshi/geshi/vala.php0000664000175000017500000001204012014173407013616 0ustar  benbebenbe 'Vala',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Using and Namespace directives (basic support)
        //Please note that the alias syntax for using is not supported
        3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'HARDQUOTE' => array('"""'),
    'HARDESCAPE' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'as', 'abstract', 'base', 'break', 'case', 'catch', 'const',
            'construct', 'continue', 'default', 'delete', 'dynamic', 'do',
            'else', 'ensures', 'extern', 'false', 'finally', 'for', 'foreach',
            'get', 'if', 'in', 'inline', 'internal', 'lock', 'namespace',
            'null', 'out', 'override', 'private', 'protected', 'public', 'ref',
            'requires', 'return', 'set', 'static', 'switch', 'this', 'throw',
            'throws', 'true', 'try', 'using', 'value', 'var', 'virtual',
            'volatile', 'void', 'yield', 'yields', 'while'
            ),
        2 => array(
            '#elif', '#endif', '#else', '#if'
            ),
        3 => array(
            'is', 'new', 'owned', 'sizeof', 'typeof', 'unchecked', 'unowned', 'weak'
            ),
        4 => array(
            'bool', 'char', 'class', 'delegate', 'double', 'enum',
            'errordomain', 'float', 'int', 'int8', 'int16', 'int32', 'int64',
            'interface', 'long', 'short', 'signal', 'size_t', 'ssize_t',
            'string', 'struct', 'uchar', 'uint', 'uint8', 'uint16', 'uint32',
            'ulong', 'unichar', 'ushort'
            )
        ),
    'SYMBOLS' => array(
        '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';',
        '(', ')', '{', '}', '[', ']', '|'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF;',
            2 => 'color: #FF8000; font-weight: bold;',
            3 => 'color: #008000;',
            4 => 'color: #FF0000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008080; font-style: italic;',
            3 => 'color: #008080;',
            'MULTI' => 'color: #008080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008080; font-weight: bold;',
            'HARD' => 'color: #008080; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #666666;',
            'HARD' => 'color: #666666;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000FF;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])"
        )
    )
);

?>
geshi/geshi/haxe.php0000664000175000017500000001302412014173425013623 0ustar  benbebenbe 'Haxe',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Import and Package directives (Basic Support only)
        2 => '/(?:(?<=import[\\n\\s])|(?<=using[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i',
        // Haxe comments
        3 => '#/\*\*(?![\*\/]).*\*/#sU',
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            //http://haxe.org/ref/keywords
            'break', 'callback', 'case', 'cast', 'catch', 'class', 'continue', 'default', 'do', 'dynamic',
            'else', 'enum', 'extends', 'extern', /*'false',*/ 'for', 'function', 'here', 'if',
            'implements', 'import', 'in', 'inline', 'interface', 'never', 'new', /*'null',*/ 'override',
            'package', 'private', 'public', 'return', 'static', 'super', 'switch', 'this', 'throw',
            'trace', /*'true',*/ 'try', 'typedef', 'untyped', 'using', 'var', 'while',
            'macro', '$type',
            ),
        2 => array(
            //primitive values
            'null', 'false', 'true',
            ),
        3 => array(
            //global types
            'Array', 'ArrayAccess', /*'Bool',*/ 'Class', 'Date', 'DateTools', 'Dynamic',
            'EReg', 'Enum', 'EnumValue', /*'Float',*/ 'Hash', /*'Int',*/ 'IntHash', 'IntIter',
            'Iterable', 'Iterator', 'Lambda', 'List', 'Math', 'Null', 'Reflect', 'Std',
            /*'String',*/ 'StringBuf', 'StringTools', 'Sys', 'Type', /*'UInt',*/ 'ValueType',
            /*'Void',*/ 'Xml', 'XmlType',
            ),
        4 => array(
            //primitive types
            'Void', 'Bool', 'Int', 'Float', 'UInt', 'String',
            ),
        5 => array(
            //compiler switches
            "#if", "#elseif", "#else", "#end", "#error",
            ),
        ),
    'SYMBOLS' => array(
        //http://haxe.org/manual/operators
        '++', '--',
        '%',
        '*', '/',
        '+', '-',
        '<<', '>>', '>>>',
        '|', '&', '^',
        '==', '!=', '>', '>=', '<', '<=',
        '...',
        '&&',
        '||',
        '?', ':',
        '=', '+=', '-=', '/=', '*=', '<<=', '>>=', '>>>=', '|=', '&=', '^=',
        '(', ')', '[', ']', '{', '}', ';',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #6699cc; font-weight: bold;',
            2 => 'color: #000066; font-weight: bold;',
            3 => 'color: #03F; ',
            4 => 'color: #000033; font-weight: bold;',
            5 => 'color: #330000; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #006699;',
            3 => 'color: #008000; font-style: italic; font-weight: bold;',
            3 => 'color: #008000; font-style: italic; font-weight: bold;',
            'MULTI' => 'color: #666666; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;',
            ),
        'STRINGS' => array(
            0 => 'color: #FF0000;',
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            1 => 'color: #006633;',
            2 => 'color: #006633;',
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
);

?>geshi/geshi/java.php0000664000175000017500000014221012014173373013621 0ustar  benbebenbe 'Java',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Import and Package directives (Basic Support only)
        2 => '/(?:(?<=import[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i',
        // javadoc comments
        3 => '#/\*\*(?![\*\/]).*\*/#sU'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'for', 'foreach', 'if', 'else', 'while', 'do',
            'switch', 'case',  'return', 'public',
            'private', 'protected', 'extends', 'break', 'class',
            'new', 'try', 'catch', 'throws', 'finally', 'implements',
            'interface', 'throw', 'final', 'native', 'synchronized', 'this',
            'abstract', 'transient', 'instanceof', 'assert', 'continue',
            'default', 'enum', 'package', 'static', 'strictfp', 'super',
            'volatile', 'const', 'goto', 'import'
            ),
        2 => array(
            'null', 'false', 'true'
            ),
        3 => array(
            'AbstractAction', 'AbstractBorder', 'AbstractButton',
            'AbstractCellEditor', 'AbstractCollection',
            'AbstractColorChooserPanel', 'AbstractDocument',
            'AbstractDocument.AttributeContext',
            'AbstractDocument.Content',
            'AbstractDocument.ElementEdit',
            'AbstractLayoutCache',
            'AbstractLayoutCache.NodeDimensions', 'AbstractList',
            'AbstractListModel', 'AbstractMap',
            'AbstractMethodError', 'AbstractSequentialList',
            'AbstractSet', 'AbstractTableModel',
            'AbstractUndoableEdit', 'AbstractWriter',
            'AccessControlContext', 'AccessControlException',
            'AccessController', 'AccessException', 'Accessible',
            'AccessibleAction', 'AccessibleBundle',
            'AccessibleComponent', 'AccessibleContext',
            'AccessibleHyperlink', 'AccessibleHypertext',
            'AccessibleIcon', 'AccessibleObject',
            'AccessibleRelation', 'AccessibleRelationSet',
            'AccessibleResourceBundle', 'AccessibleRole',
            'AccessibleSelection', 'AccessibleState',
            'AccessibleStateSet', 'AccessibleTable',
            'AccessibleTableModelChange', 'AccessibleText',
            'AccessibleValue', 'Acl', 'AclEntry',
            'AclNotFoundException', 'Action', 'ActionEvent',
            'ActionListener', 'ActionMap', 'ActionMapUIResource',
            'Activatable', 'ActivateFailedException',
            'ActivationDesc', 'ActivationException',
            'ActivationGroup', 'ActivationGroupDesc',
            'ActivationGroupDesc.CommandEnvironment',
            'ActivationGroupID', 'ActivationID',
            'ActivationInstantiator', 'ActivationMonitor',
            'ActivationSystem', 'Activator', 'ActiveEvent',
            'Adjustable', 'AdjustmentEvent',
            'AdjustmentListener', 'Adler32', 'AffineTransform',
            'AffineTransformOp', 'AlgorithmParameterGenerator',
            'AlgorithmParameterGeneratorSpi',
            'AlgorithmParameters', 'AlgorithmParameterSpec',
            'AlgorithmParametersSpi', 'AllPermission',
            'AlphaComposite', 'AlreadyBound',
            'AlreadyBoundException', 'AlreadyBoundHelper',
            'AlreadyBoundHolder', 'AncestorEvent',
            'AncestorListener', 'Annotation', 'Any', 'AnyHolder',
            'AnySeqHelper', 'AnySeqHolder', 'Applet',
            'AppletContext', 'AppletInitializer', 'AppletStub',
            'ApplicationException', 'Arc2D', 'Arc2D.Double',
            'Arc2D.Float', 'Area', 'AreaAveragingScaleFilter',
            'ARG_IN', 'ARG_INOUT', 'ARG_OUT',
            'ArithmeticException', 'Array',
            'ArrayIndexOutOfBoundsException', 'ArrayList',
            'Arrays', 'ArrayStoreException', 'AsyncBoxView',
            'Attribute', 'AttributedCharacterIterator',
            'AttributedCharacterIterator.Attribute',
            'AttributedString', 'AttributeInUseException',
            'AttributeList', 'AttributeModificationException',
            'Attributes', 'Attributes.Name', 'AttributeSet',
            'AttributeSet.CharacterAttribute',
            'AttributeSet.ColorAttribute',
            'AttributeSet.FontAttribute',
            'AttributeSet.ParagraphAttribute', 'AudioClip',
            'AudioFileFormat', 'AudioFileFormat.Type',
            'AudioFileReader', 'AudioFileWriter', 'AudioFormat',
            'AudioFormat.Encoding', 'AudioInputStream',
            'AudioPermission', 'AudioSystem',
            'AuthenticationException',
            'AuthenticationNotSupportedException',
            'Authenticator', 'Autoscroll', 'AWTError',
            'AWTEvent', 'AWTEventListener',
            'AWTEventMulticaster', 'AWTException',
            'AWTPermission', 'BadKind', 'BadLocationException',
            'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION',
            'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE',
            'BAD_POLICY_VALUE', 'BAD_TYPECODE', 'BandCombineOp',
            'BandedSampleModel', 'BasicArrowButton',
            'BasicAttribute', 'BasicAttributes', 'BasicBorders',
            'BasicBorders.ButtonBorder',
            'BasicBorders.FieldBorder',
            'BasicBorders.MarginBorder',
            'BasicBorders.MenuBarBorder',
            'BasicBorders.RadioButtonBorder',
            'BasicBorders.SplitPaneBorder',
            'BasicBorders.ToggleButtonBorder',
            'BasicButtonListener', 'BasicButtonUI',
            'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI',
            'BasicColorChooserUI', 'BasicComboBoxEditor',
            'BasicComboBoxEditor.UIResource',
            'BasicComboBoxRenderer',
            'BasicComboBoxRenderer.UIResource',
            'BasicComboBoxUI', 'BasicComboPopup',
            'BasicDesktopIconUI', 'BasicDesktopPaneUI',
            'BasicDirectoryModel', 'BasicEditorPaneUI',
            'BasicFileChooserUI', 'BasicGraphicsUtils',
            'BasicHTML', 'BasicIconFactory',
            'BasicInternalFrameTitlePane',
            'BasicInternalFrameUI', 'BasicLabelUI',
            'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI',
            'BasicMenuItemUI', 'BasicMenuUI',
            'BasicOptionPaneUI',
            'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI',
            'BasicPasswordFieldUI', 'BasicPermission',
            'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI',
            'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI',
            'BasicRadioButtonUI', 'BasicRootPaneUI',
            'BasicScrollBarUI', 'BasicScrollPaneUI',
            'BasicSeparatorUI', 'BasicSliderUI',
            'BasicSplitPaneDivider', 'BasicSplitPaneUI',
            'BasicStroke', 'BasicTabbedPaneUI',
            'BasicTableHeaderUI', 'BasicTableUI',
            'BasicTextAreaUI', 'BasicTextFieldUI',
            'BasicTextPaneUI', 'BasicTextUI',
            'BasicTextUI.BasicCaret',
            'BasicTextUI.BasicHighlighter',
            'BasicToggleButtonUI', 'BasicToolBarSeparatorUI',
            'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI',
            'BasicViewportUI', 'BatchUpdateException',
            'BeanContext', 'BeanContextChild',
            'BeanContextChildComponentProxy',
            'BeanContextChildSupport',
            'BeanContextContainerProxy', 'BeanContextEvent',
            'BeanContextMembershipEvent',
            'BeanContextMembershipListener', 'BeanContextProxy',
            'BeanContextServiceAvailableEvent',
            'BeanContextServiceProvider',
            'BeanContextServiceProviderBeanInfo',
            'BeanContextServiceRevokedEvent',
            'BeanContextServiceRevokedListener',
            'BeanContextServices', 'BeanContextServicesListener',
            'BeanContextServicesSupport',
            'BeanContextServicesSupport.BCSSServiceProvider',
            'BeanContextSupport',
            'BeanContextSupport.BCSIterator', 'BeanDescriptor',
            'BeanInfo', 'Beans', 'BevelBorder', 'BigDecimal',
            'BigInteger', 'BinaryRefAddr', 'BindException',
            'Binding', 'BindingHelper', 'BindingHolder',
            'BindingIterator', 'BindingIteratorHelper',
            'BindingIteratorHolder', 'BindingIteratorOperations',
            'BindingListHelper', 'BindingListHolder',
            'BindingType', 'BindingTypeHelper',
            'BindingTypeHolder', 'BitSet', 'Blob', 'BlockView',
            'Book', 'Boolean', 'BooleanControl',
            'BooleanControl.Type', 'BooleanHolder',
            'BooleanSeqHelper', 'BooleanSeqHolder', 'Border',
            'BorderFactory', 'BorderLayout', 'BorderUIResource',
            'BorderUIResource.BevelBorderUIResource',
            'BorderUIResource.CompoundBorderUIResource',
            'BorderUIResource.EmptyBorderUIResource',
            'BorderUIResource.EtchedBorderUIResource',
            'BorderUIResource.LineBorderUIResource',
            'BorderUIResource.MatteBorderUIResource',
            'BorderUIResource.TitledBorderUIResource',
            'BoundedRangeModel', 'Bounds', 'Box', 'Box.Filler',
            'BoxedValueHelper', 'BoxLayout', 'BoxView',
            'BreakIterator', 'BufferedImage',
            'BufferedImageFilter', 'BufferedImageOp',
            'BufferedInputStream', 'BufferedOutputStream',
            'BufferedReader', 'BufferedWriter', 'Button',
            'ButtonGroup', 'ButtonModel', 'ButtonUI', 'Byte',
            'ByteArrayInputStream', 'ByteArrayOutputStream',
            'ByteHolder', 'ByteLookupTable', 'Calendar',
            'CallableStatement', 'CannotProceed',
            'CannotProceedException', 'CannotProceedHelper',
            'CannotProceedHolder', 'CannotRedoException',
            'CannotUndoException', 'Canvas', 'CardLayout',
            'Caret', 'CaretEvent', 'CaretListener', 'CellEditor',
            'CellEditorListener', 'CellRendererPane',
            'Certificate', 'Certificate.CertificateRep',
            'CertificateEncodingException',
            'CertificateException',
            'CertificateExpiredException', 'CertificateFactory',
            'CertificateFactorySpi',
            'CertificateNotYetValidException',
            'CertificateParsingException',
            'ChangedCharSetException', 'ChangeEvent',
            'ChangeListener', 'Character', 'Character.Subset',
            'Character.UnicodeBlock', 'CharacterIterator',
            'CharArrayReader', 'CharArrayWriter',
            'CharConversionException', 'CharHolder',
            'CharSeqHelper', 'CharSeqHolder', 'Checkbox',
            'CheckboxGroup', 'CheckboxMenuItem',
            'CheckedInputStream', 'CheckedOutputStream',
            'Checksum', 'Choice', 'ChoiceFormat', 'Class',
            'ClassCastException', 'ClassCircularityError',
            'ClassDesc', 'ClassFormatError', 'ClassLoader',
            'ClassNotFoundException', 'Clip', 'Clipboard',
            'ClipboardOwner', 'Clob', 'Cloneable',
            'CloneNotSupportedException', 'CMMException',
            'CodeSource', 'CollationElementIterator',
            'CollationKey', 'Collator', 'Collection',
            'Collections', 'Color',
            'ColorChooserComponentFactory', 'ColorChooserUI',
            'ColorConvertOp', 'ColorModel',
            'ColorSelectionModel', 'ColorSpace',
            'ColorUIResource', 'ComboBoxEditor', 'ComboBoxModel',
            'ComboBoxUI', 'ComboPopup', 'CommunicationException',
            'COMM_FAILURE', 'Comparable', 'Comparator',
            'Compiler', 'CompletionStatus',
            'CompletionStatusHelper', 'Component',
            'ComponentAdapter', 'ComponentColorModel',
            'ComponentEvent', 'ComponentInputMap',
            'ComponentInputMapUIResource', 'ComponentListener',
            'ComponentOrientation', 'ComponentSampleModel',
            'ComponentUI', 'ComponentView', 'Composite',
            'CompositeContext', 'CompositeName', 'CompositeView',
            'CompoundBorder', 'CompoundControl',
            'CompoundControl.Type', 'CompoundEdit',
            'CompoundName', 'ConcurrentModificationException',
            'ConfigurationException', 'ConnectException',
            'ConnectIOException', 'Connection', 'Constructor', 'Container',
            'ContainerAdapter', 'ContainerEvent',
            'ContainerListener', 'ContentHandler',
            'ContentHandlerFactory', 'ContentModel', 'Context',
            'ContextList', 'ContextNotEmptyException',
            'ContextualRenderedImageFactory', 'Control',
            'Control.Type', 'ControlFactory',
            'ControllerEventListener', 'ConvolveOp', 'CRC32',
            'CRL', 'CRLException', 'CropImageFilter', 'CSS',
            'CSS.Attribute', 'CTX_RESTRICT_SCOPE',
            'CubicCurve2D', 'CubicCurve2D.Double',
            'CubicCurve2D.Float', 'Current', 'CurrentHelper',
            'CurrentHolder', 'CurrentOperations', 'Cursor',
            'Customizer', 'CustomMarshal', 'CustomValue',
            'DatabaseMetaData', 'DataBuffer', 'DataBufferByte',
            'DataBufferInt', 'DataBufferShort',
            'DataBufferUShort', 'DataFlavor',
            'DataFormatException', 'DatagramPacket',
            'DatagramSocket', 'DatagramSocketImpl',
            'DatagramSocketImplFactory', 'DataInput',
            'DataInputStream', 'DataLine', 'DataLine.Info',
            'DataOutput', 'DataOutputStream',
            'DataTruncation', 'DATA_CONVERSION', 'Date',
            'DateFormat', 'DateFormatSymbols', 'DebugGraphics',
            'DecimalFormat', 'DecimalFormatSymbols',
            'DefaultBoundedRangeModel', 'DefaultButtonModel',
            'DefaultCaret', 'DefaultCellEditor',
            'DefaultColorSelectionModel', 'DefaultComboBoxModel',
            'DefaultDesktopManager', 'DefaultEditorKit',
            'DefaultEditorKit.BeepAction',
            'DefaultEditorKit.CopyAction',
            'DefaultEditorKit.CutAction',
            'DefaultEditorKit.DefaultKeyTypedAction',
            'DefaultEditorKit.InsertBreakAction',
            'DefaultEditorKit.InsertContentAction',
            'DefaultEditorKit.InsertTabAction',
            'DefaultEditorKit.PasteAction,',
            'DefaultFocusManager', 'DefaultHighlighter',
            'DefaultHighlighter.DefaultHighlightPainter',
            'DefaultListCellRenderer',
            'DefaultListCellRenderer.UIResource',
            'DefaultListModel', 'DefaultListSelectionModel',
            'DefaultMenuLayout', 'DefaultMetalTheme',
            'DefaultMutableTreeNode',
            'DefaultSingleSelectionModel',
            'DefaultStyledDocument',
            'DefaultStyledDocument.AttributeUndoableEdit',
            'DefaultStyledDocument.ElementSpec',
            'DefaultTableCellRenderer',
            'DefaultTableCellRenderer.UIResource',
            'DefaultTableColumnModel', 'DefaultTableModel',
            'DefaultTextUI', 'DefaultTreeCellEditor',
            'DefaultTreeCellRenderer', 'DefaultTreeModel',
            'DefaultTreeSelectionModel', 'DefinitionKind',
            'DefinitionKindHelper', 'Deflater',
            'DeflaterOutputStream', 'Delegate', 'DesignMode',
            'DesktopIconUI', 'DesktopManager', 'DesktopPaneUI',
            'DGC', 'Dialog', 'Dictionary', 'DigestException',
            'DigestInputStream', 'DigestOutputStream',
            'Dimension', 'Dimension2D', 'DimensionUIResource',
            'DirContext', 'DirectColorModel', 'DirectoryManager',
            'DirObjectFactory', 'DirStateFactory',
            'DirStateFactory.Result', 'DnDConstants', 'Document',
            'DocumentEvent', 'DocumentEvent.ElementChange',
            'DocumentEvent.EventType', 'DocumentListener',
            'DocumentParser', 'DomainCombiner', 'DomainManager',
            'DomainManagerOperations', 'Double', 'DoubleHolder',
            'DoubleSeqHelper', 'DoubleSeqHolder',
            'DragGestureEvent', 'DragGestureListener',
            'DragGestureRecognizer', 'DragSource',
            'DragSourceContext', 'DragSourceDragEvent',
            'DragSourceDropEvent', 'DragSourceEvent',
            'DragSourceListener', 'Driver', 'DriverManager',
            'DriverPropertyInfo', 'DropTarget',
            'DropTarget.DropTargetAutoScroller',
            'DropTargetContext', 'DropTargetDragEvent',
            'DropTargetDropEvent', 'DropTargetEvent',
            'DropTargetListener', 'DSAKey',
            'DSAKeyPairGenerator', 'DSAParameterSpec',
            'DSAParams', 'DSAPrivateKey', 'DSAPrivateKeySpec',
            'DSAPublicKey', 'DSAPublicKeySpec', 'DTD',
            'DTDConstants', 'DynamicImplementation', 'DynAny',
            'DynArray', 'DynEnum', 'DynFixed', 'DynSequence',
            'DynStruct', 'DynUnion', 'DynValue', 'EditorKit',
            'Element', 'ElementIterator', 'Ellipse2D',
            'Ellipse2D.Double', 'Ellipse2D.Float', 'EmptyBorder',
            'EmptyStackException', 'EncodedKeySpec', 'Entity',
            'EnumControl', 'EnumControl.Type', 'Enumeration',
            'Environment', 'EOFException', 'Error',
            'EtchedBorder', 'Event', 'EventContext',
            'EventDirContext', 'EventListener',
            'EventListenerList', 'EventObject', 'EventQueue',
            'EventSetDescriptor', 'Exception',
            'ExceptionInInitializerError', 'ExceptionList',
            'ExpandVetoException', 'ExportException',
            'ExtendedRequest', 'ExtendedResponse',
            'Externalizable', 'FeatureDescriptor', 'Field',
            'FieldNameHelper', 'FieldPosition', 'FieldView',
            'File', 'FileChooserUI', 'FileDescriptor',
            'FileDialog', 'FileFilter',
            'FileInputStream', 'FilenameFilter', 'FileNameMap',
            'FileNotFoundException', 'FileOutputStream',
            'FilePermission', 'FileReader', 'FileSystemView',
            'FileView', 'FileWriter', 'FilteredImageSource',
            'FilterInputStream', 'FilterOutputStream',
            'FilterReader', 'FilterWriter',
            'FixedHeightLayoutCache', 'FixedHolder',
            'FlatteningPathIterator', 'FlavorMap', 'Float',
            'FloatControl', 'FloatControl.Type', 'FloatHolder',
            'FloatSeqHelper', 'FloatSeqHolder', 'FlowLayout',
            'FlowView', 'FlowView.FlowStrategy', 'FocusAdapter',
            'FocusEvent', 'FocusListener', 'FocusManager',
            'Font', 'FontFormatException', 'FontMetrics',
            'FontRenderContext', 'FontUIResource', 'Format',
            'FormatConversionProvider', 'FormView', 'Frame',
            'FREE_MEM', 'GapContent', 'GeneralPath',
            'GeneralSecurityException', 'GlyphJustificationInfo',
            'GlyphMetrics', 'GlyphVector', 'GlyphView',
            'GlyphView.GlyphPainter', 'GradientPaint',
            'GraphicAttribute', 'Graphics', 'Graphics2D',
            'GraphicsConfigTemplate', 'GraphicsConfiguration',
            'GraphicsDevice', 'GraphicsEnvironment',
            'GrayFilter', 'GregorianCalendar',
            'GridBagConstraints', 'GridBagLayout', 'GridLayout',
            'Group', 'Guard', 'GuardedObject', 'GZIPInputStream',
            'GZIPOutputStream', 'HasControls', 'HashMap',
            'HashSet', 'Hashtable', 'HierarchyBoundsAdapter',
            'HierarchyBoundsListener', 'HierarchyEvent',
            'HierarchyListener', 'Highlighter',
            'Highlighter.Highlight',
            'Highlighter.HighlightPainter', 'HTML',
            'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag',
            'HTMLDocument', 'HTMLDocument.Iterator',
            'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory',
            'HTMLEditorKit.HTMLTextAction',
            'HTMLEditorKit.InsertHTMLTextAction',
            'HTMLEditorKit.LinkController',
            'HTMLEditorKit.Parser',
            'HTMLEditorKit.ParserCallback',
            'HTMLFrameHyperlinkEvent', 'HTMLWriter',
            'HttpURLConnection', 'HyperlinkEvent',
            'HyperlinkEvent.EventType', 'HyperlinkListener',
            'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray',
            'ICC_ProfileRGB', 'Icon', 'IconUIResource',
            'IconView', 'IdentifierHelper', 'Identity',
            'IdentityScope', 'IDLEntity', 'IDLType',
            'IDLTypeHelper', 'IDLTypeOperations',
            'IllegalAccessError', 'IllegalAccessException',
            'IllegalArgumentException',
            'IllegalComponentStateException',
            'IllegalMonitorStateException',
            'IllegalPathStateException', 'IllegalStateException',
            'IllegalThreadStateException', 'Image',
            'ImageConsumer', 'ImageFilter',
            'ImageGraphicAttribute', 'ImageIcon',
            'ImageObserver', 'ImageProducer',
            'ImagingOpException', 'IMP_LIMIT',
            'IncompatibleClassChangeError',
            'InconsistentTypeCode', 'IndexColorModel',
            'IndexedPropertyDescriptor',
            'IndexOutOfBoundsException', 'IndirectionException',
            'InetAddress', 'Inflater', 'InflaterInputStream',
            'InheritableThreadLocal', 'InitialContext',
            'InitialContextFactory',
            'InitialContextFactoryBuilder', 'InitialDirContext',
            'INITIALIZE', 'Initializer', 'InitialLdapContext',
            'InlineView', 'InputContext', 'InputEvent',
            'InputMap', 'InputMapUIResource', 'InputMethod',
            'InputMethodContext', 'InputMethodDescriptor',
            'InputMethodEvent', 'InputMethodHighlight',
            'InputMethodListener', 'InputMethodRequests',
            'InputStream',
            'InputStreamReader', 'InputSubset', 'InputVerifier',
            'Insets', 'InsetsUIResource', 'InstantiationError',
            'InstantiationException', 'Instrument',
            'InsufficientResourcesException', 'Integer',
            'INTERNAL', 'InternalError', 'InternalFrameAdapter',
            'InternalFrameEvent', 'InternalFrameListener',
            'InternalFrameUI', 'InterruptedException',
            'InterruptedIOException',
            'InterruptedNamingException', 'INTF_REPOS',
            'IntHolder', 'IntrospectionException',
            'Introspector', 'Invalid',
            'InvalidAlgorithmParameterException',
            'InvalidAttributeIdentifierException',
            'InvalidAttributesException',
            'InvalidAttributeValueException',
            'InvalidClassException',
            'InvalidDnDOperationException',
            'InvalidKeyException', 'InvalidKeySpecException',
            'InvalidMidiDataException', 'InvalidName',
            'InvalidNameException',
            'InvalidNameHelper', 'InvalidNameHolder',
            'InvalidObjectException',
            'InvalidParameterException',
            'InvalidParameterSpecException',
            'InvalidSearchControlsException',
            'InvalidSearchFilterException', 'InvalidSeq',
            'InvalidTransactionException', 'InvalidValue',
            'INVALID_TRANSACTION', 'InvocationEvent',
            'InvocationHandler', 'InvocationTargetException',
            'InvokeHandler', 'INV_FLAG', 'INV_IDENT',
            'INV_OBJREF', 'INV_POLICY', 'IOException',
            'IRObject', 'IRObjectOperations', 'IstringHelper',
            'ItemEvent', 'ItemListener', 'ItemSelectable',
            'Iterator', 'JApplet', 'JarEntry', 'JarException',
            'JarFile', 'JarInputStream', 'JarOutputStream',
            'JarURLConnection', 'JButton', 'JCheckBox',
            'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox',
            'JComboBox.KeySelectionManager', 'JComponent',
            'JDesktopPane', 'JDialog', 'JEditorPane',
            'JFileChooser', 'JFrame', 'JInternalFrame',
            'JInternalFrame.JDesktopIcon', 'JLabel',
            'JLayeredPane', 'JList', 'JMenu', 'JMenuBar',
            'JMenuItem', 'JobAttributes',
            'JobAttributes.DefaultSelectionType',
            'JobAttributes.DestinationType',
            'JobAttributes.DialogType',
            'JobAttributes.MultipleDocumentHandlingType',
            'JobAttributes.SidesType', 'JOptionPane', 'JPanel',
            'JPasswordField', 'JPopupMenu',
            'JPopupMenu.Separator', 'JProgressBar',
            'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane',
            'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider',
            'JSplitPane', 'JTabbedPane', 'JTable',
            'JTableHeader', 'JTextArea', 'JTextComponent',
            'JTextComponent.KeyBinding', 'JTextField',
            'JTextPane', 'JToggleButton',
            'JToggleButton.ToggleButtonModel', 'JToolBar',
            'JToolBar.Separator', 'JToolTip', 'JTree',
            'JTree.DynamicUtilTreeNode',
            'JTree.EmptySelectionModel', 'JViewport', 'JWindow',
            'Kernel', 'Key', 'KeyAdapter', 'KeyEvent',
            'KeyException', 'KeyFactory', 'KeyFactorySpi',
            'KeyListener', 'KeyManagementException', 'Keymap',
            'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi',
            'KeySpec', 'KeyStore', 'KeyStoreException',
            'KeyStoreSpi', 'KeyStroke', 'Label', 'LabelUI',
            'LabelView', 'LastOwnerException',
            'LayeredHighlighter',
            'LayeredHighlighter.LayerPainter', 'LayoutManager',
            'LayoutManager2', 'LayoutQueue', 'LdapContext',
            'LdapReferralException', 'Lease',
            'LimitExceededException', 'Line', 'Line.Info',
            'Line2D', 'Line2D.Double', 'Line2D.Float',
            'LineBorder', 'LineBreakMeasurer', 'LineEvent',
            'LineEvent.Type', 'LineListener', 'LineMetrics',
            'LineNumberInputStream', 'LineNumberReader',
            'LineUnavailableException', 'LinkageError',
            'LinkedList', 'LinkException', 'LinkLoopException',
            'LinkRef', 'List', 'ListCellRenderer',
            'ListDataEvent', 'ListDataListener', 'ListIterator',
            'ListModel', 'ListResourceBundle',
            'ListSelectionEvent', 'ListSelectionListener',
            'ListSelectionModel', 'ListUI', 'ListView',
            'LoaderHandler', 'Locale', 'LocateRegistry',
            'LogStream', 'Long', 'LongHolder',
            'LongLongSeqHelper', 'LongLongSeqHolder',
            'LongSeqHelper', 'LongSeqHolder', 'LookAndFeel',
            'LookupOp', 'LookupTable', 'MalformedLinkException',
            'MalformedURLException', 'Manifest', 'Map',
            'Map.Entry', 'MARSHAL', 'MarshalException',
            'MarshalledObject', 'Math', 'MatteBorder',
            'MediaTracker', 'Member', 'MemoryImageSource',
            'Menu', 'MenuBar', 'MenuBarUI', 'MenuComponent',
            'MenuContainer', 'MenuDragMouseEvent',
            'MenuDragMouseListener', 'MenuElement', 'MenuEvent',
            'MenuItem', 'MenuItemUI', 'MenuKeyEvent',
            'MenuKeyListener', 'MenuListener',
            'MenuSelectionManager', 'MenuShortcut',
            'MessageDigest', 'MessageDigestSpi', 'MessageFormat',
            'MetaEventListener', 'MetalBorders',
            'MetalBorders.ButtonBorder',
            'MetalBorders.Flush3DBorder',
            'MetalBorders.InternalFrameBorder',
            'MetalBorders.MenuBarBorder',
            'MetalBorders.MenuItemBorder',
            'MetalBorders.OptionDialogBorder',
            'MetalBorders.PaletteBorder',
            'MetalBorders.PopupMenuBorder',
            'MetalBorders.RolloverButtonBorder',
            'MetalBorders.ScrollPaneBorder',
            'MetalBorders.TableHeaderBorder',
            'MetalBorders.TextFieldBorder',
            'MetalBorders.ToggleButtonBorder',
            'MetalBorders.ToolBarBorder', 'MetalButtonUI',
            'MetalCheckBoxIcon', 'MetalCheckBoxUI',
            'MetalComboBoxButton', 'MetalComboBoxEditor',
            'MetalComboBoxEditor.UIResource',
            'MetalComboBoxIcon', 'MetalComboBoxUI',
            'MetalDesktopIconUI', 'MetalFileChooserUI',
            'MetalIconFactory', 'MetalIconFactory.FileIcon16',
            'MetalIconFactory.FolderIcon16',
            'MetalIconFactory.PaletteCloseIcon',
            'MetalIconFactory.TreeControlIcon',
            'MetalIconFactory.TreeFolderIcon',
            'MetalIconFactory.TreeLeafIcon',
            'MetalInternalFrameTitlePane',
            'MetalInternalFrameUI', 'MetalLabelUI',
            'MetalLookAndFeel', 'MetalPopupMenuSeparatorUI',
            'MetalProgressBarUI', 'MetalRadioButtonUI',
            'MetalScrollBarUI', 'MetalScrollButton',
            'MetalScrollPaneUI', 'MetalSeparatorUI',
            'MetalSliderUI', 'MetalSplitPaneUI',
            'MetalTabbedPaneUI', 'MetalTextFieldUI',
            'MetalTheme', 'MetalToggleButtonUI',
            'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI',
            'MetaMessage', 'Method', 'MethodDescriptor',
            'MidiChannel', 'MidiDevice', 'MidiDevice.Info',
            'MidiDeviceProvider', 'MidiEvent', 'MidiFileFormat',
            'MidiFileReader', 'MidiFileWriter', 'MidiMessage',
            'MidiSystem', 'MidiUnavailableException',
            'MimeTypeParseException', 'MinimalHTMLWriter',
            'MissingResourceException', 'Mixer', 'Mixer.Info',
            'MixerProvider', 'ModificationItem', 'Modifier',
            'MouseAdapter', 'MouseDragGestureRecognizer',
            'MouseEvent', 'MouseInputAdapter',
            'MouseInputListener', 'MouseListener',
            'MouseMotionAdapter', 'MouseMotionListener',
            'MultiButtonUI', 'MulticastSocket',
            'MultiColorChooserUI', 'MultiComboBoxUI',
            'MultiDesktopIconUI', 'MultiDesktopPaneUI',
            'MultiFileChooserUI', 'MultiInternalFrameUI',
            'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel',
            'MultiMenuBarUI', 'MultiMenuItemUI',
            'MultiOptionPaneUI', 'MultiPanelUI',
            'MultiPixelPackedSampleModel', 'MultipleMaster',
            'MultiPopupMenuUI', 'MultiProgressBarUI',
            'MultiScrollBarUI', 'MultiScrollPaneUI',
            'MultiSeparatorUI', 'MultiSliderUI',
            'MultiSplitPaneUI', 'MultiTabbedPaneUI',
            'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI',
            'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI',
            'MultiViewportUI', 'MutableAttributeSet',
            'MutableComboBoxModel', 'MutableTreeNode', 'Name',
            'NameAlreadyBoundException', 'NameClassPair',
            'NameComponent', 'NameComponentHelper',
            'NameComponentHolder', 'NamedValue', 'NameHelper',
            'NameHolder', 'NameNotFoundException', 'NameParser',
            'NamespaceChangeListener', 'NameValuePair',
            'NameValuePairHelper', 'Naming', 'NamingContext',
            'NamingContextHelper', 'NamingContextHolder',
            'NamingContextOperations', 'NamingEnumeration',
            'NamingEvent', 'NamingException',
            'NamingExceptionEvent', 'NamingListener',
            'NamingManager', 'NamingSecurityException',
            'NegativeArraySizeException', 'NetPermission',
            'NoClassDefFoundError', 'NoInitialContextException',
            'NoninvertibleTransformException',
            'NoPermissionException', 'NoRouteToHostException',
            'NoSuchAlgorithmException',
            'NoSuchAttributeException', 'NoSuchElementException',
            'NoSuchFieldError', 'NoSuchFieldException',
            'NoSuchMethodError', 'NoSuchMethodException',
            'NoSuchObjectException', 'NoSuchProviderException',
            'NotActiveException', 'NotBoundException',
            'NotContextException', 'NotEmpty', 'NotEmptyHelper',
            'NotEmptyHolder', 'NotFound', 'NotFoundHelper',
            'NotFoundHolder', 'NotFoundReason',
            'NotFoundReasonHelper', 'NotFoundReasonHolder',
            'NotOwnerException', 'NotSerializableException',
            'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION',
            'NO_RESOURCES', 'NO_RESPONSE',
            'NullPointerException', 'Number', 'NumberFormat',
            'NumberFormatException', 'NVList', 'Object',
            'ObjectChangeListener', 'ObjectFactory',
            'ObjectFactoryBuilder', 'ObjectHelper',
            'ObjectHolder', 'ObjectImpl',
            'ObjectInput', 'ObjectInputStream',
            'ObjectInputStream.GetField',
            'ObjectInputValidation', 'ObjectOutput',
            'ObjectOutputStream', 'ObjectOutputStream.PutField',
            'ObjectStreamClass', 'ObjectStreamConstants',
            'ObjectStreamException', 'ObjectStreamField',
            'ObjectView', 'OBJECT_NOT_EXIST', 'ObjID',
            'OBJ_ADAPTER', 'Observable', 'Observer',
            'OctetSeqHelper', 'OctetSeqHolder', 'OMGVMCID',
            'OpenType', 'Operation',
            'OperationNotSupportedException', 'Option',
            'OptionalDataException', 'OptionPaneUI', 'ORB',
            'OutOfMemoryError', 'OutputStream',
            'OutputStreamWriter', 'OverlayLayout', 'Owner',
            'Package', 'PackedColorModel', 'Pageable',
            'PageAttributes', 'PageAttributes.ColorType',
            'PageAttributes.MediaType',
            'PageAttributes.OrientationRequestedType',
            'PageAttributes.OriginType',
            'PageAttributes.PrintQualityType', 'PageFormat',
            'Paint', 'PaintContext', 'PaintEvent', 'Panel',
            'PanelUI', 'Paper', 'ParagraphView',
            'ParameterBlock', 'ParameterDescriptor',
            'ParseException', 'ParsePosition', 'Parser',
            'ParserDelegator', 'PartialResultException',
            'PasswordAuthentication', 'PasswordView', 'Patch',
            'PathIterator', 'Permission',
            'PermissionCollection', 'Permissions',
            'PERSIST_STORE', 'PhantomReference',
            'PipedInputStream', 'PipedOutputStream',
            'PipedReader', 'PipedWriter', 'PixelGrabber',
            'PixelInterleavedSampleModel', 'PKCS8EncodedKeySpec',
            'PlainDocument', 'PlainView', 'Point', 'Point2D',
            'Point2D.Double', 'Point2D.Float', 'Policy',
            'PolicyError', 'PolicyHelper',
            'PolicyHolder', 'PolicyListHelper',
            'PolicyListHolder', 'PolicyOperations',
            'PolicyTypeHelper', 'Polygon', 'PopupMenu',
            'PopupMenuEvent', 'PopupMenuListener', 'PopupMenuUI',
            'Port', 'Port.Info', 'PortableRemoteObject',
            'PortableRemoteObjectDelegate', 'Position',
            'Position.Bias', 'PreparedStatement', 'Principal',
            'PrincipalHolder', 'Printable',
            'PrinterAbortException', 'PrinterException',
            'PrinterGraphics', 'PrinterIOException',
            'PrinterJob', 'PrintGraphics', 'PrintJob',
            'PrintStream', 'PrintWriter', 'PrivateKey',
            'PRIVATE_MEMBER', 'PrivilegedAction',
            'PrivilegedActionException',
            'PrivilegedExceptionAction', 'Process',
            'ProfileDataException', 'ProgressBarUI',
            'ProgressMonitor', 'ProgressMonitorInputStream',
            'Properties', 'PropertyChangeEvent',
            'PropertyChangeListener', 'PropertyChangeSupport',
            'PropertyDescriptor', 'PropertyEditor',
            'PropertyEditorManager', 'PropertyEditorSupport',
            'PropertyPermission', 'PropertyResourceBundle',
            'PropertyVetoException', 'ProtectionDomain',
            'ProtocolException', 'Provider', 'ProviderException',
            'Proxy', 'PublicKey', 'PUBLIC_MEMBER',
            'PushbackInputStream', 'PushbackReader',
            'QuadCurve2D', 'QuadCurve2D.Double',
            'QuadCurve2D.Float', 'Random', 'RandomAccessFile',
            'Raster', 'RasterFormatException', 'RasterOp',
            'Reader', 'Receiver', 'Rectangle', 'Rectangle2D',
            'Rectangle2D.Double', 'Rectangle2D.Float',
            'RectangularShape', 'Ref', 'RefAddr', 'Reference',
            'Referenceable', 'ReferenceQueue',
            'ReferralException', 'ReflectPermission', 'Registry',
            'RegistryHandler', 'RemarshalException', 'Remote',
            'RemoteCall', 'RemoteException', 'RemoteObject',
            'RemoteRef', 'RemoteServer', 'RemoteStub',
            'RenderableImage', 'RenderableImageOp',
            'RenderableImageProducer', 'RenderContext',
            'RenderedImage', 'RenderedImageFactory', 'Renderer',
            'RenderingHints', 'RenderingHints.Key',
            'RepaintManager', 'ReplicateScaleFilter',
            'Repository', 'RepositoryIdHelper', 'Request',
            'RescaleOp', 'Resolver', 'ResolveResult',
            'ResourceBundle', 'ResponseHandler', 'ResultSet',
            'ResultSetMetaData', 'ReverbType', 'RGBImageFilter',
            'RMIClassLoader', 'RMIClientSocketFactory',
            'RMIFailureHandler', 'RMISecurityException',
            'RMISecurityManager', 'RMIServerSocketFactory',
            'RMISocketFactory', 'Robot', 'RootPaneContainer',
            'RootPaneUI', 'RoundRectangle2D',
            'RoundRectangle2D.Double', 'RoundRectangle2D.Float',
            'RowMapper', 'RSAKey', 'RSAKeyGenParameterSpec',
            'RSAPrivateCrtKey', 'RSAPrivateCrtKeySpec',
            'RSAPrivateKey', 'RSAPrivateKeySpec', 'RSAPublicKey',
            'RSAPublicKeySpec', 'RTFEditorKit',
            'RuleBasedCollator', 'Runnable', 'RunTime',
            'Runtime', 'RuntimeException', 'RunTimeOperations',
            'RuntimePermission', 'SampleModel',
            'SchemaViolationException', 'Scrollable',
            'Scrollbar', 'ScrollBarUI', 'ScrollPane',
            'ScrollPaneConstants', 'ScrollPaneLayout',
            'ScrollPaneLayout.UIResource', 'ScrollPaneUI',
            'SearchControls', 'SearchResult',
            'SecureClassLoader', 'SecureRandom',
            'SecureRandomSpi', 'Security', 'SecurityException',
            'SecurityManager', 'SecurityPermission', 'Segment',
            'SeparatorUI', 'Sequence', 'SequenceInputStream',
            'Sequencer', 'Sequencer.SyncMode', 'Serializable',
            'SerializablePermission', 'ServantObject',
            'ServerCloneException', 'ServerError',
            'ServerException', 'ServerNotActiveException',
            'ServerRef', 'ServerRequest',
            'ServerRuntimeException', 'ServerSocket',
            'ServiceDetail', 'ServiceDetailHelper',
            'ServiceInformation', 'ServiceInformationHelper',
            'ServiceInformationHolder',
            'ServiceUnavailableException', 'Set',
            'SetOverrideType', 'SetOverrideTypeHelper', 'Shape',
            'ShapeGraphicAttribute', 'Short', 'ShortHolder',
            'ShortLookupTable', 'ShortMessage', 'ShortSeqHelper',
            'ShortSeqHolder', 'Signature', 'SignatureException',
            'SignatureSpi', 'SignedObject', 'Signer',
            'SimpleAttributeSet', 'SimpleBeanInfo',
            'SimpleDateFormat', 'SimpleTimeZone',
            'SinglePixelPackedSampleModel',
            'SingleSelectionModel', 'SizeLimitExceededException',
            'SizeRequirements', 'SizeSequence', 'Skeleton',
            'SkeletonMismatchException',
            'SkeletonNotFoundException', 'SliderUI', 'Socket',
            'SocketException', 'SocketImpl', 'SocketImplFactory',
            'SocketOptions', 'SocketPermission',
            'SocketSecurityException', 'SoftBevelBorder',
            'SoftReference', 'SortedMap', 'SortedSet',
            'Soundbank', 'SoundbankReader', 'SoundbankResource',
            'SourceDataLine', 'SplitPaneUI', 'SQLData',
            'SQLException', 'SQLInput', 'SQLOutput',
            'SQLPermission', 'SQLWarning', 'Stack',
            'StackOverflowError', 'StateEdit', 'StateEditable',
            'StateFactory', 'Statement', 'Streamable',
            'StreamableValue', 'StreamCorruptedException',
            'StreamTokenizer', 'StrictMath', 'String',
            'StringBuffer', 'StringBufferInputStream',
            'StringCharacterIterator', 'StringContent',
            'StringHolder', 'StringIndexOutOfBoundsException',
            'StringReader', 'StringRefAddr', 'StringSelection',
            'StringTokenizer', 'StringValueHelper',
            'StringWriter', 'Stroke', 'Struct', 'StructMember',
            'StructMemberHelper', 'Stub', 'StubDelegate',
            'StubNotFoundException', 'Style', 'StyleConstants',
            'StyleConstants.CharacterConstants',
            'StyleConstants.ColorConstants',
            'StyleConstants.FontConstants',
            'StyleConstants.ParagraphConstants', 'StyleContext',
            'StyledDocument', 'StyledEditorKit',
            'StyledEditorKit.AlignmentAction',
            'StyledEditorKit.BoldAction',
            'StyledEditorKit.FontFamilyAction',
            'StyledEditorKit.FontSizeAction',
            'StyledEditorKit.ForegroundAction',
            'StyledEditorKit.ItalicAction',
            'StyledEditorKit.StyledTextAction',
            'StyledEditorKit.UnderlineAction', 'StyleSheet',
            'StyleSheet.BoxPainter', 'StyleSheet.ListPainter',
            'SwingConstants', 'SwingPropertyChangeSupport',
            'SwingUtilities', 'SyncFailedException',
            'Synthesizer', 'SysexMessage', 'System',
            'SystemColor', 'SystemException', 'SystemFlavorMap',
            'TabableView', 'TabbedPaneUI', 'TabExpander',
            'TableCellEditor', 'TableCellRenderer',
            'TableColumn', 'TableColumnModel',
            'TableColumnModelEvent', 'TableColumnModelListener',
            'TableHeaderUI', 'TableModel', 'TableModelEvent',
            'TableModelListener', 'TableUI', 'TableView',
            'TabSet', 'TabStop', 'TagElement', 'TargetDataLine',
            'TCKind', 'TextAction', 'TextArea', 'TextAttribute',
            'TextComponent', 'TextEvent', 'TextField',
            'TextHitInfo', 'TextLayout',
            'TextLayout.CaretPolicy', 'TextListener',
            'TextMeasurer', 'TextUI', 'TexturePaint', 'Thread',
            'ThreadDeath', 'ThreadGroup', 'ThreadLocal',
            'Throwable', 'Tie', 'TileObserver', 'Time',
            'TimeLimitExceededException', 'Timer',
            'TimerTask', 'Timestamp', 'TimeZone', 'TitledBorder',
            'ToolBarUI', 'Toolkit', 'ToolTipManager',
            'ToolTipUI', 'TooManyListenersException', 'Track',
            'TransactionRequiredException',
            'TransactionRolledbackException',
            'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK',
            'Transferable', 'TransformAttribute', 'TRANSIENT',
            'Transmitter', 'Transparency', 'TreeCellEditor',
            'TreeCellRenderer', 'TreeExpansionEvent',
            'TreeExpansionListener', 'TreeMap', 'TreeModel',
            'TreeModelEvent', 'TreeModelListener', 'TreeNode',
            'TreePath', 'TreeSelectionEvent',
            'TreeSelectionListener', 'TreeSelectionModel',
            'TreeSet', 'TreeUI', 'TreeWillExpandListener',
            'TypeCode', 'TypeCodeHolder', 'TypeMismatch',
            'Types', 'UID', 'UIDefaults',
            'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap',
            'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue',
            'UIManager', 'UIManager.LookAndFeelInfo',
            'UIResource', 'ULongLongSeqHelper',
            'ULongLongSeqHolder', 'ULongSeqHelper',
            'ULongSeqHolder', 'UndeclaredThrowableException',
            'UndoableEdit', 'UndoableEditEvent',
            'UndoableEditListener', 'UndoableEditSupport',
            'UndoManager', 'UnexpectedException',
            'UnicastRemoteObject', 'UnionMember',
            'UnionMemberHelper', 'UNKNOWN', 'UnknownError',
            'UnknownException', 'UnknownGroupException',
            'UnknownHostException',
            'UnknownObjectException', 'UnknownServiceException',
            'UnknownUserException', 'UnmarshalException',
            'UnrecoverableKeyException', 'Unreferenced',
            'UnresolvedPermission', 'UnsatisfiedLinkError',
            'UnsolicitedNotification',
            'UnsolicitedNotificationEvent',
            'UnsolicitedNotificationListener',
            'UnsupportedAudioFileException',
            'UnsupportedClassVersionError',
            'UnsupportedEncodingException',
            'UnsupportedFlavorException',
            'UnsupportedLookAndFeelException',
            'UnsupportedOperationException',
            'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE',
            'URL', 'URLClassLoader', 'URLConnection',
            'URLDecoder', 'URLEncoder', 'URLStreamHandler',
            'URLStreamHandlerFactory', 'UserException',
            'UShortSeqHelper', 'UShortSeqHolder',
            'UTFDataFormatException', 'Util', 'UtilDelegate',
            'Utilities', 'ValueBase', 'ValueBaseHelper',
            'ValueBaseHolder', 'ValueFactory', 'ValueHandler',
            'ValueMember', 'ValueMemberHelper',
            'VariableHeightLayoutCache', 'Vector', 'VerifyError',
            'VersionSpecHelper', 'VetoableChangeListener',
            'VetoableChangeSupport', 'View', 'ViewFactory',
            'ViewportLayout', 'ViewportUI',
            'VirtualMachineError', 'Visibility',
            'VisibilityHelper', 'VMID', 'VM_ABSTRACT',
            'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE',
            'VoiceStatus', 'Void', 'WCharSeqHelper',
            'WCharSeqHolder', 'WeakHashMap', 'WeakReference',
            'Window', 'WindowAdapter', 'WindowConstants',
            'WindowEvent', 'WindowListener', 'WrappedPlainView',
            'WritableRaster', 'WritableRenderedImage',
            'WriteAbortedException', 'Writer',
            'WrongTransaction', 'WStringValueHelper',
            'X509Certificate', 'X509CRL', 'X509CRLEntry',
            'X509EncodedKeySpec', 'X509Extension', 'ZipEntry',
            'ZipException', 'ZipFile', 'ZipInputStream',
            'ZipOutputStream', 'ZoneView',
            '_BindingIteratorImplBase', '_BindingIteratorStub',
            '_IDLTypeStub', '_NamingContextImplBase',
            '_NamingContextStub', '_PolicyStub', '_Remote_Stub'
            ),
        4 => array(
            'void', 'double', 'int', 'boolean', 'byte', 'short', 'long', 'char', 'float'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}',
        '+', '-', '*', '/', '%',
        '!', '&', '|', '^',
        '<', '>', '=',
        '?', ':', ';',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000066; font-weight: bold;',
            3 => 'color: #003399;',
            4 => 'color: #000066; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #006699;',
            3 => 'color: #008000; font-style: italic; font-weight: bold;',
            3 => 'color: #008000; font-style: italic; font-weight: bold;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006633;',
            2 => 'color: #006633;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+{FNAMEL}',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/arm.php0000664000175000017500000116007512014173416013467 0ustar  benbebenbe 'ARM ASSEMBLER',
    'COMMENT_SINGLE' => array(
        1 => ';'
        ),
    'COMMENT_MULTI' => array(),
    //Line address prefix suppression
    'COMMENT_REGEXP' => array(
        2 => "/^(?:[0-9a-f]{0,4}:)?[0-9a-f]{4}(?:[0-9a-f]{4})?/mi"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* Unconditional Data Processing Instructions */
        1 => array(
            /* Data Processing: Unconditional Addition & Subtraction */
            'adc.w','adcal.w',
            'adc','adcal',
            'add.w','addal.w',
            'add','addal',
            'addw','addwal',
            'rsb.w','rsbal.w',
            'rsb','rsbal',
            'rsc','rscal',
            'sbc.w','sbcal.w',
            'sbc','sbcal',
            'sub.w','subal.w',
            'sub','subal',
            'neg.w','negal.w',
            'neg','negal',
            'adr.w','adral.w',
            'adr','adral',
            /* Data Processing: Unconditional Logical */
            'and.w','andal.w',
            'and','andal',
            'bic.w','bical.w',
            'bic','bical',
            'orr.w','orral.w',
            'orr','orral',
            'orn.w','ornal.w',
            'orn','ornal',
            'eor.w','eoral.w',
            'eor','eoral',
            'mov.w','moval.w',
            'mov','moval',
            'movw','movwal',
            'movt','movtal',
            'cpy','cpyal',
            'mvn.w','mvnal.w',
            'mvn','mvnal',
            /* Data Processing: Unconditional Shifts and Rotates */
            'asr.w','asral.w',
            'asr','asral',
            'lsl.w','lslal.w',
            'lsl','lslal',
            'lsr.w','lsral.w',
            'lsr','lsral',
            'ror.w','roral.w',
            'ror','roral',
            'rrx','rrxal',
            /* Data Processing: Unconditional Word Multiply and Multiply-Add */
            'mul','mulal',
            'mla','mlaal',
            'mls','mlsal',
            'smull','smullal',
            'muls','mulsal',
            'umull','umullal',
            'smlal','smlalal',
            'umlal','umlalal',
            /* Data Processing: Unconditional Halfword Multiply and Multiply-Add (ARMv5TE) */
            'smulbb','smulbbal',
            'smulbt','smulbtal',
            'smultb','smultbal',
            'smultt','smulttal',
            'smulwb','smulwbal',
            'smulwt','smulwtal',
            'smlalbb','smlalbbal',
            'smlalbt','smlalbtal',
            'smlaltb','smlaltbal',
            'smlaltt','smlalttal',
            'smlabb','smlabbal',
            'smlabt','smlabtal',
            'smlatb','smlatbal',
            'smlatt','smlattal',
            'smlawb','smlawbal',
            'smlawt','smlawtal',
            /* Data Processing: Unconditional Bit Operations */
            'ubfx','ubfxal',
            'sbfx','sbfxal',
            'bfc','bfcal',
            'bfi','bfial',
            'clz','clzal',
            /* Data Processing: Unconditional Divide (ARMv7-R) */
            'sdiv','sdival',
            'udiv','udival'
            ),
        /* Conditional Data Processing Instructions */
        2 => array(
            /* Data Processing: Conditional Addition & Subtraction */
            'adceq.w','adcne.w','adccs.w','adchs.w','adccc.w','adclo.w','adcmi.w','adcpl.w','adcvs.w','adcvc.w','adchi.w','adcls.w','adcge.w','adclt.w','adcgt.w','adcle.w',
            'adceq','adcne','adccs','adchs','adccc','adclo','adcmi','adcpl','adcvs','adcvc','adchi','adcls','adcge','adclt','adcgt','adcle',
            'addeq.w','addne.w','addcs.w','addhs.w','addcc.w','addlo.w','addmi.w','addpl.w','addvs.w','addvc.w','addhi.w','addls.w','addge.w','addlt.w','addgt.w','addle.w',
            'addeq','addne','addcs','addhs','addcc','addlo','addmi','addpl','addvs','addvc','addhi','addls','addge','addlt','addgt','addle',
            'addweq','addwne','addwcs','addwhs','addwcc','addwlo','addwmi','addwpl','addwvs','addwvc','addwhi','addwls','addwge','addwlt','addwgt','addwle',
            'rsbeq.w','rsbne.w','rsbcs.w','rsbhs.w','rsbcc.w','rsblo.w','rsbmi.w','rsbpl.w','rsbvs.w','rsbvc.w','rsbhi.w','rsbls.w','rsbge.w','rsblt.w','rsbgt.w','rsble.w',
            'rsbeq','rsbne','rsbcs','rsbhs','rsbcc','rsblo','rsbmi','rsbpl','rsbvs','rsbvc','rsbhi','rsbls','rsbge','rsblt','rsbgt','rsble',
            'rsceq','rscne','rsccs','rschs','rsccc','rsclo','rscmi','rscpl','rscvs','rscvc','rschi','rscls','rscge','rsclt','rscgt','rscle',
            'sbceq.w','sbcne.w','sbccs.w','sbchs.w','sbccc.w','sbclo.w','sbcmi.w','sbcpl.w','sbcvs.w','sbcvc.w','sbchi.w','sbcls.w','sbcge.w','sbclt.w','sbcgt.w','sbcle.w',
            'sbceq','sbcne','sbccs','sbchs','sbccc','sbclo','sbcmi','sbcpl','sbcvs','sbcvc','sbchi','sbcls','sbcge','sbclt','sbcgt','sbcle',
            'subeq.w','subne.w','subcs.w','subhs.w','subcc.w','sublo.w','submi.w','subpl.w','subvs.w','subvc.w','subhi.w','subls.w','subge.w','sublt.w','subgt.w','suble.w',
            'subeq','subne','subcs','subhs','subcc','sublo','submi','subpl','subvs','subvc','subhi','subls','subge','sublt','subgt','suble',
            'negeq.w','negne.w','negcs.w','neghs.w','negcc.w','neglo.w','negmi.w','negpl.w','negvs.w','negvc.w','neghi.w','negls.w','negge.w','neglt.w','neggt.w','negle.w',
            'negeq','negne','negcs','neghs','negcc','neglo','negmi','negpl','negvs','negvc','neghi','negls','negge','neglt','neggt','negle',
            'adreq.w','adrne.w','adrcs.w','adrhs.w','adrcc.w','adrlo.w','adrmi.w','adrpl.w','adrvs.w','adrvc.w','adrhi.w','adrls.w','adrge.w','adrlt.w','adrgt.w','adrle.w',
            'adreq','adrne','adrcs','adrhs','adrcc','adrlo','adrmi','adrpl','adrvs','adrvc','adrhi','adrls','adrge','adrlt','adrgt','adrle',
            /* Data Processing: Conditional Logical */
            'andeq.w','andne.w','andcs.w','andhs.w','andcc.w','andlo.w','andmi.w','andpl.w','andvs.w','andvc.w','andhi.w','andls.w','andge.w','andlt.w','andgt.w','andle.w',
            'andeq','andne','andcs','andhs','andcc','andlo','andmi','andpl','andvs','andvc','andhi','andls','andge','andlt','andgt','andle',
            'biceq.w','bicne.w','biccs.w','bichs.w','biccc.w','biclo.w','bicmi.w','bicpl.w','bicvs.w','bicvc.w','bichi.w','bicls.w','bicge.w','biclt.w','bicgt.w','bicle.w',
            'biceq','bicne','biccs','bichs','biccc','biclo','bicmi','bicpl','bicvs','bicvc','bichi','bicls','bicge','biclt','bicgt','bicle',
            'orreq.w','orrne.w','orrcs.w','orrhs.w','orrcc.w','orrlo.w','orrmi.w','orrpl.w','orrvs.w','orrvc.w','orrhi.w','orrls.w','orrge.w','orrlt.w','orrgt.w','orrle.w',
            'orreq','orrne','orrcs','orrhs','orrcc','orrlo','orrmi','orrpl','orrvs','orrvc','orrhi','orrls','orrge','orrlt','orrgt','orrle',
            'orneq.w','ornne.w','orncs.w','ornhs.w','orncc.w','ornlo.w','ornmi.w','ornpl.w','ornvs.w','ornvc.w','ornhi.w','ornls.w','ornge.w','ornlt.w','orngt.w','ornle.w',
            'orneq','ornne','orncs','ornhs','orncc','ornlo','ornmi','ornpl','ornvs','ornvc','ornhi','ornls','ornge','ornlt','orngt','ornle',
            'eoreq.w','eorne.w','eorcs.w','eorhs.w','eorcc.w','eorlo.w','eormi.w','eorpl.w','eorvs.w','eorvc.w','eorhi.w','eorls.w','eorge.w','eorlt.w','eorgt.w','eorle.w',
            'eoreq','eorne','eorcs','eorhs','eorcc','eorlo','eormi','eorpl','eorvs','eorvc','eorhi','eorls','eorge','eorlt','eorgt','eorle',
            'moveq.w','movne.w','movcs.w','movhs.w','movcc.w','movlo.w','movmi.w','movpl.w','movvs.w','movvc.w','movhi.w','movls.w','movge.w','movlt.w','movgt.w','movle.w',
            'moveq','movne','movcs','movhs','movcc','movlo','movmi','movpl','movvs','movvc','movhi','movls','movge','movlt','movgt','movle',
            'movweq','movwne','movwcs','movwhs','movwcc','movwlo','movwmi','movwpl','movwvs','movwvc','movwhi','movwls','movwge','movwlt','movwgt','movwle',
            'movteq','movtne','movtcs','movths','movtcc','movtlo','movtmi','movtpl','movtvs','movtvc','movthi','movtls','movtge','movtlt','movtgt','movtle',
            'cpyeq','cpyne','cpycs','cpyhs','cpycc','cpylo','cpymi','cpypl','cpyvs','cpyvc','cpyhi','cpyls','cpyge','cpylt','cpygt','cpyle',
            'mvneq.w','mvnne.w','mvncs.w','mvnhs.w','mvncc.w','mvnlo.w','mvnmi.w','mvnpl.w','mvnvs.w','mvnvc.w','mvnhi.w','mvnls.w','mvnge.w','mvnlt.w','mvngt.w','mvnle.w',
            'mvneq','mvnne','mvncs','mvnhs','mvncc','mvnlo','mvnmi','mvnpl','mvnvs','mvnvc','mvnhi','mvnls','mvnge','mvnlt','mvngt','mvnle',
            /* Data Processing: Conditional Shifts and Rotates */
            'asreq.w','asrne.w','asrcs.w','asrhs.w','asrcc.w','asrlo.w','asrmi.w','asrpl.w','asrvs.w','asrvc.w','asrhi.w','asrls.w','asrge.w','asrlt.w','asrgt.w','asrle.w',
            'asreq','asrne','asrcs','asrhs','asrcc','asrlo','asrmi','asrpl','asrvs','asrvc','asrhi','asrls','asrge','asrlt','asrgt','asrle',
            'lsleq.w','lslne.w','lslcs.w','lslhs.w','lslcc.w','lsllo.w','lslmi.w','lslpl.w','lslvs.w','lslvc.w','lslhi.w','lslls.w','lslge.w','lsllt.w','lslgt.w','lslle.w',
            'lsleq','lslne','lslcs','lslhs','lslcc','lsllo','lslmi','lslpl','lslvs','lslvc','lslhi','lslls','lslge','lsllt','lslgt','lslle',
            'lsreq.w','lsrne.w','lsrcs.w','lsrhs.w','lsrcc.w','lsrlo.w','lsrmi.w','lsrpl.w','lsrvs.w','lsrvc.w','lsrhi.w','lsrls.w','lsrge.w','lsrlt.w','lsrgt.w','lsrle.w',
            'lsreq','lsrne','lsrcs','lsrhs','lsrcc','lsrlo','lsrmi','lsrpl','lsrvs','lsrvc','lsrhi','lsrls','lsrge','lsrlt','lsrgt','lsrle',
            'roreq.w','rorne.w','rorcs.w','rorhs.w','rorcc.w','rorlo.w','rormi.w','rorpl.w','rorvs.w','rorvc.w','rorhi.w','rorls.w','rorge.w','rorlt.w','rorgt.w','rorle.w',
            'roreq','rorne','rorcs','rorhs','rorcc','rorlo','rormi','rorpl','rorvs','rorvc','rorhi','rorls','rorge','rorlt','rorgt','rorle',
            'rrxeq','rrxne','rrxcs','rrxhs','rrxcc','rrxlo','rrxmi','rrxpl','rrxvs','rrxvc','rrxhi','rrxls','rrxge','rrxlt','rrxgt','rrxle',
            /* Data Processing: Conditional Word Multiply and Multiply-Add */
            'muleq','mulne','mulcs','mulhs','mulcc','mullo','mulmi','mulpl','mulvs','mulvc','mulhi','mulls','mulge','mullt','mulgt','mulle',
            'mlaeq','mlane','mlacs','mlahs','mlacc','mlalo','mlami','mlapl','mlavs','mlavc','mlahi','mlals','mlage','mlalt','mlagt','mlale',
            'mlseq','mlsne','mlscs','mlshs','mlscc','mlslo','mlsmi','mlspl','mlsvs','mlsvc','mlshi','mlsls','mlsge','mlslt','mlsgt','mlsle',
            'smulleq','smullne','smullcs','smullhs','smullcc','smulllo','smullmi','smullpl','smullvs','smullvc','smullhi','smullls','smullge','smulllt','smullgt','smullle',
            'mulseq','mulsne','mulscs','mulshs','mulscc','mulslo','mulsmi','mulspl','mulsvs','mulsvc','mulshi','mulsls','mulsge','mulslt','mulsgt','mulsle',
            'umulleq','umullne','umullcs','umullhs','umullcc','umulllo','umullmi','umullpl','umullvs','umullvc','umullhi','umullls','umullge','umulllt','umullgt','umullle',
            'smlaleq','smlalne','smlalcs','smlalhs','smlalcc','smlallo','smlalmi','smlalpl','smlalvs','smlalvc','smlalhi','smlalls','smlalge','smlallt','smlalgt','smlalle',
            'umlaleq','umlalne','umlalcs','umlalhs','umlalcc','umlallo','umlalmi','umlalpl','umlalvs','umlalvc','umlalhi','umlalls','umlalge','umlallt','umlalgt','umlalle',
            /* Data Processing: Conditional Halfword Multiply and Multiply-Add (ARMv5TE) */
            'smulbbeq','smulbbne','smulbbcs','smulbbhs','smulbbcc','smulbblo','smulbbmi','smulbbpl','smulbbvs','smulbbvc','smulbbhi','smulbbls','smulbbge','smulbblt','smulbbgt','smulbble',
            'smulbteq','smulbtne','smulbtcs','smulbths','smulbtcc','smulbtlo','smulbtmi','smulbtpl','smulbtvs','smulbtvc','smulbthi','smulbtls','smulbtge','smulbtlt','smulbtgt','smulbtle',
            'smultbeq','smultbne','smultbcs','smultbhs','smultbcc','smultblo','smultbmi','smultbpl','smultbvs','smultbvc','smultbhi','smultbls','smultbge','smultblt','smultbgt','smultble',
            'smultteq','smulttne','smulttcs','smultths','smulttcc','smulttlo','smulttmi','smulttpl','smulttvs','smulttvc','smultthi','smulttls','smulttge','smulttlt','smulttgt','smulttle',
            'smulwbeq','smulwbne','smulwbcs','smulwbhs','smulwbcc','smulwblo','smulwbmi','smulwbpl','smulwbvs','smulwbvc','smulwbhi','smulwbls','smulwbge','smulwblt','smulwbgt','smulwble',
            'smulwteq','smulwtne','smulwtcs','smulwths','smulwtcc','smulwtlo','smulwtmi','smulwtpl','smulwtvs','smulwtvc','smulwthi','smulwtls','smulwtge','smulwtlt','smulwtgt','smulwtle',
            'smlalbbeq','smlalbbne','smlalbbcs','smlalbbhs','smlalbbcc','smlalbblo','smlalbbmi','smlalbbpl','smlalbbvs','smlalbbvc','smlalbbhi','smlalbbls','smlalbbge','smlalbblt','smlalbbgt','smlalbble',
            'smlalbteq','smlalbtne','smlalbtcs','smlalbths','smlalbtcc','smlalbtlo','smlalbtmi','smlalbtpl','smlalbtvs','smlalbtvc','smlalbthi','smlalbtls','smlalbtge','smlalbtlt','smlalbtgt','smlalbtle',
            'smlaltbeq','smlaltbne','smlaltbcs','smlaltbhs','smlaltbcc','smlaltblo','smlaltbmi','smlaltbpl','smlaltbvs','smlaltbvc','smlaltbhi','smlaltbls','smlaltbge','smlaltblt','smlaltbgt','smlaltble',
            'smlaltteq','smlalttne','smlalttcs','smlaltths','smlalttcc','smlalttlo','smlalttmi','smlalttpl','smlalttvs','smlalttvc','smlaltthi','smlalttls','smlalttge','smlalttlt','smlalttgt','smlalttle',
            'smlabbeq','smlabbne','smlabbcs','smlabbhs','smlabbcc','smlabblo','smlabbmi','smlabbpl','smlabbvs','smlabbvc','smlabbhi','smlabbls','smlabbge','smlabblt','smlabbgt','smlabble',
            'smlabteq','smlabtne','smlabtcs','smlabths','smlabtcc','smlabtlo','smlabtmi','smlabtpl','smlabtvs','smlabtvc','smlabthi','smlabtls','smlabtge','smlabtlt','smlabtgt','smlabtle',
            'smlatbeq','smlatbne','smlatbcs','smlatbhs','smlatbcc','smlatblo','smlatbmi','smlatbpl','smlatbvs','smlatbvc','smlatbhi','smlatbls','smlatbge','smlatblt','smlatbgt','smlatble',
            'smlatteq','smlattne','smlattcs','smlatths','smlattcc','smlattlo','smlattmi','smlattpl','smlattvs','smlattvc','smlatthi','smlattls','smlattge','smlattlt','smlattgt','smlattle',
            'smlawbeq','smlawbne','smlawbcs','smlawbhs','smlawbcc','smlawblo','smlawbmi','smlawbpl','smlawbvs','smlawbvc','smlawbhi','smlawbls','smlawbge','smlawblt','smlawbgt','smlawble',
            'smlawteq','smlawtne','smlawtcs','smlawths','smlawtcc','smlawtlo','smlawtmi','smlawtpl','smlawtvs','smlawtvc','smlawthi','smlawtls','smlawtge','smlawtlt','smlawtgt','smlawtle',
            /* Data Processing: Conditional Bit Operations */
            'ubfxeq','ubfxne','ubfxcs','ubfxhs','ubfxcc','ubfxlo','ubfxmi','ubfxpl','ubfxvs','ubfxvc','ubfxhi','ubfxls','ubfxge','ubfxlt','ubfxgt','ubfxle',
            'sbfxeq','sbfxne','sbfxcs','sbfxhs','sbfxcc','sbfxlo','sbfxmi','sbfxpl','sbfxvs','sbfxvc','sbfxhi','sbfxls','sbfxge','sbfxlt','sbfxgt','sbfxle',
            'bfceq','bfcne','bfccs','bfchs','bfccc','bfclo','bfcmi','bfcpl','bfcvs','bfcvc','bfchi','bfcls','bfcge','bfclt','bfcgt','bfcle',
            'bfieq','bfine','bfics','bfihs','bficc','bfilo','bfimi','bfipl','bfivs','bfivc','bfihi','bfils','bfige','bfilt','bfigt','bfile',
            'clzeq','clzne','clzcs','clzhs','clzcc','clzlo','clzmi','clzpl','clzvs','clzvc','clzhi','clzls','clzge','clzlt','clzgt','clzle',
            /* ARMv7-R: Conditional Divide */
            'sdiveq','sdivne','sdivcs','sdivhs','sdivcc','sdivlo','sdivmi','sdivpl','sdivvs','sdivvc','sdivhi','sdivls','sdivge','sdivlt','sdivgt','sdivle',
            'udiveq','udivne','udivcs','udivhs','udivcc','udivlo','udivmi','udivpl','udivvs','udivvc','udivhi','udivls','udivge','udivlt','udivgt','udivle'
            ),
        /* Unconditional Memory Access */
        3 => array(
            /* Memory Access: Unconditional Memory Loads and Prefetches */
            'ldm.w','ldmal.w',
            'ldm','ldmal',
            'ldmda','ldmdaal',
            'ldmdb','ldmdbal',
            'ldmib','ldmibal',
            'ldmia','ldmiaal',
            'ldmea','ldmeaal',
            'ldmed','ldmedal',
            'ldmfa','ldmfaal',
            'ldmfd','ldmfdal',
            'ldrd','ldrdal',
            'ldr.w','ldral.w',
            'ldr','ldral',
            'ldrh.w','ldrhal.w',
            'ldrh','ldrhal',
            'ldrb.w','ldrbal.w',
            'ldrb','ldrbal',
            'ldrsh.w','ldrshal.w',
            'ldrsh','ldrshal',
            'ldrsb.w','ldrsbal.w',
            'ldrsb','ldrsbal',
            'ldrt','ldrtal',
            'ldrht','ldrhtal',
            'ldrbt','ldrbtal',
            'ldrsht','ldrshtal',
            'ldrsbt','ldrsbtal',
            'pop.w','popal.w',
            'pop','popal',
            'pld','pldal',
            'pldw','pldwal',
            'pli','plial',
            /* Memory Access: Unconditional Memory Stores */
            'stm.w','stmal.w',
            'stm','stmal',
            'stmda','stmdaal',
            'stmdb','stmdbal',
            'stmib','stmibal',
            'stmia','stmiaal',
            'stmea','stmeaal',
            'stmed','stmedal',
            'stdfa','stdfaal',
            'stdfd','stdfdal',
            'strd','strdal',
            'str.w','stral.w',
            'str','stral',
            'strh.w','strhal.w',
            'strh','strhal',
            'strb.w','strbal.w',
            'strb','strbal',
            'strt','strtal',
            'strht','strhtal',
            'strbt','strbtal',
            'push.w','pushal.w',
            'push','pushal'
            ),
        /* Conditional Memory Access */
        4 => array(
            /* Memory Access: Conditional Memory Loads and Prefetches */
            'ldmeq.w','ldmne.w','ldmcs.w','ldmhs.w','ldmcc.w','ldmlo.w','ldmmi.w','ldmpl.w','ldmvs.w','ldmvc.w','ldmhi.w','ldmls.w','ldmge.w','ldmlt.w','ldmgt.w','ldmle.w',
            'ldmeq','ldmne','ldmcs','ldmhs','ldmcc','ldmlo','ldmmi','ldmpl','ldmvs','ldmvc','ldmhi','ldmls','ldmge','ldmlt','ldmgt','ldmle',
            'ldmdaeq','ldmdane','ldmdacs','ldmdahs','ldmdacc','ldmdalo','ldmdami','ldmdapl','ldmdavs','ldmdavc','ldmdahi','ldmdals','ldmdage','ldmdalt','ldmdagt','ldmdale',
            'ldmdbeq','ldmdbne','ldmdbcs','ldmdbhs','ldmdbcc','ldmdblo','ldmdbmi','ldmdbpl','ldmdbvs','ldmdbvc','ldmdbhi','ldmdbls','ldmdbge','ldmdblt','ldmdbgt','ldmdble',
            'ldmibeq','ldmibne','ldmibcs','ldmibhs','ldmibcc','ldmiblo','ldmibmi','ldmibpl','ldmibvs','ldmibvc','ldmibhi','ldmibls','ldmibge','ldmiblt','ldmibgt','ldmible',
            'ldmiaeq','ldmiane','ldmiacs','ldmiahs','ldmiacc','ldmialo','ldmiami','ldmiapl','ldmiavs','ldmiavc','ldmiahi','ldmials','ldmiage','ldmialt','ldmiagt','ldmiale',
            'ldmeaeq','ldmeane','ldmeacs','ldmeahs','ldmeacc','ldmealo','ldmeami','ldmeapl','ldmeavs','ldmeavc','ldmeahi','ldmeals','ldmeage','ldmealt','ldmeagt','ldmeale',
            'ldmedeq','ldmedne','ldmedcs','ldmedhs','ldmedcc','ldmedlo','ldmedmi','ldmedpl','ldmedvs','ldmedvc','ldmedhi','ldmedls','ldmedge','ldmedlt','ldmedgt','ldmedle',
            'ldmfaeq','ldmfane','ldmfacs','ldmfahs','ldmfacc','ldmfalo','ldmfami','ldmfapl','ldmfavs','ldmfavc','ldmfahi','ldmfals','ldmfage','ldmfalt','ldmfagt','ldmfale',
            'ldmfdeq','ldmfdne','ldmfdcs','ldmfdhs','ldmfdcc','ldmfdlo','ldmfdmi','ldmfdpl','ldmfdvs','ldmfdvc','ldmfdhi','ldmfdls','ldmfdge','ldmfdlt','ldmfdgt','ldmfdle',
            'ldrdeq','ldrdne','ldrdcs','ldrdhs','ldrdcc','ldrdlo','ldrdmi','ldrdpl','ldrdvs','ldrdvc','ldrdhi','ldrdls','ldrdge','ldrdlt','ldrdgt','ldrdle',
            'ldreq.w','ldrne.w','ldrcs.w','ldrhs.w','ldrcc.w','ldrlo.w','ldrmi.w','ldrpl.w','ldrvs.w','ldrvc.w','ldrhi.w','ldrls.w','ldrge.w','ldrlt.w','ldrgt.w','ldrle.w',
            'ldreq','ldrne','ldrcs','ldrhs','ldrcc','ldrlo','ldrmi','ldrpl','ldrvs','ldrvc','ldrhi','ldrls','ldrge','ldrlt','ldrgt','ldrle',
            'ldrheq.w','ldrhne.w','ldrhcs.w','ldrhhs.w','ldrhcc.w','ldrhlo.w','ldrhmi.w','ldrhpl.w','ldrhvs.w','ldrhvc.w','ldrhhi.w','ldrhls.w','ldrhge.w','ldrhlt.w','ldrhgt.w','ldrhle.w',
            'ldrheq','ldrhne','ldrhcs','ldrhhs','ldrhcc','ldrhlo','ldrhmi','ldrhpl','ldrhvs','ldrhvc','ldrhhi','ldrhls','ldrhge','ldrhlt','ldrhgt','ldrhle',
            'ldrbeq.w','ldrbne.w','ldrbcs.w','ldrbhs.w','ldrbcc.w','ldrblo.w','ldrbmi.w','ldrbpl.w','ldrbvs.w','ldrbvc.w','ldrbhi.w','ldrbls.w','ldrbge.w','ldrblt.w','ldrbgt.w','ldrble.w',
            'ldrbeq','ldrbne','ldrbcs','ldrbhs','ldrbcc','ldrblo','ldrbmi','ldrbpl','ldrbvs','ldrbvc','ldrbhi','ldrbls','ldrbge','ldrblt','ldrbgt','ldrble',
            'ldrsheq.w','ldrshne.w','ldrshcs.w','ldrshhs.w','ldrshcc.w','ldrshlo.w','ldrshmi.w','ldrshpl.w','ldrshvs.w','ldrshvc.w','ldrshhi.w','ldrshls.w','ldrshge.w','ldrshlt.w','ldrshgt.w','ldrshle.w',
            'ldrsheq','ldrshne','ldrshcs','ldrshhs','ldrshcc','ldrshlo','ldrshmi','ldrshpl','ldrshvs','ldrshvc','ldrshhi','ldrshls','ldrshge','ldrshlt','ldrshgt','ldrshle',
            'ldrsbeq.w','ldrsbne.w','ldrsbcs.w','ldrsbhs.w','ldrsbcc.w','ldrsblo.w','ldrsbmi.w','ldrsbpl.w','ldrsbvs.w','ldrsbvc.w','ldrsbhi.w','ldrsbls.w','ldrsbge.w','ldrsblt.w','ldrsbgt.w','ldrsble.w',
            'ldrsbeq','ldrsbne','ldrsbcs','ldrsbhs','ldrsbcc','ldrsblo','ldrsbmi','ldrsbpl','ldrsbvs','ldrsbvc','ldrsbhi','ldrsbls','ldrsbge','ldrsblt','ldrsbgt','ldrsble',
            'ldrteq','ldrtne','ldrtcs','ldrths','ldrtcc','ldrtlo','ldrtmi','ldrtpl','ldrtvs','ldrtvc','ldrthi','ldrtls','ldrtge','ldrtlt','ldrtgt','ldrtle',
            'ldrhteq','ldrhtne','ldrhtcs','ldrhths','ldrhtcc','ldrhtlo','ldrhtmi','ldrhtpl','ldrhtvs','ldrhtvc','ldrhthi','ldrhtls','ldrhtge','ldrhtlt','ldrhtgt','ldrhtle',
            'ldrbteq','ldrbtne','ldrbtcs','ldrbths','ldrbtcc','ldrbtlo','ldrbtmi','ldrbtpl','ldrbtvs','ldrbtvc','ldrbthi','ldrbtls','ldrbtge','ldrbtlt','ldrbtgt','ldrbtle',
            'ldrshteq','ldrshtne','ldrshtcs','ldrshths','ldrshtcc','ldrshtlo','ldrshtmi','ldrshtpl','ldrshtvs','ldrshtvc','ldrshthi','ldrshtls','ldrshtge','ldrshtlt','ldrshtgt','ldrshtle',
            'ldrsbteq','ldrsbtne','ldrsbtcs','ldrsbths','ldrsbtcc','ldrsbtlo','ldrsbtmi','ldrsbtpl','ldrsbtvs','ldrsbtvc','ldrsbthi','ldrsbtls','ldrsbtge','ldrsbtlt','ldrsbtgt','ldrsbtle',
            'popeq.w','popne.w','popcs.w','pophs.w','popcc.w','poplo.w','popmi.w','poppl.w','popvs.w','popvc.w','pophi.w','popls.w','popge.w','poplt.w','popgt.w','pople.w',
            'popeq','popne','popcs','pophs','popcc','poplo','popmi','poppl','popvs','popvc','pophi','popls','popge','poplt','popgt','pople',
            'pldeq','pldne','pldcs','pldhs','pldcc','pldlo','pldmi','pldpl','pldvs','pldvc','pldhi','pldls','pldge','pldlt','pldgt','pldle',
            'pldweq','pldwne','pldwcs','pldwhs','pldwcc','pldwlo','pldwmi','pldwpl','pldwvs','pldwvc','pldwhi','pldwls','pldwge','pldwlt','pldwgt','pldwle',
            'plieq','pline','plics','plihs','plicc','plilo','plimi','plipl','plivs','plivc','plihi','plils','plige','plilt','pligt','plile',
            /* Memory Access: Conditional Memory Stores */
            'stmeq.w','stmne.w','stmcs.w','stmhs.w','stmcc.w','stmlo.w','stmmi.w','stmpl.w','stmvs.w','stmvc.w','stmhi.w','stmls.w','stmge.w','stmlt.w','stmgt.w','stmle.w',
            'stmeq','stmne','stmcs','stmhs','stmcc','stmlo','stmmi','stmpl','stmvs','stmvc','stmhi','stmls','stmge','stmlt','stmgt','stmle',
            'stmdaeq','stmdane','stmdacs','stmdahs','stmdacc','stmdalo','stmdami','stmdapl','stmdavs','stmdavc','stmdahi','stmdals','stmdage','stmdalt','stmdagt','stmdale',
            'stmdbeq','stmdbne','stmdbcs','stmdbhs','stmdbcc','stmdblo','stmdbmi','stmdbpl','stmdbvs','stmdbvc','stmdbhi','stmdbls','stmdbge','stmdblt','stmdbgt','stmdble',
            'stmibeq','stmibne','stmibcs','stmibhs','stmibcc','stmiblo','stmibmi','stmibpl','stmibvs','stmibvc','stmibhi','stmibls','stmibge','stmiblt','stmibgt','stmible',
            'stmiaeq','stmiane','stmiacs','stmiahs','stmiacc','stmialo','stmiami','stmiapl','stmiavs','stmiavc','stmiahi','stmials','stmiage','stmialt','stmiagt','stmiale',
            'stmeaeq','stmeane','stmeacs','stmeahs','stmeacc','stmealo','stmeami','stmeapl','stmeavs','stmeavc','stmeahi','stmeals','stmeage','stmealt','stmeagt','stmeale',
            'stmedeq','stmedne','stmedcs','stmedhs','stmedcc','stmedlo','stmedmi','stmedpl','stmedvs','stmedvc','stmedhi','stmedls','stmedge','stmedlt','stmedgt','stmedle',
            'stdfaeq','stdfane','stdfacs','stdfahs','stdfacc','stdfalo','stdfami','stdfapl','stdfavs','stdfavc','stdfahi','stdfals','stdfage','stdfalt','stdfagt','stdfale',
            'stdfdeq','stdfdne','stdfdcs','stdfdhs','stdfdcc','stdfdlo','stdfdmi','stdfdpl','stdfdvs','stdfdvc','stdfdhi','stdfdls','stdfdge','stdfdlt','stdfdgt','stdfdle',
            'strdeq','strdne','strdcs','strdhs','strdcc','strdlo','strdmi','strdpl','strdvs','strdvc','strdhi','strdls','strdge','strdlt','strdgt','strdle',
            'streq.w','strne.w','strcs.w','strhs.w','strcc.w','strlo.w','strmi.w','strpl.w','strvs.w','strvc.w','strhi.w','strls.w','strge.w','strlt.w','strgt.w','strle.w',
            'streq','strne','strcs','strhs','strcc','strlo','strmi','strpl','strvs','strvc','strhi','strls','strge','strlt','strgt','strle',
            'strheq.w','strhne.w','strhcs.w','strhhs.w','strhcc.w','strhlo.w','strhmi.w','strhpl.w','strhvs.w','strhvc.w','strhhi.w','strhls.w','strhge.w','strhlt.w','strhgt.w','strhle.w',
            'strheq','strhne','strhcs','strhhs','strhcc','strhlo','strhmi','strhpl','strhvs','strhvc','strhhi','strhls','strhge','strhlt','strhgt','strhle',
            'strbeq.w','strbne.w','strbcs.w','strbhs.w','strbcc.w','strblo.w','strbmi.w','strbpl.w','strbvs.w','strbvc.w','strbhi.w','strbls.w','strbge.w','strblt.w','strbgt.w','strble.w',
            'strbeq','strbne','strbcs','strbhs','strbcc','strblo','strbmi','strbpl','strbvs','strbvc','strbhi','strbls','strbge','strblt','strbgt','strble',
            'strteq','strtne','strtcs','strths','strtcc','strtlo','strtmi','strtpl','strtvs','strtvc','strthi','strtls','strtge','strtlt','strtgt','strtle',
            'strhteq','strhtne','strhtcs','strhths','strhtcc','strhtlo','strhtmi','strhtpl','strhtvs','strhtvc','strhthi','strhtls','strhtge','strhtlt','strhtgt','strhtle',
            'strbteq','strbtne','strbtcs','strbths','strbtcc','strbtlo','strbtmi','strbtpl','strbtvs','strbtvc','strbthi','strbtls','strbtge','strbtlt','strbtgt','strbtle',
            'pusheq.w','pushne.w','pushcs.w','pushhs.w','pushcc.w','pushlo.w','pushmi.w','pushpl.w','pushvs.w','pushvc.w','pushhi.w','pushls.w','pushge.w','pushlt.w','pushgt.w','pushle.w',
            'pusheq','pushne','pushcs','pushhs','pushcc','pushlo','pushmi','pushpl','pushvs','pushvc','pushhi','pushls','pushge','pushlt','pushgt','pushle'
            ),
        /* Unconditional Flags-Affecting Instructions */
        5 => array(
            /* Set Flags: Unconditional Addition and Subtraction */
            'adds.w','addsal.w',
            'adds','addsal',
            'subs.w','subsal.w',
            'subs','subsal',
            'rsbs.w','rsbsal.w',
            'rsbs','rsbsal',
            'negs.w','negsal.w',
            'negs','negsal',
            'adcs.w','adcsal.w',
            'adcs','adcsal',
            'sbcs.w','sbcsal.w',
            'sbcs','sbcsal',
            'rscs','rscsal',
            'cmp.w','cmpal.w',
            'cmp','cmpal',
            'cmn.w','cmnal.w',
            'cmn','cmnal',
            /* Set Flags: Unconditional Logical */
            'ands.w','andsal.w',
            'ands','andsal',
            'bics.w','bicsal.w',
            'bics','bicsal',
            'orrs.w','orrsal.w',
            'orrs','orrsal',
            'orns.w','ornsal.w',
            'orns','ornsal',
            'eors.w','eorsal.w',
            'eors','eorsal',
            'mvns.w','mvnsal.w',
            'mvns','mvnsal',
            'movs.w','movsal.w',
            'movs','movsal',
            'teq','teqal',
            'tst.w','tstal.w',
            'tst','tstal',
            'mrs','mrsal',
            'msr','msral',
            /* Set Flags: Unconditional Shifts and Rotates */
            'asrs.w','asrsal.w',
            'asrs','asrsal',
            'lsls.w','lslsal.w',
            'lsls','lslsal',
            'lsrs.w','lsrsal.w',
            'lsrs','lsrsal',
            'rors.w','rorsal.w',
            'rors','rorsal',
            'rrxs','rrxsal',
            /* Set Flags: Unconditional Multiply and Multiply-Add */
            'mlas','mlasal',
            'smulls','smullsal',
            'umulls','umullsal',
            'smlals','smlalsal',
            'umlals','umlalsal'
            ),
        /* Conditional Flags-Affecting Instructions */
        6 => array(
            /* Set Flags: Conditional Addition and Subtraction */
            'addseq.w','addsne.w','addscs.w','addshs.w','addscc.w','addslo.w','addsmi.w','addspl.w','addsvs.w','addsvc.w','addshi.w','addsls.w','addsge.w','addslt.w','addsgt.w','addsle.w',
            'addseq','addsne','addscs','addshs','addscc','addslo','addsmi','addspl','addsvs','addsvc','addshi','addsls','addsge','addslt','addsgt','addsle',
            'subseq.w','subsne.w','subscs.w','subshs.w','subscc.w','subslo.w','subsmi.w','subspl.w','subsvs.w','subsvc.w','subshi.w','subsls.w','subsge.w','subslt.w','subsgt.w','subsle.w',
            'subseq','subsne','subscs','subshs','subscc','subslo','subsmi','subspl','subsvs','subsvc','subshi','subsls','subsge','subslt','subsgt','subsle',
            'rsbseq.w','rsbsne.w','rsbscs.w','rsbshs.w','rsbscc.w','rsbslo.w','rsbsmi.w','rsbspl.w','rsbsvs.w','rsbsvc.w','rsbshi.w','rsbsls.w','rsbsge.w','rsbslt.w','rsbsgt.w','rsbsle.w',
            'rsbseq','rsbsne','rsbscs','rsbshs','rsbscc','rsbslo','rsbsmi','rsbspl','rsbsvs','rsbsvc','rsbshi','rsbsls','rsbsge','rsbslt','rsbsgt','rsbsle',
            'negseq.w','negsne.w','negscs.w','negshs.w','negscc.w','negslo.w','negsmi.w','negspl.w','negsvs.w','negsvc.w','negshi.w','negsls.w','negsge.w','negslt.w','negsgt.w','negsle.w',
            'negseq','negsne','negscs','negshs','negscc','negslo','negsmi','negspl','negsvs','negsvc','negshi','negsls','negsge','negslt','negsgt','negsle',
            'adcseq.w','adcsne.w','adcscs.w','adcshs.w','adcscc.w','adcslo.w','adcsmi.w','adcspl.w','adcsvs.w','adcsvc.w','adcshi.w','adcsls.w','adcsge.w','adcslt.w','adcsgt.w','adcsle.w',
            'adcseq','adcsne','adcscs','adcshs','adcscc','adcslo','adcsmi','adcspl','adcsvs','adcsvc','adcshi','adcsls','adcsge','adcslt','adcsgt','adcsle',
            'sbcseq.w','sbcsne.w','sbcscs.w','sbcshs.w','sbcscc.w','sbcslo.w','sbcsmi.w','sbcspl.w','sbcsvs.w','sbcsvc.w','sbcshi.w','sbcsls.w','sbcsge.w','sbcslt.w','sbcsgt.w','sbcsle.w',
            'sbcseq','sbcsne','sbcscs','sbcshs','sbcscc','sbcslo','sbcsmi','sbcspl','sbcsvs','sbcsvc','sbcshi','sbcsls','sbcsge','sbcslt','sbcsgt','sbcsle',
            'rscseq','rscsne','rscscs','rscshs','rscscc','rscslo','rscsmi','rscspl','rscsvs','rscsvc','rscshi','rscsls','rscsge','rscslt','rscsgt','rscsle',
            'cmpeq.w','cmpne.w','cmpcs.w','cmphs.w','cmpcc.w','cmplo.w','cmpmi.w','cmppl.w','cmpvs.w','cmpvc.w','cmphi.w','cmpls.w','cmpge.w','cmplt.w','cmpgt.w','cmple.w',
            'cmpeq','cmpne','cmpcs','cmphs','cmpcc','cmplo','cmpmi','cmppl','cmpvs','cmpvc','cmphi','cmpls','cmpge','cmplt','cmpgt','cmple',
            'cmneq.w','cmnne.w','cmncs.w','cmnhs.w','cmncc.w','cmnlo.w','cmnmi.w','cmnpl.w','cmnvs.w','cmnvc.w','cmnhi.w','cmnls.w','cmnge.w','cmnlt.w','cmngt.w','cmnle.w',
            'cmneq','cmnne','cmncs','cmnhs','cmncc','cmnlo','cmnmi','cmnpl','cmnvs','cmnvc','cmnhi','cmnls','cmnge','cmnlt','cmngt','cmnle',
            /* Set Flags: Conditional Logical */
            'andseq.w','andsne.w','andscs.w','andshs.w','andscc.w','andslo.w','andsmi.w','andspl.w','andsvs.w','andsvc.w','andshi.w','andsls.w','andsge.w','andslt.w','andsgt.w','andsle.w',
            'andseq','andsne','andscs','andshs','andscc','andslo','andsmi','andspl','andsvs','andsvc','andshi','andsls','andsge','andslt','andsgt','andsle',
            'bicseq.w','bicsne.w','bicscs.w','bicshs.w','bicscc.w','bicslo.w','bicsmi.w','bicspl.w','bicsvs.w','bicsvc.w','bicshi.w','bicsls.w','bicsge.w','bicslt.w','bicsgt.w','bicsle.w',
            'bicseq','bicsne','bicscs','bicshs','bicscc','bicslo','bicsmi','bicspl','bicsvs','bicsvc','bicshi','bicsls','bicsge','bicslt','bicsgt','bicsle',
            'orrseq.w','orrsne.w','orrscs.w','orrshs.w','orrscc.w','orrslo.w','orrsmi.w','orrspl.w','orrsvs.w','orrsvc.w','orrshi.w','orrsls.w','orrsge.w','orrslt.w','orrsgt.w','orrsle.w',
            'orrseq','orrsne','orrscs','orrshs','orrscc','orrslo','orrsmi','orrspl','orrsvs','orrsvc','orrshi','orrsls','orrsge','orrslt','orrsgt','orrsle',
            'ornseq.w','ornsne.w','ornscs.w','ornshs.w','ornscc.w','ornslo.w','ornsmi.w','ornspl.w','ornsvs.w','ornsvc.w','ornshi.w','ornsls.w','ornsge.w','ornslt.w','ornsgt.w','ornsle.w',
            'ornseq','ornsne','ornscs','ornshs','ornscc','ornslo','ornsmi','ornspl','ornsvs','ornsvc','ornshi','ornsls','ornsge','ornslt','ornsgt','ornsle',
            'eorseq.w','eorsne.w','eorscs.w','eorshs.w','eorscc.w','eorslo.w','eorsmi.w','eorspl.w','eorsvs.w','eorsvc.w','eorshi.w','eorsls.w','eorsge.w','eorslt.w','eorsgt.w','eorsle.w',
            'eorseq','eorsne','eorscs','eorshs','eorscc','eorslo','eorsmi','eorspl','eorsvs','eorsvc','eorshi','eorsls','eorsge','eorslt','eorsgt','eorsle',
            'mvnseq.w','mvnsne.w','mvnscs.w','mvnshs.w','mvnscc.w','mvnslo.w','mvnsmi.w','mvnspl.w','mvnsvs.w','mvnsvc.w','mvnshi.w','mvnsls.w','mvnsge.w','mvnslt.w','mvnsgt.w','mvnsle.w',
            'mvnseq','mvnsne','mvnscs','mvnshs','mvnscc','mvnslo','mvnsmi','mvnspl','mvnsvs','mvnsvc','mvnshi','mvnsls','mvnsge','mvnslt','mvnsgt','mvnsle',
            'movseq.w','movsne.w','movscs.w','movshs.w','movscc.w','movslo.w','movsmi.w','movspl.w','movsvs.w','movsvc.w','movshi.w','movsls.w','movsge.w','movslt.w','movsgt.w','movsle.w',
            'movseq','movsne','movscs','movshs','movscc','movslo','movsmi','movspl','movsvs','movsvc','movshi','movsls','movsge','movslt','movsgt','movsle',
            'teqeq','teqne','teqcs','teqhs','teqcc','teqlo','teqmi','teqpl','teqvs','teqvc','teqhi','teqls','teqge','teqlt','teqgt','teqle',
            'tsteq.w','tstne.w','tstcs.w','tsths.w','tstcc.w','tstlo.w','tstmi.w','tstpl.w','tstvs.w','tstvc.w','tsthi.w','tstls.w','tstge.w','tstlt.w','tstgt.w','tstle.w',
            'tsteq','tstne','tstcs','tsths','tstcc','tstlo','tstmi','tstpl','tstvs','tstvc','tsthi','tstls','tstge','tstlt','tstgt','tstle',
            'mrseq','mrsne','mrscs','mrshs','mrscc','mrslo','mrsmi','mrspl','mrsvs','mrsvc','mrshi','mrsls','mrsge','mrslt','mrsgt','mrsle',
            'msreq','msrne','msrcs','msrhs','msrcc','msrlo','msrmi','msrpl','msrvs','msrvc','msrhi','msrls','msrge','msrlt','msrgt','msrle',
            /* Set Flags: Conditional Shifts and Rotates */
            'asrseq.w','asrsne.w','asrscs.w','asrshs.w','asrscc.w','asrslo.w','asrsmi.w','asrspl.w','asrsvs.w','asrsvc.w','asrshi.w','asrsls.w','asrsge.w','asrslt.w','asrsgt.w','asrsle.w',
            'asrseq','asrsne','asrscs','asrshs','asrscc','asrslo','asrsmi','asrspl','asrsvs','asrsvc','asrshi','asrsls','asrsge','asrslt','asrsgt','asrsle',
            'lslseq.w','lslsne.w','lslscs.w','lslshs.w','lslscc.w','lslslo.w','lslsmi.w','lslspl.w','lslsvs.w','lslsvc.w','lslshi.w','lslsls.w','lslsge.w','lslslt.w','lslsgt.w','lslsle.w',
            'lslseq','lslsne','lslscs','lslshs','lslscc','lslslo','lslsmi','lslspl','lslsvs','lslsvc','lslshi','lslsls','lslsge','lslslt','lslsgt','lslsle',
            'lsrseq.w','lsrsne.w','lsrscs.w','lsrshs.w','lsrscc.w','lsrslo.w','lsrsmi.w','lsrspl.w','lsrsvs.w','lsrsvc.w','lsrshi.w','lsrsls.w','lsrsge.w','lsrslt.w','lsrsgt.w','lsrsle.w',
            'lsrseq','lsrsne','lsrscs','lsrshs','lsrscc','lsrslo','lsrsmi','lsrspl','lsrsvs','lsrsvc','lsrshi','lsrsls','lsrsge','lsrslt','lsrsgt','lsrsle',
            'rorseq.w','rorsne.w','rorscs.w','rorshs.w','rorscc.w','rorslo.w','rorsmi.w','rorspl.w','rorsvs.w','rorsvc.w','rorshi.w','rorsls.w','rorsge.w','rorslt.w','rorsgt.w','rorsle.w',
            'rorseq','rorsne','rorscs','rorshs','rorscc','rorslo','rorsmi','rorspl','rorsvs','rorsvc','rorshi','rorsls','rorsge','rorslt','rorsgt','rorsle',
            'rrxseq','rrxsne','rrxscs','rrxshs','rrxscc','rrxslo','rrxsmi','rrxspl','rrxsvs','rrxsvc','rrxshi','rrxsls','rrxsge','rrxslt','rrxsgt','rrxsle',
            /* Set Flags: Conditional Multiply and Multiply-Add */
            'mlaseq','mlasne','mlascs','mlashs','mlascc','mlaslo','mlasmi','mlaspl','mlasvs','mlasvc','mlashi','mlasls','mlasge','mlaslt','mlasgt','mlasle',
            'smullseq','smullsne','smullscs','smullshs','smullscc','smullslo','smullsmi','smullspl','smullsvs','smullsvc','smullshi','smullsls','smullsge','smullslt','smullsgt','smullsle',
            'umullseq','umullsne','umullscs','umullshs','umullscc','umullslo','umullsmi','umullspl','umullsvs','umullsvc','umullshi','umullsls','umullsge','umullslt','umullsgt','umullsle',
            'smlalseq','smlalsne','smlalscs','smlalshs','smlalscc','smlalslo','smlalsmi','smlalspl','smlalsvs','smlalsvc','smlalshi','smlalsls','smlalsge','smlalslt','smlalsgt','smlalsle',
            'umlalseq','umlalsne','umlalscs','umlalshs','umlalscc','umlalslo','umlalsmi','umlalspl','umlalsvs','umlalsvc','umlalshi','umlalsls','umlalsge','umlalslt','umlalsgt','umlalsle'
            ),
        /* Unconditional Flow Control Instructions */
        7 => array(
            /* Flow Control: Unconditional Branch and If-Then-Else */
            'b.w','bal.w',
            'b','bal',
            'bl','blal',
            'bx','bxal',
            'blx','blxal',
            'bxj','bxjal',
            'cbnz',
            'cbz',
            'tbb','tbbal',
            'tbh','tbhal',
            'it',
            'itt',
            'ite',
            'ittt',
            'itet',
            'itte',
            'itee',
            'itttt',
            'itett',
            'ittet',
            'iteet',
            'ittte',
            'itete',
            'ittee',
            'iteee'
            ),
        /* Conditional Flow Control Instructions */
        8 => array(
            /* Flow Control: Conditional Branch and If-Then-Else */
            'beq.w','bne.w','bcs.w','bhs.w','bcc.w','blo.w','bmi.w','bpl.w','bvs.w','bvc.w','bhi.w','bls.w','bge.w','blt.w','bgt.w','ble.w',
            'beq','bne','bcs','bhs','bcc','blo','bmi','bpl','bvs','bvc','bhi','bls','bge','blt','bgt','ble',
            'bleq','blne','blcs','blhs','blcc','bllo','blmi','blpl','blvs','blvc','blhi','blls','blge','bllt','blgt','blle',
            'bxeq','bxne','bxcs','bxhs','bxcc','bxlo','bxmi','bxpl','bxvs','bxvc','bxhi','bxls','bxge','bxlt','bxgt','bxle',
            'blxeq','blxne','blxcs','blxhs','blxcc','blxlo','blxmi','blxpl','blxvs','blxvc','blxhi','blxls','blxge','blxlt','blxgt','blxle',
            'bxjeq','bxjne','bxjcs','bxjhs','bxjcc','bxjlo','bxjmi','bxjpl','bxjvs','bxjvc','bxjhi','bxjls','bxjge','bxjlt','bxjgt','bxjle',
            'tbbeq','tbbne','tbbcs','tbbhs','tbbcc','tbblo','tbbmi','tbbpl','tbbvs','tbbvc','tbbhi','tbbls','tbbge','tbblt','tbbgt','tbble',
            'tbheq','tbhne','tbhcs','tbhhs','tbhcc','tbhlo','tbhmi','tbhpl','tbhvs','tbhvc','tbhhi','tbhls','tbhge','tbhlt','tbhgt','tbhle'
            ),
        /* Unconditional Syncronization Instructions */
        9 => array(
            /* Synchronization: Unconditional Loads, Stores and Barriers */
            'ldrexd','ldrexdal',
            'ldrex','ldrexal',
            'ldrexh','ldrexhal',
            'ldrexb','ldrexbal',
            'strexd','strexdal',
            'strex','strexal',
            'strexh','strexhal',
            'strexb','strexbal',
            'clrex','clrexal',
            'swp','swpal',
            'swpb','swpbal',
            'dbc','dbcal',
            'dsb','dsbal',
            'isb','isbal',
            'yield.w','yieldal.w',
            'yield','yieldal',
            'nop.w','nopal.w',
            'nop','nopal'
            ),
        /* Conditional Syncronization Instructions */
        10 => array(
            /* Synchronization: Conditional Loads, Stores and Barriers */
            'ldrexdeq','ldrexdne','ldrexdcs','ldrexdhs','ldrexdcc','ldrexdlo','ldrexdmi','ldrexdpl','ldrexdvs','ldrexdvc','ldrexdhi','ldrexdls','ldrexdge','ldrexdlt','ldrexdgt','ldrexdle',
            'ldrexeq','ldrexne','ldrexcs','ldrexhs','ldrexcc','ldrexlo','ldrexmi','ldrexpl','ldrexvs','ldrexvc','ldrexhi','ldrexls','ldrexge','ldrexlt','ldrexgt','ldrexle',
            'ldrexheq','ldrexhne','ldrexhcs','ldrexhhs','ldrexhcc','ldrexhlo','ldrexhmi','ldrexhpl','ldrexhvs','ldrexhvc','ldrexhhi','ldrexhls','ldrexhge','ldrexhlt','ldrexhgt','ldrexhle',
            'ldrexbeq','ldrexbne','ldrexbcs','ldrexbhs','ldrexbcc','ldrexblo','ldrexbmi','ldrexbpl','ldrexbvs','ldrexbvc','ldrexbhi','ldrexbls','ldrexbge','ldrexblt','ldrexbgt','ldrexble',
            'strexdeq','strexdne','strexdcs','strexdhs','strexdcc','strexdlo','strexdmi','strexdpl','strexdvs','strexdvc','strexdhi','strexdls','strexdge','strexdlt','strexdgt','strexdle',
            'strexeq','strexne','strexcs','strexhs','strexcc','strexlo','strexmi','strexpl','strexvs','strexvc','strexhi','strexls','strexge','strexlt','strexgt','strexle',
            'strexheq','strexhne','strexhcs','strexhhs','strexhcc','strexhlo','strexhmi','strexhpl','strexhvs','strexhvc','strexhhi','strexhls','strexhge','strexhlt','strexhgt','strexhle',
            'strexbeq','strexbne','strexbcs','strexbhs','strexbcc','strexblo','strexbmi','strexbpl','strexbvs','strexbvc','strexbhi','strexbls','strexbge','strexblt','strexbgt','strexble',
            'clrexeq','clrexne','clrexcs','clrexhs','clrexcc','clrexlo','clrexmi','clrexpl','clrexvs','clrexvc','clrexhi','clrexls','clrexge','clrexlt','clrexgt','clrexle',
            'swpeq','swpne','swpcs','swphs','swpcc','swplo','swpmi','swppl','swpvs','swpvc','swphi','swpls','swpge','swplt','swpgt','swple',
            'swpbeq','swpbne','swpbcs','swpbhs','swpbcc','swpblo','swpbmi','swpbpl','swpbvs','swpbvc','swpbhi','swpbls','swpbge','swpblt','swpbgt','swpble',
            'dbceq','dbcne','dbccs','dbchs','dbccc','dbclo','dbcmi','dbcpl','dbcvs','dbcvc','dbchi','dbcls','dbcge','dbclt','dbcgt','dbcle',
            'dsbeq','dsbne','dsbcs','dsbhs','dsbcc','dsblo','dsbmi','dsbpl','dsbvs','dsbvc','dsbhi','dsbls','dsbge','dsblt','dsbgt','dsble',
            'isbeq','isbne','isbcs','isbhs','isbcc','isblo','isbmi','isbpl','isbvs','isbvc','isbhi','isbls','isbge','isblt','isbgt','isble',
            'yieldeq.w','yieldne.w','yieldcs.w','yieldhs.w','yieldcc.w','yieldlo.w','yieldmi.w','yieldpl.w','yieldvs.w','yieldvc.w','yieldhi.w','yieldls.w','yieldge.w','yieldlt.w','yieldgt.w','yieldle.w',
            'yieldeq','yieldne','yieldcs','yieldhs','yieldcc','yieldlo','yieldmi','yieldpl','yieldvs','yieldvc','yieldhi','yieldls','yieldge','yieldlt','yieldgt','yieldle',
            'nopeq.w','nopne.w','nopcs.w','nophs.w','nopcc.w','noplo.w','nopmi.w','noppl.w','nopvs.w','nopvc.w','nophi.w','nopls.w','nopge.w','noplt.w','nopgt.w','nople.w',
            'nopeq','nopne','nopcs','nophs','nopcc','noplo','nopmi','noppl','nopvs','nopvc','nophi','nopls','nopge','noplt','nopgt','nople'
            ),
        /* Unconditional ARMv6 SIMD */
        11 => array(
            /* ARMv6 SIMD: Unconditional Addition, Subtraction & Saturation */
            'sadd16','sadd16al',
            'sadd8','sadd8al',
            'uadd16','uadd16al',
            'uadd8','uadd8al',
            'ssub16','ssub16al',
            'ssub8','ssub8al',
            'usub16','usub16al',
            'usub8','usub8al',
            'sasx','sasxal',
            'ssax','ssaxal',
            'uasx','uasxal',
            'usax','usaxal',
            'usad8','usad8al',
            'usada8','usada8al',
            /* ARMv6 SIMD: Unconditional Halving Addition & Subtraction */
            'shadd16','shadd16al',
            'shadd8','shadd8al',
            'uhadd16','uhadd16al',
            'uhadd8','uhadd8al',
            'shsub16','shsub16al',
            'shsub8','shsub8al',
            'uhsub16','uhsub16al',
            'uhsub8','uhsub8al',
            'shasx','shasxal',
            'shsax','shsaxal',
            'uhasx','uhasxal',
            'uhsax','uhsaxal',
            /* ARMv6 SIMD: Unconditional Saturating Operations */
            'qadd','qaddal',
            'qadd16','qadd16al',
            'qadd8','qadd8al',
            'uqadd16','uqadd16al',
            'uqadd8','uqadd8al',
            'qsub','qsubal',
            'qsub16','qsub16al',
            'qsub8','qsub8al',
            'uqsub16','uqsub16al',
            'uqsub8','uqsub8al',
            'qasx','qasxal',
            'qsax','qsaxal',
            'uqasx','uqasxal',
            'uqsax','uqsaxal',
            'qdadd','qdaddal',
            'qdsub','qdsubal',
            'ssat','ssatal',
            'ssat16','ssat16al',
            'usat','usatal',
            'usat16','usat16al',
            /* ARMv6 SIMD: Unconditional Permutation and Combine Operations */
            'sxtah','sxtahal',
            'sxtab','sxtabal',
            'sxtab16','sxtab16al',
            'uxtah','uxtahal',
            'uxtab','uxtabal',
            'uxtab16','uxtab16al',
            'sxth.w','sxthal.w',
            'sxth','sxthal',
            'sxtb.w','sxtbal.w',
            'sxtb','sxtbal',
            'sxtb16','sxtb16al',
            'uxth.w','uxthal.w',
            'uxth','uxthal',
            'uxtb.w','uxtbal.w',
            'uxtb','uxtbal',
            'uxtb16','uxtb16al',
            'pkhbt','pkhbtal',
            'pkhtb','pkhtbal',
            'rbit','rbital',
            'rev.w','reval.w',
            'rev','reval',
            'rev16.w','rev16al.w',
            'rev16','rev16al',
            'revsh.w','revshal.w',
            'revsh','revshal',
            'sel','selal',
            /* ARMv6 SIMD: Unconditional Multiply and Multiply-Add */
            'smlad','smladal',
            'smladx','smladxal',
            'smlsd','smlsdal',
            'smlsdx','smlsdxal',
            'smlald','smlaldal',
            'smlaldx','smlaldxal',
            'smlsld','smlsldal',
            'smlsldx','smlsldxal',
            'smmul','smmulal',
            'smmulr','smmulral',
            'smmla','smmlaal',
            'smmlar','smmlaral',
            'smmls','smmlsal',
            'smmlsr','smmlsral',
            'smuad','smuadal',
            'smuadx','smuadxal',
            'smusd','smusdal',
            'smusdx','smusdxal',
            'umaal','umaalal'
            ),
        /* Conditional ARMv6 SIMD */
        12 => array(
            /* ARMv6 SIMD: Conditional Addition, Subtraction & Saturation */
            'sadd16eq','sadd16ne','sadd16cs','sadd16hs','sadd16cc','sadd16lo','sadd16mi','sadd16pl','sadd16vs','sadd16vc','sadd16hi','sadd16ls','sadd16ge','sadd16lt','sadd16gt','sadd16le',
            'sadd8eq','sadd8ne','sadd8cs','sadd8hs','sadd8cc','sadd8lo','sadd8mi','sadd8pl','sadd8vs','sadd8vc','sadd8hi','sadd8ls','sadd8ge','sadd8lt','sadd8gt','sadd8le',
            'uadd16eq','uadd16ne','uadd16cs','uadd16hs','uadd16cc','uadd16lo','uadd16mi','uadd16pl','uadd16vs','uadd16vc','uadd16hi','uadd16ls','uadd16ge','uadd16lt','uadd16gt','uadd16le',
            'uadd8eq','uadd8ne','uadd8cs','uadd8hs','uadd8cc','uadd8lo','uadd8mi','uadd8pl','uadd8vs','uadd8vc','uadd8hi','uadd8ls','uadd8ge','uadd8lt','uadd8gt','uadd8le',
            'ssub16eq','ssub16ne','ssub16cs','ssub16hs','ssub16cc','ssub16lo','ssub16mi','ssub16pl','ssub16vs','ssub16vc','ssub16hi','ssub16ls','ssub16ge','ssub16lt','ssub16gt','ssub16le',
            'ssub8eq','ssub8ne','ssub8cs','ssub8hs','ssub8cc','ssub8lo','ssub8mi','ssub8pl','ssub8vs','ssub8vc','ssub8hi','ssub8ls','ssub8ge','ssub8lt','ssub8gt','ssub8le',
            'usub16eq','usub16ne','usub16cs','usub16hs','usub16cc','usub16lo','usub16mi','usub16pl','usub16vs','usub16vc','usub16hi','usub16ls','usub16ge','usub16lt','usub16gt','usub16le',
            'usub8eq','usub8ne','usub8cs','usub8hs','usub8cc','usub8lo','usub8mi','usub8pl','usub8vs','usub8vc','usub8hi','usub8ls','usub8ge','usub8lt','usub8gt','usub8le',
            'sasxeq','sasxne','sasxcs','sasxhs','sasxcc','sasxlo','sasxmi','sasxpl','sasxvs','sasxvc','sasxhi','sasxls','sasxge','sasxlt','sasxgt','sasxle',
            'ssaxeq','ssaxne','ssaxcs','ssaxhs','ssaxcc','ssaxlo','ssaxmi','ssaxpl','ssaxvs','ssaxvc','ssaxhi','ssaxls','ssaxge','ssaxlt','ssaxgt','ssaxle',
            'uasxeq','uasxne','uasxcs','uasxhs','uasxcc','uasxlo','uasxmi','uasxpl','uasxvs','uasxvc','uasxhi','uasxls','uasxge','uasxlt','uasxgt','uasxle',
            'usaxeq','usaxne','usaxcs','usaxhs','usaxcc','usaxlo','usaxmi','usaxpl','usaxvs','usaxvc','usaxhi','usaxls','usaxge','usaxlt','usaxgt','usaxle',
            'usad8eq','usad8ne','usad8cs','usad8hs','usad8cc','usad8lo','usad8mi','usad8pl','usad8vs','usad8vc','usad8hi','usad8ls','usad8ge','usad8lt','usad8gt','usad8le',
            'usada8eq','usada8ne','usada8cs','usada8hs','usada8cc','usada8lo','usada8mi','usada8pl','usada8vs','usada8vc','usada8hi','usada8ls','usada8ge','usada8lt','usada8gt','usada8le',
            /* ARMv6 SIMD: Conditional Halving Addition & Subtraction */
            'shadd16eq','shadd16ne','shadd16cs','shadd16hs','shadd16cc','shadd16lo','shadd16mi','shadd16pl','shadd16vs','shadd16vc','shadd16hi','shadd16ls','shadd16ge','shadd16lt','shadd16gt','shadd16le',
            'shadd8eq','shadd8ne','shadd8cs','shadd8hs','shadd8cc','shadd8lo','shadd8mi','shadd8pl','shadd8vs','shadd8vc','shadd8hi','shadd8ls','shadd8ge','shadd8lt','shadd8gt','shadd8le',
            'uhadd16eq','uhadd16ne','uhadd16cs','uhadd16hs','uhadd16cc','uhadd16lo','uhadd16mi','uhadd16pl','uhadd16vs','uhadd16vc','uhadd16hi','uhadd16ls','uhadd16ge','uhadd16lt','uhadd16gt','uhadd16le',
            'uhadd8eq','uhadd8ne','uhadd8cs','uhadd8hs','uhadd8cc','uhadd8lo','uhadd8mi','uhadd8pl','uhadd8vs','uhadd8vc','uhadd8hi','uhadd8ls','uhadd8ge','uhadd8lt','uhadd8gt','uhadd8le',
            'shsub16eq','shsub16ne','shsub16cs','shsub16hs','shsub16cc','shsub16lo','shsub16mi','shsub16pl','shsub16vs','shsub16vc','shsub16hi','shsub16ls','shsub16ge','shsub16lt','shsub16gt','shsub16le',
            'shsub8eq','shsub8ne','shsub8cs','shsub8hs','shsub8cc','shsub8lo','shsub8mi','shsub8pl','shsub8vs','shsub8vc','shsub8hi','shsub8ls','shsub8ge','shsub8lt','shsub8gt','shsub8le',
            'uhsub16eq','uhsub16ne','uhsub16cs','uhsub16hs','uhsub16cc','uhsub16lo','uhsub16mi','uhsub16pl','uhsub16vs','uhsub16vc','uhsub16hi','uhsub16ls','uhsub16ge','uhsub16lt','uhsub16gt','uhsub16le',
            'uhsub8eq','uhsub8ne','uhsub8cs','uhsub8hs','uhsub8cc','uhsub8lo','uhsub8mi','uhsub8pl','uhsub8vs','uhsub8vc','uhsub8hi','uhsub8ls','uhsub8ge','uhsub8lt','uhsub8gt','uhsub8le',
            'shasxeq','shasxne','shasxcs','shasxhs','shasxcc','shasxlo','shasxmi','shasxpl','shasxvs','shasxvc','shasxhi','shasxls','shasxge','shasxlt','shasxgt','shasxle',
            'shsaxeq','shsaxne','shsaxcs','shsaxhs','shsaxcc','shsaxlo','shsaxmi','shsaxpl','shsaxvs','shsaxvc','shsaxhi','shsaxls','shsaxge','shsaxlt','shsaxgt','shsaxle',
            'uhasxeq','uhasxne','uhasxcs','uhasxhs','uhasxcc','uhasxlo','uhasxmi','uhasxpl','uhasxvs','uhasxvc','uhasxhi','uhasxls','uhasxge','uhasxlt','uhasxgt','uhasxle',
            'uhsaxeq','uhsaxne','uhsaxcs','uhsaxhs','uhsaxcc','uhsaxlo','uhsaxmi','uhsaxpl','uhsaxvs','uhsaxvc','uhsaxhi','uhsaxls','uhsaxge','uhsaxlt','uhsaxgt','uhsaxle',
            /* ARMv6 SIMD: Conditional Saturating Operations */
            'qaddeq','qaddne','qaddcs','qaddhs','qaddcc','qaddlo','qaddmi','qaddpl','qaddvs','qaddvc','qaddhi','qaddls','qaddge','qaddlt','qaddgt','qaddle',
            'qadd16eq','qadd16ne','qadd16cs','qadd16hs','qadd16cc','qadd16lo','qadd16mi','qadd16pl','qadd16vs','qadd16vc','qadd16hi','qadd16ls','qadd16ge','qadd16lt','qadd16gt','qadd16le',
            'qadd8eq','qadd8ne','qadd8cs','qadd8hs','qadd8cc','qadd8lo','qadd8mi','qadd8pl','qadd8vs','qadd8vc','qadd8hi','qadd8ls','qadd8ge','qadd8lt','qadd8gt','qadd8le',
            'uqadd16eq','uqadd16ne','uqadd16cs','uqadd16hs','uqadd16cc','uqadd16lo','uqadd16mi','uqadd16pl','uqadd16vs','uqadd16vc','uqadd16hi','uqadd16ls','uqadd16ge','uqadd16lt','uqadd16gt','uqadd16le',
            'uqadd8eq','uqadd8ne','uqadd8cs','uqadd8hs','uqadd8cc','uqadd8lo','uqadd8mi','uqadd8pl','uqadd8vs','uqadd8vc','uqadd8hi','uqadd8ls','uqadd8ge','uqadd8lt','uqadd8gt','uqadd8le',
            'qsubeq','qsubne','qsubcs','qsubhs','qsubcc','qsublo','qsubmi','qsubpl','qsubvs','qsubvc','qsubhi','qsubls','qsubge','qsublt','qsubgt','qsuble',
            'qsub16eq','qsub16ne','qsub16cs','qsub16hs','qsub16cc','qsub16lo','qsub16mi','qsub16pl','qsub16vs','qsub16vc','qsub16hi','qsub16ls','qsub16ge','qsub16lt','qsub16gt','qsub16le',
            'qsub8eq','qsub8ne','qsub8cs','qsub8hs','qsub8cc','qsub8lo','qsub8mi','qsub8pl','qsub8vs','qsub8vc','qsub8hi','qsub8ls','qsub8ge','qsub8lt','qsub8gt','qsub8le',
            'uqsub16eq','uqsub16ne','uqsub16cs','uqsub16hs','uqsub16cc','uqsub16lo','uqsub16mi','uqsub16pl','uqsub16vs','uqsub16vc','uqsub16hi','uqsub16ls','uqsub16ge','uqsub16lt','uqsub16gt','uqsub16le',
            'uqsub8eq','uqsub8ne','uqsub8cs','uqsub8hs','uqsub8cc','uqsub8lo','uqsub8mi','uqsub8pl','uqsub8vs','uqsub8vc','uqsub8hi','uqsub8ls','uqsub8ge','uqsub8lt','uqsub8gt','uqsub8le',
            'qasxeq','qasxne','qasxcs','qasxhs','qasxcc','qasxlo','qasxmi','qasxpl','qasxvs','qasxvc','qasxhi','qasxls','qasxge','qasxlt','qasxgt','qasxle',
            'qsaxeq','qsaxne','qsaxcs','qsaxhs','qsaxcc','qsaxlo','qsaxmi','qsaxpl','qsaxvs','qsaxvc','qsaxhi','qsaxls','qsaxge','qsaxlt','qsaxgt','qsaxle',
            'uqasxeq','uqasxne','uqasxcs','uqasxhs','uqasxcc','uqasxlo','uqasxmi','uqasxpl','uqasxvs','uqasxvc','uqasxhi','uqasxls','uqasxge','uqasxlt','uqasxgt','uqasxle',
            'uqsaxeq','uqsaxne','uqsaxcs','uqsaxhs','uqsaxcc','uqsaxlo','uqsaxmi','uqsaxpl','uqsaxvs','uqsaxvc','uqsaxhi','uqsaxls','uqsaxge','uqsaxlt','uqsaxgt','uqsaxle',
            'qdaddeq','qdaddne','qdaddcs','qdaddhs','qdaddcc','qdaddlo','qdaddmi','qdaddpl','qdaddvs','qdaddvc','qdaddhi','qdaddls','qdaddge','qdaddlt','qdaddgt','qdaddle',
            'qdsubeq','qdsubne','qdsubcs','qdsubhs','qdsubcc','qdsublo','qdsubmi','qdsubpl','qdsubvs','qdsubvc','qdsubhi','qdsubls','qdsubge','qdsublt','qdsubgt','qdsuble',
            'ssateq','ssatne','ssatcs','ssaths','ssatcc','ssatlo','ssatmi','ssatpl','ssatvs','ssatvc','ssathi','ssatls','ssatge','ssatlt','ssatgt','ssatle',
            'ssat16eq','ssat16ne','ssat16cs','ssat16hs','ssat16cc','ssat16lo','ssat16mi','ssat16pl','ssat16vs','ssat16vc','ssat16hi','ssat16ls','ssat16ge','ssat16lt','ssat16gt','ssat16le',
            'usateq','usatne','usatcs','usaths','usatcc','usatlo','usatmi','usatpl','usatvs','usatvc','usathi','usatls','usatge','usatlt','usatgt','usatle',
            'usat16eq','usat16ne','usat16cs','usat16hs','usat16cc','usat16lo','usat16mi','usat16pl','usat16vs','usat16vc','usat16hi','usat16ls','usat16ge','usat16lt','usat16gt','usat16le',
            /* ARMv6 SIMD: Conditional Permutation and Combine Operations */
            'sxtaheq','sxtahne','sxtahcs','sxtahhs','sxtahcc','sxtahlo','sxtahmi','sxtahpl','sxtahvs','sxtahvc','sxtahhi','sxtahls','sxtahge','sxtahlt','sxtahgt','sxtahle',
            'sxtabeq','sxtabne','sxtabcs','sxtabhs','sxtabcc','sxtablo','sxtabmi','sxtabpl','sxtabvs','sxtabvc','sxtabhi','sxtabls','sxtabge','sxtablt','sxtabgt','sxtable',
            'sxtab16eq','sxtab16ne','sxtab16cs','sxtab16hs','sxtab16cc','sxtab16lo','sxtab16mi','sxtab16pl','sxtab16vs','sxtab16vc','sxtab16hi','sxtab16ls','sxtab16ge','sxtab16lt','sxtab16gt','sxtab16le',
            'uxtaheq','uxtahne','uxtahcs','uxtahhs','uxtahcc','uxtahlo','uxtahmi','uxtahpl','uxtahvs','uxtahvc','uxtahhi','uxtahls','uxtahge','uxtahlt','uxtahgt','uxtahle',
            'uxtabeq','uxtabne','uxtabcs','uxtabhs','uxtabcc','uxtablo','uxtabmi','uxtabpl','uxtabvs','uxtabvc','uxtabhi','uxtabls','uxtabge','uxtablt','uxtabgt','uxtable',
            'uxtab16eq','uxtab16ne','uxtab16cs','uxtab16hs','uxtab16cc','uxtab16lo','uxtab16mi','uxtab16pl','uxtab16vs','uxtab16vc','uxtab16hi','uxtab16ls','uxtab16ge','uxtab16lt','uxtab16gt','uxtab16le',
            'sxtheq.w','sxthne.w','sxthcs.w','sxthhs.w','sxthcc.w','sxthlo.w','sxthmi.w','sxthpl.w','sxthvs.w','sxthvc.w','sxthhi.w','sxthls.w','sxthge.w','sxthlt.w','sxthgt.w','sxthle.w',
            'sxtheq','sxthne','sxthcs','sxthhs','sxthcc','sxthlo','sxthmi','sxthpl','sxthvs','sxthvc','sxthhi','sxthls','sxthge','sxthlt','sxthgt','sxthle',
            'sxtbeq.w','sxtbne.w','sxtbcs.w','sxtbhs.w','sxtbcc.w','sxtblo.w','sxtbmi.w','sxtbpl.w','sxtbvs.w','sxtbvc.w','sxtbhi.w','sxtbls.w','sxtbge.w','sxtblt.w','sxtbgt.w','sxtble.w',
            'sxtbeq','sxtbne','sxtbcs','sxtbhs','sxtbcc','sxtblo','sxtbmi','sxtbpl','sxtbvs','sxtbvc','sxtbhi','sxtbls','sxtbge','sxtblt','sxtbgt','sxtble',
            'sxtb16eq','sxtb16ne','sxtb16cs','sxtb16hs','sxtb16cc','sxtb16lo','sxtb16mi','sxtb16pl','sxtb16vs','sxtb16vc','sxtb16hi','sxtb16ls','sxtb16ge','sxtb16lt','sxtb16gt','sxtb16le',
            'uxtheq.w','uxthne.w','uxthcs.w','uxthhs.w','uxthcc.w','uxthlo.w','uxthmi.w','uxthpl.w','uxthvs.w','uxthvc.w','uxthhi.w','uxthls.w','uxthge.w','uxthlt.w','uxthgt.w','uxthle.w',
            'uxtheq','uxthne','uxthcs','uxthhs','uxthcc','uxthlo','uxthmi','uxthpl','uxthvs','uxthvc','uxthhi','uxthls','uxthge','uxthlt','uxthgt','uxthle',
            'uxtbeq.w','uxtbne.w','uxtbcs.w','uxtbhs.w','uxtbcc.w','uxtblo.w','uxtbmi.w','uxtbpl.w','uxtbvs.w','uxtbvc.w','uxtbhi.w','uxtbls.w','uxtbge.w','uxtblt.w','uxtbgt.w','uxtble.w',
            'uxtbeq','uxtbne','uxtbcs','uxtbhs','uxtbcc','uxtblo','uxtbmi','uxtbpl','uxtbvs','uxtbvc','uxtbhi','uxtbls','uxtbge','uxtblt','uxtbgt','uxtble',
            'uxtb16eq','uxtb16ne','uxtb16cs','uxtb16hs','uxtb16cc','uxtb16lo','uxtb16mi','uxtb16pl','uxtb16vs','uxtb16vc','uxtb16hi','uxtb16ls','uxtb16ge','uxtb16lt','uxtb16gt','uxtb16le',
            'pkhbteq','pkhbtne','pkhbtcs','pkhbths','pkhbtcc','pkhbtlo','pkhbtmi','pkhbtpl','pkhbtvs','pkhbtvc','pkhbthi','pkhbtls','pkhbtge','pkhbtlt','pkhbtgt','pkhbtle',
            'pkhtbeq','pkhtbne','pkhtbcs','pkhtbhs','pkhtbcc','pkhtblo','pkhtbmi','pkhtbpl','pkhtbvs','pkhtbvc','pkhtbhi','pkhtbls','pkhtbge','pkhtblt','pkhtbgt','pkhtble',
            'rbiteq','rbitne','rbitcs','rbiths','rbitcc','rbitlo','rbitmi','rbitpl','rbitvs','rbitvc','rbithi','rbitls','rbitge','rbitlt','rbitgt','rbitle',
            'reveq.w','revne.w','revcs.w','revhs.w','revcc.w','revlo.w','revmi.w','revpl.w','revvs.w','revvc.w','revhi.w','revls.w','revge.w','revlt.w','revgt.w','revle.w',
            'reveq','revne','revcs','revhs','revcc','revlo','revmi','revpl','revvs','revvc','revhi','revls','revge','revlt','revgt','revle',
            'rev16eq.w','rev16ne.w','rev16cs.w','rev16hs.w','rev16cc.w','rev16lo.w','rev16mi.w','rev16pl.w','rev16vs.w','rev16vc.w','rev16hi.w','rev16ls.w','rev16ge.w','rev16lt.w','rev16gt.w','rev16le.w',
            'rev16eq','rev16ne','rev16cs','rev16hs','rev16cc','rev16lo','rev16mi','rev16pl','rev16vs','rev16vc','rev16hi','rev16ls','rev16ge','rev16lt','rev16gt','rev16le',
            'revsheq.w','revshne.w','revshcs.w','revshhs.w','revshcc.w','revshlo.w','revshmi.w','revshpl.w','revshvs.w','revshvc.w','revshhi.w','revshls.w','revshge.w','revshlt.w','revshgt.w','revshle.w',
            'revsheq','revshne','revshcs','revshhs','revshcc','revshlo','revshmi','revshpl','revshvs','revshvc','revshhi','revshls','revshge','revshlt','revshgt','revshle',
            'seleq','selne','selcs','selhs','selcc','sello','selmi','selpl','selvs','selvc','selhi','sells','selge','sellt','selgt','selle',
            /* ARMv6 SIMD: Conditional Multiply and Multiply-Add */
            'smladeq','smladne','smladcs','smladhs','smladcc','smladlo','smladmi','smladpl','smladvs','smladvc','smladhi','smladls','smladge','smladlt','smladgt','smladle',
            'smladxeq','smladxne','smladxcs','smladxhs','smladxcc','smladxlo','smladxmi','smladxpl','smladxvs','smladxvc','smladxhi','smladxls','smladxge','smladxlt','smladxgt','smladxle',
            'smlsdeq','smlsdne','smlsdcs','smlsdhs','smlsdcc','smlsdlo','smlsdmi','smlsdpl','smlsdvs','smlsdvc','smlsdhi','smlsdls','smlsdge','smlsdlt','smlsdgt','smlsdle',
            'smlsdxeq','smlsdxne','smlsdxcs','smlsdxhs','smlsdxcc','smlsdxlo','smlsdxmi','smlsdxpl','smlsdxvs','smlsdxvc','smlsdxhi','smlsdxls','smlsdxge','smlsdxlt','smlsdxgt','smlsdxle',
            'smlaldeq','smlaldne','smlaldcs','smlaldhs','smlaldcc','smlaldlo','smlaldmi','smlaldpl','smlaldvs','smlaldvc','smlaldhi','smlaldls','smlaldge','smlaldlt','smlaldgt','smlaldle',
            'smlaldxeq','smlaldxne','smlaldxcs','smlaldxhs','smlaldxcc','smlaldxlo','smlaldxmi','smlaldxpl','smlaldxvs','smlaldxvc','smlaldxhi','smlaldxls','smlaldxge','smlaldxlt','smlaldxgt','smlaldxle',
            'smlsldeq','smlsldne','smlsldcs','smlsldhs','smlsldcc','smlsldlo','smlsldmi','smlsldpl','smlsldvs','smlsldvc','smlsldhi','smlsldls','smlsldge','smlsldlt','smlsldgt','smlsldle',
            'smlsldxeq','smlsldxne','smlsldxcs','smlsldxhs','smlsldxcc','smlsldxlo','smlsldxmi','smlsldxpl','smlsldxvs','smlsldxvc','smlsldxhi','smlsldxls','smlsldxge','smlsldxlt','smlsldxgt','smlsldxle',
            'smmuleq','smmulne','smmulcs','smmulhs','smmulcc','smmullo','smmulmi','smmulpl','smmulvs','smmulvc','smmulhi','smmulls','smmulge','smmullt','smmulgt','smmulle',
            'smmulreq','smmulrne','smmulrcs','smmulrhs','smmulrcc','smmulrlo','smmulrmi','smmulrpl','smmulrvs','smmulrvc','smmulrhi','smmulrls','smmulrge','smmulrlt','smmulrgt','smmulrle',
            'smmlaeq','smmlane','smmlacs','smmlahs','smmlacc','smmlalo','smmlami','smmlapl','smmlavs','smmlavc','smmlahi','smmlals','smmlage','smmlalt','smmlagt','smmlale',
            'smmlareq','smmlarne','smmlarcs','smmlarhs','smmlarcc','smmlarlo','smmlarmi','smmlarpl','smmlarvs','smmlarvc','smmlarhi','smmlarls','smmlarge','smmlarlt','smmlargt','smmlarle',
            'smmlseq','smmlsne','smmlscs','smmlshs','smmlscc','smmlslo','smmlsmi','smmlspl','smmlsvs','smmlsvc','smmlshi','smmlsls','smmlsge','smmlslt','smmlsgt','smmlsle',
            'smmlsreq','smmlsrne','smmlsrcs','smmlsrhs','smmlsrcc','smmlsrlo','smmlsrmi','smmlsrpl','smmlsrvs','smmlsrvc','smmlsrhi','smmlsrls','smmlsrge','smmlsrlt','smmlsrgt','smmlsrle',
            'smuadeq','smuadne','smuadcs','smuadhs','smuadcc','smuadlo','smuadmi','smuadpl','smuadvs','smuadvc','smuadhi','smuadls','smuadge','smuadlt','smuadgt','smuadle',
            'smuadxeq','smuadxne','smuadxcs','smuadxhs','smuadxcc','smuadxlo','smuadxmi','smuadxpl','smuadxvs','smuadxvc','smuadxhi','smuadxls','smuadxge','smuadxlt','smuadxgt','smuadxle',
            'smusdeq','smusdne','smusdcs','smusdhs','smusdcc','smusdlo','smusdmi','smusdpl','smusdvs','smusdvc','smusdhi','smusdls','smusdge','smusdlt','smusdgt','smusdle',
            'smusdxeq','smusdxne','smusdxcs','smusdxhs','smusdxcc','smusdxlo','smusdxmi','smusdxpl','smusdxvs','smusdxvc','smusdxhi','smusdxls','smusdxge','smusdxlt','smusdxgt','smusdxle',
            'umaaleq','umaalne','umaalcs','umaalhs','umaalcc','umaallo','umaalmi','umaalpl','umaalvs','umaalvc','umaalhi','umaalls','umaalge','umaallt','umaalgt','umaalle'
            ),
        /* Unconditional Coprocessor Instructions */
        13 => array(
            /* Data Processing: Unconditional Coprocessor Instructions */
            'cdp','cdpal',
            'cdp2','cdp2al',
            'ldc','ldcal',
            'ldcl','ldclal',
            'ldc2','ldc2al',
            'ldc2l','ldc2lal',
            'stc','stcal',
            'stcl','stclal',
            'stc2','stc2al',
            'stc2l','stc2lal',
            'mcr','mcral',
            'mcr2','mcr2al',
            'mcrr','mcrral',
            'mcrr2','mcrr2al',
            'mrc','mrcal',
            'mrc2','mrc2al',
            'mrrc','mrrcal',
            'mrrc2','mrrc2al'
            ),
        /* Conditional Coprocessor Instructions */
        14 => array(
            /* Data Processing: Conditional Coprocessor Instructions */
            'cdpeq','cdpne','cdpcs','cdphs','cdpcc','cdplo','cdpmi','cdppl','cdpvs','cdpvc','cdphi','cdpls','cdpge','cdplt','cdpgt','cdple',
            'cdp2eq','cdp2ne','cdp2cs','cdp2hs','cdp2cc','cdp2lo','cdp2mi','cdp2pl','cdp2vs','cdp2vc','cdp2hi','cdp2ls','cdp2ge','cdp2lt','cdp2gt','cdp2le',
            'ldceq','ldcne','ldccs','ldchs','ldccc','ldclo','ldcmi','ldcpl','ldcvs','ldcvc','ldchi','ldcls','ldcge','ldclt','ldcgt','ldcle',
            'ldcleq','ldclne','ldclcs','ldclhs','ldclcc','ldcllo','ldclmi','ldclpl','ldclvs','ldclvc','ldclhi','ldclls','ldclge','ldcllt','ldclgt','ldclle',
            'ldc2eq','ldc2ne','ldc2cs','ldc2hs','ldc2cc','ldc2lo','ldc2mi','ldc2pl','ldc2vs','ldc2vc','ldc2hi','ldc2ls','ldc2ge','ldc2lt','ldc2gt','ldc2le',
            'ldc2leq','ldc2lne','ldc2lcs','ldc2lhs','ldc2lcc','ldc2llo','ldc2lmi','ldc2lpl','ldc2lvs','ldc2lvc','ldc2lhi','ldc2lls','ldc2lge','ldc2llt','ldc2lgt','ldc2lle',
            'stceq','stcne','stccs','stchs','stccc','stclo','stcmi','stcpl','stcvs','stcvc','stchi','stcls','stcge','stclt','stcgt','stcle',
            'stcleq','stclne','stclcs','stclhs','stclcc','stcllo','stclmi','stclpl','stclvs','stclvc','stclhi','stclls','stclge','stcllt','stclgt','stclle',
            'stc2eq','stc2ne','stc2cs','stc2hs','stc2cc','stc2lo','stc2mi','stc2pl','stc2vs','stc2vc','stc2hi','stc2ls','stc2ge','stc2lt','stc2gt','stc2le',
            'stc2leq','stc2lne','stc2lcs','stc2lhs','stc2lcc','stc2llo','stc2lmi','stc2lpl','stc2lvs','stc2lvc','stc2lhi','stc2lls','stc2lge','stc2llt','stc2lgt','stc2lle',
            'mcreq','mcrne','mcrcs','mcrhs','mcrcc','mcrlo','mcrmi','mcrpl','mcrvs','mcrvc','mcrhi','mcrls','mcrge','mcrlt','mcrgt','mcrle',
            'mcr2eq','mcr2ne','mcr2cs','mcr2hs','mcr2cc','mcr2lo','mcr2mi','mcr2pl','mcr2vs','mcr2vc','mcr2hi','mcr2ls','mcr2ge','mcr2lt','mcr2gt','mcr2le',
            'mcrreq','mcrrne','mcrrcs','mcrrhs','mcrrcc','mcrrlo','mcrrmi','mcrrpl','mcrrvs','mcrrvc','mcrrhi','mcrrls','mcrrge','mcrrlt','mcrrgt','mcrrle',
            'mcrr2eq','mcrr2ne','mcrr2cs','mcrr2hs','mcrr2cc','mcrr2lo','mcrr2mi','mcrr2pl','mcrr2vs','mcrr2vc','mcrr2hi','mcrr2ls','mcrr2ge','mcrr2lt','mcrr2gt','mcrr2le',
            'mrceq','mrcne','mrccs','mrchs','mrccc','mrclo','mrcmi','mrcpl','mrcvs','mrcvc','mrchi','mrcls','mrcge','mrclt','mrcgt','mrcle',
            'mrc2eq','mrc2ne','mrc2cs','mrc2hs','mrc2cc','mrc2lo','mrc2mi','mrc2pl','mrc2vs','mrc2vc','mrc2hi','mrc2ls','mrc2ge','mrc2lt','mrc2gt','mrc2le',
            'mrrceq','mrrcne','mrrccs','mrrchs','mrrccc','mrrclo','mrrcmi','mrrcpl','mrrcvs','mrrcvc','mrrchi','mrrcls','mrrcge','mrrclt','mrrcgt','mrrcle',
            'mrrc2eq','mrrc2ne','mrrc2cs','mrrc2hs','mrrc2cc','mrrc2lo','mrrc2mi','mrrc2pl','mrrc2vs','mrrc2vc','mrrc2hi','mrrc2ls','mrrc2ge','mrrc2lt','mrrc2gt','mrrc2le'
            ),
        /* Unconditional System Instructions */
        15 => array(
            /* System: Unconditional Debug and State-Change Instructions */
            'bkpt',
            'dbg','dbgal',
            'setend',
            'svc','svcal',
            'sev.w','seval.w',
            'sev','seval',
            'wfe.w','wfeal.w',
            'wfe','wfeal',
            'wfi.w','wfial.w',
            'wfi','wfial',
            /* System: Unconditional ThumbEE Instructions */
            'enterx',
            'leavex',
            'chka.n','chkaal.n',
            'chka','chkaal',
            'hb.n','hbal.n',
            'hb','hbal',
            'hbl.n','hblal.n',
            'hbl','hblal',
            'hblp.n','hblpal.n',
            'hblp','hblpal',
            'hbp.n','hbpal.n',
            'hbp','hbpal',
            /* System: Unconditional Privileged Instructions */
            'cpsie.n',
            'cpsie.w',
            'cpsie',
            'cpsid.n',
            'cpsid.w',
            'cpsid',
            'smc','smcal',
            'rfeda','rfedaal',
            'rfedb','rfedbal',
            'rfeia','rfeiaal',
            'rfeib','rfeibal',
            'srsda','srsdaal',
            'srsdb','srsdbal',
            'srsia','srsiaal',
            'srsib','srsibal'
            ),
        /* Conditional System Instructions */
        16 => array(
            /* System: Conditional Debug and State-Change Instructions */
            'dbgeq','dbgne','dbgcs','dbghs','dbgcc','dbglo','dbgmi','dbgpl','dbgvs','dbgvc','dbghi','dbgls','dbgge','dbglt','dbggt','dbgle',
            'svceq','svcne','svccs','svchs','svccc','svclo','svcmi','svcpl','svcvs','svcvc','svchi','svcls','svcge','svclt','svcgt','svcle',
            'seveq.w','sevne.w','sevcs.w','sevhs.w','sevcc.w','sevlo.w','sevmi.w','sevpl.w','sevvs.w','sevvc.w','sevhi.w','sevls.w','sevge.w','sevlt.w','sevgt.w','sevle.w',
            'seveq','sevne','sevcs','sevhs','sevcc','sevlo','sevmi','sevpl','sevvs','sevvc','sevhi','sevls','sevge','sevlt','sevgt','sevle',
            'wfeeq.w','wfene.w','wfecs.w','wfehs.w','wfecc.w','wfelo.w','wfemi.w','wfepl.w','wfevs.w','wfevc.w','wfehi.w','wfels.w','wfege.w','wfelt.w','wfegt.w','wfele.w',
            'wfeeq','wfene','wfecs','wfehs','wfecc','wfelo','wfemi','wfepl','wfevs','wfevc','wfehi','wfels','wfege','wfelt','wfegt','wfele',
            'wfieq.w','wfine.w','wfics.w','wfihs.w','wficc.w','wfilo.w','wfimi.w','wfipl.w','wfivs.w','wfivc.w','wfihi.w','wfils.w','wfige.w','wfilt.w','wfigt.w','wfile.w',
            'wfieq','wfine','wfics','wfihs','wficc','wfilo','wfimi','wfipl','wfivs','wfivc','wfihi','wfils','wfige','wfilt','wfigt','wfile',
            /* System: Conditional ThumbEE Instructions */
            'chkaeq.n','chkane.n','chkacs.n','chkahs.n','chkacc.n','chkalo.n','chkami.n','chkapl.n','chkavs.n','chkavc.n','chkahi.n','chkals.n','chkage.n','chkalt.n','chkagt.n','chkale.n',
            'chkaeq','chkane','chkacs','chkahs','chkacc','chkalo','chkami','chkapl','chkavs','chkavc','chkahi','chkals','chkage','chkalt','chkagt','chkale',
            'hbeq.n','hbne.n','hbcs.n','hbhs.n','hbcc.n','hblo.n','hbmi.n','hbpl.n','hbvs.n','hbvc.n','hbhi.n','hbls.n','hbge.n','hblt.n','hbgt.n','hble.n',
            'hbeq','hbne','hbcs','hbhs','hbcc','hblo','hbmi','hbpl','hbvs','hbvc','hbhi','hbls','hbge','hblt','hbgt','hble',
            'hbleq.n','hblne.n','hblcs.n','hblhs.n','hblcc.n','hbllo.n','hblmi.n','hblpl.n','hblvs.n','hblvc.n','hblhi.n','hblls.n','hblge.n','hbllt.n','hblgt.n','hblle.n',
            'hbleq','hblne','hblcs','hblhs','hblcc','hbllo','hblmi','hblpl','hblvs','hblvc','hblhi','hblls','hblge','hbllt','hblgt','hblle',
            'hblpeq.n','hblpne.n','hblpcs.n','hblphs.n','hblpcc.n','hblplo.n','hblpmi.n','hblppl.n','hblpvs.n','hblpvc.n','hblphi.n','hblpls.n','hblpge.n','hblplt.n','hblpgt.n','hblple.n',
            'hblpeq','hblpne','hblpcs','hblphs','hblpcc','hblplo','hblpmi','hblppl','hblpvs','hblpvc','hblphi','hblpls','hblpge','hblplt','hblpgt','hblple',
            'hbpeq.n','hbpne.n','hbpcs.n','hbphs.n','hbpcc.n','hbplo.n','hbpmi.n','hbppl.n','hbpvs.n','hbpvc.n','hbphi.n','hbpls.n','hbpge.n','hbplt.n','hbpgt.n','hbple.n',
            'hbpeq','hbpne','hbpcs','hbphs','hbpcc','hbplo','hbpmi','hbppl','hbpvs','hbpvc','hbphi','hbpls','hbpge','hbplt','hbpgt','hbple',
            /* System: Conditional Privileged Instructions */
            'smceq','smcne','smccs','smchs','smccc','smclo','smcmi','smcpl','smcvs','smcvc','smchi','smcls','smcge','smclt','smcgt','smcle',
            'rfedaeq','rfedane','rfedacs','rfedahs','rfedacc','rfedalo','rfedami','rfedapl','rfedavs','rfedavc','rfedahi','rfedals','rfedage','rfedalt','rfedagt','rfedale',
            'rfedbeq','rfedbne','rfedbcs','rfedbhs','rfedbcc','rfedblo','rfedbmi','rfedbpl','rfedbvs','rfedbvc','rfedbhi','rfedbls','rfedbge','rfedblt','rfedbgt','rfedble',
            'rfeiaeq','rfeiane','rfeiacs','rfeiahs','rfeiacc','rfeialo','rfeiami','rfeiapl','rfeiavs','rfeiavc','rfeiahi','rfeials','rfeiage','rfeialt','rfeiagt','rfeiale',
            'rfeibeq','rfeibne','rfeibcs','rfeibhs','rfeibcc','rfeiblo','rfeibmi','rfeibpl','rfeibvs','rfeibvc','rfeibhi','rfeibls','rfeibge','rfeiblt','rfeibgt','rfeible',
            'srsdaeq','srsdane','srsdacs','srsdahs','srsdacc','srsdalo','srsdami','srsdapl','srsdavs','srsdavc','srsdahi','srsdals','srsdage','srsdalt','srsdagt','srsdale',
            'srsdbeq','srsdbne','srsdbcs','srsdbhs','srsdbcc','srsdblo','srsdbmi','srsdbpl','srsdbvs','srsdbvc','srsdbhi','srsdbls','srsdbge','srsdblt','srsdbgt','srsdble',
            'srsiaeq','srsiane','srsiacs','srsiahs','srsiacc','srsialo','srsiami','srsiapl','srsiavs','srsiavc','srsiahi','srsials','srsiage','srsialt','srsiagt','srsiale',
            'srsibeq','srsibne','srsibcs','srsibhs','srsibcc','srsiblo','srsibmi','srsibpl','srsibvs','srsibvc','srsibhi','srsibls','srsibge','srsiblt','srsibgt','srsible'
            ),
        /* Unconditional WMMX/WMMX2 instructions */
        17 => array(
            /* Unconditional WMMX/WMMX2 SIMD Instructions */
            'tandcb','tandcbal',
            'tandch','tandchal',
            'tandcw','tandcwal',
            'tbcstb','tbcstbal',
            'tbcsth','tbcsthal',
            'tbcstw','tbcstwal',
            'textrcb','textrcbal',
            'textrch','textrchal',
            'textrcw','textrcwal',
            'textrmsb','textrmsbal',
            'textrmsh','textrmshal',
            'textrmsw','textrmswal',
            'textrmub','textrmubal',
            'textrmuh','textrmuhal',
            'textrmuw','textrmuwal',
            'tinsrb','tinsrbal',
            'tinsrh','tinsrhal',
            'tinsrw','tinsrwal',
            'tmcr','tmcral',
            'tmcrr','tmcrral',
            'tmia','tmiaal',
            'tmiaph','tmiaphal',
            'tmiabb','tmiabbal',
            'tmiabt','tmiabtal',
            'tmiatb','tmiatbal',
            'tmiatt','tmiattal',
            'tmovmskb','tmovmskbal',
            'tmovmskh','tmovmskhal',
            'tmovmskw','tmovmskwal',
            'tmrc','tmrcal',
            'tmrrc','tmrrcal',
            'torcb','torcbal',
            'torch','torchal',
            'torcw','torcwal',
            'torvscb','torvscbal',
            'torvsch','torvschal',
            'torvscw','torvscwal',
            'wabsb','wabsbal',
            'wabsh','wabshal',
            'wabsw','wabswal',
            'wabsdiffb','wabsdiffbal',
            'wabsdiffh','wabsdiffhal',
            'wabsdiffw','wabsdiffwal',
            'waccb','waccbal',
            'wacch','wacchal',
            'waccw','waccwal',
            'waddb','waddbal',
            'waddh','waddhal',
            'waddw','waddwal',
            'waddbc','waddbcal',
            'waddhc','waddhcal',
            'waddwc','waddwcal',
            'waddbss','waddbssal',
            'waddhss','waddhssal',
            'waddwss','waddwssal',
            'waddbus','waddbusal',
            'waddhus','waddhusal',
            'waddwus','waddwusal',
            'waddsubhx','waddsubhxal',
            'waligni','walignial',
            'walignr0','walignr0al',
            'walignr1','walignr1al',
            'walignr2','walignr2al',
            'walignr3','walignr3al',
            'wand','wandal',
            'wandn','wandnal',
            'wavg2b','wavg2bal',
            'wavg2h','wavg2hal',
            'wavg2br','wavg2bral',
            'wavg2hr','wavg2hral',
            'wavg4','wavg4al',
            'wavg4r','wavg4ral',
            'wcmpeqb','wcmpeqbal',
            'wcmpeqh','wcmpeqhal',
            'wcmpeqw','wcmpeqwal',
            'wcmpgtsb','wcmpgtsbal',
            'wcmpgtsh','wcmpgtshal',
            'wcmpgtsw','wcmpgtswal',
            'wcmpgtub','wcmpgtubal',
            'wcmpgtuh','wcmpgtuhal',
            'wcmpgtuw','wcmpgtuwal',
            'wldrb','wldrbal',
            'wldrh','wldrhal',
            'wldrw','wldrwal',
            'wldrd','wldrdal',
            'wmacs','wmacsal',
            'wmacu','wmacual',
            'wmacsz','wmacszal',
            'wmacuz','wmacuzal',
            'wmadds','wmaddsal',
            'wmaddu','wmaddual',
            'wmaddsx','wmaddsxal',
            'wmaddux','wmadduxal',
            'wmaddsn','wmaddsnal',
            'wmaddun','wmaddunal',
            'wmaxsb','wmaxsbal',
            'wmaxsh','wmaxshal',
            'wmaxsw','wmaxswal',
            'wmaxub','wmaxubal',
            'wmaxuh','wmaxuhal',
            'wmaxuw','wmaxuwal',
            'wmerge','wmergeal',
            'wmiabb','wmiabbal',
            'wmiabt','wmiabtal',
            'wmiatb','wmiatbal',
            'wmiatt','wmiattal',
            'wmiabbn','wmiabbnal',
            'wmiabtn','wmiabtnal',
            'wmiatbn','wmiatbnal',
            'wmiattn','wmiattnal',
            'wmiawbb','wmiawbbal',
            'wmiawbt','wmiawbtal',
            'wmiawtb','wmiawtbal',
            'wmiawtt','wmiawttal',
            'wmiawbbn','wmiawbbnal',
            'wmiawbtn','wmiawbtnal',
            'wmiawtbn','wmiawtbnal',
            'wmiawttn','wmiawttnal',
            'wminsb','wminsbal',
            'wminsh','wminshal',
            'wminsw','wminswal',
            'wminub','wminubal',
            'wminuh','wminuhal',
            'wminuw','wminuwal',
            'wmov','wmoval',
            'wmulsm','wmulsmal',
            'wmulsl','wmulslal',
            'wmulum','wmulumal',
            'wmulul','wmululal',
            'wmulsmr','wmulsmral',
            'wmulslr','wmulslral',
            'wmulumr','wmulumral',
            'wmululr','wmululral',
            'wmulwum','wmulwumal',
            'wmulwsm','wmulwsmal',
            'wmulwl','wmulwlal',
            'wmulwumr','wmulwumral',
            'wmulwsmr','wmulwsmral',
            'wor','woral',
            'wpackhss','wpackhssal',
            'wpackwss','wpackwssal',
            'wpackdss','wpackdssal',
            'wpackhus','wpackhusal',
            'wpackwus','wpackwusal',
            'wpackdus','wpackdusal',
            'wqmiabb','wqmiabbal',
            'wqmiabt','wqmiabtal',
            'wqmiatb','wqmiatbal',
            'wqmiatt','wqmiattal',
            'wqmiabbn','wqmiabbnal',
            'wqmiabtn','wqmiabtnal',
            'wqmiatbn','wqmiatbnal',
            'wqmiattn','wqmiattnal',
            'wqmulm','wqmulmal',
            'wqmulmr','wqmulmral',
            'wqmulwm','wqmulwmal',
            'wqmulwmr','wqmulwmral',
            'wrorh','wrorhal',
            'wrorw','wrorwal',
            'wrord','wrordal',
            'wrorhg','wrorhgal',
            'wrorwg','wrorwgal',
            'wrordg','wrordgal',
            'wsadb','wsadbal',
            'wsadh','wsadhal',
            'wsadbz','wsadbzal',
            'wsadhz','wsadhzal',
            'wshufh','wshufhal',
            'wsllh','wsllhal',
            'wsllw','wsllwal',
            'wslld','wslldal',
            'wsllhg','wsllhgal',
            'wsllwg','wsllwgal',
            'wslldg','wslldgal',
            'wsrah','wsrahal',
            'wsraw','wsrawal',
            'wsrad','wsradal',
            'wsrahg','wsrahgal',
            'wsrawg','wsrawgal',
            'wsradg','wsradgal',
            'wsrlh','wsrlhal',
            'wsrlw','wsrlwal',
            'wsrld','wsrldal',
            'wsrlhg','wsrlhgal',
            'wsrlwg','wsrlwgal',
            'wsrldg','wsrldgal',
            'wstrb','wstrbal',
            'wstrh','wstrhal',
            'wstrw','wstrwal',
            'wstrd','wstrdal',
            'wsubb','wsubbal',
            'wsubh','wsubhal',
            'wsubw','wsubwal',
            'wsubbss','wsubbssal',
            'wsubhss','wsubhssal',
            'wsubwss','wsubwssal',
            'wsubbus','wsubbusal',
            'wsubhus','wsubhusal',
            'wsubwus','wsubwusal',
            'wsubaddhx','wsubaddhxal',
            'wunpckehsb','wunpckehsbal',
            'wunpckehsh','wunpckehshal',
            'wunpckehsw','wunpckehswal',
            'wunpckehub','wunpckehubal',
            'wunpckehuh','wunpckehuhal',
            'wunpckehuw','wunpckehuwal',
            'wunpckihb','wunpckihbal',
            'wunpckihh','wunpckihhal',
            'wunpckihw','wunpckihwal',
            'wunpckelsb','wunpckelsbal',
            'wunpckelsh','wunpckelshal',
            'wunpckelsw','wunpckelswal',
            'wunpckelub','wunpckelubal',
            'wunpckeluh','wunpckeluhal',
            'wunpckeluw','wunpckeluwal',
            'wunpckilb','wunpckilbal',
            'wunpckilh','wunpckilhal',
            'wunpckilw','wunpckilwal',
            'wxor','wxoral',
            'wzero','wzeroal'
            ),
        /* Conditional WMMX/WMMX2 SIMD Instructions */
        18 => array(
            /* Conditional WMMX/WMMX2 SIMD Instructions */
            'tandcbeq','tandcbne','tandcbcs','tandcbhs','tandcbcc','tandcblo','tandcbmi','tandcbpl','tandcbvs','tandcbvc','tandcbhi','tandcbls','tandcbge','tandcblt','tandcbgt','tandcble',
            'tandcheq','tandchne','tandchcs','tandchhs','tandchcc','tandchlo','tandchmi','tandchpl','tandchvs','tandchvc','tandchhi','tandchls','tandchge','tandchlt','tandchgt','tandchle',
            'tandcweq','tandcwne','tandcwcs','tandcwhs','tandcwcc','tandcwlo','tandcwmi','tandcwpl','tandcwvs','tandcwvc','tandcwhi','tandcwls','tandcwge','tandcwlt','tandcwgt','tandcwle',
            'tbcstbeq','tbcstbne','tbcstbcs','tbcstbhs','tbcstbcc','tbcstblo','tbcstbmi','tbcstbpl','tbcstbvs','tbcstbvc','tbcstbhi','tbcstbls','tbcstbge','tbcstblt','tbcstbgt','tbcstble',
            'tbcstheq','tbcsthne','tbcsthcs','tbcsthhs','tbcsthcc','tbcsthlo','tbcsthmi','tbcsthpl','tbcsthvs','tbcsthvc','tbcsthhi','tbcsthls','tbcsthge','tbcsthlt','tbcsthgt','tbcsthle',
            'tbcstweq','tbcstwne','tbcstwcs','tbcstwhs','tbcstwcc','tbcstwlo','tbcstwmi','tbcstwpl','tbcstwvs','tbcstwvc','tbcstwhi','tbcstwls','tbcstwge','tbcstwlt','tbcstwgt','tbcstwle',
            'textrcbeq','textrcbne','textrcbcs','textrcbhs','textrcbcc','textrcblo','textrcbmi','textrcbpl','textrcbvs','textrcbvc','textrcbhi','textrcbls','textrcbge','textrcblt','textrcbgt','textrcble',
            'textrcheq','textrchne','textrchcs','textrchhs','textrchcc','textrchlo','textrchmi','textrchpl','textrchvs','textrchvc','textrchhi','textrchls','textrchge','textrchlt','textrchgt','textrchle',
            'textrcweq','textrcwne','textrcwcs','textrcwhs','textrcwcc','textrcwlo','textrcwmi','textrcwpl','textrcwvs','textrcwvc','textrcwhi','textrcwls','textrcwge','textrcwlt','textrcwgt','textrcwle',
            'textrmsbeq','textrmsbne','textrmsbcs','textrmsbhs','textrmsbcc','textrmsblo','textrmsbmi','textrmsbpl','textrmsbvs','textrmsbvc','textrmsbhi','textrmsbls','textrmsbge','textrmsblt','textrmsbgt','textrmsble',
            'textrmsheq','textrmshne','textrmshcs','textrmshhs','textrmshcc','textrmshlo','textrmshmi','textrmshpl','textrmshvs','textrmshvc','textrmshhi','textrmshls','textrmshge','textrmshlt','textrmshgt','textrmshle',
            'textrmsweq','textrmswne','textrmswcs','textrmswhs','textrmswcc','textrmswlo','textrmswmi','textrmswpl','textrmswvs','textrmswvc','textrmswhi','textrmswls','textrmswge','textrmswlt','textrmswgt','textrmswle',
            'textrmubeq','textrmubne','textrmubcs','textrmubhs','textrmubcc','textrmublo','textrmubmi','textrmubpl','textrmubvs','textrmubvc','textrmubhi','textrmubls','textrmubge','textrmublt','textrmubgt','textrmuble',
            'textrmuheq','textrmuhne','textrmuhcs','textrmuhhs','textrmuhcc','textrmuhlo','textrmuhmi','textrmuhpl','textrmuhvs','textrmuhvc','textrmuhhi','textrmuhls','textrmuhge','textrmuhlt','textrmuhgt','textrmuhle',
            'textrmuweq','textrmuwne','textrmuwcs','textrmuwhs','textrmuwcc','textrmuwlo','textrmuwmi','textrmuwpl','textrmuwvs','textrmuwvc','textrmuwhi','textrmuwls','textrmuwge','textrmuwlt','textrmuwgt','textrmuwle',
            'tinsrbeq','tinsrbne','tinsrbcs','tinsrbhs','tinsrbcc','tinsrblo','tinsrbmi','tinsrbpl','tinsrbvs','tinsrbvc','tinsrbhi','tinsrbls','tinsrbge','tinsrblt','tinsrbgt','tinsrble',
            'tinsrheq','tinsrhne','tinsrhcs','tinsrhhs','tinsrhcc','tinsrhlo','tinsrhmi','tinsrhpl','tinsrhvs','tinsrhvc','tinsrhhi','tinsrhls','tinsrhge','tinsrhlt','tinsrhgt','tinsrhle',
            'tinsrweq','tinsrwne','tinsrwcs','tinsrwhs','tinsrwcc','tinsrwlo','tinsrwmi','tinsrwpl','tinsrwvs','tinsrwvc','tinsrwhi','tinsrwls','tinsrwge','tinsrwlt','tinsrwgt','tinsrwle',
            'tmcreq','tmcrne','tmcrcs','tmcrhs','tmcrcc','tmcrlo','tmcrmi','tmcrpl','tmcrvs','tmcrvc','tmcrhi','tmcrls','tmcrge','tmcrlt','tmcrgt','tmcrle',
            'tmcrreq','tmcrrne','tmcrrcs','tmcrrhs','tmcrrcc','tmcrrlo','tmcrrmi','tmcrrpl','tmcrrvs','tmcrrvc','tmcrrhi','tmcrrls','tmcrrge','tmcrrlt','tmcrrgt','tmcrrle',
            'tmiaeq','tmiane','tmiacs','tmiahs','tmiacc','tmialo','tmiami','tmiapl','tmiavs','tmiavc','tmiahi','tmials','tmiage','tmialt','tmiagt','tmiale',
            'tmiapheq','tmiaphne','tmiaphcs','tmiaphhs','tmiaphcc','tmiaphlo','tmiaphmi','tmiaphpl','tmiaphvs','tmiaphvc','tmiaphhi','tmiaphls','tmiaphge','tmiaphlt','tmiaphgt','tmiaphle',
            'tmiabbeq','tmiabbne','tmiabbcs','tmiabbhs','tmiabbcc','tmiabblo','tmiabbmi','tmiabbpl','tmiabbvs','tmiabbvc','tmiabbhi','tmiabbls','tmiabbge','tmiabblt','tmiabbgt','tmiabble',
            'tmiabteq','tmiabtne','tmiabtcs','tmiabths','tmiabtcc','tmiabtlo','tmiabtmi','tmiabtpl','tmiabtvs','tmiabtvc','tmiabthi','tmiabtls','tmiabtge','tmiabtlt','tmiabtgt','tmiabtle',
            'tmiatbeq','tmiatbne','tmiatbcs','tmiatbhs','tmiatbcc','tmiatblo','tmiatbmi','tmiatbpl','tmiatbvs','tmiatbvc','tmiatbhi','tmiatbls','tmiatbge','tmiatblt','tmiatbgt','tmiatble',
            'tmiatteq','tmiattne','tmiattcs','tmiatths','tmiattcc','tmiattlo','tmiattmi','tmiattpl','tmiattvs','tmiattvc','tmiatthi','tmiattls','tmiattge','tmiattlt','tmiattgt','tmiattle',
            'tmovmskbeq','tmovmskbne','tmovmskbcs','tmovmskbhs','tmovmskbcc','tmovmskblo','tmovmskbmi','tmovmskbpl','tmovmskbvs','tmovmskbvc','tmovmskbhi','tmovmskbls','tmovmskbge','tmovmskblt','tmovmskbgt','tmovmskble',
            'tmovmskheq','tmovmskhne','tmovmskhcs','tmovmskhhs','tmovmskhcc','tmovmskhlo','tmovmskhmi','tmovmskhpl','tmovmskhvs','tmovmskhvc','tmovmskhhi','tmovmskhls','tmovmskhge','tmovmskhlt','tmovmskhgt','tmovmskhle',
            'tmovmskweq','tmovmskwne','tmovmskwcs','tmovmskwhs','tmovmskwcc','tmovmskwlo','tmovmskwmi','tmovmskwpl','tmovmskwvs','tmovmskwvc','tmovmskwhi','tmovmskwls','tmovmskwge','tmovmskwlt','tmovmskwgt','tmovmskwle',
            'tmrceq','tmrcne','tmrccs','tmrchs','tmrccc','tmrclo','tmrcmi','tmrcpl','tmrcvs','tmrcvc','tmrchi','tmrcls','tmrcge','tmrclt','tmrcgt','tmrcle',
            'tmrrceq','tmrrcne','tmrrccs','tmrrchs','tmrrccc','tmrrclo','tmrrcmi','tmrrcpl','tmrrcvs','tmrrcvc','tmrrchi','tmrrcls','tmrrcge','tmrrclt','tmrrcgt','tmrrcle',
            'torcbeq','torcbne','torcbcs','torcbhs','torcbcc','torcblo','torcbmi','torcbpl','torcbvs','torcbvc','torcbhi','torcbls','torcbge','torcblt','torcbgt','torcble',
            'torcheq','torchne','torchcs','torchhs','torchcc','torchlo','torchmi','torchpl','torchvs','torchvc','torchhi','torchls','torchge','torchlt','torchgt','torchle',
            'torcweq','torcwne','torcwcs','torcwhs','torcwcc','torcwlo','torcwmi','torcwpl','torcwvs','torcwvc','torcwhi','torcwls','torcwge','torcwlt','torcwgt','torcwle',
            'torvscbeq','torvscbne','torvscbcs','torvscbhs','torvscbcc','torvscblo','torvscbmi','torvscbpl','torvscbvs','torvscbvc','torvscbhi','torvscbls','torvscbge','torvscblt','torvscbgt','torvscble',
            'torvscheq','torvschne','torvschcs','torvschhs','torvschcc','torvschlo','torvschmi','torvschpl','torvschvs','torvschvc','torvschhi','torvschls','torvschge','torvschlt','torvschgt','torvschle',
            'torvscweq','torvscwne','torvscwcs','torvscwhs','torvscwcc','torvscwlo','torvscwmi','torvscwpl','torvscwvs','torvscwvc','torvscwhi','torvscwls','torvscwge','torvscwlt','torvscwgt','torvscwle',
            'wabsbeq','wabsbne','wabsbcs','wabsbhs','wabsbcc','wabsblo','wabsbmi','wabsbpl','wabsbvs','wabsbvc','wabsbhi','wabsbls','wabsbge','wabsblt','wabsbgt','wabsble',
            'wabsheq','wabshne','wabshcs','wabshhs','wabshcc','wabshlo','wabshmi','wabshpl','wabshvs','wabshvc','wabshhi','wabshls','wabshge','wabshlt','wabshgt','wabshle',
            'wabsweq','wabswne','wabswcs','wabswhs','wabswcc','wabswlo','wabswmi','wabswpl','wabswvs','wabswvc','wabswhi','wabswls','wabswge','wabswlt','wabswgt','wabswle',
            'wabsdiffbeq','wabsdiffbne','wabsdiffbcs','wabsdiffbhs','wabsdiffbcc','wabsdiffblo','wabsdiffbmi','wabsdiffbpl','wabsdiffbvs','wabsdiffbvc','wabsdiffbhi','wabsdiffbls','wabsdiffbge','wabsdiffblt','wabsdiffbgt','wabsdiffble',
            'wabsdiffheq','wabsdiffhne','wabsdiffhcs','wabsdiffhhs','wabsdiffhcc','wabsdiffhlo','wabsdiffhmi','wabsdiffhpl','wabsdiffhvs','wabsdiffhvc','wabsdiffhhi','wabsdiffhls','wabsdiffhge','wabsdiffhlt','wabsdiffhgt','wabsdiffhle',
            'wabsdiffweq','wabsdiffwne','wabsdiffwcs','wabsdiffwhs','wabsdiffwcc','wabsdiffwlo','wabsdiffwmi','wabsdiffwpl','wabsdiffwvs','wabsdiffwvc','wabsdiffwhi','wabsdiffwls','wabsdiffwge','wabsdiffwlt','wabsdiffwgt','wabsdiffwle',
            'waccbeq','waccbne','waccbcs','waccbhs','waccbcc','waccblo','waccbmi','waccbpl','waccbvs','waccbvc','waccbhi','waccbls','waccbge','waccblt','waccbgt','waccble',
            'waccheq','wacchne','wacchcs','wacchhs','wacchcc','wacchlo','wacchmi','wacchpl','wacchvs','wacchvc','wacchhi','wacchls','wacchge','wacchlt','wacchgt','wacchle',
            'waccweq','waccwne','waccwcs','waccwhs','waccwcc','waccwlo','waccwmi','waccwpl','waccwvs','waccwvc','waccwhi','waccwls','waccwge','waccwlt','waccwgt','waccwle',
            'waddbeq','waddbne','waddbcs','waddbhs','waddbcc','waddblo','waddbmi','waddbpl','waddbvs','waddbvc','waddbhi','waddbls','waddbge','waddblt','waddbgt','waddble',
            'waddheq','waddhne','waddhcs','waddhhs','waddhcc','waddhlo','waddhmi','waddhpl','waddhvs','waddhvc','waddhhi','waddhls','waddhge','waddhlt','waddhgt','waddhle',
            'waddweq','waddwne','waddwcs','waddwhs','waddwcc','waddwlo','waddwmi','waddwpl','waddwvs','waddwvc','waddwhi','waddwls','waddwge','waddwlt','waddwgt','waddwle',
            'waddbceq','waddbcne','waddbccs','waddbchs','waddbccc','waddbclo','waddbcmi','waddbcpl','waddbcvs','waddbcvc','waddbchi','waddbcls','waddbcge','waddbclt','waddbcgt','waddbcle',
            'waddhceq','waddhcne','waddhccs','waddhchs','waddhccc','waddhclo','waddhcmi','waddhcpl','waddhcvs','waddhcvc','waddhchi','waddhcls','waddhcge','waddhclt','waddhcgt','waddhcle',
            'waddwceq','waddwcne','waddwccs','waddwchs','waddwccc','waddwclo','waddwcmi','waddwcpl','waddwcvs','waddwcvc','waddwchi','waddwcls','waddwcge','waddwclt','waddwcgt','waddwcle',
            'waddbsseq','waddbssne','waddbsscs','waddbsshs','waddbsscc','waddbsslo','waddbssmi','waddbsspl','waddbssvs','waddbssvc','waddbsshi','waddbssls','waddbssge','waddbsslt','waddbssgt','waddbssle',
            'waddhsseq','waddhssne','waddhsscs','waddhsshs','waddhsscc','waddhsslo','waddhssmi','waddhsspl','waddhssvs','waddhssvc','waddhsshi','waddhssls','waddhssge','waddhsslt','waddhssgt','waddhssle',
            'waddwsseq','waddwssne','waddwsscs','waddwsshs','waddwsscc','waddwsslo','waddwssmi','waddwsspl','waddwssvs','waddwssvc','waddwsshi','waddwssls','waddwssge','waddwsslt','waddwssgt','waddwssle',
            'waddbuseq','waddbusne','waddbuscs','waddbushs','waddbuscc','waddbuslo','waddbusmi','waddbuspl','waddbusvs','waddbusvc','waddbushi','waddbusls','waddbusge','waddbuslt','waddbusgt','waddbusle',
            'waddhuseq','waddhusne','waddhuscs','waddhushs','waddhuscc','waddhuslo','waddhusmi','waddhuspl','waddhusvs','waddhusvc','waddhushi','waddhusls','waddhusge','waddhuslt','waddhusgt','waddhusle',
            'waddwuseq','waddwusne','waddwuscs','waddwushs','waddwuscc','waddwuslo','waddwusmi','waddwuspl','waddwusvs','waddwusvc','waddwushi','waddwusls','waddwusge','waddwuslt','waddwusgt','waddwusle',
            'waddsubhxeq','waddsubhxne','waddsubhxcs','waddsubhxhs','waddsubhxcc','waddsubhxlo','waddsubhxmi','waddsubhxpl','waddsubhxvs','waddsubhxvc','waddsubhxhi','waddsubhxls','waddsubhxge','waddsubhxlt','waddsubhxgt','waddsubhxle',
            'walignieq','walignine','walignics','walignihs','walignicc','walignilo','walignimi','walignipl','walignivs','walignivc','walignihi','walignils','walignige','walignilt','walignigt','walignile',
            'walignr0eq','walignr0ne','walignr0cs','walignr0hs','walignr0cc','walignr0lo','walignr0mi','walignr0pl','walignr0vs','walignr0vc','walignr0hi','walignr0ls','walignr0ge','walignr0lt','walignr0gt','walignr0le',
            'walignr1eq','walignr1ne','walignr1cs','walignr1hs','walignr1cc','walignr1lo','walignr1mi','walignr1pl','walignr1vs','walignr1vc','walignr1hi','walignr1ls','walignr1ge','walignr1lt','walignr1gt','walignr1le',
            'walignr2eq','walignr2ne','walignr2cs','walignr2hs','walignr2cc','walignr2lo','walignr2mi','walignr2pl','walignr2vs','walignr2vc','walignr2hi','walignr2ls','walignr2ge','walignr2lt','walignr2gt','walignr2le',
            'walignr3eq','walignr3ne','walignr3cs','walignr3hs','walignr3cc','walignr3lo','walignr3mi','walignr3pl','walignr3vs','walignr3vc','walignr3hi','walignr3ls','walignr3ge','walignr3lt','walignr3gt','walignr3le',
            'wandeq','wandne','wandcs','wandhs','wandcc','wandlo','wandmi','wandpl','wandvs','wandvc','wandhi','wandls','wandge','wandlt','wandgt','wandle',
            'wandneq','wandnne','wandncs','wandnhs','wandncc','wandnlo','wandnmi','wandnpl','wandnvs','wandnvc','wandnhi','wandnls','wandnge','wandnlt','wandngt','wandnle',
            'wavg2beq','wavg2bne','wavg2bcs','wavg2bhs','wavg2bcc','wavg2blo','wavg2bmi','wavg2bpl','wavg2bvs','wavg2bvc','wavg2bhi','wavg2bls','wavg2bge','wavg2blt','wavg2bgt','wavg2ble',
            'wavg2heq','wavg2hne','wavg2hcs','wavg2hhs','wavg2hcc','wavg2hlo','wavg2hmi','wavg2hpl','wavg2hvs','wavg2hvc','wavg2hhi','wavg2hls','wavg2hge','wavg2hlt','wavg2hgt','wavg2hle',
            'wavg2breq','wavg2brne','wavg2brcs','wavg2brhs','wavg2brcc','wavg2brlo','wavg2brmi','wavg2brpl','wavg2brvs','wavg2brvc','wavg2brhi','wavg2brls','wavg2brge','wavg2brlt','wavg2brgt','wavg2brle',
            'wavg2hreq','wavg2hrne','wavg2hrcs','wavg2hrhs','wavg2hrcc','wavg2hrlo','wavg2hrmi','wavg2hrpl','wavg2hrvs','wavg2hrvc','wavg2hrhi','wavg2hrls','wavg2hrge','wavg2hrlt','wavg2hrgt','wavg2hrle',
            'wavg4eq','wavg4ne','wavg4cs','wavg4hs','wavg4cc','wavg4lo','wavg4mi','wavg4pl','wavg4vs','wavg4vc','wavg4hi','wavg4ls','wavg4ge','wavg4lt','wavg4gt','wavg4le',
            'wavg4req','wavg4rne','wavg4rcs','wavg4rhs','wavg4rcc','wavg4rlo','wavg4rmi','wavg4rpl','wavg4rvs','wavg4rvc','wavg4rhi','wavg4rls','wavg4rge','wavg4rlt','wavg4rgt','wavg4rle',
            'wcmpeqbeq','wcmpeqbne','wcmpeqbcs','wcmpeqbhs','wcmpeqbcc','wcmpeqblo','wcmpeqbmi','wcmpeqbpl','wcmpeqbvs','wcmpeqbvc','wcmpeqbhi','wcmpeqbls','wcmpeqbge','wcmpeqblt','wcmpeqbgt','wcmpeqble',
            'wcmpeqheq','wcmpeqhne','wcmpeqhcs','wcmpeqhhs','wcmpeqhcc','wcmpeqhlo','wcmpeqhmi','wcmpeqhpl','wcmpeqhvs','wcmpeqhvc','wcmpeqhhi','wcmpeqhls','wcmpeqhge','wcmpeqhlt','wcmpeqhgt','wcmpeqhle',
            'wcmpeqweq','wcmpeqwne','wcmpeqwcs','wcmpeqwhs','wcmpeqwcc','wcmpeqwlo','wcmpeqwmi','wcmpeqwpl','wcmpeqwvs','wcmpeqwvc','wcmpeqwhi','wcmpeqwls','wcmpeqwge','wcmpeqwlt','wcmpeqwgt','wcmpeqwle',
            'wcmpgtsbeq','wcmpgtsbne','wcmpgtsbcs','wcmpgtsbhs','wcmpgtsbcc','wcmpgtsblo','wcmpgtsbmi','wcmpgtsbpl','wcmpgtsbvs','wcmpgtsbvc','wcmpgtsbhi','wcmpgtsbls','wcmpgtsbge','wcmpgtsblt','wcmpgtsbgt','wcmpgtsble',
            'wcmpgtsheq','wcmpgtshne','wcmpgtshcs','wcmpgtshhs','wcmpgtshcc','wcmpgtshlo','wcmpgtshmi','wcmpgtshpl','wcmpgtshvs','wcmpgtshvc','wcmpgtshhi','wcmpgtshls','wcmpgtshge','wcmpgtshlt','wcmpgtshgt','wcmpgtshle',
            'wcmpgtsweq','wcmpgtswne','wcmpgtswcs','wcmpgtswhs','wcmpgtswcc','wcmpgtswlo','wcmpgtswmi','wcmpgtswpl','wcmpgtswvs','wcmpgtswvc','wcmpgtswhi','wcmpgtswls','wcmpgtswge','wcmpgtswlt','wcmpgtswgt','wcmpgtswle',
            'wcmpgtubeq','wcmpgtubne','wcmpgtubcs','wcmpgtubhs','wcmpgtubcc','wcmpgtublo','wcmpgtubmi','wcmpgtubpl','wcmpgtubvs','wcmpgtubvc','wcmpgtubhi','wcmpgtubls','wcmpgtubge','wcmpgtublt','wcmpgtubgt','wcmpgtuble',
            'wcmpgtuheq','wcmpgtuhne','wcmpgtuhcs','wcmpgtuhhs','wcmpgtuhcc','wcmpgtuhlo','wcmpgtuhmi','wcmpgtuhpl','wcmpgtuhvs','wcmpgtuhvc','wcmpgtuhhi','wcmpgtuhls','wcmpgtuhge','wcmpgtuhlt','wcmpgtuhgt','wcmpgtuhle',
            'wcmpgtuweq','wcmpgtuwne','wcmpgtuwcs','wcmpgtuwhs','wcmpgtuwcc','wcmpgtuwlo','wcmpgtuwmi','wcmpgtuwpl','wcmpgtuwvs','wcmpgtuwvc','wcmpgtuwhi','wcmpgtuwls','wcmpgtuwge','wcmpgtuwlt','wcmpgtuwgt','wcmpgtuwle',
            'wldrbeq','wldrbne','wldrbcs','wldrbhs','wldrbcc','wldrblo','wldrbmi','wldrbpl','wldrbvs','wldrbvc','wldrbhi','wldrbls','wldrbge','wldrblt','wldrbgt','wldrble',
            'wldrheq','wldrhne','wldrhcs','wldrhhs','wldrhcc','wldrhlo','wldrhmi','wldrhpl','wldrhvs','wldrhvc','wldrhhi','wldrhls','wldrhge','wldrhlt','wldrhgt','wldrhle',
            'wldrweq','wldrwne','wldrwcs','wldrwhs','wldrwcc','wldrwlo','wldrwmi','wldrwpl','wldrwvs','wldrwvc','wldrwhi','wldrwls','wldrwge','wldrwlt','wldrwgt','wldrwle',
            'wldrdeq','wldrdne','wldrdcs','wldrdhs','wldrdcc','wldrdlo','wldrdmi','wldrdpl','wldrdvs','wldrdvc','wldrdhi','wldrdls','wldrdge','wldrdlt','wldrdgt','wldrdle',
            'wmacseq','wmacsne','wmacscs','wmacshs','wmacscc','wmacslo','wmacsmi','wmacspl','wmacsvs','wmacsvc','wmacshi','wmacsls','wmacsge','wmacslt','wmacsgt','wmacsle',
            'wmacueq','wmacune','wmacucs','wmacuhs','wmacucc','wmaculo','wmacumi','wmacupl','wmacuvs','wmacuvc','wmacuhi','wmaculs','wmacuge','wmacult','wmacugt','wmacule',
            'wmacszeq','wmacszne','wmacszcs','wmacszhs','wmacszcc','wmacszlo','wmacszmi','wmacszpl','wmacszvs','wmacszvc','wmacszhi','wmacszls','wmacszge','wmacszlt','wmacszgt','wmacszle',
            'wmacuzeq','wmacuzne','wmacuzcs','wmacuzhs','wmacuzcc','wmacuzlo','wmacuzmi','wmacuzpl','wmacuzvs','wmacuzvc','wmacuzhi','wmacuzls','wmacuzge','wmacuzlt','wmacuzgt','wmacuzle',
            'wmaddseq','wmaddsne','wmaddscs','wmaddshs','wmaddscc','wmaddslo','wmaddsmi','wmaddspl','wmaddsvs','wmaddsvc','wmaddshi','wmaddsls','wmaddsge','wmaddslt','wmaddsgt','wmaddsle',
            'wmaddueq','wmaddune','wmadducs','wmadduhs','wmadducc','wmaddulo','wmaddumi','wmaddupl','wmadduvs','wmadduvc','wmadduhi','wmadduls','wmadduge','wmaddult','wmaddugt','wmaddule',
            'wmaddsxeq','wmaddsxne','wmaddsxcs','wmaddsxhs','wmaddsxcc','wmaddsxlo','wmaddsxmi','wmaddsxpl','wmaddsxvs','wmaddsxvc','wmaddsxhi','wmaddsxls','wmaddsxge','wmaddsxlt','wmaddsxgt','wmaddsxle',
            'wmadduxeq','wmadduxne','wmadduxcs','wmadduxhs','wmadduxcc','wmadduxlo','wmadduxmi','wmadduxpl','wmadduxvs','wmadduxvc','wmadduxhi','wmadduxls','wmadduxge','wmadduxlt','wmadduxgt','wmadduxle',
            'wmaddsneq','wmaddsnne','wmaddsncs','wmaddsnhs','wmaddsncc','wmaddsnlo','wmaddsnmi','wmaddsnpl','wmaddsnvs','wmaddsnvc','wmaddsnhi','wmaddsnls','wmaddsnge','wmaddsnlt','wmaddsngt','wmaddsnle',
            'wmadduneq','wmaddunne','wmadduncs','wmaddunhs','wmadduncc','wmaddunlo','wmaddunmi','wmaddunpl','wmaddunvs','wmaddunvc','wmaddunhi','wmaddunls','wmaddunge','wmaddunlt','wmaddungt','wmaddunle',
            'wmaxsbeq','wmaxsbne','wmaxsbcs','wmaxsbhs','wmaxsbcc','wmaxsblo','wmaxsbmi','wmaxsbpl','wmaxsbvs','wmaxsbvc','wmaxsbhi','wmaxsbls','wmaxsbge','wmaxsblt','wmaxsbgt','wmaxsble',
            'wmaxsheq','wmaxshne','wmaxshcs','wmaxshhs','wmaxshcc','wmaxshlo','wmaxshmi','wmaxshpl','wmaxshvs','wmaxshvc','wmaxshhi','wmaxshls','wmaxshge','wmaxshlt','wmaxshgt','wmaxshle',
            'wmaxsweq','wmaxswne','wmaxswcs','wmaxswhs','wmaxswcc','wmaxswlo','wmaxswmi','wmaxswpl','wmaxswvs','wmaxswvc','wmaxswhi','wmaxswls','wmaxswge','wmaxswlt','wmaxswgt','wmaxswle',
            'wmaxubeq','wmaxubne','wmaxubcs','wmaxubhs','wmaxubcc','wmaxublo','wmaxubmi','wmaxubpl','wmaxubvs','wmaxubvc','wmaxubhi','wmaxubls','wmaxubge','wmaxublt','wmaxubgt','wmaxuble',
            'wmaxuheq','wmaxuhne','wmaxuhcs','wmaxuhhs','wmaxuhcc','wmaxuhlo','wmaxuhmi','wmaxuhpl','wmaxuhvs','wmaxuhvc','wmaxuhhi','wmaxuhls','wmaxuhge','wmaxuhlt','wmaxuhgt','wmaxuhle',
            'wmaxuweq','wmaxuwne','wmaxuwcs','wmaxuwhs','wmaxuwcc','wmaxuwlo','wmaxuwmi','wmaxuwpl','wmaxuwvs','wmaxuwvc','wmaxuwhi','wmaxuwls','wmaxuwge','wmaxuwlt','wmaxuwgt','wmaxuwle',
            'wmergeeq','wmergene','wmergecs','wmergehs','wmergecc','wmergelo','wmergemi','wmergepl','wmergevs','wmergevc','wmergehi','wmergels','wmergege','wmergelt','wmergegt','wmergele',
            'wmiabbeq','wmiabbne','wmiabbcs','wmiabbhs','wmiabbcc','wmiabblo','wmiabbmi','wmiabbpl','wmiabbvs','wmiabbvc','wmiabbhi','wmiabbls','wmiabbge','wmiabblt','wmiabbgt','wmiabble',
            'wmiabteq','wmiabtne','wmiabtcs','wmiabths','wmiabtcc','wmiabtlo','wmiabtmi','wmiabtpl','wmiabtvs','wmiabtvc','wmiabthi','wmiabtls','wmiabtge','wmiabtlt','wmiabtgt','wmiabtle',
            'wmiatbeq','wmiatbne','wmiatbcs','wmiatbhs','wmiatbcc','wmiatblo','wmiatbmi','wmiatbpl','wmiatbvs','wmiatbvc','wmiatbhi','wmiatbls','wmiatbge','wmiatblt','wmiatbgt','wmiatble',
            'wmiatteq','wmiattne','wmiattcs','wmiatths','wmiattcc','wmiattlo','wmiattmi','wmiattpl','wmiattvs','wmiattvc','wmiatthi','wmiattls','wmiattge','wmiattlt','wmiattgt','wmiattle',
            'wmiabbneq','wmiabbnne','wmiabbncs','wmiabbnhs','wmiabbncc','wmiabbnlo','wmiabbnmi','wmiabbnpl','wmiabbnvs','wmiabbnvc','wmiabbnhi','wmiabbnls','wmiabbnge','wmiabbnlt','wmiabbngt','wmiabbnle',
            'wmiabtneq','wmiabtnne','wmiabtncs','wmiabtnhs','wmiabtncc','wmiabtnlo','wmiabtnmi','wmiabtnpl','wmiabtnvs','wmiabtnvc','wmiabtnhi','wmiabtnls','wmiabtnge','wmiabtnlt','wmiabtngt','wmiabtnle',
            'wmiatbneq','wmiatbnne','wmiatbncs','wmiatbnhs','wmiatbncc','wmiatbnlo','wmiatbnmi','wmiatbnpl','wmiatbnvs','wmiatbnvc','wmiatbnhi','wmiatbnls','wmiatbnge','wmiatbnlt','wmiatbngt','wmiatbnle',
            'wmiattneq','wmiattnne','wmiattncs','wmiattnhs','wmiattncc','wmiattnlo','wmiattnmi','wmiattnpl','wmiattnvs','wmiattnvc','wmiattnhi','wmiattnls','wmiattnge','wmiattnlt','wmiattngt','wmiattnle',
            'wmiawbbeq','wmiawbbne','wmiawbbcs','wmiawbbhs','wmiawbbcc','wmiawbblo','wmiawbbmi','wmiawbbpl','wmiawbbvs','wmiawbbvc','wmiawbbhi','wmiawbbls','wmiawbbge','wmiawbblt','wmiawbbgt','wmiawbble',
            'wmiawbteq','wmiawbtne','wmiawbtcs','wmiawbths','wmiawbtcc','wmiawbtlo','wmiawbtmi','wmiawbtpl','wmiawbtvs','wmiawbtvc','wmiawbthi','wmiawbtls','wmiawbtge','wmiawbtlt','wmiawbtgt','wmiawbtle',
            'wmiawtbeq','wmiawtbne','wmiawtbcs','wmiawtbhs','wmiawtbcc','wmiawtblo','wmiawtbmi','wmiawtbpl','wmiawtbvs','wmiawtbvc','wmiawtbhi','wmiawtbls','wmiawtbge','wmiawtblt','wmiawtbgt','wmiawtble',
            'wmiawtteq','wmiawttne','wmiawttcs','wmiawtths','wmiawttcc','wmiawttlo','wmiawttmi','wmiawttpl','wmiawttvs','wmiawttvc','wmiawtthi','wmiawttls','wmiawttge','wmiawttlt','wmiawttgt','wmiawttle',
            'wmiawbbneq','wmiawbbnne','wmiawbbncs','wmiawbbnhs','wmiawbbncc','wmiawbbnlo','wmiawbbnmi','wmiawbbnpl','wmiawbbnvs','wmiawbbnvc','wmiawbbnhi','wmiawbbnls','wmiawbbnge','wmiawbbnlt','wmiawbbngt','wmiawbbnle',
            'wmiawbtneq','wmiawbtnne','wmiawbtncs','wmiawbtnhs','wmiawbtncc','wmiawbtnlo','wmiawbtnmi','wmiawbtnpl','wmiawbtnvs','wmiawbtnvc','wmiawbtnhi','wmiawbtnls','wmiawbtnge','wmiawbtnlt','wmiawbtngt','wmiawbtnle',
            'wmiawtbneq','wmiawtbnne','wmiawtbncs','wmiawtbnhs','wmiawtbncc','wmiawtbnlo','wmiawtbnmi','wmiawtbnpl','wmiawtbnvs','wmiawtbnvc','wmiawtbnhi','wmiawtbnls','wmiawtbnge','wmiawtbnlt','wmiawtbngt','wmiawtbnle',
            'wmiawttneq','wmiawttnne','wmiawttncs','wmiawttnhs','wmiawttncc','wmiawttnlo','wmiawttnmi','wmiawttnpl','wmiawttnvs','wmiawttnvc','wmiawttnhi','wmiawttnls','wmiawttnge','wmiawttnlt','wmiawttngt','wmiawttnle',
            'wminsbeq','wminsbne','wminsbcs','wminsbhs','wminsbcc','wminsblo','wminsbmi','wminsbpl','wminsbvs','wminsbvc','wminsbhi','wminsbls','wminsbge','wminsblt','wminsbgt','wminsble',
            'wminsheq','wminshne','wminshcs','wminshhs','wminshcc','wminshlo','wminshmi','wminshpl','wminshvs','wminshvc','wminshhi','wminshls','wminshge','wminshlt','wminshgt','wminshle',
            'wminsweq','wminswne','wminswcs','wminswhs','wminswcc','wminswlo','wminswmi','wminswpl','wminswvs','wminswvc','wminswhi','wminswls','wminswge','wminswlt','wminswgt','wminswle',
            'wminubeq','wminubne','wminubcs','wminubhs','wminubcc','wminublo','wminubmi','wminubpl','wminubvs','wminubvc','wminubhi','wminubls','wminubge','wminublt','wminubgt','wminuble',
            'wminuheq','wminuhne','wminuhcs','wminuhhs','wminuhcc','wminuhlo','wminuhmi','wminuhpl','wminuhvs','wminuhvc','wminuhhi','wminuhls','wminuhge','wminuhlt','wminuhgt','wminuhle',
            'wminuweq','wminuwne','wminuwcs','wminuwhs','wminuwcc','wminuwlo','wminuwmi','wminuwpl','wminuwvs','wminuwvc','wminuwhi','wminuwls','wminuwge','wminuwlt','wminuwgt','wminuwle',
            'wmoveq','wmovne','wmovcs','wmovhs','wmovcc','wmovlo','wmovmi','wmovpl','wmovvs','wmovvc','wmovhi','wmovls','wmovge','wmovlt','wmovgt','wmovle',
            'wmulsmeq','wmulsmne','wmulsmcs','wmulsmhs','wmulsmcc','wmulsmlo','wmulsmmi','wmulsmpl','wmulsmvs','wmulsmvc','wmulsmhi','wmulsmls','wmulsmge','wmulsmlt','wmulsmgt','wmulsmle',
            'wmulsleq','wmulslne','wmulslcs','wmulslhs','wmulslcc','wmulsllo','wmulslmi','wmulslpl','wmulslvs','wmulslvc','wmulslhi','wmulslls','wmulslge','wmulsllt','wmulslgt','wmulslle',
            'wmulumeq','wmulumne','wmulumcs','wmulumhs','wmulumcc','wmulumlo','wmulummi','wmulumpl','wmulumvs','wmulumvc','wmulumhi','wmulumls','wmulumge','wmulumlt','wmulumgt','wmulumle',
            'wmululeq','wmululne','wmululcs','wmululhs','wmululcc','wmulullo','wmululmi','wmululpl','wmululvs','wmululvc','wmululhi','wmululls','wmululge','wmulullt','wmululgt','wmululle',
            'wmulsmreq','wmulsmrne','wmulsmrcs','wmulsmrhs','wmulsmrcc','wmulsmrlo','wmulsmrmi','wmulsmrpl','wmulsmrvs','wmulsmrvc','wmulsmrhi','wmulsmrls','wmulsmrge','wmulsmrlt','wmulsmrgt','wmulsmrle',
            'wmulslreq','wmulslrne','wmulslrcs','wmulslrhs','wmulslrcc','wmulslrlo','wmulslrmi','wmulslrpl','wmulslrvs','wmulslrvc','wmulslrhi','wmulslrls','wmulslrge','wmulslrlt','wmulslrgt','wmulslrle',
            'wmulumreq','wmulumrne','wmulumrcs','wmulumrhs','wmulumrcc','wmulumrlo','wmulumrmi','wmulumrpl','wmulumrvs','wmulumrvc','wmulumrhi','wmulumrls','wmulumrge','wmulumrlt','wmulumrgt','wmulumrle',
            'wmululreq','wmululrne','wmululrcs','wmululrhs','wmululrcc','wmululrlo','wmululrmi','wmululrpl','wmululrvs','wmululrvc','wmululrhi','wmululrls','wmululrge','wmululrlt','wmululrgt','wmululrle',
            'wmulwumeq','wmulwumne','wmulwumcs','wmulwumhs','wmulwumcc','wmulwumlo','wmulwummi','wmulwumpl','wmulwumvs','wmulwumvc','wmulwumhi','wmulwumls','wmulwumge','wmulwumlt','wmulwumgt','wmulwumle',
            'wmulwsmeq','wmulwsmne','wmulwsmcs','wmulwsmhs','wmulwsmcc','wmulwsmlo','wmulwsmmi','wmulwsmpl','wmulwsmvs','wmulwsmvc','wmulwsmhi','wmulwsmls','wmulwsmge','wmulwsmlt','wmulwsmgt','wmulwsmle',
            'wmulwleq','wmulwlne','wmulwlcs','wmulwlhs','wmulwlcc','wmulwllo','wmulwlmi','wmulwlpl','wmulwlvs','wmulwlvc','wmulwlhi','wmulwlls','wmulwlge','wmulwllt','wmulwlgt','wmulwlle',
            'wmulwumreq','wmulwumrne','wmulwumrcs','wmulwumrhs','wmulwumrcc','wmulwumrlo','wmulwumrmi','wmulwumrpl','wmulwumrvs','wmulwumrvc','wmulwumrhi','wmulwumrls','wmulwumrge','wmulwumrlt','wmulwumrgt','wmulwumrle',
            'wmulwsmreq','wmulwsmrne','wmulwsmrcs','wmulwsmrhs','wmulwsmrcc','wmulwsmrlo','wmulwsmrmi','wmulwsmrpl','wmulwsmrvs','wmulwsmrvc','wmulwsmrhi','wmulwsmrls','wmulwsmrge','wmulwsmrlt','wmulwsmrgt','wmulwsmrle',
            'woreq','worne','worcs','worhs','worcc','worlo','wormi','worpl','worvs','worvc','worhi','worls','worge','worlt','worgt','worle',
            'wpackhsseq','wpackhssne','wpackhsscs','wpackhsshs','wpackhsscc','wpackhsslo','wpackhssmi','wpackhsspl','wpackhssvs','wpackhssvc','wpackhsshi','wpackhssls','wpackhssge','wpackhsslt','wpackhssgt','wpackhssle',
            'wpackwsseq','wpackwssne','wpackwsscs','wpackwsshs','wpackwsscc','wpackwsslo','wpackwssmi','wpackwsspl','wpackwssvs','wpackwssvc','wpackwsshi','wpackwssls','wpackwssge','wpackwsslt','wpackwssgt','wpackwssle',
            'wpackdsseq','wpackdssne','wpackdsscs','wpackdsshs','wpackdsscc','wpackdsslo','wpackdssmi','wpackdsspl','wpackdssvs','wpackdssvc','wpackdsshi','wpackdssls','wpackdssge','wpackdsslt','wpackdssgt','wpackdssle',
            'wpackhuseq','wpackhusne','wpackhuscs','wpackhushs','wpackhuscc','wpackhuslo','wpackhusmi','wpackhuspl','wpackhusvs','wpackhusvc','wpackhushi','wpackhusls','wpackhusge','wpackhuslt','wpackhusgt','wpackhusle',
            'wpackwuseq','wpackwusne','wpackwuscs','wpackwushs','wpackwuscc','wpackwuslo','wpackwusmi','wpackwuspl','wpackwusvs','wpackwusvc','wpackwushi','wpackwusls','wpackwusge','wpackwuslt','wpackwusgt','wpackwusle',
            'wpackduseq','wpackdusne','wpackduscs','wpackdushs','wpackduscc','wpackduslo','wpackdusmi','wpackduspl','wpackdusvs','wpackdusvc','wpackdushi','wpackdusls','wpackdusge','wpackduslt','wpackdusgt','wpackdusle',
            'wqmiabbeq','wqmiabbne','wqmiabbcs','wqmiabbhs','wqmiabbcc','wqmiabblo','wqmiabbmi','wqmiabbpl','wqmiabbvs','wqmiabbvc','wqmiabbhi','wqmiabbls','wqmiabbge','wqmiabblt','wqmiabbgt','wqmiabble',
            'wqmiabteq','wqmiabtne','wqmiabtcs','wqmiabths','wqmiabtcc','wqmiabtlo','wqmiabtmi','wqmiabtpl','wqmiabtvs','wqmiabtvc','wqmiabthi','wqmiabtls','wqmiabtge','wqmiabtlt','wqmiabtgt','wqmiabtle',
            'wqmiatbeq','wqmiatbne','wqmiatbcs','wqmiatbhs','wqmiatbcc','wqmiatblo','wqmiatbmi','wqmiatbpl','wqmiatbvs','wqmiatbvc','wqmiatbhi','wqmiatbls','wqmiatbge','wqmiatblt','wqmiatbgt','wqmiatble',
            'wqmiatteq','wqmiattne','wqmiattcs','wqmiatths','wqmiattcc','wqmiattlo','wqmiattmi','wqmiattpl','wqmiattvs','wqmiattvc','wqmiatthi','wqmiattls','wqmiattge','wqmiattlt','wqmiattgt','wqmiattle',
            'wqmiabbneq','wqmiabbnne','wqmiabbncs','wqmiabbnhs','wqmiabbncc','wqmiabbnlo','wqmiabbnmi','wqmiabbnpl','wqmiabbnvs','wqmiabbnvc','wqmiabbnhi','wqmiabbnls','wqmiabbnge','wqmiabbnlt','wqmiabbngt','wqmiabbnle',
            'wqmiabtneq','wqmiabtnne','wqmiabtncs','wqmiabtnhs','wqmiabtncc','wqmiabtnlo','wqmiabtnmi','wqmiabtnpl','wqmiabtnvs','wqmiabtnvc','wqmiabtnhi','wqmiabtnls','wqmiabtnge','wqmiabtnlt','wqmiabtngt','wqmiabtnle',
            'wqmiatbneq','wqmiatbnne','wqmiatbncs','wqmiatbnhs','wqmiatbncc','wqmiatbnlo','wqmiatbnmi','wqmiatbnpl','wqmiatbnvs','wqmiatbnvc','wqmiatbnhi','wqmiatbnls','wqmiatbnge','wqmiatbnlt','wqmiatbngt','wqmiatbnle',
            'wqmiattneq','wqmiattnne','wqmiattncs','wqmiattnhs','wqmiattncc','wqmiattnlo','wqmiattnmi','wqmiattnpl','wqmiattnvs','wqmiattnvc','wqmiattnhi','wqmiattnls','wqmiattnge','wqmiattnlt','wqmiattngt','wqmiattnle',
            'wqmulmeq','wqmulmne','wqmulmcs','wqmulmhs','wqmulmcc','wqmulmlo','wqmulmmi','wqmulmpl','wqmulmvs','wqmulmvc','wqmulmhi','wqmulmls','wqmulmge','wqmulmlt','wqmulmgt','wqmulmle',
            'wqmulmreq','wqmulmrne','wqmulmrcs','wqmulmrhs','wqmulmrcc','wqmulmrlo','wqmulmrmi','wqmulmrpl','wqmulmrvs','wqmulmrvc','wqmulmrhi','wqmulmrls','wqmulmrge','wqmulmrlt','wqmulmrgt','wqmulmrle',
            'wqmulwmeq','wqmulwmne','wqmulwmcs','wqmulwmhs','wqmulwmcc','wqmulwmlo','wqmulwmmi','wqmulwmpl','wqmulwmvs','wqmulwmvc','wqmulwmhi','wqmulwmls','wqmulwmge','wqmulwmlt','wqmulwmgt','wqmulwmle',
            'wqmulwmreq','wqmulwmrne','wqmulwmrcs','wqmulwmrhs','wqmulwmrcc','wqmulwmrlo','wqmulwmrmi','wqmulwmrpl','wqmulwmrvs','wqmulwmrvc','wqmulwmrhi','wqmulwmrls','wqmulwmrge','wqmulwmrlt','wqmulwmrgt','wqmulwmrle',
            'wrorheq','wrorhne','wrorhcs','wrorhhs','wrorhcc','wrorhlo','wrorhmi','wrorhpl','wrorhvs','wrorhvc','wrorhhi','wrorhls','wrorhge','wrorhlt','wrorhgt','wrorhle',
            'wrorweq','wrorwne','wrorwcs','wrorwhs','wrorwcc','wrorwlo','wrorwmi','wrorwpl','wrorwvs','wrorwvc','wrorwhi','wrorwls','wrorwge','wrorwlt','wrorwgt','wrorwle',
            'wrordeq','wrordne','wrordcs','wrordhs','wrordcc','wrordlo','wrordmi','wrordpl','wrordvs','wrordvc','wrordhi','wrordls','wrordge','wrordlt','wrordgt','wrordle',
            'wrorhgeq','wrorhgne','wrorhgcs','wrorhghs','wrorhgcc','wrorhglo','wrorhgmi','wrorhgpl','wrorhgvs','wrorhgvc','wrorhghi','wrorhgls','wrorhgge','wrorhglt','wrorhggt','wrorhgle',
            'wrorwgeq','wrorwgne','wrorwgcs','wrorwghs','wrorwgcc','wrorwglo','wrorwgmi','wrorwgpl','wrorwgvs','wrorwgvc','wrorwghi','wrorwgls','wrorwgge','wrorwglt','wrorwggt','wrorwgle',
            'wrordgeq','wrordgne','wrordgcs','wrordghs','wrordgcc','wrordglo','wrordgmi','wrordgpl','wrordgvs','wrordgvc','wrordghi','wrordgls','wrordgge','wrordglt','wrordggt','wrordgle',
            'wsadbeq','wsadbne','wsadbcs','wsadbhs','wsadbcc','wsadblo','wsadbmi','wsadbpl','wsadbvs','wsadbvc','wsadbhi','wsadbls','wsadbge','wsadblt','wsadbgt','wsadble',
            'wsadheq','wsadhne','wsadhcs','wsadhhs','wsadhcc','wsadhlo','wsadhmi','wsadhpl','wsadhvs','wsadhvc','wsadhhi','wsadhls','wsadhge','wsadhlt','wsadhgt','wsadhle',
            'wsadbzeq','wsadbzne','wsadbzcs','wsadbzhs','wsadbzcc','wsadbzlo','wsadbzmi','wsadbzpl','wsadbzvs','wsadbzvc','wsadbzhi','wsadbzls','wsadbzge','wsadbzlt','wsadbzgt','wsadbzle',
            'wsadhzeq','wsadhzne','wsadhzcs','wsadhzhs','wsadhzcc','wsadhzlo','wsadhzmi','wsadhzpl','wsadhzvs','wsadhzvc','wsadhzhi','wsadhzls','wsadhzge','wsadhzlt','wsadhzgt','wsadhzle',
            'wshufheq','wshufhne','wshufhcs','wshufhhs','wshufhcc','wshufhlo','wshufhmi','wshufhpl','wshufhvs','wshufhvc','wshufhhi','wshufhls','wshufhge','wshufhlt','wshufhgt','wshufhle',
            'wsllheq','wsllhne','wsllhcs','wsllhhs','wsllhcc','wsllhlo','wsllhmi','wsllhpl','wsllhvs','wsllhvc','wsllhhi','wsllhls','wsllhge','wsllhlt','wsllhgt','wsllhle',
            'wsllweq','wsllwne','wsllwcs','wsllwhs','wsllwcc','wsllwlo','wsllwmi','wsllwpl','wsllwvs','wsllwvc','wsllwhi','wsllwls','wsllwge','wsllwlt','wsllwgt','wsllwle',
            'wslldeq','wslldne','wslldcs','wslldhs','wslldcc','wslldlo','wslldmi','wslldpl','wslldvs','wslldvc','wslldhi','wslldls','wslldge','wslldlt','wslldgt','wslldle',
            'wsllhgeq','wsllhgne','wsllhgcs','wsllhghs','wsllhgcc','wsllhglo','wsllhgmi','wsllhgpl','wsllhgvs','wsllhgvc','wsllhghi','wsllhgls','wsllhgge','wsllhglt','wsllhggt','wsllhgle',
            'wsllwgeq','wsllwgne','wsllwgcs','wsllwghs','wsllwgcc','wsllwglo','wsllwgmi','wsllwgpl','wsllwgvs','wsllwgvc','wsllwghi','wsllwgls','wsllwgge','wsllwglt','wsllwggt','wsllwgle',
            'wslldgeq','wslldgne','wslldgcs','wslldghs','wslldgcc','wslldglo','wslldgmi','wslldgpl','wslldgvs','wslldgvc','wslldghi','wslldgls','wslldgge','wslldglt','wslldggt','wslldgle',
            'wsraheq','wsrahne','wsrahcs','wsrahhs','wsrahcc','wsrahlo','wsrahmi','wsrahpl','wsrahvs','wsrahvc','wsrahhi','wsrahls','wsrahge','wsrahlt','wsrahgt','wsrahle',
            'wsraweq','wsrawne','wsrawcs','wsrawhs','wsrawcc','wsrawlo','wsrawmi','wsrawpl','wsrawvs','wsrawvc','wsrawhi','wsrawls','wsrawge','wsrawlt','wsrawgt','wsrawle',
            'wsradeq','wsradne','wsradcs','wsradhs','wsradcc','wsradlo','wsradmi','wsradpl','wsradvs','wsradvc','wsradhi','wsradls','wsradge','wsradlt','wsradgt','wsradle',
            'wsrahgeq','wsrahgne','wsrahgcs','wsrahghs','wsrahgcc','wsrahglo','wsrahgmi','wsrahgpl','wsrahgvs','wsrahgvc','wsrahghi','wsrahgls','wsrahgge','wsrahglt','wsrahggt','wsrahgle',
            'wsrawgeq','wsrawgne','wsrawgcs','wsrawghs','wsrawgcc','wsrawglo','wsrawgmi','wsrawgpl','wsrawgvs','wsrawgvc','wsrawghi','wsrawgls','wsrawgge','wsrawglt','wsrawggt','wsrawgle',
            'wsradgeq','wsradgne','wsradgcs','wsradghs','wsradgcc','wsradglo','wsradgmi','wsradgpl','wsradgvs','wsradgvc','wsradghi','wsradgls','wsradgge','wsradglt','wsradggt','wsradgle',
            'wsrlheq','wsrlhne','wsrlhcs','wsrlhhs','wsrlhcc','wsrlhlo','wsrlhmi','wsrlhpl','wsrlhvs','wsrlhvc','wsrlhhi','wsrlhls','wsrlhge','wsrlhlt','wsrlhgt','wsrlhle',
            'wsrlweq','wsrlwne','wsrlwcs','wsrlwhs','wsrlwcc','wsrlwlo','wsrlwmi','wsrlwpl','wsrlwvs','wsrlwvc','wsrlwhi','wsrlwls','wsrlwge','wsrlwlt','wsrlwgt','wsrlwle',
            'wsrldeq','wsrldne','wsrldcs','wsrldhs','wsrldcc','wsrldlo','wsrldmi','wsrldpl','wsrldvs','wsrldvc','wsrldhi','wsrldls','wsrldge','wsrldlt','wsrldgt','wsrldle',
            'wsrlhgeq','wsrlhgne','wsrlhgcs','wsrlhghs','wsrlhgcc','wsrlhglo','wsrlhgmi','wsrlhgpl','wsrlhgvs','wsrlhgvc','wsrlhghi','wsrlhgls','wsrlhgge','wsrlhglt','wsrlhggt','wsrlhgle',
            'wsrlwgeq','wsrlwgne','wsrlwgcs','wsrlwghs','wsrlwgcc','wsrlwglo','wsrlwgmi','wsrlwgpl','wsrlwgvs','wsrlwgvc','wsrlwghi','wsrlwgls','wsrlwgge','wsrlwglt','wsrlwggt','wsrlwgle',
            'wsrldgeq','wsrldgne','wsrldgcs','wsrldghs','wsrldgcc','wsrldglo','wsrldgmi','wsrldgpl','wsrldgvs','wsrldgvc','wsrldghi','wsrldgls','wsrldgge','wsrldglt','wsrldggt','wsrldgle',
            'wstrbeq','wstrbne','wstrbcs','wstrbhs','wstrbcc','wstrblo','wstrbmi','wstrbpl','wstrbvs','wstrbvc','wstrbhi','wstrbls','wstrbge','wstrblt','wstrbgt','wstrble',
            'wstrheq','wstrhne','wstrhcs','wstrhhs','wstrhcc','wstrhlo','wstrhmi','wstrhpl','wstrhvs','wstrhvc','wstrhhi','wstrhls','wstrhge','wstrhlt','wstrhgt','wstrhle',
            'wstrweq','wstrwne','wstrwcs','wstrwhs','wstrwcc','wstrwlo','wstrwmi','wstrwpl','wstrwvs','wstrwvc','wstrwhi','wstrwls','wstrwge','wstrwlt','wstrwgt','wstrwle',
            'wstrdeq','wstrdne','wstrdcs','wstrdhs','wstrdcc','wstrdlo','wstrdmi','wstrdpl','wstrdvs','wstrdvc','wstrdhi','wstrdls','wstrdge','wstrdlt','wstrdgt','wstrdle',
            'wsubbeq','wsubbne','wsubbcs','wsubbhs','wsubbcc','wsubblo','wsubbmi','wsubbpl','wsubbvs','wsubbvc','wsubbhi','wsubbls','wsubbge','wsubblt','wsubbgt','wsubble',
            'wsubheq','wsubhne','wsubhcs','wsubhhs','wsubhcc','wsubhlo','wsubhmi','wsubhpl','wsubhvs','wsubhvc','wsubhhi','wsubhls','wsubhge','wsubhlt','wsubhgt','wsubhle',
            'wsubweq','wsubwne','wsubwcs','wsubwhs','wsubwcc','wsubwlo','wsubwmi','wsubwpl','wsubwvs','wsubwvc','wsubwhi','wsubwls','wsubwge','wsubwlt','wsubwgt','wsubwle',
            'wsubbsseq','wsubbssne','wsubbsscs','wsubbsshs','wsubbsscc','wsubbsslo','wsubbssmi','wsubbsspl','wsubbssvs','wsubbssvc','wsubbsshi','wsubbssls','wsubbssge','wsubbsslt','wsubbssgt','wsubbssle',
            'wsubhsseq','wsubhssne','wsubhsscs','wsubhsshs','wsubhsscc','wsubhsslo','wsubhssmi','wsubhsspl','wsubhssvs','wsubhssvc','wsubhsshi','wsubhssls','wsubhssge','wsubhsslt','wsubhssgt','wsubhssle',
            'wsubwsseq','wsubwssne','wsubwsscs','wsubwsshs','wsubwsscc','wsubwsslo','wsubwssmi','wsubwsspl','wsubwssvs','wsubwssvc','wsubwsshi','wsubwssls','wsubwssge','wsubwsslt','wsubwssgt','wsubwssle',
            'wsubbuseq','wsubbusne','wsubbuscs','wsubbushs','wsubbuscc','wsubbuslo','wsubbusmi','wsubbuspl','wsubbusvs','wsubbusvc','wsubbushi','wsubbusls','wsubbusge','wsubbuslt','wsubbusgt','wsubbusle',
            'wsubhuseq','wsubhusne','wsubhuscs','wsubhushs','wsubhuscc','wsubhuslo','wsubhusmi','wsubhuspl','wsubhusvs','wsubhusvc','wsubhushi','wsubhusls','wsubhusge','wsubhuslt','wsubhusgt','wsubhusle',
            'wsubwuseq','wsubwusne','wsubwuscs','wsubwushs','wsubwuscc','wsubwuslo','wsubwusmi','wsubwuspl','wsubwusvs','wsubwusvc','wsubwushi','wsubwusls','wsubwusge','wsubwuslt','wsubwusgt','wsubwusle',
            'wsubaddhxeq','wsubaddhxne','wsubaddhxcs','wsubaddhxhs','wsubaddhxcc','wsubaddhxlo','wsubaddhxmi','wsubaddhxpl','wsubaddhxvs','wsubaddhxvc','wsubaddhxhi','wsubaddhxls','wsubaddhxge','wsubaddhxlt','wsubaddhxgt','wsubaddhxle',
            'wunpckehsbeq','wunpckehsbne','wunpckehsbcs','wunpckehsbhs','wunpckehsbcc','wunpckehsblo','wunpckehsbmi','wunpckehsbpl','wunpckehsbvs','wunpckehsbvc','wunpckehsbhi','wunpckehsbls','wunpckehsbge','wunpckehsblt','wunpckehsbgt','wunpckehsble',
            'wunpckehsheq','wunpckehshne','wunpckehshcs','wunpckehshhs','wunpckehshcc','wunpckehshlo','wunpckehshmi','wunpckehshpl','wunpckehshvs','wunpckehshvc','wunpckehshhi','wunpckehshls','wunpckehshge','wunpckehshlt','wunpckehshgt','wunpckehshle',
            'wunpckehsweq','wunpckehswne','wunpckehswcs','wunpckehswhs','wunpckehswcc','wunpckehswlo','wunpckehswmi','wunpckehswpl','wunpckehswvs','wunpckehswvc','wunpckehswhi','wunpckehswls','wunpckehswge','wunpckehswlt','wunpckehswgt','wunpckehswle',
            'wunpckehubeq','wunpckehubne','wunpckehubcs','wunpckehubhs','wunpckehubcc','wunpckehublo','wunpckehubmi','wunpckehubpl','wunpckehubvs','wunpckehubvc','wunpckehubhi','wunpckehubls','wunpckehubge','wunpckehublt','wunpckehubgt','wunpckehuble',
            'wunpckehuheq','wunpckehuhne','wunpckehuhcs','wunpckehuhhs','wunpckehuhcc','wunpckehuhlo','wunpckehuhmi','wunpckehuhpl','wunpckehuhvs','wunpckehuhvc','wunpckehuhhi','wunpckehuhls','wunpckehuhge','wunpckehuhlt','wunpckehuhgt','wunpckehuhle',
            'wunpckehuweq','wunpckehuwne','wunpckehuwcs','wunpckehuwhs','wunpckehuwcc','wunpckehuwlo','wunpckehuwmi','wunpckehuwpl','wunpckehuwvs','wunpckehuwvc','wunpckehuwhi','wunpckehuwls','wunpckehuwge','wunpckehuwlt','wunpckehuwgt','wunpckehuwle',
            'wunpckihbeq','wunpckihbne','wunpckihbcs','wunpckihbhs','wunpckihbcc','wunpckihblo','wunpckihbmi','wunpckihbpl','wunpckihbvs','wunpckihbvc','wunpckihbhi','wunpckihbls','wunpckihbge','wunpckihblt','wunpckihbgt','wunpckihble',
            'wunpckihheq','wunpckihhne','wunpckihhcs','wunpckihhhs','wunpckihhcc','wunpckihhlo','wunpckihhmi','wunpckihhpl','wunpckihhvs','wunpckihhvc','wunpckihhhi','wunpckihhls','wunpckihhge','wunpckihhlt','wunpckihhgt','wunpckihhle',
            'wunpckihweq','wunpckihwne','wunpckihwcs','wunpckihwhs','wunpckihwcc','wunpckihwlo','wunpckihwmi','wunpckihwpl','wunpckihwvs','wunpckihwvc','wunpckihwhi','wunpckihwls','wunpckihwge','wunpckihwlt','wunpckihwgt','wunpckihwle',
            'wunpckelsbeq','wunpckelsbne','wunpckelsbcs','wunpckelsbhs','wunpckelsbcc','wunpckelsblo','wunpckelsbmi','wunpckelsbpl','wunpckelsbvs','wunpckelsbvc','wunpckelsbhi','wunpckelsbls','wunpckelsbge','wunpckelsblt','wunpckelsbgt','wunpckelsble',
            'wunpckelsheq','wunpckelshne','wunpckelshcs','wunpckelshhs','wunpckelshcc','wunpckelshlo','wunpckelshmi','wunpckelshpl','wunpckelshvs','wunpckelshvc','wunpckelshhi','wunpckelshls','wunpckelshge','wunpckelshlt','wunpckelshgt','wunpckelshle',
            'wunpckelsweq','wunpckelswne','wunpckelswcs','wunpckelswhs','wunpckelswcc','wunpckelswlo','wunpckelswmi','wunpckelswpl','wunpckelswvs','wunpckelswvc','wunpckelswhi','wunpckelswls','wunpckelswge','wunpckelswlt','wunpckelswgt','wunpckelswle',
            'wunpckelubeq','wunpckelubne','wunpckelubcs','wunpckelubhs','wunpckelubcc','wunpckelublo','wunpckelubmi','wunpckelubpl','wunpckelubvs','wunpckelubvc','wunpckelubhi','wunpckelubls','wunpckelubge','wunpckelublt','wunpckelubgt','wunpckeluble',
            'wunpckeluheq','wunpckeluhne','wunpckeluhcs','wunpckeluhhs','wunpckeluhcc','wunpckeluhlo','wunpckeluhmi','wunpckeluhpl','wunpckeluhvs','wunpckeluhvc','wunpckeluhhi','wunpckeluhls','wunpckeluhge','wunpckeluhlt','wunpckeluhgt','wunpckeluhle',
            'wunpckeluweq','wunpckeluwne','wunpckeluwcs','wunpckeluwhs','wunpckeluwcc','wunpckeluwlo','wunpckeluwmi','wunpckeluwpl','wunpckeluwvs','wunpckeluwvc','wunpckeluwhi','wunpckeluwls','wunpckeluwge','wunpckeluwlt','wunpckeluwgt','wunpckeluwle',
            'wunpckilbeq','wunpckilbne','wunpckilbcs','wunpckilbhs','wunpckilbcc','wunpckilblo','wunpckilbmi','wunpckilbpl','wunpckilbvs','wunpckilbvc','wunpckilbhi','wunpckilbls','wunpckilbge','wunpckilblt','wunpckilbgt','wunpckilble',
            'wunpckilheq','wunpckilhne','wunpckilhcs','wunpckilhhs','wunpckilhcc','wunpckilhlo','wunpckilhmi','wunpckilhpl','wunpckilhvs','wunpckilhvc','wunpckilhhi','wunpckilhls','wunpckilhge','wunpckilhlt','wunpckilhgt','wunpckilhle',
            'wunpckilweq','wunpckilwne','wunpckilwcs','wunpckilwhs','wunpckilwcc','wunpckilwlo','wunpckilwmi','wunpckilwpl','wunpckilwvs','wunpckilwvc','wunpckilwhi','wunpckilwls','wunpckilwge','wunpckilwlt','wunpckilwgt','wunpckilwle',
            'wxoreq','wxorne','wxorcs','wxorhs','wxorcc','wxorlo','wxormi','wxorpl','wxorvs','wxorvc','wxorhi','wxorls','wxorge','wxorlt','wxorgt','wxorle',
            'wzeroeq','wzerone','wzerocs','wzerohs','wzerocc','wzerolo','wzeromi','wzeropl','wzerovs','wzerovc','wzerohi','wzerols','wzeroge','wzerolt','wzerogt','wzerole'
            ),
        /* Unconditional VFPv3 & NEON SIMD Memory Access Instructions */
        19 => array(
            /* Unconditional VFPv3 & NEON SIMD Memory Access: Loads */
            'vld.8','vldal.8',
            'vld.16','vldal.16',
            'vld.32','vldal.32',
            'vld.64','vldal.64',

            'vld1.8','vld1al.8',
            'vld1.16','vld1al.16',
            'vld1.32','vld1al.32',

            'vld2.8','vld2al.8',
            'vld2.16','vld2al.16',
            'vld2.32','vld2al.32',

            'vld3.8','vld3al.8',
            'vld3.16','vld3al.16',
            'vld3.32','vld3al.32',

            'vld4.8','vld4al.8',
            'vld4.16','vld4al.16',
            'vld4.32','vld4al.32',

            'vldm','vldmal',
            'vldm.32','vldmal.32',
            'vldm.64','vldmal.64',

            'vldmia','vldmiaal',
            'vldmia.32','vldmiaal.32',
            'vldmia.64','vldmiaal.64',

            'vldmdb','vldmdbal',
            'vldmdb.32','vldmdbal.32',
            'vldmdb.64','vldmdbal.64',

            'vldr','vldral',
            'vldr.32','vldral.32',
            'vldr.64','vldral.64',

            'vpop','vpopal',
            'vpop.32','vpopal.32',
            'vpop.64','vpopal.64',

            /* Unconditional VFPv3 & NEON SIMD Memory Access: Stores */
            'vst1.8','vst1al.8',
            'vst1.16','vst1al.16',
            'vst1.32','vst1al.32',
            'vst1.64','vst1al.64',

            'vst2.8','vst2al.8',
            'vst2.16','vst2al.16',
            'vst2.32','vst2al.32',

            'vst3.8','vst3al.8',
            'vst3.16','vst3al.16',
            'vst3.32','vst3al.32',

            'vst4.8','vst4al.8',
            'vst4.16','vst4al.16',
            'vst4.32','vst4al.32',

            'vstm','vstmal',
            'vstm.32','vstmal.32',
            'vstm.64','vstmal.64',

            'vstmia','vstmiaal',
            'vstmia.32','vstmiaal.32',
            'vstmia.64','vstmiaal.64',

            'vstmdb','vstmdbal',
            'vstmdb.32','vstmdbal.32',
            'vstmdb.64','vstmdbal.64',

            'vstr','vstral',
            'vstr.32','vstral.32',
            'vstr.64','vstral.64',

            'vpush','vpushal',
            'vpush.32','vpushal.32',
            'vpush.64','vpushal.64'
            ),
        /* Unconditional NEON SIMD Logical Instructions */
        20 => array(
            'vand','vandal',
            'vand.i8','vandal.i8',
            'vand.i16','vandal.i16',
            'vand.i32','vandal.i32',
            'vand.i64','vandal.i64',
            'vand.s8','vandal.s8',
            'vand.s16','vandal.s16',
            'vand.s32','vandal.s32',
            'vand.s64','vandal.s64',
            'vand.u8','vandal.u8',
            'vand.u16','vandal.u16',
            'vand.u32','vandal.u32',
            'vand.u64','vandal.u64',
            'vand.f32','vandal.f32',
            'vand.f64','vandal.f64',

            'vbic','vbical',
            'vbic.i8','vbical.i8',
            'vbic.i16','vbical.i16',
            'vbic.i32','vbical.i32',
            'vbic.i64','vbical.i64',
            'vbic.s8','vbical.s8',
            'vbic.s16','vbical.s16',
            'vbic.s32','vbical.s32',
            'vbic.s64','vbical.s64',
            'vbic.u8','vbical.u8',
            'vbic.u16','vbical.u16',
            'vbic.u32','vbical.u32',
            'vbic.u64','vbical.u64',
            'vbic.f32','vbical.f32',
            'vbic.f64','vbical.f64',

            'vbif','vbifal',
            'vbif.i8','vbifal.i8',
            'vbif.i16','vbifal.i16',
            'vbif.i32','vbifal.i32',
            'vbif.i64','vbifal.i64',
            'vbif.s8','vbifal.s8',
            'vbif.s16','vbifal.s16',
            'vbif.s32','vbifal.s32',
            'vbif.s64','vbifal.s64',
            'vbif.u8','vbifal.u8',
            'vbif.u16','vbifal.u16',
            'vbif.u32','vbifal.u32',
            'vbif.u64','vbifal.u64',
            'vbif.f32','vbifal.f32',
            'vbif.f64','vbifal.f64',

            'vbit','vbital',
            'vbit.i8','vbital.i8',
            'vbit.i16','vbital.i16',
            'vbit.i32','vbital.i32',
            'vbit.i64','vbital.i64',
            'vbit.s8','vbital.s8',
            'vbit.s16','vbital.s16',
            'vbit.s32','vbital.s32',
            'vbit.s64','vbital.s64',
            'vbit.u8','vbital.u8',
            'vbit.u16','vbital.u16',
            'vbit.u32','vbital.u32',
            'vbit.u64','vbital.u64',
            'vbit.f32','vbital.f32',
            'vbit.f64','vbital.f64',

            'vbsl','vbslal',
            'vbsl.i8','vbslal.i8',
            'vbsl.i16','vbslal.i16',
            'vbsl.i32','vbslal.i32',
            'vbsl.i64','vbslal.i64',
            'vbsl.s8','vbslal.s8',
            'vbsl.s16','vbslal.s16',
            'vbsl.s32','vbslal.s32',
            'vbsl.s64','vbslal.s64',
            'vbsl.u8','vbslal.u8',
            'vbsl.u16','vbslal.u16',
            'vbsl.u32','vbslal.u32',
            'vbsl.u64','vbslal.u64',
            'vbsl.f32','vbslal.f32',
            'vbsl.f64','vbslal.f64',

            'veor','veoral',
            'veor.i8','veoral.i8',
            'veor.i16','veoral.i16',
            'veor.i32','veoral.i32',
            'veor.i64','veoral.i64',
            'veor.s8','veoral.s8',
            'veor.s16','veoral.s16',
            'veor.s32','veoral.s32',
            'veor.s64','veoral.s64',
            'veor.u8','veoral.u8',
            'veor.u16','veoral.u16',
            'veor.u32','veoral.u32',
            'veor.u64','veoral.u64',
            'veor.f32','veoral.f32',
            'veor.f64','veoral.f64',

            'vmov','vmoval',
            'vmov.8','vmoval.8',
            'vmov.16','vmoval.16',
            'vmov.32','vmoval.32',
            'vmov.i8','vmoval.i8',
            'vmov.i16','vmoval.i16',
            'vmov.i32','vmoval.i32',
            'vmov.i64','vmoval.i64',
            'vmov.f32','vmoval.f32',
            'vmov.f64','vmoval.f64',

            'vmvn','vmvnal',
            'vmvn.s8','vmvnal.s8',
            'vmvn.s16','vmvnal.s16',
            'vmvn.s32','vmvnal.s32',
            'vmvn.s64','vmvnal.s64',
            'vmvn.u8','vmvnal.u8',
            'vmvn.u16','vmvnal.u16',
            'vmvn.u32','vmvnal.u32',
            'vmvn.u64','vmvnal.u64',
            'vmvn.i8','vmvnal.i8',
            'vmvn.i16','vmvnal.i16',
            'vmvn.i32','vmvnal.i32',
            'vmvn.i64','vmvnal.i64',
            'vmvn.f32','vmvnal.f32',
            'vmvn.f64','vmvnal.f64',

            'vorn','vornal',
            'vorn.s8','vornal.s8',
            'vorn.s16','vornal.s16',
            'vorn.s32','vornal.s32',
            'vorn.s64','vornal.s64',
            'vorn.u8','vornal.u8',
            'vorn.u16','vornal.u16',
            'vorn.u32','vornal.u32',
            'vorn.u64','vornal.u64',
            'vorn.i8','vornal.i8',
            'vorn.i16','vornal.i16',
            'vorn.i32','vornal.i32',
            'vorn.i64','vornal.i64',
            'vorn.f32','vornal.f32',
            'vorn.f64','vornal.f64',

            'vorr','vorral',
            'vorr.s8','vorral.s8',
            'vorr.s16','vorral.s16',
            'vorr.s32','vorral.s32',
            'vorr.s64','vorral.s64',
            'vorr.u8','vorral.u8',
            'vorr.u16','vorral.u16',
            'vorr.u32','vorral.u32',
            'vorr.u64','vorral.u64',
            'vorr.i8','vorral.i8',
            'vorr.i16','vorral.i16',
            'vorr.i32','vorral.i32',
            'vorr.i64','vorral.i64',
            'vorr.f32','vorral.f32',
            'vorr.f64','vorral.f64',

            'vswp','vswpal',
            'vswp.s8','vswpal.s8',
            'vswp.s16','vswpal.s16',
            'vswp.s32','vswpal.s32',
            'vswp.s64','vswpal.s64',
            'vswp.u8','vswpal.u8',
            'vswp.u16','vswpal.u16',
            'vswp.u32','vswpal.u32',
            'vswp.u64','vswpal.u64',
            'vswp.i8','vswpal.i8',
            'vswp.i16','vswpal.i16',
            'vswp.i32','vswpal.i32',
            'vswp.i64','vswpal.i64',
            'vswp.f32','vswpal.f32',
            'vswp.f64','vswpal.f64'
            ),
        /* Unconditional NEON SIMD ARM Registers Interop Instructions */
        21 => array(
            'vmrs','vmrsal',
            'vmsr','vmsral'
            ),
        /* Unconditional NEON SIMD Bit/Byte-Level Instructions */
        22 => array(
            'vcnt.8','vcntal.8',
            'vdup.8','vdupal.8',

            'vdup.16','vdupal.16',
            'vdup.32','vdupal.32',

            'vext.8','vextal.8',
            'vext.16','vextal.16',

            'vext.32','vextal.32',
            'vext.64','vextal.64',

            'vrev16.8','vrev16al.8',
            'vrev32.8','vrev32al.8',
            'vrev32.16','vrev32al.16',
            'vrev64.8','vrev64al.8',
            'vrev64.16','vrev64al.16',
            'vrev64.32','vrev64al.32',

            'vsli.8','vslial.8',
            'vsli.16','vslial.16',
            'vsli.32','vslial.32',
            'vsli.64','vslial.64',

            'vsri.8','vsrial.8',
            'vsri.16','vsrial.16',
            'vsri.32','vsrial.32',
            'vsri.64','vsrial.64',

            'vtbl.8','vtblal.8',

            'vtbx','vtbxal',

            'vtrn.8','vtrnal.8',
            'vtrn.16','vtrnal.16',
            'vtrn.32','vtrnal.32',

            'vtst.8','vtstal.8',
            'vtst.16','vtstal.16',
            'vtst.32','vtstal.32',

            'vuzp.8','vuzpal.8',
            'vuzp.16','vuzpal.16',
            'vuzp.32','vuzpal.32',

            'vzip.8','vzipal.8',
            'vzip.16','vzipal.16',
            'vzip.32','vzipal.32',

            'vmull.p8','vmullal.p8'
            ),
        /* Unconditional NEON SIMD Universal Integer Instructions */
        23 => array(
            'vadd.i8','vaddal.i8',
            'vadd.i16','vaddal.i16',
            'vadd.i32','vaddal.i32',
            'vadd.i64','vaddal.i64',

            'vsub.i8','vsubal.i8',
            'vsub.i16','vsubal.i16',
            'vsub.i32','vsubal.i32',
            'vsub.i64','vsubal.i64',

            'vaddhn.i16','vaddhnal.i16',
            'vaddhn.i32','vaddhnal.i32',
            'vaddhn.i64','vaddhnal.i64',

            'vsubhn.i16','vsubhnal.i16',
            'vsubhn.i32','vsubhnal.i32',
            'vsubhn.i64','vsubhnal.i64',

            'vraddhn.i16','vraddhnal.i16',
            'vraddhn.i32','vraddhnal.i32',
            'vraddhn.i64','vraddhnal.i64',

            'vrsubhn.i16','vrsubhnal.i16',
            'vrsubhn.i32','vrsubhnal.i32',
            'vrsubhn.i64','vrsubhnal.i64',

            'vpadd.i8','vpaddal.i8',
            'vpadd.i16','vpaddal.i16',
            'vpadd.i32','vpaddal.i32',

            'vceq.i8','vceqal.i8',
            'vceq.i16','vceqal.i16',
            'vceq.i32','vceqal.i32',

            'vclz.i8','vclzal.i8',
            'vclz.i16','vclzal.i16',
            'vclz.i32','vclzal.i32',

            'vmovn.i16','vmovnal.i16',
            'vmovn.i32','vmovnal.i32',
            'vmovn.i64','vmovnal.i64',

            'vmla.s8','vmlaal.s8',
            'vmla.s16','vmlaal.s16',
            'vmla.s32','vmlaal.s32',
            'vmla.u8','vmlaal.u8',
            'vmla.u16','vmlaal.u16',
            'vmla.u32','vmlaal.u32',
            'vmla.i8','vmlaal.i8',
            'vmla.i16','vmlaal.i16',
            'vmla.i32','vmlaal.i32',

            'vmls.s8','vmlsal.s8',
            'vmls.s16','vmlsal.s16',
            'vmls.s32','vmlsal.s32',
            'vmls.u8','vmlsal.u8',
            'vmls.u16','vmlsal.u16',
            'vmls.u32','vmlsal.u32',
            'vmls.i8','vmlsal.i8',
            'vmls.i16','vmlsal.i16',
            'vmls.i32','vmlsal.i32',

            'vmul.s8','vmulal.s8',
            'vmul.s16','vmulal.s16',
            'vmul.s32','vmulal.s32',
            'vmul.u8','vmulal.u8',
            'vmul.u16','vmulal.u16',
            'vmul.u32','vmulal.u32',
            'vmul.i8','vmulal.i8',
            'vmul.i16','vmulal.i16',
            'vmul.i32','vmulal.i32',
            'vmul.p8','vmulal.p8',

            'vrshrn.i16','vrshrnal.i16',
            'vrshrn.i32','vrshrnal.i32',
            'vrshrn.i64','vrshrnal.i64',

            'vshrn.i16','vshrnal.i16',
            'vshrn.i32','vshrnal.i32',
            'vshrn.i64','vshrnal.i64',

            'vshl.i8','vshlal.i8',
            'vshl.i16','vshlal.i16',
            'vshl.i32','vshlal.i32',
            'vshl.i64','vshlal.i64',

            'vshll.i8','vshllal.i8',
            'vshll.i16','vshllal.i16',
            'vshll.i32','vshllal.i32'
            ),
        /* Unconditional NEON SIMD Signed Integer Instructions */
        24 => array(
            'vaba.s8','vabaal.s8',
            'vaba.s16','vabaal.s16',
            'vaba.s32','vabaal.s32',

            'vabal.s8','vabalal.s8',
            'vabal.s16','vabalal.s16',
            'vabal.s32','vabalal.s32',

            'vabd.s8','vabdal.s8',
            'vabd.s16','vabdal.s16',
            'vabd.s32','vabdal.s32',

            'vabs.s8','vabsal.s8',
            'vabs.s16','vabsal.s16',
            'vabs.s32','vabsal.s32',

            'vaddl.s8','vaddlal.s8',
            'vaddl.s16','vaddlal.s16',
            'vaddl.s32','vaddlal.s32',

            'vcge.s8','vcgeal.s8',
            'vcge.s16','vcgeal.s16',
            'vcge.s32','vcgeal.s32',

            'vcle.s8','vcleal.s8',
            'vcle.s16','vcleal.s16',
            'vcle.s32','vcleal.s32',

            'vcgt.s8','vcgtal.s8',
            'vcgt.s16','vcgtal.s16',
            'vcgt.s32','vcgtal.s32',

            'vclt.s8','vcltal.s8',
            'vclt.s16','vcltal.s16',
            'vclt.s32','vcltal.s32',

            'vcls.s8','vclsal.s8',
            'vcls.s16','vclsal.s16',
            'vcls.s32','vclsal.s32',

            'vaddw.s8','vaddwal.s8',
            'vaddw.s16','vaddwal.s16',
            'vaddw.s32','vaddwal.s32',

            'vhadd.s8','vhaddal.s8',
            'vhadd.s16','vhaddal.s16',
            'vhadd.s32','vhaddal.s32',

            'vhsub.s8','vhsubal.s8',
            'vhsub.s16','vhsubal.s16',
            'vhsub.s32','vhsubal.s32',

            'vmax.s8','vmaxal.s8',
            'vmax.s16','vmaxal.s16',
            'vmax.s32','vmaxal.s32',

            'vmin.s8','vminal.s8',
            'vmin.s16','vminal.s16',
            'vmin.s32','vminal.s32',

            'vmlal.s8','vmlalal.s8',
            'vmlal.s16','vmlalal.s16',
            'vmlal.s32','vmlalal.s32',

            'vmlsl.s8','vmlslal.s8',
            'vmlsl.s16','vmlslal.s16',
            'vmlsl.s32','vmlslal.s32',

            'vneg.s8','vnegal.s8',
            'vneg.s16','vnegal.s16',
            'vneg.s32','vnegal.s32',

            'vpadal.s8','vpadalal.s8',
            'vpadal.s16','vpadalal.s16',
            'vpadal.s32','vpadalal.s32',

            'vmovl.s8','vmovlal.s8',
            'vmovl.s16','vmovlal.s16',
            'vmovl.s32','vmovlal.s32',

            'vmull.s8','vmullal.s8',
            'vmull.s16','vmullal.s16',
            'vmull.s32','vmullal.s32',

            'vpaddl.s8','vpaddlal.s8',
            'vpaddl.s16','vpaddlal.s16',
            'vpaddl.s32','vpaddlal.s32',

            'vpmax.s8','vpmaxal.s8',
            'vpmax.s16','vpmaxal.s16',
            'vpmax.s32','vpmaxal.s32',

            'vpmin.s8','vpminal.s8',
            'vpmin.s16','vpminal.s16',
            'vpmin.s32','vpminal.s32',

            'vqabs.s8','vqabsal.s8',
            'vqabs.s16','vqabsal.s16',
            'vqabs.s32','vqabsal.s32',

            'vqadd.s8','vqaddal.s8',
            'vqadd.s16','vqaddal.s16',
            'vqadd.s32','vqaddal.s32',
            'vqadd.s64','vqaddal.s64',

            'vqdmlal.s16','vqdmlalal.s16',
            'vqdmlal.s32','vqdmlalal.s32',

            'vqdmlsl.s16','vqdmlslal.s16',
            'vqdmlsl.s32','vqdmlslal.s32',

            'vqdmulh.s16','vqdmulhal.s16',
            'vqdmulh.s32','vqdmulhal.s32',

            'vqdmull.s16','vqdmullal.s16',
            'vqdmull.s32','vqdmullal.s32',

            'vqmovn.s16','vqmovnal.s16',
            'vqmovn.s32','vqmovnal.s32',
            'vqmovn.s64','vqmovnal.s64',

            'vqmovun.s16','vqmovunal.s16',
            'vqmovun.s32','vqmovunal.s32',
            'vqmovun.s64','vqmovunal.s64',

            'vqneg.s8','vqnegal.s8',
            'vqneg.s16','vqnegal.s16',
            'vqneg.s32','vqnegal.s32',

            'vqrdmulh.s16','vqrdmulhal.s16',
            'vqrdmulh.s32','vqrdmulhal.s32',

            'vqrshl.s8','vqrshlal.s8',
            'vqrshl.s16','vqrshlal.s16',
            'vqrshl.s32','vqrshlal.s32',
            'vqrshl.s64','vqrshlal.s64',

            'vqrshrn.s16','vqrshrnal.s16',
            'vqrshrn.s32','vqrshrnal.s32',
            'vqrshrn.s64','vqrshrnal.s64',

            'vqrshrun.s16','vqrshrunal.s16',
            'vqrshrun.s32','vqrshrunal.s32',
            'vqrshrun.s64','vqrshrunal.s64',

            'vqshl.s8','vqshlal.s8',
            'vqshl.s16','vqshlal.s16',
            'vqshl.s32','vqshlal.s32',
            'vqshl.s64','vqshlal.s64',

            'vqshlu.s8','vqshlual.s8',
            'vqshlu.s16','vqshlual.s16',
            'vqshlu.s32','vqshlual.s32',
            'vqshlu.s64','vqshlual.s64',

            'vqshrn.s16','vqshrnal.s16',
            'vqshrn.s32','vqshrnal.s32',
            'vqshrn.s64','vqshrnal.s64',

            'vqshrun.s16','vqshrunal.s16',
            'vqshrun.s32','vqshrunal.s32',
            'vqshrun.s64','vqshrunal.s64',

            'vqsub.s8','vqsubal.s8',
            'vqsub.s16','vqsubal.s16',
            'vqsub.s32','vqsubal.s32',
            'vqsub.s64','vqsubal.s64',

            'vrhadd.s8','vrhaddal.s8',
            'vrhadd.s16','vrhaddal.s16',
            'vrhadd.s32','vrhaddal.s32',

            'vrshl.s8','vrshlal.s8',
            'vrshl.s16','vrshlal.s16',
            'vrshl.s32','vrshlal.s32',
            'vrshl.s64','vrshlal.s64',

            'vrshr.s8','vrshral.s8',
            'vrshr.s16','vrshral.s16',
            'vrshr.s32','vrshral.s32',
            'vrshr.s64','vrshral.s64',

            'vrsra.s8','vrsraal.s8',
            'vrsra.s16','vrsraal.s16',
            'vrsra.s32','vrsraal.s32',
            'vrsra.s64','vrsraal.s64',

            'vshl.s8','vshlal.s8',
            'vshl.s16','vshlal.s16',
            'vshl.s32','vshlal.s32',
            'vshl.s64','vshlal.s64',

            'vshll.s8','vshllal.s8',
            'vshll.s16','vshllal.s16',
            'vshll.s32','vshllal.s32',

            'vshr.s8','vshral.s8',
            'vshr.s16','vshral.s16',
            'vshr.s32','vshral.s32',
            'vshr.s64','vshral.s64',

            'vsra.s8','vsraal.s8',
            'vsra.s16','vsraal.s16',
            'vsra.s32','vsraal.s32',
            'vsra.s64','vsraal.s64',

            'vsubl.s8','vsublal.s8',
            'vsubl.s16','vsublal.s16',
            'vsubl.s32','vsublal.s32',

            'vsubh.s8','vsubhal.s8',
            'vsubh.s16','vsubhal.s16',
            'vsubh.s32','vsubhal.s32'
            ),
        /* Unconditional NEON SIMD Unsigned Integer Instructions */
        25 => array(
            'vaba.u8','vabaal.u8',
            'vaba.u16','vabaal.u16',
            'vaba.u32','vabaal.u32',

            'vabal.u8','vabalal.u8',
            'vabal.u16','vabalal.u16',
            'vabal.u32','vabalal.u32',

            'vabd.u8','vabdal.u8',
            'vabd.u16','vabdal.u16',
            'vabd.u32','vabdal.u32',

            'vaddl.u8','vaddlal.u8',
            'vaddl.u16','vaddlal.u16',
            'vaddl.u32','vaddlal.u32',

            'vsubl.u8','vsublal.u8',
            'vsubl.u16','vsublal.u16',
            'vsubl.u32','vsublal.u32',

            'vaddw.u8','vaddwal.u8',
            'vaddw.u16','vaddwal.u16',
            'vaddw.u32','vaddwal.u32',

            'vsubh.u8','vsubhal.u8',
            'vsubh.u16','vsubhal.u16',
            'vsubh.u32','vsubhal.u32',

            'vhadd.u8','vhaddal.u8',
            'vhadd.u16','vhaddal.u16',
            'vhadd.u32','vhaddal.u32',

            'vhsub.u8','vhsubal.u8',
            'vhsub.u16','vhsubal.u16',
            'vhsub.u32','vhsubal.u32',

            'vpadal.u8','vpadalal.u8',
            'vpadal.u16','vpadalal.u16',
            'vpadal.u32','vpadalal.u32',

            'vpaddl.u8','vpaddlal.u8',
            'vpaddl.u16','vpaddlal.u16',
            'vpaddl.u32','vpaddlal.u32',

            'vcge.u8','vcgeal.u8',
            'vcge.u16','vcgeal.u16',
            'vcge.u32','vcgeal.u32',

            'vcle.u8','vcleal.u8',
            'vcle.u16','vcleal.u16',
            'vcle.u32','vcleal.u32',

            'vcgt.u8','vcgtal.u8',
            'vcgt.u16','vcgtal.u16',
            'vcgt.u32','vcgtal.u32',

            'vclt.u8','vcltal.u8',
            'vclt.u16','vcltal.u16',
            'vclt.u32','vcltal.u32',

            'vmax.u8','vmaxal.u8',
            'vmax.u16','vmaxal.u16',
            'vmax.u32','vmaxal.u32',

            'vmin.u8','vminal.u8',
            'vmin.u16','vminal.u16',
            'vmin.u32','vminal.u32',

            'vmlal.u8','vmlalal.u8',
            'vmlal.u16','vmlalal.u16',
            'vmlal.u32','vmlalal.u32',

            'vmlsl.u8','vmlslal.u8',
            'vmlsl.u16','vmlslal.u16',
            'vmlsl.u32','vmlslal.u32',

            'vmull.u8','vmullal.u8',
            'vmull.u16','vmullal.u16',
            'vmull.u32','vmullal.u32',

            'vmovl.u8','vmovlal.u8',
            'vmovl.u16','vmovlal.u16',
            'vmovl.u32','vmovlal.u32',

            'vshl.u8','vshlal.u8',
            'vshl.u16','vshlal.u16',
            'vshl.u32','vshlal.u32',
            'vshl.u64','vshlal.u64',

            'vshll.u8','vshllal.u8',
            'vshll.u16','vshllal.u16',
            'vshll.u32','vshllal.u32',

            'vshr.u8','vshral.u8',
            'vshr.u16','vshral.u16',
            'vshr.u32','vshral.u32',
            'vshr.u64','vshral.u64',

            'vsra.u8','vsraal.u8',
            'vsra.u16','vsraal.u16',
            'vsra.u32','vsraal.u32',
            'vsra.u64','vsraal.u64',

            'vpmax.u8','vpmaxal.u8',
            'vpmax.u16','vpmaxal.u16',
            'vpmax.u32','vpmaxal.u32',

            'vpmin.u8','vpminal.u8',
            'vpmin.u16','vpminal.u16',
            'vpmin.u32','vpminal.u32',

            'vqadd.u8','vqaddal.u8',
            'vqadd.u16','vqaddal.u16',
            'vqadd.u32','vqaddal.u32',
            'vqadd.u64','vqaddal.u64',

            'vqsub.u8','vqsubal.u8',
            'vqsub.u16','vqsubal.u16',
            'vqsub.u32','vqsubal.u32',
            'vqsub.u64','vqsubal.u64',

            'vqmovn.u16','vqmovnal.u16',
            'vqmovn.u32','vqmovnal.u32',
            'vqmovn.u64','vqmovnal.u64',

            'vqshl.u8','vqshlal.u8',
            'vqshl.u16','vqshlal.u16',
            'vqshl.u32','vqshlal.u32',
            'vqshl.u64','vqshlal.u64',

            'vqshrn.u16','vqshrnal.u16',
            'vqshrn.u32','vqshrnal.u32',
            'vqshrn.u64','vqshrnal.u64',

            'vqrshl.u8','vqrshlal.u8',
            'vqrshl.u16','vqrshlal.u16',
            'vqrshl.u32','vqrshlal.u32',
            'vqrshl.u64','vqrshlal.u64',

            'vqrshrn.u16','vqrshrnal.u16',
            'vqrshrn.u32','vqrshrnal.u32',
            'vqrshrn.u64','vqrshrnal.u64',

            'vrhadd.u8','vrhaddal.u8',
            'vrhadd.u16','vrhaddal.u16',
            'vrhadd.u32','vrhaddal.u32',

            'vrshl.u8','vrshlal.u8',
            'vrshl.u16','vrshlal.u16',
            'vrshl.u32','vrshlal.u32',
            'vrshl.u64','vrshlal.u64',

            'vrshr.u8','vrshral.u8',
            'vrshr.u16','vrshral.u16',
            'vrshr.u32','vrshral.u32',
            'vrshr.u64','vrshral.u64',

            'vrsra.u8','vrsraal.u8',
            'vrsra.u16','vrsraal.u16',
            'vrsra.u32','vrsraal.u32',
            'vrsra.u64','vrsraal.u64'
            ),
        /* Unconditional VFPv3 & NEON SIMD Floating-Point Instructions */
        26 => array(
            'vabd.f32','vabdal.f32',

            'vabs.f32','vabsal.f32',
            'vabs.f64','vabsal.f64',

            'vacge.f32','vacgeal.f32',
            'vacgt.f32','vacgtal.f32',
            'vacle.f32','vacleal.f32',
            'vaclt.f32','vacltal.f32',

            'vadd.f32','vaddal.f32',
            'vadd.f64','vaddal.f64',

            'vceq.f32','vceqal.f32',
            'vcge.f32','vcgeal.f32',
            'vcle.f32','vcleal.f32',
            'vcgt.f32','vcgtal.f32',
            'vclt.f32','vcltal.f32',

            'vcmp.f32','vcmpal.f32',
            'vcmp.f64','vcmpal.f64',

            'vcmpe.f32','vcmpeal.f32',
            'vcmpe.f64','vcmpeal.f64',

            'vcvt.s16.f32','vcvtal.s16.f32',
            'vcvt.s16.f64','vcvtal.s16.f64',
            'vcvt.s32.f32','vcvtal.s32.f32',
            'vcvt.s32.f64','vcvtal.s32.f64',
            'vcvt.u16.f32','vcvtal.u16.f32',
            'vcvt.u16.f64','vcvtal.u16.f64',
            'vcvt.u32.f32','vcvtal.u32.f32',
            'vcvt.u32.f64','vcvtal.u32.f64',
            'vcvt.f16.f32','vcvtal.f16.f32',
            'vcvt.f32.s32','vcvtal.f32.s32',
            'vcvt.f32.u32','vcvtal.f32.u32',
            'vcvt.f32.f16','vcvtal.f32.f16',
            'vcvt.f32.f64','vcvtal.f32.f64',
            'vcvt.f64.s32','vcvtal.f64.s32',
            'vcvt.f64.u32','vcvtal.f64.u32',
            'vcvt.f64.f32','vcvtal.f64.f32',

            'vcvtr.s32.f32','vcvtral.s32.f32',
            'vcvtr.s32.f64','vcvtral.s32.f64',
            'vcvtr.u32.f32','vcvtral.u32.f32',
            'vcvtr.u32.f64','vcvtral.u32.f64',

            'vcvtb.f16.f32','vcvtbal.f16.f32',
            'vcvtb.f32.f16','vcvtbal.f32.f16',

            'vcvtt.f16.f32','vcvttal.f16.f32',
            'vcvtt.f32.f16','vcvttal.f32.f16',

            'vdiv.f32','vdival.f32',
            'vdiv.f64','vdival.f64',

            'vmax.f32','vmaxal.f32',
            'vmin.f32','vminal.f32',

            'vmla.f32','vmlaal.f32',
            'vmla.f64','vmlaal.f64',

            'vmls.f32','vmlsal.f32',
            'vmls.f64','vmlsal.f64',

            'vmul.f32','vmulal.f32',
            'vmul.f64','vmulal.f64',

            'vneg.f32','vnegal.f32',
            'vneg.f64','vnegal.f64',

            'vnmla.f32','vnmlaal.f32',
            'vnmla.f64','vnmlaal.f64',

            'vnmls.f32','vnmlsal.f32',
            'vnmls.f64','vnmlsal.f64',

            'vnmul.f64','vnmulal.f64',
            'vnmul.f32','vnmulal.f32',

            'vpadd.f32','vpaddal.f32',

            'vpmax.f32','vpmaxal.f32',
            'vpmin.f32','vpminal.f32',

            'vrecpe.u32','vrecpeal.u32',
            'vrecpe.f32','vrecpeal.f32',
            'vrecps.f32','vrecpsal.f32',

            'vrsqrte.u32','vrsqrteal.u32',
            'vrsqrte.f32','vrsqrteal.f32',
            'vrsqrts.f32','vrsqrtsal.f32',

            'vsqrt.f32','vsqrtal.f32',
            'vsqrt.f64','vsqrtal.f64',

            'vsub.f32','vsubal.f32',
            'vsub.f64','vsubal.f64'
            ),
        /* Conditional VFPv3 & NEON SIMD Memory Access Instructions */
        27 => array(
            /* Conditional VFPv3 & NEON SIMD Memory Access: Loads */
            'vldeq.8','vldne.8','vldcs.8','vldhs.8','vldcc.8','vldlo.8','vldmi.8','vldpl.8','vldvs.8','vldvc.8','vldhi.8','vldls.8','vldge.8','vldlt.8','vldgt.8','vldle.8',
            'vldeq.16','vldne.16','vldcs.16','vldhs.16','vldcc.16','vldlo.16','vldmi.16','vldpl.16','vldvs.16','vldvc.16','vldhi.16','vldls.16','vldge.16','vldlt.16','vldgt.16','vldle.16',
            'vldeq.32','vldne.32','vldcs.32','vldhs.32','vldcc.32','vldlo.32','vldmi.32','vldpl.32','vldvs.32','vldvc.32','vldhi.32','vldls.32','vldge.32','vldlt.32','vldgt.32','vldle.32',
            'vldeq.64','vldne.64','vldcs.64','vldhs.64','vldcc.64','vldlo.64','vldmi.64','vldpl.64','vldvs.64','vldvc.64','vldhi.64','vldls.64','vldge.64','vldlt.64','vldgt.64','vldle.64',

            'vld1eq.8','vld1ne.8','vld1cs.8','vld1hs.8','vld1cc.8','vld1lo.8','vld1mi.8','vld1pl.8','vld1vs.8','vld1vc.8','vld1hi.8','vld1ls.8','vld1ge.8','vld1lt.8','vld1gt.8','vld1le.8',
            'vld1eq.16','vld1ne.16','vld1cs.16','vld1hs.16','vld1cc.16','vld1lo.16','vld1mi.16','vld1pl.16','vld1vs.16','vld1vc.16','vld1hi.16','vld1ls.16','vld1ge.16','vld1lt.16','vld1gt.16','vld1le.16',
            'vld1eq.32','vld1ne.32','vld1cs.32','vld1hs.32','vld1cc.32','vld1lo.32','vld1mi.32','vld1pl.32','vld1vs.32','vld1vc.32','vld1hi.32','vld1ls.32','vld1ge.32','vld1lt.32','vld1gt.32','vld1le.32',

            'vld2eq.8','vld2ne.8','vld2cs.8','vld2hs.8','vld2cc.8','vld2lo.8','vld2mi.8','vld2pl.8','vld2vs.8','vld2vc.8','vld2hi.8','vld2ls.8','vld2ge.8','vld2lt.8','vld2gt.8','vld2le.8',
            'vld2eq.16','vld2ne.16','vld2cs.16','vld2hs.16','vld2cc.16','vld2lo.16','vld2mi.16','vld2pl.16','vld2vs.16','vld2vc.16','vld2hi.16','vld2ls.16','vld2ge.16','vld2lt.16','vld2gt.16','vld2le.16',
            'vld2eq.32','vld2ne.32','vld2cs.32','vld2hs.32','vld2cc.32','vld2lo.32','vld2mi.32','vld2pl.32','vld2vs.32','vld2vc.32','vld2hi.32','vld2ls.32','vld2ge.32','vld2lt.32','vld2gt.32','vld2le.32',

            'vld3eq.8','vld3ne.8','vld3cs.8','vld3hs.8','vld3cc.8','vld3lo.8','vld3mi.8','vld3pl.8','vld3vs.8','vld3vc.8','vld3hi.8','vld3ls.8','vld3ge.8','vld3lt.8','vld3gt.8','vld3le.8',
            'vld3eq.16','vld3ne.16','vld3cs.16','vld3hs.16','vld3cc.16','vld3lo.16','vld3mi.16','vld3pl.16','vld3vs.16','vld3vc.16','vld3hi.16','vld3ls.16','vld3ge.16','vld3lt.16','vld3gt.16','vld3le.16',
            'vld3eq.32','vld3ne.32','vld3cs.32','vld3hs.32','vld3cc.32','vld3lo.32','vld3mi.32','vld3pl.32','vld3vs.32','vld3vc.32','vld3hi.32','vld3ls.32','vld3ge.32','vld3lt.32','vld3gt.32','vld3le.32',

            'vld4eq.8','vld4ne.8','vld4cs.8','vld4hs.8','vld4cc.8','vld4lo.8','vld4mi.8','vld4pl.8','vld4vs.8','vld4vc.8','vld4hi.8','vld4ls.8','vld4ge.8','vld4lt.8','vld4gt.8','vld4le.8',
            'vld4eq.16','vld4ne.16','vld4cs.16','vld4hs.16','vld4cc.16','vld4lo.16','vld4mi.16','vld4pl.16','vld4vs.16','vld4vc.16','vld4hi.16','vld4ls.16','vld4ge.16','vld4lt.16','vld4gt.16','vld4le.16',
            'vld4eq.32','vld4ne.32','vld4cs.32','vld4hs.32','vld4cc.32','vld4lo.32','vld4mi.32','vld4pl.32','vld4vs.32','vld4vc.32','vld4hi.32','vld4ls.32','vld4ge.32','vld4lt.32','vld4gt.32','vld4le.32',

            'vldmeq','vldmne','vldmcs','vldmhs','vldmcc','vldmlo','vldmmi','vldmpl','vldmvs','vldmvc','vldmhi','vldmls','vldmge','vldmlt','vldmgt','vldmle',
            'vldmeq.32','vldmne.32','vldmcs.32','vldmhs.32','vldmcc.32','vldmlo.32','vldmmi.32','vldmpl.32','vldmvs.32','vldmvc.32','vldmhi.32','vldmls.32','vldmge.32','vldmlt.32','vldmgt.32','vldmle.32',
            'vldmeq.64','vldmne.64','vldmcs.64','vldmhs.64','vldmcc.64','vldmlo.64','vldmmi.64','vldmpl.64','vldmvs.64','vldmvc.64','vldmhi.64','vldmls.64','vldmge.64','vldmlt.64','vldmgt.64','vldmle.64',

            'vldmiaeq','vldmiane','vldmiacs','vldmiahs','vldmiacc','vldmialo','vldmiami','vldmiapl','vldmiavs','vldmiavc','vldmiahi','vldmials','vldmiage','vldmialt','vldmiagt','vldmiale',
            'vldmiaeq.32','vldmiane.32','vldmiacs.32','vldmiahs.32','vldmiacc.32','vldmialo.32','vldmiami.32','vldmiapl.32','vldmiavs.32','vldmiavc.32','vldmiahi.32','vldmials.32','vldmiage.32','vldmialt.32','vldmiagt.32','vldmiale.32',
            'vldmiaeq.64','vldmiane.64','vldmiacs.64','vldmiahs.64','vldmiacc.64','vldmialo.64','vldmiami.64','vldmiapl.64','vldmiavs.64','vldmiavc.64','vldmiahi.64','vldmials.64','vldmiage.64','vldmialt.64','vldmiagt.64','vldmiale.64',

            'vldmdbeq','vldmdbne','vldmdbcs','vldmdbhs','vldmdbcc','vldmdblo','vldmdbmi','vldmdbpl','vldmdbvs','vldmdbvc','vldmdbhi','vldmdbls','vldmdbge','vldmdblt','vldmdbgt','vldmdble',
            'vldmdbeq.32','vldmdbne.32','vldmdbcs.32','vldmdbhs.32','vldmdbcc.32','vldmdblo.32','vldmdbmi.32','vldmdbpl.32','vldmdbvs.32','vldmdbvc.32','vldmdbhi.32','vldmdbls.32','vldmdbge.32','vldmdblt.32','vldmdbgt.32','vldmdble.32',
            'vldmdbeq.64','vldmdbne.64','vldmdbcs.64','vldmdbhs.64','vldmdbcc.64','vldmdblo.64','vldmdbmi.64','vldmdbpl.64','vldmdbvs.64','vldmdbvc.64','vldmdbhi.64','vldmdbls.64','vldmdbge.64','vldmdblt.64','vldmdbgt.64','vldmdble.64',

            'vldreq','vldrne','vldrcs','vldrhs','vldrcc','vldrlo','vldrmi','vldrpl','vldrvs','vldrvc','vldrhi','vldrls','vldrge','vldrlt','vldrgt','vldrle',
            'vldreq.32','vldrne.32','vldrcs.32','vldrhs.32','vldrcc.32','vldrlo.32','vldrmi.32','vldrpl.32','vldrvs.32','vldrvc.32','vldrhi.32','vldrls.32','vldrge.32','vldrlt.32','vldrgt.32','vldrle.32',
            'vldreq.64','vldrne.64','vldrcs.64','vldrhs.64','vldrcc.64','vldrlo.64','vldrmi.64','vldrpl.64','vldrvs.64','vldrvc.64','vldrhi.64','vldrls.64','vldrge.64','vldrlt.64','vldrgt.64','vldrle.64',

            'vpopeq','vpopne','vpopcs','vpophs','vpopcc','vpoplo','vpopmi','vpoppl','vpopvs','vpopvc','vpophi','vpopls','vpopge','vpoplt','vpopgt','vpople',
            'vpopeq.32','vpopne.32','vpopcs.32','vpophs.32','vpopcc.32','vpoplo.32','vpopmi.32','vpoppl.32','vpopvs.32','vpopvc.32','vpophi.32','vpopls.32','vpopge.32','vpoplt.32','vpopgt.32','vpople.32',
            'vpopeq.64','vpopne.64','vpopcs.64','vpophs.64','vpopcc.64','vpoplo.64','vpopmi.64','vpoppl.64','vpopvs.64','vpopvc.64','vpophi.64','vpopls.64','vpopge.64','vpoplt.64','vpopgt.64','vpople.64',

            /* Conditional VFPv3 & NEON SIMD Memory Access: Stores */
            'vst1eq.8','vst1ne.8','vst1cs.8','vst1hs.8','vst1cc.8','vst1lo.8','vst1mi.8','vst1pl.8','vst1vs.8','vst1vc.8','vst1hi.8','vst1ls.8','vst1ge.8','vst1lt.8','vst1gt.8','vst1le.8',
            'vst1eq.16','vst1ne.16','vst1cs.16','vst1hs.16','vst1cc.16','vst1lo.16','vst1mi.16','vst1pl.16','vst1vs.16','vst1vc.16','vst1hi.16','vst1ls.16','vst1ge.16','vst1lt.16','vst1gt.16','vst1le.16',
            'vst1eq.32','vst1ne.32','vst1cs.32','vst1hs.32','vst1cc.32','vst1lo.32','vst1mi.32','vst1pl.32','vst1vs.32','vst1vc.32','vst1hi.32','vst1ls.32','vst1ge.32','vst1lt.32','vst1gt.32','vst1le.32',
            'vst1eq.64','vst1ne.64','vst1cs.64','vst1hs.64','vst1cc.64','vst1lo.64','vst1mi.64','vst1pl.64','vst1vs.64','vst1vc.64','vst1hi.64','vst1ls.64','vst1ge.64','vst1lt.64','vst1gt.64','vst1le.64',

            'vst2eq.8','vst2ne.8','vst2cs.8','vst2hs.8','vst2cc.8','vst2lo.8','vst2mi.8','vst2pl.8','vst2vs.8','vst2vc.8','vst2hi.8','vst2ls.8','vst2ge.8','vst2lt.8','vst2gt.8','vst2le.8',
            'vst2eq.16','vst2ne.16','vst2cs.16','vst2hs.16','vst2cc.16','vst2lo.16','vst2mi.16','vst2pl.16','vst2vs.16','vst2vc.16','vst2hi.16','vst2ls.16','vst2ge.16','vst2lt.16','vst2gt.16','vst2le.16',
            'vst2eq.32','vst2ne.32','vst2cs.32','vst2hs.32','vst2cc.32','vst2lo.32','vst2mi.32','vst2pl.32','vst2vs.32','vst2vc.32','vst2hi.32','vst2ls.32','vst2ge.32','vst2lt.32','vst2gt.32','vst2le.32',

            'vst3eq.8','vst3ne.8','vst3cs.8','vst3hs.8','vst3cc.8','vst3lo.8','vst3mi.8','vst3pl.8','vst3vs.8','vst3vc.8','vst3hi.8','vst3ls.8','vst3ge.8','vst3lt.8','vst3gt.8','vst3le.8',
            'vst3eq.16','vst3ne.16','vst3cs.16','vst3hs.16','vst3cc.16','vst3lo.16','vst3mi.16','vst3pl.16','vst3vs.16','vst3vc.16','vst3hi.16','vst3ls.16','vst3ge.16','vst3lt.16','vst3gt.16','vst3le.16',
            'vst3eq.32','vst3ne.32','vst3cs.32','vst3hs.32','vst3cc.32','vst3lo.32','vst3mi.32','vst3pl.32','vst3vs.32','vst3vc.32','vst3hi.32','vst3ls.32','vst3ge.32','vst3lt.32','vst3gt.32','vst3le.32',

            'vst4eq.8','vst4ne.8','vst4cs.8','vst4hs.8','vst4cc.8','vst4lo.8','vst4mi.8','vst4pl.8','vst4vs.8','vst4vc.8','vst4hi.8','vst4ls.8','vst4ge.8','vst4lt.8','vst4gt.8','vst4le.8',
            'vst4eq.16','vst4ne.16','vst4cs.16','vst4hs.16','vst4cc.16','vst4lo.16','vst4mi.16','vst4pl.16','vst4vs.16','vst4vc.16','vst4hi.16','vst4ls.16','vst4ge.16','vst4lt.16','vst4gt.16','vst4le.16',
            'vst4eq.32','vst4ne.32','vst4cs.32','vst4hs.32','vst4cc.32','vst4lo.32','vst4mi.32','vst4pl.32','vst4vs.32','vst4vc.32','vst4hi.32','vst4ls.32','vst4ge.32','vst4lt.32','vst4gt.32','vst4le.32',

            'vstmeq','vstmne','vstmcs','vstmhs','vstmcc','vstmlo','vstmmi','vstmpl','vstmvs','vstmvc','vstmhi','vstmls','vstmge','vstmlt','vstmgt','vstmle',
            'vstmeq.32','vstmne.32','vstmcs.32','vstmhs.32','vstmcc.32','vstmlo.32','vstmmi.32','vstmpl.32','vstmvs.32','vstmvc.32','vstmhi.32','vstmls.32','vstmge.32','vstmlt.32','vstmgt.32','vstmle.32',
            'vstmeq.64','vstmne.64','vstmcs.64','vstmhs.64','vstmcc.64','vstmlo.64','vstmmi.64','vstmpl.64','vstmvs.64','vstmvc.64','vstmhi.64','vstmls.64','vstmge.64','vstmlt.64','vstmgt.64','vstmle.64',

            'vstmiaeq','vstmiane','vstmiacs','vstmiahs','vstmiacc','vstmialo','vstmiami','vstmiapl','vstmiavs','vstmiavc','vstmiahi','vstmials','vstmiage','vstmialt','vstmiagt','vstmiale',
            'vstmiaeq.32','vstmiane.32','vstmiacs.32','vstmiahs.32','vstmiacc.32','vstmialo.32','vstmiami.32','vstmiapl.32','vstmiavs.32','vstmiavc.32','vstmiahi.32','vstmials.32','vstmiage.32','vstmialt.32','vstmiagt.32','vstmiale.32',
            'vstmiaeq.64','vstmiane.64','vstmiacs.64','vstmiahs.64','vstmiacc.64','vstmialo.64','vstmiami.64','vstmiapl.64','vstmiavs.64','vstmiavc.64','vstmiahi.64','vstmials.64','vstmiage.64','vstmialt.64','vstmiagt.64','vstmiale.64',

            'vstmdbeq','vstmdbne','vstmdbcs','vstmdbhs','vstmdbcc','vstmdblo','vstmdbmi','vstmdbpl','vstmdbvs','vstmdbvc','vstmdbhi','vstmdbls','vstmdbge','vstmdblt','vstmdbgt','vstmdble',
            'vstmdbeq.32','vstmdbne.32','vstmdbcs.32','vstmdbhs.32','vstmdbcc.32','vstmdblo.32','vstmdbmi.32','vstmdbpl.32','vstmdbvs.32','vstmdbvc.32','vstmdbhi.32','vstmdbls.32','vstmdbge.32','vstmdblt.32','vstmdbgt.32','vstmdble.32',
            'vstmdbeq.64','vstmdbne.64','vstmdbcs.64','vstmdbhs.64','vstmdbcc.64','vstmdblo.64','vstmdbmi.64','vstmdbpl.64','vstmdbvs.64','vstmdbvc.64','vstmdbhi.64','vstmdbls.64','vstmdbge.64','vstmdblt.64','vstmdbgt.64','vstmdble.64',

            'vstreq','vstrne','vstrcs','vstrhs','vstrcc','vstrlo','vstrmi','vstrpl','vstrvs','vstrvc','vstrhi','vstrls','vstrge','vstrlt','vstrgt','vstrle',
            'vstreq.32','vstrne.32','vstrcs.32','vstrhs.32','vstrcc.32','vstrlo.32','vstrmi.32','vstrpl.32','vstrvs.32','vstrvc.32','vstrhi.32','vstrls.32','vstrge.32','vstrlt.32','vstrgt.32','vstrle.32',
            'vstreq.64','vstrne.64','vstrcs.64','vstrhs.64','vstrcc.64','vstrlo.64','vstrmi.64','vstrpl.64','vstrvs.64','vstrvc.64','vstrhi.64','vstrls.64','vstrge.64','vstrlt.64','vstrgt.64','vstrle.64',

            'vpusheq','vpushne','vpushcs','vpushhs','vpushcc','vpushlo','vpushmi','vpushpl','vpushvs','vpushvc','vpushhi','vpushls','vpushge','vpushlt','vpushgt','vpushle',
            'vpusheq.32','vpushne.32','vpushcs.32','vpushhs.32','vpushcc.32','vpushlo.32','vpushmi.32','vpushpl.32','vpushvs.32','vpushvc.32','vpushhi.32','vpushls.32','vpushge.32','vpushlt.32','vpushgt.32','vpushle.32',
            'vpusheq.64','vpushne.64','vpushcs.64','vpushhs.64','vpushcc.64','vpushlo.64','vpushmi.64','vpushpl.64','vpushvs.64','vpushvc.64','vpushhi.64','vpushls.64','vpushge.64','vpushlt.64','vpushgt.64','vpushle.64'
            ),
        /* Conditional NEON SIMD Logical Instructions */
        28 => array(
            'vandeq','vandne','vandcs','vandhs','vandcc','vandlo','vandmi','vandpl','vandvs','vandvc','vandhi','vandls','vandge','vandlt','vandgt','vandle',
            'vandeq.i8','vandne.i8','vandcs.i8','vandhs.i8','vandcc.i8','vandlo.i8','vandmi.i8','vandpl.i8','vandvs.i8','vandvc.i8','vandhi.i8','vandls.i8','vandge.i8','vandlt.i8','vandgt.i8','vandle.i8',
            'vandeq.i16','vandne.i16','vandcs.i16','vandhs.i16','vandcc.i16','vandlo.i16','vandmi.i16','vandpl.i16','vandvs.i16','vandvc.i16','vandhi.i16','vandls.i16','vandge.i16','vandlt.i16','vandgt.i16','vandle.i16',
            'vandeq.i32','vandne.i32','vandcs.i32','vandhs.i32','vandcc.i32','vandlo.i32','vandmi.i32','vandpl.i32','vandvs.i32','vandvc.i32','vandhi.i32','vandls.i32','vandge.i32','vandlt.i32','vandgt.i32','vandle.i32',
            'vandeq.i64','vandne.i64','vandcs.i64','vandhs.i64','vandcc.i64','vandlo.i64','vandmi.i64','vandpl.i64','vandvs.i64','vandvc.i64','vandhi.i64','vandls.i64','vandge.i64','vandlt.i64','vandgt.i64','vandle.i64',
            'vandeq.s8','vandne.s8','vandcs.s8','vandhs.s8','vandcc.s8','vandlo.s8','vandmi.s8','vandpl.s8','vandvs.s8','vandvc.s8','vandhi.s8','vandls.s8','vandge.s8','vandlt.s8','vandgt.s8','vandle.s8',
            'vandeq.s16','vandne.s16','vandcs.s16','vandhs.s16','vandcc.s16','vandlo.s16','vandmi.s16','vandpl.s16','vandvs.s16','vandvc.s16','vandhi.s16','vandls.s16','vandge.s16','vandlt.s16','vandgt.s16','vandle.s16',
            'vandeq.s32','vandne.s32','vandcs.s32','vandhs.s32','vandcc.s32','vandlo.s32','vandmi.s32','vandpl.s32','vandvs.s32','vandvc.s32','vandhi.s32','vandls.s32','vandge.s32','vandlt.s32','vandgt.s32','vandle.s32',
            'vandeq.s64','vandne.s64','vandcs.s64','vandhs.s64','vandcc.s64','vandlo.s64','vandmi.s64','vandpl.s64','vandvs.s64','vandvc.s64','vandhi.s64','vandls.s64','vandge.s64','vandlt.s64','vandgt.s64','vandle.s64',
            'vandeq.u8','vandne.u8','vandcs.u8','vandhs.u8','vandcc.u8','vandlo.u8','vandmi.u8','vandpl.u8','vandvs.u8','vandvc.u8','vandhi.u8','vandls.u8','vandge.u8','vandlt.u8','vandgt.u8','vandle.u8',
            'vandeq.u16','vandne.u16','vandcs.u16','vandhs.u16','vandcc.u16','vandlo.u16','vandmi.u16','vandpl.u16','vandvs.u16','vandvc.u16','vandhi.u16','vandls.u16','vandge.u16','vandlt.u16','vandgt.u16','vandle.u16',
            'vandeq.u32','vandne.u32','vandcs.u32','vandhs.u32','vandcc.u32','vandlo.u32','vandmi.u32','vandpl.u32','vandvs.u32','vandvc.u32','vandhi.u32','vandls.u32','vandge.u32','vandlt.u32','vandgt.u32','vandle.u32',
            'vandeq.u64','vandne.u64','vandcs.u64','vandhs.u64','vandcc.u64','vandlo.u64','vandmi.u64','vandpl.u64','vandvs.u64','vandvc.u64','vandhi.u64','vandls.u64','vandge.u64','vandlt.u64','vandgt.u64','vandle.u64',
            'vandeq.f32','vandne.f32','vandcs.f32','vandhs.f32','vandcc.f32','vandlo.f32','vandmi.f32','vandpl.f32','vandvs.f32','vandvc.f32','vandhi.f32','vandls.f32','vandge.f32','vandlt.f32','vandgt.f32','vandle.f32',
            'vandeq.f64','vandne.f64','vandcs.f64','vandhs.f64','vandcc.f64','vandlo.f64','vandmi.f64','vandpl.f64','vandvs.f64','vandvc.f64','vandhi.f64','vandls.f64','vandge.f64','vandlt.f64','vandgt.f64','vandle.f64',

            'vbiceq','vbicne','vbiccs','vbichs','vbiccc','vbiclo','vbicmi','vbicpl','vbicvs','vbicvc','vbichi','vbicls','vbicge','vbiclt','vbicgt','vbicle',
            'vbiceq.i8','vbicne.i8','vbiccs.i8','vbichs.i8','vbiccc.i8','vbiclo.i8','vbicmi.i8','vbicpl.i8','vbicvs.i8','vbicvc.i8','vbichi.i8','vbicls.i8','vbicge.i8','vbiclt.i8','vbicgt.i8','vbicle.i8',
            'vbiceq.i16','vbicne.i16','vbiccs.i16','vbichs.i16','vbiccc.i16','vbiclo.i16','vbicmi.i16','vbicpl.i16','vbicvs.i16','vbicvc.i16','vbichi.i16','vbicls.i16','vbicge.i16','vbiclt.i16','vbicgt.i16','vbicle.i16',
            'vbiceq.i32','vbicne.i32','vbiccs.i32','vbichs.i32','vbiccc.i32','vbiclo.i32','vbicmi.i32','vbicpl.i32','vbicvs.i32','vbicvc.i32','vbichi.i32','vbicls.i32','vbicge.i32','vbiclt.i32','vbicgt.i32','vbicle.i32',
            'vbiceq.i64','vbicne.i64','vbiccs.i64','vbichs.i64','vbiccc.i64','vbiclo.i64','vbicmi.i64','vbicpl.i64','vbicvs.i64','vbicvc.i64','vbichi.i64','vbicls.i64','vbicge.i64','vbiclt.i64','vbicgt.i64','vbicle.i64',
            'vbiceq.s8','vbicne.s8','vbiccs.s8','vbichs.s8','vbiccc.s8','vbiclo.s8','vbicmi.s8','vbicpl.s8','vbicvs.s8','vbicvc.s8','vbichi.s8','vbicls.s8','vbicge.s8','vbiclt.s8','vbicgt.s8','vbicle.s8',
            'vbiceq.s16','vbicne.s16','vbiccs.s16','vbichs.s16','vbiccc.s16','vbiclo.s16','vbicmi.s16','vbicpl.s16','vbicvs.s16','vbicvc.s16','vbichi.s16','vbicls.s16','vbicge.s16','vbiclt.s16','vbicgt.s16','vbicle.s16',
            'vbiceq.s32','vbicne.s32','vbiccs.s32','vbichs.s32','vbiccc.s32','vbiclo.s32','vbicmi.s32','vbicpl.s32','vbicvs.s32','vbicvc.s32','vbichi.s32','vbicls.s32','vbicge.s32','vbiclt.s32','vbicgt.s32','vbicle.s32',
            'vbiceq.s64','vbicne.s64','vbiccs.s64','vbichs.s64','vbiccc.s64','vbiclo.s64','vbicmi.s64','vbicpl.s64','vbicvs.s64','vbicvc.s64','vbichi.s64','vbicls.s64','vbicge.s64','vbiclt.s64','vbicgt.s64','vbicle.s64',
            'vbiceq.u8','vbicne.u8','vbiccs.u8','vbichs.u8','vbiccc.u8','vbiclo.u8','vbicmi.u8','vbicpl.u8','vbicvs.u8','vbicvc.u8','vbichi.u8','vbicls.u8','vbicge.u8','vbiclt.u8','vbicgt.u8','vbicle.u8',
            'vbiceq.u16','vbicne.u16','vbiccs.u16','vbichs.u16','vbiccc.u16','vbiclo.u16','vbicmi.u16','vbicpl.u16','vbicvs.u16','vbicvc.u16','vbichi.u16','vbicls.u16','vbicge.u16','vbiclt.u16','vbicgt.u16','vbicle.u16',
            'vbiceq.u32','vbicne.u32','vbiccs.u32','vbichs.u32','vbiccc.u32','vbiclo.u32','vbicmi.u32','vbicpl.u32','vbicvs.u32','vbicvc.u32','vbichi.u32','vbicls.u32','vbicge.u32','vbiclt.u32','vbicgt.u32','vbicle.u32',
            'vbiceq.u64','vbicne.u64','vbiccs.u64','vbichs.u64','vbiccc.u64','vbiclo.u64','vbicmi.u64','vbicpl.u64','vbicvs.u64','vbicvc.u64','vbichi.u64','vbicls.u64','vbicge.u64','vbiclt.u64','vbicgt.u64','vbicle.u64',
            'vbiceq.f32','vbicne.f32','vbiccs.f32','vbichs.f32','vbiccc.f32','vbiclo.f32','vbicmi.f32','vbicpl.f32','vbicvs.f32','vbicvc.f32','vbichi.f32','vbicls.f32','vbicge.f32','vbiclt.f32','vbicgt.f32','vbicle.f32',
            'vbiceq.f64','vbicne.f64','vbiccs.f64','vbichs.f64','vbiccc.f64','vbiclo.f64','vbicmi.f64','vbicpl.f64','vbicvs.f64','vbicvc.f64','vbichi.f64','vbicls.f64','vbicge.f64','vbiclt.f64','vbicgt.f64','vbicle.f64',

            'vbifeq','vbifne','vbifcs','vbifhs','vbifcc','vbiflo','vbifmi','vbifpl','vbifvs','vbifvc','vbifhi','vbifls','vbifge','vbiflt','vbifgt','vbifle',
            'vbifeq.i8','vbifne.i8','vbifcs.i8','vbifhs.i8','vbifcc.i8','vbiflo.i8','vbifmi.i8','vbifpl.i8','vbifvs.i8','vbifvc.i8','vbifhi.i8','vbifls.i8','vbifge.i8','vbiflt.i8','vbifgt.i8','vbifle.i8',
            'vbifeq.i16','vbifne.i16','vbifcs.i16','vbifhs.i16','vbifcc.i16','vbiflo.i16','vbifmi.i16','vbifpl.i16','vbifvs.i16','vbifvc.i16','vbifhi.i16','vbifls.i16','vbifge.i16','vbiflt.i16','vbifgt.i16','vbifle.i16',
            'vbifeq.i32','vbifne.i32','vbifcs.i32','vbifhs.i32','vbifcc.i32','vbiflo.i32','vbifmi.i32','vbifpl.i32','vbifvs.i32','vbifvc.i32','vbifhi.i32','vbifls.i32','vbifge.i32','vbiflt.i32','vbifgt.i32','vbifle.i32',
            'vbifeq.i64','vbifne.i64','vbifcs.i64','vbifhs.i64','vbifcc.i64','vbiflo.i64','vbifmi.i64','vbifpl.i64','vbifvs.i64','vbifvc.i64','vbifhi.i64','vbifls.i64','vbifge.i64','vbiflt.i64','vbifgt.i64','vbifle.i64',
            'vbifeq.s8','vbifne.s8','vbifcs.s8','vbifhs.s8','vbifcc.s8','vbiflo.s8','vbifmi.s8','vbifpl.s8','vbifvs.s8','vbifvc.s8','vbifhi.s8','vbifls.s8','vbifge.s8','vbiflt.s8','vbifgt.s8','vbifle.s8',
            'vbifeq.s16','vbifne.s16','vbifcs.s16','vbifhs.s16','vbifcc.s16','vbiflo.s16','vbifmi.s16','vbifpl.s16','vbifvs.s16','vbifvc.s16','vbifhi.s16','vbifls.s16','vbifge.s16','vbiflt.s16','vbifgt.s16','vbifle.s16',
            'vbifeq.s32','vbifne.s32','vbifcs.s32','vbifhs.s32','vbifcc.s32','vbiflo.s32','vbifmi.s32','vbifpl.s32','vbifvs.s32','vbifvc.s32','vbifhi.s32','vbifls.s32','vbifge.s32','vbiflt.s32','vbifgt.s32','vbifle.s32',
            'vbifeq.s64','vbifne.s64','vbifcs.s64','vbifhs.s64','vbifcc.s64','vbiflo.s64','vbifmi.s64','vbifpl.s64','vbifvs.s64','vbifvc.s64','vbifhi.s64','vbifls.s64','vbifge.s64','vbiflt.s64','vbifgt.s64','vbifle.s64',
            'vbifeq.u8','vbifne.u8','vbifcs.u8','vbifhs.u8','vbifcc.u8','vbiflo.u8','vbifmi.u8','vbifpl.u8','vbifvs.u8','vbifvc.u8','vbifhi.u8','vbifls.u8','vbifge.u8','vbiflt.u8','vbifgt.u8','vbifle.u8',
            'vbifeq.u16','vbifne.u16','vbifcs.u16','vbifhs.u16','vbifcc.u16','vbiflo.u16','vbifmi.u16','vbifpl.u16','vbifvs.u16','vbifvc.u16','vbifhi.u16','vbifls.u16','vbifge.u16','vbiflt.u16','vbifgt.u16','vbifle.u16',
            'vbifeq.u32','vbifne.u32','vbifcs.u32','vbifhs.u32','vbifcc.u32','vbiflo.u32','vbifmi.u32','vbifpl.u32','vbifvs.u32','vbifvc.u32','vbifhi.u32','vbifls.u32','vbifge.u32','vbiflt.u32','vbifgt.u32','vbifle.u32',
            'vbifeq.u64','vbifne.u64','vbifcs.u64','vbifhs.u64','vbifcc.u64','vbiflo.u64','vbifmi.u64','vbifpl.u64','vbifvs.u64','vbifvc.u64','vbifhi.u64','vbifls.u64','vbifge.u64','vbiflt.u64','vbifgt.u64','vbifle.u64',
            'vbifeq.f32','vbifne.f32','vbifcs.f32','vbifhs.f32','vbifcc.f32','vbiflo.f32','vbifmi.f32','vbifpl.f32','vbifvs.f32','vbifvc.f32','vbifhi.f32','vbifls.f32','vbifge.f32','vbiflt.f32','vbifgt.f32','vbifle.f32',
            'vbifeq.f64','vbifne.f64','vbifcs.f64','vbifhs.f64','vbifcc.f64','vbiflo.f64','vbifmi.f64','vbifpl.f64','vbifvs.f64','vbifvc.f64','vbifhi.f64','vbifls.f64','vbifge.f64','vbiflt.f64','vbifgt.f64','vbifle.f64',

            'vbiteq','vbitne','vbitcs','vbiths','vbitcc','vbitlo','vbitmi','vbitpl','vbitvs','vbitvc','vbithi','vbitls','vbitge','vbitlt','vbitgt','vbitle',
            'vbiteq.i8','vbitne.i8','vbitcs.i8','vbiths.i8','vbitcc.i8','vbitlo.i8','vbitmi.i8','vbitpl.i8','vbitvs.i8','vbitvc.i8','vbithi.i8','vbitls.i8','vbitge.i8','vbitlt.i8','vbitgt.i8','vbitle.i8',
            'vbiteq.i16','vbitne.i16','vbitcs.i16','vbiths.i16','vbitcc.i16','vbitlo.i16','vbitmi.i16','vbitpl.i16','vbitvs.i16','vbitvc.i16','vbithi.i16','vbitls.i16','vbitge.i16','vbitlt.i16','vbitgt.i16','vbitle.i16',
            'vbiteq.i32','vbitne.i32','vbitcs.i32','vbiths.i32','vbitcc.i32','vbitlo.i32','vbitmi.i32','vbitpl.i32','vbitvs.i32','vbitvc.i32','vbithi.i32','vbitls.i32','vbitge.i32','vbitlt.i32','vbitgt.i32','vbitle.i32',
            'vbiteq.i64','vbitne.i64','vbitcs.i64','vbiths.i64','vbitcc.i64','vbitlo.i64','vbitmi.i64','vbitpl.i64','vbitvs.i64','vbitvc.i64','vbithi.i64','vbitls.i64','vbitge.i64','vbitlt.i64','vbitgt.i64','vbitle.i64',
            'vbiteq.s8','vbitne.s8','vbitcs.s8','vbiths.s8','vbitcc.s8','vbitlo.s8','vbitmi.s8','vbitpl.s8','vbitvs.s8','vbitvc.s8','vbithi.s8','vbitls.s8','vbitge.s8','vbitlt.s8','vbitgt.s8','vbitle.s8',
            'vbiteq.s16','vbitne.s16','vbitcs.s16','vbiths.s16','vbitcc.s16','vbitlo.s16','vbitmi.s16','vbitpl.s16','vbitvs.s16','vbitvc.s16','vbithi.s16','vbitls.s16','vbitge.s16','vbitlt.s16','vbitgt.s16','vbitle.s16',
            'vbiteq.s32','vbitne.s32','vbitcs.s32','vbiths.s32','vbitcc.s32','vbitlo.s32','vbitmi.s32','vbitpl.s32','vbitvs.s32','vbitvc.s32','vbithi.s32','vbitls.s32','vbitge.s32','vbitlt.s32','vbitgt.s32','vbitle.s32',
            'vbiteq.s64','vbitne.s64','vbitcs.s64','vbiths.s64','vbitcc.s64','vbitlo.s64','vbitmi.s64','vbitpl.s64','vbitvs.s64','vbitvc.s64','vbithi.s64','vbitls.s64','vbitge.s64','vbitlt.s64','vbitgt.s64','vbitle.s64',
            'vbiteq.u8','vbitne.u8','vbitcs.u8','vbiths.u8','vbitcc.u8','vbitlo.u8','vbitmi.u8','vbitpl.u8','vbitvs.u8','vbitvc.u8','vbithi.u8','vbitls.u8','vbitge.u8','vbitlt.u8','vbitgt.u8','vbitle.u8',
            'vbiteq.u16','vbitne.u16','vbitcs.u16','vbiths.u16','vbitcc.u16','vbitlo.u16','vbitmi.u16','vbitpl.u16','vbitvs.u16','vbitvc.u16','vbithi.u16','vbitls.u16','vbitge.u16','vbitlt.u16','vbitgt.u16','vbitle.u16',
            'vbiteq.u32','vbitne.u32','vbitcs.u32','vbiths.u32','vbitcc.u32','vbitlo.u32','vbitmi.u32','vbitpl.u32','vbitvs.u32','vbitvc.u32','vbithi.u32','vbitls.u32','vbitge.u32','vbitlt.u32','vbitgt.u32','vbitle.u32',
            'vbiteq.u64','vbitne.u64','vbitcs.u64','vbiths.u64','vbitcc.u64','vbitlo.u64','vbitmi.u64','vbitpl.u64','vbitvs.u64','vbitvc.u64','vbithi.u64','vbitls.u64','vbitge.u64','vbitlt.u64','vbitgt.u64','vbitle.u64',
            'vbiteq.f32','vbitne.f32','vbitcs.f32','vbiths.f32','vbitcc.f32','vbitlo.f32','vbitmi.f32','vbitpl.f32','vbitvs.f32','vbitvc.f32','vbithi.f32','vbitls.f32','vbitge.f32','vbitlt.f32','vbitgt.f32','vbitle.f32',
            'vbiteq.f64','vbitne.f64','vbitcs.f64','vbiths.f64','vbitcc.f64','vbitlo.f64','vbitmi.f64','vbitpl.f64','vbitvs.f64','vbitvc.f64','vbithi.f64','vbitls.f64','vbitge.f64','vbitlt.f64','vbitgt.f64','vbitle.f64',

            'vbsleq','vbslne','vbslcs','vbslhs','vbslcc','vbsllo','vbslmi','vbslpl','vbslvs','vbslvc','vbslhi','vbslls','vbslge','vbsllt','vbslgt','vbslle',
            'vbsleq.i8','vbslne.i8','vbslcs.i8','vbslhs.i8','vbslcc.i8','vbsllo.i8','vbslmi.i8','vbslpl.i8','vbslvs.i8','vbslvc.i8','vbslhi.i8','vbslls.i8','vbslge.i8','vbsllt.i8','vbslgt.i8','vbslle.i8',
            'vbsleq.i16','vbslne.i16','vbslcs.i16','vbslhs.i16','vbslcc.i16','vbsllo.i16','vbslmi.i16','vbslpl.i16','vbslvs.i16','vbslvc.i16','vbslhi.i16','vbslls.i16','vbslge.i16','vbsllt.i16','vbslgt.i16','vbslle.i16',
            'vbsleq.i32','vbslne.i32','vbslcs.i32','vbslhs.i32','vbslcc.i32','vbsllo.i32','vbslmi.i32','vbslpl.i32','vbslvs.i32','vbslvc.i32','vbslhi.i32','vbslls.i32','vbslge.i32','vbsllt.i32','vbslgt.i32','vbslle.i32',
            'vbsleq.i64','vbslne.i64','vbslcs.i64','vbslhs.i64','vbslcc.i64','vbsllo.i64','vbslmi.i64','vbslpl.i64','vbslvs.i64','vbslvc.i64','vbslhi.i64','vbslls.i64','vbslge.i64','vbsllt.i64','vbslgt.i64','vbslle.i64',
            'vbsleq.s8','vbslne.s8','vbslcs.s8','vbslhs.s8','vbslcc.s8','vbsllo.s8','vbslmi.s8','vbslpl.s8','vbslvs.s8','vbslvc.s8','vbslhi.s8','vbslls.s8','vbslge.s8','vbsllt.s8','vbslgt.s8','vbslle.s8',
            'vbsleq.s16','vbslne.s16','vbslcs.s16','vbslhs.s16','vbslcc.s16','vbsllo.s16','vbslmi.s16','vbslpl.s16','vbslvs.s16','vbslvc.s16','vbslhi.s16','vbslls.s16','vbslge.s16','vbsllt.s16','vbslgt.s16','vbslle.s16',
            'vbsleq.s32','vbslne.s32','vbslcs.s32','vbslhs.s32','vbslcc.s32','vbsllo.s32','vbslmi.s32','vbslpl.s32','vbslvs.s32','vbslvc.s32','vbslhi.s32','vbslls.s32','vbslge.s32','vbsllt.s32','vbslgt.s32','vbslle.s32',
            'vbsleq.s64','vbslne.s64','vbslcs.s64','vbslhs.s64','vbslcc.s64','vbsllo.s64','vbslmi.s64','vbslpl.s64','vbslvs.s64','vbslvc.s64','vbslhi.s64','vbslls.s64','vbslge.s64','vbsllt.s64','vbslgt.s64','vbslle.s64',
            'vbsleq.u8','vbslne.u8','vbslcs.u8','vbslhs.u8','vbslcc.u8','vbsllo.u8','vbslmi.u8','vbslpl.u8','vbslvs.u8','vbslvc.u8','vbslhi.u8','vbslls.u8','vbslge.u8','vbsllt.u8','vbslgt.u8','vbslle.u8',
            'vbsleq.u16','vbslne.u16','vbslcs.u16','vbslhs.u16','vbslcc.u16','vbsllo.u16','vbslmi.u16','vbslpl.u16','vbslvs.u16','vbslvc.u16','vbslhi.u16','vbslls.u16','vbslge.u16','vbsllt.u16','vbslgt.u16','vbslle.u16',
            'vbsleq.u32','vbslne.u32','vbslcs.u32','vbslhs.u32','vbslcc.u32','vbsllo.u32','vbslmi.u32','vbslpl.u32','vbslvs.u32','vbslvc.u32','vbslhi.u32','vbslls.u32','vbslge.u32','vbsllt.u32','vbslgt.u32','vbslle.u32',
            'vbsleq.u64','vbslne.u64','vbslcs.u64','vbslhs.u64','vbslcc.u64','vbsllo.u64','vbslmi.u64','vbslpl.u64','vbslvs.u64','vbslvc.u64','vbslhi.u64','vbslls.u64','vbslge.u64','vbsllt.u64','vbslgt.u64','vbslle.u64',
            'vbsleq.f32','vbslne.f32','vbslcs.f32','vbslhs.f32','vbslcc.f32','vbsllo.f32','vbslmi.f32','vbslpl.f32','vbslvs.f32','vbslvc.f32','vbslhi.f32','vbslls.f32','vbslge.f32','vbsllt.f32','vbslgt.f32','vbslle.f32',
            'vbsleq.f64','vbslne.f64','vbslcs.f64','vbslhs.f64','vbslcc.f64','vbsllo.f64','vbslmi.f64','vbslpl.f64','vbslvs.f64','vbslvc.f64','vbslhi.f64','vbslls.f64','vbslge.f64','vbsllt.f64','vbslgt.f64','vbslle.f64',

            'veoreq','veorne','veorcs','veorhs','veorcc','veorlo','veormi','veorpl','veorvs','veorvc','veorhi','veorls','veorge','veorlt','veorgt','veorle',
            'veoreq.i8','veorne.i8','veorcs.i8','veorhs.i8','veorcc.i8','veorlo.i8','veormi.i8','veorpl.i8','veorvs.i8','veorvc.i8','veorhi.i8','veorls.i8','veorge.i8','veorlt.i8','veorgt.i8','veorle.i8',
            'veoreq.i16','veorne.i16','veorcs.i16','veorhs.i16','veorcc.i16','veorlo.i16','veormi.i16','veorpl.i16','veorvs.i16','veorvc.i16','veorhi.i16','veorls.i16','veorge.i16','veorlt.i16','veorgt.i16','veorle.i16',
            'veoreq.i32','veorne.i32','veorcs.i32','veorhs.i32','veorcc.i32','veorlo.i32','veormi.i32','veorpl.i32','veorvs.i32','veorvc.i32','veorhi.i32','veorls.i32','veorge.i32','veorlt.i32','veorgt.i32','veorle.i32',
            'veoreq.i64','veorne.i64','veorcs.i64','veorhs.i64','veorcc.i64','veorlo.i64','veormi.i64','veorpl.i64','veorvs.i64','veorvc.i64','veorhi.i64','veorls.i64','veorge.i64','veorlt.i64','veorgt.i64','veorle.i64',
            'veoreq.s8','veorne.s8','veorcs.s8','veorhs.s8','veorcc.s8','veorlo.s8','veormi.s8','veorpl.s8','veorvs.s8','veorvc.s8','veorhi.s8','veorls.s8','veorge.s8','veorlt.s8','veorgt.s8','veorle.s8',
            'veoreq.s16','veorne.s16','veorcs.s16','veorhs.s16','veorcc.s16','veorlo.s16','veormi.s16','veorpl.s16','veorvs.s16','veorvc.s16','veorhi.s16','veorls.s16','veorge.s16','veorlt.s16','veorgt.s16','veorle.s16',
            'veoreq.s32','veorne.s32','veorcs.s32','veorhs.s32','veorcc.s32','veorlo.s32','veormi.s32','veorpl.s32','veorvs.s32','veorvc.s32','veorhi.s32','veorls.s32','veorge.s32','veorlt.s32','veorgt.s32','veorle.s32',
            'veoreq.s64','veorne.s64','veorcs.s64','veorhs.s64','veorcc.s64','veorlo.s64','veormi.s64','veorpl.s64','veorvs.s64','veorvc.s64','veorhi.s64','veorls.s64','veorge.s64','veorlt.s64','veorgt.s64','veorle.s64',
            'veoreq.u8','veorne.u8','veorcs.u8','veorhs.u8','veorcc.u8','veorlo.u8','veormi.u8','veorpl.u8','veorvs.u8','veorvc.u8','veorhi.u8','veorls.u8','veorge.u8','veorlt.u8','veorgt.u8','veorle.u8',
            'veoreq.u16','veorne.u16','veorcs.u16','veorhs.u16','veorcc.u16','veorlo.u16','veormi.u16','veorpl.u16','veorvs.u16','veorvc.u16','veorhi.u16','veorls.u16','veorge.u16','veorlt.u16','veorgt.u16','veorle.u16',
            'veoreq.u32','veorne.u32','veorcs.u32','veorhs.u32','veorcc.u32','veorlo.u32','veormi.u32','veorpl.u32','veorvs.u32','veorvc.u32','veorhi.u32','veorls.u32','veorge.u32','veorlt.u32','veorgt.u32','veorle.u32',
            'veoreq.u64','veorne.u64','veorcs.u64','veorhs.u64','veorcc.u64','veorlo.u64','veormi.u64','veorpl.u64','veorvs.u64','veorvc.u64','veorhi.u64','veorls.u64','veorge.u64','veorlt.u64','veorgt.u64','veorle.u64',
            'veoreq.f32','veorne.f32','veorcs.f32','veorhs.f32','veorcc.f32','veorlo.f32','veormi.f32','veorpl.f32','veorvs.f32','veorvc.f32','veorhi.f32','veorls.f32','veorge.f32','veorlt.f32','veorgt.f32','veorle.f32',
            'veoreq.f64','veorne.f64','veorcs.f64','veorhs.f64','veorcc.f64','veorlo.f64','veormi.f64','veorpl.f64','veorvs.f64','veorvc.f64','veorhi.f64','veorls.f64','veorge.f64','veorlt.f64','veorgt.f64','veorle.f64',

            'vmoveq','vmovne','vmovcs','vmovhs','vmovcc','vmovlo','vmovmi','vmovpl','vmovvs','vmovvc','vmovhi','vmovls','vmovge','vmovlt','vmovgt','vmovle',
            'vmoveq.8','vmovne.8','vmovcs.8','vmovhs.8','vmovcc.8','vmovlo.8','vmovmi.8','vmovpl.8','vmovvs.8','vmovvc.8','vmovhi.8','vmovls.8','vmovge.8','vmovlt.8','vmovgt.8','vmovle.8',
            'vmoveq.16','vmovne.16','vmovcs.16','vmovhs.16','vmovcc.16','vmovlo.16','vmovmi.16','vmovpl.16','vmovvs.16','vmovvc.16','vmovhi.16','vmovls.16','vmovge.16','vmovlt.16','vmovgt.16','vmovle.16',
            'vmoveq.32','vmovne.32','vmovcs.32','vmovhs.32','vmovcc.32','vmovlo.32','vmovmi.32','vmovpl.32','vmovvs.32','vmovvc.32','vmovhi.32','vmovls.32','vmovge.32','vmovlt.32','vmovgt.32','vmovle.32',
            'vmoveq.i8','vmovne.i8','vmovcs.i8','vmovhs.i8','vmovcc.i8','vmovlo.i8','vmovmi.i8','vmovpl.i8','vmovvs.i8','vmovvc.i8','vmovhi.i8','vmovls.i8','vmovge.i8','vmovlt.i8','vmovgt.i8','vmovle.i8',
            'vmoveq.i16','vmovne.i16','vmovcs.i16','vmovhs.i16','vmovcc.i16','vmovlo.i16','vmovmi.i16','vmovpl.i16','vmovvs.i16','vmovvc.i16','vmovhi.i16','vmovls.i16','vmovge.i16','vmovlt.i16','vmovgt.i16','vmovle.i16',
            'vmoveq.i32','vmovne.i32','vmovcs.i32','vmovhs.i32','vmovcc.i32','vmovlo.i32','vmovmi.i32','vmovpl.i32','vmovvs.i32','vmovvc.i32','vmovhi.i32','vmovls.i32','vmovge.i32','vmovlt.i32','vmovgt.i32','vmovle.i32',
            'vmoveq.i64','vmovne.i64','vmovcs.i64','vmovhs.i64','vmovcc.i64','vmovlo.i64','vmovmi.i64','vmovpl.i64','vmovvs.i64','vmovvc.i64','vmovhi.i64','vmovls.i64','vmovge.i64','vmovlt.i64','vmovgt.i64','vmovle.i64',
            'vmoveq.f32','vmovne.f32','vmovcs.f32','vmovhs.f32','vmovcc.f32','vmovlo.f32','vmovmi.f32','vmovpl.f32','vmovvs.f32','vmovvc.f32','vmovhi.f32','vmovls.f32','vmovge.f32','vmovlt.f32','vmovgt.f32','vmovle.f32',
            'vmoveq.f64','vmovne.f64','vmovcs.f64','vmovhs.f64','vmovcc.f64','vmovlo.f64','vmovmi.f64','vmovpl.f64','vmovvs.f64','vmovvc.f64','vmovhi.f64','vmovls.f64','vmovge.f64','vmovlt.f64','vmovgt.f64','vmovle.f64',

            'vmvneq','vmvnne','vmvncs','vmvnhs','vmvncc','vmvnlo','vmvnmi','vmvnpl','vmvnvs','vmvnvc','vmvnhi','vmvnls','vmvnge','vmvnlt','vmvngt','vmvnle',
            'vmvneq.s8','vmvnne.s8','vmvncs.s8','vmvnhs.s8','vmvncc.s8','vmvnlo.s8','vmvnmi.s8','vmvnpl.s8','vmvnvs.s8','vmvnvc.s8','vmvnhi.s8','vmvnls.s8','vmvnge.s8','vmvnlt.s8','vmvngt.s8','vmvnle.s8',
            'vmvneq.s16','vmvnne.s16','vmvncs.s16','vmvnhs.s16','vmvncc.s16','vmvnlo.s16','vmvnmi.s16','vmvnpl.s16','vmvnvs.s16','vmvnvc.s16','vmvnhi.s16','vmvnls.s16','vmvnge.s16','vmvnlt.s16','vmvngt.s16','vmvnle.s16',
            'vmvneq.s32','vmvnne.s32','vmvncs.s32','vmvnhs.s32','vmvncc.s32','vmvnlo.s32','vmvnmi.s32','vmvnpl.s32','vmvnvs.s32','vmvnvc.s32','vmvnhi.s32','vmvnls.s32','vmvnge.s32','vmvnlt.s32','vmvngt.s32','vmvnle.s32',
            'vmvneq.s64','vmvnne.s64','vmvncs.s64','vmvnhs.s64','vmvncc.s64','vmvnlo.s64','vmvnmi.s64','vmvnpl.s64','vmvnvs.s64','vmvnvc.s64','vmvnhi.s64','vmvnls.s64','vmvnge.s64','vmvnlt.s64','vmvngt.s64','vmvnle.s64',
            'vmvneq.u8','vmvnne.u8','vmvncs.u8','vmvnhs.u8','vmvncc.u8','vmvnlo.u8','vmvnmi.u8','vmvnpl.u8','vmvnvs.u8','vmvnvc.u8','vmvnhi.u8','vmvnls.u8','vmvnge.u8','vmvnlt.u8','vmvngt.u8','vmvnle.u8',
            'vmvneq.u16','vmvnne.u16','vmvncs.u16','vmvnhs.u16','vmvncc.u16','vmvnlo.u16','vmvnmi.u16','vmvnpl.u16','vmvnvs.u16','vmvnvc.u16','vmvnhi.u16','vmvnls.u16','vmvnge.u16','vmvnlt.u16','vmvngt.u16','vmvnle.u16',
            'vmvneq.u32','vmvnne.u32','vmvncs.u32','vmvnhs.u32','vmvncc.u32','vmvnlo.u32','vmvnmi.u32','vmvnpl.u32','vmvnvs.u32','vmvnvc.u32','vmvnhi.u32','vmvnls.u32','vmvnge.u32','vmvnlt.u32','vmvngt.u32','vmvnle.u32',
            'vmvneq.u64','vmvnne.u64','vmvncs.u64','vmvnhs.u64','vmvncc.u64','vmvnlo.u64','vmvnmi.u64','vmvnpl.u64','vmvnvs.u64','vmvnvc.u64','vmvnhi.u64','vmvnls.u64','vmvnge.u64','vmvnlt.u64','vmvngt.u64','vmvnle.u64',
            'vmvneq.i8','vmvnne.i8','vmvncs.i8','vmvnhs.i8','vmvncc.i8','vmvnlo.i8','vmvnmi.i8','vmvnpl.i8','vmvnvs.i8','vmvnvc.i8','vmvnhi.i8','vmvnls.i8','vmvnge.i8','vmvnlt.i8','vmvngt.i8','vmvnle.i8',
            'vmvneq.i16','vmvnne.i16','vmvncs.i16','vmvnhs.i16','vmvncc.i16','vmvnlo.i16','vmvnmi.i16','vmvnpl.i16','vmvnvs.i16','vmvnvc.i16','vmvnhi.i16','vmvnls.i16','vmvnge.i16','vmvnlt.i16','vmvngt.i16','vmvnle.i16',
            'vmvneq.i32','vmvnne.i32','vmvncs.i32','vmvnhs.i32','vmvncc.i32','vmvnlo.i32','vmvnmi.i32','vmvnpl.i32','vmvnvs.i32','vmvnvc.i32','vmvnhi.i32','vmvnls.i32','vmvnge.i32','vmvnlt.i32','vmvngt.i32','vmvnle.i32',
            'vmvneq.i64','vmvnne.i64','vmvncs.i64','vmvnhs.i64','vmvncc.i64','vmvnlo.i64','vmvnmi.i64','vmvnpl.i64','vmvnvs.i64','vmvnvc.i64','vmvnhi.i64','vmvnls.i64','vmvnge.i64','vmvnlt.i64','vmvngt.i64','vmvnle.i64',
            'vmvneq.f32','vmvnne.f32','vmvncs.f32','vmvnhs.f32','vmvncc.f32','vmvnlo.f32','vmvnmi.f32','vmvnpl.f32','vmvnvs.f32','vmvnvc.f32','vmvnhi.f32','vmvnls.f32','vmvnge.f32','vmvnlt.f32','vmvngt.f32','vmvnle.f32',
            'vmvneq.f64','vmvnne.f64','vmvncs.f64','vmvnhs.f64','vmvncc.f64','vmvnlo.f64','vmvnmi.f64','vmvnpl.f64','vmvnvs.f64','vmvnvc.f64','vmvnhi.f64','vmvnls.f64','vmvnge.f64','vmvnlt.f64','vmvngt.f64','vmvnle.f64',

            'vorneq','vornne','vorncs','vornhs','vorncc','vornlo','vornmi','vornpl','vornvs','vornvc','vornhi','vornls','vornge','vornlt','vorngt','vornle',
            'vorneq.s8','vornne.s8','vorncs.s8','vornhs.s8','vorncc.s8','vornlo.s8','vornmi.s8','vornpl.s8','vornvs.s8','vornvc.s8','vornhi.s8','vornls.s8','vornge.s8','vornlt.s8','vorngt.s8','vornle.s8',
            'vorneq.s16','vornne.s16','vorncs.s16','vornhs.s16','vorncc.s16','vornlo.s16','vornmi.s16','vornpl.s16','vornvs.s16','vornvc.s16','vornhi.s16','vornls.s16','vornge.s16','vornlt.s16','vorngt.s16','vornle.s16',
            'vorneq.s32','vornne.s32','vorncs.s32','vornhs.s32','vorncc.s32','vornlo.s32','vornmi.s32','vornpl.s32','vornvs.s32','vornvc.s32','vornhi.s32','vornls.s32','vornge.s32','vornlt.s32','vorngt.s32','vornle.s32',
            'vorneq.s64','vornne.s64','vorncs.s64','vornhs.s64','vorncc.s64','vornlo.s64','vornmi.s64','vornpl.s64','vornvs.s64','vornvc.s64','vornhi.s64','vornls.s64','vornge.s64','vornlt.s64','vorngt.s64','vornle.s64',
            'vorneq.u8','vornne.u8','vorncs.u8','vornhs.u8','vorncc.u8','vornlo.u8','vornmi.u8','vornpl.u8','vornvs.u8','vornvc.u8','vornhi.u8','vornls.u8','vornge.u8','vornlt.u8','vorngt.u8','vornle.u8',
            'vorneq.u16','vornne.u16','vorncs.u16','vornhs.u16','vorncc.u16','vornlo.u16','vornmi.u16','vornpl.u16','vornvs.u16','vornvc.u16','vornhi.u16','vornls.u16','vornge.u16','vornlt.u16','vorngt.u16','vornle.u16',
            'vorneq.u32','vornne.u32','vorncs.u32','vornhs.u32','vorncc.u32','vornlo.u32','vornmi.u32','vornpl.u32','vornvs.u32','vornvc.u32','vornhi.u32','vornls.u32','vornge.u32','vornlt.u32','vorngt.u32','vornle.u32',
            'vorneq.u64','vornne.u64','vorncs.u64','vornhs.u64','vorncc.u64','vornlo.u64','vornmi.u64','vornpl.u64','vornvs.u64','vornvc.u64','vornhi.u64','vornls.u64','vornge.u64','vornlt.u64','vorngt.u64','vornle.u64',
            'vorneq.i8','vornne.i8','vorncs.i8','vornhs.i8','vorncc.i8','vornlo.i8','vornmi.i8','vornpl.i8','vornvs.i8','vornvc.i8','vornhi.i8','vornls.i8','vornge.i8','vornlt.i8','vorngt.i8','vornle.i8',
            'vorneq.i16','vornne.i16','vorncs.i16','vornhs.i16','vorncc.i16','vornlo.i16','vornmi.i16','vornpl.i16','vornvs.i16','vornvc.i16','vornhi.i16','vornls.i16','vornge.i16','vornlt.i16','vorngt.i16','vornle.i16',
            'vorneq.i32','vornne.i32','vorncs.i32','vornhs.i32','vorncc.i32','vornlo.i32','vornmi.i32','vornpl.i32','vornvs.i32','vornvc.i32','vornhi.i32','vornls.i32','vornge.i32','vornlt.i32','vorngt.i32','vornle.i32',
            'vorneq.i64','vornne.i64','vorncs.i64','vornhs.i64','vorncc.i64','vornlo.i64','vornmi.i64','vornpl.i64','vornvs.i64','vornvc.i64','vornhi.i64','vornls.i64','vornge.i64','vornlt.i64','vorngt.i64','vornle.i64',
            'vorneq.f32','vornne.f32','vorncs.f32','vornhs.f32','vorncc.f32','vornlo.f32','vornmi.f32','vornpl.f32','vornvs.f32','vornvc.f32','vornhi.f32','vornls.f32','vornge.f32','vornlt.f32','vorngt.f32','vornle.f32',
            'vorneq.f64','vornne.f64','vorncs.f64','vornhs.f64','vorncc.f64','vornlo.f64','vornmi.f64','vornpl.f64','vornvs.f64','vornvc.f64','vornhi.f64','vornls.f64','vornge.f64','vornlt.f64','vorngt.f64','vornle.f64',

            'vorreq','vorrne','vorrcs','vorrhs','vorrcc','vorrlo','vorrmi','vorrpl','vorrvs','vorrvc','vorrhi','vorrls','vorrge','vorrlt','vorrgt','vorrle',
            'vorreq.s8','vorrne.s8','vorrcs.s8','vorrhs.s8','vorrcc.s8','vorrlo.s8','vorrmi.s8','vorrpl.s8','vorrvs.s8','vorrvc.s8','vorrhi.s8','vorrls.s8','vorrge.s8','vorrlt.s8','vorrgt.s8','vorrle.s8',
            'vorreq.s16','vorrne.s16','vorrcs.s16','vorrhs.s16','vorrcc.s16','vorrlo.s16','vorrmi.s16','vorrpl.s16','vorrvs.s16','vorrvc.s16','vorrhi.s16','vorrls.s16','vorrge.s16','vorrlt.s16','vorrgt.s16','vorrle.s16',
            'vorreq.s32','vorrne.s32','vorrcs.s32','vorrhs.s32','vorrcc.s32','vorrlo.s32','vorrmi.s32','vorrpl.s32','vorrvs.s32','vorrvc.s32','vorrhi.s32','vorrls.s32','vorrge.s32','vorrlt.s32','vorrgt.s32','vorrle.s32',
            'vorreq.s64','vorrne.s64','vorrcs.s64','vorrhs.s64','vorrcc.s64','vorrlo.s64','vorrmi.s64','vorrpl.s64','vorrvs.s64','vorrvc.s64','vorrhi.s64','vorrls.s64','vorrge.s64','vorrlt.s64','vorrgt.s64','vorrle.s64',
            'vorreq.u8','vorrne.u8','vorrcs.u8','vorrhs.u8','vorrcc.u8','vorrlo.u8','vorrmi.u8','vorrpl.u8','vorrvs.u8','vorrvc.u8','vorrhi.u8','vorrls.u8','vorrge.u8','vorrlt.u8','vorrgt.u8','vorrle.u8',
            'vorreq.u16','vorrne.u16','vorrcs.u16','vorrhs.u16','vorrcc.u16','vorrlo.u16','vorrmi.u16','vorrpl.u16','vorrvs.u16','vorrvc.u16','vorrhi.u16','vorrls.u16','vorrge.u16','vorrlt.u16','vorrgt.u16','vorrle.u16',
            'vorreq.u32','vorrne.u32','vorrcs.u32','vorrhs.u32','vorrcc.u32','vorrlo.u32','vorrmi.u32','vorrpl.u32','vorrvs.u32','vorrvc.u32','vorrhi.u32','vorrls.u32','vorrge.u32','vorrlt.u32','vorrgt.u32','vorrle.u32',
            'vorreq.u64','vorrne.u64','vorrcs.u64','vorrhs.u64','vorrcc.u64','vorrlo.u64','vorrmi.u64','vorrpl.u64','vorrvs.u64','vorrvc.u64','vorrhi.u64','vorrls.u64','vorrge.u64','vorrlt.u64','vorrgt.u64','vorrle.u64',
            'vorreq.i8','vorrne.i8','vorrcs.i8','vorrhs.i8','vorrcc.i8','vorrlo.i8','vorrmi.i8','vorrpl.i8','vorrvs.i8','vorrvc.i8','vorrhi.i8','vorrls.i8','vorrge.i8','vorrlt.i8','vorrgt.i8','vorrle.i8',
            'vorreq.i16','vorrne.i16','vorrcs.i16','vorrhs.i16','vorrcc.i16','vorrlo.i16','vorrmi.i16','vorrpl.i16','vorrvs.i16','vorrvc.i16','vorrhi.i16','vorrls.i16','vorrge.i16','vorrlt.i16','vorrgt.i16','vorrle.i16',
            'vorreq.i32','vorrne.i32','vorrcs.i32','vorrhs.i32','vorrcc.i32','vorrlo.i32','vorrmi.i32','vorrpl.i32','vorrvs.i32','vorrvc.i32','vorrhi.i32','vorrls.i32','vorrge.i32','vorrlt.i32','vorrgt.i32','vorrle.i32',
            'vorreq.i64','vorrne.i64','vorrcs.i64','vorrhs.i64','vorrcc.i64','vorrlo.i64','vorrmi.i64','vorrpl.i64','vorrvs.i64','vorrvc.i64','vorrhi.i64','vorrls.i64','vorrge.i64','vorrlt.i64','vorrgt.i64','vorrle.i64',
            'vorreq.f32','vorrne.f32','vorrcs.f32','vorrhs.f32','vorrcc.f32','vorrlo.f32','vorrmi.f32','vorrpl.f32','vorrvs.f32','vorrvc.f32','vorrhi.f32','vorrls.f32','vorrge.f32','vorrlt.f32','vorrgt.f32','vorrle.f32',
            'vorreq.f64','vorrne.f64','vorrcs.f64','vorrhs.f64','vorrcc.f64','vorrlo.f64','vorrmi.f64','vorrpl.f64','vorrvs.f64','vorrvc.f64','vorrhi.f64','vorrls.f64','vorrge.f64','vorrlt.f64','vorrgt.f64','vorrle.f64',

            'vswpeq','vswpne','vswpcs','vswphs','vswpcc','vswplo','vswpmi','vswppl','vswpvs','vswpvc','vswphi','vswpls','vswpge','vswplt','vswpgt','vswple',
            'vswpeq.s8','vswpne.s8','vswpcs.s8','vswphs.s8','vswpcc.s8','vswplo.s8','vswpmi.s8','vswppl.s8','vswpvs.s8','vswpvc.s8','vswphi.s8','vswpls.s8','vswpge.s8','vswplt.s8','vswpgt.s8','vswple.s8',
            'vswpeq.s16','vswpne.s16','vswpcs.s16','vswphs.s16','vswpcc.s16','vswplo.s16','vswpmi.s16','vswppl.s16','vswpvs.s16','vswpvc.s16','vswphi.s16','vswpls.s16','vswpge.s16','vswplt.s16','vswpgt.s16','vswple.s16',
            'vswpeq.s32','vswpne.s32','vswpcs.s32','vswphs.s32','vswpcc.s32','vswplo.s32','vswpmi.s32','vswppl.s32','vswpvs.s32','vswpvc.s32','vswphi.s32','vswpls.s32','vswpge.s32','vswplt.s32','vswpgt.s32','vswple.s32',
            'vswpeq.s64','vswpne.s64','vswpcs.s64','vswphs.s64','vswpcc.s64','vswplo.s64','vswpmi.s64','vswppl.s64','vswpvs.s64','vswpvc.s64','vswphi.s64','vswpls.s64','vswpge.s64','vswplt.s64','vswpgt.s64','vswple.s64',
            'vswpeq.u8','vswpne.u8','vswpcs.u8','vswphs.u8','vswpcc.u8','vswplo.u8','vswpmi.u8','vswppl.u8','vswpvs.u8','vswpvc.u8','vswphi.u8','vswpls.u8','vswpge.u8','vswplt.u8','vswpgt.u8','vswple.u8',
            'vswpeq.u16','vswpne.u16','vswpcs.u16','vswphs.u16','vswpcc.u16','vswplo.u16','vswpmi.u16','vswppl.u16','vswpvs.u16','vswpvc.u16','vswphi.u16','vswpls.u16','vswpge.u16','vswplt.u16','vswpgt.u16','vswple.u16',
            'vswpeq.u32','vswpne.u32','vswpcs.u32','vswphs.u32','vswpcc.u32','vswplo.u32','vswpmi.u32','vswppl.u32','vswpvs.u32','vswpvc.u32','vswphi.u32','vswpls.u32','vswpge.u32','vswplt.u32','vswpgt.u32','vswple.u32',
            'vswpeq.u64','vswpne.u64','vswpcs.u64','vswphs.u64','vswpcc.u64','vswplo.u64','vswpmi.u64','vswppl.u64','vswpvs.u64','vswpvc.u64','vswphi.u64','vswpls.u64','vswpge.u64','vswplt.u64','vswpgt.u64','vswple.u64',
            'vswpeq.i8','vswpne.i8','vswpcs.i8','vswphs.i8','vswpcc.i8','vswplo.i8','vswpmi.i8','vswppl.i8','vswpvs.i8','vswpvc.i8','vswphi.i8','vswpls.i8','vswpge.i8','vswplt.i8','vswpgt.i8','vswple.i8',
            'vswpeq.i16','vswpne.i16','vswpcs.i16','vswphs.i16','vswpcc.i16','vswplo.i16','vswpmi.i16','vswppl.i16','vswpvs.i16','vswpvc.i16','vswphi.i16','vswpls.i16','vswpge.i16','vswplt.i16','vswpgt.i16','vswple.i16',
            'vswpeq.i32','vswpne.i32','vswpcs.i32','vswphs.i32','vswpcc.i32','vswplo.i32','vswpmi.i32','vswppl.i32','vswpvs.i32','vswpvc.i32','vswphi.i32','vswpls.i32','vswpge.i32','vswplt.i32','vswpgt.i32','vswple.i32',
            'vswpeq.i64','vswpne.i64','vswpcs.i64','vswphs.i64','vswpcc.i64','vswplo.i64','vswpmi.i64','vswppl.i64','vswpvs.i64','vswpvc.i64','vswphi.i64','vswpls.i64','vswpge.i64','vswplt.i64','vswpgt.i64','vswple.i64',
            'vswpeq.f32','vswpne.f32','vswpcs.f32','vswphs.f32','vswpcc.f32','vswplo.f32','vswpmi.f32','vswppl.f32','vswpvs.f32','vswpvc.f32','vswphi.f32','vswpls.f32','vswpge.f32','vswplt.f32','vswpgt.f32','vswple.f32',
            'vswpeq.f64','vswpne.f64','vswpcs.f64','vswphs.f64','vswpcc.f64','vswplo.f64','vswpmi.f64','vswppl.f64','vswpvs.f64','vswpvc.f64','vswphi.f64','vswpls.f64','vswpge.f64','vswplt.f64','vswpgt.f64','vswple.f64'
            ),
        /* Conditional NEON SIMD ARM Registers Interop Instructions */
        29 => array(
            'vmrseq','vmrsne','vmrscs','vmrshs','vmrscc','vmrslo','vmrsmi','vmrspl','vmrsvs','vmrsvc','vmrshi','vmrsls','vmrsge','vmrslt','vmrsgt','vmrsle',
            'vmsreq','vmsrne','vmsrcs','vmsrhs','vmsrcc','vmsrlo','vmsrmi','vmsrpl','vmsrvs','vmsrvc','vmsrhi','vmsrls','vmsrge','vmsrlt','vmsrgt','vmsrle'
            ),
        /* Conditional NEON SIMD Bit/Byte-Level Instructions */
        30 => array(
            'vcnteq.8','vcntne.8','vcntcs.8','vcnths.8','vcntcc.8','vcntlo.8','vcntmi.8','vcntpl.8','vcntvs.8','vcntvc.8','vcnthi.8','vcntls.8','vcntge.8','vcntlt.8','vcntgt.8','vcntle.8',
            'vdupeq.8','vdupne.8','vdupcs.8','vduphs.8','vdupcc.8','vduplo.8','vdupmi.8','vduppl.8','vdupvs.8','vdupvc.8','vduphi.8','vdupls.8','vdupge.8','vduplt.8','vdupgt.8','vduple.8',

            'vdupeq.16','vdupne.16','vdupcs.16','vduphs.16','vdupcc.16','vduplo.16','vdupmi.16','vduppl.16','vdupvs.16','vdupvc.16','vduphi.16','vdupls.16','vdupge.16','vduplt.16','vdupgt.16','vduple.16',
            'vdupeq.32','vdupne.32','vdupcs.32','vduphs.32','vdupcc.32','vduplo.32','vdupmi.32','vduppl.32','vdupvs.32','vdupvc.32','vduphi.32','vdupls.32','vdupge.32','vduplt.32','vdupgt.32','vduple.32',

            'vexteq.8','vextne.8','vextcs.8','vexths.8','vextcc.8','vextlo.8','vextmi.8','vextpl.8','vextvs.8','vextvc.8','vexthi.8','vextls.8','vextge.8','vextlt.8','vextgt.8','vextle.8',
            'vexteq.16','vextne.16','vextcs.16','vexths.16','vextcc.16','vextlo.16','vextmi.16','vextpl.16','vextvs.16','vextvc.16','vexthi.16','vextls.16','vextge.16','vextlt.16','vextgt.16','vextle.16',

            'vexteq.32','vextne.32','vextcs.32','vexths.32','vextcc.32','vextlo.32','vextmi.32','vextpl.32','vextvs.32','vextvc.32','vexthi.32','vextls.32','vextge.32','vextlt.32','vextgt.32','vextle.32',
            'vexteq.64','vextne.64','vextcs.64','vexths.64','vextcc.64','vextlo.64','vextmi.64','vextpl.64','vextvs.64','vextvc.64','vexthi.64','vextls.64','vextge.64','vextlt.64','vextgt.64','vextle.64',

            'vrev16eq.8','vrev16ne.8','vrev16cs.8','vrev16hs.8','vrev16cc.8','vrev16lo.8','vrev16mi.8','vrev16pl.8','vrev16vs.8','vrev16vc.8','vrev16hi.8','vrev16ls.8','vrev16ge.8','vrev16lt.8','vrev16gt.8','vrev16le.8',
            'vrev32eq.8','vrev32ne.8','vrev32cs.8','vrev32hs.8','vrev32cc.8','vrev32lo.8','vrev32mi.8','vrev32pl.8','vrev32vs.8','vrev32vc.8','vrev32hi.8','vrev32ls.8','vrev32ge.8','vrev32lt.8','vrev32gt.8','vrev32le.8',
            'vrev32eq.16','vrev32ne.16','vrev32cs.16','vrev32hs.16','vrev32cc.16','vrev32lo.16','vrev32mi.16','vrev32pl.16','vrev32vs.16','vrev32vc.16','vrev32hi.16','vrev32ls.16','vrev32ge.16','vrev32lt.16','vrev32gt.16','vrev32le.16',
            'vrev64eq.8','vrev64ne.8','vrev64cs.8','vrev64hs.8','vrev64cc.8','vrev64lo.8','vrev64mi.8','vrev64pl.8','vrev64vs.8','vrev64vc.8','vrev64hi.8','vrev64ls.8','vrev64ge.8','vrev64lt.8','vrev64gt.8','vrev64le.8',
            'vrev64eq.16','vrev64ne.16','vrev64cs.16','vrev64hs.16','vrev64cc.16','vrev64lo.16','vrev64mi.16','vrev64pl.16','vrev64vs.16','vrev64vc.16','vrev64hi.16','vrev64ls.16','vrev64ge.16','vrev64lt.16','vrev64gt.16','vrev64le.16',
            'vrev64eq.32','vrev64ne.32','vrev64cs.32','vrev64hs.32','vrev64cc.32','vrev64lo.32','vrev64mi.32','vrev64pl.32','vrev64vs.32','vrev64vc.32','vrev64hi.32','vrev64ls.32','vrev64ge.32','vrev64lt.32','vrev64gt.32','vrev64le.32',

            'vslieq.8','vsline.8','vslics.8','vslihs.8','vslicc.8','vslilo.8','vslimi.8','vslipl.8','vslivs.8','vslivc.8','vslihi.8','vslils.8','vslige.8','vslilt.8','vsligt.8','vslile.8',
            'vslieq.16','vsline.16','vslics.16','vslihs.16','vslicc.16','vslilo.16','vslimi.16','vslipl.16','vslivs.16','vslivc.16','vslihi.16','vslils.16','vslige.16','vslilt.16','vsligt.16','vslile.16',
            'vslieq.32','vsline.32','vslics.32','vslihs.32','vslicc.32','vslilo.32','vslimi.32','vslipl.32','vslivs.32','vslivc.32','vslihi.32','vslils.32','vslige.32','vslilt.32','vsligt.32','vslile.32',
            'vslieq.64','vsline.64','vslics.64','vslihs.64','vslicc.64','vslilo.64','vslimi.64','vslipl.64','vslivs.64','vslivc.64','vslihi.64','vslils.64','vslige.64','vslilt.64','vsligt.64','vslile.64',

            'vsrieq.8','vsrine.8','vsrics.8','vsrihs.8','vsricc.8','vsrilo.8','vsrimi.8','vsripl.8','vsrivs.8','vsrivc.8','vsrihi.8','vsrils.8','vsrige.8','vsrilt.8','vsrigt.8','vsrile.8',
            'vsrieq.16','vsrine.16','vsrics.16','vsrihs.16','vsricc.16','vsrilo.16','vsrimi.16','vsripl.16','vsrivs.16','vsrivc.16','vsrihi.16','vsrils.16','vsrige.16','vsrilt.16','vsrigt.16','vsrile.16',
            'vsrieq.32','vsrine.32','vsrics.32','vsrihs.32','vsricc.32','vsrilo.32','vsrimi.32','vsripl.32','vsrivs.32','vsrivc.32','vsrihi.32','vsrils.32','vsrige.32','vsrilt.32','vsrigt.32','vsrile.32',
            'vsrieq.64','vsrine.64','vsrics.64','vsrihs.64','vsricc.64','vsrilo.64','vsrimi.64','vsripl.64','vsrivs.64','vsrivc.64','vsrihi.64','vsrils.64','vsrige.64','vsrilt.64','vsrigt.64','vsrile.64',

            'vtbleq.8','vtblne.8','vtblcs.8','vtblhs.8','vtblcc.8','vtbllo.8','vtblmi.8','vtblpl.8','vtblvs.8','vtblvc.8','vtblhi.8','vtblls.8','vtblge.8','vtbllt.8','vtblgt.8','vtblle.8',

            'vtbxeq','vtbxne','vtbxcs','vtbxhs','vtbxcc','vtbxlo','vtbxmi','vtbxpl','vtbxvs','vtbxvc','vtbxhi','vtbxls','vtbxge','vtbxlt','vtbxgt','vtbxle',

            'vtrneq.8','vtrnne.8','vtrncs.8','vtrnhs.8','vtrncc.8','vtrnlo.8','vtrnmi.8','vtrnpl.8','vtrnvs.8','vtrnvc.8','vtrnhi.8','vtrnls.8','vtrnge.8','vtrnlt.8','vtrngt.8','vtrnle.8',
            'vtrneq.16','vtrnne.16','vtrncs.16','vtrnhs.16','vtrncc.16','vtrnlo.16','vtrnmi.16','vtrnpl.16','vtrnvs.16','vtrnvc.16','vtrnhi.16','vtrnls.16','vtrnge.16','vtrnlt.16','vtrngt.16','vtrnle.16',
            'vtrneq.32','vtrnne.32','vtrncs.32','vtrnhs.32','vtrncc.32','vtrnlo.32','vtrnmi.32','vtrnpl.32','vtrnvs.32','vtrnvc.32','vtrnhi.32','vtrnls.32','vtrnge.32','vtrnlt.32','vtrngt.32','vtrnle.32',

            'vtsteq.8','vtstne.8','vtstcs.8','vtsths.8','vtstcc.8','vtstlo.8','vtstmi.8','vtstpl.8','vtstvs.8','vtstvc.8','vtsthi.8','vtstls.8','vtstge.8','vtstlt.8','vtstgt.8','vtstle.8',
            'vtsteq.16','vtstne.16','vtstcs.16','vtsths.16','vtstcc.16','vtstlo.16','vtstmi.16','vtstpl.16','vtstvs.16','vtstvc.16','vtsthi.16','vtstls.16','vtstge.16','vtstlt.16','vtstgt.16','vtstle.16',
            'vtsteq.32','vtstne.32','vtstcs.32','vtsths.32','vtstcc.32','vtstlo.32','vtstmi.32','vtstpl.32','vtstvs.32','vtstvc.32','vtsthi.32','vtstls.32','vtstge.32','vtstlt.32','vtstgt.32','vtstle.32',

            'vuzpeq.8','vuzpne.8','vuzpcs.8','vuzphs.8','vuzpcc.8','vuzplo.8','vuzpmi.8','vuzppl.8','vuzpvs.8','vuzpvc.8','vuzphi.8','vuzpls.8','vuzpge.8','vuzplt.8','vuzpgt.8','vuzple.8',
            'vuzpeq.16','vuzpne.16','vuzpcs.16','vuzphs.16','vuzpcc.16','vuzplo.16','vuzpmi.16','vuzppl.16','vuzpvs.16','vuzpvc.16','vuzphi.16','vuzpls.16','vuzpge.16','vuzplt.16','vuzpgt.16','vuzple.16',
            'vuzpeq.32','vuzpne.32','vuzpcs.32','vuzphs.32','vuzpcc.32','vuzplo.32','vuzpmi.32','vuzppl.32','vuzpvs.32','vuzpvc.32','vuzphi.32','vuzpls.32','vuzpge.32','vuzplt.32','vuzpgt.32','vuzple.32',

            'vzipeq.8','vzipne.8','vzipcs.8','vziphs.8','vzipcc.8','vziplo.8','vzipmi.8','vzippl.8','vzipvs.8','vzipvc.8','vziphi.8','vzipls.8','vzipge.8','vziplt.8','vzipgt.8','vziple.8',
            'vzipeq.16','vzipne.16','vzipcs.16','vziphs.16','vzipcc.16','vziplo.16','vzipmi.16','vzippl.16','vzipvs.16','vzipvc.16','vziphi.16','vzipls.16','vzipge.16','vziplt.16','vzipgt.16','vziple.16',
            'vzipeq.32','vzipne.32','vzipcs.32','vziphs.32','vzipcc.32','vziplo.32','vzipmi.32','vzippl.32','vzipvs.32','vzipvc.32','vziphi.32','vzipls.32','vzipge.32','vziplt.32','vzipgt.32','vziple.32',

            'vmulleq.p8','vmullne.p8','vmullcs.p8','vmullhs.p8','vmullcc.p8','vmulllo.p8','vmullmi.p8','vmullpl.p8','vmullvs.p8','vmullvc.p8','vmullhi.p8','vmullls.p8','vmullge.p8','vmulllt.p8','vmullgt.p8','vmullle.p8'
            ),
        /* Conditional NEON SIMD Universal Integer Instructions */
        31 => array(
            'vaddeq.i8','vaddne.i8','vaddcs.i8','vaddhs.i8','vaddcc.i8','vaddlo.i8','vaddmi.i8','vaddpl.i8','vaddvs.i8','vaddvc.i8','vaddhi.i8','vaddls.i8','vaddge.i8','vaddlt.i8','vaddgt.i8','vaddle.i8',
            'vaddeq.i16','vaddne.i16','vaddcs.i16','vaddhs.i16','vaddcc.i16','vaddlo.i16','vaddmi.i16','vaddpl.i16','vaddvs.i16','vaddvc.i16','vaddhi.i16','vaddls.i16','vaddge.i16','vaddlt.i16','vaddgt.i16','vaddle.i16',
            'vaddeq.i32','vaddne.i32','vaddcs.i32','vaddhs.i32','vaddcc.i32','vaddlo.i32','vaddmi.i32','vaddpl.i32','vaddvs.i32','vaddvc.i32','vaddhi.i32','vaddls.i32','vaddge.i32','vaddlt.i32','vaddgt.i32','vaddle.i32',
            'vaddeq.i64','vaddne.i64','vaddcs.i64','vaddhs.i64','vaddcc.i64','vaddlo.i64','vaddmi.i64','vaddpl.i64','vaddvs.i64','vaddvc.i64','vaddhi.i64','vaddls.i64','vaddge.i64','vaddlt.i64','vaddgt.i64','vaddle.i64',

            'vsubeq.i8','vsubne.i8','vsubcs.i8','vsubhs.i8','vsubcc.i8','vsublo.i8','vsubmi.i8','vsubpl.i8','vsubvs.i8','vsubvc.i8','vsubhi.i8','vsubls.i8','vsubge.i8','vsublt.i8','vsubgt.i8','vsuble.i8',
            'vsubeq.i16','vsubne.i16','vsubcs.i16','vsubhs.i16','vsubcc.i16','vsublo.i16','vsubmi.i16','vsubpl.i16','vsubvs.i16','vsubvc.i16','vsubhi.i16','vsubls.i16','vsubge.i16','vsublt.i16','vsubgt.i16','vsuble.i16',
            'vsubeq.i32','vsubne.i32','vsubcs.i32','vsubhs.i32','vsubcc.i32','vsublo.i32','vsubmi.i32','vsubpl.i32','vsubvs.i32','vsubvc.i32','vsubhi.i32','vsubls.i32','vsubge.i32','vsublt.i32','vsubgt.i32','vsuble.i32',
            'vsubeq.i64','vsubne.i64','vsubcs.i64','vsubhs.i64','vsubcc.i64','vsublo.i64','vsubmi.i64','vsubpl.i64','vsubvs.i64','vsubvc.i64','vsubhi.i64','vsubls.i64','vsubge.i64','vsublt.i64','vsubgt.i64','vsuble.i64',

            'vaddhneq.i16','vaddhnne.i16','vaddhncs.i16','vaddhnhs.i16','vaddhncc.i16','vaddhnlo.i16','vaddhnmi.i16','vaddhnpl.i16','vaddhnvs.i16','vaddhnvc.i16','vaddhnhi.i16','vaddhnls.i16','vaddhnge.i16','vaddhnlt.i16','vaddhngt.i16','vaddhnle.i16',
            'vaddhneq.i32','vaddhnne.i32','vaddhncs.i32','vaddhnhs.i32','vaddhncc.i32','vaddhnlo.i32','vaddhnmi.i32','vaddhnpl.i32','vaddhnvs.i32','vaddhnvc.i32','vaddhnhi.i32','vaddhnls.i32','vaddhnge.i32','vaddhnlt.i32','vaddhngt.i32','vaddhnle.i32',
            'vaddhneq.i64','vaddhnne.i64','vaddhncs.i64','vaddhnhs.i64','vaddhncc.i64','vaddhnlo.i64','vaddhnmi.i64','vaddhnpl.i64','vaddhnvs.i64','vaddhnvc.i64','vaddhnhi.i64','vaddhnls.i64','vaddhnge.i64','vaddhnlt.i64','vaddhngt.i64','vaddhnle.i64',

            'vsubhneq.i16','vsubhnne.i16','vsubhncs.i16','vsubhnhs.i16','vsubhncc.i16','vsubhnlo.i16','vsubhnmi.i16','vsubhnpl.i16','vsubhnvs.i16','vsubhnvc.i16','vsubhnhi.i16','vsubhnls.i16','vsubhnge.i16','vsubhnlt.i16','vsubhngt.i16','vsubhnle.i16',
            'vsubhneq.i32','vsubhnne.i32','vsubhncs.i32','vsubhnhs.i32','vsubhncc.i32','vsubhnlo.i32','vsubhnmi.i32','vsubhnpl.i32','vsubhnvs.i32','vsubhnvc.i32','vsubhnhi.i32','vsubhnls.i32','vsubhnge.i32','vsubhnlt.i32','vsubhngt.i32','vsubhnle.i32',
            'vsubhneq.i64','vsubhnne.i64','vsubhncs.i64','vsubhnhs.i64','vsubhncc.i64','vsubhnlo.i64','vsubhnmi.i64','vsubhnpl.i64','vsubhnvs.i64','vsubhnvc.i64','vsubhnhi.i64','vsubhnls.i64','vsubhnge.i64','vsubhnlt.i64','vsubhngt.i64','vsubhnle.i64',

            'vraddhneq.i16','vraddhnne.i16','vraddhncs.i16','vraddhnhs.i16','vraddhncc.i16','vraddhnlo.i16','vraddhnmi.i16','vraddhnpl.i16','vraddhnvs.i16','vraddhnvc.i16','vraddhnhi.i16','vraddhnls.i16','vraddhnge.i16','vraddhnlt.i16','vraddhngt.i16','vraddhnle.i16',
            'vraddhneq.i32','vraddhnne.i32','vraddhncs.i32','vraddhnhs.i32','vraddhncc.i32','vraddhnlo.i32','vraddhnmi.i32','vraddhnpl.i32','vraddhnvs.i32','vraddhnvc.i32','vraddhnhi.i32','vraddhnls.i32','vraddhnge.i32','vraddhnlt.i32','vraddhngt.i32','vraddhnle.i32',
            'vraddhneq.i64','vraddhnne.i64','vraddhncs.i64','vraddhnhs.i64','vraddhncc.i64','vraddhnlo.i64','vraddhnmi.i64','vraddhnpl.i64','vraddhnvs.i64','vraddhnvc.i64','vraddhnhi.i64','vraddhnls.i64','vraddhnge.i64','vraddhnlt.i64','vraddhngt.i64','vraddhnle.i64',

            'vrsubhneq.i16','vrsubhnne.i16','vrsubhncs.i16','vrsubhnhs.i16','vrsubhncc.i16','vrsubhnlo.i16','vrsubhnmi.i16','vrsubhnpl.i16','vrsubhnvs.i16','vrsubhnvc.i16','vrsubhnhi.i16','vrsubhnls.i16','vrsubhnge.i16','vrsubhnlt.i16','vrsubhngt.i16','vrsubhnle.i16',
            'vrsubhneq.i32','vrsubhnne.i32','vrsubhncs.i32','vrsubhnhs.i32','vrsubhncc.i32','vrsubhnlo.i32','vrsubhnmi.i32','vrsubhnpl.i32','vrsubhnvs.i32','vrsubhnvc.i32','vrsubhnhi.i32','vrsubhnls.i32','vrsubhnge.i32','vrsubhnlt.i32','vrsubhngt.i32','vrsubhnle.i32',
            'vrsubhneq.i64','vrsubhnne.i64','vrsubhncs.i64','vrsubhnhs.i64','vrsubhncc.i64','vrsubhnlo.i64','vrsubhnmi.i64','vrsubhnpl.i64','vrsubhnvs.i64','vrsubhnvc.i64','vrsubhnhi.i64','vrsubhnls.i64','vrsubhnge.i64','vrsubhnlt.i64','vrsubhngt.i64','vrsubhnle.i64',

            'vpaddeq.i8','vpaddne.i8','vpaddcs.i8','vpaddhs.i8','vpaddcc.i8','vpaddlo.i8','vpaddmi.i8','vpaddpl.i8','vpaddvs.i8','vpaddvc.i8','vpaddhi.i8','vpaddls.i8','vpaddge.i8','vpaddlt.i8','vpaddgt.i8','vpaddle.i8',
            'vpaddeq.i16','vpaddne.i16','vpaddcs.i16','vpaddhs.i16','vpaddcc.i16','vpaddlo.i16','vpaddmi.i16','vpaddpl.i16','vpaddvs.i16','vpaddvc.i16','vpaddhi.i16','vpaddls.i16','vpaddge.i16','vpaddlt.i16','vpaddgt.i16','vpaddle.i16',
            'vpaddeq.i32','vpaddne.i32','vpaddcs.i32','vpaddhs.i32','vpaddcc.i32','vpaddlo.i32','vpaddmi.i32','vpaddpl.i32','vpaddvs.i32','vpaddvc.i32','vpaddhi.i32','vpaddls.i32','vpaddge.i32','vpaddlt.i32','vpaddgt.i32','vpaddle.i32',

            'vceqeq.i8','vceqne.i8','vceqcs.i8','vceqhs.i8','vceqcc.i8','vceqlo.i8','vceqmi.i8','vceqpl.i8','vceqvs.i8','vceqvc.i8','vceqhi.i8','vceqls.i8','vceqge.i8','vceqlt.i8','vceqgt.i8','vceqle.i8',
            'vceqeq.i16','vceqne.i16','vceqcs.i16','vceqhs.i16','vceqcc.i16','vceqlo.i16','vceqmi.i16','vceqpl.i16','vceqvs.i16','vceqvc.i16','vceqhi.i16','vceqls.i16','vceqge.i16','vceqlt.i16','vceqgt.i16','vceqle.i16',
            'vceqeq.i32','vceqne.i32','vceqcs.i32','vceqhs.i32','vceqcc.i32','vceqlo.i32','vceqmi.i32','vceqpl.i32','vceqvs.i32','vceqvc.i32','vceqhi.i32','vceqls.i32','vceqge.i32','vceqlt.i32','vceqgt.i32','vceqle.i32',

            'vclzeq.i8','vclzne.i8','vclzcs.i8','vclzhs.i8','vclzcc.i8','vclzlo.i8','vclzmi.i8','vclzpl.i8','vclzvs.i8','vclzvc.i8','vclzhi.i8','vclzls.i8','vclzge.i8','vclzlt.i8','vclzgt.i8','vclzle.i8',
            'vclzeq.i16','vclzne.i16','vclzcs.i16','vclzhs.i16','vclzcc.i16','vclzlo.i16','vclzmi.i16','vclzpl.i16','vclzvs.i16','vclzvc.i16','vclzhi.i16','vclzls.i16','vclzge.i16','vclzlt.i16','vclzgt.i16','vclzle.i16',
            'vclzeq.i32','vclzne.i32','vclzcs.i32','vclzhs.i32','vclzcc.i32','vclzlo.i32','vclzmi.i32','vclzpl.i32','vclzvs.i32','vclzvc.i32','vclzhi.i32','vclzls.i32','vclzge.i32','vclzlt.i32','vclzgt.i32','vclzle.i32',

            'vmovneq.i16','vmovnne.i16','vmovncs.i16','vmovnhs.i16','vmovncc.i16','vmovnlo.i16','vmovnmi.i16','vmovnpl.i16','vmovnvs.i16','vmovnvc.i16','vmovnhi.i16','vmovnls.i16','vmovnge.i16','vmovnlt.i16','vmovngt.i16','vmovnle.i16',
            'vmovneq.i32','vmovnne.i32','vmovncs.i32','vmovnhs.i32','vmovncc.i32','vmovnlo.i32','vmovnmi.i32','vmovnpl.i32','vmovnvs.i32','vmovnvc.i32','vmovnhi.i32','vmovnls.i32','vmovnge.i32','vmovnlt.i32','vmovngt.i32','vmovnle.i32',
            'vmovneq.i64','vmovnne.i64','vmovncs.i64','vmovnhs.i64','vmovncc.i64','vmovnlo.i64','vmovnmi.i64','vmovnpl.i64','vmovnvs.i64','vmovnvc.i64','vmovnhi.i64','vmovnls.i64','vmovnge.i64','vmovnlt.i64','vmovngt.i64','vmovnle.i64',

            'vmlaeq.s8','vmlane.s8','vmlacs.s8','vmlahs.s8','vmlacc.s8','vmlalo.s8','vmlami.s8','vmlapl.s8','vmlavs.s8','vmlavc.s8','vmlahi.s8','vmlals.s8','vmlage.s8','vmlalt.s8','vmlagt.s8','vmlale.s8',
            'vmlaeq.s16','vmlane.s16','vmlacs.s16','vmlahs.s16','vmlacc.s16','vmlalo.s16','vmlami.s16','vmlapl.s16','vmlavs.s16','vmlavc.s16','vmlahi.s16','vmlals.s16','vmlage.s16','vmlalt.s16','vmlagt.s16','vmlale.s16',
            'vmlaeq.s32','vmlane.s32','vmlacs.s32','vmlahs.s32','vmlacc.s32','vmlalo.s32','vmlami.s32','vmlapl.s32','vmlavs.s32','vmlavc.s32','vmlahi.s32','vmlals.s32','vmlage.s32','vmlalt.s32','vmlagt.s32','vmlale.s32',
            'vmlaeq.u8','vmlane.u8','vmlacs.u8','vmlahs.u8','vmlacc.u8','vmlalo.u8','vmlami.u8','vmlapl.u8','vmlavs.u8','vmlavc.u8','vmlahi.u8','vmlals.u8','vmlage.u8','vmlalt.u8','vmlagt.u8','vmlale.u8',
            'vmlaeq.u16','vmlane.u16','vmlacs.u16','vmlahs.u16','vmlacc.u16','vmlalo.u16','vmlami.u16','vmlapl.u16','vmlavs.u16','vmlavc.u16','vmlahi.u16','vmlals.u16','vmlage.u16','vmlalt.u16','vmlagt.u16','vmlale.u16',
            'vmlaeq.u32','vmlane.u32','vmlacs.u32','vmlahs.u32','vmlacc.u32','vmlalo.u32','vmlami.u32','vmlapl.u32','vmlavs.u32','vmlavc.u32','vmlahi.u32','vmlals.u32','vmlage.u32','vmlalt.u32','vmlagt.u32','vmlale.u32',
            'vmlaeq.i8','vmlane.i8','vmlacs.i8','vmlahs.i8','vmlacc.i8','vmlalo.i8','vmlami.i8','vmlapl.i8','vmlavs.i8','vmlavc.i8','vmlahi.i8','vmlals.i8','vmlage.i8','vmlalt.i8','vmlagt.i8','vmlale.i8',
            'vmlaeq.i16','vmlane.i16','vmlacs.i16','vmlahs.i16','vmlacc.i16','vmlalo.i16','vmlami.i16','vmlapl.i16','vmlavs.i16','vmlavc.i16','vmlahi.i16','vmlals.i16','vmlage.i16','vmlalt.i16','vmlagt.i16','vmlale.i16',
            'vmlaeq.i32','vmlane.i32','vmlacs.i32','vmlahs.i32','vmlacc.i32','vmlalo.i32','vmlami.i32','vmlapl.i32','vmlavs.i32','vmlavc.i32','vmlahi.i32','vmlals.i32','vmlage.i32','vmlalt.i32','vmlagt.i32','vmlale.i32',

            'vmlseq.s8','vmlsne.s8','vmlscs.s8','vmlshs.s8','vmlscc.s8','vmlslo.s8','vmlsmi.s8','vmlspl.s8','vmlsvs.s8','vmlsvc.s8','vmlshi.s8','vmlsls.s8','vmlsge.s8','vmlslt.s8','vmlsgt.s8','vmlsle.s8',
            'vmlseq.s16','vmlsne.s16','vmlscs.s16','vmlshs.s16','vmlscc.s16','vmlslo.s16','vmlsmi.s16','vmlspl.s16','vmlsvs.s16','vmlsvc.s16','vmlshi.s16','vmlsls.s16','vmlsge.s16','vmlslt.s16','vmlsgt.s16','vmlsle.s16',
            'vmlseq.s32','vmlsne.s32','vmlscs.s32','vmlshs.s32','vmlscc.s32','vmlslo.s32','vmlsmi.s32','vmlspl.s32','vmlsvs.s32','vmlsvc.s32','vmlshi.s32','vmlsls.s32','vmlsge.s32','vmlslt.s32','vmlsgt.s32','vmlsle.s32',
            'vmlseq.u8','vmlsne.u8','vmlscs.u8','vmlshs.u8','vmlscc.u8','vmlslo.u8','vmlsmi.u8','vmlspl.u8','vmlsvs.u8','vmlsvc.u8','vmlshi.u8','vmlsls.u8','vmlsge.u8','vmlslt.u8','vmlsgt.u8','vmlsle.u8',
            'vmlseq.u16','vmlsne.u16','vmlscs.u16','vmlshs.u16','vmlscc.u16','vmlslo.u16','vmlsmi.u16','vmlspl.u16','vmlsvs.u16','vmlsvc.u16','vmlshi.u16','vmlsls.u16','vmlsge.u16','vmlslt.u16','vmlsgt.u16','vmlsle.u16',
            'vmlseq.u32','vmlsne.u32','vmlscs.u32','vmlshs.u32','vmlscc.u32','vmlslo.u32','vmlsmi.u32','vmlspl.u32','vmlsvs.u32','vmlsvc.u32','vmlshi.u32','vmlsls.u32','vmlsge.u32','vmlslt.u32','vmlsgt.u32','vmlsle.u32',
            'vmlseq.i8','vmlsne.i8','vmlscs.i8','vmlshs.i8','vmlscc.i8','vmlslo.i8','vmlsmi.i8','vmlspl.i8','vmlsvs.i8','vmlsvc.i8','vmlshi.i8','vmlsls.i8','vmlsge.i8','vmlslt.i8','vmlsgt.i8','vmlsle.i8',
            'vmlseq.i16','vmlsne.i16','vmlscs.i16','vmlshs.i16','vmlscc.i16','vmlslo.i16','vmlsmi.i16','vmlspl.i16','vmlsvs.i16','vmlsvc.i16','vmlshi.i16','vmlsls.i16','vmlsge.i16','vmlslt.i16','vmlsgt.i16','vmlsle.i16',
            'vmlseq.i32','vmlsne.i32','vmlscs.i32','vmlshs.i32','vmlscc.i32','vmlslo.i32','vmlsmi.i32','vmlspl.i32','vmlsvs.i32','vmlsvc.i32','vmlshi.i32','vmlsls.i32','vmlsge.i32','vmlslt.i32','vmlsgt.i32','vmlsle.i32',

            'vmuleq.s8','vmulne.s8','vmulcs.s8','vmulhs.s8','vmulcc.s8','vmullo.s8','vmulmi.s8','vmulpl.s8','vmulvs.s8','vmulvc.s8','vmulhi.s8','vmulls.s8','vmulge.s8','vmullt.s8','vmulgt.s8','vmulle.s8',
            'vmuleq.s16','vmulne.s16','vmulcs.s16','vmulhs.s16','vmulcc.s16','vmullo.s16','vmulmi.s16','vmulpl.s16','vmulvs.s16','vmulvc.s16','vmulhi.s16','vmulls.s16','vmulge.s16','vmullt.s16','vmulgt.s16','vmulle.s16',
            'vmuleq.s32','vmulne.s32','vmulcs.s32','vmulhs.s32','vmulcc.s32','vmullo.s32','vmulmi.s32','vmulpl.s32','vmulvs.s32','vmulvc.s32','vmulhi.s32','vmulls.s32','vmulge.s32','vmullt.s32','vmulgt.s32','vmulle.s32',
            'vmuleq.u8','vmulne.u8','vmulcs.u8','vmulhs.u8','vmulcc.u8','vmullo.u8','vmulmi.u8','vmulpl.u8','vmulvs.u8','vmulvc.u8','vmulhi.u8','vmulls.u8','vmulge.u8','vmullt.u8','vmulgt.u8','vmulle.u8',
            'vmuleq.u16','vmulne.u16','vmulcs.u16','vmulhs.u16','vmulcc.u16','vmullo.u16','vmulmi.u16','vmulpl.u16','vmulvs.u16','vmulvc.u16','vmulhi.u16','vmulls.u16','vmulge.u16','vmullt.u16','vmulgt.u16','vmulle.u16',
            'vmuleq.u32','vmulne.u32','vmulcs.u32','vmulhs.u32','vmulcc.u32','vmullo.u32','vmulmi.u32','vmulpl.u32','vmulvs.u32','vmulvc.u32','vmulhi.u32','vmulls.u32','vmulge.u32','vmullt.u32','vmulgt.u32','vmulle.u32',
            'vmuleq.i8','vmulne.i8','vmulcs.i8','vmulhs.i8','vmulcc.i8','vmullo.i8','vmulmi.i8','vmulpl.i8','vmulvs.i8','vmulvc.i8','vmulhi.i8','vmulls.i8','vmulge.i8','vmullt.i8','vmulgt.i8','vmulle.i8',
            'vmuleq.i16','vmulne.i16','vmulcs.i16','vmulhs.i16','vmulcc.i16','vmullo.i16','vmulmi.i16','vmulpl.i16','vmulvs.i16','vmulvc.i16','vmulhi.i16','vmulls.i16','vmulge.i16','vmullt.i16','vmulgt.i16','vmulle.i16',
            'vmuleq.i32','vmulne.i32','vmulcs.i32','vmulhs.i32','vmulcc.i32','vmullo.i32','vmulmi.i32','vmulpl.i32','vmulvs.i32','vmulvc.i32','vmulhi.i32','vmulls.i32','vmulge.i32','vmullt.i32','vmulgt.i32','vmulle.i32',
            'vmuleq.p8','vmulne.p8','vmulcs.p8','vmulhs.p8','vmulcc.p8','vmullo.p8','vmulmi.p8','vmulpl.p8','vmulvs.p8','vmulvc.p8','vmulhi.p8','vmulls.p8','vmulge.p8','vmullt.p8','vmulgt.p8','vmulle.p8',

            'vrshrneq.i16','vrshrnne.i16','vrshrncs.i16','vrshrnhs.i16','vrshrncc.i16','vrshrnlo.i16','vrshrnmi.i16','vrshrnpl.i16','vrshrnvs.i16','vrshrnvc.i16','vrshrnhi.i16','vrshrnls.i16','vrshrnge.i16','vrshrnlt.i16','vrshrngt.i16','vrshrnle.i16',
            'vrshrneq.i32','vrshrnne.i32','vrshrncs.i32','vrshrnhs.i32','vrshrncc.i32','vrshrnlo.i32','vrshrnmi.i32','vrshrnpl.i32','vrshrnvs.i32','vrshrnvc.i32','vrshrnhi.i32','vrshrnls.i32','vrshrnge.i32','vrshrnlt.i32','vrshrngt.i32','vrshrnle.i32',
            'vrshrneq.i64','vrshrnne.i64','vrshrncs.i64','vrshrnhs.i64','vrshrncc.i64','vrshrnlo.i64','vrshrnmi.i64','vrshrnpl.i64','vrshrnvs.i64','vrshrnvc.i64','vrshrnhi.i64','vrshrnls.i64','vrshrnge.i64','vrshrnlt.i64','vrshrngt.i64','vrshrnle.i64',

            'vshrneq.i16','vshrnne.i16','vshrncs.i16','vshrnhs.i16','vshrncc.i16','vshrnlo.i16','vshrnmi.i16','vshrnpl.i16','vshrnvs.i16','vshrnvc.i16','vshrnhi.i16','vshrnls.i16','vshrnge.i16','vshrnlt.i16','vshrngt.i16','vshrnle.i16',
            'vshrneq.i32','vshrnne.i32','vshrncs.i32','vshrnhs.i32','vshrncc.i32','vshrnlo.i32','vshrnmi.i32','vshrnpl.i32','vshrnvs.i32','vshrnvc.i32','vshrnhi.i32','vshrnls.i32','vshrnge.i32','vshrnlt.i32','vshrngt.i32','vshrnle.i32',
            'vshrneq.i64','vshrnne.i64','vshrncs.i64','vshrnhs.i64','vshrncc.i64','vshrnlo.i64','vshrnmi.i64','vshrnpl.i64','vshrnvs.i64','vshrnvc.i64','vshrnhi.i64','vshrnls.i64','vshrnge.i64','vshrnlt.i64','vshrngt.i64','vshrnle.i64',

            'vshleq.i8','vshlne.i8','vshlcs.i8','vshlhs.i8','vshlcc.i8','vshllo.i8','vshlmi.i8','vshlpl.i8','vshlvs.i8','vshlvc.i8','vshlhi.i8','vshlls.i8','vshlge.i8','vshllt.i8','vshlgt.i8','vshlle.i8',
            'vshleq.i16','vshlne.i16','vshlcs.i16','vshlhs.i16','vshlcc.i16','vshllo.i16','vshlmi.i16','vshlpl.i16','vshlvs.i16','vshlvc.i16','vshlhi.i16','vshlls.i16','vshlge.i16','vshllt.i16','vshlgt.i16','vshlle.i16',
            'vshleq.i32','vshlne.i32','vshlcs.i32','vshlhs.i32','vshlcc.i32','vshllo.i32','vshlmi.i32','vshlpl.i32','vshlvs.i32','vshlvc.i32','vshlhi.i32','vshlls.i32','vshlge.i32','vshllt.i32','vshlgt.i32','vshlle.i32',
            'vshleq.i64','vshlne.i64','vshlcs.i64','vshlhs.i64','vshlcc.i64','vshllo.i64','vshlmi.i64','vshlpl.i64','vshlvs.i64','vshlvc.i64','vshlhi.i64','vshlls.i64','vshlge.i64','vshllt.i64','vshlgt.i64','vshlle.i64',

            'vshlleq.i8','vshllne.i8','vshllcs.i8','vshllhs.i8','vshllcc.i8','vshlllo.i8','vshllmi.i8','vshllpl.i8','vshllvs.i8','vshllvc.i8','vshllhi.i8','vshllls.i8','vshllge.i8','vshlllt.i8','vshllgt.i8','vshllle.i8',
            'vshlleq.i16','vshllne.i16','vshllcs.i16','vshllhs.i16','vshllcc.i16','vshlllo.i16','vshllmi.i16','vshllpl.i16','vshllvs.i16','vshllvc.i16','vshllhi.i16','vshllls.i16','vshllge.i16','vshlllt.i16','vshllgt.i16','vshllle.i16',
            'vshlleq.i32','vshllne.i32','vshllcs.i32','vshllhs.i32','vshllcc.i32','vshlllo.i32','vshllmi.i32','vshllpl.i32','vshllvs.i32','vshllvc.i32','vshllhi.i32','vshllls.i32','vshllge.i32','vshlllt.i32','vshllgt.i32','vshllle.i32'
            ),
        /* Conditional NEON SIMD Signed Integer Instructions */
        32 => array(
            'vabaeq.s8','vabane.s8','vabacs.s8','vabahs.s8','vabacc.s8','vabalo.s8','vabami.s8','vabapl.s8','vabavs.s8','vabavc.s8','vabahi.s8','vabals.s8','vabage.s8','vabalt.s8','vabagt.s8','vabale.s8',
            'vabaeq.s16','vabane.s16','vabacs.s16','vabahs.s16','vabacc.s16','vabalo.s16','vabami.s16','vabapl.s16','vabavs.s16','vabavc.s16','vabahi.s16','vabals.s16','vabage.s16','vabalt.s16','vabagt.s16','vabale.s16',
            'vabaeq.s32','vabane.s32','vabacs.s32','vabahs.s32','vabacc.s32','vabalo.s32','vabami.s32','vabapl.s32','vabavs.s32','vabavc.s32','vabahi.s32','vabals.s32','vabage.s32','vabalt.s32','vabagt.s32','vabale.s32',

            'vabaleq.s8','vabalne.s8','vabalcs.s8','vabalhs.s8','vabalcc.s8','vaballo.s8','vabalmi.s8','vabalpl.s8','vabalvs.s8','vabalvc.s8','vabalhi.s8','vaballs.s8','vabalge.s8','vaballt.s8','vabalgt.s8','vaballe.s8',
            'vabaleq.s16','vabalne.s16','vabalcs.s16','vabalhs.s16','vabalcc.s16','vaballo.s16','vabalmi.s16','vabalpl.s16','vabalvs.s16','vabalvc.s16','vabalhi.s16','vaballs.s16','vabalge.s16','vaballt.s16','vabalgt.s16','vaballe.s16',
            'vabaleq.s32','vabalne.s32','vabalcs.s32','vabalhs.s32','vabalcc.s32','vaballo.s32','vabalmi.s32','vabalpl.s32','vabalvs.s32','vabalvc.s32','vabalhi.s32','vaballs.s32','vabalge.s32','vaballt.s32','vabalgt.s32','vaballe.s32',

            'vabdeq.s8','vabdne.s8','vabdcs.s8','vabdhs.s8','vabdcc.s8','vabdlo.s8','vabdmi.s8','vabdpl.s8','vabdvs.s8','vabdvc.s8','vabdhi.s8','vabdls.s8','vabdge.s8','vabdlt.s8','vabdgt.s8','vabdle.s8',
            'vabdeq.s16','vabdne.s16','vabdcs.s16','vabdhs.s16','vabdcc.s16','vabdlo.s16','vabdmi.s16','vabdpl.s16','vabdvs.s16','vabdvc.s16','vabdhi.s16','vabdls.s16','vabdge.s16','vabdlt.s16','vabdgt.s16','vabdle.s16',
            'vabdeq.s32','vabdne.s32','vabdcs.s32','vabdhs.s32','vabdcc.s32','vabdlo.s32','vabdmi.s32','vabdpl.s32','vabdvs.s32','vabdvc.s32','vabdhi.s32','vabdls.s32','vabdge.s32','vabdlt.s32','vabdgt.s32','vabdle.s32',

            'vabseq.s8','vabsne.s8','vabscs.s8','vabshs.s8','vabscc.s8','vabslo.s8','vabsmi.s8','vabspl.s8','vabsvs.s8','vabsvc.s8','vabshi.s8','vabsls.s8','vabsge.s8','vabslt.s8','vabsgt.s8','vabsle.s8',
            'vabseq.s16','vabsne.s16','vabscs.s16','vabshs.s16','vabscc.s16','vabslo.s16','vabsmi.s16','vabspl.s16','vabsvs.s16','vabsvc.s16','vabshi.s16','vabsls.s16','vabsge.s16','vabslt.s16','vabsgt.s16','vabsle.s16',
            'vabseq.s32','vabsne.s32','vabscs.s32','vabshs.s32','vabscc.s32','vabslo.s32','vabsmi.s32','vabspl.s32','vabsvs.s32','vabsvc.s32','vabshi.s32','vabsls.s32','vabsge.s32','vabslt.s32','vabsgt.s32','vabsle.s32',

            'vaddleq.s8','vaddlne.s8','vaddlcs.s8','vaddlhs.s8','vaddlcc.s8','vaddllo.s8','vaddlmi.s8','vaddlpl.s8','vaddlvs.s8','vaddlvc.s8','vaddlhi.s8','vaddlls.s8','vaddlge.s8','vaddllt.s8','vaddlgt.s8','vaddlle.s8',
            'vaddleq.s16','vaddlne.s16','vaddlcs.s16','vaddlhs.s16','vaddlcc.s16','vaddllo.s16','vaddlmi.s16','vaddlpl.s16','vaddlvs.s16','vaddlvc.s16','vaddlhi.s16','vaddlls.s16','vaddlge.s16','vaddllt.s16','vaddlgt.s16','vaddlle.s16',
            'vaddleq.s32','vaddlne.s32','vaddlcs.s32','vaddlhs.s32','vaddlcc.s32','vaddllo.s32','vaddlmi.s32','vaddlpl.s32','vaddlvs.s32','vaddlvc.s32','vaddlhi.s32','vaddlls.s32','vaddlge.s32','vaddllt.s32','vaddlgt.s32','vaddlle.s32',

            'vcgeeq.s8','vcgene.s8','vcgecs.s8','vcgehs.s8','vcgecc.s8','vcgelo.s8','vcgemi.s8','vcgepl.s8','vcgevs.s8','vcgevc.s8','vcgehi.s8','vcgels.s8','vcgege.s8','vcgelt.s8','vcgegt.s8','vcgele.s8',
            'vcgeeq.s16','vcgene.s16','vcgecs.s16','vcgehs.s16','vcgecc.s16','vcgelo.s16','vcgemi.s16','vcgepl.s16','vcgevs.s16','vcgevc.s16','vcgehi.s16','vcgels.s16','vcgege.s16','vcgelt.s16','vcgegt.s16','vcgele.s16',
            'vcgeeq.s32','vcgene.s32','vcgecs.s32','vcgehs.s32','vcgecc.s32','vcgelo.s32','vcgemi.s32','vcgepl.s32','vcgevs.s32','vcgevc.s32','vcgehi.s32','vcgels.s32','vcgege.s32','vcgelt.s32','vcgegt.s32','vcgele.s32',

            'vcleeq.s8','vclene.s8','vclecs.s8','vclehs.s8','vclecc.s8','vclelo.s8','vclemi.s8','vclepl.s8','vclevs.s8','vclevc.s8','vclehi.s8','vclels.s8','vclege.s8','vclelt.s8','vclegt.s8','vclele.s8',
            'vcleeq.s16','vclene.s16','vclecs.s16','vclehs.s16','vclecc.s16','vclelo.s16','vclemi.s16','vclepl.s16','vclevs.s16','vclevc.s16','vclehi.s16','vclels.s16','vclege.s16','vclelt.s16','vclegt.s16','vclele.s16',
            'vcleeq.s32','vclene.s32','vclecs.s32','vclehs.s32','vclecc.s32','vclelo.s32','vclemi.s32','vclepl.s32','vclevs.s32','vclevc.s32','vclehi.s32','vclels.s32','vclege.s32','vclelt.s32','vclegt.s32','vclele.s32',

            'vcgteq.s8','vcgtne.s8','vcgtcs.s8','vcgths.s8','vcgtcc.s8','vcgtlo.s8','vcgtmi.s8','vcgtpl.s8','vcgtvs.s8','vcgtvc.s8','vcgthi.s8','vcgtls.s8','vcgtge.s8','vcgtlt.s8','vcgtgt.s8','vcgtle.s8',
            'vcgteq.s16','vcgtne.s16','vcgtcs.s16','vcgths.s16','vcgtcc.s16','vcgtlo.s16','vcgtmi.s16','vcgtpl.s16','vcgtvs.s16','vcgtvc.s16','vcgthi.s16','vcgtls.s16','vcgtge.s16','vcgtlt.s16','vcgtgt.s16','vcgtle.s16',
            'vcgteq.s32','vcgtne.s32','vcgtcs.s32','vcgths.s32','vcgtcc.s32','vcgtlo.s32','vcgtmi.s32','vcgtpl.s32','vcgtvs.s32','vcgtvc.s32','vcgthi.s32','vcgtls.s32','vcgtge.s32','vcgtlt.s32','vcgtgt.s32','vcgtle.s32',

            'vclteq.s8','vcltne.s8','vcltcs.s8','vclths.s8','vcltcc.s8','vcltlo.s8','vcltmi.s8','vcltpl.s8','vcltvs.s8','vcltvc.s8','vclthi.s8','vcltls.s8','vcltge.s8','vcltlt.s8','vcltgt.s8','vcltle.s8',
            'vclteq.s16','vcltne.s16','vcltcs.s16','vclths.s16','vcltcc.s16','vcltlo.s16','vcltmi.s16','vcltpl.s16','vcltvs.s16','vcltvc.s16','vclthi.s16','vcltls.s16','vcltge.s16','vcltlt.s16','vcltgt.s16','vcltle.s16',
            'vclteq.s32','vcltne.s32','vcltcs.s32','vclths.s32','vcltcc.s32','vcltlo.s32','vcltmi.s32','vcltpl.s32','vcltvs.s32','vcltvc.s32','vclthi.s32','vcltls.s32','vcltge.s32','vcltlt.s32','vcltgt.s32','vcltle.s32',

            'vclseq.s8','vclsne.s8','vclscs.s8','vclshs.s8','vclscc.s8','vclslo.s8','vclsmi.s8','vclspl.s8','vclsvs.s8','vclsvc.s8','vclshi.s8','vclsls.s8','vclsge.s8','vclslt.s8','vclsgt.s8','vclsle.s8',
            'vclseq.s16','vclsne.s16','vclscs.s16','vclshs.s16','vclscc.s16','vclslo.s16','vclsmi.s16','vclspl.s16','vclsvs.s16','vclsvc.s16','vclshi.s16','vclsls.s16','vclsge.s16','vclslt.s16','vclsgt.s16','vclsle.s16',
            'vclseq.s32','vclsne.s32','vclscs.s32','vclshs.s32','vclscc.s32','vclslo.s32','vclsmi.s32','vclspl.s32','vclsvs.s32','vclsvc.s32','vclshi.s32','vclsls.s32','vclsge.s32','vclslt.s32','vclsgt.s32','vclsle.s32',

            'vaddweq.s8','vaddwne.s8','vaddwcs.s8','vaddwhs.s8','vaddwcc.s8','vaddwlo.s8','vaddwmi.s8','vaddwpl.s8','vaddwvs.s8','vaddwvc.s8','vaddwhi.s8','vaddwls.s8','vaddwge.s8','vaddwlt.s8','vaddwgt.s8','vaddwle.s8',
            'vaddweq.s16','vaddwne.s16','vaddwcs.s16','vaddwhs.s16','vaddwcc.s16','vaddwlo.s16','vaddwmi.s16','vaddwpl.s16','vaddwvs.s16','vaddwvc.s16','vaddwhi.s16','vaddwls.s16','vaddwge.s16','vaddwlt.s16','vaddwgt.s16','vaddwle.s16',
            'vaddweq.s32','vaddwne.s32','vaddwcs.s32','vaddwhs.s32','vaddwcc.s32','vaddwlo.s32','vaddwmi.s32','vaddwpl.s32','vaddwvs.s32','vaddwvc.s32','vaddwhi.s32','vaddwls.s32','vaddwge.s32','vaddwlt.s32','vaddwgt.s32','vaddwle.s32',

            'vhaddeq.s8','vhaddne.s8','vhaddcs.s8','vhaddhs.s8','vhaddcc.s8','vhaddlo.s8','vhaddmi.s8','vhaddpl.s8','vhaddvs.s8','vhaddvc.s8','vhaddhi.s8','vhaddls.s8','vhaddge.s8','vhaddlt.s8','vhaddgt.s8','vhaddle.s8',
            'vhaddeq.s16','vhaddne.s16','vhaddcs.s16','vhaddhs.s16','vhaddcc.s16','vhaddlo.s16','vhaddmi.s16','vhaddpl.s16','vhaddvs.s16','vhaddvc.s16','vhaddhi.s16','vhaddls.s16','vhaddge.s16','vhaddlt.s16','vhaddgt.s16','vhaddle.s16',
            'vhaddeq.s32','vhaddne.s32','vhaddcs.s32','vhaddhs.s32','vhaddcc.s32','vhaddlo.s32','vhaddmi.s32','vhaddpl.s32','vhaddvs.s32','vhaddvc.s32','vhaddhi.s32','vhaddls.s32','vhaddge.s32','vhaddlt.s32','vhaddgt.s32','vhaddle.s32',

            'vhsubeq.s8','vhsubne.s8','vhsubcs.s8','vhsubhs.s8','vhsubcc.s8','vhsublo.s8','vhsubmi.s8','vhsubpl.s8','vhsubvs.s8','vhsubvc.s8','vhsubhi.s8','vhsubls.s8','vhsubge.s8','vhsublt.s8','vhsubgt.s8','vhsuble.s8',
            'vhsubeq.s16','vhsubne.s16','vhsubcs.s16','vhsubhs.s16','vhsubcc.s16','vhsublo.s16','vhsubmi.s16','vhsubpl.s16','vhsubvs.s16','vhsubvc.s16','vhsubhi.s16','vhsubls.s16','vhsubge.s16','vhsublt.s16','vhsubgt.s16','vhsuble.s16',
            'vhsubeq.s32','vhsubne.s32','vhsubcs.s32','vhsubhs.s32','vhsubcc.s32','vhsublo.s32','vhsubmi.s32','vhsubpl.s32','vhsubvs.s32','vhsubvc.s32','vhsubhi.s32','vhsubls.s32','vhsubge.s32','vhsublt.s32','vhsubgt.s32','vhsuble.s32',

            'vmaxeq.s8','vmaxne.s8','vmaxcs.s8','vmaxhs.s8','vmaxcc.s8','vmaxlo.s8','vmaxmi.s8','vmaxpl.s8','vmaxvs.s8','vmaxvc.s8','vmaxhi.s8','vmaxls.s8','vmaxge.s8','vmaxlt.s8','vmaxgt.s8','vmaxle.s8',
            'vmaxeq.s16','vmaxne.s16','vmaxcs.s16','vmaxhs.s16','vmaxcc.s16','vmaxlo.s16','vmaxmi.s16','vmaxpl.s16','vmaxvs.s16','vmaxvc.s16','vmaxhi.s16','vmaxls.s16','vmaxge.s16','vmaxlt.s16','vmaxgt.s16','vmaxle.s16',
            'vmaxeq.s32','vmaxne.s32','vmaxcs.s32','vmaxhs.s32','vmaxcc.s32','vmaxlo.s32','vmaxmi.s32','vmaxpl.s32','vmaxvs.s32','vmaxvc.s32','vmaxhi.s32','vmaxls.s32','vmaxge.s32','vmaxlt.s32','vmaxgt.s32','vmaxle.s32',

            'vmineq.s8','vminne.s8','vmincs.s8','vminhs.s8','vmincc.s8','vminlo.s8','vminmi.s8','vminpl.s8','vminvs.s8','vminvc.s8','vminhi.s8','vminls.s8','vminge.s8','vminlt.s8','vmingt.s8','vminle.s8',
            'vmineq.s16','vminne.s16','vmincs.s16','vminhs.s16','vmincc.s16','vminlo.s16','vminmi.s16','vminpl.s16','vminvs.s16','vminvc.s16','vminhi.s16','vminls.s16','vminge.s16','vminlt.s16','vmingt.s16','vminle.s16',
            'vmineq.s32','vminne.s32','vmincs.s32','vminhs.s32','vmincc.s32','vminlo.s32','vminmi.s32','vminpl.s32','vminvs.s32','vminvc.s32','vminhi.s32','vminls.s32','vminge.s32','vminlt.s32','vmingt.s32','vminle.s32',

            'vmlaleq.s8','vmlalne.s8','vmlalcs.s8','vmlalhs.s8','vmlalcc.s8','vmlallo.s8','vmlalmi.s8','vmlalpl.s8','vmlalvs.s8','vmlalvc.s8','vmlalhi.s8','vmlalls.s8','vmlalge.s8','vmlallt.s8','vmlalgt.s8','vmlalle.s8',
            'vmlaleq.s16','vmlalne.s16','vmlalcs.s16','vmlalhs.s16','vmlalcc.s16','vmlallo.s16','vmlalmi.s16','vmlalpl.s16','vmlalvs.s16','vmlalvc.s16','vmlalhi.s16','vmlalls.s16','vmlalge.s16','vmlallt.s16','vmlalgt.s16','vmlalle.s16',
            'vmlaleq.s32','vmlalne.s32','vmlalcs.s32','vmlalhs.s32','vmlalcc.s32','vmlallo.s32','vmlalmi.s32','vmlalpl.s32','vmlalvs.s32','vmlalvc.s32','vmlalhi.s32','vmlalls.s32','vmlalge.s32','vmlallt.s32','vmlalgt.s32','vmlalle.s32',

            'vmlsleq.s8','vmlslne.s8','vmlslcs.s8','vmlslhs.s8','vmlslcc.s8','vmlsllo.s8','vmlslmi.s8','vmlslpl.s8','vmlslvs.s8','vmlslvc.s8','vmlslhi.s8','vmlslls.s8','vmlslge.s8','vmlsllt.s8','vmlslgt.s8','vmlslle.s8',
            'vmlsleq.s16','vmlslne.s16','vmlslcs.s16','vmlslhs.s16','vmlslcc.s16','vmlsllo.s16','vmlslmi.s16','vmlslpl.s16','vmlslvs.s16','vmlslvc.s16','vmlslhi.s16','vmlslls.s16','vmlslge.s16','vmlsllt.s16','vmlslgt.s16','vmlslle.s16',
            'vmlsleq.s32','vmlslne.s32','vmlslcs.s32','vmlslhs.s32','vmlslcc.s32','vmlsllo.s32','vmlslmi.s32','vmlslpl.s32','vmlslvs.s32','vmlslvc.s32','vmlslhi.s32','vmlslls.s32','vmlslge.s32','vmlsllt.s32','vmlslgt.s32','vmlslle.s32',

            'vnegeq.s8','vnegne.s8','vnegcs.s8','vneghs.s8','vnegcc.s8','vneglo.s8','vnegmi.s8','vnegpl.s8','vnegvs.s8','vnegvc.s8','vneghi.s8','vnegls.s8','vnegge.s8','vneglt.s8','vneggt.s8','vnegle.s8',
            'vnegeq.s16','vnegne.s16','vnegcs.s16','vneghs.s16','vnegcc.s16','vneglo.s16','vnegmi.s16','vnegpl.s16','vnegvs.s16','vnegvc.s16','vneghi.s16','vnegls.s16','vnegge.s16','vneglt.s16','vneggt.s16','vnegle.s16',
            'vnegeq.s32','vnegne.s32','vnegcs.s32','vneghs.s32','vnegcc.s32','vneglo.s32','vnegmi.s32','vnegpl.s32','vnegvs.s32','vnegvc.s32','vneghi.s32','vnegls.s32','vnegge.s32','vneglt.s32','vneggt.s32','vnegle.s32',

            'vpadaleq.s8','vpadalne.s8','vpadalcs.s8','vpadalhs.s8','vpadalcc.s8','vpadallo.s8','vpadalmi.s8','vpadalpl.s8','vpadalvs.s8','vpadalvc.s8','vpadalhi.s8','vpadalls.s8','vpadalge.s8','vpadallt.s8','vpadalgt.s8','vpadalle.s8',
            'vpadaleq.s16','vpadalne.s16','vpadalcs.s16','vpadalhs.s16','vpadalcc.s16','vpadallo.s16','vpadalmi.s16','vpadalpl.s16','vpadalvs.s16','vpadalvc.s16','vpadalhi.s16','vpadalls.s16','vpadalge.s16','vpadallt.s16','vpadalgt.s16','vpadalle.s16',
            'vpadaleq.s32','vpadalne.s32','vpadalcs.s32','vpadalhs.s32','vpadalcc.s32','vpadallo.s32','vpadalmi.s32','vpadalpl.s32','vpadalvs.s32','vpadalvc.s32','vpadalhi.s32','vpadalls.s32','vpadalge.s32','vpadallt.s32','vpadalgt.s32','vpadalle.s32',

            'vmovleq.s8','vmovlne.s8','vmovlcs.s8','vmovlhs.s8','vmovlcc.s8','vmovllo.s8','vmovlmi.s8','vmovlpl.s8','vmovlvs.s8','vmovlvc.s8','vmovlhi.s8','vmovlls.s8','vmovlge.s8','vmovllt.s8','vmovlgt.s8','vmovlle.s8',
            'vmovleq.s16','vmovlne.s16','vmovlcs.s16','vmovlhs.s16','vmovlcc.s16','vmovllo.s16','vmovlmi.s16','vmovlpl.s16','vmovlvs.s16','vmovlvc.s16','vmovlhi.s16','vmovlls.s16','vmovlge.s16','vmovllt.s16','vmovlgt.s16','vmovlle.s16',
            'vmovleq.s32','vmovlne.s32','vmovlcs.s32','vmovlhs.s32','vmovlcc.s32','vmovllo.s32','vmovlmi.s32','vmovlpl.s32','vmovlvs.s32','vmovlvc.s32','vmovlhi.s32','vmovlls.s32','vmovlge.s32','vmovllt.s32','vmovlgt.s32','vmovlle.s32',

            'vmulleq.s8','vmullne.s8','vmullcs.s8','vmullhs.s8','vmullcc.s8','vmulllo.s8','vmullmi.s8','vmullpl.s8','vmullvs.s8','vmullvc.s8','vmullhi.s8','vmullls.s8','vmullge.s8','vmulllt.s8','vmullgt.s8','vmullle.s8',
            'vmulleq.s16','vmullne.s16','vmullcs.s16','vmullhs.s16','vmullcc.s16','vmulllo.s16','vmullmi.s16','vmullpl.s16','vmullvs.s16','vmullvc.s16','vmullhi.s16','vmullls.s16','vmullge.s16','vmulllt.s16','vmullgt.s16','vmullle.s16',
            'vmulleq.s32','vmullne.s32','vmullcs.s32','vmullhs.s32','vmullcc.s32','vmulllo.s32','vmullmi.s32','vmullpl.s32','vmullvs.s32','vmullvc.s32','vmullhi.s32','vmullls.s32','vmullge.s32','vmulllt.s32','vmullgt.s32','vmullle.s32',

            'vpaddleq.s8','vpaddlne.s8','vpaddlcs.s8','vpaddlhs.s8','vpaddlcc.s8','vpaddllo.s8','vpaddlmi.s8','vpaddlpl.s8','vpaddlvs.s8','vpaddlvc.s8','vpaddlhi.s8','vpaddlls.s8','vpaddlge.s8','vpaddllt.s8','vpaddlgt.s8','vpaddlle.s8',
            'vpaddleq.s16','vpaddlne.s16','vpaddlcs.s16','vpaddlhs.s16','vpaddlcc.s16','vpaddllo.s16','vpaddlmi.s16','vpaddlpl.s16','vpaddlvs.s16','vpaddlvc.s16','vpaddlhi.s16','vpaddlls.s16','vpaddlge.s16','vpaddllt.s16','vpaddlgt.s16','vpaddlle.s16',
            'vpaddleq.s32','vpaddlne.s32','vpaddlcs.s32','vpaddlhs.s32','vpaddlcc.s32','vpaddllo.s32','vpaddlmi.s32','vpaddlpl.s32','vpaddlvs.s32','vpaddlvc.s32','vpaddlhi.s32','vpaddlls.s32','vpaddlge.s32','vpaddllt.s32','vpaddlgt.s32','vpaddlle.s32',

            'vpmaxeq.s8','vpmaxne.s8','vpmaxcs.s8','vpmaxhs.s8','vpmaxcc.s8','vpmaxlo.s8','vpmaxmi.s8','vpmaxpl.s8','vpmaxvs.s8','vpmaxvc.s8','vpmaxhi.s8','vpmaxls.s8','vpmaxge.s8','vpmaxlt.s8','vpmaxgt.s8','vpmaxle.s8',
            'vpmaxeq.s16','vpmaxne.s16','vpmaxcs.s16','vpmaxhs.s16','vpmaxcc.s16','vpmaxlo.s16','vpmaxmi.s16','vpmaxpl.s16','vpmaxvs.s16','vpmaxvc.s16','vpmaxhi.s16','vpmaxls.s16','vpmaxge.s16','vpmaxlt.s16','vpmaxgt.s16','vpmaxle.s16',
            'vpmaxeq.s32','vpmaxne.s32','vpmaxcs.s32','vpmaxhs.s32','vpmaxcc.s32','vpmaxlo.s32','vpmaxmi.s32','vpmaxpl.s32','vpmaxvs.s32','vpmaxvc.s32','vpmaxhi.s32','vpmaxls.s32','vpmaxge.s32','vpmaxlt.s32','vpmaxgt.s32','vpmaxle.s32',

            'vpmineq.s8','vpminne.s8','vpmincs.s8','vpminhs.s8','vpmincc.s8','vpminlo.s8','vpminmi.s8','vpminpl.s8','vpminvs.s8','vpminvc.s8','vpminhi.s8','vpminls.s8','vpminge.s8','vpminlt.s8','vpmingt.s8','vpminle.s8',
            'vpmineq.s16','vpminne.s16','vpmincs.s16','vpminhs.s16','vpmincc.s16','vpminlo.s16','vpminmi.s16','vpminpl.s16','vpminvs.s16','vpminvc.s16','vpminhi.s16','vpminls.s16','vpminge.s16','vpminlt.s16','vpmingt.s16','vpminle.s16',
            'vpmineq.s32','vpminne.s32','vpmincs.s32','vpminhs.s32','vpmincc.s32','vpminlo.s32','vpminmi.s32','vpminpl.s32','vpminvs.s32','vpminvc.s32','vpminhi.s32','vpminls.s32','vpminge.s32','vpminlt.s32','vpmingt.s32','vpminle.s32',

            'vqabseq.s8','vqabsne.s8','vqabscs.s8','vqabshs.s8','vqabscc.s8','vqabslo.s8','vqabsmi.s8','vqabspl.s8','vqabsvs.s8','vqabsvc.s8','vqabshi.s8','vqabsls.s8','vqabsge.s8','vqabslt.s8','vqabsgt.s8','vqabsle.s8',
            'vqabseq.s16','vqabsne.s16','vqabscs.s16','vqabshs.s16','vqabscc.s16','vqabslo.s16','vqabsmi.s16','vqabspl.s16','vqabsvs.s16','vqabsvc.s16','vqabshi.s16','vqabsls.s16','vqabsge.s16','vqabslt.s16','vqabsgt.s16','vqabsle.s16',
            'vqabseq.s32','vqabsne.s32','vqabscs.s32','vqabshs.s32','vqabscc.s32','vqabslo.s32','vqabsmi.s32','vqabspl.s32','vqabsvs.s32','vqabsvc.s32','vqabshi.s32','vqabsls.s32','vqabsge.s32','vqabslt.s32','vqabsgt.s32','vqabsle.s32',

            'vqaddeq.s8','vqaddne.s8','vqaddcs.s8','vqaddhs.s8','vqaddcc.s8','vqaddlo.s8','vqaddmi.s8','vqaddpl.s8','vqaddvs.s8','vqaddvc.s8','vqaddhi.s8','vqaddls.s8','vqaddge.s8','vqaddlt.s8','vqaddgt.s8','vqaddle.s8',
            'vqaddeq.s16','vqaddne.s16','vqaddcs.s16','vqaddhs.s16','vqaddcc.s16','vqaddlo.s16','vqaddmi.s16','vqaddpl.s16','vqaddvs.s16','vqaddvc.s16','vqaddhi.s16','vqaddls.s16','vqaddge.s16','vqaddlt.s16','vqaddgt.s16','vqaddle.s16',
            'vqaddeq.s32','vqaddne.s32','vqaddcs.s32','vqaddhs.s32','vqaddcc.s32','vqaddlo.s32','vqaddmi.s32','vqaddpl.s32','vqaddvs.s32','vqaddvc.s32','vqaddhi.s32','vqaddls.s32','vqaddge.s32','vqaddlt.s32','vqaddgt.s32','vqaddle.s32',
            'vqaddeq.s64','vqaddne.s64','vqaddcs.s64','vqaddhs.s64','vqaddcc.s64','vqaddlo.s64','vqaddmi.s64','vqaddpl.s64','vqaddvs.s64','vqaddvc.s64','vqaddhi.s64','vqaddls.s64','vqaddge.s64','vqaddlt.s64','vqaddgt.s64','vqaddle.s64',

            'vqdmlaleq.s16','vqdmlalne.s16','vqdmlalcs.s16','vqdmlalhs.s16','vqdmlalcc.s16','vqdmlallo.s16','vqdmlalmi.s16','vqdmlalpl.s16','vqdmlalvs.s16','vqdmlalvc.s16','vqdmlalhi.s16','vqdmlalls.s16','vqdmlalge.s16','vqdmlallt.s16','vqdmlalgt.s16','vqdmlalle.s16',
            'vqdmlaleq.s32','vqdmlalne.s32','vqdmlalcs.s32','vqdmlalhs.s32','vqdmlalcc.s32','vqdmlallo.s32','vqdmlalmi.s32','vqdmlalpl.s32','vqdmlalvs.s32','vqdmlalvc.s32','vqdmlalhi.s32','vqdmlalls.s32','vqdmlalge.s32','vqdmlallt.s32','vqdmlalgt.s32','vqdmlalle.s32',

            'vqdmlsleq.s16','vqdmlslne.s16','vqdmlslcs.s16','vqdmlslhs.s16','vqdmlslcc.s16','vqdmlsllo.s16','vqdmlslmi.s16','vqdmlslpl.s16','vqdmlslvs.s16','vqdmlslvc.s16','vqdmlslhi.s16','vqdmlslls.s16','vqdmlslge.s16','vqdmlsllt.s16','vqdmlslgt.s16','vqdmlslle.s16',
            'vqdmlsleq.s32','vqdmlslne.s32','vqdmlslcs.s32','vqdmlslhs.s32','vqdmlslcc.s32','vqdmlsllo.s32','vqdmlslmi.s32','vqdmlslpl.s32','vqdmlslvs.s32','vqdmlslvc.s32','vqdmlslhi.s32','vqdmlslls.s32','vqdmlslge.s32','vqdmlsllt.s32','vqdmlslgt.s32','vqdmlslle.s32',

            'vqdmulheq.s16','vqdmulhne.s16','vqdmulhcs.s16','vqdmulhhs.s16','vqdmulhcc.s16','vqdmulhlo.s16','vqdmulhmi.s16','vqdmulhpl.s16','vqdmulhvs.s16','vqdmulhvc.s16','vqdmulhhi.s16','vqdmulhls.s16','vqdmulhge.s16','vqdmulhlt.s16','vqdmulhgt.s16','vqdmulhle.s16',
            'vqdmulheq.s32','vqdmulhne.s32','vqdmulhcs.s32','vqdmulhhs.s32','vqdmulhcc.s32','vqdmulhlo.s32','vqdmulhmi.s32','vqdmulhpl.s32','vqdmulhvs.s32','vqdmulhvc.s32','vqdmulhhi.s32','vqdmulhls.s32','vqdmulhge.s32','vqdmulhlt.s32','vqdmulhgt.s32','vqdmulhle.s32',

            'vqdmulleq.s16','vqdmullne.s16','vqdmullcs.s16','vqdmullhs.s16','vqdmullcc.s16','vqdmulllo.s16','vqdmullmi.s16','vqdmullpl.s16','vqdmullvs.s16','vqdmullvc.s16','vqdmullhi.s16','vqdmullls.s16','vqdmullge.s16','vqdmulllt.s16','vqdmullgt.s16','vqdmullle.s16',
            'vqdmulleq.s32','vqdmullne.s32','vqdmullcs.s32','vqdmullhs.s32','vqdmullcc.s32','vqdmulllo.s32','vqdmullmi.s32','vqdmullpl.s32','vqdmullvs.s32','vqdmullvc.s32','vqdmullhi.s32','vqdmullls.s32','vqdmullge.s32','vqdmulllt.s32','vqdmullgt.s32','vqdmullle.s32',

            'vqmovneq.s16','vqmovnne.s16','vqmovncs.s16','vqmovnhs.s16','vqmovncc.s16','vqmovnlo.s16','vqmovnmi.s16','vqmovnpl.s16','vqmovnvs.s16','vqmovnvc.s16','vqmovnhi.s16','vqmovnls.s16','vqmovnge.s16','vqmovnlt.s16','vqmovngt.s16','vqmovnle.s16',
            'vqmovneq.s32','vqmovnne.s32','vqmovncs.s32','vqmovnhs.s32','vqmovncc.s32','vqmovnlo.s32','vqmovnmi.s32','vqmovnpl.s32','vqmovnvs.s32','vqmovnvc.s32','vqmovnhi.s32','vqmovnls.s32','vqmovnge.s32','vqmovnlt.s32','vqmovngt.s32','vqmovnle.s32',
            'vqmovneq.s64','vqmovnne.s64','vqmovncs.s64','vqmovnhs.s64','vqmovncc.s64','vqmovnlo.s64','vqmovnmi.s64','vqmovnpl.s64','vqmovnvs.s64','vqmovnvc.s64','vqmovnhi.s64','vqmovnls.s64','vqmovnge.s64','vqmovnlt.s64','vqmovngt.s64','vqmovnle.s64',

            'vqmovuneq.s16','vqmovunne.s16','vqmovuncs.s16','vqmovunhs.s16','vqmovuncc.s16','vqmovunlo.s16','vqmovunmi.s16','vqmovunpl.s16','vqmovunvs.s16','vqmovunvc.s16','vqmovunhi.s16','vqmovunls.s16','vqmovunge.s16','vqmovunlt.s16','vqmovungt.s16','vqmovunle.s16',
            'vqmovuneq.s32','vqmovunne.s32','vqmovuncs.s32','vqmovunhs.s32','vqmovuncc.s32','vqmovunlo.s32','vqmovunmi.s32','vqmovunpl.s32','vqmovunvs.s32','vqmovunvc.s32','vqmovunhi.s32','vqmovunls.s32','vqmovunge.s32','vqmovunlt.s32','vqmovungt.s32','vqmovunle.s32',
            'vqmovuneq.s64','vqmovunne.s64','vqmovuncs.s64','vqmovunhs.s64','vqmovuncc.s64','vqmovunlo.s64','vqmovunmi.s64','vqmovunpl.s64','vqmovunvs.s64','vqmovunvc.s64','vqmovunhi.s64','vqmovunls.s64','vqmovunge.s64','vqmovunlt.s64','vqmovungt.s64','vqmovunle.s64',

            'vqnegeq.s8','vqnegne.s8','vqnegcs.s8','vqneghs.s8','vqnegcc.s8','vqneglo.s8','vqnegmi.s8','vqnegpl.s8','vqnegvs.s8','vqnegvc.s8','vqneghi.s8','vqnegls.s8','vqnegge.s8','vqneglt.s8','vqneggt.s8','vqnegle.s8',
            'vqnegeq.s16','vqnegne.s16','vqnegcs.s16','vqneghs.s16','vqnegcc.s16','vqneglo.s16','vqnegmi.s16','vqnegpl.s16','vqnegvs.s16','vqnegvc.s16','vqneghi.s16','vqnegls.s16','vqnegge.s16','vqneglt.s16','vqneggt.s16','vqnegle.s16',
            'vqnegeq.s32','vqnegne.s32','vqnegcs.s32','vqneghs.s32','vqnegcc.s32','vqneglo.s32','vqnegmi.s32','vqnegpl.s32','vqnegvs.s32','vqnegvc.s32','vqneghi.s32','vqnegls.s32','vqnegge.s32','vqneglt.s32','vqneggt.s32','vqnegle.s32',

            'vqrdmulheq.s16','vqrdmulhne.s16','vqrdmulhcs.s16','vqrdmulhhs.s16','vqrdmulhcc.s16','vqrdmulhlo.s16','vqrdmulhmi.s16','vqrdmulhpl.s16','vqrdmulhvs.s16','vqrdmulhvc.s16','vqrdmulhhi.s16','vqrdmulhls.s16','vqrdmulhge.s16','vqrdmulhlt.s16','vqrdmulhgt.s16','vqrdmulhle.s16',
            'vqrdmulheq.s32','vqrdmulhne.s32','vqrdmulhcs.s32','vqrdmulhhs.s32','vqrdmulhcc.s32','vqrdmulhlo.s32','vqrdmulhmi.s32','vqrdmulhpl.s32','vqrdmulhvs.s32','vqrdmulhvc.s32','vqrdmulhhi.s32','vqrdmulhls.s32','vqrdmulhge.s32','vqrdmulhlt.s32','vqrdmulhgt.s32','vqrdmulhle.s32',

            'vqrshleq.s8','vqrshlne.s8','vqrshlcs.s8','vqrshlhs.s8','vqrshlcc.s8','vqrshllo.s8','vqrshlmi.s8','vqrshlpl.s8','vqrshlvs.s8','vqrshlvc.s8','vqrshlhi.s8','vqrshlls.s8','vqrshlge.s8','vqrshllt.s8','vqrshlgt.s8','vqrshlle.s8',
            'vqrshleq.s16','vqrshlne.s16','vqrshlcs.s16','vqrshlhs.s16','vqrshlcc.s16','vqrshllo.s16','vqrshlmi.s16','vqrshlpl.s16','vqrshlvs.s16','vqrshlvc.s16','vqrshlhi.s16','vqrshlls.s16','vqrshlge.s16','vqrshllt.s16','vqrshlgt.s16','vqrshlle.s16',
            'vqrshleq.s32','vqrshlne.s32','vqrshlcs.s32','vqrshlhs.s32','vqrshlcc.s32','vqrshllo.s32','vqrshlmi.s32','vqrshlpl.s32','vqrshlvs.s32','vqrshlvc.s32','vqrshlhi.s32','vqrshlls.s32','vqrshlge.s32','vqrshllt.s32','vqrshlgt.s32','vqrshlle.s32',
            'vqrshleq.s64','vqrshlne.s64','vqrshlcs.s64','vqrshlhs.s64','vqrshlcc.s64','vqrshllo.s64','vqrshlmi.s64','vqrshlpl.s64','vqrshlvs.s64','vqrshlvc.s64','vqrshlhi.s64','vqrshlls.s64','vqrshlge.s64','vqrshllt.s64','vqrshlgt.s64','vqrshlle.s64',

            'vqrshrneq.s16','vqrshrnne.s16','vqrshrncs.s16','vqrshrnhs.s16','vqrshrncc.s16','vqrshrnlo.s16','vqrshrnmi.s16','vqrshrnpl.s16','vqrshrnvs.s16','vqrshrnvc.s16','vqrshrnhi.s16','vqrshrnls.s16','vqrshrnge.s16','vqrshrnlt.s16','vqrshrngt.s16','vqrshrnle.s16',
            'vqrshrneq.s32','vqrshrnne.s32','vqrshrncs.s32','vqrshrnhs.s32','vqrshrncc.s32','vqrshrnlo.s32','vqrshrnmi.s32','vqrshrnpl.s32','vqrshrnvs.s32','vqrshrnvc.s32','vqrshrnhi.s32','vqrshrnls.s32','vqrshrnge.s32','vqrshrnlt.s32','vqrshrngt.s32','vqrshrnle.s32',
            'vqrshrneq.s64','vqrshrnne.s64','vqrshrncs.s64','vqrshrnhs.s64','vqrshrncc.s64','vqrshrnlo.s64','vqrshrnmi.s64','vqrshrnpl.s64','vqrshrnvs.s64','vqrshrnvc.s64','vqrshrnhi.s64','vqrshrnls.s64','vqrshrnge.s64','vqrshrnlt.s64','vqrshrngt.s64','vqrshrnle.s64',

            'vqrshruneq.s16','vqrshrunne.s16','vqrshruncs.s16','vqrshrunhs.s16','vqrshruncc.s16','vqrshrunlo.s16','vqrshrunmi.s16','vqrshrunpl.s16','vqrshrunvs.s16','vqrshrunvc.s16','vqrshrunhi.s16','vqrshrunls.s16','vqrshrunge.s16','vqrshrunlt.s16','vqrshrungt.s16','vqrshrunle.s16',
            'vqrshruneq.s32','vqrshrunne.s32','vqrshruncs.s32','vqrshrunhs.s32','vqrshruncc.s32','vqrshrunlo.s32','vqrshrunmi.s32','vqrshrunpl.s32','vqrshrunvs.s32','vqrshrunvc.s32','vqrshrunhi.s32','vqrshrunls.s32','vqrshrunge.s32','vqrshrunlt.s32','vqrshrungt.s32','vqrshrunle.s32',
            'vqrshruneq.s64','vqrshrunne.s64','vqrshruncs.s64','vqrshrunhs.s64','vqrshruncc.s64','vqrshrunlo.s64','vqrshrunmi.s64','vqrshrunpl.s64','vqrshrunvs.s64','vqrshrunvc.s64','vqrshrunhi.s64','vqrshrunls.s64','vqrshrunge.s64','vqrshrunlt.s64','vqrshrungt.s64','vqrshrunle.s64',

            'vqshleq.s8','vqshlne.s8','vqshlcs.s8','vqshlhs.s8','vqshlcc.s8','vqshllo.s8','vqshlmi.s8','vqshlpl.s8','vqshlvs.s8','vqshlvc.s8','vqshlhi.s8','vqshlls.s8','vqshlge.s8','vqshllt.s8','vqshlgt.s8','vqshlle.s8',
            'vqshleq.s16','vqshlne.s16','vqshlcs.s16','vqshlhs.s16','vqshlcc.s16','vqshllo.s16','vqshlmi.s16','vqshlpl.s16','vqshlvs.s16','vqshlvc.s16','vqshlhi.s16','vqshlls.s16','vqshlge.s16','vqshllt.s16','vqshlgt.s16','vqshlle.s16',
            'vqshleq.s32','vqshlne.s32','vqshlcs.s32','vqshlhs.s32','vqshlcc.s32','vqshllo.s32','vqshlmi.s32','vqshlpl.s32','vqshlvs.s32','vqshlvc.s32','vqshlhi.s32','vqshlls.s32','vqshlge.s32','vqshllt.s32','vqshlgt.s32','vqshlle.s32',
            'vqshleq.s64','vqshlne.s64','vqshlcs.s64','vqshlhs.s64','vqshlcc.s64','vqshllo.s64','vqshlmi.s64','vqshlpl.s64','vqshlvs.s64','vqshlvc.s64','vqshlhi.s64','vqshlls.s64','vqshlge.s64','vqshllt.s64','vqshlgt.s64','vqshlle.s64',

            'vqshlueq.s8','vqshlune.s8','vqshlucs.s8','vqshluhs.s8','vqshlucc.s8','vqshlulo.s8','vqshlumi.s8','vqshlupl.s8','vqshluvs.s8','vqshluvc.s8','vqshluhi.s8','vqshluls.s8','vqshluge.s8','vqshlult.s8','vqshlugt.s8','vqshlule.s8',
            'vqshlueq.s16','vqshlune.s16','vqshlucs.s16','vqshluhs.s16','vqshlucc.s16','vqshlulo.s16','vqshlumi.s16','vqshlupl.s16','vqshluvs.s16','vqshluvc.s16','vqshluhi.s16','vqshluls.s16','vqshluge.s16','vqshlult.s16','vqshlugt.s16','vqshlule.s16',
            'vqshlueq.s32','vqshlune.s32','vqshlucs.s32','vqshluhs.s32','vqshlucc.s32','vqshlulo.s32','vqshlumi.s32','vqshlupl.s32','vqshluvs.s32','vqshluvc.s32','vqshluhi.s32','vqshluls.s32','vqshluge.s32','vqshlult.s32','vqshlugt.s32','vqshlule.s32',
            'vqshlueq.s64','vqshlune.s64','vqshlucs.s64','vqshluhs.s64','vqshlucc.s64','vqshlulo.s64','vqshlumi.s64','vqshlupl.s64','vqshluvs.s64','vqshluvc.s64','vqshluhi.s64','vqshluls.s64','vqshluge.s64','vqshlult.s64','vqshlugt.s64','vqshlule.s64',

            'vqshrneq.s16','vqshrnne.s16','vqshrncs.s16','vqshrnhs.s16','vqshrncc.s16','vqshrnlo.s16','vqshrnmi.s16','vqshrnpl.s16','vqshrnvs.s16','vqshrnvc.s16','vqshrnhi.s16','vqshrnls.s16','vqshrnge.s16','vqshrnlt.s16','vqshrngt.s16','vqshrnle.s16',
            'vqshrneq.s32','vqshrnne.s32','vqshrncs.s32','vqshrnhs.s32','vqshrncc.s32','vqshrnlo.s32','vqshrnmi.s32','vqshrnpl.s32','vqshrnvs.s32','vqshrnvc.s32','vqshrnhi.s32','vqshrnls.s32','vqshrnge.s32','vqshrnlt.s32','vqshrngt.s32','vqshrnle.s32',
            'vqshrneq.s64','vqshrnne.s64','vqshrncs.s64','vqshrnhs.s64','vqshrncc.s64','vqshrnlo.s64','vqshrnmi.s64','vqshrnpl.s64','vqshrnvs.s64','vqshrnvc.s64','vqshrnhi.s64','vqshrnls.s64','vqshrnge.s64','vqshrnlt.s64','vqshrngt.s64','vqshrnle.s64',

            'vqshruneq.s16','vqshrunne.s16','vqshruncs.s16','vqshrunhs.s16','vqshruncc.s16','vqshrunlo.s16','vqshrunmi.s16','vqshrunpl.s16','vqshrunvs.s16','vqshrunvc.s16','vqshrunhi.s16','vqshrunls.s16','vqshrunge.s16','vqshrunlt.s16','vqshrungt.s16','vqshrunle.s16',
            'vqshruneq.s32','vqshrunne.s32','vqshruncs.s32','vqshrunhs.s32','vqshruncc.s32','vqshrunlo.s32','vqshrunmi.s32','vqshrunpl.s32','vqshrunvs.s32','vqshrunvc.s32','vqshrunhi.s32','vqshrunls.s32','vqshrunge.s32','vqshrunlt.s32','vqshrungt.s32','vqshrunle.s32',
            'vqshruneq.s64','vqshrunne.s64','vqshruncs.s64','vqshrunhs.s64','vqshruncc.s64','vqshrunlo.s64','vqshrunmi.s64','vqshrunpl.s64','vqshrunvs.s64','vqshrunvc.s64','vqshrunhi.s64','vqshrunls.s64','vqshrunge.s64','vqshrunlt.s64','vqshrungt.s64','vqshrunle.s64',

            'vqsubeq.s8','vqsubne.s8','vqsubcs.s8','vqsubhs.s8','vqsubcc.s8','vqsublo.s8','vqsubmi.s8','vqsubpl.s8','vqsubvs.s8','vqsubvc.s8','vqsubhi.s8','vqsubls.s8','vqsubge.s8','vqsublt.s8','vqsubgt.s8','vqsuble.s8',
            'vqsubeq.s16','vqsubne.s16','vqsubcs.s16','vqsubhs.s16','vqsubcc.s16','vqsublo.s16','vqsubmi.s16','vqsubpl.s16','vqsubvs.s16','vqsubvc.s16','vqsubhi.s16','vqsubls.s16','vqsubge.s16','vqsublt.s16','vqsubgt.s16','vqsuble.s16',
            'vqsubeq.s32','vqsubne.s32','vqsubcs.s32','vqsubhs.s32','vqsubcc.s32','vqsublo.s32','vqsubmi.s32','vqsubpl.s32','vqsubvs.s32','vqsubvc.s32','vqsubhi.s32','vqsubls.s32','vqsubge.s32','vqsublt.s32','vqsubgt.s32','vqsuble.s32',
            'vqsubeq.s64','vqsubne.s64','vqsubcs.s64','vqsubhs.s64','vqsubcc.s64','vqsublo.s64','vqsubmi.s64','vqsubpl.s64','vqsubvs.s64','vqsubvc.s64','vqsubhi.s64','vqsubls.s64','vqsubge.s64','vqsublt.s64','vqsubgt.s64','vqsuble.s64',

            'vrhaddeq.s8','vrhaddne.s8','vrhaddcs.s8','vrhaddhs.s8','vrhaddcc.s8','vrhaddlo.s8','vrhaddmi.s8','vrhaddpl.s8','vrhaddvs.s8','vrhaddvc.s8','vrhaddhi.s8','vrhaddls.s8','vrhaddge.s8','vrhaddlt.s8','vrhaddgt.s8','vrhaddle.s8',
            'vrhaddeq.s16','vrhaddne.s16','vrhaddcs.s16','vrhaddhs.s16','vrhaddcc.s16','vrhaddlo.s16','vrhaddmi.s16','vrhaddpl.s16','vrhaddvs.s16','vrhaddvc.s16','vrhaddhi.s16','vrhaddls.s16','vrhaddge.s16','vrhaddlt.s16','vrhaddgt.s16','vrhaddle.s16',
            'vrhaddeq.s32','vrhaddne.s32','vrhaddcs.s32','vrhaddhs.s32','vrhaddcc.s32','vrhaddlo.s32','vrhaddmi.s32','vrhaddpl.s32','vrhaddvs.s32','vrhaddvc.s32','vrhaddhi.s32','vrhaddls.s32','vrhaddge.s32','vrhaddlt.s32','vrhaddgt.s32','vrhaddle.s32',

            'vrshleq.s8','vrshlne.s8','vrshlcs.s8','vrshlhs.s8','vrshlcc.s8','vrshllo.s8','vrshlmi.s8','vrshlpl.s8','vrshlvs.s8','vrshlvc.s8','vrshlhi.s8','vrshlls.s8','vrshlge.s8','vrshllt.s8','vrshlgt.s8','vrshlle.s8',
            'vrshleq.s16','vrshlne.s16','vrshlcs.s16','vrshlhs.s16','vrshlcc.s16','vrshllo.s16','vrshlmi.s16','vrshlpl.s16','vrshlvs.s16','vrshlvc.s16','vrshlhi.s16','vrshlls.s16','vrshlge.s16','vrshllt.s16','vrshlgt.s16','vrshlle.s16',
            'vrshleq.s32','vrshlne.s32','vrshlcs.s32','vrshlhs.s32','vrshlcc.s32','vrshllo.s32','vrshlmi.s32','vrshlpl.s32','vrshlvs.s32','vrshlvc.s32','vrshlhi.s32','vrshlls.s32','vrshlge.s32','vrshllt.s32','vrshlgt.s32','vrshlle.s32',
            'vrshleq.s64','vrshlne.s64','vrshlcs.s64','vrshlhs.s64','vrshlcc.s64','vrshllo.s64','vrshlmi.s64','vrshlpl.s64','vrshlvs.s64','vrshlvc.s64','vrshlhi.s64','vrshlls.s64','vrshlge.s64','vrshllt.s64','vrshlgt.s64','vrshlle.s64',

            'vrshreq.s8','vrshrne.s8','vrshrcs.s8','vrshrhs.s8','vrshrcc.s8','vrshrlo.s8','vrshrmi.s8','vrshrpl.s8','vrshrvs.s8','vrshrvc.s8','vrshrhi.s8','vrshrls.s8','vrshrge.s8','vrshrlt.s8','vrshrgt.s8','vrshrle.s8',
            'vrshreq.s16','vrshrne.s16','vrshrcs.s16','vrshrhs.s16','vrshrcc.s16','vrshrlo.s16','vrshrmi.s16','vrshrpl.s16','vrshrvs.s16','vrshrvc.s16','vrshrhi.s16','vrshrls.s16','vrshrge.s16','vrshrlt.s16','vrshrgt.s16','vrshrle.s16',
            'vrshreq.s32','vrshrne.s32','vrshrcs.s32','vrshrhs.s32','vrshrcc.s32','vrshrlo.s32','vrshrmi.s32','vrshrpl.s32','vrshrvs.s32','vrshrvc.s32','vrshrhi.s32','vrshrls.s32','vrshrge.s32','vrshrlt.s32','vrshrgt.s32','vrshrle.s32',
            'vrshreq.s64','vrshrne.s64','vrshrcs.s64','vrshrhs.s64','vrshrcc.s64','vrshrlo.s64','vrshrmi.s64','vrshrpl.s64','vrshrvs.s64','vrshrvc.s64','vrshrhi.s64','vrshrls.s64','vrshrge.s64','vrshrlt.s64','vrshrgt.s64','vrshrle.s64',

            'vrsraeq.s8','vrsrane.s8','vrsracs.s8','vrsrahs.s8','vrsracc.s8','vrsralo.s8','vrsrami.s8','vrsrapl.s8','vrsravs.s8','vrsravc.s8','vrsrahi.s8','vrsrals.s8','vrsrage.s8','vrsralt.s8','vrsragt.s8','vrsrale.s8',
            'vrsraeq.s16','vrsrane.s16','vrsracs.s16','vrsrahs.s16','vrsracc.s16','vrsralo.s16','vrsrami.s16','vrsrapl.s16','vrsravs.s16','vrsravc.s16','vrsrahi.s16','vrsrals.s16','vrsrage.s16','vrsralt.s16','vrsragt.s16','vrsrale.s16',
            'vrsraeq.s32','vrsrane.s32','vrsracs.s32','vrsrahs.s32','vrsracc.s32','vrsralo.s32','vrsrami.s32','vrsrapl.s32','vrsravs.s32','vrsravc.s32','vrsrahi.s32','vrsrals.s32','vrsrage.s32','vrsralt.s32','vrsragt.s32','vrsrale.s32',
            'vrsraeq.s64','vrsrane.s64','vrsracs.s64','vrsrahs.s64','vrsracc.s64','vrsralo.s64','vrsrami.s64','vrsrapl.s64','vrsravs.s64','vrsravc.s64','vrsrahi.s64','vrsrals.s64','vrsrage.s64','vrsralt.s64','vrsragt.s64','vrsrale.s64',

            'vshleq.s8','vshlne.s8','vshlcs.s8','vshlhs.s8','vshlcc.s8','vshllo.s8','vshlmi.s8','vshlpl.s8','vshlvs.s8','vshlvc.s8','vshlhi.s8','vshlls.s8','vshlge.s8','vshllt.s8','vshlgt.s8','vshlle.s8',
            'vshleq.s16','vshlne.s16','vshlcs.s16','vshlhs.s16','vshlcc.s16','vshllo.s16','vshlmi.s16','vshlpl.s16','vshlvs.s16','vshlvc.s16','vshlhi.s16','vshlls.s16','vshlge.s16','vshllt.s16','vshlgt.s16','vshlle.s16',
            'vshleq.s32','vshlne.s32','vshlcs.s32','vshlhs.s32','vshlcc.s32','vshllo.s32','vshlmi.s32','vshlpl.s32','vshlvs.s32','vshlvc.s32','vshlhi.s32','vshlls.s32','vshlge.s32','vshllt.s32','vshlgt.s32','vshlle.s32',
            'vshleq.s64','vshlne.s64','vshlcs.s64','vshlhs.s64','vshlcc.s64','vshllo.s64','vshlmi.s64','vshlpl.s64','vshlvs.s64','vshlvc.s64','vshlhi.s64','vshlls.s64','vshlge.s64','vshllt.s64','vshlgt.s64','vshlle.s64',

            'vshlleq.s8','vshllne.s8','vshllcs.s8','vshllhs.s8','vshllcc.s8','vshlllo.s8','vshllmi.s8','vshllpl.s8','vshllvs.s8','vshllvc.s8','vshllhi.s8','vshllls.s8','vshllge.s8','vshlllt.s8','vshllgt.s8','vshllle.s8',
            'vshlleq.s16','vshllne.s16','vshllcs.s16','vshllhs.s16','vshllcc.s16','vshlllo.s16','vshllmi.s16','vshllpl.s16','vshllvs.s16','vshllvc.s16','vshllhi.s16','vshllls.s16','vshllge.s16','vshlllt.s16','vshllgt.s16','vshllle.s16',
            'vshlleq.s32','vshllne.s32','vshllcs.s32','vshllhs.s32','vshllcc.s32','vshlllo.s32','vshllmi.s32','vshllpl.s32','vshllvs.s32','vshllvc.s32','vshllhi.s32','vshllls.s32','vshllge.s32','vshlllt.s32','vshllgt.s32','vshllle.s32',

            'vshreq.s8','vshrne.s8','vshrcs.s8','vshrhs.s8','vshrcc.s8','vshrlo.s8','vshrmi.s8','vshrpl.s8','vshrvs.s8','vshrvc.s8','vshrhi.s8','vshrls.s8','vshrge.s8','vshrlt.s8','vshrgt.s8','vshrle.s8',
            'vshreq.s16','vshrne.s16','vshrcs.s16','vshrhs.s16','vshrcc.s16','vshrlo.s16','vshrmi.s16','vshrpl.s16','vshrvs.s16','vshrvc.s16','vshrhi.s16','vshrls.s16','vshrge.s16','vshrlt.s16','vshrgt.s16','vshrle.s16',
            'vshreq.s32','vshrne.s32','vshrcs.s32','vshrhs.s32','vshrcc.s32','vshrlo.s32','vshrmi.s32','vshrpl.s32','vshrvs.s32','vshrvc.s32','vshrhi.s32','vshrls.s32','vshrge.s32','vshrlt.s32','vshrgt.s32','vshrle.s32',
            'vshreq.s64','vshrne.s64','vshrcs.s64','vshrhs.s64','vshrcc.s64','vshrlo.s64','vshrmi.s64','vshrpl.s64','vshrvs.s64','vshrvc.s64','vshrhi.s64','vshrls.s64','vshrge.s64','vshrlt.s64','vshrgt.s64','vshrle.s64',

            'vsraeq.s8','vsrane.s8','vsracs.s8','vsrahs.s8','vsracc.s8','vsralo.s8','vsrami.s8','vsrapl.s8','vsravs.s8','vsravc.s8','vsrahi.s8','vsrals.s8','vsrage.s8','vsralt.s8','vsragt.s8','vsrale.s8',
            'vsraeq.s16','vsrane.s16','vsracs.s16','vsrahs.s16','vsracc.s16','vsralo.s16','vsrami.s16','vsrapl.s16','vsravs.s16','vsravc.s16','vsrahi.s16','vsrals.s16','vsrage.s16','vsralt.s16','vsragt.s16','vsrale.s16',
            'vsraeq.s32','vsrane.s32','vsracs.s32','vsrahs.s32','vsracc.s32','vsralo.s32','vsrami.s32','vsrapl.s32','vsravs.s32','vsravc.s32','vsrahi.s32','vsrals.s32','vsrage.s32','vsralt.s32','vsragt.s32','vsrale.s32',
            'vsraeq.s64','vsrane.s64','vsracs.s64','vsrahs.s64','vsracc.s64','vsralo.s64','vsrami.s64','vsrapl.s64','vsravs.s64','vsravc.s64','vsrahi.s64','vsrals.s64','vsrage.s64','vsralt.s64','vsragt.s64','vsrale.s64',

            'vsubleq.s8','vsublne.s8','vsublcs.s8','vsublhs.s8','vsublcc.s8','vsubllo.s8','vsublmi.s8','vsublpl.s8','vsublvs.s8','vsublvc.s8','vsublhi.s8','vsublls.s8','vsublge.s8','vsubllt.s8','vsublgt.s8','vsublle.s8',
            'vsubleq.s16','vsublne.s16','vsublcs.s16','vsublhs.s16','vsublcc.s16','vsubllo.s16','vsublmi.s16','vsublpl.s16','vsublvs.s16','vsublvc.s16','vsublhi.s16','vsublls.s16','vsublge.s16','vsubllt.s16','vsublgt.s16','vsublle.s16',
            'vsubleq.s32','vsublne.s32','vsublcs.s32','vsublhs.s32','vsublcc.s32','vsubllo.s32','vsublmi.s32','vsublpl.s32','vsublvs.s32','vsublvc.s32','vsublhi.s32','vsublls.s32','vsublge.s32','vsubllt.s32','vsublgt.s32','vsublle.s32',

            'vsubheq.s8','vsubhne.s8','vsubhcs.s8','vsubhhs.s8','vsubhcc.s8','vsubhlo.s8','vsubhmi.s8','vsubhpl.s8','vsubhvs.s8','vsubhvc.s8','vsubhhi.s8','vsubhls.s8','vsubhge.s8','vsubhlt.s8','vsubhgt.s8','vsubhle.s8',
            'vsubheq.s16','vsubhne.s16','vsubhcs.s16','vsubhhs.s16','vsubhcc.s16','vsubhlo.s16','vsubhmi.s16','vsubhpl.s16','vsubhvs.s16','vsubhvc.s16','vsubhhi.s16','vsubhls.s16','vsubhge.s16','vsubhlt.s16','vsubhgt.s16','vsubhle.s16',
            'vsubheq.s32','vsubhne.s32','vsubhcs.s32','vsubhhs.s32','vsubhcc.s32','vsubhlo.s32','vsubhmi.s32','vsubhpl.s32','vsubhvs.s32','vsubhvc.s32','vsubhhi.s32','vsubhls.s32','vsubhge.s32','vsubhlt.s32','vsubhgt.s32','vsubhle.s32'
            ),
        /* Conditional NEON SIMD Unsigned Integer Instructions */
        33 => array(
            'vabaeq.u8','vabane.u8','vabacs.u8','vabahs.u8','vabacc.u8','vabalo.u8','vabami.u8','vabapl.u8','vabavs.u8','vabavc.u8','vabahi.u8','vabals.u8','vabage.u8','vabalt.u8','vabagt.u8','vabale.u8',
            'vabaeq.u16','vabane.u16','vabacs.u16','vabahs.u16','vabacc.u16','vabalo.u16','vabami.u16','vabapl.u16','vabavs.u16','vabavc.u16','vabahi.u16','vabals.u16','vabage.u16','vabalt.u16','vabagt.u16','vabale.u16',
            'vabaeq.u32','vabane.u32','vabacs.u32','vabahs.u32','vabacc.u32','vabalo.u32','vabami.u32','vabapl.u32','vabavs.u32','vabavc.u32','vabahi.u32','vabals.u32','vabage.u32','vabalt.u32','vabagt.u32','vabale.u32',

            'vabaleq.u8','vabalne.u8','vabalcs.u8','vabalhs.u8','vabalcc.u8','vaballo.u8','vabalmi.u8','vabalpl.u8','vabalvs.u8','vabalvc.u8','vabalhi.u8','vaballs.u8','vabalge.u8','vaballt.u8','vabalgt.u8','vaballe.u8',
            'vabaleq.u16','vabalne.u16','vabalcs.u16','vabalhs.u16','vabalcc.u16','vaballo.u16','vabalmi.u16','vabalpl.u16','vabalvs.u16','vabalvc.u16','vabalhi.u16','vaballs.u16','vabalge.u16','vaballt.u16','vabalgt.u16','vaballe.u16',
            'vabaleq.u32','vabalne.u32','vabalcs.u32','vabalhs.u32','vabalcc.u32','vaballo.u32','vabalmi.u32','vabalpl.u32','vabalvs.u32','vabalvc.u32','vabalhi.u32','vaballs.u32','vabalge.u32','vaballt.u32','vabalgt.u32','vaballe.u32',

            'vabdeq.u8','vabdne.u8','vabdcs.u8','vabdhs.u8','vabdcc.u8','vabdlo.u8','vabdmi.u8','vabdpl.u8','vabdvs.u8','vabdvc.u8','vabdhi.u8','vabdls.u8','vabdge.u8','vabdlt.u8','vabdgt.u8','vabdle.u8',
            'vabdeq.u16','vabdne.u16','vabdcs.u16','vabdhs.u16','vabdcc.u16','vabdlo.u16','vabdmi.u16','vabdpl.u16','vabdvs.u16','vabdvc.u16','vabdhi.u16','vabdls.u16','vabdge.u16','vabdlt.u16','vabdgt.u16','vabdle.u16',
            'vabdeq.u32','vabdne.u32','vabdcs.u32','vabdhs.u32','vabdcc.u32','vabdlo.u32','vabdmi.u32','vabdpl.u32','vabdvs.u32','vabdvc.u32','vabdhi.u32','vabdls.u32','vabdge.u32','vabdlt.u32','vabdgt.u32','vabdle.u32',

            'vaddleq.u8','vaddlne.u8','vaddlcs.u8','vaddlhs.u8','vaddlcc.u8','vaddllo.u8','vaddlmi.u8','vaddlpl.u8','vaddlvs.u8','vaddlvc.u8','vaddlhi.u8','vaddlls.u8','vaddlge.u8','vaddllt.u8','vaddlgt.u8','vaddlle.u8',
            'vaddleq.u16','vaddlne.u16','vaddlcs.u16','vaddlhs.u16','vaddlcc.u16','vaddllo.u16','vaddlmi.u16','vaddlpl.u16','vaddlvs.u16','vaddlvc.u16','vaddlhi.u16','vaddlls.u16','vaddlge.u16','vaddllt.u16','vaddlgt.u16','vaddlle.u16',
            'vaddleq.u32','vaddlne.u32','vaddlcs.u32','vaddlhs.u32','vaddlcc.u32','vaddllo.u32','vaddlmi.u32','vaddlpl.u32','vaddlvs.u32','vaddlvc.u32','vaddlhi.u32','vaddlls.u32','vaddlge.u32','vaddllt.u32','vaddlgt.u32','vaddlle.u32',

            'vsubleq.u8','vsublne.u8','vsublcs.u8','vsublhs.u8','vsublcc.u8','vsubllo.u8','vsublmi.u8','vsublpl.u8','vsublvs.u8','vsublvc.u8','vsublhi.u8','vsublls.u8','vsublge.u8','vsubllt.u8','vsublgt.u8','vsublle.u8',
            'vsubleq.u16','vsublne.u16','vsublcs.u16','vsublhs.u16','vsublcc.u16','vsubllo.u16','vsublmi.u16','vsublpl.u16','vsublvs.u16','vsublvc.u16','vsublhi.u16','vsublls.u16','vsublge.u16','vsubllt.u16','vsublgt.u16','vsublle.u16',
            'vsubleq.u32','vsublne.u32','vsublcs.u32','vsublhs.u32','vsublcc.u32','vsubllo.u32','vsublmi.u32','vsublpl.u32','vsublvs.u32','vsublvc.u32','vsublhi.u32','vsublls.u32','vsublge.u32','vsubllt.u32','vsublgt.u32','vsublle.u32',

            'vaddweq.u8','vaddwne.u8','vaddwcs.u8','vaddwhs.u8','vaddwcc.u8','vaddwlo.u8','vaddwmi.u8','vaddwpl.u8','vaddwvs.u8','vaddwvc.u8','vaddwhi.u8','vaddwls.u8','vaddwge.u8','vaddwlt.u8','vaddwgt.u8','vaddwle.u8',
            'vaddweq.u16','vaddwne.u16','vaddwcs.u16','vaddwhs.u16','vaddwcc.u16','vaddwlo.u16','vaddwmi.u16','vaddwpl.u16','vaddwvs.u16','vaddwvc.u16','vaddwhi.u16','vaddwls.u16','vaddwge.u16','vaddwlt.u16','vaddwgt.u16','vaddwle.u16',
            'vaddweq.u32','vaddwne.u32','vaddwcs.u32','vaddwhs.u32','vaddwcc.u32','vaddwlo.u32','vaddwmi.u32','vaddwpl.u32','vaddwvs.u32','vaddwvc.u32','vaddwhi.u32','vaddwls.u32','vaddwge.u32','vaddwlt.u32','vaddwgt.u32','vaddwle.u32',

            'vsubheq.u8','vsubhne.u8','vsubhcs.u8','vsubhhs.u8','vsubhcc.u8','vsubhlo.u8','vsubhmi.u8','vsubhpl.u8','vsubhvs.u8','vsubhvc.u8','vsubhhi.u8','vsubhls.u8','vsubhge.u8','vsubhlt.u8','vsubhgt.u8','vsubhle.u8',
            'vsubheq.u16','vsubhne.u16','vsubhcs.u16','vsubhhs.u16','vsubhcc.u16','vsubhlo.u16','vsubhmi.u16','vsubhpl.u16','vsubhvs.u16','vsubhvc.u16','vsubhhi.u16','vsubhls.u16','vsubhge.u16','vsubhlt.u16','vsubhgt.u16','vsubhle.u16',
            'vsubheq.u32','vsubhne.u32','vsubhcs.u32','vsubhhs.u32','vsubhcc.u32','vsubhlo.u32','vsubhmi.u32','vsubhpl.u32','vsubhvs.u32','vsubhvc.u32','vsubhhi.u32','vsubhls.u32','vsubhge.u32','vsubhlt.u32','vsubhgt.u32','vsubhle.u32',

            'vhaddeq.u8','vhaddne.u8','vhaddcs.u8','vhaddhs.u8','vhaddcc.u8','vhaddlo.u8','vhaddmi.u8','vhaddpl.u8','vhaddvs.u8','vhaddvc.u8','vhaddhi.u8','vhaddls.u8','vhaddge.u8','vhaddlt.u8','vhaddgt.u8','vhaddle.u8',
            'vhaddeq.u16','vhaddne.u16','vhaddcs.u16','vhaddhs.u16','vhaddcc.u16','vhaddlo.u16','vhaddmi.u16','vhaddpl.u16','vhaddvs.u16','vhaddvc.u16','vhaddhi.u16','vhaddls.u16','vhaddge.u16','vhaddlt.u16','vhaddgt.u16','vhaddle.u16',
            'vhaddeq.u32','vhaddne.u32','vhaddcs.u32','vhaddhs.u32','vhaddcc.u32','vhaddlo.u32','vhaddmi.u32','vhaddpl.u32','vhaddvs.u32','vhaddvc.u32','vhaddhi.u32','vhaddls.u32','vhaddge.u32','vhaddlt.u32','vhaddgt.u32','vhaddle.u32',

            'vhsubeq.u8','vhsubne.u8','vhsubcs.u8','vhsubhs.u8','vhsubcc.u8','vhsublo.u8','vhsubmi.u8','vhsubpl.u8','vhsubvs.u8','vhsubvc.u8','vhsubhi.u8','vhsubls.u8','vhsubge.u8','vhsublt.u8','vhsubgt.u8','vhsuble.u8',
            'vhsubeq.u16','vhsubne.u16','vhsubcs.u16','vhsubhs.u16','vhsubcc.u16','vhsublo.u16','vhsubmi.u16','vhsubpl.u16','vhsubvs.u16','vhsubvc.u16','vhsubhi.u16','vhsubls.u16','vhsubge.u16','vhsublt.u16','vhsubgt.u16','vhsuble.u16',
            'vhsubeq.u32','vhsubne.u32','vhsubcs.u32','vhsubhs.u32','vhsubcc.u32','vhsublo.u32','vhsubmi.u32','vhsubpl.u32','vhsubvs.u32','vhsubvc.u32','vhsubhi.u32','vhsubls.u32','vhsubge.u32','vhsublt.u32','vhsubgt.u32','vhsuble.u32',

            'vpadaleq.u8','vpadalne.u8','vpadalcs.u8','vpadalhs.u8','vpadalcc.u8','vpadallo.u8','vpadalmi.u8','vpadalpl.u8','vpadalvs.u8','vpadalvc.u8','vpadalhi.u8','vpadalls.u8','vpadalge.u8','vpadallt.u8','vpadalgt.u8','vpadalle.u8',
            'vpadaleq.u16','vpadalne.u16','vpadalcs.u16','vpadalhs.u16','vpadalcc.u16','vpadallo.u16','vpadalmi.u16','vpadalpl.u16','vpadalvs.u16','vpadalvc.u16','vpadalhi.u16','vpadalls.u16','vpadalge.u16','vpadallt.u16','vpadalgt.u16','vpadalle.u16',
            'vpadaleq.u32','vpadalne.u32','vpadalcs.u32','vpadalhs.u32','vpadalcc.u32','vpadallo.u32','vpadalmi.u32','vpadalpl.u32','vpadalvs.u32','vpadalvc.u32','vpadalhi.u32','vpadalls.u32','vpadalge.u32','vpadallt.u32','vpadalgt.u32','vpadalle.u32',

            'vpaddleq.u8','vpaddlne.u8','vpaddlcs.u8','vpaddlhs.u8','vpaddlcc.u8','vpaddllo.u8','vpaddlmi.u8','vpaddlpl.u8','vpaddlvs.u8','vpaddlvc.u8','vpaddlhi.u8','vpaddlls.u8','vpaddlge.u8','vpaddllt.u8','vpaddlgt.u8','vpaddlle.u8',
            'vpaddleq.u16','vpaddlne.u16','vpaddlcs.u16','vpaddlhs.u16','vpaddlcc.u16','vpaddllo.u16','vpaddlmi.u16','vpaddlpl.u16','vpaddlvs.u16','vpaddlvc.u16','vpaddlhi.u16','vpaddlls.u16','vpaddlge.u16','vpaddllt.u16','vpaddlgt.u16','vpaddlle.u16',
            'vpaddleq.u32','vpaddlne.u32','vpaddlcs.u32','vpaddlhs.u32','vpaddlcc.u32','vpaddllo.u32','vpaddlmi.u32','vpaddlpl.u32','vpaddlvs.u32','vpaddlvc.u32','vpaddlhi.u32','vpaddlls.u32','vpaddlge.u32','vpaddllt.u32','vpaddlgt.u32','vpaddlle.u32',

            'vcgeeq.u8','vcgene.u8','vcgecs.u8','vcgehs.u8','vcgecc.u8','vcgelo.u8','vcgemi.u8','vcgepl.u8','vcgevs.u8','vcgevc.u8','vcgehi.u8','vcgels.u8','vcgege.u8','vcgelt.u8','vcgegt.u8','vcgele.u8',
            'vcgeeq.u16','vcgene.u16','vcgecs.u16','vcgehs.u16','vcgecc.u16','vcgelo.u16','vcgemi.u16','vcgepl.u16','vcgevs.u16','vcgevc.u16','vcgehi.u16','vcgels.u16','vcgege.u16','vcgelt.u16','vcgegt.u16','vcgele.u16',
            'vcgeeq.u32','vcgene.u32','vcgecs.u32','vcgehs.u32','vcgecc.u32','vcgelo.u32','vcgemi.u32','vcgepl.u32','vcgevs.u32','vcgevc.u32','vcgehi.u32','vcgels.u32','vcgege.u32','vcgelt.u32','vcgegt.u32','vcgele.u32',

            'vcleeq.u8','vclene.u8','vclecs.u8','vclehs.u8','vclecc.u8','vclelo.u8','vclemi.u8','vclepl.u8','vclevs.u8','vclevc.u8','vclehi.u8','vclels.u8','vclege.u8','vclelt.u8','vclegt.u8','vclele.u8',
            'vcleeq.u16','vclene.u16','vclecs.u16','vclehs.u16','vclecc.u16','vclelo.u16','vclemi.u16','vclepl.u16','vclevs.u16','vclevc.u16','vclehi.u16','vclels.u16','vclege.u16','vclelt.u16','vclegt.u16','vclele.u16',
            'vcleeq.u32','vclene.u32','vclecs.u32','vclehs.u32','vclecc.u32','vclelo.u32','vclemi.u32','vclepl.u32','vclevs.u32','vclevc.u32','vclehi.u32','vclels.u32','vclege.u32','vclelt.u32','vclegt.u32','vclele.u32',

            'vcgteq.u8','vcgtne.u8','vcgtcs.u8','vcgths.u8','vcgtcc.u8','vcgtlo.u8','vcgtmi.u8','vcgtpl.u8','vcgtvs.u8','vcgtvc.u8','vcgthi.u8','vcgtls.u8','vcgtge.u8','vcgtlt.u8','vcgtgt.u8','vcgtle.u8',
            'vcgteq.u16','vcgtne.u16','vcgtcs.u16','vcgths.u16','vcgtcc.u16','vcgtlo.u16','vcgtmi.u16','vcgtpl.u16','vcgtvs.u16','vcgtvc.u16','vcgthi.u16','vcgtls.u16','vcgtge.u16','vcgtlt.u16','vcgtgt.u16','vcgtle.u16',
            'vcgteq.u32','vcgtne.u32','vcgtcs.u32','vcgths.u32','vcgtcc.u32','vcgtlo.u32','vcgtmi.u32','vcgtpl.u32','vcgtvs.u32','vcgtvc.u32','vcgthi.u32','vcgtls.u32','vcgtge.u32','vcgtlt.u32','vcgtgt.u32','vcgtle.u32',

            'vclteq.u8','vcltne.u8','vcltcs.u8','vclths.u8','vcltcc.u8','vcltlo.u8','vcltmi.u8','vcltpl.u8','vcltvs.u8','vcltvc.u8','vclthi.u8','vcltls.u8','vcltge.u8','vcltlt.u8','vcltgt.u8','vcltle.u8',
            'vclteq.u16','vcltne.u16','vcltcs.u16','vclths.u16','vcltcc.u16','vcltlo.u16','vcltmi.u16','vcltpl.u16','vcltvs.u16','vcltvc.u16','vclthi.u16','vcltls.u16','vcltge.u16','vcltlt.u16','vcltgt.u16','vcltle.u16',
            'vclteq.u32','vcltne.u32','vcltcs.u32','vclths.u32','vcltcc.u32','vcltlo.u32','vcltmi.u32','vcltpl.u32','vcltvs.u32','vcltvc.u32','vclthi.u32','vcltls.u32','vcltge.u32','vcltlt.u32','vcltgt.u32','vcltle.u32',

            'vmaxeq.u8','vmaxne.u8','vmaxcs.u8','vmaxhs.u8','vmaxcc.u8','vmaxlo.u8','vmaxmi.u8','vmaxpl.u8','vmaxvs.u8','vmaxvc.u8','vmaxhi.u8','vmaxls.u8','vmaxge.u8','vmaxlt.u8','vmaxgt.u8','vmaxle.u8',
            'vmaxeq.u16','vmaxne.u16','vmaxcs.u16','vmaxhs.u16','vmaxcc.u16','vmaxlo.u16','vmaxmi.u16','vmaxpl.u16','vmaxvs.u16','vmaxvc.u16','vmaxhi.u16','vmaxls.u16','vmaxge.u16','vmaxlt.u16','vmaxgt.u16','vmaxle.u16',
            'vmaxeq.u32','vmaxne.u32','vmaxcs.u32','vmaxhs.u32','vmaxcc.u32','vmaxlo.u32','vmaxmi.u32','vmaxpl.u32','vmaxvs.u32','vmaxvc.u32','vmaxhi.u32','vmaxls.u32','vmaxge.u32','vmaxlt.u32','vmaxgt.u32','vmaxle.u32',

            'vmineq.u8','vminne.u8','vmincs.u8','vminhs.u8','vmincc.u8','vminlo.u8','vminmi.u8','vminpl.u8','vminvs.u8','vminvc.u8','vminhi.u8','vminls.u8','vminge.u8','vminlt.u8','vmingt.u8','vminle.u8',
            'vmineq.u16','vminne.u16','vmincs.u16','vminhs.u16','vmincc.u16','vminlo.u16','vminmi.u16','vminpl.u16','vminvs.u16','vminvc.u16','vminhi.u16','vminls.u16','vminge.u16','vminlt.u16','vmingt.u16','vminle.u16',
            'vmineq.u32','vminne.u32','vmincs.u32','vminhs.u32','vmincc.u32','vminlo.u32','vminmi.u32','vminpl.u32','vminvs.u32','vminvc.u32','vminhi.u32','vminls.u32','vminge.u32','vminlt.u32','vmingt.u32','vminle.u32',

            'vmlaleq.u8','vmlalne.u8','vmlalcs.u8','vmlalhs.u8','vmlalcc.u8','vmlallo.u8','vmlalmi.u8','vmlalpl.u8','vmlalvs.u8','vmlalvc.u8','vmlalhi.u8','vmlalls.u8','vmlalge.u8','vmlallt.u8','vmlalgt.u8','vmlalle.u8',
            'vmlaleq.u16','vmlalne.u16','vmlalcs.u16','vmlalhs.u16','vmlalcc.u16','vmlallo.u16','vmlalmi.u16','vmlalpl.u16','vmlalvs.u16','vmlalvc.u16','vmlalhi.u16','vmlalls.u16','vmlalge.u16','vmlallt.u16','vmlalgt.u16','vmlalle.u16',
            'vmlaleq.u32','vmlalne.u32','vmlalcs.u32','vmlalhs.u32','vmlalcc.u32','vmlallo.u32','vmlalmi.u32','vmlalpl.u32','vmlalvs.u32','vmlalvc.u32','vmlalhi.u32','vmlalls.u32','vmlalge.u32','vmlallt.u32','vmlalgt.u32','vmlalle.u32',

            'vmlsleq.u8','vmlslne.u8','vmlslcs.u8','vmlslhs.u8','vmlslcc.u8','vmlsllo.u8','vmlslmi.u8','vmlslpl.u8','vmlslvs.u8','vmlslvc.u8','vmlslhi.u8','vmlslls.u8','vmlslge.u8','vmlsllt.u8','vmlslgt.u8','vmlslle.u8',
            'vmlsleq.u16','vmlslne.u16','vmlslcs.u16','vmlslhs.u16','vmlslcc.u16','vmlsllo.u16','vmlslmi.u16','vmlslpl.u16','vmlslvs.u16','vmlslvc.u16','vmlslhi.u16','vmlslls.u16','vmlslge.u16','vmlsllt.u16','vmlslgt.u16','vmlslle.u16',
            'vmlsleq.u32','vmlslne.u32','vmlslcs.u32','vmlslhs.u32','vmlslcc.u32','vmlsllo.u32','vmlslmi.u32','vmlslpl.u32','vmlslvs.u32','vmlslvc.u32','vmlslhi.u32','vmlslls.u32','vmlslge.u32','vmlsllt.u32','vmlslgt.u32','vmlslle.u32',

            'vmulleq.u8','vmullne.u8','vmullcs.u8','vmullhs.u8','vmullcc.u8','vmulllo.u8','vmullmi.u8','vmullpl.u8','vmullvs.u8','vmullvc.u8','vmullhi.u8','vmullls.u8','vmullge.u8','vmulllt.u8','vmullgt.u8','vmullle.u8',
            'vmulleq.u16','vmullne.u16','vmullcs.u16','vmullhs.u16','vmullcc.u16','vmulllo.u16','vmullmi.u16','vmullpl.u16','vmullvs.u16','vmullvc.u16','vmullhi.u16','vmullls.u16','vmullge.u16','vmulllt.u16','vmullgt.u16','vmullle.u16',
            'vmulleq.u32','vmullne.u32','vmullcs.u32','vmullhs.u32','vmullcc.u32','vmulllo.u32','vmullmi.u32','vmullpl.u32','vmullvs.u32','vmullvc.u32','vmullhi.u32','vmullls.u32','vmullge.u32','vmulllt.u32','vmullgt.u32','vmullle.u32',

            'vmovleq.u8','vmovlne.u8','vmovlcs.u8','vmovlhs.u8','vmovlcc.u8','vmovllo.u8','vmovlmi.u8','vmovlpl.u8','vmovlvs.u8','vmovlvc.u8','vmovlhi.u8','vmovlls.u8','vmovlge.u8','vmovllt.u8','vmovlgt.u8','vmovlle.u8',
            'vmovleq.u16','vmovlne.u16','vmovlcs.u16','vmovlhs.u16','vmovlcc.u16','vmovllo.u16','vmovlmi.u16','vmovlpl.u16','vmovlvs.u16','vmovlvc.u16','vmovlhi.u16','vmovlls.u16','vmovlge.u16','vmovllt.u16','vmovlgt.u16','vmovlle.u16',
            'vmovleq.u32','vmovlne.u32','vmovlcs.u32','vmovlhs.u32','vmovlcc.u32','vmovllo.u32','vmovlmi.u32','vmovlpl.u32','vmovlvs.u32','vmovlvc.u32','vmovlhi.u32','vmovlls.u32','vmovlge.u32','vmovllt.u32','vmovlgt.u32','vmovlle.u32',

            'vshleq.u8','vshlne.u8','vshlcs.u8','vshlhs.u8','vshlcc.u8','vshllo.u8','vshlmi.u8','vshlpl.u8','vshlvs.u8','vshlvc.u8','vshlhi.u8','vshlls.u8','vshlge.u8','vshllt.u8','vshlgt.u8','vshlle.u8',
            'vshleq.u16','vshlne.u16','vshlcs.u16','vshlhs.u16','vshlcc.u16','vshllo.u16','vshlmi.u16','vshlpl.u16','vshlvs.u16','vshlvc.u16','vshlhi.u16','vshlls.u16','vshlge.u16','vshllt.u16','vshlgt.u16','vshlle.u16',
            'vshleq.u32','vshlne.u32','vshlcs.u32','vshlhs.u32','vshlcc.u32','vshllo.u32','vshlmi.u32','vshlpl.u32','vshlvs.u32','vshlvc.u32','vshlhi.u32','vshlls.u32','vshlge.u32','vshllt.u32','vshlgt.u32','vshlle.u32',
            'vshleq.u64','vshlne.u64','vshlcs.u64','vshlhs.u64','vshlcc.u64','vshllo.u64','vshlmi.u64','vshlpl.u64','vshlvs.u64','vshlvc.u64','vshlhi.u64','vshlls.u64','vshlge.u64','vshllt.u64','vshlgt.u64','vshlle.u64',

            'vshlleq.u8','vshllne.u8','vshllcs.u8','vshllhs.u8','vshllcc.u8','vshlllo.u8','vshllmi.u8','vshllpl.u8','vshllvs.u8','vshllvc.u8','vshllhi.u8','vshllls.u8','vshllge.u8','vshlllt.u8','vshllgt.u8','vshllle.u8',
            'vshlleq.u16','vshllne.u16','vshllcs.u16','vshllhs.u16','vshllcc.u16','vshlllo.u16','vshllmi.u16','vshllpl.u16','vshllvs.u16','vshllvc.u16','vshllhi.u16','vshllls.u16','vshllge.u16','vshlllt.u16','vshllgt.u16','vshllle.u16',
            'vshlleq.u32','vshllne.u32','vshllcs.u32','vshllhs.u32','vshllcc.u32','vshlllo.u32','vshllmi.u32','vshllpl.u32','vshllvs.u32','vshllvc.u32','vshllhi.u32','vshllls.u32','vshllge.u32','vshlllt.u32','vshllgt.u32','vshllle.u32',

            'vshreq.u8','vshrne.u8','vshrcs.u8','vshrhs.u8','vshrcc.u8','vshrlo.u8','vshrmi.u8','vshrpl.u8','vshrvs.u8','vshrvc.u8','vshrhi.u8','vshrls.u8','vshrge.u8','vshrlt.u8','vshrgt.u8','vshrle.u8',
            'vshreq.u16','vshrne.u16','vshrcs.u16','vshrhs.u16','vshrcc.u16','vshrlo.u16','vshrmi.u16','vshrpl.u16','vshrvs.u16','vshrvc.u16','vshrhi.u16','vshrls.u16','vshrge.u16','vshrlt.u16','vshrgt.u16','vshrle.u16',
            'vshreq.u32','vshrne.u32','vshrcs.u32','vshrhs.u32','vshrcc.u32','vshrlo.u32','vshrmi.u32','vshrpl.u32','vshrvs.u32','vshrvc.u32','vshrhi.u32','vshrls.u32','vshrge.u32','vshrlt.u32','vshrgt.u32','vshrle.u32',
            'vshreq.u64','vshrne.u64','vshrcs.u64','vshrhs.u64','vshrcc.u64','vshrlo.u64','vshrmi.u64','vshrpl.u64','vshrvs.u64','vshrvc.u64','vshrhi.u64','vshrls.u64','vshrge.u64','vshrlt.u64','vshrgt.u64','vshrle.u64',

            'vsraeq.u8','vsrane.u8','vsracs.u8','vsrahs.u8','vsracc.u8','vsralo.u8','vsrami.u8','vsrapl.u8','vsravs.u8','vsravc.u8','vsrahi.u8','vsrals.u8','vsrage.u8','vsralt.u8','vsragt.u8','vsrale.u8',
            'vsraeq.u16','vsrane.u16','vsracs.u16','vsrahs.u16','vsracc.u16','vsralo.u16','vsrami.u16','vsrapl.u16','vsravs.u16','vsravc.u16','vsrahi.u16','vsrals.u16','vsrage.u16','vsralt.u16','vsragt.u16','vsrale.u16',
            'vsraeq.u32','vsrane.u32','vsracs.u32','vsrahs.u32','vsracc.u32','vsralo.u32','vsrami.u32','vsrapl.u32','vsravs.u32','vsravc.u32','vsrahi.u32','vsrals.u32','vsrage.u32','vsralt.u32','vsragt.u32','vsrale.u32',
            'vsraeq.u64','vsrane.u64','vsracs.u64','vsrahs.u64','vsracc.u64','vsralo.u64','vsrami.u64','vsrapl.u64','vsravs.u64','vsravc.u64','vsrahi.u64','vsrals.u64','vsrage.u64','vsralt.u64','vsragt.u64','vsrale.u64',

            'vpmaxeq.u8','vpmaxne.u8','vpmaxcs.u8','vpmaxhs.u8','vpmaxcc.u8','vpmaxlo.u8','vpmaxmi.u8','vpmaxpl.u8','vpmaxvs.u8','vpmaxvc.u8','vpmaxhi.u8','vpmaxls.u8','vpmaxge.u8','vpmaxlt.u8','vpmaxgt.u8','vpmaxle.u8',
            'vpmaxeq.u16','vpmaxne.u16','vpmaxcs.u16','vpmaxhs.u16','vpmaxcc.u16','vpmaxlo.u16','vpmaxmi.u16','vpmaxpl.u16','vpmaxvs.u16','vpmaxvc.u16','vpmaxhi.u16','vpmaxls.u16','vpmaxge.u16','vpmaxlt.u16','vpmaxgt.u16','vpmaxle.u16',
            'vpmaxeq.u32','vpmaxne.u32','vpmaxcs.u32','vpmaxhs.u32','vpmaxcc.u32','vpmaxlo.u32','vpmaxmi.u32','vpmaxpl.u32','vpmaxvs.u32','vpmaxvc.u32','vpmaxhi.u32','vpmaxls.u32','vpmaxge.u32','vpmaxlt.u32','vpmaxgt.u32','vpmaxle.u32',

            'vpmineq.u8','vpminne.u8','vpmincs.u8','vpminhs.u8','vpmincc.u8','vpminlo.u8','vpminmi.u8','vpminpl.u8','vpminvs.u8','vpminvc.u8','vpminhi.u8','vpminls.u8','vpminge.u8','vpminlt.u8','vpmingt.u8','vpminle.u8',
            'vpmineq.u16','vpminne.u16','vpmincs.u16','vpminhs.u16','vpmincc.u16','vpminlo.u16','vpminmi.u16','vpminpl.u16','vpminvs.u16','vpminvc.u16','vpminhi.u16','vpminls.u16','vpminge.u16','vpminlt.u16','vpmingt.u16','vpminle.u16',
            'vpmineq.u32','vpminne.u32','vpmincs.u32','vpminhs.u32','vpmincc.u32','vpminlo.u32','vpminmi.u32','vpminpl.u32','vpminvs.u32','vpminvc.u32','vpminhi.u32','vpminls.u32','vpminge.u32','vpminlt.u32','vpmingt.u32','vpminle.u32',

            'vqaddeq.u8','vqaddne.u8','vqaddcs.u8','vqaddhs.u8','vqaddcc.u8','vqaddlo.u8','vqaddmi.u8','vqaddpl.u8','vqaddvs.u8','vqaddvc.u8','vqaddhi.u8','vqaddls.u8','vqaddge.u8','vqaddlt.u8','vqaddgt.u8','vqaddle.u8',
            'vqaddeq.u16','vqaddne.u16','vqaddcs.u16','vqaddhs.u16','vqaddcc.u16','vqaddlo.u16','vqaddmi.u16','vqaddpl.u16','vqaddvs.u16','vqaddvc.u16','vqaddhi.u16','vqaddls.u16','vqaddge.u16','vqaddlt.u16','vqaddgt.u16','vqaddle.u16',
            'vqaddeq.u32','vqaddne.u32','vqaddcs.u32','vqaddhs.u32','vqaddcc.u32','vqaddlo.u32','vqaddmi.u32','vqaddpl.u32','vqaddvs.u32','vqaddvc.u32','vqaddhi.u32','vqaddls.u32','vqaddge.u32','vqaddlt.u32','vqaddgt.u32','vqaddle.u32',
            'vqaddeq.u64','vqaddne.u64','vqaddcs.u64','vqaddhs.u64','vqaddcc.u64','vqaddlo.u64','vqaddmi.u64','vqaddpl.u64','vqaddvs.u64','vqaddvc.u64','vqaddhi.u64','vqaddls.u64','vqaddge.u64','vqaddlt.u64','vqaddgt.u64','vqaddle.u64',

            'vqsubeq.u8','vqsubne.u8','vqsubcs.u8','vqsubhs.u8','vqsubcc.u8','vqsublo.u8','vqsubmi.u8','vqsubpl.u8','vqsubvs.u8','vqsubvc.u8','vqsubhi.u8','vqsubls.u8','vqsubge.u8','vqsublt.u8','vqsubgt.u8','vqsuble.u8',
            'vqsubeq.u16','vqsubne.u16','vqsubcs.u16','vqsubhs.u16','vqsubcc.u16','vqsublo.u16','vqsubmi.u16','vqsubpl.u16','vqsubvs.u16','vqsubvc.u16','vqsubhi.u16','vqsubls.u16','vqsubge.u16','vqsublt.u16','vqsubgt.u16','vqsuble.u16',
            'vqsubeq.u32','vqsubne.u32','vqsubcs.u32','vqsubhs.u32','vqsubcc.u32','vqsublo.u32','vqsubmi.u32','vqsubpl.u32','vqsubvs.u32','vqsubvc.u32','vqsubhi.u32','vqsubls.u32','vqsubge.u32','vqsublt.u32','vqsubgt.u32','vqsuble.u32',
            'vqsubeq.u64','vqsubne.u64','vqsubcs.u64','vqsubhs.u64','vqsubcc.u64','vqsublo.u64','vqsubmi.u64','vqsubpl.u64','vqsubvs.u64','vqsubvc.u64','vqsubhi.u64','vqsubls.u64','vqsubge.u64','vqsublt.u64','vqsubgt.u64','vqsuble.u64',

            'vqmovneq.u16','vqmovnne.u16','vqmovncs.u16','vqmovnhs.u16','vqmovncc.u16','vqmovnlo.u16','vqmovnmi.u16','vqmovnpl.u16','vqmovnvs.u16','vqmovnvc.u16','vqmovnhi.u16','vqmovnls.u16','vqmovnge.u16','vqmovnlt.u16','vqmovngt.u16','vqmovnle.u16',
            'vqmovneq.u32','vqmovnne.u32','vqmovncs.u32','vqmovnhs.u32','vqmovncc.u32','vqmovnlo.u32','vqmovnmi.u32','vqmovnpl.u32','vqmovnvs.u32','vqmovnvc.u32','vqmovnhi.u32','vqmovnls.u32','vqmovnge.u32','vqmovnlt.u32','vqmovngt.u32','vqmovnle.u32',
            'vqmovneq.u64','vqmovnne.u64','vqmovncs.u64','vqmovnhs.u64','vqmovncc.u64','vqmovnlo.u64','vqmovnmi.u64','vqmovnpl.u64','vqmovnvs.u64','vqmovnvc.u64','vqmovnhi.u64','vqmovnls.u64','vqmovnge.u64','vqmovnlt.u64','vqmovngt.u64','vqmovnle.u64',

            'vqshleq.u8','vqshlne.u8','vqshlcs.u8','vqshlhs.u8','vqshlcc.u8','vqshllo.u8','vqshlmi.u8','vqshlpl.u8','vqshlvs.u8','vqshlvc.u8','vqshlhi.u8','vqshlls.u8','vqshlge.u8','vqshllt.u8','vqshlgt.u8','vqshlle.u8',
            'vqshleq.u16','vqshlne.u16','vqshlcs.u16','vqshlhs.u16','vqshlcc.u16','vqshllo.u16','vqshlmi.u16','vqshlpl.u16','vqshlvs.u16','vqshlvc.u16','vqshlhi.u16','vqshlls.u16','vqshlge.u16','vqshllt.u16','vqshlgt.u16','vqshlle.u16',
            'vqshleq.u32','vqshlne.u32','vqshlcs.u32','vqshlhs.u32','vqshlcc.u32','vqshllo.u32','vqshlmi.u32','vqshlpl.u32','vqshlvs.u32','vqshlvc.u32','vqshlhi.u32','vqshlls.u32','vqshlge.u32','vqshllt.u32','vqshlgt.u32','vqshlle.u32',
            'vqshleq.u64','vqshlne.u64','vqshlcs.u64','vqshlhs.u64','vqshlcc.u64','vqshllo.u64','vqshlmi.u64','vqshlpl.u64','vqshlvs.u64','vqshlvc.u64','vqshlhi.u64','vqshlls.u64','vqshlge.u64','vqshllt.u64','vqshlgt.u64','vqshlle.u64',

            'vqshrneq.u16','vqshrnne.u16','vqshrncs.u16','vqshrnhs.u16','vqshrncc.u16','vqshrnlo.u16','vqshrnmi.u16','vqshrnpl.u16','vqshrnvs.u16','vqshrnvc.u16','vqshrnhi.u16','vqshrnls.u16','vqshrnge.u16','vqshrnlt.u16','vqshrngt.u16','vqshrnle.u16',
            'vqshrneq.u32','vqshrnne.u32','vqshrncs.u32','vqshrnhs.u32','vqshrncc.u32','vqshrnlo.u32','vqshrnmi.u32','vqshrnpl.u32','vqshrnvs.u32','vqshrnvc.u32','vqshrnhi.u32','vqshrnls.u32','vqshrnge.u32','vqshrnlt.u32','vqshrngt.u32','vqshrnle.u32',
            'vqshrneq.u64','vqshrnne.u64','vqshrncs.u64','vqshrnhs.u64','vqshrncc.u64','vqshrnlo.u64','vqshrnmi.u64','vqshrnpl.u64','vqshrnvs.u64','vqshrnvc.u64','vqshrnhi.u64','vqshrnls.u64','vqshrnge.u64','vqshrnlt.u64','vqshrngt.u64','vqshrnle.u64',

            'vqrshleq.u8','vqrshlne.u8','vqrshlcs.u8','vqrshlhs.u8','vqrshlcc.u8','vqrshllo.u8','vqrshlmi.u8','vqrshlpl.u8','vqrshlvs.u8','vqrshlvc.u8','vqrshlhi.u8','vqrshlls.u8','vqrshlge.u8','vqrshllt.u8','vqrshlgt.u8','vqrshlle.u8',
            'vqrshleq.u16','vqrshlne.u16','vqrshlcs.u16','vqrshlhs.u16','vqrshlcc.u16','vqrshllo.u16','vqrshlmi.u16','vqrshlpl.u16','vqrshlvs.u16','vqrshlvc.u16','vqrshlhi.u16','vqrshlls.u16','vqrshlge.u16','vqrshllt.u16','vqrshlgt.u16','vqrshlle.u16',
            'vqrshleq.u32','vqrshlne.u32','vqrshlcs.u32','vqrshlhs.u32','vqrshlcc.u32','vqrshllo.u32','vqrshlmi.u32','vqrshlpl.u32','vqrshlvs.u32','vqrshlvc.u32','vqrshlhi.u32','vqrshlls.u32','vqrshlge.u32','vqrshllt.u32','vqrshlgt.u32','vqrshlle.u32',
            'vqrshleq.u64','vqrshlne.u64','vqrshlcs.u64','vqrshlhs.u64','vqrshlcc.u64','vqrshllo.u64','vqrshlmi.u64','vqrshlpl.u64','vqrshlvs.u64','vqrshlvc.u64','vqrshlhi.u64','vqrshlls.u64','vqrshlge.u64','vqrshllt.u64','vqrshlgt.u64','vqrshlle.u64',

            'vqrshrneq.u16','vqrshrnne.u16','vqrshrncs.u16','vqrshrnhs.u16','vqrshrncc.u16','vqrshrnlo.u16','vqrshrnmi.u16','vqrshrnpl.u16','vqrshrnvs.u16','vqrshrnvc.u16','vqrshrnhi.u16','vqrshrnls.u16','vqrshrnge.u16','vqrshrnlt.u16','vqrshrngt.u16','vqrshrnle.u16',
            'vqrshrneq.u32','vqrshrnne.u32','vqrshrncs.u32','vqrshrnhs.u32','vqrshrncc.u32','vqrshrnlo.u32','vqrshrnmi.u32','vqrshrnpl.u32','vqrshrnvs.u32','vqrshrnvc.u32','vqrshrnhi.u32','vqrshrnls.u32','vqrshrnge.u32','vqrshrnlt.u32','vqrshrngt.u32','vqrshrnle.u32',
            'vqrshrneq.u64','vqrshrnne.u64','vqrshrncs.u64','vqrshrnhs.u64','vqrshrncc.u64','vqrshrnlo.u64','vqrshrnmi.u64','vqrshrnpl.u64','vqrshrnvs.u64','vqrshrnvc.u64','vqrshrnhi.u64','vqrshrnls.u64','vqrshrnge.u64','vqrshrnlt.u64','vqrshrngt.u64','vqrshrnle.u64',

            'vrhaddeq.u8','vrhaddne.u8','vrhaddcs.u8','vrhaddhs.u8','vrhaddcc.u8','vrhaddlo.u8','vrhaddmi.u8','vrhaddpl.u8','vrhaddvs.u8','vrhaddvc.u8','vrhaddhi.u8','vrhaddls.u8','vrhaddge.u8','vrhaddlt.u8','vrhaddgt.u8','vrhaddle.u8',
            'vrhaddeq.u16','vrhaddne.u16','vrhaddcs.u16','vrhaddhs.u16','vrhaddcc.u16','vrhaddlo.u16','vrhaddmi.u16','vrhaddpl.u16','vrhaddvs.u16','vrhaddvc.u16','vrhaddhi.u16','vrhaddls.u16','vrhaddge.u16','vrhaddlt.u16','vrhaddgt.u16','vrhaddle.u16',
            'vrhaddeq.u32','vrhaddne.u32','vrhaddcs.u32','vrhaddhs.u32','vrhaddcc.u32','vrhaddlo.u32','vrhaddmi.u32','vrhaddpl.u32','vrhaddvs.u32','vrhaddvc.u32','vrhaddhi.u32','vrhaddls.u32','vrhaddge.u32','vrhaddlt.u32','vrhaddgt.u32','vrhaddle.u32',

            'vrshleq.u8','vrshlne.u8','vrshlcs.u8','vrshlhs.u8','vrshlcc.u8','vrshllo.u8','vrshlmi.u8','vrshlpl.u8','vrshlvs.u8','vrshlvc.u8','vrshlhi.u8','vrshlls.u8','vrshlge.u8','vrshllt.u8','vrshlgt.u8','vrshlle.u8',
            'vrshleq.u16','vrshlne.u16','vrshlcs.u16','vrshlhs.u16','vrshlcc.u16','vrshllo.u16','vrshlmi.u16','vrshlpl.u16','vrshlvs.u16','vrshlvc.u16','vrshlhi.u16','vrshlls.u16','vrshlge.u16','vrshllt.u16','vrshlgt.u16','vrshlle.u16',
            'vrshleq.u32','vrshlne.u32','vrshlcs.u32','vrshlhs.u32','vrshlcc.u32','vrshllo.u32','vrshlmi.u32','vrshlpl.u32','vrshlvs.u32','vrshlvc.u32','vrshlhi.u32','vrshlls.u32','vrshlge.u32','vrshllt.u32','vrshlgt.u32','vrshlle.u32',
            'vrshleq.u64','vrshlne.u64','vrshlcs.u64','vrshlhs.u64','vrshlcc.u64','vrshllo.u64','vrshlmi.u64','vrshlpl.u64','vrshlvs.u64','vrshlvc.u64','vrshlhi.u64','vrshlls.u64','vrshlge.u64','vrshllt.u64','vrshlgt.u64','vrshlle.u64',

            'vrshreq.u8','vrshrne.u8','vrshrcs.u8','vrshrhs.u8','vrshrcc.u8','vrshrlo.u8','vrshrmi.u8','vrshrpl.u8','vrshrvs.u8','vrshrvc.u8','vrshrhi.u8','vrshrls.u8','vrshrge.u8','vrshrlt.u8','vrshrgt.u8','vrshrle.u8',
            'vrshreq.u16','vrshrne.u16','vrshrcs.u16','vrshrhs.u16','vrshrcc.u16','vrshrlo.u16','vrshrmi.u16','vrshrpl.u16','vrshrvs.u16','vrshrvc.u16','vrshrhi.u16','vrshrls.u16','vrshrge.u16','vrshrlt.u16','vrshrgt.u16','vrshrle.u16',
            'vrshreq.u32','vrshrne.u32','vrshrcs.u32','vrshrhs.u32','vrshrcc.u32','vrshrlo.u32','vrshrmi.u32','vrshrpl.u32','vrshrvs.u32','vrshrvc.u32','vrshrhi.u32','vrshrls.u32','vrshrge.u32','vrshrlt.u32','vrshrgt.u32','vrshrle.u32',
            'vrshreq.u64','vrshrne.u64','vrshrcs.u64','vrshrhs.u64','vrshrcc.u64','vrshrlo.u64','vrshrmi.u64','vrshrpl.u64','vrshrvs.u64','vrshrvc.u64','vrshrhi.u64','vrshrls.u64','vrshrge.u64','vrshrlt.u64','vrshrgt.u64','vrshrle.u64',

            'vrsraeq.u8','vrsrane.u8','vrsracs.u8','vrsrahs.u8','vrsracc.u8','vrsralo.u8','vrsrami.u8','vrsrapl.u8','vrsravs.u8','vrsravc.u8','vrsrahi.u8','vrsrals.u8','vrsrage.u8','vrsralt.u8','vrsragt.u8','vrsrale.u8',
            'vrsraeq.u16','vrsrane.u16','vrsracs.u16','vrsrahs.u16','vrsracc.u16','vrsralo.u16','vrsrami.u16','vrsrapl.u16','vrsravs.u16','vrsravc.u16','vrsrahi.u16','vrsrals.u16','vrsrage.u16','vrsralt.u16','vrsragt.u16','vrsrale.u16',
            'vrsraeq.u32','vrsrane.u32','vrsracs.u32','vrsrahs.u32','vrsracc.u32','vrsralo.u32','vrsrami.u32','vrsrapl.u32','vrsravs.u32','vrsravc.u32','vrsrahi.u32','vrsrals.u32','vrsrage.u32','vrsralt.u32','vrsragt.u32','vrsrale.u32',
            'vrsraeq.u64','vrsrane.u64','vrsracs.u64','vrsrahs.u64','vrsracc.u64','vrsralo.u64','vrsrami.u64','vrsrapl.u64','vrsravs.u64','vrsravc.u64','vrsrahi.u64','vrsrals.u64','vrsrage.u64','vrsralt.u64','vrsragt.u64','vrsrale.u64',
            ),
        /* Conditional VFPv3 & NEON SIMD Floating-Point Instructions */
        34 => array(
            'vabdeq.f32','vabdne.f32','vabdcs.f32','vabdhs.f32','vabdcc.f32','vabdlo.f32','vabdmi.f32','vabdpl.f32','vabdvs.f32','vabdvc.f32','vabdhi.f32','vabdls.f32','vabdge.f32','vabdlt.f32','vabdgt.f32','vabdle.f32',

            'vabseq.f32','vabsne.f32','vabscs.f32','vabshs.f32','vabscc.f32','vabslo.f32','vabsmi.f32','vabspl.f32','vabsvs.f32','vabsvc.f32','vabshi.f32','vabsls.f32','vabsge.f32','vabslt.f32','vabsgt.f32','vabsle.f32',
            'vabseq.f64','vabsne.f64','vabscs.f64','vabshs.f64','vabscc.f64','vabslo.f64','vabsmi.f64','vabspl.f64','vabsvs.f64','vabsvc.f64','vabshi.f64','vabsls.f64','vabsge.f64','vabslt.f64','vabsgt.f64','vabsle.f64',

            'vacgeeq.f32','vacgene.f32','vacgecs.f32','vacgehs.f32','vacgecc.f32','vacgelo.f32','vacgemi.f32','vacgepl.f32','vacgevs.f32','vacgevc.f32','vacgehi.f32','vacgels.f32','vacgege.f32','vacgelt.f32','vacgegt.f32','vacgele.f32',
            'vacgteq.f32','vacgtne.f32','vacgtcs.f32','vacgths.f32','vacgtcc.f32','vacgtlo.f32','vacgtmi.f32','vacgtpl.f32','vacgtvs.f32','vacgtvc.f32','vacgthi.f32','vacgtls.f32','vacgtge.f32','vacgtlt.f32','vacgtgt.f32','vacgtle.f32',
            'vacleeq.f32','vaclene.f32','vaclecs.f32','vaclehs.f32','vaclecc.f32','vaclelo.f32','vaclemi.f32','vaclepl.f32','vaclevs.f32','vaclevc.f32','vaclehi.f32','vaclels.f32','vaclege.f32','vaclelt.f32','vaclegt.f32','vaclele.f32',
            'vaclteq.f32','vacltne.f32','vacltcs.f32','vaclths.f32','vacltcc.f32','vacltlo.f32','vacltmi.f32','vacltpl.f32','vacltvs.f32','vacltvc.f32','vaclthi.f32','vacltls.f32','vacltge.f32','vacltlt.f32','vacltgt.f32','vacltle.f32',

            'vaddeq.f32','vaddne.f32','vaddcs.f32','vaddhs.f32','vaddcc.f32','vaddlo.f32','vaddmi.f32','vaddpl.f32','vaddvs.f32','vaddvc.f32','vaddhi.f32','vaddls.f32','vaddge.f32','vaddlt.f32','vaddgt.f32','vaddle.f32',
            'vaddeq.f64','vaddne.f64','vaddcs.f64','vaddhs.f64','vaddcc.f64','vaddlo.f64','vaddmi.f64','vaddpl.f64','vaddvs.f64','vaddvc.f64','vaddhi.f64','vaddls.f64','vaddge.f64','vaddlt.f64','vaddgt.f64','vaddle.f64',

            'vceqeq.f32','vceqne.f32','vceqcs.f32','vceqhs.f32','vceqcc.f32','vceqlo.f32','vceqmi.f32','vceqpl.f32','vceqvs.f32','vceqvc.f32','vceqhi.f32','vceqls.f32','vceqge.f32','vceqlt.f32','vceqgt.f32','vceqle.f32',
            'vcgeeq.f32','vcgene.f32','vcgecs.f32','vcgehs.f32','vcgecc.f32','vcgelo.f32','vcgemi.f32','vcgepl.f32','vcgevs.f32','vcgevc.f32','vcgehi.f32','vcgels.f32','vcgege.f32','vcgelt.f32','vcgegt.f32','vcgele.f32',
            'vcleeq.f32','vclene.f32','vclecs.f32','vclehs.f32','vclecc.f32','vclelo.f32','vclemi.f32','vclepl.f32','vclevs.f32','vclevc.f32','vclehi.f32','vclels.f32','vclege.f32','vclelt.f32','vclegt.f32','vclele.f32',
            'vcgteq.f32','vcgtne.f32','vcgtcs.f32','vcgths.f32','vcgtcc.f32','vcgtlo.f32','vcgtmi.f32','vcgtpl.f32','vcgtvs.f32','vcgtvc.f32','vcgthi.f32','vcgtls.f32','vcgtge.f32','vcgtlt.f32','vcgtgt.f32','vcgtle.f32',
            'vclteq.f32','vcltne.f32','vcltcs.f32','vclths.f32','vcltcc.f32','vcltlo.f32','vcltmi.f32','vcltpl.f32','vcltvs.f32','vcltvc.f32','vclthi.f32','vcltls.f32','vcltge.f32','vcltlt.f32','vcltgt.f32','vcltle.f32',

            'vcmpeq.f32','vcmpne.f32','vcmpcs.f32','vcmphs.f32','vcmpcc.f32','vcmplo.f32','vcmpmi.f32','vcmppl.f32','vcmpvs.f32','vcmpvc.f32','vcmphi.f32','vcmpls.f32','vcmpge.f32','vcmplt.f32','vcmpgt.f32','vcmple.f32',
            'vcmpeq.f64','vcmpne.f64','vcmpcs.f64','vcmphs.f64','vcmpcc.f64','vcmplo.f64','vcmpmi.f64','vcmppl.f64','vcmpvs.f64','vcmpvc.f64','vcmphi.f64','vcmpls.f64','vcmpge.f64','vcmplt.f64','vcmpgt.f64','vcmple.f64',

            'vcmpeeq.f32','vcmpene.f32','vcmpecs.f32','vcmpehs.f32','vcmpecc.f32','vcmpelo.f32','vcmpemi.f32','vcmpepl.f32','vcmpevs.f32','vcmpevc.f32','vcmpehi.f32','vcmpels.f32','vcmpege.f32','vcmpelt.f32','vcmpegt.f32','vcmpele.f32',
            'vcmpeeq.f64','vcmpene.f64','vcmpecs.f64','vcmpehs.f64','vcmpecc.f64','vcmpelo.f64','vcmpemi.f64','vcmpepl.f64','vcmpevs.f64','vcmpevc.f64','vcmpehi.f64','vcmpels.f64','vcmpege.f64','vcmpelt.f64','vcmpegt.f64','vcmpele.f64',

            'vcvteq.s16.f32','vcvtne.s16.f32','vcvtcs.s16.f32','vcvths.s16.f32','vcvtcc.s16.f32','vcvtlo.s16.f32','vcvtmi.s16.f32','vcvtpl.s16.f32','vcvtvs.s16.f32','vcvtvc.s16.f32','vcvthi.s16.f32','vcvtls.s16.f32','vcvtge.s16.f32','vcvtlt.s16.f32','vcvtgt.s16.f32','vcvtle.s16.f32',
            'vcvteq.s16.f64','vcvtne.s16.f64','vcvtcs.s16.f64','vcvths.s16.f64','vcvtcc.s16.f64','vcvtlo.s16.f64','vcvtmi.s16.f64','vcvtpl.s16.f64','vcvtvs.s16.f64','vcvtvc.s16.f64','vcvthi.s16.f64','vcvtls.s16.f64','vcvtge.s16.f64','vcvtlt.s16.f64','vcvtgt.s16.f64','vcvtle.s16.f64',
            'vcvteq.s32.f32','vcvtne.s32.f32','vcvtcs.s32.f32','vcvths.s32.f32','vcvtcc.s32.f32','vcvtlo.s32.f32','vcvtmi.s32.f32','vcvtpl.s32.f32','vcvtvs.s32.f32','vcvtvc.s32.f32','vcvthi.s32.f32','vcvtls.s32.f32','vcvtge.s32.f32','vcvtlt.s32.f32','vcvtgt.s32.f32','vcvtle.s32.f32',
            'vcvteq.s32.f64','vcvtne.s32.f64','vcvtcs.s32.f64','vcvths.s32.f64','vcvtcc.s32.f64','vcvtlo.s32.f64','vcvtmi.s32.f64','vcvtpl.s32.f64','vcvtvs.s32.f64','vcvtvc.s32.f64','vcvthi.s32.f64','vcvtls.s32.f64','vcvtge.s32.f64','vcvtlt.s32.f64','vcvtgt.s32.f64','vcvtle.s32.f64',
            'vcvteq.u16.f32','vcvtne.u16.f32','vcvtcs.u16.f32','vcvths.u16.f32','vcvtcc.u16.f32','vcvtlo.u16.f32','vcvtmi.u16.f32','vcvtpl.u16.f32','vcvtvs.u16.f32','vcvtvc.u16.f32','vcvthi.u16.f32','vcvtls.u16.f32','vcvtge.u16.f32','vcvtlt.u16.f32','vcvtgt.u16.f32','vcvtle.u16.f32',
            'vcvteq.u16.f64','vcvtne.u16.f64','vcvtcs.u16.f64','vcvths.u16.f64','vcvtcc.u16.f64','vcvtlo.u16.f64','vcvtmi.u16.f64','vcvtpl.u16.f64','vcvtvs.u16.f64','vcvtvc.u16.f64','vcvthi.u16.f64','vcvtls.u16.f64','vcvtge.u16.f64','vcvtlt.u16.f64','vcvtgt.u16.f64','vcvtle.u16.f64',
            'vcvteq.u32.f32','vcvtne.u32.f32','vcvtcs.u32.f32','vcvths.u32.f32','vcvtcc.u32.f32','vcvtlo.u32.f32','vcvtmi.u32.f32','vcvtpl.u32.f32','vcvtvs.u32.f32','vcvtvc.u32.f32','vcvthi.u32.f32','vcvtls.u32.f32','vcvtge.u32.f32','vcvtlt.u32.f32','vcvtgt.u32.f32','vcvtle.u32.f32',
            'vcvteq.u32.f64','vcvtne.u32.f64','vcvtcs.u32.f64','vcvths.u32.f64','vcvtcc.u32.f64','vcvtlo.u32.f64','vcvtmi.u32.f64','vcvtpl.u32.f64','vcvtvs.u32.f64','vcvtvc.u32.f64','vcvthi.u32.f64','vcvtls.u32.f64','vcvtge.u32.f64','vcvtlt.u32.f64','vcvtgt.u32.f64','vcvtle.u32.f64',
            'vcvteq.f16.f32','vcvtne.f16.f32','vcvtcs.f16.f32','vcvths.f16.f32','vcvtcc.f16.f32','vcvtlo.f16.f32','vcvtmi.f16.f32','vcvtpl.f16.f32','vcvtvs.f16.f32','vcvtvc.f16.f32','vcvthi.f16.f32','vcvtls.f16.f32','vcvtge.f16.f32','vcvtlt.f16.f32','vcvtgt.f16.f32','vcvtle.f16.f32',
            'vcvteq.f32.s32','vcvtne.f32.s32','vcvtcs.f32.s32','vcvths.f32.s32','vcvtcc.f32.s32','vcvtlo.f32.s32','vcvtmi.f32.s32','vcvtpl.f32.s32','vcvtvs.f32.s32','vcvtvc.f32.s32','vcvthi.f32.s32','vcvtls.f32.s32','vcvtge.f32.s32','vcvtlt.f32.s32','vcvtgt.f32.s32','vcvtle.f32.s32',
            'vcvteq.f32.u32','vcvtne.f32.u32','vcvtcs.f32.u32','vcvths.f32.u32','vcvtcc.f32.u32','vcvtlo.f32.u32','vcvtmi.f32.u32','vcvtpl.f32.u32','vcvtvs.f32.u32','vcvtvc.f32.u32','vcvthi.f32.u32','vcvtls.f32.u32','vcvtge.f32.u32','vcvtlt.f32.u32','vcvtgt.f32.u32','vcvtle.f32.u32',
            'vcvteq.f32.f16','vcvtne.f32.f16','vcvtcs.f32.f16','vcvths.f32.f16','vcvtcc.f32.f16','vcvtlo.f32.f16','vcvtmi.f32.f16','vcvtpl.f32.f16','vcvtvs.f32.f16','vcvtvc.f32.f16','vcvthi.f32.f16','vcvtls.f32.f16','vcvtge.f32.f16','vcvtlt.f32.f16','vcvtgt.f32.f16','vcvtle.f32.f16',
            'vcvteq.f32.f64','vcvtne.f32.f64','vcvtcs.f32.f64','vcvths.f32.f64','vcvtcc.f32.f64','vcvtlo.f32.f64','vcvtmi.f32.f64','vcvtpl.f32.f64','vcvtvs.f32.f64','vcvtvc.f32.f64','vcvthi.f32.f64','vcvtls.f32.f64','vcvtge.f32.f64','vcvtlt.f32.f64','vcvtgt.f32.f64','vcvtle.f32.f64',
            'vcvteq.f64.s32','vcvtne.f64.s32','vcvtcs.f64.s32','vcvths.f64.s32','vcvtcc.f64.s32','vcvtlo.f64.s32','vcvtmi.f64.s32','vcvtpl.f64.s32','vcvtvs.f64.s32','vcvtvc.f64.s32','vcvthi.f64.s32','vcvtls.f64.s32','vcvtge.f64.s32','vcvtlt.f64.s32','vcvtgt.f64.s32','vcvtle.f64.s32',
            'vcvteq.f64.u32','vcvtne.f64.u32','vcvtcs.f64.u32','vcvths.f64.u32','vcvtcc.f64.u32','vcvtlo.f64.u32','vcvtmi.f64.u32','vcvtpl.f64.u32','vcvtvs.f64.u32','vcvtvc.f64.u32','vcvthi.f64.u32','vcvtls.f64.u32','vcvtge.f64.u32','vcvtlt.f64.u32','vcvtgt.f64.u32','vcvtle.f64.u32',
            'vcvteq.f64.f32','vcvtne.f64.f32','vcvtcs.f64.f32','vcvths.f64.f32','vcvtcc.f64.f32','vcvtlo.f64.f32','vcvtmi.f64.f32','vcvtpl.f64.f32','vcvtvs.f64.f32','vcvtvc.f64.f32','vcvthi.f64.f32','vcvtls.f64.f32','vcvtge.f64.f32','vcvtlt.f64.f32','vcvtgt.f64.f32','vcvtle.f64.f32',

            'vcvtreq.s32.f32','vcvtrne.s32.f32','vcvtrcs.s32.f32','vcvtrhs.s32.f32','vcvtrcc.s32.f32','vcvtrlo.s32.f32','vcvtrmi.s32.f32','vcvtrpl.s32.f32','vcvtrvs.s32.f32','vcvtrvc.s32.f32','vcvtrhi.s32.f32','vcvtrls.s32.f32','vcvtrge.s32.f32','vcvtrlt.s32.f32','vcvtrgt.s32.f32','vcvtrle.s32.f32',
            'vcvtreq.s32.f64','vcvtrne.s32.f64','vcvtrcs.s32.f64','vcvtrhs.s32.f64','vcvtrcc.s32.f64','vcvtrlo.s32.f64','vcvtrmi.s32.f64','vcvtrpl.s32.f64','vcvtrvs.s32.f64','vcvtrvc.s32.f64','vcvtrhi.s32.f64','vcvtrls.s32.f64','vcvtrge.s32.f64','vcvtrlt.s32.f64','vcvtrgt.s32.f64','vcvtrle.s32.f64',
            'vcvtreq.u32.f32','vcvtrne.u32.f32','vcvtrcs.u32.f32','vcvtrhs.u32.f32','vcvtrcc.u32.f32','vcvtrlo.u32.f32','vcvtrmi.u32.f32','vcvtrpl.u32.f32','vcvtrvs.u32.f32','vcvtrvc.u32.f32','vcvtrhi.u32.f32','vcvtrls.u32.f32','vcvtrge.u32.f32','vcvtrlt.u32.f32','vcvtrgt.u32.f32','vcvtrle.u32.f32',
            'vcvtreq.u32.f64','vcvtrne.u32.f64','vcvtrcs.u32.f64','vcvtrhs.u32.f64','vcvtrcc.u32.f64','vcvtrlo.u32.f64','vcvtrmi.u32.f64','vcvtrpl.u32.f64','vcvtrvs.u32.f64','vcvtrvc.u32.f64','vcvtrhi.u32.f64','vcvtrls.u32.f64','vcvtrge.u32.f64','vcvtrlt.u32.f64','vcvtrgt.u32.f64','vcvtrle.u32.f64',

            'vcvtbeq.f16.f32','vcvtbne.f16.f32','vcvtbcs.f16.f32','vcvtbhs.f16.f32','vcvtbcc.f16.f32','vcvtblo.f16.f32','vcvtbmi.f16.f32','vcvtbpl.f16.f32','vcvtbvs.f16.f32','vcvtbvc.f16.f32','vcvtbhi.f16.f32','vcvtbls.f16.f32','vcvtbge.f16.f32','vcvtblt.f16.f32','vcvtbgt.f16.f32','vcvtble.f16.f32',
            'vcvtbeq.f32.f16','vcvtbne.f32.f16','vcvtbcs.f32.f16','vcvtbhs.f32.f16','vcvtbcc.f32.f16','vcvtblo.f32.f16','vcvtbmi.f32.f16','vcvtbpl.f32.f16','vcvtbvs.f32.f16','vcvtbvc.f32.f16','vcvtbhi.f32.f16','vcvtbls.f32.f16','vcvtbge.f32.f16','vcvtblt.f32.f16','vcvtbgt.f32.f16','vcvtble.f32.f16',

            'vcvtteq.f16.f32','vcvttne.f16.f32','vcvttcs.f16.f32','vcvtths.f16.f32','vcvttcc.f16.f32','vcvttlo.f16.f32','vcvttmi.f16.f32','vcvttpl.f16.f32','vcvttvs.f16.f32','vcvttvc.f16.f32','vcvtthi.f16.f32','vcvttls.f16.f32','vcvttge.f16.f32','vcvttlt.f16.f32','vcvttgt.f16.f32','vcvttle.f16.f32',
            'vcvtteq.f32.f16','vcvttne.f32.f16','vcvttcs.f32.f16','vcvtths.f32.f16','vcvttcc.f32.f16','vcvttlo.f32.f16','vcvttmi.f32.f16','vcvttpl.f32.f16','vcvttvs.f32.f16','vcvttvc.f32.f16','vcvtthi.f32.f16','vcvttls.f32.f16','vcvttge.f32.f16','vcvttlt.f32.f16','vcvttgt.f32.f16','vcvttle.f32.f16',

            'vdiveq.f32','vdivne.f32','vdivcs.f32','vdivhs.f32','vdivcc.f32','vdivlo.f32','vdivmi.f32','vdivpl.f32','vdivvs.f32','vdivvc.f32','vdivhi.f32','vdivls.f32','vdivge.f32','vdivlt.f32','vdivgt.f32','vdivle.f32',
            'vdiveq.f64','vdivne.f64','vdivcs.f64','vdivhs.f64','vdivcc.f64','vdivlo.f64','vdivmi.f64','vdivpl.f64','vdivvs.f64','vdivvc.f64','vdivhi.f64','vdivls.f64','vdivge.f64','vdivlt.f64','vdivgt.f64','vdivle.f64',

            'vmaxeq.f32','vmaxne.f32','vmaxcs.f32','vmaxhs.f32','vmaxcc.f32','vmaxlo.f32','vmaxmi.f32','vmaxpl.f32','vmaxvs.f32','vmaxvc.f32','vmaxhi.f32','vmaxls.f32','vmaxge.f32','vmaxlt.f32','vmaxgt.f32','vmaxle.f32',
            'vmineq.f32','vminne.f32','vmincs.f32','vminhs.f32','vmincc.f32','vminlo.f32','vminmi.f32','vminpl.f32','vminvs.f32','vminvc.f32','vminhi.f32','vminls.f32','vminge.f32','vminlt.f32','vmingt.f32','vminle.f32',

            'vmlaeq.f32','vmlane.f32','vmlacs.f32','vmlahs.f32','vmlacc.f32','vmlalo.f32','vmlami.f32','vmlapl.f32','vmlavs.f32','vmlavc.f32','vmlahi.f32','vmlals.f32','vmlage.f32','vmlalt.f32','vmlagt.f32','vmlale.f32',
            'vmlaeq.f64','vmlane.f64','vmlacs.f64','vmlahs.f64','vmlacc.f64','vmlalo.f64','vmlami.f64','vmlapl.f64','vmlavs.f64','vmlavc.f64','vmlahi.f64','vmlals.f64','vmlage.f64','vmlalt.f64','vmlagt.f64','vmlale.f64',

            'vmlseq.f32','vmlsne.f32','vmlscs.f32','vmlshs.f32','vmlscc.f32','vmlslo.f32','vmlsmi.f32','vmlspl.f32','vmlsvs.f32','vmlsvc.f32','vmlshi.f32','vmlsls.f32','vmlsge.f32','vmlslt.f32','vmlsgt.f32','vmlsle.f32',
            'vmlseq.f64','vmlsne.f64','vmlscs.f64','vmlshs.f64','vmlscc.f64','vmlslo.f64','vmlsmi.f64','vmlspl.f64','vmlsvs.f64','vmlsvc.f64','vmlshi.f64','vmlsls.f64','vmlsge.f64','vmlslt.f64','vmlsgt.f64','vmlsle.f64',

            'vmuleq.f32','vmulne.f32','vmulcs.f32','vmulhs.f32','vmulcc.f32','vmullo.f32','vmulmi.f32','vmulpl.f32','vmulvs.f32','vmulvc.f32','vmulhi.f32','vmulls.f32','vmulge.f32','vmullt.f32','vmulgt.f32','vmulle.f32',
            'vmuleq.f64','vmulne.f64','vmulcs.f64','vmulhs.f64','vmulcc.f64','vmullo.f64','vmulmi.f64','vmulpl.f64','vmulvs.f64','vmulvc.f64','vmulhi.f64','vmulls.f64','vmulge.f64','vmullt.f64','vmulgt.f64','vmulle.f64',

            'vnegeq.f32','vnegne.f32','vnegcs.f32','vneghs.f32','vnegcc.f32','vneglo.f32','vnegmi.f32','vnegpl.f32','vnegvs.f32','vnegvc.f32','vneghi.f32','vnegls.f32','vnegge.f32','vneglt.f32','vneggt.f32','vnegle.f32',
            'vnegeq.f64','vnegne.f64','vnegcs.f64','vneghs.f64','vnegcc.f64','vneglo.f64','vnegmi.f64','vnegpl.f64','vnegvs.f64','vnegvc.f64','vneghi.f64','vnegls.f64','vnegge.f64','vneglt.f64','vneggt.f64','vnegle.f64',

            'vnmlaeq.f32','vnmlane.f32','vnmlacs.f32','vnmlahs.f32','vnmlacc.f32','vnmlalo.f32','vnmlami.f32','vnmlapl.f32','vnmlavs.f32','vnmlavc.f32','vnmlahi.f32','vnmlals.f32','vnmlage.f32','vnmlalt.f32','vnmlagt.f32','vnmlale.f32',
            'vnmlaeq.f64','vnmlane.f64','vnmlacs.f64','vnmlahs.f64','vnmlacc.f64','vnmlalo.f64','vnmlami.f64','vnmlapl.f64','vnmlavs.f64','vnmlavc.f64','vnmlahi.f64','vnmlals.f64','vnmlage.f64','vnmlalt.f64','vnmlagt.f64','vnmlale.f64',

            'vnmlseq.f32','vnmlsne.f32','vnmlscs.f32','vnmlshs.f32','vnmlscc.f32','vnmlslo.f32','vnmlsmi.f32','vnmlspl.f32','vnmlsvs.f32','vnmlsvc.f32','vnmlshi.f32','vnmlsls.f32','vnmlsge.f32','vnmlslt.f32','vnmlsgt.f32','vnmlsle.f32',
            'vnmlseq.f64','vnmlsne.f64','vnmlscs.f64','vnmlshs.f64','vnmlscc.f64','vnmlslo.f64','vnmlsmi.f64','vnmlspl.f64','vnmlsvs.f64','vnmlsvc.f64','vnmlshi.f64','vnmlsls.f64','vnmlsge.f64','vnmlslt.f64','vnmlsgt.f64','vnmlsle.f64',

            'vnmuleq.f64','vnmulne.f64','vnmulcs.f64','vnmulhs.f64','vnmulcc.f64','vnmullo.f64','vnmulmi.f64','vnmulpl.f64','vnmulvs.f64','vnmulvc.f64','vnmulhi.f64','vnmulls.f64','vnmulge.f64','vnmullt.f64','vnmulgt.f64','vnmulle.f64',
            'vnmuleq.f32','vnmulne.f32','vnmulcs.f32','vnmulhs.f32','vnmulcc.f32','vnmullo.f32','vnmulmi.f32','vnmulpl.f32','vnmulvs.f32','vnmulvc.f32','vnmulhi.f32','vnmulls.f32','vnmulge.f32','vnmullt.f32','vnmulgt.f32','vnmulle.f32',

            'vpaddeq.f32','vpaddne.f32','vpaddcs.f32','vpaddhs.f32','vpaddcc.f32','vpaddlo.f32','vpaddmi.f32','vpaddpl.f32','vpaddvs.f32','vpaddvc.f32','vpaddhi.f32','vpaddls.f32','vpaddge.f32','vpaddlt.f32','vpaddgt.f32','vpaddle.f32',

            'vpmaxeq.f32','vpmaxne.f32','vpmaxcs.f32','vpmaxhs.f32','vpmaxcc.f32','vpmaxlo.f32','vpmaxmi.f32','vpmaxpl.f32','vpmaxvs.f32','vpmaxvc.f32','vpmaxhi.f32','vpmaxls.f32','vpmaxge.f32','vpmaxlt.f32','vpmaxgt.f32','vpmaxle.f32',
            'vpmineq.f32','vpminne.f32','vpmincs.f32','vpminhs.f32','vpmincc.f32','vpminlo.f32','vpminmi.f32','vpminpl.f32','vpminvs.f32','vpminvc.f32','vpminhi.f32','vpminls.f32','vpminge.f32','vpminlt.f32','vpmingt.f32','vpminle.f32',

            'vrecpeeq.u32','vrecpene.u32','vrecpecs.u32','vrecpehs.u32','vrecpecc.u32','vrecpelo.u32','vrecpemi.u32','vrecpepl.u32','vrecpevs.u32','vrecpevc.u32','vrecpehi.u32','vrecpels.u32','vrecpege.u32','vrecpelt.u32','vrecpegt.u32','vrecpele.u32',
            'vrecpeeq.f32','vrecpene.f32','vrecpecs.f32','vrecpehs.f32','vrecpecc.f32','vrecpelo.f32','vrecpemi.f32','vrecpepl.f32','vrecpevs.f32','vrecpevc.f32','vrecpehi.f32','vrecpels.f32','vrecpege.f32','vrecpelt.f32','vrecpegt.f32','vrecpele.f32',
            'vrecpseq.f32','vrecpsne.f32','vrecpscs.f32','vrecpshs.f32','vrecpscc.f32','vrecpslo.f32','vrecpsmi.f32','vrecpspl.f32','vrecpsvs.f32','vrecpsvc.f32','vrecpshi.f32','vrecpsls.f32','vrecpsge.f32','vrecpslt.f32','vrecpsgt.f32','vrecpsle.f32',

            'vrsqrteeq.u32','vrsqrtene.u32','vrsqrtecs.u32','vrsqrtehs.u32','vrsqrtecc.u32','vrsqrtelo.u32','vrsqrtemi.u32','vrsqrtepl.u32','vrsqrtevs.u32','vrsqrtevc.u32','vrsqrtehi.u32','vrsqrtels.u32','vrsqrtege.u32','vrsqrtelt.u32','vrsqrtegt.u32','vrsqrtele.u32',
            'vrsqrteeq.f32','vrsqrtene.f32','vrsqrtecs.f32','vrsqrtehs.f32','vrsqrtecc.f32','vrsqrtelo.f32','vrsqrtemi.f32','vrsqrtepl.f32','vrsqrtevs.f32','vrsqrtevc.f32','vrsqrtehi.f32','vrsqrtels.f32','vrsqrtege.f32','vrsqrtelt.f32','vrsqrtegt.f32','vrsqrtele.f32',
            'vrsqrtseq.f32','vrsqrtsne.f32','vrsqrtscs.f32','vrsqrtshs.f32','vrsqrtscc.f32','vrsqrtslo.f32','vrsqrtsmi.f32','vrsqrtspl.f32','vrsqrtsvs.f32','vrsqrtsvc.f32','vrsqrtshi.f32','vrsqrtsls.f32','vrsqrtsge.f32','vrsqrtslt.f32','vrsqrtsgt.f32','vrsqrtsle.f32',

            'vsqrteq.f32','vsqrtne.f32','vsqrtcs.f32','vsqrths.f32','vsqrtcc.f32','vsqrtlo.f32','vsqrtmi.f32','vsqrtpl.f32','vsqrtvs.f32','vsqrtvc.f32','vsqrthi.f32','vsqrtls.f32','vsqrtge.f32','vsqrtlt.f32','vsqrtgt.f32','vsqrtle.f32',
            'vsqrteq.f64','vsqrtne.f64','vsqrtcs.f64','vsqrths.f64','vsqrtcc.f64','vsqrtlo.f64','vsqrtmi.f64','vsqrtpl.f64','vsqrtvs.f64','vsqrtvc.f64','vsqrthi.f64','vsqrtls.f64','vsqrtge.f64','vsqrtlt.f64','vsqrtgt.f64','vsqrtle.f64',

            'vsubeq.f32','vsubne.f32','vsubcs.f32','vsubhs.f32','vsubcc.f32','vsublo.f32','vsubmi.f32','vsubpl.f32','vsubvs.f32','vsubvc.f32','vsubhi.f32','vsubls.f32','vsubge.f32','vsublt.f32','vsubgt.f32','vsuble.f32',
            'vsubeq.f64','vsubne.f64','vsubcs.f64','vsubhs.f64','vsubcc.f64','vsublo.f64','vsubmi.f64','vsubpl.f64','vsubvs.f64','vsubvc.f64','vsubhi.f64','vsubls.f64','vsubge.f64','vsublt.f64','vsubgt.f64','vsuble.f64'
            ),
        /* Registers */
        35 => array(
            /* General-Purpose Registers */
            'r0','r1','r2','r3','r4','r5','r6','r7',
            'r8','r9','r10','r11','r12','r13','r14','r15',
            /* Scratch Registers */
            'a1','a2','a3','a4',
            /* Variable Registers */
            'v1','v2','v3','v4','v5','v6','v7','v8',
            /* Other Synonims for General-Purpose Registers */
            'sb','sl','fp','ip','sp','lr','pc',
            /* WMMX Data Registers */
            'wr0','wr1','wr2','wr3','wr4','wr5','wr6','wr7',
            'wr8','wr9','wr10','wr11','wr12','wr13','wr14','wr15',
            /* WMMX Control Registers */
            'wcid','wcon','wcssf','wcasf',
            /* WMMX-Mapped General-Purpose Registers */
            'wcgr0','wcgr1','wcgr2','wcgr3',
            /* VFPv3 Registers */
            's0','s1','s2','s3','s4','s5','s6','s7',
            's8','s9','s10','s11','s12','s13','s14','s15',
            's16','s17','s18','s19','s20','s21','s22','s23',
            's24','s25','s26','s27','s28','s29','s30','s31',
            /* VFPv3/NEON Registers */
            'd0','d1','d2','d3','d4','d5','d6','d7',
            'd8','d9','d10','d11','d12','d13','d14','d15',
            'd16','d17','d18','d19','d20','d21','d22','d23',
            'd24','d25','d26','d27','d28','d29','d30','d31',
            /* NEON Registers */
            'q0','q1','q2','q3','q4','q5','q6','q7',
            'q8','q9','q10','q11','q12','q13','q14','q15'
            )
        ),
    'SYMBOLS' => array(
        '[', ']', '(', ')',
        '+', '-', '*', '/', '%',
        '.', ',', ';', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        9 => false,
        10 => false,
        11 => false,
        12 => false,
        13 => false,
        14 => false,
        15 => false,
        16 => false,
        17 => false,
        18 => false,
        19 => false,
        20 => false,
        21 => false,
        22 => false,
        23 => false,
        24 => false,
        25 => false,
        26 => false,
        27 => false,
        28 => false,
        29 => false,
        30 => false,
        31 => false,
        32 => false,
        33 => false,
        34 => false,
        35 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            /* Unconditional Data Processing Instructions */
            1 => 'color: #00007f; font-weight: normal; font-style: normal;',
            /* Conditional Data Processing Instructions */
            2 => 'color: #00007f; font-weight: normal; font-style: italic;',
            /* Unconditional Memory Access Instructions */
            3 => 'color: #00007f; font-weight: normal; font-style: normal;',
            /* Conditional Memory Access Instructions */
            4 => 'color: #00007f; font-weight: normal; font-style: italic;',
            /* Unconditional Flags Changing Instructions */
            5 => 'color: #00007f; font-weight: bold; font-style: normal;',
            /* Conditional Flags Changing Instructions */
            6 => 'color: #00007f; font-weight: bold; font-style: italic;',
            /* Unconditional Flow Control Instructions */
            7 => 'color: #0000ff; font-weight: normal; font-style: normal;',
            /* Conditional Flow Control Instructions */
            8 => 'color: #0000ff; font-weight: normal; font-style: italic;',
            /* Unconditional Syncronization Instructions */
            9 => 'color: #00007f; font-weight: normal; font-style: normal;',
            /* Conditional Syncronization Instructions */
            10 => 'color: #00007f; font-weight: normal; font-style: italic;',
            /* Unonditional ARMv6 SIMD */
            11 => 'color: #b00040; font-weight: normal; font-style: normal;',
            /* Conditional ARMv6 SIMD */
            12 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional Coprocessor Instructions */
            13 => 'color: #00007f; font-weight: normal; font-style: normal;',
            /* Conditional Coprocessor Instructions */
            14 => 'color: #00007f; font-weight: bold; font-style: italic;',
            /* Unconditional System Instructions */
            15 => 'color: #00007f; font-weight: normal; font-style: normal;',
            /* Conditional System Instructions */
            16 => 'color: #00007f; font-weight: bold; font-style: italic;',
            /* Unconditional WMMX/WMMX2 SIMD Instructions */
            17 => 'color: #b00040; font-weight: normal; font-style: normal;',
            /* Conditional WMMX/WMMX2 SIMD Instructions */
            18 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional VFPv3 & NEON SIMD Memory Access Instructions */
            19 => 'color: #b00040; font-weight: normal; font-style: normal;',
            /* Unconditional NEON SIMD Logical Instructions */
            20 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional NEON SIMD ARM Registers Interop Instructions */
            21 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional NEON SIMD Bit/Byte-Level Instructions */
            22 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional NEON SIMD Universal Integer Instructions */
            23 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional NEON SIMD Signed Integer Instructions */
            24 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional NEON SIMD Unsigned Integer Instructions */
            25 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Unconditional VFPv3 & NEON SIMD Floating-Point Instructions */
            26 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional VFPv3 & NEON SIMD Memory Access Instructions */
            27 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional NEON SIMD Logical Instructions */
            28 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional NEON SIMD ARM Registers Interop Instructions */
            29 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional NEON SIMD Bit/Byte-Level Instructions */
            30 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional NEON SIMD Universal Integer Instructions */
            31 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional NEON SIMD Signed Integer Instructions */
            32 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional NEON SIMD Unsigned Integer Instructions */
            33 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Conditional VFPv3 & NEON SIMD Floating-Point Instructions */
            34 => 'color: #b00040; font-weight: normal; font-style: italic;',
            /* Registers */
            35 => 'color: #46aa03; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #adadad; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        9 => '',
        10 => '',
        11 => '',
        12 => '',
        13 => '',
        14 => '',
        15 => '',
        16 => '',
        17 => '',
        18 => '',
        19 => '',
        20 => '',
        21 => '',
        22 => '',
        23 => '',
        24 => '',
        25 => '',
        26 => '',
        27 => '',
        28 => '',
        29 => '',
        30 => '',
        31 => '',
        32 => '',
        33 => '',
        34 => '',
        35 => ''
        ),
    'NUMBERS' =>
        GESHI_NUMBER_BIN_PREFIX_PERCENT |
        GESHI_NUMBER_BIN_SUFFIX |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_HEX_SUFFIX |
        GESHI_NUMBER_OCT_SUFFIX |
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])"
        )
    )
);

?>geshi/geshi/gml.php0000664000175000017500000010523012014173406013455 0ustar  benbebenbe5 and KEYWORDS=>6 sections (actually, they were empty).
 *     I was planning of using those for the GML functions available only in the
 *     registered version of the program, but not anymore.
 *
 * 2005/06/26 (1.0.3)
 *  -  First Release.
 *
 * TODO (updated 2005/11/11)
 * -------------------------
 *  -  Test it for a while and make the appropiate corrections.
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'GML',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'"),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        // language keywords
        1 => array(
            'break', 'continue', 'do', 'until', 'if', 'else',
            'exit', 'for', 'repeat', 'return', 'switch',
            'case', 'default', 'var', 'while', 'with', 'div', 'mod',
            // GML Language overview
            'self', 'other', 'all', 'noone', 'global',
            ),
        // modifiers and built-in variables
        2 => array(
            // Game play
            'x','y','xprevious','yprevious','xstart','ystart','hspeed','vspeed','direction','speed',
            'friction','gravity','gravity_direction',
            'path_index','path_position','path_positionprevious','path_speed','path_orientation',
            'path_endaction',
            'object_index','id','mask_index','solid','persistent','instance_count','instance_id',
            'room_speed','fps','current_time','current_year','current_month','current_day','current_weekday',
            'current_hour','current_minute','current_second','alarm','timeline_index','timeline_position',
            'timeline_speed',
            'room','room_first','room_last','room_width','room_height','room_caption','room_persistent',
            'score','lives','health','show_score','show_lives','show_health','caption_score','caption_lives',
            'caption_health',
            'event_type','event_number','event_object','event_action',
            'error_occurred','error_last',
            // User interaction
            'keyboard_lastkey','keyboard_key','keyboard_lastchar','keyboard_string',
            'mouse_x','mouse_y','mouse_button','mouse_lastbutton',
            // Game Graphics
            'sprite_index','sprite_width','sprite_height','sprite_xoffset','sprite_yoffset',
            'image_number','image_index','image_speed','image_xscale','image_yscale','image_angle',
            'image_alpha','image_blend','bbox_left','bbox_right','bbox_top','bbox_bottom',
            'background_color','background_showcolor','background_visible','background_foreground',
            'background_index','background_x','background_y','background_width','background_height',
            'background_htiled','background_vtiled','background_xscale','background_yscale',
            'background_hspeed','background_vspeed','background_blend','background_alpha',
            'background','left, top, width, height','depth','visible','xscale','yscale','blend','alpha',
            'view_enabled','view_current','view_visible','view_yview','view_wview','view_hview','view_xport',
            'view_yport','view_wport','view_hport','view_angle','view_hborder','view_vborder','view_hspeed',
            'view_vspeed','view_object',
            'transition_kind',
            // Files, registry and executing programs
            'game_id','working_directory','temp_directory',
            'secure_mode',
            // Creating particles
            'xmin', 'xmax', 'ymin', 'ymax','shape','distribution','particle type','number',
            'force','dist','kind','additive', 'parttype1', 'parttype2'
            ),
        // functions
        3 => array(
            // Computing things
            'random','choose','abs','sign','round','floor','ceil','frac','sqrt','sqr','power','exp','ln',
            'log2','log10','logn','sin','cos','tan','arcsin','arccos','arctan','arctan2','degtorad',
            'radtodeg','min','max','mean','median','point_distance','point_direction','lengthdir_x',
            'lengthdir_y','is_real','is_string',
            'chr','ord','real','string','string_format','string_length','string_pos','string_copy',
            'string_char_at','string_delete','string_insert','string_replace','string_replace_all',
            'string_count','string_lower','string_upper','string_repeat','string_letters','string_digits',
            'string_lettersdigits','clipboard_has_text','clipboard_get_text','clipboard_set_text',
            'date_current_datetime','date_current_date','date_current_time','date_create_datetime',
            'date_create_date','date_create_time','date_valid_datetime','date_valid_date','date_valid_time',
            'date_inc_year','date_inc_month','date_inc_week','date_inc_day','date_inc_hour',
            'date_inc_minute','date_inc_second','date_get_year','date_get_month','date_get_week',
            'date_get_day','date_get_hour', 'date_get_minute','date_get_second','date_get_weekday',
            'date_get_day_of_year','date_get_hour_of_year','date_get_minute_of_year',
            'date_get_second_of_year','date_year_span','date_month_span','date_week_span','date_day_span',
            'date_hour_span','date_minute_span','date_second_span','date_compare_datetime',
            'date_compare_date','date_compare_time','date_date_of','date_time_of','date_datetime_string',
            'date_date_string','date_time_string','date_days_in_month','date_days_in_year','date_leap_year',
            'date_is_today',
            // Game play
            'motion_set','motion_add','place_free','place_empty','place_meeting','place_snapped',
            'move_random','move_snap','move_wrap','move_towards_point','move_bounce_solid','move_bounce_all',
            'move_contact_solid','move_contact_all','move_outside_solid','move_outside_all',
            'distance_to_point','distance_to_object','position_empty','position_meeting',
            'path_start','path_end',
            'mp_linear_step','mp_linear_step_object','mp_potential_step','mp_potential_step_object',
            'mp_potential_settings','mp_linear_path','mp_linear_path_object', 'mp_potential_path',
            'mp_potential_path_object','mp_grid_create','mp_grid_destroy','mp_grid_clear_all',
            'mp_grid_clear_cell','mp_grid_clear_rectangle','mp_grid_add_cell','mp_grid_add_rectangle',
            'mp_grid_add_instances','mp_grid_path','mp_grid_draw',
            'collision_point','collision_rectangle','collision_circle','collision_ellipse','collision_line',
            'instance_find','instance_exists','instance_number','instance_position','instance_nearest',
            'instance_furthest','instance_place','instance_create','instance_copy','instance_destroy',
            'instance_change','position_destroy','position_change',
            'instance_deactivate_all','instance_deactivate_object','instance_deactivate_region',
            'instance_activate_all','instance_activate_object','instance_activate_region',
            'sleep',
            'room_goto','room_goto_previous','room_goto_next','room_restart','room_previous','room_next',
            'game_end','game_restart','game_save','game_load',
            'event_perform', 'event_perform_object','event_user','event_inherited',
            'show_debug_message','variable_global_exists','variable_local_exists','variable_global_get',
            'variable_global_array_get','variable_global_array2_get','variable_local_get',
            'variable_local_array_get','variable_local_array2_get','variable_global_set',
            'variable_global_array_set','variable_global_array2_set','variable_local_set',
            'variable_local_array_set','variable_local_array2_set','set_program_priority',
            // User interaction
            'keyboard_set_map','keyboard_get_map','keyboard_unset_map','keyboard_check',
            'keyboard_check_pressed','keyboard_check_released','keyboard_check_direct',
            'keyboard_get_numlock','keyboard_set_numlock','keyboard_key_press','keyboard_key_release',
            'keyboard_clear','io_clear','io_handle','keyboard_wait',
            'mouse_check_button','mouse_check_button_pressed','mouse_check_button_released','mouse_clear',
            'mouse_wait',
            'joystick_exists','joystick_name','joystick_axes','joystick_buttons','joystick_has_pov',
            'joystick_direction','joystick_check_button','joystick_xpos','joystick_ypos','joystick_zpos',
            'joystick_rpos','joystick_upos','joystick_vpos','joystick_pov',
            // Game Graphics
            'draw_sprite','draw_sprite_stretched','draw_sprite_tiled','draw_sprite_part','draw_background',
            'draw_background_stretched','draw_background_tiled','draw_background_part','draw_sprite_ext',
            'draw_sprite_stretched_ext','draw_sprite_tiled_ext','draw_sprite_part_ext','draw_sprite_general',
            'draw_background_ext','draw_background_stretched_ext','draw_background_tiled_ext',
            'draw_background_part_ext','draw_background_general',
            'draw_clear','draw_clear_alpha','draw_point','draw_line','draw_rectangle','draw_roundrect',
            'draw_triangle','draw_circle','draw_ellipse','draw_arrow','draw_button','draw_path',
            'draw_healthbar','draw_set_color','draw_set_alpha','draw_get_color','draw_get_alpha',
            'make_color_rgb','make_color_hsv','color_get_red','color_get_green','color_get_blue',
            'color_get_hue','color_get_saturation','color_get_value','merge_color','draw_getpixel',
            'screen_save','screen_save_part',
            'draw_set_font','draw_set_halign','draw_set_valign','draw_text','draw_text_ext','string_width',
            'string_height','string_width_ext','string_height_ext','draw_text_transformed',
            'draw_text_ext_transformed','draw_text_color','draw_text_ext_color',
            'draw_text_transformed_color','draw_text_ext_transformed_color',
            'draw_point_color','draw_line_color','draw_rectangle_color','draw_roundrect_color',
            'draw_triangle_color','draw_circle_color','draw_ellipse_color','draw_primitive_begin',
            'draw_vertex','draw_vertex_color','draw_primitive_end','sprite_get_texture',
            'background_get_texture','texture_preload','texture_set_priority',
            'texture_get_width','texture_get_height','draw_primitive_begin_texture','draw_vertex_texture',
            'draw_vertex_texture_color','texture_set_interpolation',
            'texture_set_blending','texture_set_repeat','draw_set_blend_mode','draw_set_blend_mode_ext',
            'surface_create','surface_free','surface_exists','surface_get_width','surface_get_height',
            'surface_get_texture','surface_set_target','surface_reset_target','surface_getpixel',
            'surface_save','surface_save_part','draw_surface','draw_surface_stretched','draw_surface_tiled',
            'draw_surface_part','draw_surface_ext','draw_surface_stretched_ext','draw_surface_tiled_ext',
            'draw_surface_part_ext','draw_surface_general','surface_copy','surface_copy_part',
            'tile_add','tile_delete','tile_exists','tile_get_x','tile_get_y','tile_get_left','tile_get_top',
            'tile_get_width','tile_get_height','tile_get_depth','tile_get_visible','tile_get_xscale',
            'tile_get_yscale','tile_get_background','tile_get_blend','tile_get_alpha','tile_set_position',
            'tile_set_region','tile_set_background','tile_set_visible','tile_set_depth','tile_set_scale',
            'tile_set_blend','tile_set_alpha','tile_layer_hide','tile_layer_show','tile_layer_delete',
            'tile_layer_shift','tile_layer_find','tile_layer_delete_at','tile_layer_depth',
            'display_get_width','display_get_height','display_get_colordepth','display_get_frequency',
            'display_set_size','display_set_colordepth','display_set_frequency','display_set_all',
            'display_test_all','display_reset','display_mouse_get_x','display_mouse_get_y','display_mouse_set',
            'window_set_visible','window_get_visible','window_set_fullscreen','window_get_fullscreen',
            'window_set_showborder','window_get_showborder','window_set_showicons','window_get_showicons',
            'window_set_stayontop','window_get_stayontop','window_set_sizeable','window_get_sizeable',
            'window_set_caption','window_get_caption','window_set_cursor', 'window_get_cursor',
            'window_set_color','window_get_color','window_set_region_scale','window_get_region_scale',
            'window_set_position','window_set_size','window_set_rectangle','window_center','window_default',
            'window_get_x','window_get_y','window_get_width','window_get_height','window_mouse_get_x',
            'window_mouse_get_y','window_mouse_set',
            'window_set_region_size','window_get_region_width','window_get_region_height',
            'window_view_mouse_get_x','window_view_mouse_get_y','window_view_mouse_set',
            'window_views_mouse_get_x','window_views_mouse_get_y','window_views_mouse_set',
            'screen_redraw','screen_refresh','set_automatic_draw','set_synchronization','screen_wait_vsync',
            // Sound and music)
            'sound_play','sound_loop','sound_stop','sound_stop_all','sound_isplaying','sound_volume',
            'sound_global_volume','sound_fade','sound_pan','sound_background_tempo','sound_set_search_directory',
            'sound_effect_set','sound_effect_chorus','sound_effect_echo',    'sound_effect_flanger',
            'sound_effect_gargle','sound_effect_reverb','sound_effect_compressor','sound_effect_equalizer',
            'sound_3d_set_sound_position','sound_3d_set_sound_velocity','sound_3d_set_sound_distance',
            'sound_3d_set_sound_cone',
            'cd_init','cd_present','cd_number','cd_playing','cd_paused','cd_track','cd_length',
            'cd_track_length','cd_position','cd_track_position','cd_play','cd_stop','cd_pause','cd_resume',
            'cd_set_position','cd_set_track_position','cd_open_door','cd_close_door','MCI_command',
            // Splash screens, highscores, and other pop-ups
            'show_text','show_image','show_video','show_info','load_info',
            'show_message','show_message_ext','show_question','get_integer','get_string',
            'message_background','message_alpha','message_button','message_text_font','message_button_font',
            'message_input_font','message_mouse_color','message_input_color','message_caption',
            'message_position','message_size','show_menu','show_menu_pos','get_color','get_open_filename',
            'get_save_filename','get_directory','get_directory_alt','show_error',
            'highscore_show','highscore_set_background','highscore_set_border','highscore_set_font',
            'highscore_set_colors','highscore_set_strings','highscore_show_ext','highscore_clear',
            'highscore_add','highscore_add_current','highscore_value','highscore_name','draw_highscore',
            // Resources
            'sprite_exists','sprite_get_name','sprite_get_number','sprite_get_width','sprite_get_height',
            'sprite_get_transparent','sprite_get_smooth','sprite_get_preload','sprite_get_xoffset',
            'sprite_get_yoffset','sprite_get_bbox_left','sprite_get_bbox_right','sprite_get_bbox_top',
            'sprite_get_bbox_bottom','sprite_get_bbox_mode','sprite_get_precise',
            'sound_exists','sound_get_name','sound_get_kind','sound_get_preload','sound_discard',
            'sound_restore',
            'background_exists','background_get_name','background_get_width','background_get_height',
            'background_get_transparent','background_get_smooth','background_get_preload',
            'font_exists','font_get_name','font_get_fontname','font_get_bold','font_get_italic',
            'font_get_first','font_get_last',
            'path_exists','path_get_name','path_get_length','path_get_kind','path_get_closed',
            'path_get_precision','path_get_number','path_get_point_x','path_get_point_y',
            'path_get_point_speed','path_get_x','path_get_y','path_get_speed',
            'script_exists','script_get_name','script_get_text',
            'timeline_exists','timeline_get_name',
            'object_exists','object_get_name','object_get_sprite','object_get_solid','object_get_visible',
            'object_get_depth','object_get_persistent','object_get_mask','object_get_parent',
            'object_is_ancestor',
            'room_exists','room_get_name',
            // Changing resources
            'sprite_set_offset','sprite_set_bbox_mode','sprite_set_bbox','sprite_set_precise',
            'sprite_duplicate','sprite_assign','sprite_merge','sprite_add','sprite_replace',
            'sprite_create_from_screen','sprite_add_from_screen','sprite_create_from_surface',
            'sprite_add_from_surface','sprite_delete','sprite_set_alpha_from_sprite',
            'sound_add','sound_replace','sound_delete',
            'background_duplicate','background_assign','background_add','background_replace',
            'background_create_color','background_create_gradient','background_create_from_screen',
            'background_create_from_surface','background_delete','background_set_alpha_from_background',
            'font_add','font_add_sprite','font_replace_sprite','font_delete',
            'path_set_kind','path_set_closed','path_set_precision','path_add','path_delete','path_duplicate',
            'path_assign','path_append','path_add_point','path_insert_point','path_change_point',
            'path_delete_point','path_clear_points','path_reverse','path_mirror','path_flip','path_rotate',
            'path_scale','path_shift',
            'execute_string','execute_file','script_execute',
            'timeline_add','timeline_delete','timeline_moment_add','timeline_moment_clear',
            'object_set_sprite','object_set_solid','object_set_visible','object_set_depth',
            'object_set_persistent','object_set_mask','object_set_parent','object_add','object_delete',
            'object_event_add','object_event_clear',
            'room_set_width','room_set_height','room_set_caption','room_set_persistent','room_set_code',
            'room_set_background_color','room_set_background','room_set_view','room_set_view_enabled',
            'room_add','room_duplicate','room_assign','room_instance_add','room_instance_clear',
            'room_tile_add','room_tile_add_ext','room_tile_clear',
            // Files, registry and executing programs
            'file_text_open_read','file_text_open_write','file_text_open_append','file_text_close',
            'file_text_write_string','file_text_write_real','file_text_writeln','file_text_read_string',
            'file_text_read_real','file_text_readln','file_text_eof','file_exists','file_delete',
            'file_rename','file_copy','directory_exists','directory_create','file_find_first',
            'file_find_next','file_find_close','file_attributes', 'filename_name','filename_path',
            'filename_dir','filename_drive','filename_ext','filename_change_ext','file_bin_open',
            'file_bin_rewrite','file_bin_close','file_bin_size','file_bin_position','file_bin_seek',
            'file_bin_write_byte','file_bin_read_byte','parameter_count','parameter_string',
            'environment_get_variable',
            'registry_write_string','registry_write_real','registry_read_string','registry_read_real',
            'registry_exists','registry_write_string_ext','registry_write_real_ext',
            'registry_read_string_ext','registry_read_real_ext','registry_exists_ext','registry_set_root',
            'ini_open','ini_close','ini_read_string','ini_read_real','ini_write_string','ini_write_real',
            'ini_key_exists','ini_section_exists','ini_key_delete','ini_section_delete',
            'execute_program','execute_shell',
            // Data structures
            'ds_stack_create','ds_stack_destroy','ds_stack_clear','ds_stack_size','ds_stack_empty',
            'ds_stack_push','ds_stack_pop','ds_stack_top',
            'ds_queue_create','ds_queue_destroy','ds_queue_clear','ds_queue_size','ds_queue_empty',
            'ds_queue_enqueue','ds_queue_dequeue','ds_queue_head','ds_queue_tail',
            'ds_list_create','ds_list_destroy','ds_list_clear','ds_list_size','ds_list_empty','ds_list_add',
            'ds_list_insert','ds_list_replace','ds_list_delete','ds_list_find_index','ds_list_find_value',
            'ds_list_sort',
            'ds_map_create','ds_map_destroy','ds_map_clear','ds_map_size','ds_map_empty','ds_map_add',
            'ds_map_replace','ds_map_delete','ds_map_exists','ds_map_find_value','ds_map_find_previous',
            'ds_map_find_next','ds_map_find_first','ds_map_find_last',
            'ds_priority_create','ds_priority_destroy','ds_priority_clear','ds_priority_size',
            'ds_priority_empty','ds_priority_add','ds_priority_change_priority','ds_priority_find_priority',
            'ds_priority_delete_value','ds_priority_delete_min','ds_priority_find_min',
            'ds_priority_delete_max','ds_priority_find_max',
            'ds_grid_create','ds_grid_destroy','ds_grid_resize','ds_grid_width','ds_grid_height',
            'ds_grid_clear','ds_grid_set','ds_grid_add','ds_grid_multiply','ds_grid_set_region',
            'ds_grid_add_region','ds_grid_multiply_region','ds_grid_set_disk','ds_grid_add_disk',
            'ds_grid_multiply_disk','ds_grid_get','ds_grid_get_sum','ds_grid_get_max','ds_grid_get_min',
            'ds_grid_get_mean','ds_grid_get_disk_sum','ds_grid_get_disk_min','ds_grid_get_disk_max',
            'ds_grid_get_disk_mean','ds_grid_value_exists','ds_grid_value_x','ds_grid_value_y',
            'ds_grid_value_disk_exists','ds_grid_value_disk_x','ds_grid_value_disk_y',
            // Creating particles
            'effect_create_below','effect_create_above','effect_clear',
            'part_type_create','part_type_destroy','part_type_exists','part_type_clear','part_type_shape',
            'part_type_sprite','part_type_size','part_type_scale',
            'part_type_orientation','part_type_color1','part_type_color2','part_type_color3',
            'part_type_color_mix','part_type_color_rgb','part_type_color_hsv',
            'part_type_alpha1','part_type_alpha2','part_type_alpha3','part_type_blend','part_type_life',
            'part_type_step','part_type_death','part_type_speed','part_type_direction','part_type_gravity',
            'part_system_create','part_system_destroy','part_system_exists','part_system_clear',
            'part_system_draw_order','part_system_depth','part_system_position',
            'part_system_automatic_update','part_system_automatic_draw','part_system_update',
            'part_system_drawit','part_particles_create','part_particles_create_color',
            'part_particles_clear','part_particles_count',
            'part_emitter_create','part_emitter_destroy','part_emitter_destroy_all','part_emitter_exists',
            'part_emitter_clear','part_emitter_region','part_emitter_burst','part_emitter_stream',
            'part_attractor_create','part_attractor_destroy','part_attractor_destroy_all',
            'part_attractor_exists','part_attractor_clear','part_attractor_position','part_attractor_force',
            'part_destroyer_create','part_destroyer_destroy','part_destroyer_destroy_all',
            'part_destroyer_exists','part_destroyer_clear','part_destroyer_region',
            'part_deflector_create','part_deflector_destroy','part_deflector_destroy_all',
            'part_deflector_exists','part_deflector_clear','part_deflector_region','part_deflector_kind',
            'part_deflector_friction',
            'part_changer_create','part_changer_destroy','part_changer_destroy_all','part_changer_exists',
            'part_changer_clear','part_changer_region','part_changer_types','part_changer_kind',
            // Multiplayer games
            'mplay_init_ipx','mplay_init_tcpip','mplay_init_modem','mplay_init_serial',
            'mplay_connect_status','mplay_end','mplay_ipaddress',
            'mplay_session_create','mplay_session_find','mplay_session_name','mplay_session_join',
            'mplay_session_mode','mplay_session_status','mplay_session_end',
            'mplay_player_find','mplay_player_name','mplay_player_id',
            'mplay_data_write','mplay_data_read','mplay_data_mode',
            'mplay_message_send','mplay_message_send_guaranteed','mplay_message_receive','mplay_message_id',
            'mplay_message_value','mplay_message_player','mplay_message_name','mplay_message_count',
            'mplay_message_clear',
            // Using DLL's
            'external_define','external_call','external_free','window_handle',
            // 3D Graphics
            'd3d_start','d3d_end','d3d_set_hidden','d3d_set_perspective',
            'd3d_set_depth',
            'd3d_primitive_begin','d3d_vertex','d3d_vertex_color','d3d_primitive_end',
            'd3d_primitive_begin_texture','d3d_vertex_texture','d3d_vertex_texture_color','d3d_set_culling',
            'd3d_draw_block','d3d_draw_cylinder','d3d_draw_cone','d3d_draw_ellipsoid','d3d_draw_wall',
            'd3d_draw_floor',
            'd3d_set_projection','d3d_set_projection_ext','d3d_set_projection_ortho',
            'd3d_set_projection_perspective',
            'd3d_transform_set_identity','d3d_transform_set_translation','d3d_transform_set_scaling',
            'd3d_transform_set_rotation_x','d3d_transform_set_rotation_y','d3d_transform_set_rotation_z',
            'd3d_transform_set_rotation_axis','d3d_transform_add_translation','d3d_transform_add_scaling',
            'd3d_transform_add_rotation_x','d3d_transform_add_rotation_y','d3d_transform_add_rotation_z',
            'd3d_transform_add_rotation_axis','d3d_transform_stack_clear','d3d_transform_stack_empty',
            'd3d_transform_stack_push','d3d_transform_stack_pop','d3d_transform_stack_top',
            'd3d_transform_stack_discard',
            'd3d_set_fog',
            'd3d_set_lighting','d3d_set_shading','d3d_light_define_direction','d3d_light_define_point',
            'd3d_light_enable','d3d_vertex_normal','d3d_vertex_normal_color','d3d_vertex_normal_texture',
            'd3d_vertex_normal_texture_color',
            'd3d_model_create','d3d_model_destroy','d3d_model_clear','d3d_model_save','d3d_model_load',
            'd3d_model_draw','d3d_model_primitive_begin','d3d_model_vertex','d3d_model_vertex_color',
            'd3d_model_vertex_texture','d3d_model_vertex_texture_color','d3d_model_vertex_normal',
            'd3d_model_vertex_normal_color','d3d_model_vertex_normal_texture',
            'd3d_model_vertex_normal_texture_color','d3d_model_primitive_end','d3d_model_block',
            'd3d_model_cylinder','d3d_model_cone','d3d_model_ellipsoid','d3d_model_wall','d3d_model_floor'
            ),
        // constants
        4 => array(
            'true', 'false', 'pi',
            'ev_destroy','ev_step','ev_alarm','ev_keyboard','ev_mouse','ev_collision','ev_other','ev_draw',
            'ev_keypress','ev_keyrelease','ev_left_button','ev_right_button','ev_middle_button',
            'ev_no_button','ev_left_press','ev_right_press','ev_middle_press','ev_left_release',
            'ev_right_release','ev_middle_release','ev_mouse_enter','ev_mouse_leave','ev_mouse_wheel_up',
            'ev_mouse_wheel_down','ev_global_left_button','ev_global_right_button','ev_global_middle_button',
            'ev_global_left_press','ev_global_right_press','ev_global_middle_press','ev_global_left_release',
            'ev_global_right_release','ev_global_middle_release','ev_joystick1_left','ev_joystick1_right',
            'ev_joystick1_up','ev_joystick1_down','ev_joystick1_button1','ev_joystick1_button2',
            'ev_joystick1_button3','ev_joystick1_button4','ev_joystick1_button5','ev_joystick1_button6',
            'ev_joystick1_button7','ev_joystick1_button8','ev_joystick2_left','ev_joystick2_right',
            'ev_joystick2_up','ev_joystick2_down','ev_joystick2_button1','ev_joystick2_button2',
            'ev_joystick2_button3','ev_joystick2_button4','ev_joystick2_button5','ev_joystick2_button6',
            'ev_joystick2_button7','ev_joystick2_button8',
            'ev_outside','ev_boundary','ev_game_start','ev_game_end','ev_room_start','ev_room_end',
            'ev_no_more_lives','ev_no_more_health','ev_animation_end','ev_end_of_path','ev_user0','ev_user1',
            'ev_user2','ev_user3','ev_user4','ev_user5','ev_user6','ev_user7','ev_user8','ev_user9',
            'ev_user10','ev_user11','ev_user12','ev_user13','ev_user14','ev_user15','ev_step_normal',
            'ev_step_begin','ev_step_end',
            'vk_nokey','vk_anykey','vk_left','vk_right','vk_up','vk_down','vk_enter','vk_escape','vk_space',
            'vk_shift','vk_control','vk_alt','vk_backspace','vk_tab','vk_home','vk_end','vk_delete',
            'vk_insert','vk_pageup','vk_pagedown','vk_pause','vk_printscreen',
            'vk_f1','vk_f2','vk_f3','vk_f4','vk_f5','vk_f6','vk_f7','vk_f8','vk_f9','vk_f10','vk_f11','vk_f12',
            'vk_numpad0','vk_numpad1','vk_numpad2','vk_numpad3','vk_numpad4','vk_numpad5','vk_numpad6',
            'vk_numpad7','vk_numpad8','vk_numpad9', 'vk_multiply','vk_divide','vk_add','vk_subtract',
            'vk_decimal','vk_lshift','vk_lcontrol','vk_lalt','vk_rshift','vk_rcontrol','vk_ralt',
            'c_aqua','c_black','c_blue','c_dkgray','c_fuchsia','c_gray','c_green','c_lime','c_ltgray',
            'c_maroon','c_navy','c_olive','c_purple','c_red','c_silver','c_teal','c_white','c_yellow',
            'fa_left', 'fa_center','fa_right','fa_top','fa_middle','fa_bottom',
            'pr_pointlist','pr_linelist','pr_linestrip','pr_trianglelist','pr_trianglestrip',
            'pr_trianglefan',
            'cr_none','cr_arrow','cr_cross','cr_beam','cr_size_nesw','cr_size_ns','cr_size_nwse',
            'cr_size_we','cr_uparrow','cr_hourglass','cr_drag','cr_nodrop','cr_hsplit','cr_vsplit',
            'cr_multidrag','cr_sqlwait','cr_no','cr_appstart','cr_help','cr_handpoint','cr_size_all',
            'se_chorus','se_echo','se_flanger','se_gargle','se_reverb','se_compressor','se_equalizer',
            'fa_readonly','fa_hidden','fa_sysfile','fa_volumeid','fa_directory','fa_archive',
            'pt_shape_pixel','pt_shape_disk','pt_shape_square','pt_shape_line','pt_shape_star',
            'pt_shape_circle','pt_shape_ring','pt_shape_sphere','pt_shape_flare','pt_shape_spark',
            'pt_shape_explosion','pt_shape_cloud','pt_shape_smoke','pt_shape_snow',
            'ps_shape_rectangle','ps_shape_ellipse ','ps_shape_diamond','ps_shape_line',
            'ps_distr_linear','ps_distr_gaussian','ps_force_constant','ps_force_linear','ps_force_quadratic',
            'ps_deflect_horizontal', 'ps_deflect_vertical',
            'ps_change_motion','ps_change_shape','ps_change_all'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']',
        '&&', '||', '^^', '&', '|', '^',
        '<', '<=', '==', '!=', '>', '>=', '=',
        '<<', '>>',
        '+=', '-=', '*=', '/=',
        '+', '-', '*', '/',
        '!', '~', ',', ';'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'font-weight: bold; color: #000000;',
            2 => 'font-weight: bold; color: #000000;',
            3 => 'color: navy;',
            4 => 'color: #663300;',
            ),
        'COMMENTS' => array(
            1 => 'font-style: italic; color: green;',
            'MULTI' => 'font-style: italic; color: green;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;' //'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66; font-weight: bold;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/6502kickass.php0000664000175000017500000002346412014173414014652 0ustar  benbebenbe 'MOS 6502 (6510) Kick Assembler format',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* 6502/6510 Opcodes including undocumented opcodes as Kick Assembler 3.13 does not make a distinction - they are ALL valid. */
        1 => array(
            'adc', 'ahx', 'alr', 'anc', 'anc2', 'and', 'arr', 'asl',
            'axs', 'bcc', 'bcs', 'beq', 'bit', 'bmi', 'bne', 'bpl',
            'brk', 'bvc', 'bvs', 'clc', 'cld', 'cli', 'clv', 'cmp',
            'cpx', 'cpy', 'dcp', 'dec', 'dex', 'dey', 'eor', 'inc',
            'inx', 'iny', 'isc', 'jmp', 'jsr', 'las', 'lax', 'lda',
            'ldx', 'ldy', 'lsr', 'nop', 'ora', 'pha', 'php', 'pla',
            'plp', 'rla', 'rol', 'ror', 'rra', 'rti', 'rts', 'sax',
            'sbc', 'sbc2', 'sec', 'sed', 'sei', 'shx', 'shy', 'slo',
            'sre', 'sta', 'stx', 'sty', 'tas', 'tax', 'tay', 'tsx',
            'txa', 'txs', 'tya', 'xaa',
            ),
        /* DTV additional Opcodes. */
        2 => array(
            'bra', 'sac', 'sir'
            ),
        /* Index Registers, yes the 6502 has other registers by they are only
        * accessable by specific opcodes. */
        3 => array(
            'x', 'y'
            ),
        /* Directives. */
        4 => array(
            '.pc', '.pseudopc', 'virtual', '.align', '.byte', '.word', '.text', '.fill',
            '.import source', '.import binary', '.import c64', '.import text', '.import', '.print', '.printnow',
            '.error', '.var', '.eval', '.const', '.eval const', '.enum', '.label', '.define', '.struct',
            'if', '.for', '.macro', '.function', '.return', '.pseudocommand', '.namespace', '.filenamespace',
            '.assert', '.asserterror',
            ),
        /* Kick Assembler 3.13 Functions/Operators. */
        5 => array(
            'size', 'charAt', 'substring', 'asNumber', 'asBoolean', 'toIntString', 'toBinaryString', 'toOctalString',
            'toHexString', 'lock',                                       // String functions/operators.
            'get', 'set', 'add', 'remove', 'shuffle',                    // List functions.
            'put', 'keys',                                               // Hashtable functions.
            'getType', 'getValue', 'CmdArgument',                        // Pseudo Commands functions.
            'asmCommandSize',                                            // Opcode Constants functions.
            'LoadBinary', 'getSize',
            'LoadSid', 'getData',
            'LoadPicture', 'width', 'height', 'getPixel', 'getSinglecolorByte', 'getMulticolorByte',
            'createFile', 'writeln',
            'cmdLineVars',
            'getX', 'getY', 'getZ',                                             // Vector functions.
            'RotationMatrix', 'ScaleMatrix', 'MoveMatrix', 'PerspectiveMatrix', // Matrix functions.

            ),

        /* Kick Assembler 3.13 Math Functions. */
        6 => array(
            'abs', 'acos', 'asin', 'atan', 'atan2', 'cbrt', 'ceil', 'cos', 'cosh',
            'exp', 'expm1', 'floor', 'hypot', 'IEEEremainder', 'log', 'log10',
            'log1p', 'max', 'min', 'pow', 'mod', 'random', 'round', 'signum',
            'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'toDegrees', 'toRadians',
            ),

        /* Kick Assembler 3.13 Objects/Data Types. */
        7 => array(
            'List',          // List() Object.
            'Hashtable',     // Hashtable() Object.
            'Vector',        // Vector() Object.
            'Matrix',        // Matrix() Object.
            ),

        /* Kick Assembler 3.13 Constants. */
        8 => array(
            'PI', 'E',                                                         // Math Constants.
            'AT_ABSOLUTE' , 'AT_ABSOLUTEX' , 'AT_ABSOLUTEY' , 'AT_IMMEDIATE',  // Pseudo Commands Constants.
            'AT_INDIRECT' , 'AT_IZEROPAGEX' , 'AT_IZEROPAGEY' , 'AT_NONE',
            'BLACK', 'WHITE', 'RED', 'CYAN', 'PURPLE', 'GREEN', 'BLUE',        // Colour Constants.
            'YELLOW', 'ORANGE', 'BROWN', 'LIGHT_RED', 'DARK_GRAY', 'GRAY',
            'LIGHT_GREEN', 'LIGHT_BLUE', 'LIGHT_GRAY',
            'C64FILE',                                                         // Template Tag names.
            'BF_C64FILE', 'BF_BITMAP_SINGLECOLOR', 'BF_KOALA' , 'BF_FLI',      // Binary format constant
            ),

        ),
    'SYMBOLS' => array(
//        '[', ']', '(', ')', '{', '}',    // These are already defined by GeSHi as BRACKETS.
        '-', '+', '-', '*', '/', '>', '<', '<<', '>>', '&', '|', '^', '=', '==',
        '!=', '>=', '<=', '!', '&&', '||', '#',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00f; font-weight:bold;',
            2 => 'color: #00f; font-weight:bold;',
            3 => 'color: #00f; font-weight:bold;',
            4 => 'color: #080; font-weight:bold;',
            5 => 'color: #80f; font-weight:bold;',
            6 => 'color: #f08; font-weight:bold;',
            7 => 'color: #a04; font-weight:bold; font-style: italic;',
            8 => 'color: #f08; font-weight:bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #999; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #009; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000;'
            ),
        'STRINGS' => array(
            0 => 'color: #080;'
            ),
        'NUMBERS' => array(
            GESHI_NUMBER_INT_BASIC          => 'color: #f00;',
            GESHI_NUMBER_HEX_PREFIX_DOLLAR  => 'color: #f00;',
            GESHI_NUMBER_BIN_PREFIX_PERCENT => 'color: #f00;',
            GESHI_NUMBER_FLT_NONSCI         => 'color: #f00;',
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #080;'
            ),
        'REGEXPS' => array(
            0 => 'color: #933;',
            1 => 'color: #933;',
            2 => 'color: #933;',
            3 => 'color: #00f; font-weight:bold;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_HEX_PREFIX_DOLLAR |
        GESHI_NUMBER_BIN_PREFIX_PERCENT,
        // AMCE Octal format not support and gets picked up as Decimal unfortunately.
    'REGEXPS' => array(
        //Labels end with a collon.
        0 => '[!]{0,1}[_a-zA-Z][_a-zA-Z0-9]*\:',
        //Multi Labels (local labels) references start with ! and end with + or - for forward/backward reference.
        1 => '![_a-zA-Z][_a-zA-Z0-9]*[+-]',
        //Macros start with a colon :Macro.
        2 => ':[_a-zA-Z][_a-zA-Z0-9]*',
        // Opcode Constants, such as LDA_IMM, STA_IZPY are basically all 6502 opcodes
        // in UPPER case followed by _underscore_ and the ADDRESS MODE.
        // As you might imagine that is rather a lot ( 78 supported Opcodes * 12 Addressing modes = 936 variations)
        // So I thought it better and easier to maintain as a regular expression.
        // NOTE: The order of the Address Modes must be maintained or it wont work properly (eg. place ZP first and find out!)
        3 => '[A-Z]{3}[2]?_(?:IMM|IND|IZPX|IZPY|ZPX|ZPY|ABSX|ABSY|REL|ABS|ZP)',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8,
    'PARSER_CONTROL' => array(
        'NUMBERS'  => array(
            'PRECHECK_RX' => '/[\da-fA-F\.\$\%]/'
            ),
        'KEYWORDS' => array(
            5 => array (
                'DISALLOWED_BEFORE' => "(?|^&'\"])"
                ),
            6 => array (
                'DISALLOWED_BEFORE' => "(?|^&'\"])"
                ),
            8 => array (
                'DISALLOWED_BEFORE' => "(?|^&'\"])"
                )
            )
        ),
);

?>geshi/geshi/68000devpac.php0000664000175000017500000001421212014173417014537 0ustar  benbebenbe 'Motorola 68000 - HiSoft Devpac ST 2 Assembler format',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* Directives. */
        1 => array(
            'end', 'include', 'incbin', 'opt', 'even', 'cnop', 'dc.b', 'dc.w',
            'dc.l', 'ds.b', 'ds.w', 'ds.l', 'dcb.b', 'dcb.w', 'dcb.l',
            'fail', 'output', '__g2', 'rept', 'endr', 'list', 'nolist', 'plen',
            'llen', 'ttl', 'subttl', 'spc', 'page', 'listchar', 'format',
            'equ', 'equr', 'set', 'reg', 'rs.b', 'rs.w', 'rs.l', 'rsreset',
            'rsset', '__rs', 'ifeq', 'ifne', 'ifgt', 'ifge', 'iflt', 'ifle', 'endc',
            'ifd', 'ifnd', 'ifc', 'ifnc', 'elseif', 'iif', 'macro', 'endm', 'mexit',
            'narg', '\@', 'section', 'text', 'data', 'bss', 'xdef', 'xref', 'org',
            'offset', '__lk', 'comment',
            ),
        /* 68000 Opcodes. */
        2 => array(
            'abcd',    'add', 'adda', 'addi', 'addq', 'addx',  'and', 'andi',
            'asl',     'asr',  'bcc', 'bchg', 'bclr',  'bcs',  'beq',  'bge',
            'bgt',     'bhi',  'ble',  'bls',  'blt',  'bmi',  'bne',  'bpl',
            'bra',    'bset',  'bsr', 'btst',  'bvc',  'bvs',  'chk',  'clr',
            'cmp',    'cmpa', 'cmpi', 'cmpm', 'dbcc', 'dbcs', 'dbeq',  'dbf',
            'dbge',   'dbgt', 'dbhi', 'dble', 'dbls', 'dblt', 'dbmi', 'dbne',
            'dbpl',   'dbra',  'dbt', 'dbvc', 'dbvs', 'divs', 'divu',  'eor',
            'eori',    'exg',  'ext','illegal','jmp',  'jsr',  'lea', 'link',
            'lsl',     'lsr', 'move','movea','movem','movep','moveq', 'muls',
            'mulu',   'nbcd',  'neg', 'negx',  'nop',  'not',   'or',  'ori',
            'pea',   'reset',  'rol',  'ror', 'roxl', 'roxr',  'rte',  'rtr',
            'rts',    'sbcd',  'scc',  'scs',  'seq',   'sf',  'sge',  'sgt',
            'shi',     'sle',  'sls',  'slt',  'smi',  'sne',  'spl',   'st',
            'stop',    'sub', 'suba', 'subi', 'subq', 'subx',  'svc',  'svs',
            'swap',    'tas', 'trap','trapv',  'tst', 'unlk',
            ),
        /* oprand sizes. */
        3 => array(
            'b', 'w', 'l' , 's'
            ),
        /* 68000 Registers. */
        4 => array(
            'd0', 'd1', 'd2', 'd3', 'd4', 'd5', 'd6', 'd7',
            'a0', 'a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'sp', 'usp', 'ssp',
            'pc', 'ccr', 'sr',
            ),
        ),
    'SYMBOLS' => array(
//        '[', ']', '(', ')', '{', '}',    // These are already defined by GeSHi as BRACKETS.
        '+', '-', '~', '<<', '>>', '&',
        '!', '^', '*', '/', '=', '<', '>',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #f08; font-weight:bold;',
            2 => 'color: #00f; font-weight:bold;',
            3 => 'color: #00f; font-weight:bold;',
            4 => 'color: #080; font-weight:bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #999; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #009; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000;'
            ),
        'STRINGS' => array(
            0 => 'color: #080;'
            ),
        'NUMBERS' => array(
            GESHI_NUMBER_INT_BASIC          => 'color: #f00;',
            GESHI_NUMBER_HEX_PREFIX_DOLLAR  => 'color: #f00;',
            GESHI_NUMBER_BIN_PREFIX_PERCENT => 'color: #f00;',
            GESHI_NUMBER_OCT_PREFIX_AT      => 'color: #f00;',
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #080;'
            ),
        'REGEXPS' => array(
            0 => 'color: #933;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_HEX_PREFIX_DOLLAR |
        GESHI_NUMBER_OCT_PREFIX_AT |
        GESHI_NUMBER_BIN_PREFIX_PERCENT,
    'REGEXPS' => array(
        //Labels may end in a colon.
        0 => '(?<=\A\x20|\r|\n|^)[\._a-zA-Z][\._a-zA-Z0-9]*[\:]?[\s]'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8,
    'PARSER_CONTROL' => array(
        'NUMBERS' => array(
            'PRECHECK_RX' => '/[\da-fA-F\.\$\%\@]/'
            )
        )
);

?>geshi/geshi/mmix.php0000664000175000017500000001520612014173400013645 0ustar  benbebenbe 'MMIX',
    'COMMENT_SINGLE' => array(1 => ';', 2 => '%'),
    'COMMENT_MULTI' => array(),
    //Line address prefix suppression
    'COMMENT_REGEXP' => array(
        3 => "/^\s*(?!\s)[^\w].*$/m",
        4 => "/^\s*[0-9a-f]{12,16}+(?:\s+[0-9a-f]+(?:\.{3}[0-9a-f]{2,})?)?:/mi"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'NUMBERS' => array(
        1 => '(? '#[\da-fA-F]+',
        3 => '\$\d+'
        ),
    'KEYWORDS' => array(
        /*CPU*/
        1 => array(
            '16ADDU','2ADDU','4ADDU','8ADDU','ADD','ADDU','AND','ANDN','ANDNH',
            'ANDNL','ANDNMH','ANDNML','BDIF','BEV','BN','BNN','BNP','BNZ','BOD',
            'BP','BZ','CMP','CMPU','CSEV','CSN','CSNN','CSNP','CSNZ','CSOD',
            'CSP','CSWAP','CSZ','DIV','DIVU','FADD','FCMP','FCMPE','FDIV',
            'FEQL','FEQLE','FINT','FIX','FIXU','FLOT','FLOTU','FMUL','FREM',
            'FSQRT','FSUB','FUN','FUNE','GET','GETA','GO','INCH','INCL','INCMH',
            'INCML','JMP','LDA','LDB','LDBU','LDHT','LDO','LDOU','LDSF','LDT',
            'LDTU','LDUNC','LDVTS','LDW','LDWU','MOR','MUL','MULU','MUX','MXOR',
            'NAND','NEG','NEGU','NOR','NXOR','ODIF','OR','ORH','ORL','ORMH',
            'ORML','ORN','PBEV','PBN','PBNN','PBNP','PBNZ','PBOD','PBP','PBZ',
            'POP','PREGO','PRELD','PREST','PUSHGO','PUSHJ','PUT','RESUME','SADD',
            'SAVE','SETH','SETL','SETMH','SETML','SFLOT','SFLOTU','SL','SLU',
            'SR','SRU','STB','STBU','STCO','STHT','STO','STOU','STSF','STT',
            'STTU','STUNC','STW','STWU','SUB','SUBU','SWYM','SYNC','SYNCD',
            'SYNCID','TDIF','TRAP','TRIP','UNSAVE','WDIF','XOR','ZSEV','ZSN',
            'ZSNN','ZSNP','ZSNZ','ZSOD','ZSP','ZSZ'
            ),
        2 => array(
            'BSPEC','BYTE','ESPEC','GREG','IS','LOC','LOCAL','OCTA',
            'PREFIX','SET','TETRA','WYDE'
            ),
        /*registers*/
        3 => array(
            'rA','rB','rC','rD','rE','rF','rG','rH','rI','rJ','rK','rL','rM',
            'rN','rO','rP','rQ','rR','rS','rT','rU','rV','rW','rX','rY','rZ',
            'rBB','rTT','rWW','rXX','rYY','rZZ'
            ),
//        /*Directive*/
//        4 => array(
//            ),
//        /*Operands*/
//        5 => array(
//            )
        ),
    'SYMBOLS' => array(
        '[', ']', '(', ')',
        '+', '-', '*', '/', '%',
        '.', ',', ';', ':',
        '<<','>>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => false,
        3 => true,
//        4 => false,
//        5 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f; font-weight: bold;',
            2 => 'color: #0000ff; font-weight: bold;',
            3 => 'color: #00007f;',
//            4 => 'color: #000000; font-weight: bold;',
//            5 => 'color: #000000; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #666666; font-style: italic;',
            3 => 'color: #666666; font-style: italic;',
            4 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000ff;',
            1 => 'color: #0000ff;',
            2 => 'color: #0000ff;',
            3 => 'color: #00007f;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
//            0 => 'color: #0000ff;',
//            1 => 'color: #0000ff;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
//        4 => '',
//        5 => ''
        ),
/*
    'NUMBERS' =>
        GESHI_NUMBER_BIN_PREFIX_PERCENT |
        GESHI_NUMBER_BIN_SUFFIX |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_HEX_SUFFIX |
        GESHI_NUMBER_OCT_SUFFIX |
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F |
        GESHI_NUMBER_FLT_SCI_ZERO,
*/
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Hex numbers
//        0 => /*  */ "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))(?:[0-9][0-9a-fA-F]{0,31}[hH]|0x[0-9a-fA-F]{1,32})(?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))",
        //Binary numbers
//        1 => "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))[01]{1,64}[bB](?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])"
        )
    )
);

?>geshi/geshi/rsplus.php0000664000175000017500000011640112014173402014224 0ustar  benbebenbe 'R / S+',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'"),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'else','global','in', 'otherwise','persistent',
            ),
        2 => array( // base package
            '$.package_version', '$<-', '$<-.data.frame', 'abbreviate', 'abs', 'acos', 'acosh', 'addNA', 'addTaskCallback',
            'agrep', 'alist', 'all', 'all.equal', 'all.equal.character', 'all.equal.default', 'all.equal.factor',
            'all.equal.formula', 'all.equal.language', 'all.equal.list', 'all.equal.numeric', 'all.equal.POSIXct',
            'all.equal.raw', 'all.names', 'all.vars', 'any', 'aperm', 'append', 'apply', 'Arg', 'args', 'array', 'as.array',
            'as.array.default', 'as.call', 'as.character', 'as.character.condition', 'as.character.Date', 'as.character.default',
            'as.character.error', 'as.character.factor', 'as.character.hexmode', 'as.character.numeric_version', 'as.character.octmode',
            'as.character.POSIXt', 'as.character.srcref', 'as.complex', 'as.data.frame', 'as.data.frame.array', 'as.data.frame.AsIs',
            'as.data.frame.character', 'as.data.frame.complex', 'as.data.frame.data.frame', 'as.data.frame.Date', 'as.data.frame.default',
            'as.data.frame.difftime', 'as.data.frame.factor', 'as.data.frame.integer', 'as.data.frame.list', 'as.data.frame.logical',
            'as.data.frame.matrix', 'as.data.frame.model.matrix', 'as.data.frame.numeric', 'as.data.frame.numeric_version',
            'as.data.frame.ordered', 'as.data.frame.POSIXct', 'as.data.frame.POSIXlt', 'as.data.frame.raw', 'as.data.frame.table',
            'as.data.frame.ts', 'as.data.frame.vector', 'as.Date', 'as.Date.character', 'as.Date.date', 'as.Date.dates',
            'as.Date.default', 'as.Date.factor', 'as.Date.numeric', 'as.Date.POSIXct', 'as.Date.POSIXlt', 'as.difftime', 'as.double',
            'as.double.difftime', 'as.double.POSIXlt', 'as.environment', 'as.expression', 'as.expression.default', 'as.factor',
            'as.function', 'as.function.default', 'as.hexmode', 'as.integer', 'as.list', 'as.list.data.frame', 'as.list.default',
            'as.list.environment', 'as.list.factor', 'as.list.function', 'as.list.numeric_version', 'as.logical', 'as.matrix',
            'as.matrix.data.frame', 'as.matrix.default', 'as.matrix.noquote', 'as.matrix.POSIXlt', 'as.name', 'as.null', 'as.null.default',
            'as.numeric', 'as.numeric_version', 'as.octmode', 'as.ordered', 'as.package_version', 'as.pairlist', 'as.POSIXct',
            'as.POSIXct.date', 'as.POSIXct.Date', 'as.POSIXct.dates', 'as.POSIXct.default', 'as.POSIXct.numeric', 'as.POSIXct.POSIXlt',
            'as.POSIXlt', 'as.POSIXlt.character', 'as.POSIXlt.date', 'as.POSIXlt.Date', 'as.POSIXlt.dates', 'as.POSIXlt.default',
            'as.POSIXlt.factor', 'as.POSIXlt.numeric', 'as.POSIXlt.POSIXct', 'as.qr', 'as.raw', 'as.real', 'as.single',
            'as.single.default', 'as.symbol', 'as.table', 'as.table.default', 'as.vector', 'as.vector.factor', 'asin', 'asinh',
            'asNamespace', 'asS4', 'assign', 'atan', 'atan2', 'atanh', 'attach', 'attachNamespace', 'attr', 'attr.all.equal',
            'attr<-', 'attributes', 'attributes<-', 'autoload', 'autoloader', 'backsolve', 'baseenv', 'basename', 'besselI',
            'besselJ', 'besselK', 'besselY', 'beta', 'bindingIsActive', 'bindingIsLocked', 'bindtextdomain', 'body', 'body<-',
            'bquote', 'break', 'browser', 'builtins', 'by', 'by.data.frame', 'by.default', 'bzfile', 'c', 'c.Date', 'c.noquote',
            'c.numeric_version', 'c.POSIXct', 'c.POSIXlt', 'call', 'callCC', 'capabilities', 'casefold', 'cat', 'category',
            'cbind', 'cbind.data.frame', 'ceiling', 'char.expand', 'character', 'charmatch', 'charToRaw', 'chartr', 'check_tzones',
            'chol', 'chol.default', 'chol2inv', 'choose', 'class', 'class<-', 'close', 'close.connection', 'close.srcfile',
            'closeAllConnections', 'codes', 'codes.factor', 'codes.ordered', 'codes<-', 'col', 'colMeans', 'colnames',
            'colnames<-', 'colSums', 'commandArgs', 'comment', 'comment<-', 'complex', 'computeRestarts', 'conditionCall',
            'conditionCall.condition', 'conditionMessage', 'conditionMessage.condition', 'conflicts', 'Conj', 'contributors',
            'cos', 'cosh', 'crossprod', 'Cstack_info', 'cummax', 'cummin', 'cumprod', 'cumsum', 'cut', 'cut.Date', 'cut.default',
            'cut.POSIXt', 'data.class', 'data.frame', 'data.matrix', 'date', 'debug', 'default.stringsAsFactors', 'delay',
            'delayedAssign', 'deparse', 'det', 'detach', 'determinant', 'determinant.matrix', 'dget', 'diag', 'diag<-', 'diff',
            'diff.Date', 'diff.default', 'diff.POSIXt', 'difftime', 'digamma', 'dim', 'dim.data.frame', 'dim<-', 'dimnames',
            'dimnames.data.frame', 'dimnames<-', 'dimnames<-.data.frame', 'dir', 'dir.create', 'dirname', 'do.call', 'double',
            'dput', 'dQuote', 'drop', 'dump', 'duplicated', 'duplicated.array', 'duplicated.data.frame', 'duplicated.default',
            'duplicated.matrix', 'duplicated.numeric_version', 'duplicated.POSIXlt', 'dyn.load', 'dyn.unload', 'eapply', 'eigen',
            'emptyenv', 'encodeString', 'Encoding', 'Encoding<-', 'env.profile', 'environment', 'environment<-', 'environmentIsLocked',
            'environmentName', 'eval', 'eval.parent', 'evalq', 'exists', 'exp', 'expand.grid', 'expm1', 'expression', 'F', 'factor',
            'factorial', 'fifo', 'file', 'file.access', 'file.append', 'file.choose', 'file.copy', 'file.create', 'file.exists',
            'file.info', 'file.path', 'file.remove', 'file.rename', 'file.show', 'file.symlink', 'Filter', 'Find', 'findInterval',
            'findPackageEnv', 'findRestart', 'floor', 'flush', 'flush.connection', 'for', 'force', 'formals', 'formals<-',
            'format', 'format.AsIs', 'format.char', 'format.data.frame', 'format.Date', 'format.default', 'format.difftime',
            'format.factor', 'format.hexmode', 'format.info', 'format.octmode', 'format.POSIXct', 'format.POSIXlt',
            'format.pval', 'formatC', 'formatDL', 'forwardsolve', 'function', 'gamma', 'gammaCody', 'gc', 'gc.time',
            'gcinfo', 'gctorture', 'get', 'getAllConnections', 'getCallingDLL', 'getCallingDLLe', 'getCConverterDescriptions',
            'getCConverterStatus', 'getConnection', 'getDLLRegisteredRoutines', 'getDLLRegisteredRoutines.character',
            'getDLLRegisteredRoutines.DLLInfo', 'getenv', 'geterrmessage', 'getExportedValue', 'getHook', 'getLoadedDLLs',
            'getNamespace', 'getNamespaceExports', 'getNamespaceImports', 'getNamespaceInfo', 'getNamespaceName',
            'getNamespaceUsers', 'getNamespaceVersion', 'getNativeSymbolInfo', 'getNumCConverters', 'getOption', 'getRversion',
            'getSrcLines', 'getTaskCallbackNames', 'gettext', 'gettextf', 'getwd', 'gl', 'globalenv', 'gregexpr', 'grep',
            'grepl', 'gsub', 'gzcon', 'gzfile', 'httpclient', 'I', 'iconv', 'iconvlist', 'icuSetCollate', 'identical', 'identity',
            'if', 'ifelse', 'Im', 'importIntoEnv', 'inherits', 'integer', 'interaction', 'interactive', 'intersect', 'intToBits',
            'intToUtf8', 'inverse.rle', 'invisible', 'invokeRestart', 'invokeRestartInteractively', 'is.array', 'is.atomic',
            'is.call', 'is.character', 'is.complex', 'is.data.frame', 'is.double', 'is.element', 'is.environment',
            'is.expression', 'is.factor', 'is.finite', 'is.function', 'is.infinite', 'is.integer', 'is.language',
            'is.list', 'is.loaded', 'is.logical', 'is.matrix', 'is.na', 'is.na.data.frame', 'is.na.POSIXlt', 'is.na<-',
            'is.na<-.default', 'is.na<-.factor', 'is.name', 'is.nan', 'is.null', 'is.numeric', 'is.numeric_version',
            'is.numeric.Date', 'is.numeric.POSIXt', 'is.object', 'is.ordered', 'is.package_version', 'is.pairlist', 'is.primitive',
            'is.qr', 'is.R', 'is.raw', 'is.real', 'is.recursive', 'is.single', 'is.symbol', 'is.table', 'is.unsorted', 'is.vector',
            'isBaseNamespace', 'isdebugged', 'isIncomplete', 'isNamespace', 'ISOdate', 'ISOdatetime', 'isOpen', 'isRestart', 'isS4',
            'isSeekable', 'isSymmetric', 'isSymmetric.matrix', 'isTRUE', 'jitter', 'julian', 'julian.Date', 'julian.POSIXt', 'kappa',
            'kappa.default', 'kappa.lm', 'kappa.qr', 'kappa.tri', 'kronecker', 'l10n_info', 'La.chol', 'La.chol2inv', 'La.eigen',
            'La.svd', 'labels', 'labels.default', 'lapply', 'lazyLoad', 'lazyLoadDBfetch', 'lbeta', 'lchoose', 'length', 'length<-',
            'length<-.factor', 'letters', 'LETTERS', 'levels', 'levels.default', 'levels<-', 'levels<-.factor', 'lfactorial', 'lgamma',
            'library', 'library.dynam', 'library.dynam.unload', 'licence', 'license', 'list', 'list.files', 'load', 'loadedNamespaces',
            'loadingNamespaceInfo', 'loadNamespace', 'loadURL', 'local', 'lockBinding', 'lockEnvironment', 'log', 'log10', 'log1p', 'log2',
            'logb', 'logical', 'lower.tri', 'ls', 'machine', 'Machine', 'make.names', 'make.unique', 'makeActiveBinding', 'manglePackageName',
            'Map', 'mapply', 'margin.table', 'mat.or.vec', 'match', 'match.arg', 'match.call', 'match.fun', 'Math.data.frame', 'Math.Date',
            'Math.difftime', 'Math.factor', 'Math.POSIXt', 'matrix', 'max', 'max.col', 'mean', 'mean.data.frame', 'mean.Date', 'mean.default',
            'mean.difftime', 'mean.POSIXct', 'mean.POSIXlt', 'mem.limits', 'memory.profile', 'merge', 'merge.data.frame', 'merge.default',
            'message', 'mget', 'min', 'missing', 'Mod', 'mode', 'mode<-', 'month.abb', 'month.name', 'months', 'months.Date',
            'months.POSIXt', 'mostattributes<-', 'names', 'names<-', 'namespaceExport', 'namespaceImport', 'namespaceImportClasses',
            'namespaceImportFrom', 'namespaceImportMethods', 'nargs', 'nchar', 'ncol', 'NCOL', 'Negate', 'new.env', 'next', 'NextMethod',
            'ngettext', 'nlevels', 'noquote', 'nrow', 'NROW', 'numeric', 'numeric_version', 'nzchar', 'objects', 'oldClass',
            'oldClass<-', 'on.exit', 'open', 'open.connection', 'open.srcfile', 'open.srcfilecopy', 'Ops.data.frame', 'Ops.Date',
            'Ops.difftime', 'Ops.factor', 'Ops.numeric_version', 'Ops.ordered', 'Ops.POSIXt', 'options', 'order', 'ordered',
            'outer', 'package_version', 'package.description', 'packageEvent', 'packageHasNamespace', 'packageStartupMessage',
            'packBits', 'pairlist', 'parent.env', 'parent.env<-', 'parent.frame', 'parse', 'parse.dcf', 'parseNamespaceFile',
            'paste', 'path.expand', 'pentagamma', 'pi', 'pipe', 'Platform', 'pmatch', 'pmax', 'pmax.int', 'pmin', 'pmin.int',
            'polyroot', 'pos.to.env', 'Position', 'pretty', 'prettyNum', 'print', 'print.AsIs', 'print.atomic', 'print.by',
            'print.condition', 'print.connection', 'print.data.frame', 'print.Date', 'print.default', 'print.difftime',
            'print.DLLInfo', 'print.DLLInfoList', 'print.DLLRegisteredRoutines', 'print.factor', 'print.hexmode', 'print.libraryIQR',
            'print.listof', 'print.NativeRoutineList', 'print.noquote', 'print.numeric_version', 'print.octmode', 'print.packageInfo',
            'print.POSIXct', 'print.POSIXlt', 'print.proc_time', 'print.restart', 'print.rle', 'print.simple.list',
            'print.srcfile', 'print.srcref', 'print.summary.table', 'print.table', 'print.warnings', 'printNoClass',
            'prmatrix', 'proc.time', 'prod', 'prop.table', 'provide', 'psigamma', 'pushBack', 'pushBackLength', 'q', 'qr',
            'qr.coef', 'qr.default', 'qr.fitted', 'qr.Q', 'qr.qty', 'qr.qy', 'qr.R', 'qr.resid', 'qr.solve', 'qr.X', 'quarters',
            'quarters.Date', 'quarters.POSIXt', 'quit', 'quote', 'R_system_version', 'R.home', 'R.version', 'R.Version',
            'R.version.string', 'range', 'range.default', 'rank', 'rapply', 'raw', 'rawConnection', 'rawConnectionValue',
            'rawShift', 'rawToBits', 'rawToChar', 'rbind', 'rbind.data.frame', 'rcond', 'Re', 'read.dcf', 'read.table.url',
            'readBin', 'readChar', 'readline', 'readLines', 'real', 'Recall', 'Reduce', 'reg.finalizer', 'regexpr',
            'registerS3method', 'registerS3methods', 'remove', 'removeCConverter', 'removeTaskCallback', 'rep', 'rep.Date',
            'rep.factor', 'rep.int', 'rep.numeric_version', 'rep.POSIXct', 'rep.POSIXlt', 'repeat', 'replace', 'replicate',
            'require', 'restart', 'restartDescription', 'restartFormals', 'retracemem', 'return', 'rev', 'rev.default', 'rle',
            'rm', 'RNGkind', 'RNGversion', 'round', 'round.Date', 'round.difftime', 'round.POSIXt', 'row', 'row.names',
            'row.names.data.frame', 'row.names.default', 'row.names<-', 'row.names<-.data.frame', 'row.names<-.default',
            'rowMeans', 'rownames', 'rownames<-', 'rowsum', 'rowsum.data.frame', 'rowsum.default', 'rowSums', 'sample',
            'sample.int', 'sapply', 'save', 'save.image', 'saveNamespaceImage', 'scale', 'scale.default', 'scan', 'scan.url',
            'search', 'searchpaths', 'seek', 'seek.connection', 'seq', 'seq_along', 'seq_len', 'seq.Date', 'seq.default',
            'seq.int', 'seq.POSIXt', 'sequence', 'serialize', 'set.seed', 'setCConverterStatus', 'setdiff', 'setequal',
            'setHook', 'setNamespaceInfo', 'setSessionTimeLimit', 'setTimeLimit', 'setwd', 'showConnections', 'shQuote',
            'sign', 'signalCondition', 'signif', 'simpleCondition', 'simpleError', 'simpleMessage', 'simpleWarning', 'sin',
            'single', 'sinh', 'sink', 'sink.number', 'slice.index', 'socketConnection', 'socketSelect', 'solve', 'solve.default',
            'solve.qr', 'sort', 'sort.default', 'sort.int', 'sort.list', 'sort.POSIXlt', 'source', 'source.url', 'split',
            'split.data.frame', 'split.Date', 'split.default', 'split.POSIXct', 'split<-', 'split<-.data.frame', 'split<-.default',
            'sprintf', 'sqrt', 'sQuote', 'srcfile', 'srcfilecopy', 'srcref', 'standardGeneric', 'stderr', 'stdin', 'stdout',
            'stop', 'stopifnot', 'storage.mode', 'storage.mode<-', 'strftime', 'strptime', 'strsplit', 'strtrim', 'structure',
            'strwrap', 'sub', 'subset', 'subset.data.frame', 'subset.default', 'subset.matrix', 'substitute', 'substr',
            'substr<-', 'substring', 'substring<-', 'sum', 'summary', 'summary.connection', 'summary.data.frame',
            'Summary.data.frame', 'summary.Date', 'Summary.Date', 'summary.default', 'Summary.difftime',
            'summary.factor', 'Summary.factor', 'summary.matrix', 'Summary.numeric_version', 'summary.POSIXct',
            'Summary.POSIXct', 'summary.POSIXlt', 'Summary.POSIXlt', 'summary.table', 'suppressMessages',
            'suppressPackageStartupMessages', 'suppressWarnings', 'svd', 'sweep', 'switch', 'symbol.C',
            'symbol.For', 'sys.call', 'sys.calls', 'Sys.chmod', 'Sys.Date', 'sys.frame', 'sys.frames',
            'sys.function', 'Sys.getenv', 'Sys.getlocale', 'Sys.getpid', 'Sys.glob', 'Sys.info', 'sys.load.image',
            'Sys.localeconv', 'sys.nframe', 'sys.on.exit', 'sys.parent', 'sys.parents', 'Sys.putenv',
            'sys.save.image', 'Sys.setenv', 'Sys.setlocale', 'Sys.sleep', 'sys.source', 'sys.status',
            'Sys.time', 'Sys.timezone', 'Sys.umask', 'Sys.unsetenv', 'Sys.which', 'system', 'system.file',
            'system.time', 't', 'T', 't.data.frame', 't.default', 'table', 'tabulate', 'tan', 'tanh', 'tapply',
            'taskCallbackManager', 'tcrossprod', 'tempdir', 'tempfile', 'testPlatformEquivalence', 'tetragamma',
            'textConnection', 'textConnectionValue', 'tolower', 'topenv', 'toString', 'toString.default', 'toupper',
            'trace', 'traceback', 'tracemem', 'tracingState', 'transform', 'transform.data.frame', 'transform.default',
            'trigamma', 'trunc', 'trunc.Date', 'trunc.POSIXt', 'truncate', 'truncate.connection', 'try', 'tryCatch',
            'typeof', 'unclass', 'undebug', 'union', 'unique', 'unique.array', 'unique.data.frame', 'unique.default',
            'unique.matrix', 'unique.numeric_version', 'unique.POSIXlt', 'units', 'units.difftime', 'units<-',
            'units<-.difftime', 'unix', 'unix.time', 'unlink', 'unlist', 'unloadNamespace', 'unlockBinding',
            'unname', 'unserialize', 'unsplit', 'untrace', 'untracemem', 'unz', 'upper.tri', 'url', 'UseMethod',
            'utf8ToInt', 'vector', 'Vectorize', 'version', 'Version', 'warning', 'warnings', 'weekdays',
            'weekdays.Date', 'weekdays.POSIXt', 'which', 'which.max', 'which.min', 'while', 'with',
            'with.default', 'withCallingHandlers', 'within', 'within.data.frame', 'within.list', 'withRestarts',
            'withVisible', 'write', 'write.dcf', 'write.table0', 'writeBin', 'writeChar', 'writeLines', 'xor',
            'xpdrows.data.frame', 'xtfrm', 'xtfrm.Date', 'xtfrm.default', 'xtfrm.factor', 'xtfrm.numeric_version',
            'xtfrm.POSIXct', 'xtfrm.POSIXlt', 'xtfrm.Surv', 'zapsmall',
            ),
        3 => array( // Datasets
            'ability.cov', 'airmiles', 'AirPassengers', 'airquality',
            'anscombe', 'attenu', 'attitude', 'austres', 'beaver1',
            'beaver2', 'BJsales', 'BJsales.lead', 'BOD', 'cars',
            'ChickWeight', 'chickwts', 'co2', 'crimtab',
            'discoveries', 'DNase', 'esoph', 'euro', 'euro.cross',
            'eurodist', 'EuStockMarkets', 'faithful', 'fdeaths',
            'Formaldehyde', 'freeny', 'freeny.x', 'freeny.y',
            'HairEyeColor', 'Harman23.cor', 'Harman74.cor', 'Indometh',
            'infert', 'InsectSprays', 'iris', 'iris3', 'islands',
            'JohnsonJohnson', 'LakeHuron', 'ldeaths', 'lh', 'LifeCycleSavings',
            'Loblolly', 'longley', 'lynx', 'mdeaths', 'morley', 'mtcars',
            'nhtemp', 'Nile', 'nottem', 'occupationalStatus', 'Orange',
            'OrchardSprays', 'PlantGrowth', 'precip', 'presidents',
            'pressure', 'Puromycin', 'quakes', 'randu', 'rivers', 'rock',
            'Seatbelts', 'sleep', 'stack.loss', 'stack.x', 'stackloss',
            'state.abb', 'state.area', 'state.center', 'state.division',
            'state.name', 'state.region', 'state.x77', 'sunspot.month',
            'sunspot.year', 'sunspots', 'swiss', 'Theoph', 'Titanic', 'ToothGrowth',
            'treering', 'trees', 'UCBAdmissions', 'UKDriverDeaths', 'UKgas',
            'USAccDeaths', 'USArrests', 'USJudgeRatings', 'USPersonalExpenditure',
            'uspop', 'VADeaths', 'volcano', 'warpbreaks', 'women', 'WorldPhones',
            'WWWusage',
            ),
        4 => array( // graphics package
            'abline', 'arrows', 'assocplot', 'axis', 'Axis', 'axis.Date', 'axis.POSIXct',
            'axTicks', 'barplot', 'barplot.default', 'box', 'boxplot', 'boxplot.default',
            'boxplot.matrix', 'bxp', 'cdplot', 'clip', 'close.screen', 'co.intervals',
            'contour', 'contour.default', 'coplot', 'curve', 'dotchart', 'erase.screen',
            'filled.contour', 'fourfoldplot', 'frame', 'grconvertX', 'grconvertY', 'grid',
            'hist', 'hist.default', 'identify', 'image', 'image.default', 'layout',
            'layout.show', 'lcm', 'legend', 'lines', 'lines.default', 'locator', 'matlines',
            'matplot', 'matpoints', 'mosaicplot', 'mtext', 'pairs', 'pairs.default',
            'panel.smooth', 'par', 'persp', 'pie', 'piechart', 'plot', 'plot.default',
            'plot.design', 'plot.new', 'plot.window', 'plot.xy', 'points', 'points.default',
            'polygon', 'rect', 'rug', 'screen', 'segments', 'smoothScatter', 'spineplot',
            'split.screen', 'stars', 'stem', 'strheight', 'stripchart', 'strwidth', 'sunflowerplot',
            'symbols', 'text', 'text.default', 'title', 'xinch', 'xspline', 'xyinch', 'yinch',
            ),
        5 => array( // grDevices pkg
            'as.graphicsAnnot', 'bitmap', 'blues9', 'bmp', 'boxplot.stats', 'cairo_pdf', 'cairo_ps', 'check.options',
            'chull', 'CIDFont', 'cm', 'cm.colors', 'col2rgb', 'colorConverter', 'colorRamp', 'colorRampPalette',
            'colors', 'colorspaces', 'colours', 'contourLines', 'convertColor', 'densCols', 'dev.control', 'dev.copy',
            'dev.copy2eps', 'dev.copy2pdf', 'dev.cur', 'dev.interactive', 'dev.list', 'dev.new', 'dev.next', 'dev.off',
            'dev.prev', 'dev.print', 'dev.set', 'dev.size', 'dev2bitmap', 'devAskNewPage', 'deviceIsInteractive',
            'embedFonts', 'extendrange', 'getGraphicsEvent', 'graphics.off', 'gray', 'gray.colors', 'grey', 'grey.colors',
            'hcl', 'heat.colors', 'Hershey', 'hsv', 'jpeg', 'make.rgb', 'n2mfrow', 'nclass.FD', 'nclass.scott',
            'nclass.Sturges', 'palette', 'pdf', 'pdf.options', 'pdfFonts', 'pictex', 'png', 'postscript', 'postscriptFont',
            'postscriptFonts', 'ps.options', 'quartz', 'quartz.options', 'quartzFont', 'quartzFonts', 'rainbow',
            'recordGraphics', 'recordPlot', 'replayPlot', 'rgb', 'rgb2hsv', 'savePlot', 'setEPS', 'setPS', 'svg',
            'terrain.colors', 'tiff', 'topo.colors', 'trans3d', 'Type1Font', 'x11', 'X11', 'X11.options', 'X11Font',
            'X11Fonts', 'xfig', 'xy.coords', 'xyTable', 'xyz.coords',
            ),
        6 => array( // methods package
            'addNextMethod', 'allGenerics', 'allNames', 'Arith', 'as', 'as<-',
            'asMethodDefinition', 'assignClassDef', 'assignMethodsMetaData', 'balanceMethodsList',
            'cacheGenericsMetaData', 'cacheMetaData', 'cacheMethod', 'callGeneric',
            'callNextMethod', 'canCoerce', 'cbind2', 'checkSlotAssignment', 'classesToAM',
            'classMetaName', 'coerce', 'coerce<-', 'Compare', 'completeClassDefinition',
            'completeExtends', 'completeSubclasses', 'Complex', 'conformMethod', 'defaultDumpName',
            'defaultPrototype', 'doPrimitiveMethod', 'dumpMethod', 'dumpMethods', 'el', 'el<-',
            'elNamed', 'elNamed<-', 'empty.dump', 'emptyMethodsList', 'existsFunction', 'existsMethod',
            'extends', 'finalDefaultMethod', 'findClass', 'findFunction', 'findMethod', 'findMethods',
            'findMethodSignatures', 'findUnique', 'fixPre1.8', 'formalArgs', 'functionBody',
            'functionBody<-', 'generic.skeleton', 'getAccess', 'getAllMethods', 'getAllSuperClasses',
            'getClass', 'getClassDef', 'getClasses', 'getClassName', 'getClassPackage', 'getDataPart',
            'getExtends', 'getFunction', 'getGeneric', 'getGenerics', 'getGroup', 'getGroupMembers',
            'getMethod', 'getMethods', 'getMethodsForDispatch', 'getMethodsMetaData', 'getPackageName',
            'getProperties', 'getPrototype', 'getSlots', 'getSubclasses', 'getValidity', 'getVirtual',
            'hasArg', 'hasMethod', 'hasMethods', 'implicitGeneric', 'initialize', 'insertMethod', 'is',
            'isClass', 'isClassDef', 'isClassUnion', 'isGeneric', 'isGrammarSymbol', 'isGroup',
            'isSealedClass', 'isSealedMethod', 'isVirtualClass', 'isXS3Class', 'languageEl', 'languageEl<-',
            'linearizeMlist', 'listFromMethods', 'listFromMlist', 'loadMethod', 'Logic',
            'makeClassRepresentation', 'makeExtends', 'makeGeneric', 'makeMethodsList',
            'makePrototypeFromClassDef', 'makeStandardGeneric', 'matchSignature', 'Math', 'Math2', 'mergeMethods',
            'metaNameUndo', 'method.skeleton', 'MethodAddCoerce', 'methodSignatureMatrix', 'MethodsList',
            'MethodsListSelect', 'methodsPackageMetaName', 'missingArg', 'mlistMetaName', 'new', 'newBasic',
            'newClassRepresentation', 'newEmptyObject', 'Ops', 'packageSlot', 'packageSlot<-', 'possibleExtends',
            'prohibitGeneric', 'promptClass', 'promptMethods', 'prototype', 'Quote', 'rbind2',
            'reconcilePropertiesAndPrototype', 'registerImplicitGenerics', 'rematchDefinition',
            'removeClass', 'removeGeneric', 'removeMethod', 'removeMethods', 'removeMethodsObject', 'representation',
            'requireMethods', 'resetClass', 'resetGeneric', 'S3Class', 'S3Class<-', 'S3Part', 'S3Part<-', 'sealClass',
            'seemsS4Object', 'selectMethod', 'selectSuperClasses', 'sessionData', 'setAs', 'setClass', 'setClassUnion',
            'setDataPart', 'setGeneric', 'setGenericImplicit', 'setGroupGeneric', 'setIs', 'setMethod', 'setOldClass',
            'setPackageName', 'setPrimitiveMethods', 'setReplaceMethod', 'setValidity', 'show', 'showClass', 'showDefault',
            'showExtends', 'showMethods', 'showMlist', 'signature', 'SignatureMethod', 'sigToEnv', 'slot', 'slot<-',
            'slotNames', 'slotsFromS3', 'substituteDirect', 'substituteFunctionArgs', 'Summary', 'superClassDepth',
            'testInheritedMethods', 'testVirtual', 'traceOff', 'traceOn', 'tryNew', 'trySilent', 'unRematchDefinition',
            'validObject', 'validSlotNames',
            ),
        7 => array( // stats pkg
            'acf', 'acf2AR', 'add.scope', 'add1', 'addmargins', 'aggregate',
            'aggregate.data.frame', 'aggregate.default', 'aggregate.ts', 'AIC',
            'alias', 'anova', 'anova.glm', 'anova.glmlist', 'anova.lm', 'anova.lmlist',
            'anova.mlm', 'anovalist.lm', 'ansari.test', 'aov', 'approx', 'approxfun',
            'ar', 'ar.burg', 'ar.mle', 'ar.ols', 'ar.yw', 'arima', 'arima.sim',
            'arima0', 'arima0.diag', 'ARMAacf', 'ARMAtoMA', 'as.dendrogram', 'as.dist',
            'as.formula', 'as.hclust', 'as.stepfun', 'as.ts', 'asOneSidedFormula', 'ave',
            'bandwidth.kernel', 'bartlett.test', 'binom.test', 'binomial', 'biplot',
            'Box.test', 'bw.bcv', 'bw.nrd', 'bw.nrd0', 'bw.SJ', 'bw.ucv', 'C', 'cancor',
            'case.names', 'ccf', 'chisq.test', 'clearNames', 'cmdscale', 'coef', 'coefficients',
            'complete.cases', 'confint', 'confint.default', 'constrOptim', 'contr.helmert',
            'contr.poly', 'contr.SAS', 'contr.sum', 'contr.treatment', 'contrasts', 'contrasts<-',
            'convolve', 'cooks.distance', 'cophenetic', 'cor', 'cor.test', 'cov', 'cov.wt',
            'cov2cor', 'covratio', 'cpgram', 'cutree', 'cycle', 'D', 'dbeta', 'dbinom', 'dcauchy',
            'dchisq', 'decompose', 'delete.response', 'deltat', 'dendrapply', 'density', 'density.default',
            'deriv', 'deriv.default', 'deriv.formula', 'deriv3', 'deriv3.default', 'deriv3.formula',
            'deviance', 'dexp', 'df', 'df.kernel', 'df.residual', 'dfbeta', 'dfbetas', 'dffits',
            'dgamma', 'dgeom', 'dhyper', 'diff.ts', 'diffinv', 'dist', 'dlnorm', 'dlogis',
            'dmultinom', 'dnbinom', 'dnorm', 'dpois', 'drop.scope', 'drop.terms', 'drop1',
            'dsignrank', 'dt', 'dummy.coef', 'dunif', 'dweibull', 'dwilcox', 'ecdf', 'eff.aovlist',
            'effects', 'embed', 'end', 'estVar', 'expand.model.frame', 'extractAIC', 'factanal',
            'factor.scope', 'family', 'fft', 'filter', 'fisher.test', 'fitted', 'fitted.values',
            'fivenum', 'fligner.test', 'formula', 'frequency', 'friedman.test', 'ftable', 'Gamma',
            'gaussian', 'get_all_vars', 'getInitial', 'glm', 'glm.control', 'glm.fit', 'glm.fit.null',
            'hasTsp', 'hat', 'hatvalues', 'hatvalues.lm', 'hclust', 'heatmap', 'HoltWinters', 'influence',
            'influence.measures', 'integrate', 'interaction.plot', 'inverse.gaussian', 'IQR',
            'is.empty.model', 'is.leaf', 'is.mts', 'is.stepfun', 'is.ts', 'is.tskernel', 'isoreg',
            'KalmanForecast', 'KalmanLike', 'KalmanRun', 'KalmanSmooth', 'kernapply', 'kernel', 'kmeans',
            'knots', 'kruskal.test', 'ks.test', 'ksmooth', 'lag', 'lag.plot', 'line', 'lines.ts', 'lm',
            'lm.fit', 'lm.fit.null', 'lm.influence', 'lm.wfit', 'lm.wfit.null', 'loadings', 'loess',
            'loess.control', 'loess.smooth', 'logLik', 'loglin', 'lowess', 'ls.diag', 'ls.print', 'lsfit',
            'mad', 'mahalanobis', 'make.link', 'makeARIMA', 'makepredictcall', 'manova', 'mantelhaen.test',
            'mauchley.test', 'mauchly.test', 'mcnemar.test', 'median', 'median.default', 'medpolish',
            'model.extract', 'model.frame', 'model.frame.aovlist', 'model.frame.default', 'model.frame.glm',
            'model.frame.lm', 'model.matrix', 'model.matrix.default', 'model.matrix.lm', 'model.offset',
            'model.response', 'model.tables', 'model.weights', 'monthplot', 'mood.test', 'mvfft', 'na.action',
            'na.contiguous', 'na.exclude', 'na.fail', 'na.omit', 'na.pass', 'napredict', 'naprint', 'naresid',
            'nextn', 'nlm', 'nlminb', 'nls', 'nls.control', 'NLSstAsymptotic', 'NLSstClosestX', 'NLSstLfAsymptote',
            'NLSstRtAsymptote', 'numericDeriv', 'offset', 'oneway.test', 'optim', 'optimise', 'optimize',
            'order.dendrogram', 'p.adjust', 'p.adjust.methods', 'pacf', 'pairwise.prop.test', 'pairwise.t.test',
            'pairwise.table', 'pairwise.wilcox.test', 'pbeta', 'pbinom', 'pbirthday', 'pcauchy', 'pchisq', 'pexp',
            'pf', 'pgamma', 'pgeom', 'phyper', 'plclust', 'plnorm', 'plogis', 'plot.density', 'plot.ecdf', 'plot.lm',
            'plot.mlm', 'plot.spec', 'plot.spec.coherency', 'plot.spec.phase', 'plot.stepfun', 'plot.ts', 'plot.TukeyHSD',
            'pnbinom', 'pnorm', 'poisson', 'poisson.test', 'poly', 'polym', 'power', 'power.anova.test', 'power.prop.test',
            'power.t.test', 'PP.test', 'ppoints', 'ppois', 'ppr', 'prcomp', 'predict', 'predict.glm', 'predict.lm',
            'predict.mlm', 'predict.poly', 'preplot', 'princomp', 'print.anova', 'print.coefmat', 'print.density',
            'print.family', 'print.formula', 'print.ftable', 'print.glm', 'print.infl', 'print.integrate', 'print.lm',
            'print.logLik', 'print.terms', 'print.ts', 'printCoefmat', 'profile', 'proj', 'promax', 'prop.test',
            'prop.trend.test', 'psignrank', 'pt', 'ptukey', 'punif', 'pweibull', 'pwilcox', 'qbeta', 'qbinom',
            'qbirthday', 'qcauchy', 'qchisq', 'qexp', 'qf', 'qgamma', 'qgeom', 'qhyper', 'qlnorm', 'qlogis',
            'qnbinom', 'qnorm', 'qpois', 'qqline', 'qqnorm', 'qqnorm.default', 'qqplot', 'qsignrank', 'qt',
            'qtukey', 'quade.test', 'quantile', 'quantile.default', 'quasi', 'quasibinomial', 'quasipoisson',
            'qunif', 'qweibull', 'qwilcox', 'r2dtable', 'rbeta', 'rbinom', 'rcauchy', 'rchisq', 'read.ftable',
            'rect.hclust', 'reformulate', 'relevel', 'reorder', 'replications', 'reshape', 'reshapeLong', 'reshapeWide',
            'resid', 'residuals', 'residuals.default', 'residuals.glm', 'residuals.lm', 'rexp', 'rf', 'rgamma', 'rgeom',
            'rhyper', 'rlnorm', 'rlogis', 'rmultinom', 'rnbinom', 'rnorm', 'rpois', 'rsignrank', 'rstandard', 'rstandard.glm',
            'rstandard.lm', 'rstudent', 'rstudent.glm', 'rstudent.lm', 'rt', 'runif', 'runmed', 'rweibull', 'rwilcox',
            'scatter.smooth', 'screeplot', 'sd', 'se.contrast', 'selfStart', 'setNames', 'shapiro.test', 'simulate',
            'smooth', 'smooth.spline', 'smoothEnds', 'sortedXyData', 'spec.ar', 'spec.pgram', 'spec.taper', 'spectrum',
            'spline', 'splinefun', 'splinefunH', 'SSasymp', 'SSasympOff', 'SSasympOrig', 'SSbiexp', 'SSD', 'SSfol',
            'SSfpl', 'SSgompertz', 'SSlogis', 'SSmicmen', 'SSweibull', 'start', 'stat.anova', 'step', 'stepfun', 'stl',
            'StructTS', 'summary.aov', 'summary.aovlist', 'summary.glm', 'summary.infl', 'summary.lm', 'summary.manova',
            'summary.mlm', 'summary.stepfun', 'supsmu', 'symnum', 't.test', 'termplot', 'terms', 'terms.aovlist',
            'terms.default', 'terms.formula', 'terms.terms', 'time', 'toeplitz', 'ts', 'ts.intersect', 'ts.plot',
            'ts.union', 'tsdiag', 'tsp', 'tsp<-', 'tsSmooth', 'TukeyHSD', 'TukeyHSD.aov', 'uniroot', 'update',
            'update.default', 'update.formula', 'var', 'var.test', 'variable.names', 'varimax', 'vcov', 'weighted.mean',
            'weighted.residuals', 'weights', 'wilcox.test', 'window', 'window<-', 'write.ftable', 'xtabs',
            ),
        8 => array( // utils pkg
            'alarm', 'apropos', 'argsAnywhere', 'as.person', 'as.personList', 'as.relistable', 'as.roman',
            'assignInNamespace', 'available.packages', 'browseEnv', 'browseURL', 'browseVignettes', 'bug.report',
            'capture.output', 'checkCRAN', 'chooseCRANmirror', 'citation', 'citEntry', 'citFooter', 'citHeader',
            'close.socket', 'combn', 'compareVersion', 'contrib.url', 'count.fields', 'CRAN.packages', 'data',
            'data.entry', 'dataentry', 'de', 'de.ncols', 'de.restore', 'de.setup', 'debugger', 'demo', 'download.file',
            'download.packages', 'dump.frames', 'edit', 'emacs', 'example', 'file_test', 'file.edit', 'find', 'fix',
            'fixInNamespace', 'flush.console', 'formatOL', 'formatUL', 'getAnywhere', 'getCRANmirrors', 'getFromNamespace',
            'getS3method', 'getTxtProgressBar', 'glob2rx', 'head', 'head.matrix', 'help', 'help.request', 'help.search',
            'help.start', 'history', 'index.search', 'install.packages', 'installed.packages', 'is.relistable',
            'limitedLabels', 'loadhistory', 'localeToCharset', 'ls.str', 'lsf.str', 'make.packages.html', 'make.socket',
            'makeRweaveLatexCodeRunner', 'memory.limit', 'memory.size', 'menu', 'methods', 'mirror2html', 'modifyList',
            'new.packages', 'normalizePath', 'nsl', 'object.size', 'old.packages', 'package.contents', 'package.skeleton',
            'packageDescription', 'packageStatus', 'page', 'person', 'personList', 'pico', 'prompt', 'promptData',
            'promptPackage', 'rc.getOption', 'rc.options', 'rc.settings', 'rc.status', 'read.csv', 'read.csv2', 'read.delim',
            'read.delim2', 'read.DIF', 'read.fortran', 'read.fwf', 'read.socket', 'read.table', 'readCitationFile', 'recover',
            'relist', 'remove.packages', 'Rprof', 'Rprofmem', 'RShowDoc', 'RSiteSearch', 'rtags', 'Rtangle', 'RtangleSetup',
            'RtangleWritedoc', 'RweaveChunkPrefix', 'RweaveEvalWithOpt', 'RweaveLatex', 'RweaveLatexFinish', 'RweaveLatexOptions',
            'RweaveLatexSetup', 'RweaveLatexWritedoc', 'RweaveTryStop', 'savehistory', 'select.list', 'sessionInfo',
            'setRepositories', 'setTxtProgressBar', 'stack', 'Stangle', 'str', 'strOptions', 'summaryRprof', 'Sweave',
            'SweaveHooks', 'SweaveSyntaxLatex', 'SweaveSyntaxNoweb', 'SweaveSyntConv', 'tail', 'tail.matrix', 'timestamp',
            'toBibtex', 'toLatex', 'txtProgressBar', 'type.convert', 'unstack', 'unzip', 'update.packages', 'update.packageStatus',
            'upgrade', 'url.show', 'URLdecode', 'URLencode', 'vi', 'View', 'vignette', 'write.csv', 'write.csv2', 'write.socket',
            'write.table', 'wsbrowser', 'xedit', 'xemacs', 'zip.file.extract',
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|','<-','->',
        '^', '-', ':', '::', ':::', '!', '!=', '*', '?',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF; font-weight: bold;',
            2 => 'color: #0000FF; font-weight: bold;',
            3 => 'color: #CC9900; font-weight: bold;',
            4 => 'color: #0000FF; font-weight: bold;',
            5 => 'color: #0000FF; font-weight: bold;',
            6 => 'color: #0000FF; font-weight: bold;',
            7 => 'color: #0000FF; font-weight: bold;',
            8 => 'color: #0000FF; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #228B22;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            ),
        'BRACKETS' => array(
            0 => 'color: #080;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            1 => '',
            2 => ''
            ),
        'SYMBOLS' => array(
            0 => 'color: #080;'
            ),
        'REGEXPS' => array(
            0 => 'color:#A020F0;'
            ),
        'SCRIPT' => array(
            0 => ''            )
        ),
    'URLS' => array(
        1 => '',
        2 => 'http://stat.ethz.ch/R-manual/R-devel/library/base/html/{FNAME}.html', // Base Package
        3 => 'http://stat.ethz.ch/R-manual/R-devel/library/datasets/html/{FNAME}.html', // Datasets
        4 => 'http://stat.ethz.ch/R-manual/R-devel/library/graphics/html/{FNAME}.html', // Graphics Package
        5 => 'http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/{FNAME}.html', // grDevices
        6 => 'http://stat.ethz.ch/R-manual/R-devel/library/methods/html/{FNAME}.html', // methods
        7 => 'http://stat.ethz.ch/R-manual/R-devel/library/stats/html/{FNAME}.html', // stats
        8 => 'http://stat.ethz.ch/R-manual/R-devel/library/utils/html/{FNAME}.html' // utils
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        0 => array(
            GESHI_SEARCH => "([^\w])'([^\\n\\r']*)'",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => "\\1'",
            GESHI_AFTER => "'"
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^&\\.])(? "(?![a-zA-Z0-9_\|%\\-&;\\.])"
            )
        )
);

?>geshi/geshi/proftpd.php0000664000175000017500000003217312014173401014354 0ustar  benbebenbe 'ProFTPd configuration',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        /*keywords*/
        1 => array(
            //mod_auth
            'AccessDenyMsg', 'AccessGrantMsg', 'AnonRejectePasswords',
            'AnonRequirePassword', 'AuthAliasOnly', 'AuthUsingAlias',
            'CreateHome', 'DefaultChdir', 'DefaultRoot', 'GroupPassword',
            'LoginPasswordPrompt', 'MaxClients', 'MaxClientsPerClass',
            'MaxClientsPerHost', 'MaxClientsPerUser', 'MaxConnectionsPerHost',
            'MaxHostsPerUser', 'MaxLoginAttempts', 'RequireValidShell',
            'RootLogin', 'RootRevoke', 'TimeoutLogin', 'TimeoutSession',
            'UseFtpUsers', 'UserAlias', 'UserDirRoot', 'UserPassword',

            //mod_auth_file
            'AuthGroupFile', 'AuthUserFile',

            //mod_auth_pam
            'AuthPAM', 'AuthPAMConfig',

            //mod_auth_unix
            'PersistentPasswd',

            //mod_ban
            'BanControlsACLs', 'BanEngine', 'BanLog', 'BanMessage', 'BanOnEvent',
            'BanTable',

            //mod_cap
            'CapabilitiesEngine', 'CapabilitiesSet',

            //mod_core
            'Allow', 'AllowAll', 'AllowClass', 'AllowFilter',
            'AllowForeignAddress', 'AllowGroup', 'AllowOverride',
            'AllowRetrieveRestart', 'AllowStoreRestart', 'AllowUser',
            'AnonymousGroup', 'AuthOrder', 'Bind', 'CDPath', 'Class', 'Classes',
            'CommandBufferSize', 'DebugLevel', 'DefaultAddress',
            'DefaultServer', 'DefaultTransferMode', 'DeferWelcome', 'Define',
            'Deny', 'DenyAll', 'DenyClass', 'DenyFilter', 'DenyGroup',
            'DenyUser', 'DisplayChdir', 'DisplayConnect', 'DisplayFirstChdir',
            'DisplayGoAway', 'DisplayLogin', 'DisplayQuit', 'From', 'Group',
            'GroupOwner', 'HideFiles', 'HideGroup', 'HideNoAccess', 'HideUser',
            'IdentLookups', 'IgnoreHidden', 'Include', 'MasqueradeAddress',
            'MaxConnectionRate', 'MaxInstances', 'MultilineRFC2228', 'Order',
            'PassivePorts', 'PathAllowFilter', 'PathDenyFilter', 'PidFile',
            'Port', 'RLimitCPU', 'RLimitMemory', 'RLimitOpenFiles', 'Satisfy',
            'ScoreboardFile', 'ServerAdmin', 'ServerIdent', 'ServerName',
            'ServerType', 'SetEnv', 'SocketBindTight', 'SocketOptions',
            'SyslogFacility', 'SyslogLevel', 'tcpBackLog', 'tcpNoDelay',
            'TimeoutIdle', 'TimeoutLinger', 'TimesGMT', 'TransferLog', 'Umask',
            'UnsetEnv', 'UseIPv6', 'User', 'UseReverseDNS', 'UserOwner',
            'UseUTF8', 'WtmpLog',

            //mod_ctrls_admin
            'AdminControlsACLs', 'AdminControlsEngine',

            //mod_delay
            'DelayEngine', 'DelayTable',

            //mod_dynmasq
            'DynMasqRefresh',

            //mod_exec
            'ExecBeforeCommand', 'ExecEngine', 'ExecEnviron', 'ExecLog',
            'ExecOnCommand', 'ExecOnConnect', 'ExecOnError', 'ExecOnEvent',
            'ExecOnExit', 'ExecOnRestart', 'ExecOptions', 'ExecTimeout',

            //mod_ldap
            'LDAPAliasDereference', 'LDAPAttr', 'LDAPAuthBinds',
            'LDAPDefaultAuthScheme', 'LDAPDefaultGID', 'LDAPDefaultUID',
            'LDAPDNInfo', 'LDAPDoAuth', 'LDAPDoGIDLookups',
            'LDAPDoQuotaLookups', 'LDAPDoUIDLookups',
            'LDAPForceGeneratedHomedir', 'LDAPForceHomedirOnDemand',
            'LDAPGenerateHomedir', 'LDAPGenerateHomedirPrefix',
            'LDAPGenerateHomedirPrefixNoUsername', 'LDAPHomedirOnDemand',
            'LDAPHomedirOnDemandPrefix', 'LDAPHomedirOnDemandPrefixNoUsername',
            'LDAPHomedirOnDemandSuffix', 'LDAPNegativeCache',
            'LDAPProtocolVersion', 'LDAPQueryTimeout', 'LDAPSearchScope',
            'LDAPServer',

            //mod_load
            'MaxLoad',

            //mod_log
            'AllowLogSymlinks', 'ExtendedLog', 'LogFormat', 'ServerLog',
            'SystemLog',

            //mod_ls'
            'DirFakeGroup', 'DirFakeMode', 'DirFakeUser', 'ListOptions',
            'ShowSymlinks', 'UseGlobbing',

            //mod_quotatab
            'QuotaDirectoryTally', 'QuotaDisplayUnits', 'QuotaEngine',
            'QuotaExcludeFilter', 'QuotaLimitTable', 'QuotaLock', 'QuotaLog',
            'QuotaOptions', 'QuotaShowQuotas', 'QuotaTallyTable',

            //mod_quotatab_file

            //mod_quotatab_ldap

            //mod_quotatab_sql

            //mod_radius
            'RadiusAcctServer', 'RadiusAuthServer', 'RadiusEngine',
            'RadiusGroupInfo', 'RadiusLog', 'RadiusNASIdentifier',
            'RadiusQuotaInfo', 'RadiusRealm', 'RadiusUserInfo', 'RadiusVendor',

            //mod_ratio
            'AnonRatio', 'ByteRatioErrMsg', 'CwdRatioMsg', 'FileRatioErrMsg',
            'GroupRatio', 'HostRatio', 'LeechRatioMsg', 'RatioFile', 'Ratios',
            'RatioTempFile', 'SaveRatios', 'UserRatio',

            //mod_readme
            'DisplayReadme',

            //mod_rewrite
            'RewriteCondition', 'RewriteEngine', 'RewriteLock', 'RewriteLog',
            'RewriteMap', 'RewriteRule',

            //mod_sftp
            'SFTPAcceptEnv', 'SFTPAuthMethods', 'SFTPAuthorizedHostKeys',
            'SFTPAuthorizedUserKeys', 'SFTPCiphers', 'SFTPClientMatch',
            'SFTPCompression', 'SFTPCryptoDevice', 'SFTPDHParamFile',
            'SFTPDigests', 'SFTPDisplayBanner', 'SFTPEngine', 'SFTPExtensions',
            'SFTPHostKey', 'SFTPKeyBlacklist', 'SFTPKeyExchanges', 'SFTPLog',
            'SFTPMaxChannels', 'SFTPOptions', 'SFTPPassPhraseProvider',
            'SFTPRekey', 'SFTPTrafficPolicy',

            //mod_sftp_pam
            'SFTPPAMEngine', 'SFTPPAMOptions', 'SFTPPAMServiceName',

            //mod_sftp_sql

            //mod_shaper
            'ShaperAll', 'ShaperControlsACLs', 'ShaperEngine', 'ShaperLog',
            'ShaperSession', 'ShaperTable',

            //mod_sql
            'SQLAuthenticate', 'SQLAuthTypes', 'SQLBackend', 'SQLConnectInfo',
            'SQLDefaultGID', 'SQLDefaultHomedir', 'SQLDefaultUID', 'SQLEngine',
            'SQLGroupInfo', 'SQLGroupWhereClause', 'SQLHomedirOnDemand',
            'SQLLog', 'SQLLogFile', 'SQLMinID', 'SQLMinUserGID',
            'SQLMinUserUID', 'SQLNamedQuery', 'SQLNegativeCache', 'SQLOptions',
            'SQLRatios', 'SQLRatioStats', 'SQLShowInfo', 'SQLUserInfo',
            'SQLUserWhereClause',

            //mod_sql_passwd
            'SQLPasswordEncoding', 'SQLPasswordEngine', 'SQLPasswordSaltFile',
            'SQLPasswordUserSalt',

            //mod_tls
            'TLSCACertificateFile', 'TLSCACertificatePath',
            'TLSCARevocationFile', 'TLSCARevocationPath',
            'TLSCertificateChainFile', 'TLSCipherSuite', 'TLSControlsACLs',
            'TLSCryptoDevice', 'TLSDHParamFile', 'TLSDSACertificateFile',
            'TLSDSACertificateKeyFile', 'TLSEngine', 'TLSLog', 'TLSOptions',
            'TLSPKCS12File', 'TLSPassPhraseProvider', 'TLSProtocol',
            'TLSRandomSeed', 'TLSRenegotiate', 'TLSRequired',
            'TLSRSACertificateFile', 'TLSRSACertificateKeyFile',
            'TLSSessionCache', 'TLSTimeoutHandshake', 'TLSVerifyClient',
            'TLSVerifyDepth', 'TLSVerifyOrder',

            //mod_tls_shmcache

            //mod_unique_id
            'UniqueIDEngine',

            //mod_wrap
            'TCPAccessFiles', 'TCPAccessSyslogLevels', 'TCPGroupAccessFiles',
            'TCPServiceName', 'TCPUserAccessFiles',

            //mod_wrap2
            'WrapAllowMsg', 'WrapDenyMsg', 'WrapEngine', 'WrapGroupTables',
            'WrapLog', 'WrapServiceName', 'WrapTables', 'WrapUserTables',

            //mod_wrap2_file

            //mod_wrap2_sql

            //mod_xfer
            'AllowOverwrite', 'DeleteAbortedStores', 'DisplayFileTransfer',
            'HiddenStor', 'HiddenStores', 'MaxRetrieveFileSize',
            'MaxStoreFileSize', 'StoreUniquePrefix', 'TimeoutNoTransfer',
            'TimeoutStalled', 'TransferRate', 'UseSendfile',

            //unknown
            'ScoreboardPath', 'ScoreboardScrub'
            ),
        /*keywords 3*/
        3 => array(
            //mod_core
            'Anonymous',
            'Class',
            'Directory',
            'IfDefine',
            'IfModule',
            'Limit',
            'VirtualHost',

            //mod_ifsession
            'IfClass', 'IfGroup', 'IfUser',

            //mod_version
            'IfVersion'
            ),
        /*permissions*/
        4 => array(
            //mod_core
            'ALL',
            'CDUP',
            'CMD',
            'CWD',
            'DELE',
            'DIRS',
            'LOGIN',
            'MKD',
            'READ',
            'RETR',
            'RMD',
            'RNFR',
            'RNTO',
            'STOR',
            'WRITE',
            'XCWD',
            'XMKD',
            'XRMD',

            //mod_copy
            'SITE_CPFR', 'SITE_CPTO',

            //mod_quotatab
            'SITE_QUOTA',

            //mod_site
            'SITE_HELP', 'SITE_CHMOD', 'SITE_CHGRP',

            //mod_site_misc
            'SITE_MKDIR', 'SITE_RMDIR', 'SITE_SYMLINK', 'SITE_UTIME',
            ),
        /*keywords 2*/
        2 => array(
            'all','on','off','yes','no',
            'standalone', 'inetd',
            'default', 'auth', 'write',
            'internet', 'local', 'limit', 'ip',
            'from'
            ),
        ),
    'SYMBOLS' => array(
        '+', '-'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f;',
            2 => 'color: #0000ff;',
            3 => 'color: #000000; font-weight:bold;',
            4 => 'color: #000080; font-weight:bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #339933;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:www.proftpd.org+inurl:docs&btnI=I%27m%20Feeling%20Lucky',
        2 => '',
        3 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:www.proftpd.org+inurl:docs&btnI=I%27m%20Feeling%20Lucky',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            'SYMBOLS' => GESHI_NEVER
        ),
        'KEYWORDS' => array(
            2 => array(
                'DISALLOWED_BEFORE' => '(?<=\s)(? '(?!\+)(?!\w)',
            ),
            3 => array(
                'DISALLOWED_BEFORE' => '(?<=<|<\/)',
                'DISALLOWED_AFTER' => '(?=\s|\/|>)',
            ),
            4 => array(
                'DISALLOWED_BEFORE' => '(?<=\s)(? '(?!\+)(?=\/|(?:\s+\w+)*\s*>)',
            )
        )
    )
);

?>geshi/geshi/mysql.php0000664000175000017500000005343412014173431014051 0ustar  benbebenbe 'MySQL',
    //'COMMENT_SINGLE' => array(1 =>'--', 2 => '#'),    // '--' MUST be folowed by whitespace,not necessarily a space
    'COMMENT_SINGLE' => array(
        1 =>'-- ',
        2 => '#'
        ),
    'COMMENT_REGEXP' => array(
        1 => "/(?:--\s).*?$/",                          // double dash followed by any whitespace
        ),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,            // @@@ would be nice if this could be defined per group!
    'QUOTEMARKS' => array("'", '"', '`'),
    'ESCAPE_CHAR' => '\\',                              // by default only, can be specified
    'ESCAPE_REGEXP' => array(
        1 => "/[_%]/",                                  // search wildcards
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_OCT_PREFIX |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_SCI_SHORT |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            // Mix: statement keywords and keywords that don't fit in any other
            // category, or have multiple usage/meanings
            'ACTION','ADD','AFTER','ALGORITHM','ALL','ALTER','ANALYZE','ANY',
            'ASC','AS','BDB','BEGIN','BERKELEYDB','BINARY','BTREE','CALL',
            'CASCADED','CASCADE','CHAIN','CHANGE','CHECK','COLUMNS','COLUMN',
            'COMMENT','COMMIT','COMMITTED','CONSTRAINT','CONTAINS SQL',
            'CONSISTENT','CONVERT','CREATE','CROSS','DATA','DATABASES',
            'DECLARE','DEFINER','DELAYED','DELETE','DESCRIBE','DESC',
            'DETERMINISTIC','DISABLE','DISCARD','DISTINCTROW','DISTINCT','DO',
            'DROP','DUMPFILE','DUPLICATE KEY','ENABLE','ENCLOSED BY','ENGINE',
            'ERRORS','ESCAPED BY','EXISTS','EXPLAIN','EXTENDED','FIELDS',
            'FIRST','FOR EACH ROW','FORCE','FOREIGN KEY','FROM','FULL',
            'FUNCTION','GLOBAL','GRANT','GROUP BY','HANDLER','HASH','HAVING',
            'HELP','HIGH_PRIORITY','IF NOT EXISTS','IGNORE','IMPORT','INDEX',
            'INFILE','INNER','INNODB','INOUT','INTO','INVOKER',
            'ISOLATION LEVEL','JOIN','KEYS','KEY','KILL','LANGUAGE SQL','LAST',
            'LIMIT','LINES','LOAD','LOCAL','LOCK','LOW_PRIORITY',
            'MASTER_SERVER_ID','MATCH','MERGE','MIDDLEINT','MODIFIES SQL DATA',
            'MODIFY','MRG_MYISAM','NATURAL','NEXT','NO SQL','NO','ON',
            'OPTIMIZE','OPTIONALLY','OPTION','ORDER BY','OUTER','OUTFILE','OUT',
            'PARTIAL','PARTITION','PREV','PRIMARY KEY','PRIVILEGES','PROCEDURE',
            'PURGE','QUICK','READS SQL DATA','READ','REFERENCES','RELEASE',
            'RENAME','REORGANIZE','REPEATABLE','REQUIRE','RESTRICT','RETURNS',
            'REVOKE','ROLLBACK','ROUTINE','RTREE','SAVEPOINT','SELECT',
            'SERIALIZABLE','SESSION','SET','SHARE MODE','SHOW','SIMPLE',
            'SNAPSHOT','SOME','SONAME','SQL SECURITY','SQL_BIG_RESULT',
            'SQL_BUFFER_RESULT','SQL_CACHE','SQL_CALC_FOUND_ROWS',
            'SQL_NO_CACHE','SQL_SMALL_RESULT','SSL','START','STARTING BY',
            'STATUS','STRAIGHT_JOIN','STRIPED','TABLESPACE','TABLES','TABLE',
            'TEMPORARY','TEMPTABLE','TERMINATED BY','TO','TRANSACTIONS',
            'TRANSACTION','TRIGGER','TYPES','TYPE','UNCOMMITTED','UNDEFINED',
            'UNION','UNLOCK_TABLES','UPDATE','USAGE','USE','USER_RESOURCES',
            'USING','VALUES','VALUE','VIEW','WARNINGS','WHERE','WITH ROLLUP',
            'WITH','WORK','WRITE',
            ),
        2 => array(     //No ( must follow
            // Mix: statement keywords distinguished from functions by the same name
            "CURRENT_USER", "DATABASE", "IN", "INSERT", "DEFAULT", "REPLACE", "SCHEMA", "TRUNCATE"
            ),
        3 => array(
            // Values (Constants)
            'FALSE','NULL','TRUE',
            ),
        4 => array(
            // Column Data Types
            'BIGINT','BIT','BLOB','BOOLEAN','BOOL','CHARACTER VARYING',
            'CHAR VARYING','DATETIME','DECIMAL','DEC','DOUBLE PRECISION',
            'DOUBLE','ENUM','FIXED','FLOAT','GEOMETRYCOLLECTION','GEOMETRY',
            'INTEGER','INT','LINESTRING','LONGBLOB','LONGTEXT','MEDIUMBLOB',
            'MEDIUMINT','MEDIUMTEXT','MULTIPOINT','MULTILINESTRING',
            'MULTIPOLYGON','NATIONAL CHARACTER','NATIONAL CHARACTER VARYING',
            'NATIONAL CHAR VARYING','NATIONAL VARCHAR','NCHAR VARCHAR','NCHAR',
            'NUMERIC','POINT','POLYGON','REAL','SERIAL',
            'SMALLINT','TEXT','TIMESTAMP','TINYBLOB','TINYINT',
            'TINYTEXT','VARBINARY','VARCHARACTER','VARCHAR',
            ),
        5 => array(     //No ( must follow
            // Column data types distinguished from functions by the same name
            "CHAR", "DATE", "TIME"
            ),
        6 => array(
            // Table, Column & Index Attributes
            'AUTO_INCREMENT','AVG_ROW_LENGTH','BOTH','CHECKSUM','CONNECTION',
            'DATA DIRECTORY','DEFAULT NULL','DELAY_KEY_WRITE','FULLTEXT',
            'INDEX DIRECTORY','INSERT_METHOD','LEADING','MAX_ROWS','MIN_ROWS',
            'NOT NULL','PACK_KEYS','ROW_FORMAT','SERIAL DEFAULT VALUE','SIGNED',
            'SPATIAL','TRAILING','UNIQUE','UNSIGNED','ZEROFILL'
            ),
        7 => array(     //No ( must follow
            // Column attribute distinguished from function by the same name
            "CHARSET"
            ),
        8 => array(
            // Date and Time Unit Specifiers
            'DAY_HOUR','DAY_MICROSECOND','DAY_MINUTE','DAY_SECOND',
            'HOUR_MICROSECOND','HOUR_MINUTE','HOUR_SECOND',
            'MINUTE_MICROSECOND','MINUTE_SECOND',
            'SECOND_MICROSECOND','YEAR_MONTH'
            ),
        9 => array(     //No ( must follow
            // Date-time unit specifiers distinguished from functions by the same name
            "DAY", "HOUR", "MICROSECOND", "MINUTE", "MONTH", "QUARTER", "SECOND", "WEEK", "YEAR"
            ),
        10 => array(
            // Operators (see also Symbols)
            'AND','BETWEEN','CHARACTER SET','COLLATE','DIV','IS NOT NULL',
            'IS NOT','IS NULL','IS','LIKE','NOT','OFFSET','OR','REGEXP','RLIKE',
            'SOUNDS LIKE','XOR'
            ),
        11 => array(     //No ( must follow
            // Operator distinghuished from function by the same name
            "INTERVAL"
            ),
        12 => array(
            // Control Flow (functions)
            'CASE','ELSE','END','IFNULL','IF','NULLIF','THEN','WHEN',
            ),
        13 => array(
            // String Functions
            'ASCII','BIN','BIT_LENGTH','CHAR_LENGTH','CHARACTER_LENGTH',
            'CONCAT_WS','CONCAT','ELT','EXPORT_SET','FIELD',
            'FIND_IN_SET','FORMAT','HEX','INSTR','LCASE','LEFT','LENGTH',
            'LOAD_FILE','LOCATE','LOWER','LPAD','LTRIM','MAKE_SET','MID',
            'OCTET_LENGTH','ORD','POSITION','QUOTE','REPEAT','REVERSE',
            'RIGHT','RPAD','RTRIM','SOUNDEX','SPACE','STRCMP','SUBSTRING_INDEX',
            'SUBSTRING','TRIM','UCASE','UNHEX','UPPER',
            ),
        14 => array(     //A ( must follow
            // String functions distinguished from other keywords by the same name
            "INSERT", "REPLACE", "CHAR"
            ),
        15 => array(
            // Numeric Functions
            'ABS','ACOS','ASIN','ATAN2','ATAN','CEILING','CEIL',
            'CONV','COS','COT','CRC32','DEGREES','EXP','FLOOR','LN','LOG10',
            'LOG2','LOG','MOD','OCT','PI','POWER','POW','RADIANS','RAND',
            'ROUND','SIGN','SIN','SQRT','TAN',
            ),
        16 => array(     //A ( must follow
            // Numeric function distinguished from other keyword by the same name
            "TRUNCATE"
            ),
        17 => array(
            // Date and Time Functions
            'ADDDATE','ADDTIME','CONVERT_TZ','CURDATE','CURRENT_DATE',
            'CURRENT_TIME','CURRENT_TIMESTAMP','CURTIME','DATE_ADD',
            'DATE_FORMAT','DATE_SUB','DATEDIFF','DAYNAME','DAYOFMONTH',
            'DAYOFWEEK','DAYOFYEAR','EXTRACT','FROM_DAYS','FROM_UNIXTIME',
            'GET_FORMAT','LAST_DAY','LOCALTIME','LOCALTIMESTAMP','MAKEDATE',
            'MAKETIME','MONTHNAME','NOW','PERIOD_ADD',
            'PERIOD_DIFF','SEC_TO_TIME','STR_TO_DATE','SUBDATE','SUBTIME',
            'SYSDATE','TIME_FORMAT','TIME_TO_SEC',
            'TIMESTAMPADD','TIMESTAMPDIFF','TO_DAYS',
            'UNIX_TIMESTAMP','UTC_DATE','UTC_TIME','UTC_TIMESTAMP','WEEKDAY',
            'WEEKOFYEAR','YEARWEEK',
            ),
        18 => array(     //A ( must follow
            // Date-time functions distinguished from other keywords by the same name
            "DATE", "DAY", "HOUR", "MICROSECOND", "MINUTE", "MONTH", "QUARTER",
            "SECOND", "TIME", "WEEK", "YEAR"
            ),
        19 => array(
            // Comparison Functions
            'COALESCE','GREATEST','ISNULL','LEAST',
            ),
        20 => array(     //A ( must follow
            // Comparison functions distinguished from other keywords by the same name
            "IN", "INTERVAL"
            ),
        21 => array(
            // Encryption and Compression Functions
            'AES_DECRYPT','AES_ENCRYPT','COMPRESS','DECODE','DES_DECRYPT',
            'DES_ENCRYPT','ENCODE','ENCRYPT','MD5','OLD_PASSWORD','PASSWORD',
            'SHA1','SHA','UNCOMPRESS','UNCOMPRESSED_LENGTH',
            ),
        22 => array(
            // GROUP BY (aggregate) Functions
            'AVG','BIT_AND','BIT_OR','BIT_XOR','COUNT','GROUP_CONCAT',
            'MAX','MIN','STDDEV_POP','STDDEV_SAMP','STDDEV','STD','SUM',
            'VAR_POP','VAR_SAMP','VARIANCE',
            ),
        23 => array(
            // Information Functions
            'BENCHMARK','COERCIBILITY','COLLATION','CONNECTION_ID',
            'FOUND_ROWS','LAST_INSERT_ID','ROW_COUNT',
            'SESSION_USER','SYSTEM_USER','USER','VERSION',
            ),
        24 => array(     //A ( must follow
            // Information functions distinguished from other keywords by the same name
            "CURRENT_USER", "DATABASE", "SCHEMA", "CHARSET"
            ),
        25 => array(
            // Miscellaneous Functions
            'ExtractValue','BIT_COUNT','GET_LOCK','INET_ATON','INET_NTOA',
            'IS_FREE_LOCK','IS_USED_LOCK','MASTER_POS_WAIT','NAME_CONST',
            'RELEASE_LOCK','SLEEP','UpdateXML','UUID',
            ),
        26 => array(     //A ( must follow
            // Miscellaneous function distinguished from other keyword by the same name
            "DEFAULT"
            ),
        27 => array(
            // Geometry Functions
            'Area','AsBinary','AsText','AsWKB','AsWKT','Boundary','Buffer',
            'Centroid','Contains','ConvexHull','Crosses',
            'Difference','Dimension','Disjoint','Distance',
            'EndPoint','Envelope','Equals','ExteriorRing',
            'GLength','GeomCollFromText','GeomCollFromWKB','GeomFromText',
            'GeomFromWKB','GeometryCollectionFromText',
            'GeometryCollectionFromWKB','GeometryFromText','GeometryFromWKB',
            'GeometryN','GeometryType',
            'InteriorRingN','Intersection','Intersects','IsClosed','IsEmpty',
            'IsRing','IsSimple',
            'LineFromText','LineFromWKB','LineStringFromText',
            'LineStringFromWKB',
            'MBRContains','MBRDisjoint','MBREqual','MBRIntersects',
            'MBROverlaps','MBRTouches','MBRWithin','MLineFromText',
            'MLineFromWKB','MPointFromText','MPointFromWKB','MPolyFromText',
            'MPolyFromWKB','MultiLineStringFromText','MultiLineStringFromWKB',
            'MultiPointFromText','MultiPointFromWKB','MultiPolygonFromText',
            'MultiPolygonFromWKB',
            'NumGeometries','NumInteriorRings','NumPoints',
            'Overlaps',
            'PointFromText','PointFromWKB','PointN','PointOnSurface',
            'PolyFromText','PolyFromWKB','PolygonFromText','PolygonFromWKB',
            'Related','SRID','StartPoint','SymDifference',
            'Touches',
            'Union',
            'Within',
            'X',
            'Y',
            ),
        ),
    'SYMBOLS' => array(
        1 => array(
            /* Operators */
            '=', ':=',                                      // assignment operators
            '||', '&&', '!',                                // locical operators
            '=', '<=>', '>=', '>', '<=', '<', '<>', '!=',   // comparison operators
            '|', '&', '^', '~', '<<', '>>',                 // bitwise operators
            '-', '+', '*', '/', '%',                        // numerical operators
            ),
        2 => array(
            /* Other syntactical symbols */
            '(', ')',
            ',', ';',
            ),
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        9 => false,
        10 => false,
        11 => false,
        12 => false,
        13 => false,
        13 => false,
        14 => false,
        15 => false,
        16 => false,
        17 => false,
        18 => false,
        19 => false,
        20 => false,
        21 => false,
        22 => false,
        23 => false,
        24 => false,
        25 => false,
        26 => false,
        27 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #990099; font-weight: bold;',      // mix
            2 => 'color: #990099; font-weight: bold;',      // mix
            3 => 'color: #9900FF; font-weight: bold;',      // constants
            4 => 'color: #999900; font-weight: bold;',      // column data types
            5 => 'color: #999900; font-weight: bold;',      // column data types
            6 => 'color: #FF9900; font-weight: bold;',      // attributes
            7 => 'color: #FF9900; font-weight: bold;',      // attributes
            8 => 'color: #9900FF; font-weight: bold;',      // date-time units
            9 => 'color: #9900FF; font-weight: bold;',      // date-time units

            10 => 'color: #CC0099; font-weight: bold;',      // operators
            11 => 'color: #CC0099; font-weight: bold;',      // operators

            12 => 'color: #009900;',     // control flow (functions)
            13 => 'color: #000099;',     // string functions
            14 => 'color: #000099;',     // string functions
            15 => 'color: #000099;',     // numeric functions
            16 => 'color: #000099;',     // numeric functions
            17 => 'color: #000099;',     // date-time functions
            18 => 'color: #000099;',     // date-time functions
            19 => 'color: #000099;',     // comparison functions
            20 => 'color: #000099;',     // comparison functions
            21 => 'color: #000099;',     // encryption functions
            22 => 'color: #000099;',     // aggregate functions
            23 => 'color: #000099;',     // information functions
            24 => 'color: #000099;',     // information functions
            25 => 'color: #000099;',     // miscellaneous functions
            26 => 'color: #000099;',     // miscellaneous functions
            27 => 'color: #00CC00;',     // geometry functions
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #808000; font-style: italic;',
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #004000; font-weight: bold;',
            1 => 'color: #008080; font-weight: bold;'       // search wildcards
            ),
        'BRACKETS' => array(
            0 => 'color: #FF00FF;'
            ),
        'STRINGS' => array(
            0 => 'color: #008000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #008080;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            1 => 'color: #CC0099;',         // operators
            2 => 'color: #000033;',         // syntax
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        2 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        3 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        4 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        5 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        6 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        7 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        8 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',
        9 => 'http://search.oracle.com/search/search?group=MySQL&q={FNAME}',

        10 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html',
        11 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html',

        12 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/control-flow-functions.html',
        13 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/string-functions.html',
        14 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/string-functions.html',
        15 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/numeric-functions.html',
        16 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/numeric-functions.html',
        17 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/date-and-time-functions.html',
        18 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/date-and-time-functions.html',
        19 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/comparison-operators.html',
        20 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/comparison-operators.html',
        21 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/encryption-functions.html',
        22 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/group-by-functions-and-modifiers.html',
        23 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/information-functions.html',
        24 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/information-functions.html',
        25 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/func-op-summary-ref.html',
        26 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/func-op-summary-ref.html',
        27 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/analysing-spatial-information.html',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            2 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),
            5 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),
            7 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),
            9 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),
            11 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),

            14 => array(
                'DISALLOWED_AFTER' => '(?=\()'
                ),
            16 => array(
                'DISALLOWED_AFTER' => '(?=\()'
                ),
            18 => array(
                'DISALLOWED_AFTER' => '(?=\()'
                ),
            20 => array(
                'DISALLOWED_AFTER' => '(?=\()'
                ),
            24 => array(
                'DISALLOWED_AFTER' => '(?=\()'
                ),
            26 => array(
                'DISALLOWED_AFTER' => '(?=\()'
                )
            )
        )
);

?>geshi/geshi/kixtart.php0000664000175000017500000002036112014173375014372 0ustar  benbebenbe 'KiXtart',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'While', 'Loop',
            'Use',
            'Small',
            'Sleep',
            'Shell',
            'SetTime',
            'SetM',
            'SetL',
            'Set',
            'Select', 'Case',
            'Run',
            'Return',
            'Redim',
            'RD',
            'Quit',
            'Play',
            'Move',
            'MD',
            'Include',
            'If', 'Else', 'Endif',
            'GoTo',
            'GoSub',
            'Go',
            'Global',
            'GetS',
            'Get',
            'Function', 'Endfunction',
            'For', 'Next',
            'Each',
            'FlushKb',
            'Exit',
            'Do', 'Until',
            'Display',
            'Dim',
            'Del',
            'Debug',
            'Copy',
            'Cookie1',
            'Color',
            'CLS',
            'CD',
            'Call',
            'Break',
            'Big',
            'Beep',
            ),
        2 => array(
            '@Address',
            '@Build',
            '@Color',
            '@Comment',
            '@CPU',
            '@CRLF',
            '@CSD',
            '@CurDir',
            '@Date',
            '@Day',
            '@Domain',
            '@DOS',
            '@Error',
            '@FullName',
            '@HomeDir',
            '@HomeDrive',
            '@HomeShr',
            '@HostName',
            '@InWin',
            '@IPaddressX',
            '@KiX',
            '@LanRoot',
            '@LDomain',
            '@LDrive',
            '@LM',
            '@LogonMode',
            '@LongHomeDir',
            '@LServer',
            '@MaxPWAge',
            '@MDayNo',
            '@MHz',
            '@MonthNo',
            '@Month',
            '@MSecs',
            '@OnWoW64',
            '@PID',
            '@PrimaryGroup',
            '@Priv',
            '@ProductSuite',
            '@ProductType',
            '@PWAge',
            '@RAS',
            '@Result',
            '@RServer',
            '@ScriptDir',
            '@ScriptExe',
            '@ScriptName',
            '@SError',
            '@SID',
            '@Site',
            '@StartDir',
            '@SysLang',
            '@Ticks',
            '@Time',
            '@TsSession',
            '@UserID',
            '@UserLang',
            '@WDayNo',
            '@Wksta',
            '@WUserID',
            '@YDayNo',
            '@Year',
            ),
        3 => array(
            'WriteValue',
            'WriteProfileString',
            'WriteLine',
            'VarTypeName',
            'VarType',
            'Val',
            'UnloadHive',
            'UCase',
            'Ubound',
            'Trim',
            'Substr',
            'SRnd',
            'Split',
            'SidToName',
            'ShutDown',
            'ShowProgramGroup',
            'SetWallpaper',
            'SetTitle',
            'SetSystemState',
            'SetOption',
            'SetFocus',
            'SetFileAttr',
            'SetDefaultPrinter',
            'SetConsole',
            'SetAscii',
            'SendMessage',
            'SendKeys',
            'SaveKey',
            'RTrim',
            'Round',
            'Rnd',
            'Right',
            'RedirectOutput',
            'ReadValue',
            'ReadType',
            'ReadProfileString',
            'ReadLine',
            'Open',
            'MessageBox',
            'MemorySize',
            'LTrim',
            'Logoff',
            'LogEvent',
            'LoadKey',
            'LoadHive',
            'Len',
            'Left',
            'LCase',
            'KeyExist',
            'KbHit',
            'Join',
            'IsDeclared',
            'Int',
            'InStrRev',
            'InStr',
            'InGroup',
            'IIF',
            'GetObject',
            'GetFileVersion',
            'GetFileTime',
            'GetFileSize',
            'GetFileAttr',
            'GetDiskSpace',
            'FreeFileHandle',
            'FormatNumber',
            'Fix',
            'ExpandEnvironmentVars',
            'Exist',
            'Execute',
            'EnumValue',
            'EnumLocalGroup',
            'EnumKey',
            'EnumIpInfo',
            'EnumGroup',
            'Dir',
            'DelValue',
            'DelTree',
            'DelProgramItem',
            'DelProgramGroup',
            'DelPrinterConnection',
            'DelKey',
            'DecToHex',
            'CStr',
            'CreateObject',
            'CompareFileTimes',
            'Close',
            'ClearEventLog',
            'CInt',
            'Chr',
            'CDbl',
            'Box',
            'BackupEventLog',
            'At',
            'AScan',
            'Asc',
            'AddProgramItem',
            'AddProgramGroup',
            'AddPrinterConnection',
            'AddKey',
            'Abs'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '?', ':', '+', '-', '*', '/', '&', '|', '^', '~', '<', '>', '='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://www.kixtart.org/manual/Commands/{FNAMEL}.htm',
        2 => '',
        3 => 'http://www.kixtart.org/manual/Functions/{FNAMEL}.htm'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true,
        2 => true,
        3 => true
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/go.php0000664000175000017500000005065012014173414013307 0ustar  benbebenbe 'Go',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        # Raw strings (escapes and linebreaks ignored)
        2 => "#`[^`]*`#"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'"),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        1 => "#\\\\[abfnrtv\\\\\'\"]#",
        2 => "#\\\\[0-7]{3}#",
        3 => "#\\\\x[0-9a-fA-F]{2}#",
        4 => "#\\\\u[0-9a-fA-F]{4}#",
        5 => "#\\\\U[0-9a-fA-F]{8}#"
        ),
    'NUMBERS' => array(
        # integer literals (possibly imaginary)
        0 => '\b([1-9][0-9]*i?|0[0-7]*|0[xX][0-9a-f]+|0[0-9]*i)\b',
        # real floating point literals
        1 => '\b((?:\d+\.\d*(?:[Ee][+-]?\d+\b)?|\.\d+(?:[Ee][+-]?\d+)?|\d+[Ee][+-]?\d+)?)\b',
        # imaginary floating point literals
        2 => '\b((?:\d+\.\d*(?:[Ee][+-]?\d+)?|\.\d+(?:[Ee][+-]?\d+)?|\d+[Ee][+-]?\d+)?i)\b'
        ),
    'KEYWORDS' => array(
        # statements
        1 => array(
            'break', 'case', 'const', 'continue', 'default', 'defer', 'else',
            'fallthrough', 'for', 'go', 'goto', 'if', 'import', 'package',
            'range', 'return', 'select', 'switch', 'type', 'var'
            ),
        # literals
        2 => array(
            'nil', 'true', 'false'
            ),
        # built-in functions
        3 => array(
            'close', 'closed', 'len', 'cap', 'new', 'make', 'copy', 'cmplx',
            'real', 'imag', 'panic', 'recover', 'print', 'println'
            ),
        # built-in types
        4 => array(
            'chan', 'func', 'interface', 'map', 'struct', 'bool', 'uint8',
            'uint16', 'uint32', 'uint64', 'int8', 'int16', 'int32', 'int64',
            'float32', 'float64', 'complex64', 'complex128', 'byte', 'uint',
            'int', 'float', 'complex', 'uintptr', 'string'
            ),
        # library types
        5 => array(
            'aes.Cipher', 'aes.KeySizeError', 'ascii85.CorruptInputError', 'asn1.BitString',
            'asn1.RawValue', 'asn1.StructuralError', 'asn1.SyntaxError', 'ast.ChanDir',
            'ast.Comment', 'ast.CommentGroup', 'ast.Decl', 'ast.Expr', 'ast.Field',
            'ast.FieldList', 'ast.File', 'ast.Filter', 'ast.MergeMode', 'ast.Node',
            'ast.ObjKind', 'ast.Object', 'ast.Package', 'ast.Scope', 'ast.Stmt',
            'ast.Visitor', 'av.Color', 'av.Image', 'av.Window', 'base64.CorruptInputError',
            'base64.Encoding', 'big.Int', 'big.Word', 'bignum.Integer', 'bignum.Rational',
            'binary.ByteOrder', 'block.Cipher', 'block.EAXTagError', 'blowfish.Cipher',
            'blowfish.KeySizeError', 'bufio.BufSizeError', 'bufio.Error', 'bufio.ReadWriter',
            'bufio.Reader', 'bufio.Writer', 'bytes.Buffer', 'datafmt.Environment',
            'datafmt.Format', 'datafmt.Formatter', 'datafmt.FormatterMap', 'datafmt.State',
            'doc.Filter', 'doc.FuncDoc', 'doc.PackageDoc', 'doc.TypeDoc', 'doc.ValueDoc',
            'draw.Color', 'draw.Context', 'draw.Image', 'draw.Mouse', 'draw.Op',
            'draw.Point', 'draw.Rectangle', 'dwarf.AddrType', 'dwarf.ArrayType',
            'dwarf.Attr', 'dwarf.BasicType', 'dwarf.BoolType', 'dwarf.CharType',
            'dwarf.CommonType', 'dwarf.ComplexType', 'dwarf.Data', 'dwarf.DecodeError',
            'dwarf.DotDotDotType', 'dwarf.Entry', 'dwarf.EnumType', 'dwarf.EnumValue',
            'dwarf.Field', 'dwarf.FloatType', 'dwarf.FuncType', 'dwarf.IntType',
            'dwarf.Offset', 'dwarf.PtrType', 'dwarf.QualType', 'dwarf.Reader',
            'dwarf.StructField', 'dwarf.StructType', 'dwarf.Tag', 'dwarf.Type',
            'dwarf.TypedefType', 'dwarf.UcharType', 'dwarf.UintType', 'dwarf.VoidType',
            'elf.Class', 'elf.Data', 'elf.Dyn32', 'elf.Dyn64', 'elf.DynFlag', 'elf.DynTag',
            'elf.File', 'elf.FileHeader', 'elf.FormatError', 'elf.Header32', 'elf.Header64',
            'elf.Machine', 'elf.NType', 'elf.OSABI', 'elf.Prog', 'elf.Prog32', 'elf.Prog64',
            'elf.ProgFlag', 'elf.ProgHeader', 'elf.ProgType', 'elf.R_386', 'elf.R_ALPHA',
            'elf.R_ARM', 'elf.R_PPC', 'elf.R_SPARC', 'elf.R_X86_64', 'elf.Rel32',
            'elf.Rel64', 'elf.Rela32', 'elf.Rela64', 'elf.Section', 'elf.Section32',
            'elf.Section64', 'elf.SectionFlag', 'elf.SectionHeader', 'elf.SectionIndex',
            'elf.SectionType', 'elf.Sym32', 'elf.Sym64', 'elf.SymBind', 'elf.SymType',
            'elf.SymVis', 'elf.Symbol', 'elf.Type', 'elf.Version', 'eval.ArrayType',
            'eval.ArrayValue', 'eval.BoolValue', 'eval.BoundedType', 'eval.ChanType',
            'eval.Code', 'eval.Constant', 'eval.Def', 'eval.DivByZeroError',
            'eval.FloatValue', 'eval.Frame', 'eval.Func', 'eval.FuncDecl', 'eval.FuncType',
            'eval.FuncValue', 'eval.IMethod', 'eval.IdealFloatValue', 'eval.IdealIntValue',
            'eval.IndexError', 'eval.IntValue', 'eval.Interface', 'eval.InterfaceType',
            'eval.InterfaceValue', 'eval.KeyError', 'eval.Map', 'eval.MapType',
            'eval.MapValue', 'eval.Method', 'eval.MultiType', 'eval.NamedType',
            'eval.NegativeCapacityError', 'eval.NegativeLengthError', 'eval.NilPointerError',
            'eval.PtrType', 'eval.PtrValue', 'eval.RedefinitionError', 'eval.Scope',
            'eval.Slice', 'eval.SliceError', 'eval.SliceType', 'eval.SliceValue',
            'eval.StringValue', 'eval.StructField', 'eval.StructType', 'eval.StructValue',
            'eval.Thread', 'eval.Type', 'eval.UintValue', 'eval.Value', 'eval.Variable',
            'eval.World', 'exec.Cmd', 'expvar.Int', 'expvar.IntFunc', 'expvar.KeyValue',
            'expvar.Map', 'expvar.String', 'expvar.StringFunc', 'expvar.Var', 'flag.Flag',
            'flag.Value', 'flate.CorruptInputError', 'flate.InternalError',
            'flate.ReadError', 'flate.Reader', 'flate.WriteError', 'flate.WrongValueError',
            'fmt.Formatter', 'fmt.GoStringer', 'fmt.State', 'fmt.Stringer',
            'git85.CorruptInputError', 'gob.Decoder', 'gob.Encoder', 'gosym.DecodingError',
            'gosym.Func', 'gosym.LineTable', 'gosym.Obj', 'gosym.Sym', 'gosym.Table',
            'gosym.UnknownFileError', 'gosym.UnknownLineError', 'gzip.Deflater',
            'gzip.Header', 'gzip.Inflater', 'hash.Hash', 'hash.Hash32', 'hash.Hash64',
            'heap.Interface', 'hex.InvalidHexCharError', 'hex.OddLengthInputError',
            'http.ClientConn', 'http.Conn', 'http.Handler', 'http.HandlerFunc',
            'http.ProtocolError', 'http.Request', 'http.Response', 'http.ServeMux',
            'http.ServerConn', 'http.URL', 'http.URLError', 'http.URLEscapeError',
            'image.Alpha', 'image.AlphaColor', 'image.Color', 'image.ColorImage',
            'image.ColorModel', 'image.ColorModelFunc', 'image.Image', 'image.NRGBA',
            'image.NRGBA64', 'image.NRGBA64Color', 'image.NRGBAColor', 'image.Paletted',
            'image.RGBA', 'image.RGBA64', 'image.RGBA64Color', 'image.RGBAColor',
            'io.Closer', 'io.Error', 'io.PipeReader', 'io.PipeWriter', 'io.ReadByter',
            'io.ReadCloser', 'io.ReadSeeker', 'io.ReadWriteCloser', 'io.ReadWriteSeeker',
            'io.ReadWriter', 'io.Reader', 'io.ReaderAt', 'io.ReaderFrom', 'io.SectionReader',
            'io.Seeker', 'io.WriteCloser', 'io.WriteSeeker', 'io.Writer', 'io.WriterAt',
            'io.WriterTo', 'iterable.Func', 'iterable.Group', 'iterable.Grouper',
            'iterable.Injector', 'iterable.Iterable', 'jpeg.FormatError', 'jpeg.Reader',
            'jpeg.UnsupportedError', 'json.Decoder', 'json.Encoder',
            'json.InvalidUnmarshalError', 'json.Marshaler', 'json.MarshalerError',
            'json.SyntaxError', 'json.UnmarshalTypeError', 'json.Unmarshaler',
            'json.UnsupportedTypeError', 'list.Element', 'list.List', 'log.Logger',
            'macho.Cpu', 'macho.File', 'macho.FileHeader', 'macho.FormatError', 'macho.Load',
            'macho.LoadCmd', 'macho.Regs386', 'macho.RegsAMD64', 'macho.Section',
            'macho.Section32', 'macho.Section64', 'macho.SectionHeader', 'macho.Segment',
            'macho.Segment32', 'macho.Segment64', 'macho.SegmentHeader', 'macho.Thread',
            'macho.Type', 'net.Addr', 'net.AddrError', 'net.Conn', 'net.DNSConfigError',
            'net.DNSError', 'net.Error', 'net.InvalidAddrError', 'net.InvalidConnError',
            'net.Listener', 'net.OpError', 'net.PacketConn', 'net.TCPAddr', 'net.TCPConn',
            'net.TCPListener', 'net.UDPAddr', 'net.UDPConn', 'net.UnixAddr', 'net.UnixConn',
            'net.UnixListener', 'net.UnknownNetworkError', 'net.UnknownSocketError',
            'netchan.Dir', 'netchan.Exporter', 'netchan.Importer', 'nntp.Article',
            'nntp.Conn', 'nntp.Error', 'nntp.Group', 'nntp.ProtocolError', 'ogle.Arch',
            'ogle.ArchAlignedMultiple', 'ogle.ArchLSB', 'ogle.Breakpoint', 'ogle.Event',
            'ogle.EventAction', 'ogle.EventHandler', 'ogle.EventHook', 'ogle.FormatError',
            'ogle.Frame', 'ogle.Goroutine', 'ogle.GoroutineCreate', 'ogle.GoroutineExit',
            'ogle.NoCurrentGoroutine', 'ogle.NotOnStack', 'ogle.Process',
            'ogle.ProcessNotStopped', 'ogle.ReadOnlyError', 'ogle.RemoteMismatchError',
            'ogle.UnknownArchitecture', 'ogle.UnknownGoroutine', 'ogle.UsageError',
            'os.Errno', 'os.Error', 'os.ErrorString', 'os.File', 'os.FileInfo',
            'os.LinkError', 'os.PathError', 'os.SyscallError', 'os.Waitmsg', 'patch.Diff',
            'patch.File', 'patch.GitBinaryLiteral', 'patch.Op', 'patch.Set',
            'patch.SyntaxError', 'patch.TextChunk', 'patch.Verb', 'path.Visitor',
            'pdp1.HaltError', 'pdp1.LoopError', 'pdp1.Trapper', 'pdp1.UnknownInstrError',
            'pdp1.Word', 'pem.Block', 'png.FormatError', 'png.IDATDecodingError',
            'png.UnsupportedError', 'printer.Config', 'printer.HTMLTag', 'printer.Styler',
            'proc.Breakpoint', 'proc.Cause', 'proc.Process', 'proc.ProcessExited',
            'proc.Regs', 'proc.Signal', 'proc.Stopped', 'proc.Thread', 'proc.ThreadCreate',
            'proc.ThreadExit', 'proc.Word', 'quick.CheckEqualError', 'quick.CheckError',
            'quick.Config', 'quick.Generator', 'quick.SetupError', 'rand.Rand',
            'rand.Source', 'rand.Zipf', 'rc4.Cipher', 'rc4.KeySizeError',
            'reflect.ArrayOrSliceType', 'reflect.ArrayOrSliceValue', 'reflect.ArrayType',
            'reflect.ArrayValue', 'reflect.BoolType', 'reflect.BoolValue', 'reflect.ChanDir',
            'reflect.ChanType', 'reflect.ChanValue', 'reflect.Complex128Type',
            'reflect.Complex128Value', 'reflect.Complex64Type', 'reflect.Complex64Value',
            'reflect.ComplexType', 'reflect.ComplexValue', 'reflect.Float32Type',
            'reflect.Float32Value', 'reflect.Float64Type', 'reflect.Float64Value',
            'reflect.FloatType', 'reflect.FloatValue', 'reflect.FuncType',
            'reflect.FuncValue', 'reflect.Int16Type', 'reflect.Int16Value',
            'reflect.Int32Type', 'reflect.Int32Value', 'reflect.Int64Type',
            'reflect.Int64Value', 'reflect.Int8Type', 'reflect.Int8Value', 'reflect.IntType',
            'reflect.IntValue', 'reflect.InterfaceType', 'reflect.InterfaceValue',
            'reflect.MapType', 'reflect.MapValue', 'reflect.Method', 'reflect.PtrType',
            'reflect.PtrValue', 'reflect.SliceHeader', 'reflect.SliceType',
            'reflect.SliceValue', 'reflect.StringHeader', 'reflect.StringType',
            'reflect.StringValue', 'reflect.StructField', 'reflect.StructType',
            'reflect.StructValue', 'reflect.Type', 'reflect.Uint16Type',
            'reflect.Uint16Value', 'reflect.Uint32Type', 'reflect.Uint32Value',
            'reflect.Uint64Type', 'reflect.Uint64Value', 'reflect.Uint8Type',
            'reflect.Uint8Value', 'reflect.UintType', 'reflect.UintValue',
            'reflect.UintptrType', 'reflect.UintptrValue', 'reflect.UnsafePointerType',
            'reflect.UnsafePointerValue', 'reflect.Value', 'regexp.Error', 'regexp.Regexp',
            'ring.Ring', 'rpc.Call', 'rpc.Client', 'rpc.ClientCodec', 'rpc.InvalidRequest',
            'rpc.Request', 'rpc.Response', 'rpc.ServerCodec', 'rsa.DecryptionError',
            'rsa.MessageTooLongError', 'rsa.PKCS1v15Hash', 'rsa.PrivateKey', 'rsa.PublicKey',
            'rsa.VerificationError', 'runtime.ArrayType', 'runtime.BoolType',
            'runtime.ChanDir', 'runtime.ChanType', 'runtime.Complex128Type',
            'runtime.Complex64Type', 'runtime.ComplexType', 'runtime.Error',
            'runtime.Float32Type', 'runtime.Float64Type', 'runtime.FloatType',
            'runtime.Func', 'runtime.FuncType', 'runtime.Int16Type', 'runtime.Int32Type',
            'runtime.Int64Type', 'runtime.Int8Type', 'runtime.IntType',
            'runtime.InterfaceType', 'runtime.Itable', 'runtime.MapType',
            'runtime.MemProfileRecord', 'runtime.MemStatsType', 'runtime.PtrType',
            'runtime.SliceType', 'runtime.StringType', 'runtime.StructType', 'runtime.Type',
            'runtime.TypeAssertionError', 'runtime.Uint16Type', 'runtime.Uint32Type',
            'runtime.Uint64Type', 'runtime.Uint8Type', 'runtime.UintType',
            'runtime.UintptrType', 'runtime.UnsafePointerType', 'scanner.Error',
            'scanner.ErrorHandler', 'scanner.ErrorVector', 'scanner.Position',
            'scanner.Scanner', 'script.Close', 'script.Closed', 'script.Event',
            'script.ReceivedUnexpected', 'script.Recv', 'script.RecvMatch', 'script.Send',
            'script.SetupError', 'signal.Signal', 'signal.UnixSignal', 'sort.Interface',
            'srpc.Client', 'srpc.Errno', 'srpc.Handler', 'srpc.RPC', 'strconv.NumError',
            'strings.Reader', 'sync.Mutex', 'sync.RWMutex',
            'syscall.ByHandleFileInformation', 'syscall.Cmsghdr', 'syscall.Dirent',
            'syscall.EpollEvent', 'syscall.Fbootstraptransfer_t', 'syscall.FdSet',
            'syscall.Filetime', 'syscall.Flock_t', 'syscall.Fstore_t', 'syscall.Iovec',
            'syscall.Kevent_t', 'syscall.Linger', 'syscall.Log2phys_t', 'syscall.Msghdr',
            'syscall.Overlapped', 'syscall.PtraceRegs', 'syscall.Radvisory_t',
            'syscall.RawSockaddr', 'syscall.RawSockaddrAny', 'syscall.RawSockaddrInet4',
            'syscall.RawSockaddrInet6', 'syscall.RawSockaddrUnix', 'syscall.Rlimit',
            'syscall.Rusage', 'syscall.Sockaddr', 'syscall.SockaddrInet4',
            'syscall.SockaddrInet6', 'syscall.SockaddrUnix', 'syscall.Stat_t',
            'syscall.Statfs_t', 'syscall.Sysinfo_t', 'syscall.Time_t', 'syscall.Timespec',
            'syscall.Timeval', 'syscall.Timex', 'syscall.Tms', 'syscall.Ustat_t',
            'syscall.Utimbuf', 'syscall.Utsname', 'syscall.WaitStatus',
            'syscall.Win32finddata', 'syslog.Priority', 'syslog.Writer', 'tabwriter.Writer',
            'tar.Header', 'tar.Reader', 'tar.Writer', 'template.Error',
            'template.FormatterMap', 'template.Template', 'testing.Benchmark',
            'testing.Regexp', 'testing.Test', 'time.ParseError', 'time.Ticker', 'time.Time',
            'tls.CASet', 'tls.Certificate', 'tls.Config', 'tls.Conn', 'tls.ConnectionState',
            'tls.Listener', 'token.Position', 'token.Token', 'unicode.CaseRange',
            'unicode.Range', 'unsafe.ArbitraryType', 'vector.LessInterface',
            'websocket.Conn', 'websocket.Draft75Handler', 'websocket.Handler',
            'websocket.ProtocolError', 'websocket.WebSocketAddr', 'x509.Certificate',
            'x509.ConstraintViolationError', 'x509.KeyUsage', 'x509.Name',
            'x509.PublicKeyAlgorithm', 'x509.SignatureAlgorithm',
            'x509.UnhandledCriticalExtension', 'x509.UnsupportedAlgorithmError', 'xml.Attr',
            'xml.EndElement', 'xml.Name', 'xml.Parser', 'xml.ProcInst', 'xml.StartElement',
            'xml.SyntaxError', 'xml.Token', 'xml.UnmarshalError', 'xtea.Cipher',
            'xtea.KeySizeError'
            )
        ),
    'SYMBOLS' => array(
        # delimiters
        1 => array(
            '(', ')', '{', '}', '[', ']', ',', ':', ';'
            ),
        # assignments
        2 => array(
            '<<=', '!=', '%=', '&=', '&^=', '*=', '+=', '-=', '/=', ':=', '>>=',
            '^=', '|=', '=', '++', '--'
            ),
        # operators
        3 => array(
            '<=', '<', '==', '>', '>=', '&&', '!', '||', '&', '&^', '|', '^',
            '>>', '<<', '*', '%', '+', '-', '.', '/', '<-'),
        # vararg
        4 => array(
            '...'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            # statements
            1 => 'color: #b1b100; font-weight: bold;',
            # literals
            2 => 'color: #000000; font-weight: bold;',
            # built-in functions
            3 => 'color: #000066;',
            # built-in types
            4 => 'color: #993333;',
            # library types
            5 => 'color: #003399;'
            ),
        'COMMENTS' => array(
            # single-line comments
            1 => 'color: #666666; font-style: italic;',
            # raw strings
            2 => 'color: #0000ff;',
            # multi-line comments
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            # simple escape
            1 => 'color: #000099; font-weight: bold;',
            # octal escape
            2 => 'color: #000099;',
            # hex escape
            3 => 'color: #000099;',
            # unicode escape
            4 => 'color: #000099;',
            # long unicode escape
            5 => 'color: #000099;'
            ),
        'BRACKETS' => array(
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;',
            0 => 'color: #cc66cc;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            # delimiters
            1 => 'color: #339933;',
            # assignments
            2 => 'color: #339933;',
            # operators
            3 => 'color: #339933;',
            # vararg (highlighted as a keyword)
            4 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            # If CSS classes are enabled, these would be highlighted as numbers (nu0)
            # integer literals (possibly imaginary)
            //0 => 'color: #cc66cc;',
            # real floating point literals
            //1 => 'color: #cc66cc;',
            # imaginary floating point literals
            //2 => 'color: #cc66cc;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => 'http://golang.org/search?q={FNAME}'
        ),
    'REGEXPS' => array(
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(1 => '.'),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER, # handled by symbols
            )
        )
);

?>geshi/geshi/vb.php0000664000175000017500000001174612014173404013313 0ustar  benbebenbe 'Visual Basic',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        // Comments (either single or multiline with _
        1 => '/\'.*(? GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'Binary', 'Boolean', 'Byte', 'Currency', 'Date', 'Decimal', 'Double',
            'String', 'Enum', 'Integer', 'Long', 'Object', 'Single', 'Variant'
            ),
        2 => array(
            'CreateObject', 'GetObject', 'New', 'Option', 'Function',
            'Call', 'Private', 'Public', 'Sub', 'Explicit', 'Compare', 'Exit'
            ),
        3 => array(
            'And', 'Case', 'Do', 'Each', 'Else', 'ElseIf', 'For',
            'Goto', 'If', 'Is', 'Loop', 'Next', 'Not', 'Or', 'Select', 'Step',
            'Then', 'To', 'Until', 'While', 'With', 'Xor', 'WithEvents',
            'DoEvents', 'Close', 'Like', 'In', 'End'
            ),
        4 => array(
            'As', 'Dim', 'Get', 'Set', 'ReDim', 'Error',
            'Resume', 'Declare', 'Let', 'ByRef', 'ByVal',
            'Optional', 'Property', 'Control', 'UBound', 'Mod',
            'GoSub', 'Implements', 'Input', 'LBound', 'Static', 'Stop',
            'Type', 'TypeOf', 'On', 'Open', 'Output', 'ParamArray',
            'Preserve', 'Print', 'RaiseEvent', 'Random', 'Line'
            ),
        5 => array(
            'Nothing', 'False', 'True', 'Null', 'Empty'
            ),
        6 => array(
            'ErrorHandler','ExitProc', 'PublishReport'
            ),
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #F660AB; font-weight: bold;',
            2 => 'color: #E56717; font-weight: bold;',
            3 => 'color: #8D38C9; font-weight: bold;',
            4 => 'color: #151B8D; font-weight: bold;',
            5 => 'color: #00C2FF; font-weight: bold;',
            6 => 'color: #3EA99F; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000;'
            ),
        'BRACKETS' => array(
            ),
        'STRINGS' => array(
            0 => 'color: #800000;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #800000; font-weight: bold;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            'SYMBOLS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER
            )
        )
);

?>geshi/geshi/smarty.php0000664000175000017500000001642512014173373014227 0ustar  benbebenbe 'Smarty',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('{*' => '*}'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            '$smarty', 'now', 'const', 'capture', 'config', 'section', 'foreach', 'template', 'version', 'ldelim', 'rdelim',
            'foreachelse', 'include', 'include_php', 'insert', 'if', 'elseif', 'else', 'php',
            'sectionelse', 'is_cached',
            ),
        2 => array(
            'capitalize', 'count_characters', 'cat', 'count_paragraphs', 'count_sentences', 'count_words', 'date_format',
            'default', 'escape', 'indent', 'lower', 'nl2br', 'regex_replace', 'replace', 'spacify', 'string_format',
            'strip', 'strip_tags', 'truncate', 'upper', 'wordwrap',
            ),
        3 => array(
            'counter', 'cycle', 'debug', 'eval', 'html_checkboxes', 'html_image', 'html_options',
            'html_radios', 'html_select_date', 'html_select_time', 'html_table', 'math', 'mailto', 'popup_init',
            'popup', 'textformat'
            ),
        4 => array(
            '$template_dir', '$compile_dir', '$config_dir', '$plugins_dir', '$debugging', '$debug_tpl',
            '$debugging_ctrl', '$autoload_filters', '$compile_check', '$force_compile', '$caching', '$cache_dir',
            '$cache_lifetime', '$cache_handler_func', '$cache_modified_check', '$config_overwrite',
            '$config_booleanize', '$config_read_hidden', '$config_fix_newlines', '$default_template_handler_func',
            '$php_handling', '$security', '$secure_dir', '$security_settings', '$trusted_dir', '$left_delimiter',
            '$right_delimiter', '$compiler_class', '$request_vars_order', '$request_use_auto_globals',
            '$error_reporting', '$compile_id', '$use_sub_dirs', '$default_modifiers', '$default_resource_type'
            ),
        5 => array(
            'append', 'append_by_ref', 'assign', 'assign_by_ref', 'clear_all_assign', 'clear_all_cache',
            'clear_assign', 'clear_cache', 'clear_compiled_tpl', 'clear_config', 'config_load', 'display',
            'fetch', 'get_config_vars', 'get_registered_object', 'get_template_vars',
            'load_filter', 'register_block', 'register_compiler_function', 'register_function',
            'register_modifier', 'register_object', 'register_outputfilter', 'register_postfilter',
            'register_prefilter', 'register_resource', 'trigger_error', 'template_exists', 'unregister_block',
            'unregister_compiler_function', 'unregister_function', 'unregister_modifier', 'unregister_object',
            'unregister_outputfilter', 'unregister_postfilter', 'unregister_prefilter', 'unregister_resource'
            ),
        6 => array(
            'name', 'file', 'scope', 'global', 'key', 'once', 'script',
            'loop', 'start', 'step', 'max', 'show', 'values', 'value', 'from', 'item'
            ),
        7 => array(
            'eq', 'neq', 'ne', 'lte', 'gte', 'ge', 'le', 'not', 'mod'
            ),
        8 => array(
            // some common php functions
            'isset', 'is_array', 'empty', 'count', 'sizeof'
            )
        ),
    'SYMBOLS' => array(
        '/', '=', '==', '!=', '>', '<', '>=', '<=', '!', '%'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF;',        //Functions
            2 => 'color: #008000;',        //Modifiers
            3 => 'color: #0600FF;',        //Custom Functions
            4 => 'color: #804040;',        //Variables
            5 => 'color: #008000;',        //Methods
            6 => 'color: #6A0A0A;',        //Attributes
            7 => 'color: #D36900;',        //Text-based symbols
            8 => 'color: #0600FF;'        //php functions
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #008080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #D36900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #D36900;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #009000;'
            ),
        'REGEXPS' => array(
            0 => 'color: #00aaff;'
            )
        ),
    'URLS' => array(
        1 => 'http://smarty.php.net/{FNAMEL}',
        2 => 'http://smarty.php.net/{FNAMEL}',
        3 => 'http://smarty.php.net/{FNAMEL}',
        4 => 'http://smarty.php.net/{FNAMEL}',
        5 => 'http://smarty.php.net/{FNAMEL}',
        6 => '',
        7 => 'http://smarty.php.net/{FNAMEL}',
        8 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        // variables
        0 => '\$[a-zA-Z][a-zA-Z0-9_]*'
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            '{' => '}'
            ),
        1 => array(
            '',
        ),
        2 => array(
            '<' => '>'
            )
    ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => false,
        2 => false
    ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-&])"
        )
    )
);

?>
geshi/geshi/bf.php0000664000175000017500000000640512014173435013273 0ustar  benbebenbe 'Brainfuck',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(1 => '/[^\n+\-<>\[\]\.\,Y]+/s'),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        0 => array('+', '-'),
        1 => array('[', ']'),
        2 => array('<', '>'),
        3 => array('.', ','),
        4 => array('Y') //Brainfork Extension ;-)
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;'
            ),
        'BRACKETS' => array(
            0 => 'color: #660000;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #006600;',
            1 => 'color: #660000;',
            2 => 'color: #000066;',
            3 => 'color: #666600;',
            4 => 'color: #660066;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'STRINGS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER,
            'BRACKETS' => GESHI_NEVER
        ),
        'KEYWORDS' => array(
            'DISALLOW_BEFORE' => '',
            'DISALLOW_AFTER' => ''
            )
        )
);

?>geshi/geshi/ecmascript.php0000664000175000017500000001726512014173417015044 0ustar  benbebenbe 'ECMAScript',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    // Regular Expression Literals
    'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\*\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\*\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\*\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{2}#",
        //Hexadecimal Char Specs
        3 => "#\\\\u[\da-fA-F]{4}#",
        //Hexadecimal Char Specs
        4 => "#\\\\U[\da-fA-F]{8}#",
        //Octal Char Specs
        5 => "#\\\\[0-7]{1,3}#"
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array( // Reserved literals
            'false', 'true',
            'null'
            ),
        2 => array( // Main keywords
            'break', 'case', 'catch', 'continue', 'default', 'delete', 'do', 'else',
            'finally', 'for', 'function', 'if', 'in', 'instanceof', 'new', 'return',
            'switch', 'this', 'throw', 'try', 'typeof', 'var', 'void', 'while',
            'with'
            ),
        3 => array( // Extra keywords or keywords reserved for future use
            'abstract', 'as', 'boolean', 'byte', 'char', 'class', 'const', 'debugger',
            'double', 'enum', 'export', 'extends', 'final', 'float', 'goto', 'implements',
            'import', 'int', 'interface', 'is', 'long', 'native', 'namespace', 'package',
            'private', 'protected', 'public', 'short', 'static', 'super', 'synchronized', 'throws',
            'transient', 'use', 'volatile'
            ),
        4 => array( // Operators
            'get', 'set'
            ),
        5 => array( // Built-in object classes
            'Array', 'Boolean', 'Date', 'EvalError', 'Error', 'Function', 'Math', 'Number',
            'Object', 'RangeError', 'ReferenceError', 'RegExp', 'String', 'SyntaxError', 'TypeError', 'URIError'
            ),
        6 => array( // Global properties
            'Infinity', 'NaN', 'undefined'
            ),
        7 => array( // Global methods
            'decodeURI', 'decodeURIComponent', 'encodeURI', 'encodeURIComponent',
            'eval', 'isFinite', 'isNaN', 'parseFloat', 'parseInt',
            // The escape and unescape functions do not work properly for non-ASCII characters and have been deprecated.
            // In JavaScript 1.5 and later, use encodeURI, decodeURI, encodeURIComponent, and decodeURIComponent.
            'escape', 'unescape'
            ),
        8 => array( // Function's arguments
            'arguments'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}',
        '+', '-', '*', '/', '%',
        '!', '.', '&', '|', '^',
        '<', '>', '=', '~',
        ',', ';', '?', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #009999;',
            2 => 'color: #1500C8;',
            3 => 'color: #1500C8;',
            4 => 'color: #1500C8;',
            5 => 'color: #1500C8;',
            6 => 'color: #1500C8;',
            7 => 'color: #1500C8;',
            8 => 'color: #1500C8;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #CC0000;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #3366CC;',
            1 => 'color: #3366CC;',
            2 => 'color: #3366CC;',
            3 => 'color: #3366CC;',
            4 => 'color: #3366CC;',
            5 => 'color: #3366CC;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #008800;'
            ),
        'STRINGS' => array(
            0 => 'color: #9900FF;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF00FF;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #FF00FF;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #FF00FF;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #FF00FF;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color: #FF00FF;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color: #FF00FF;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color: #FF00FF;',
            GESHI_NUMBER_FLT_NONSCI => 'color: #FF00FF;'
            ),
        'METHODS' => array(
            1 => 'color: #660066;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/lscript.php0000664000175000017500000005333512014173423014365 0ustar  benbebenbe 'LScript',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
    //Yes, I'm aware these are out of order,
    //I had to rearrange and couldn't be bothered changing the numbers...
        7 => array(
            '@data', '@define', '@else', '@end', '@fpdepth', '@if', '@include',
            '@insert', '@library', '@localipc', '@name', '@save', '@script',
            '@sequence', '@version', '@warnings'
            ),
        1 => array(
            'break', 'case', 'continue', 'else', 'end', 'false', 'for',
            'foreach', 'if', 'return', 'switch', 'true', 'while',
            ),
        3 => array(
            'active', 'alertlevel', 'alpha', 'alphaprefix', 'animfilename', 'autokeycreate',
            'backdroptype', 'blue', 'boxthreshold', 'button',
            'channelsvisible', 'childrenvisible', 'compfg', 'compbg', 'compfgalpha',
            'coneangles', 'cosine', 'count', 'ctl', 'curFilename', 'curFrame',
            'currenttime', 'curTime', 'curType',
            'depth', 'diffshade', 'diffuse', 'dimensions', 'displayopts', 'dynamicupdate',
            'end', 'eta',
            'filename', 'flags', 'fogtype', 'fps', 'frame', 'frameend', 'frameheight',
            'framestart', 'framestep', 'framewidth',
            'generalopts', 'genus', 'geometry', 'gNorm', 'goal', 'green',
            'h', 'hasAlpha', 'height',
            'id', 'innerlimit', 'isColor',
            'keyCount', 'keys',
            'limiteregion', 'locked', 'luminous',
            'maxsamplesperpixel', 'minsamplesperpixel', 'mirror', 'motionx', 'motiony',
            'name', 'newFilename', 'newFrame', 'newTime', 'newType', 'null', 'numthreads',
            'objID', 'oPos', 'outerlimit', 'oXfrm',
            'parent', 'pixel', 'pixelaspect', 'point', 'points', 'pointcount', 'polNum',
            'polycount', 'polygon', 'polygons', 'postBehavior', 'preBehavior', 'previewend',
            'previewstart', 'previewstep',
            'range', 'rawblue', 'rawgreen', 'rawred', 'rayLength', 'raySource', 'red',
            'reflectblue', 'reflectgreen', 'reflectred', 'recursiondepth', 'renderend',
            'renderopts', 'renderstart', 'renderstep', 'rendertype', 'restlength',
            'rgbprefix', 'roughness',
            'selected', 'setColor', 'setPattern', 'shading', 'shadow', 'shadows',
            'shadowtype', 'size', 'source', 'special', 'specshade', 'specular',
            'spotsize', 'start', 'sx', 'sy', 'sz',
            'target', 'totallayers', 'totalpoints', 'totalpolygons', 'trans', 'transparency',
            'type',
            'value', 'view', 'visible', 'visibility',
            'w', 'width', 'wNorm', 'wPos', 'wXfrm',
            'x', 'xoffset',
            'y', 'yoffset',
            'z'
            ),
        4 => array(
            'addLayer', 'addParticle', 'alphaspot', 'ambient', 'asAsc', 'asBin',
            'asInt', 'asNum', 'asStr', 'asVec', 'attach', 'axislocks',
            'backdropColor', 'backdropRay', 'backdropSqueeze', 'bone', 'blurLength',
            'close', 'color', 'contains', 'copy', 'createKey',
            'deleteKey', 'detach', 'drawCircle', 'drawLine', 'drawPoint', 'drawText',
            'drawTriangle',
            'edit', 'eof', 'event',
            'firstChannel', 'firstLayer', 'firstSelect', 'focalLength', 'fogColor',
            'fogMaxAmount', 'fogMaxDist', 'fogMinAmount', 'fogMinDist',
            'fovAngles', 'fStop', 'firstChild', 'focalDistance',
            'get', 'getChannelGroup', 'getEnvelope', 'getForward', 'getKeyBias',
            'getKeyContinuity', 'getKeyCurve', 'getKeyHermite', 'getKeyTension',
            'getKeyTime', 'getKeyValue', 'getParticle', 'getPivot', 'getPosition',
            'getRight', 'getRotation', 'getSelect', 'getScaling', 'getTag', 'getTexture',
            'getUp', 'getValue', 'getWorldPosition', 'getWorldForward', 'getWorldRight',
            'getWorldRotation', 'getWorldUp', 'globalBlur', 'globalMask', 'globalResolution',
            'hasCCEnd', 'hasCCStart',
            'illuminate', 'indexOf', 'isAscii', 'isAlnum', 'isAlpha', 'isBone',
            'isCamera', 'isChannel', 'isChannelGroup', 'isCntrl', 'isCurve', 'isDigit',
            'isEnvelope', 'isImage', 'isInt', 'isLight', 'isLower', 'isMapped', 'isMesh',
            'isNil', 'isNum', 'IsOpen', 'isOriginal', 'isPrint', 'isPunct', 'isScene',
            'isSpace', 'isStr', 'isUpper', 'isValid', 'isVMap', 'isVec', 'isXDigit',
            'keyExists',
            'layer', 'layerName', 'layerVisible', 'limits', 'line', 'linecount', 'load', 'luma',
            'next', 'nextLayer', 'nextSelect', 'nextChannel', 'nextChild', 'nl',
            'offset', 'open',
            'pack', 'param', 'parse', 'paste', 'persist', 'polygonCount', 'position',
            'rayCast', 'rayTrace', 'read', 'readByte', 'readInt', 'readNumber',
            'readDouble', 'readShort', 'readString', 'readVector', 'reduce',
            'remParticle', 'renderCamera', 'reopen', 'replace', 'reset', 'restParam',
            'rewind', 'rgb', 'rgbambient', 'rgbcolor', 'rgbspot',
            'save', 'schemaPosition', 'select', 'set', 'setChannelGroup', 'setKeyBias',
            'setKeyContinuity', 'setKeyCurve',
            'setKeyHermite', 'setKeyTension', 'setKeyValue', 'setParticle', 'setPoints',
            'setTag', 'setValue', 'server', 'serverFlags', 'sortA', 'sortD', 'surface',
            'trunc',
            'write', 'writeln', 'writeByte', 'writeData', 'writeNumber', 'writeDouble',
            'writeShort', 'writeString', 'writeVector',
            'vertex', 'vertexCount',
            'zoomFactor'
            ),
        2 => array(
            'abs', 'acos', 'angle', 'append', 'ascii', 'asin', 'atan',
            'binary',
            'ceil', 'center', 'chdir', 'clearimage', 'cloned', 'comringattach',
            'comringdecode', 'comringdetach', 'comringencode', 'comringmsg', 'cos',
            'cosh', 'cot', 'cross2d', 'cross3d', 'csc', 'ctlstring', 'ctlinteger',
            'ctlnumber', 'ctlvector', 'ctldistance', 'ctlchoice', 'ctltext',
            'ctlcolor', 'ctlsurface', 'ctlfont', 'ctlpopup', 'ctledit', 'ctlpercent',
            'ctlangle', 'ctlrgb', 'ctlhsv', 'ctlcheckbox', 'ctlstate', 'ctlfilename',
            'ctlbutton', 'ctllistbox', 'ctlslider', 'ctlminislider', 'ctlsep', 'ctlimage',
            'ctltab', 'ctlallitems', 'ctlmeshitems', 'ctlcameraitems', 'ctllightitems',
            'ctlboneitems', 'ctlimageitems', 'ctlchannel', 'ctlviewport', 'Control_Management',
            'ctlpage', 'ctlgroup', 'ctlposition', 'ctlactive', 'ctlvisible', 'ctlalign',
            'ctlrefresh', 'ctlmenu', 'ctlinfo',
            'date', 'debug', 'deg', 'dot2d', 'dot3d', 'drawborder', 'drawbox', 'drawcircle',
            'drawelipse', 'drawerase', 'drawfillcircle', 'drawfillelipse', 'drawline',
            'drawpixel', 'drawtext', 'drawtextwidth', 'drawtextheight', 'dump',
            'error', 'exp', 'expose', 'extent',
            'fac', 'filecrc', 'filedelete', 'fileexists', 'filefind', 'filerename',
            'filestat', 'floor', 'format', 'frac', 'fullpath',
            'gamma', 'getdir', 'getenv', 'getfile', 'getfirstitem', 'getsep', 'getvalue',
            'globalrecall', 'globalstore',
            'hash', 'hex', 'hostBuild', 'hostVersion', 'hypot',
            'info', 'integer',
            'library', 'licenseId', 'lscriptVersion', 'load', 'loadimage', 'log', 'log10',
            'matchdirs', 'matchfiles', 'max', 'min', 'mkdir', 'mod', 'monend', 'moninit', 'monstep',
            'nil', 'normalize', 'number',
            'octal', 'overlayglyph',
            'parse', 'platform', 'pow',
            'rad', 'random', 'randu', 'range', 'read', 'readdouble', 'readInt', 'readNumber',
            'readShort', 'recall', 'regexp', 'reqabort', 'reqbegin', 'reqend', 'reqisopen',
            'reqkeyboard', 'reqopen', 'reqposition', 'reqpost', 'reqredraw',
            'reqsize', 'reqresize', 'requpdate', 'rmdir', 'round', 'runningUnder',
            'save', 'sec', 'select', 'selector', 'setdesc', 'setvalue', 'sin', 'sinh', 'size',
            'sizeof', 'sleep', 'spawn', 'split', 'sqrt', 'step', 'store', 'string', 'strleft',
            'strlower', 'strright', 'strsub', 'strupper',
            'tan', 'tanh', 'targetobject', 'terminate', 'text', 'time',
            'wait', 'warn', 'when', 'write', 'writeDouble', 'writeInt', 'writeNumber', 'writeShort',
            'var', 'vector', 'visitnodes', 'vmag',
            ),
        5 => array(
            'addcurve', 'addpoint', 'addpolygon', 'addquad', 'addtriangle', 'alignpols',
            'autoflex', 'axisdrill',
            'bend', 'bevel', 'boolean', 'boundingbox',
            'changepart', 'changesurface', 'close', 'closeall', 'cmdseq', 'copy', 'copysurface',
            'createsurface', 'cut',
            'deformregion', 'delete',
            'editbegin', 'editend', 'exit', 'extrude',
            'fixedflex', 'flip', 'fontclear', 'fontcount', 'fontindex', 'fontload',
            'fontname', 'fracsubdivide', 'freezecurves',
            'getdefaultsurface',
            'jitter',
            'lathe', 'layerName', 'layerVisible', 'lyrbg', 'lyrdata', 'lyrempty', 'lyremptybg',
            'lyremptyfg', 'lyrfg', 'lyrsetbg', 'lyrsetfg', 'lyrswap',
            'magnet', 'make4patch', 'makeball', 'makebox', 'makecone', 'makedisc',
            'maketesball', 'maketext', 'mergepoints', 'mergepols', 'meshedit', 'mirror',
            'morphpols', 'move',
            'new', 'nextsurface',
            'paste', 'pathclone', 'pathextrude', 'pixel', 'pointcount', 'pointinfo',
            'pointmove', 'pole', 'polycount', 'polyinfo', 'polynormal', 'polypointcount',
            'polypoints', 'polysurface',
            'quantize',
            'railclone', 'railextrude', 'redo', 'removepols', 'rempoint', 'rempoly',
            'renamesurface', 'revert', 'rotate',
            'scale', 'selhide', 'selinvert', 'selmode', 'selpoint', 'selpolygon', 'selunhide',
            'selectvmap', 'setlayername', 'setobject', 'setpivot', 'setsurface', 'shapebevel',
            'shear', 'skinpols', 'smooth', 'smoothcurves', 'smoothscale', 'smoothshift',
            'soliddrill', 'splitpols', 'subdivide', 'swaphidden',
            'taper', 'triple', 'toggleCCend', 'toggleCCstart', 'togglepatches', 'twist',
            'undo', 'undogroupend', 'undogroupbegin', 'unifypols', 'unweld',
            'vortex',
            'weldaverage', 'weldpoints'
            ),
        6 => array(
            'About', 'AboutOpenGL', 'AdaptiveSampling', 'AdaptiveThreshold',
            'AddAreaLight', 'AddBone', 'AddButton', 'AddCamera', 'AddChildBone',
            'AddDistantLight', 'AddEnvelope', 'AddLinearLight', 'AddNull',
            'AddPartigon', 'AddPlugins', 'AddPointLight', 'AddPosition',
            'AddRotation', 'AddScale', 'AddSpotlight', 'AddToSelection',
            'AdjustRegionTool', 'AffectCaustics', 'AffectDiffuse', 'AffectOpenGL',
            'AffectSpecular', 'AlertLevel', 'AmbientColor', 'AmbientIntensity',
            'Antialiasing', 'ApertureHeight', 'ApplyServer', 'AreaLight',
            'AutoConfirm', 'AutoFrameAdvance', 'AutoKey',
            'BackdropColor', 'BackView', 'BController', 'BLimits', 'BLurLength', 'BoneActive',
            'BoneFalloffType', 'BoneJointComp', 'BoneJointCompAmounts', 'BoneJointCompParent',
            'BoneLimitedRange', 'BoneMaxRange', 'BoneMinRange', 'BoneMuscleFlex',
            'BoneMuscleFlexAmounts', 'BoneMuscleFlexParent', 'BoneNormalization',
            'BoneRestLength', 'BoneRestPosition', 'BoneRestRotation', 'BoneSource',
            'BoneStrength', 'BoneStrengthMultiply', 'BoneWeightMapName', 'BoneWeightMapOnly',
            'BoneWeightShade', 'BoneXRay', 'BottomView', 'BoundingBoxThreshold',
            'BStiffness',
            'CacheCaustics', 'CacheRadiosity', 'CacheShadowMap',
            'CameraMask', 'CameraView', 'CameraZoomTool', 'CastShadow', 'CausticIntensity',
            'CenterItem', 'CenterMouse', 'ChangeTool', 'ClearAllBones', 'ClearAllCameras',
            'ClearAllLights', 'ClearAllObjects', 'ClearAudio', 'ClearScene', 'ClearSelected',
            'Clone', 'CommandHistory', 'CommandInput', 'Compositing', 'ConeAngleTool',
            'ContentDirectory', 'CreateKey',
            'DecreaseGrid', 'DeleteKey', 'DepthBufferAA', 'DepthOfField', 'DisplayOptions',
            'DistantLight', 'DrawAntialiasing', 'DrawBones', 'DrawChildBones', 'DynamicUpdate',
            'EditBones', 'EditCameras', 'EditKeys', 'EditLights',
            'EditMenus', 'EditObjects', 'EditPlugins', 'EditServer', 'EnableCaustics',
            'EnableDeformations', 'EnableIK', 'EnableLensFlares', 'EnableRadiosity', 'EnableServer',
            'EnableShadowMaps', 'EnableVIPER', 'EnableVolumetricLights', 'EnableXH',
            'EnableYP', 'EnableZB', 'EnahancedAA', 'ExcludeLight', 'ExcludeObject',
            'EyeSeparation',
            'FasterBones', 'FirstFrame', 'FirstItem', 'FitAll', 'FitSelected',
            'FlareIntensity', 'FlareOptions', 'FocalDistance', 'FogColor', 'FogMaxAmount',
            'FogMaxDistance', 'FogMinAmount', 'FogMinDistance', 'FogType', 'FractionalFrames',
            'FrameSize', 'FramesPerSecond', 'FrameStep', 'FreePreview', 'FrontView', 'FullTimeIK',
            'GeneralOptions', 'Generics', 'GlobalApertureHeight', 'GlobalBlurLength',
            'GlobalFrameSize', 'GlobalIllumination', 'GlobalMaskPosition', 'GlobalMotionBlur',
            'GlobalParticleBlur', 'GlobalPixelAspect', 'GlobalResolutionMulitplier', 'GoalItem',
            'GoalStrength', 'GoToFrame', 'GradientBackdrop', 'GraphEditor', 'GridSize', 'GroundColor',
            'HController', 'HideToolbar', 'HideWindows', 'HLimits', 'HStiffness',
            'ImageEditor', 'ImageProcessing', 'IncludeLight', 'IncludeObject', 'IncreaseGrid',
            'IndirectBounces', 'Item_SetWindowPos', 'ItemActive', 'ItemColor', 'ItemLock',
            'ItemProperties', 'ItemVisibilty',
            'KeepGoalWithinReach',
            'LastFrame', 'LastItem', 'LastPluginInterface', 'Layout_SetWindowPos',
            'Layout_SetWindowSize', 'LeftView', 'LensFlare', 'LensFStop', 'LightColor',
            'LightConeAngle', 'LightEdgeAngle', 'LightFalloffType', 'LightIntensity',
            'LightIntensityTool', 'LightQuality', 'LightRange', 'LightView', 'LimitB',
            'LimitDynamicRange', 'LimitedRegion', 'LimitH', 'LimitP', 'LinearLight',
            'LoadAudio', 'LoadFromScene', 'LoadMotion', 'LoadObject', 'LoadObjectLayer',
            'LoadPreview', 'LoadScene', 'LocalCoordinateSystem',
            'MakePreview', 'MaskColor', 'MaskPosition', 'MasterPlugins', 'MatchGoalOrientation',
            'MatteColor', 'MatteObject', 'MetaballResolution', 'Model', 'MorphAmount',
            'MorphAmountTool', 'MorphMTSE', 'MorphSurfaces', 'MorphTarget', 'MotionBlur',
            'MotionBlurDOFPreview', 'MotionOptions', 'MovePathTool', 'MovePivotTool', 'MoveTool',
            'NadirColor', 'NetRender', 'NextFrame', 'NextItem', 'NextKey', 'NextSibling',
            'NextViewLayout', 'NoiseReduction', 'Numeric',
            'ObjectDissolve',
            'ParentCoordinateSystem', 'ParentInPlace', 'ParentItem',
            'ParticleBlur', 'PathAlignLookAhead', 'PathAlignMaxLookSteps', 'PathAlignReliableDist',
            'Pause', 'PController', 'PerspectiveView',
            'PivotPosition', 'PivotRotation', 'PixelAspect', 'PlayAudio', 'PlayBackward',
            'PlayForward', 'PlayPreview', 'PLimits', 'PointLight', 'PolygonEdgeColor',
            'PolygonEdgeFlags', 'PolygonEdgeThickness', 'PolygonEdgeZScale', 'PolygonSize',
            'Position', 'Presets', 'PreviewFirstFrame', 'PreviewFrameStep', 'PreviewLastFrame',
            'PreviewOptions', 'PreviousFrame', 'PreviousItem', 'PreviousKey', 'PreviousSibling',
            'PreviousViewLayout', 'PStiffness',
            'Quit',
            'RadiosityIntensity', 'RadiosityTolerance', 'RadiosityType', 'RayRecursionLimit',
            'RayTraceReflection', 'RayTraceShadows',
            'RayTraceTransparency', 'ReceiveShadow', 'RecentContentDirs', 'RecentScenes',
            'ReconstructionFilter', 'RecordMaxAngles', 'RecordMinAngles', 'RecordPivotRotation',
            'RecordRestPosition', 'Redraw', 'RedrawNow', 'Refresh', 'RefreshNow', 'RegionPosition',
            'RemoveEnvelope', 'RemoveFromSelection', 'RemoveServer', 'Rename', 'RenderFrame',
            'RenderOptions', 'RenderScene', 'RenderSelected', 'RenderThreads',
            'ReplaceObjectLayer', 'ReplaceWithNull', 'ReplaceWithObject', 'Reset',
            'ResolutionMultiplier', 'RestLengthTool', 'RightView', 'RotatePivotTool',
            'RotateTool', 'Rotation',
            'SaveAllObjects', 'SaveCommandList', 'SaveCommandMessages',
            'SaveEndomorph', 'SaveLight', 'SaveLWSC1', 'SaveMotion', 'SaveObject', 'SaveObjectCopy',
            'SavePreview', 'SaveScene', 'SaveSceneAs', 'SaveSceneCopy', 'SaveTransformed',
            'SaveViewLayout', 'Scale', 'Scene_SetWindowPos', 'Scene_SetWindowSize',
            'SceneEditor', 'SchematicPosition', 'SchematicView', 'SelectAllBones',
            'SelectAllCameras', 'SelectAllLights', 'SelectAllObjects', 'SelectByName',
            'SelectChild', 'SelectItem', 'SelectParent', 'SelfShadow', 'ShadowColor',
            'ShadowExclusion', 'ShadowMapAngle', 'ShadowMapFitCone', 'ShadowMapFuzziness',
            'ShadowMapSize', 'ShadowType', 'ShowCages', 'ShowFieldChart', 'ShowHandles',
            'ShowIKChains', 'ShowMotionPaths', 'ShowSafeAreas', 'ShowTargetLines',
            'ShrinkEdgesWithDistance', 'SingleView', 'SizeTool', 'SkelegonsToBones', 'SkyColor',
            'Spotlight', 'SquashTool', 'Statistics', 'StatusMsg', 'Stereoscopic', 'StretchTool',
            'SubdivisionOrder', 'SubPatchLevel', 'SurfaceEditor', 'Synchronize',
            'TargetItem', 'TopView',
            'UnaffectedByFog', 'UnaffectedByIK', 'Undo', 'UnseenByAlphaChannel', 'UnseenByCamera',
            'UnseenByRays', 'UseGlobalResolution', 'UseGlobalBlur', 'UseGlobalMask',
            'UseMorphedPositions',
            'ViewLayout', 'VIPER', 'VolumetricLighting',
            'VolumetricLightingOptions', 'VolumetricRadiosity', 'Volumetrics',
            'WorldCoordinateSystem',
            'XYView', 'XZView',
            'ZenithColor', 'ZoomFactor', 'ZoomIn', 'ZoomInX2', 'ZoomOut', 'ZoomOutX2', 'ZYView',
            'Camera', 'Channel', 'ChannelGroup', 'Envelope', 'File', 'Glyph', 'Icon', 'Image',
            'Light', 'Mesh', 'Scene', 'Surface', 'VMap'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '=', '<', '>', '+', '-', '*', '/', '!', '%', '&', '@'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #FF6820; font-weight: bold;', //LS_COMMANDS
            3 => 'color: #007F7F; font-weight: bold;', //LS_MEMBERS
            4 => 'color: #800080; font-weight: bold;', //LS_METHODS
            5 => 'color: #51BD95; font-weight: bold;', //LS_MODELER
            6 => 'color: #416F85; font-weight: bold;', //LS_GENERAL
            7 => 'color: #C92929; font-weight: bold;'  //LS_COMMANDS (cont)
            ),
        'COMMENTS' => array(
            1 => 'color: #7F7F7F;',
            'MULTI' => 'color: #7F7F7F;'
            ),
        'BRACKETS' => array(
            0 => 'color: #0040A0;'
            ),
        'STRINGS' => array(
            0 => 'color: #00C800;'
            ),
        'NUMBERS' => array(
            0 => 'color: #6953AC;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #0040A0;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            ),
        'ESCAPE_CHAR' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            3 => array(
                'DISALLOWED_BEFORE' => '(?<=\.)'
                ),
            4 => array(
                'DISALLOWED_BEFORE' => '(?<=\.)'
                )
            )
        )
);

?>geshi/geshi/oberon2.php0000664000175000017500000001011112014173400014227 0ustar  benbebenbe 'Oberon-2',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('(*' => '*)'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("''"),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'ARRAY', 'BEGIN', 'BY', 'CASE',
            'CONST', 'DIV', 'DO', 'ELSE', 'ELSIF', 'END',
            'EXIT', 'FOR', 'IF', 'IMPORT', 'IN', 'IS',
            'LOOP', 'MOD', 'MODULE', 'OF',
            'OR', 'POINTER', 'PROCEDURE', 'RECORD',
            'REPEAT', 'RETURN', 'THEN', 'TO',
            'TYPE', 'UNTIL', 'VAR', 'WHILE', 'WITH'
            ),
        2 => array(
            'NIL', 'FALSE', 'TRUE',
            ),
        3 => array(
            'ABS', 'ASH', 'ASSERT', 'CAP', 'CHR', 'COPY', 'DEC',
            'ENTIER', 'EXCL', 'HALT', 'INC', 'INCL', 'LEN',
            'LONG', 'MAX', 'MIN', 'NEW', 'ODD', 'ORD', 'SHORT', 'SIZE'
            ),
        4 => array(
            'BOOLEAN', 'CHAR', 'SHORTINT', 'LONGINT',
            'INTEGER', 'LONGREAL', 'REAL', 'SET', 'PTR'
            ),
        ),
    'SYMBOLS' => array(
        ',', ':', '=', '+', '-', '*', '/', '#', '~'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;',
            4 => 'color: #000066; font-weight: bold;'
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #0066ee;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/uscript.php0000664000175000017500000003611312014173443014373 0ustar  benbebenbe 'Unreal Script',
    'COMMENT_SINGLE' => array(
            1 => '//',
            2 => '#'
            ),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(        //declaration keywords
            'simulated', 'state', 'class', 'function', 'event', 'var', 'local',
            'ignores', 'globalconfig', 'config', 'abstract', 'nativereplication', 'native',
            'auto', 'coerce', 'const', 'default',
            'defaultproperties',
            'enum', 'extends', 'expands', 'final', 'guid', 'latent', 'localized',
            'new', 'noexport', 'operator', 'preoperator', 'optional', 'out',
            'private', 'public', 'protected', 'reliable', 'replication',
            'singular', 'static', 'struct', 'transient', 'unreliable',
            'hidedropdown', 'cacheexempt', 'exec', 'delegate', 'import', 'placeable', 'exportstructs'
            ),
        2 => array(        //control flow keywords
            'for', 'while', 'do', 'if', 'else', 'switch', 'case', 'return', 'break', 'continue',
            'begin', 'loop', 'assert',
            'foreach', 'AllActors', 'DynamicActors', 'ChildActors', 'BasedActors', 'TouchingActors',
            'TraceActors', 'RadiusActors', 'VisibleActors', 'CollidingActors', 'VisibleCollidingActors'
            ),
        3 => array(        //global (object) functions
            'log', 'warn', 'rot', 'vect', 'Rand', 'Min', 'Max', 'Clamp', 'Abs', 'Sin', 'ASin',
            'Cos', 'ACos', 'Tan', 'ATan', 'Exp', 'Loge', 'Sqrt', 'Square', 'FRand', 'FMin', 'FMax', 'FClamp',
            'Lerp', 'Smerp', 'Ceil', 'Round', 'VSize', 'Normal', 'Invert', 'VRand', 'MirrorVectorByNormal',
            'GetAxes', 'GetUnAxes', 'RotRand', 'OrthoRotation', 'Normalize', 'ClockwiseFrom',
            'Len', 'InStr', 'Mid', 'Left', 'Right', 'Caps', 'Chr', 'Asc', 'Locs',
            'Divide', 'Split', 'StrCmp', 'Repl', 'Eval',
            'InterpCurveEval', 'InterpCurveGetOutputRange', 'InterpCurveGetInputDomain',
            'QuatProduct', 'QuatInvert', 'QuatRotateVector', 'QuatFindBetween', 'QuatFromAxisAndAngle',
            'QuatFromRotator', 'QuatToRotator', 'QuatSlerp',
            'Localize', 'GotoState', 'IsInState', 'GetStateName',
            'ClassIsChildOf', 'IsA', 'Enable', 'Disable',
            'GetPropertyText', 'SetPropertyText', 'GetEnum', 'DynamicLoadObject', 'FindObject',
            'SaveConfig', 'ClearConfig', 'StaticSaveConfig', 'ResetConfig', 'StaticClearConfig',
            'GetPerObjectNames', 'RandRange', 'StopWatch', 'IsOnConsole', 'IsSoaking',
            'PlatformIsMacOS', 'PlatformIsUnix', 'PlatformIsWindows', 'PlatformIs64Bit',
            'BeginState', 'EndState', 'Created', 'AllObjects', 'GetReferencers', 'GetItemName',
            'ReplaceText', 'EatStr'
            ),
        4 => array(        //common almost-global (actor) functions
            'ClientMessage', 'ConsoleCommand', 'CopyObjectToClipboard', 'TextToSpeech',
            'Error', 'Sleep', 'SetCollision', 'SetCollisionSize', 'SetDrawScale', 'SetDrawScale3D',
            'SetStaticMesh', 'SetDrawType', 'Move', 'SetLocation', 'SetRotation',
            'SetRelativeLocation', 'SetRelativeRotation', 'MoveSmooth', 'AutonomousPhysics',
            'SetBase', 'SetOwner', 'IsJoinedTo', 'GetMeshName', 'PlayAnim', 'LoopAnim', 'TweenAnim',
            'IsAnimating', 'FinishAnim', 'HasAnim', 'StopAnimating', 'FreezeFrameAt', 'SetAnimFrame',
            'IsTweening', 'AnimStopLooping', 'AnimEnd', 'LinkSkelAnim', 'LinkMesh', 'BoneRefresh',
            'GetBoneCoords', 'GetBoneRotation', 'GetRootLocation', 'GetRootRotation', 'AttachToBone',
            'DetachFromBone', 'SetBoneScale', 'UpdateURL', 'GetURLOption', 'SetPhysics', 'KAddImpulse',
            'KImpact', 'KApplyForce', 'Clock', 'UnClock', 'Destroyed', 'GainedChild', 'LostChild',
            'Tick', 'PostNetReceive', 'ClientTrigger', 'Trigger', 'UnTrigger', 'BeginEvent', 'EndEvent',
            'Timer', 'HitWall', 'Falling', 'Landed', 'ZoneChange', 'PhysicsVolumeChange', 'Touch',
            'PostTouch', 'UnTouch', 'Bump', 'BaseChange', 'Attach', 'Detach', 'SpecialHandling',
            'EncroachingOn', 'EncroachedBy', 'RanInto', 'FinishedInterpolation', 'EndedRotation',
            'UsedBy', 'FellOutOfWorld', 'KilledBy', 'TakeDamage', 'HealDamage', 'Trace', 'FastTrace',
            'TraceThisActor', 'spawn', 'Destroy', 'TornOff', 'SetTimer', 'PlaySound', 'PlayOwnedSound',
            'GetSoundDuration', 'MakeNoise', 'BeginPlay', 'GetAllInt', 'RenderOverlays', 'RenderTexture',
            'PreBeginPlay', 'PostBeginPlay', 'PostNetBeginPlay', 'HurtRadius', 'Reset', 'Crash'
            ),
        5 => array(        //data types
            'none', 'null',
            'float', 'int', 'bool', 'byte', 'char', 'double', 'iterator', 'name', 'string',    //primitive
            'plane', 'rotator', 'vector', 'spline',    'coords', 'Quat', 'Range', 'RangeVector', //structs
            'Scale', 'Color', 'Box', 'IntBox', 'FloatBox', 'BoundingVolume', 'Matrix', 'InterpCurvePoint',
            'InterpCurve', 'CompressedPosition', 'TMultiMap', 'PointRegion',
            'KRigidBodyState', 'KSimParams', 'AnimRep', 'FireProperties',
            'lodmesh', 'skeletalmesh', 'mesh', 'StaticMesh', 'MeshInstance',    //3d resources
            'sound',    //sound resources
            'material', 'texture', 'combiner', 'modifier', 'ColorModifier', 'FinalBlend',    //2d resources
            'MaterialSequence', 'MaterialSwitch', 'OpacityModifier', 'TexModifier', 'TexEnvMap',
            'TexCoordSource', 'TexMatrix', 'TexOscillator', 'TexPanner', 'TexRotator', 'TexScaler',
            'RenderedMaterial', 'BitmapMaterial', 'ScriptedTexture', 'ShadowBitmapMaterial', 'Cubemap',
            'FractalTexture', 'FireTexture', 'IceTexture', 'WaterTexture', 'FluidTexture', 'WaveTexture',
            'WetTexture', 'ConstantMaterial', 'ConstantColor', 'FadeColor', 'ParticleMaterial',
            'ProjectorMaterial', 'Shader', 'TerrainMaterial', 'VertexColor'
            ),
        6 => array(        //misc keywords
            'false', 'true', 'self', 'super', 'MaxInt', 'Pi'
            ),
        7 => array(        //common actor enums & variables
            'DT_None', 'DT_Sprite', 'DT_Mesh', 'DT_Brush', 'DT_RopeSprite',
            'DT_VerticalSprite', 'DT_TerraForm', 'DT_SpriteAnimOnce', 'DT_StaticMesh', 'DT_DrawType',
            'DT_Particle', 'DT_AntiPortal', 'DT_FluidSurface',
            'PHYS_None', 'PHYS_Walking', 'PHYS_Falling', 'PHYS_Swimming', 'PHYS_Flying',
            'PHYS_Rotating', 'PHYS_Projectile', 'PHYS_Interpolating', 'PHYS_MovingBrush', 'PHYS_Spider',
            'PHYS_Trailer', 'PHYS_Ladder', 'PHYS_RootMotion', 'PHYS_Karma', 'PHYS_KarmaRagDoll',
            'PHYS_Hovering', 'PHYS_CinMotion',
            'ROLE_None', 'ROLE_DumbProxy', 'ROLE_SimulatedProxy',
            'ROLE_AutonomousProxy', 'ROLE_Authority',
            'STY_None', 'STY_Normal', 'STY_Masked', 'STY_Translucent', 'STY_Modulated', 'STY_Alpha',
            'STY_Additive', 'STY_Subtractive', 'STY_Particle', 'STY_AlphaZ',
            'OCCLUSION_None', 'OCCLUSION_BSP', 'OCCLUSION_Default', 'OCCLUSION_StaticMeshes',
            'SLOT_None', 'SLOT_Misc', 'SLOT_Pain', 'SLOT_Interact', 'SLOT_Ambient', 'SLOT_Talk',
            'SLOT_Interface', 'MTRAN_None', 'MTRAN_Instant', 'MTRAN_Segue', 'MTRAN_Fade',
            'MTRAN_FastFade', 'MTRAN_SlowFade',

            'DrawType', 'Physics', 'Owner', 'Base', 'Level', 'Game', 'Instigator', 'RemoteRole', 'Role',
            'LifeSpan', 'Tag', 'Event', 'Location', 'Rotation', 'Velocity', 'Acceleration',
            'RelativeLocation', 'RelativeRotation', 'DrawScale', 'DrawScale3D', 'Skins', 'Style',
            'SoundVolume', 'SoundPitch', 'SoundRadius', 'TransientSoundVolume', 'TransientSoundRadius',
            'CollisionRadius', 'CollisionHeight', 'Mass', 'Buoyancy', 'RotationRate', 'DesiredRotation'
            ),
        8 => array(        //common non-actor uscript classes
            'Object',
            'CacheManager', 'CameraEffect', 'Canvas', 'CheatManager', 'Commandlet', 'DecoText', 'GUI',
            'InteractionMaster', 'Interactions', 'Interaction', 'KarmaParamsCollision', 'KarmaParamsRBFull',
            'KarmaParamsSkel', 'KarmaParams', 'LevelSummary', 'Locale', 'Manifest', 'MaterialFactory',
            'MeshObject', 'ObjectPool', 'Pallete',
            'ParticleEmitter', 'MeshEmitter', 'BeamEmitter', 'SpriteEmitter', 'SparkEmitter', 'TrailEmitter',
            'Player', 'PlayerInput', 'PlayInfo', 'ReachSpec', 'Resource', 'LatentScriptedAction', 'ScriptedAction',
            'speciesType', 'StreamBase', 'Stream', 'EditorEngine', 'Engine', 'Time', 'WeaponFire',
            'WebApplication', 'WebRequest', 'WebResponse', 'WebSkin', 'xPawnGibGroup', 'xPawnSoundGroup',
            'xUtil'
            ),
        9 => array(        //common actor-based uscript classes
            'Actor',
            'Controller', 'AIController', 'ScriptedController', 'Bot', 'xBot',
            'PlayerController', 'UnrealPlayer', 'xPlayer',
            'DamageType', 'WeaponDamageType', 'Effects', 'Emitter', 'NetworkEmitter',
            'Gib', 'HUD', 'HudBase', 'Info', 'FluidSurfaceInfo', 'Combo',
            'GameInfo', 'UnrealMPGameInfo', 'DeathMatch', 'TeamGame', 'CTFGame',
            'xCTFGame', 'xBombingRun', 'xDoubleDom', 'xTeamGame',
            'ASGameInfo', 'Invasion', 'ONSOnslaughtGame', 'xDeathmatch',
            'Mutator', 'Inventory', 'Ammunition', 'KeyInventory', 'Powerups', 'Armor', 'Weapon',
            'InventoryAttachment', 'WeaponAttachment',
            'KActor', 'KConstraint', 'KBSJoint', 'KCarWheelJoint', 'KConeLimit', 'KHinge', 'KTire',
            'KVehicleFactory', 'Keypoint', 'AIScript', 'ScriptedSequence', 'ScriptedTrigger',
            'AmbientSound', 'Light', 'SpotLight', 'SunLight', 'TriggerLight',
            'MeshEffect', 'NavigationPoint', 'GameObjective', 'DestroyableObjective',
            'PathNode', 'FlyingPathNode', 'RoadPathNode', 'InventorySpot', 'PlayerStart',
            'Pawn', 'Vehicle', 'UnrealPawn', 'xPawn', 'Monster', 'ASVehicle', 'KVehicle', 'KCar',
            'ONSWeaponPawn', 'SVehicle', 'ONSVehicle', 'ONSChopperCraft', 'ONSHoverCraft',
            'ONSPlaneCraft', 'ONSTreadCraft', 'ONSWheeledCraft',
            'Pickup', 'Ammo', 'UTAmmoPickup', 'ArmorPickup', 'KeyPickup', 'TournamentPickup',
            'Projectile', 'Projector', 'DynamicProjector', 'ShadowProjector', 'xScorch',
            'xEmitter', 'xPickupBase', 'xProcMesh', 'xWeatherEffect', 'PhysicsVolume', 'Volume'
            ),
        10 => array(    //symbol-like operators
            'dot','cross'
            )
        ),
    'SYMBOLS' => array(
        '+','-','=','/','*','-','%','>','<','&','^','!','|','`','(',')','[',']','{','}',
        '<<','>>','$','@'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        9 => false,
        10 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000FF;',
            3 => 'color: #0066AA;',
            4 => 'color: #0088FF;',
            5 => 'color: #E000E0;',
            6 => 'color: #900000;',
            7 => 'color: #888800;',
            8 => 'color: #AA6600;',
            9 => 'color: #FF8800;',
            10 => 'color: #0000FF;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008080; font-style: italic;',
            2 => 'color: #000000; font-weight: bold;',
            'MULTI' => 'color: #008080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #999999;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            0 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #669966;'
            ),
        'REGEXPS' => array(
            0 => 'color: #E000E0;',
            1 => 'color: #E000E0;'
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => 'http://wiki.beyondunreal.com/wiki?search={FNAME}',
        9 => 'http://wiki.beyondunreal.com/wiki?search={FNAME}',
        10 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array('.'),
    'REGEXPS' => array(            //handle template-style variable definitions
        0 => array(
            GESHI_SEARCH => '(class\s*)<(\s*(\w+)\s*)>',
            GESHI_REPLACE => "\${1}",
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => "< \${3} >"
            ),
        1 => array(
            GESHI_SEARCH => '(array\s*)<(\s*(\w+)\s*)>',
            GESHI_REPLACE => "\${1}",
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => "< \${3} >"
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            10 => array(
                'DISALLOWED_BEFORE' => '(?)'
                )
            )
        )
);

?>
geshi/geshi/php.php0000664000175000017500000021163712014173453013500 0ustar  benbebenbe 'PHP',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Heredoc and Nowdoc syntax
        3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+?)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
        // phpdoc comments
        4 => '#/\*\*(?![\*\/]).*\*/#sU',
        // Advanced # handling
        2 => "/#.*?(?:(?=\?\>)|^)/smi"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[nfrtv\$\"\n\\\\]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{1,2}#i",
        //Octal Char Specs
        3 => "#\\\\[0-7]{1,3}#",
        //String Parsing of Variable Names
        4 => "#\\$[a-z0-9_]+(?:\\[[a-z0-9_]+\\]|->[a-z0-9_]+)?|(?:\\{\\$|\\$\\{)[a-z0-9_]+(?:\\[('?)[a-z0-9_]*\\1\\]|->[a-z0-9_]+)*\\}#i",
        //Experimental extension supporting cascaded {${$var}} syntax
        5 => "#\$[a-z0-9_]+(?:\[[a-z0-9_]+\]|->[a-z0-9_]+)?|(?:\{\$|\$\{)[a-z0-9_]+(?:\[('?)[a-z0-9_]*\\1\]|->[a-z0-9_]+)*\}|\{\$(?R)\}#i",
        //Format String support in ""-Strings
        6 => "#%(?:%|(?:\d+\\\\\\\$)?\\+?(?:\x20|0|'.)?-?(?:\d+|\\*)?(?:\.\d+)?[bcdefFosuxX])#"
        ),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("'", "\\"),
    'HARDCHAR' => "\\",
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'as','break','case','continue','default','do','else','elseif',
            'endfor','endforeach','endif','endswitch','endwhile','for',
            'foreach','if','include','include_once','require','require_once',
            'return','switch','throw','while',

            'echo','print'
            ),
        2 => array(
            '&new','</script>','<?php','<script language',
            'abstract','class','const','declare','extends','function','global',
            'interface','namespace','new','private','protected','public','self',
            'use','var'
            ),
        3 => array(
            'abs','acos','acosh','addcslashes','addslashes','aggregate',
            'aggregate_methods','aggregate_methods_by_list',
            'aggregate_methods_by_regexp','aggregate_properties',
            'aggregate_properties_by_list','aggregate_properties_by_regexp',
            'aggregation_info','apache_child_terminate','apache_get_modules',
            'apache_get_version','apache_getenv','apache_lookup_uri',
            'apache_note','apache_request_headers','apache_response_headers',
            'apache_setenv','array','array_change_key_case','array_chunk',
            'array_combine','array_count_values','array_diff',
            'array_diff_assoc','array_diff_key','array_diff_uassoc',
            'array_diff_ukey','array_fill','array_fill_keys','array_filter',
            'array_flip','array_intersect','array_intersect_assoc',
            'array_intersect_key','array_intersect_uassoc',
            'array_intersect_ukey','array_key_exists','array_keys','array_map',
            'array_merge','array_merge_recursive','array_multisort','array_pad',
            'array_pop','array_product','array_push','array_rand',
            'array_reduce','array_reverse','array_search','array_shift',
            'array_slice','array_splice','array_sum','array_udiff',
            'array_udiff_assoc','array_udiff_uassoc','array_uintersect',
            'array_uintersect_assoc','array_uintersect_uassoc','array_unique',
            'array_unshift','array_values','array_walk','array_walk_recursive',
            'arsort','asin','asinh','asort','assert','assert_options','atan',
            'atan2','atanh','base_convert','base64_decode','base64_encode',
            'basename','bcadd','bccomp','bcdiv','bcmod','bcmul',
            'bcompiler_load','bcompiler_load_exe','bcompiler_parse_class',
            'bcompiler_read','bcompiler_write_class','bcompiler_write_constant',
            'bcompiler_write_exe_footer','bcompiler_write_file',
            'bcompiler_write_footer','bcompiler_write_function',
            'bcompiler_write_functions_from_file','bcompiler_write_header',
            'bcompiler_write_included_filename','bcpow','bcpowmod','bcscale',
            'bcsqrt','bcsub','bin2hex','bindec','bindtextdomain',
            'bind_textdomain_codeset','bitset_empty','bitset_equal',
            'bitset_excl','bitset_fill','bitset_from_array','bitset_from_hash',
            'bitset_from_string','bitset_in','bitset_incl',
            'bitset_intersection','bitset_invert','bitset_is_empty',
            'bitset_subset','bitset_to_array','bitset_to_hash',
            'bitset_to_string','bitset_union','blenc_encrypt','bzclose',
            'bzcompress','bzdecompress','bzerrno','bzerror','bzerrstr',
            'bzflush','bzopen','bzread','bzwrite','cal_days_in_month',
            'cal_from_jd','cal_info','cal_to_jd','call_user_func',
            'call_user_func_array','call_user_method','call_user_method_array',
            'ceil','chdir','checkdate','checkdnsrr','chgrp','chmod','chop',
            'chown','chr','chunk_split','class_exists','class_implements',
            'class_parents','classkit_aggregate_methods',
            'classkit_doc_comments','classkit_import','classkit_method_add',
            'classkit_method_copy','classkit_method_redefine',
            'classkit_method_remove','classkit_method_rename','clearstatcache',
            'closedir','closelog','com_create_guid','com_event_sink',
            'com_get_active_object','com_load_typelib','com_message_pump',
            'com_print_typeinfo','compact','confirm_phpdoc_compiled',
            'connection_aborted','connection_status','constant',
            'convert_cyr_string','convert_uudecode','convert_uuencode','copy',
            'cos','cosh','count','count_chars','cpdf_add_annotation',
            'cpdf_add_outline','cpdf_arc','cpdf_begin_text','cpdf_circle',
            'cpdf_clip','cpdf_close','cpdf_closepath',
            'cpdf_closepath_fill_stroke','cpdf_closepath_stroke',
            'cpdf_continue_text','cpdf_curveto','cpdf_end_text','cpdf_fill',
            'cpdf_fill_stroke','cpdf_finalize','cpdf_finalize_page',
            'cpdf_global_set_document_limits','cpdf_import_jpeg','cpdf_lineto',
            'cpdf_moveto','cpdf_newpath','cpdf_open','cpdf_output_buffer',
            'cpdf_page_init','cpdf_rect','cpdf_restore','cpdf_rlineto',
            'cpdf_rmoveto','cpdf_rotate','cpdf_rotate_text','cpdf_save',
            'cpdf_save_to_file','cpdf_scale','cpdf_set_action_url',
            'cpdf_set_char_spacing','cpdf_set_creator','cpdf_set_current_page',
            'cpdf_set_font','cpdf_set_font_directories',
            'cpdf_set_font_map_file','cpdf_set_horiz_scaling',
            'cpdf_set_keywords','cpdf_set_leading','cpdf_set_page_animation',
            'cpdf_set_subject','cpdf_set_text_matrix','cpdf_set_text_pos',
            'cpdf_set_text_rendering','cpdf_set_text_rise','cpdf_set_title',
            'cpdf_set_viewer_preferences','cpdf_set_word_spacing',
            'cpdf_setdash','cpdf_setflat','cpdf_setgray','cpdf_setgray_fill',
            'cpdf_setgray_stroke','cpdf_setlinecap','cpdf_setlinejoin',
            'cpdf_setlinewidth','cpdf_setmiterlimit','cpdf_setrgbcolor',
            'cpdf_setrgbcolor_fill','cpdf_setrgbcolor_stroke','cpdf_show',
            'cpdf_show_xy','cpdf_stringwidth','cpdf_stroke','cpdf_text',
            'cpdf_translate','crack_check','crack_closedict',
            'crack_getlastmessage','crack_opendict','crc32','create_function',
            'crypt','ctype_alnum','ctype_alpha','ctype_cntrl','ctype_digit',
            'ctype_graph','ctype_lower','ctype_print','ctype_punct',
            'ctype_space','ctype_upper','ctype_xdigit','curl_close',
            'curl_copy_handle','curl_errno','curl_error','curl_exec',
            'curl_getinfo','curl_init','curl_multi_add_handle',
            'curl_multi_close','curl_multi_exec','curl_multi_getcontent',
            'curl_multi_info_read','curl_multi_init','curl_multi_remove_handle',
            'curl_multi_select','curl_setopt','curl_setopt_array',
            'curl_version','current','cvsclient_connect','cvsclient_log',
            'cvsclient_login','cvsclient_retrieve','date','date_create',
            'date_date_set','date_default_timezone_get',
            'date_default_timezone_set','date_format','date_isodate_set',
            'date_modify','date_offset_get','date_parse','date_sun_info',
            'date_sunrise','date_sunset','date_time_set','date_timezone_get',
            'date_timezone_set','db_id_list','dba_close','dba_delete',
            'dba_exists','dba_fetch','dba_firstkey','dba_handlers','dba_insert',
            'dba_key_split','dba_list','dba_nextkey','dba_open','dba_optimize',
            'dba_popen','dba_replace','dba_sync','dbase_add_record',
            'dbase_close','dbase_create','dbase_delete_record',
            'dbase_get_header_info','dbase_get_record',
            'dbase_get_record_with_names','dbase_numfields','dbase_numrecords',
            'dbase_open','dbase_pack','dbase_replace_record',
            'dbg_get_all_contexts','dbg_get_all_module_names',
            'dbg_get_all_source_lines','dbg_get_context_name',
            'dbg_get_module_name','dbg_get_profiler_results',
            'dbg_get_source_context','dblist','dbmclose','dbmdelete',
            'dbmexists','dbmfetch','dbmfirstkey','dbminsert','dbmnextkey',
            'dbmopen','dbmreplace','dbx_close','dbx_compare','dbx_connect',
            'dbx_error','dbx_escape_string','dbx_fetch_row','dbx_query',
            'dbx_sort','dcgettext','dcngettext','deaggregate','debug_backtrace',
            'debug_zval_dump','debugbreak','decbin','dechex','decoct','define',
            'defined','define_syslog_variables','deg2rad','dgettext','die',
            'dio_close','dio_open','dio_read','dio_seek','dio_stat','dio_write',
            'dir','dirname','disk_free_space','disk_total_space',
            'diskfreespace','dl','dngettext','docblock_token_name',
            'docblock_tokenize','dom_import_simplexml','domxml_add_root',
            'domxml_attributes','domxml_children','domxml_doc_add_root',
            'domxml_doc_document_element','domxml_doc_get_element_by_id',
            'domxml_doc_get_elements_by_tagname','domxml_doc_get_root',
            'domxml_doc_set_root','domxml_doc_validate','domxml_doc_xinclude',
            'domxml_dump_mem','domxml_dump_mem_file','domxml_dump_node',
            'domxml_dumpmem','domxml_elem_get_attribute',
            'domxml_elem_set_attribute','domxml_get_attribute','domxml_getattr',
            'domxml_html_dump_mem','domxml_new_child','domxml_new_doc',
            'domxml_new_xmldoc','domxml_node','domxml_node_add_namespace',
            'domxml_node_attributes','domxml_node_children',
            'domxml_node_get_content','domxml_node_has_attributes',
            'domxml_node_new_child','domxml_node_set_content',
            'domxml_node_set_namespace','domxml_node_unlink_node',
            'domxml_open_file','domxml_open_mem','domxml_parser',
            'domxml_parser_add_chunk','domxml_parser_cdata_section',
            'domxml_parser_characters','domxml_parser_comment',
            'domxml_parser_end','domxml_parser_end_document',
            'domxml_parser_end_element','domxml_parser_entity_reference',
            'domxml_parser_get_document','domxml_parser_namespace_decl',
            'domxml_parser_processing_instruction',
            'domxml_parser_start_document','domxml_parser_start_element',
            'domxml_root','domxml_set_attribute','domxml_setattr',
            'domxml_substitute_entities_default','domxml_unlink_node',
            'domxml_version','domxml_xmltree','doubleval','each','easter_date',
            'easter_days','empty','end','ereg','ereg_replace','eregi',
            'eregi_replace','error_get_last','error_log','error_reporting',
            'escapeshellarg','escapeshellcmd','eval','event_deschedule',
            'event_dispatch','event_free','event_handle_signal',
            'event_have_events','event_init','event_new','event_pending',
            'event_priority_set','event_schedule','event_set','event_timeout',
            'exec','exif_imagetype','exif_read_data','exif_tagname',
            'exif_thumbnail','exit','exp','explode','expm1','extension_loaded',
            'extract','ezmlm_hash','fbird_add_user','fbird_affected_rows',
            'fbird_backup','fbird_blob_add','fbird_blob_cancel',
            'fbird_blob_close','fbird_blob_create','fbird_blob_echo',
            'fbird_blob_get','fbird_blob_import','fbird_blob_info',
            'fbird_blob_open','fbird_close','fbird_commit','fbird_commit_ret',
            'fbird_connect','fbird_db_info','fbird_delete_user','fbird_drop_db',
            'fbird_errcode','fbird_errmsg','fbird_execute','fbird_fetch_assoc',
            'fbird_fetch_object','fbird_fetch_row','fbird_field_info',
            'fbird_free_event_handler','fbird_free_query','fbird_free_result',
            'fbird_gen_id','fbird_maintain_db','fbird_modify_user',
            'fbird_name_result','fbird_num_fields','fbird_num_params',
            'fbird_param_info','fbird_pconnect','fbird_prepare','fbird_query',
            'fbird_restore','fbird_rollback','fbird_rollback_ret',
            'fbird_server_info','fbird_service_attach','fbird_service_detach',
            'fbird_set_event_handler','fbird_trans','fbird_wait_event','fclose',
            'fdf_add_doc_javascript','fdf_add_template','fdf_close',
            'fdf_create','fdf_enum_values','fdf_errno','fdf_error','fdf_get_ap',
            'fdf_get_attachment','fdf_get_encoding','fdf_get_file',
            'fdf_get_flags','fdf_get_opt','fdf_get_status','fdf_get_value',
            'fdf_get_version','fdf_header','fdf_next_field_name','fdf_open',
            'fdf_open_string','fdf_remove_item','fdf_save','fdf_save_string',
            'fdf_set_ap','fdf_set_encoding','fdf_set_file','fdf_set_flags',
            'fdf_set_javascript_action','fdf_set_on_import_javascript',
            'fdf_set_opt','fdf_set_status','fdf_set_submit_form_action',
            'fdf_set_target_frame','fdf_set_value','fdf_set_version','feof',
            'fflush','fgetc','fgetcsv','fgets','fgetss','file','file_exists',
            'file_get_contents','file_put_contents','fileatime','filectime',
            'filegroup','fileinode','filemtime','fileowner','fileperms',
            'filepro','filepro_fieldcount','filepro_fieldname',
            'filepro_fieldtype','filepro_fieldwidth','filepro_retrieve',
            'filepro_rowcount','filesize','filetype','filter_has_var',
            'filter_id','filter_input','filter_input_array','filter_list',
            'filter_var','filter_var_array','finfo_buffer','finfo_close',
            'finfo_file','finfo_open','finfo_set_flags','floatval','flock',
            'floor','flush','fmod','fnmatch','fopen','fpassthru','fprintf',
            'fputcsv','fputs','fread','frenchtojd','fribidi_charset_info',
            'fribidi_get_charsets','fribidi_log2vis','fscanf','fseek',
            'fsockopen','fstat','ftell','ftok','ftp_alloc','ftp_cdup',
            'ftp_chdir','ftp_chmod','ftp_close','ftp_connect','ftp_delete',
            'ftp_exec','ftp_fget','ftp_fput','ftp_get','ftp_get_option',
            'ftp_login','ftp_mdtm','ftp_mkdir','ftp_nb_continue','ftp_nb_fget',
            'ftp_nb_fput','ftp_nb_get','ftp_nb_put','ftp_nlist','ftp_pasv',
            'ftp_put','ftp_pwd','ftp_quit','ftp_raw','ftp_rawlist','ftp_rename',
            'ftp_rmdir','ftp_set_option','ftp_site','ftp_size',
            'ftp_ssl_connect','ftp_systype','ftruncate','function_exists',
            'func_get_arg','func_get_args','func_num_args','fwrite','gd_info',
            'getallheaders','getcwd','getdate','getenv','gethostbyaddr',
            'gethostbyname','gethostbynamel','getimagesize','getlastmod',
            'getmxrr','getmygid','getmyinode','getmypid','getmyuid','getopt',
            'getprotobyname','getprotobynumber','getrandmax','getrusage',
            'getservbyname','getservbyport','gettext','gettimeofday','gettype',
            'get_browser','get_cfg_var','get_class','get_class_methods',
            'get_class_vars','get_current_user','get_declared_classes',
            'get_defined_constants','get_defined_functions','get_defined_vars',
            'get_extension_funcs','get_headers','get_html_translation_table',
            'get_included_files','get_include_path','get_loaded_extensions',
            'get_magic_quotes_gpc','get_magic_quotes_runtime','get_meta_tags',
            'get_object_vars','get_parent_class','get_required_files',
            'get_resource_type','glob','gmdate','gmmktime','gmp_abs','gmp_add',
            'gmp_and','gmp_clrbit','gmp_cmp','gmp_com','gmp_div','gmp_div_q',
            'gmp_div_qr','gmp_div_r','gmp_divexact','gmp_fact','gmp_gcd',
            'gmp_gcdext','gmp_hamdist','gmp_init','gmp_intval','gmp_invert',
            'gmp_jacobi','gmp_legendre','gmp_mod','gmp_mul','gmp_neg',
            'gmp_nextprime','gmp_or','gmp_perfect_square','gmp_popcount',
            'gmp_pow','gmp_powm','gmp_prob_prime','gmp_random','gmp_scan0',
            'gmp_scan1','gmp_setbit','gmp_sign','gmp_sqrt','gmp_sqrtrem',
            'gmp_strval','gmp_sub','gmp_xor','gmstrftime','gopher_parsedir',
            'gregoriantojd','gzclose','gzcompress','gzdeflate','gzencode',
            'gzeof','gzfile','gzgetc','gzgets','gzgetss','gzinflate','gzopen',
            'gzpassthru','gzputs','gzread','gzrewind','gzseek','gztell',
            'gzuncompress','gzwrite','hash','hash_algos','hash_file',
            'hash_final','hash_hmac','hash_hmac_file','hash_init','hash_update',
            'hash_update_file','hash_update_stream','header','headers_list',
            'headers_sent','hebrev','hebrevc','hexdec','highlight_file',
            'highlight_string','html_doc','html_doc_file','html_entity_decode',
            'htmlentities','htmlspecialchars','htmlspecialchars_decode',
            'http_build_cookie','http_build_query','http_build_str',
            'http_build_url','http_cache_etag','http_cache_last_modified',
            'http_chunked_decode','http_date','http_deflate','http_get',
            'http_get_request_body','http_get_request_body_stream',
            'http_get_request_headers','http_head','http_inflate',
            'http_match_etag','http_match_modified','http_match_request_header',
            'http_negotiate_charset','http_negotiate_content_type',
            'http_negotiate_language','http_parse_cookie','http_parse_headers',
            'http_parse_message','http_parse_params',
            'http_persistent_handles_clean','http_persistent_handles_count',
            'http_persistent_handles_ident','http_post_data','http_post_fields',
            'http_put_data','http_put_file','http_put_stream','http_redirect',
            'http_request','http_request_body_encode',
            'http_request_method_exists','http_request_method_name',
            'http_request_method_register','http_request_method_unregister',
            'http_send_content_disposition','http_send_content_type',
            'http_send_data','http_send_file','http_send_last_modified',
            'http_send_status','http_send_stream','http_support',
            'http_throttle','hypot','i18n_convert','i18n_discover_encoding',
            'i18n_http_input','i18n_http_output','i18n_internal_encoding',
            'i18n_ja_jp_hantozen','i18n_mime_header_decode',
            'i18n_mime_header_encode','ibase_add_user','ibase_affected_rows',
            'ibase_backup','ibase_blob_add','ibase_blob_cancel',
            'ibase_blob_close','ibase_blob_create','ibase_blob_echo',
            'ibase_blob_get','ibase_blob_import','ibase_blob_info',
            'ibase_blob_open','ibase_close','ibase_commit','ibase_commit_ret',
            'ibase_connect','ibase_db_info','ibase_delete_user','ibase_drop_db',
            'ibase_errcode','ibase_errmsg','ibase_execute','ibase_fetch_assoc',
            'ibase_fetch_object','ibase_fetch_row','ibase_field_info',
            'ibase_free_event_handler','ibase_free_query','ibase_free_result',
            'ibase_gen_id','ibase_maintain_db','ibase_modify_user',
            'ibase_name_result','ibase_num_fields','ibase_num_params',
            'ibase_param_info','ibase_pconnect','ibase_prepare','ibase_query',
            'ibase_restore','ibase_rollback','ibase_rollback_ret',
            'ibase_server_info','ibase_service_attach','ibase_service_detach',
            'ibase_set_event_handler','ibase_trans','ibase_wait_event','iconv',
            'iconv_get_encoding','iconv_mime_decode',
            'iconv_mime_decode_headers','iconv_mime_encode',
            'iconv_set_encoding','iconv_strlen','iconv_strpos','iconv_strrpos',
            'iconv_substr','id3_get_frame_long_name','id3_get_frame_short_name',
            'id3_get_genre_id','id3_get_genre_list','id3_get_genre_name',
            'id3_get_tag','id3_get_version','id3_remove_tag','id3_set_tag',
            'idate','ignore_user_abort','image_type_to_extension',
            'image_type_to_mime_type','image2wbmp','imagealphablending',
            'imageantialias','imagearc','imagechar','imagecharup',
            'imagecolorallocate','imagecolorallocatealpha','imagecolorat',
            'imagecolorclosest','imagecolorclosestalpha','imagecolordeallocate',
            'imagecolorexact','imagecolorexactalpha','imagecolormatch',
            'imagecolorresolve','imagecolorresolvealpha','imagecolorset',
            'imagecolorsforindex','imagecolorstotal','imagecolortransparent',
            'imageconvolution','imagecopy','imagecopymerge',
            'imagecopymergegray','imagecopyresampled','imagecopyresized',
            'imagecreate','imagecreatefromgd','imagecreatefromgd2',
            'imagecreatefromgd2part','imagecreatefromgif','imagecreatefromjpeg',
            'imagecreatefrompng','imagecreatefromstring','imagecreatefromwbmp',
            'imagecreatefromxbm','imagecreatetruecolor','imagedashedline',
            'imagedestroy','imageellipse','imagefill','imagefilledarc',
            'imagefilledellipse','imagefilledpolygon','imagefilledrectangle',
            'imagefilltoborder','imagefilter','imagefontheight',
            'imagefontwidth','imageftbbox','imagefttext','imagegammacorrect',
            'imagegd','imagegd2','imagegif','imagegrabscreen','imagegrabwindow',
            'imageinterlace','imageistruecolor','imagejpeg','imagelayereffect',
            'imageline','imageloadfont','imagepalettecopy','imagepng',
            'imagepolygon','imagepsbbox','imagepsencodefont',
            'imagepsextendfont','imagepsfreefont','imagepsloadfont',
            'imagepsslantfont','imagepstext','imagerectangle','imagerotate',
            'imagesavealpha','imagesetbrush','imagesetpixel','imagesetstyle',
            'imagesetthickness','imagesettile','imagestring','imagestringup',
            'imagesx','imagesy','imagetruecolortopalette','imagettfbbox',
            'imagettftext','imagetypes','imagewbmp','imagexbm','imap_8bit',
            'imap_alerts','imap_append','imap_base64','imap_binary','imap_body',
            'imap_bodystruct','imap_check','imap_clearflag_full','imap_close',
            'imap_create','imap_createmailbox','imap_delete',
            'imap_deletemailbox','imap_errors','imap_expunge',
            'imap_fetch_overview','imap_fetchbody','imap_fetchheader',
            'imap_fetchstructure','imap_fetchtext','imap_get_quota',
            'imap_get_quotaroot','imap_getacl','imap_getmailboxes',
            'imap_getsubscribed','imap_header','imap_headerinfo','imap_headers',
            'imap_last_error','imap_list','imap_listmailbox',
            'imap_listsubscribed','imap_lsub','imap_mail','imap_mail_compose',
            'imap_mail_copy','imap_mail_move','imap_mailboxmsginfo',
            'imap_mime_header_decode','imap_msgno','imap_num_msg',
            'imap_num_recent','imap_open','imap_ping','imap_qprint',
            'imap_rename','imap_renamemailbox','imap_reopen',
            'imap_rfc822_parse_adrlist','imap_rfc822_parse_headers',
            'imap_rfc822_write_address','imap_savebody','imap_scan',
            'imap_scanmailbox','imap_search','imap_set_quota','imap_setacl',
            'imap_setflag_full','imap_sort','imap_status','imap_subscribe',
            'imap_thread','imap_timeout','imap_uid','imap_undelete',
            'imap_unsubscribe','imap_utf7_decode','imap_utf7_encode',
            'imap_utf8','implode','import_request_variables','in_array',
            'ini_alter','ini_get','ini_get_all','ini_restore','ini_set',
            'intval','ip2long','iptcembed','iptcparse','isset','is_a',
            'is_array','is_bool','is_callable','is_dir','is_double',
            'is_executable','is_file','is_finite','is_float','is_infinite',
            'is_int','is_integer','is_link','is_long','is_nan','is_null',
            'is_numeric','is_object','is_readable','is_real','is_resource',
            'is_scalar','is_soap_fault','is_string','is_subclass_of',
            'is_uploaded_file','is_writable','is_writeable','iterator_apply',
            'iterator_count','iterator_to_array','java_last_exception_clear',
            'java_last_exception_get','jddayofweek','jdmonthname','jdtofrench',
            'jdtogregorian','jdtojewish','jdtojulian','jdtounix','jewishtojd',
            'join','jpeg2wbmp','json_decode','json_encode','juliantojd','key',
            'key_exists','krsort','ksort','lcg_value','ldap_add','ldap_bind',
            'ldap_close','ldap_compare','ldap_connect','ldap_count_entries',
            'ldap_delete','ldap_dn2ufn','ldap_err2str','ldap_errno',
            'ldap_error','ldap_explode_dn','ldap_first_attribute',
            'ldap_first_entry','ldap_first_reference','ldap_free_result',
            'ldap_get_attributes','ldap_get_dn','ldap_get_entries',
            'ldap_get_option','ldap_get_values','ldap_get_values_len',
            'ldap_list','ldap_mod_add','ldap_mod_del','ldap_mod_replace',
            'ldap_modify','ldap_next_attribute','ldap_next_entry',
            'ldap_next_reference','ldap_parse_reference','ldap_parse_result',
            'ldap_read','ldap_rename','ldap_search','ldap_set_option',
            'ldap_sort','ldap_start_tls','ldap_unbind','levenshtein',
            'libxml_clear_errors','libxml_get_errors','libxml_get_last_error',
            'libxml_set_streams_context','libxml_use_internal_errors','link',
            'linkinfo','list','localeconv','localtime','log','log1p','log10',
            'long2ip','lstat','ltrim','lzf_compress','lzf_decompress',
            'lzf_optimized_for','magic_quotes_runtime','mail','max','mbereg',
            'mberegi','mberegi_replace','mbereg_match','mbereg_replace',
            'mbereg_search','mbereg_search_getpos','mbereg_search_getregs',
            'mbereg_search_init','mbereg_search_pos','mbereg_search_regs',
            'mbereg_search_setpos','mbregex_encoding','mbsplit','mbstrcut',
            'mbstrlen','mbstrpos','mbstrrpos','mbsubstr','mb_check_encoding',
            'mb_convert_case','mb_convert_encoding','mb_convert_kana',
            'mb_convert_variables','mb_decode_mimeheader',
            'mb_decode_numericentity','mb_detect_encoding','mb_detect_order',
            'mb_encode_mimeheader','mb_encode_numericentity','mb_ereg',
            'mb_eregi','mb_eregi_replace','mb_ereg_match','mb_ereg_replace',
            'mb_ereg_search','mb_ereg_search_getpos','mb_ereg_search_getregs',
            'mb_ereg_search_init','mb_ereg_search_pos','mb_ereg_search_regs',
            'mb_ereg_search_setpos','mb_get_info','mb_http_input',
            'mb_http_output','mb_internal_encoding','mb_language',
            'mb_list_encodings','mb_output_handler','mb_parse_str',
            'mb_preferred_mime_name','mb_regex_encoding','mb_regex_set_options',
            'mb_send_mail','mb_split','mb_strcut','mb_strimwidth','mb_stripos',
            'mb_stristr','mb_strlen','mb_strpos','mb_strrchr','mb_strrichr',
            'mb_strripos','mb_strrpos','mb_strstr','mb_strtolower',
            'mb_strtoupper','mb_strwidth','mb_substitute_character','mb_substr',
            'mb_substr_count','mcrypt_cbc','mcrypt_cfb','mcrypt_create_iv',
            'mcrypt_decrypt','mcrypt_ecb','mcrypt_enc_get_algorithms_name',
            'mcrypt_enc_get_block_size','mcrypt_enc_get_iv_size',
            'mcrypt_enc_get_key_size','mcrypt_enc_get_modes_name',
            'mcrypt_enc_get_supported_key_sizes',
            'mcrypt_enc_is_block_algorithm',
            'mcrypt_enc_is_block_algorithm_mode','mcrypt_enc_is_block_mode',
            'mcrypt_enc_self_test','mcrypt_encrypt','mcrypt_generic',
            'mcrypt_generic_deinit','mcrypt_generic_end','mcrypt_generic_init',
            'mcrypt_get_block_size','mcrypt_get_cipher_name',
            'mcrypt_get_iv_size','mcrypt_get_key_size','mcrypt_list_algorithms',
            'mcrypt_list_modes','mcrypt_module_close',
            'mcrypt_module_get_algo_block_size',
            'mcrypt_module_get_algo_key_size',
            'mcrypt_module_get_supported_key_sizes',
            'mcrypt_module_is_block_algorithm',
            'mcrypt_module_is_block_algorithm_mode',
            'mcrypt_module_is_block_mode','mcrypt_module_open',
            'mcrypt_module_self_test','mcrypt_ofb','md5','md5_file',
            'mdecrypt_generic','memcache_add','memcache_add_server',
            'memcache_close','memcache_connect','memcache_debug',
            'memcache_decrement','memcache_delete','memcache_flush',
            'memcache_get','memcache_get_extended_stats',
            'memcache_get_server_status','memcache_get_stats',
            'memcache_get_version','memcache_increment','memcache_pconnect',
            'memcache_replace','memcache_set','memcache_set_compress_threshold',
            'memcache_set_server_params','memory_get_peak_usage',
            'memory_get_usage','metaphone','mhash','mhash_count',
            'mhash_get_block_size','mhash_get_hash_name','mhash_keygen_s2k',
            'method_exists','microtime','mime_content_type','min',
            'ming_keypress','ming_setcubicthreshold','ming_setscale',
            'ming_useconstants','ming_useswfversion','mkdir','mktime',
            'money_format','move_uploaded_file','msql','msql_affected_rows',
            'msql_close','msql_connect','msql_create_db','msql_createdb',
            'msql_data_seek','msql_db_query','msql_dbname','msql_drop_db',
            'msql_dropdb','msql_error','msql_fetch_array','msql_fetch_field',
            'msql_fetch_object','msql_fetch_row','msql_field_flags',
            'msql_field_len','msql_field_name','msql_field_seek',
            'msql_field_table','msql_field_type','msql_fieldflags',
            'msql_fieldlen','msql_fieldname','msql_fieldtable','msql_fieldtype',
            'msql_free_result','msql_freeresult','msql_list_dbs',
            'msql_list_fields','msql_list_tables','msql_listdbs',
            'msql_listfields','msql_listtables','msql_num_fields',
            'msql_num_rows','msql_numfields','msql_numrows','msql_pconnect',
            'msql_query','msql_regcase','msql_result','msql_select_db',
            'msql_selectdb','msql_tablename','mssql_bind','mssql_close',
            'mssql_connect','mssql_data_seek','mssql_execute',
            'mssql_fetch_array','mssql_fetch_assoc','mssql_fetch_batch',
            'mssql_fetch_field','mssql_fetch_object','mssql_fetch_row',
            'mssql_field_length','mssql_field_name','mssql_field_seek',
            'mssql_field_type','mssql_free_result','mssql_free_statement',
            'mssql_get_last_message','mssql_guid_string','mssql_init',
            'mssql_min_error_severity','mssql_min_message_severity',
            'mssql_next_result','mssql_num_fields','mssql_num_rows',
            'mssql_pconnect','mssql_query','mssql_result','mssql_rows_affected',
            'mssql_select_db','mt_getrandmax','mt_rand','mt_srand','mysql',
            'mysql_affected_rows','mysql_client_encoding','mysql_close',
            'mysql_connect','mysql_createdb','mysql_create_db',
            'mysql_data_seek','mysql_dbname','mysql_db_name','mysql_db_query',
            'mysql_dropdb','mysql_drop_db','mysql_errno','mysql_error',
            'mysql_escape_string','mysql_fetch_array','mysql_fetch_assoc',
            'mysql_fetch_field','mysql_fetch_lengths','mysql_fetch_object',
            'mysql_fetch_row','mysql_fieldflags','mysql_fieldlen',
            'mysql_fieldname','mysql_fieldtable','mysql_fieldtype',
            'mysql_field_flags','mysql_field_len','mysql_field_name',
            'mysql_field_seek','mysql_field_table','mysql_field_type',
            'mysql_freeresult','mysql_free_result','mysql_get_client_info',
            'mysql_get_host_info','mysql_get_proto_info',
            'mysql_get_server_info','mysql_info','mysql_insert_id',
            'mysql_listdbs','mysql_listfields','mysql_listtables',
            'mysql_list_dbs','mysql_list_fields','mysql_list_processes',
            'mysql_list_tables','mysql_numfields','mysql_numrows',
            'mysql_num_fields','mysql_num_rows','mysql_pconnect','mysql_ping',
            'mysql_query','mysql_real_escape_string','mysql_result',
            'mysql_selectdb','mysql_select_db','mysql_set_charset','mysql_stat',
            'mysql_tablename','mysql_table_name','mysql_thread_id',
            'mysql_unbuffered_query','mysqli_affected_rows','mysqli_autocommit',
            'mysqli_bind_param','mysqli_bind_result','mysqli_change_user',
            'mysqli_character_set_name','mysqli_client_encoding','mysqli_close',
            'mysqli_commit','mysqli_connect','mysqli_connect_errno',
            'mysqli_connect_error','mysqli_data_seek','mysqli_debug',
            'mysqli_disable_reads_from_master','mysqli_disable_rpl_parse',
            'mysqli_dump_debug_info','mysqli_embedded_server_end',
            'mysqli_embedded_server_start','mysqli_enable_reads_from_master',
            'mysqli_enable_rpl_parse','mysqli_errno','mysqli_error',
            'mysqli_escape_string','mysqli_execute','mysqli_fetch',
            'mysqli_fetch_array','mysqli_fetch_assoc','mysqli_fetch_field',
            'mysqli_fetch_field_direct','mysqli_fetch_fields',
            'mysqli_fetch_lengths','mysqli_fetch_object','mysqli_fetch_row',
            'mysqli_field_count','mysqli_field_seek','mysqli_field_tell',
            'mysqli_free_result','mysqli_get_charset','mysqli_get_client_info',
            'mysqli_get_client_version','mysqli_get_host_info',
            'mysqli_get_metadata','mysqli_get_proto_info',
            'mysqli_get_server_info','mysqli_get_server_version',
            'mysqli_get_warnings','mysqli_info','mysqli_init',
            'mysqli_insert_id','mysqli_kill','mysqli_master_query',
            'mysqli_more_results','mysqli_multi_query','mysqli_next_result',
            'mysqli_num_fields','mysqli_num_rows','mysqli_options',
            'mysqli_param_count','mysqli_ping','mysqli_prepare','mysqli_query',
            'mysqli_real_connect','mysqli_real_escape_string',
            'mysqli_real_query','mysqli_report','mysqli_rollback',
            'mysqli_rpl_parse_enabled','mysqli_rpl_probe',
            'mysqli_rpl_query_type','mysqli_select_db','mysqli_send_long_data',
            'mysqli_send_query','mysqli_set_charset',
            'mysqli_set_local_infile_default','mysqli_set_local_infile_handler',
            'mysqli_set_opt','mysqli_slave_query','mysqli_sqlstate',
            'mysqli_ssl_set','mysqli_stat','mysqli_stmt_affected_rows',
            'mysqli_stmt_attr_get','mysqli_stmt_attr_set',
            'mysqli_stmt_bind_param','mysqli_stmt_bind_result',
            'mysqli_stmt_close','mysqli_stmt_data_seek','mysqli_stmt_errno',
            'mysqli_stmt_error','mysqli_stmt_execute','mysqli_stmt_fetch',
            'mysqli_stmt_field_count','mysqli_stmt_free_result',
            'mysqli_stmt_get_warnings','mysqli_stmt_init',
            'mysqli_stmt_insert_id','mysqli_stmt_num_rows',
            'mysqli_stmt_param_count','mysqli_stmt_prepare','mysqli_stmt_reset',
            'mysqli_stmt_result_metadata','mysqli_stmt_send_long_data',
            'mysqli_stmt_sqlstate','mysqli_stmt_store_result',
            'mysqli_store_result','mysqli_thread_id','mysqli_thread_safe',
            'mysqli_use_result','mysqli_warning_count','natcasesort','natsort',
            'new_xmldoc','next','ngettext','nl2br','nl_langinfo',
            'ntuser_getdomaincontroller','ntuser_getusergroups',
            'ntuser_getuserinfo','ntuser_getuserlist','number_format',
            'ob_clean','ob_deflatehandler','ob_end_clean','ob_end_flush',
            'ob_etaghandler','ob_flush','ob_get_clean','ob_get_contents',
            'ob_get_flush','ob_get_length','ob_get_level','ob_get_status',
            'ob_gzhandler','ob_iconv_handler','ob_implicit_flush',
            'ob_inflatehandler','ob_list_handlers','ob_start','ob_tidyhandler',
            'octdec','odbc_autocommit','odbc_binmode','odbc_close',
            'odbc_close_all','odbc_columnprivileges','odbc_columns',
            'odbc_commit','odbc_connect','odbc_cursor','odbc_data_source',
            'odbc_do','odbc_error','odbc_errormsg','odbc_exec','odbc_execute',
            'odbc_fetch_array','odbc_fetch_into','odbc_fetch_object',
            'odbc_fetch_row','odbc_field_len','odbc_field_name',
            'odbc_field_num','odbc_field_precision','odbc_field_scale',
            'odbc_field_type','odbc_foreignkeys','odbc_free_result',
            'odbc_gettypeinfo','odbc_longreadlen','odbc_next_result',
            'odbc_num_fields','odbc_num_rows','odbc_pconnect','odbc_prepare',
            'odbc_primarykeys','odbc_procedurecolumns','odbc_procedures',
            'odbc_result','odbc_result_all','odbc_rollback','odbc_setoption',
            'odbc_specialcolumns','odbc_statistics','odbc_tableprivileges',
            'odbc_tables','opendir','openlog','openssl_csr_export',
            'openssl_csr_export_to_file','openssl_csr_get_public_key',
            'openssl_csr_get_subject','openssl_csr_new','openssl_csr_sign',
            'openssl_error_string','openssl_free_key','openssl_get_privatekey',
            'openssl_get_publickey','openssl_open','openssl_pkcs12_export',
            'openssl_pkcs12_export_to_file','openssl_pkcs12_read',
            'openssl_pkcs7_decrypt','openssl_pkcs7_encrypt',
            'openssl_pkcs7_sign','openssl_pkcs7_verify','openssl_pkey_export',
            'openssl_pkey_export_to_file','openssl_pkey_free',
            'openssl_pkey_get_details','openssl_pkey_get_private',
            'openssl_pkey_get_public','openssl_pkey_new',
            'openssl_private_decrypt','openssl_private_encrypt',
            'openssl_public_decrypt','openssl_public_encrypt','openssl_seal',
            'openssl_sign','openssl_verify','openssl_x509_checkpurpose',
            'openssl_x509_check_private_key','openssl_x509_export',
            'openssl_x509_export_to_file','openssl_x509_free',
            'openssl_x509_parse','openssl_x509_read','ord',
            'output_add_rewrite_var','output_reset_rewrite_vars','overload',
            'outputdebugstring','pack','parse_ini_file','parse_str','parse_url',
            'parsekit_compile_file','parsekit_compile_string',
            'parsekit_func_arginfo','parsekit_opcode_flags',
            'parsekit_opcode_name','passthru','pathinfo','pclose',
            'pdf_add_bookmark','pdf_add_launchlink','pdf_add_locallink',
            'pdf_add_nameddest','pdf_add_note','pdf_add_pdflink',
            'pdf_add_thumbnail','pdf_add_weblink','pdf_arc','pdf_arcn',
            'pdf_attach_file','pdf_begin_font','pdf_begin_glyph',
            'pdf_begin_page','pdf_begin_pattern','pdf_begin_template',
            'pdf_circle','pdf_clip','pdf_close','pdf_close_image',
            'pdf_close_pdi','pdf_close_pdi_page','pdf_closepath',
            'pdf_closepath_fill_stroke','pdf_closepath_stroke','pdf_concat',
            'pdf_continue_text','pdf_create_gstate','pdf_create_pvf',
            'pdf_curveto','pdf_delete','pdf_delete_pvf','pdf_encoding_set_char',
            'pdf_end_font','pdf_end_glyph','pdf_end_page','pdf_end_pattern',
            'pdf_end_template','pdf_endpath','pdf_fill','pdf_fill_imageblock',
            'pdf_fill_pdfblock','pdf_fill_stroke','pdf_fill_textblock',
            'pdf_findfont','pdf_fit_image','pdf_fit_pdi_page',
            'pdf_fit_textline','pdf_get_apiname','pdf_get_buffer',
            'pdf_get_errmsg','pdf_get_errnum','pdf_get_parameter',
            'pdf_get_pdi_parameter','pdf_get_pdi_value','pdf_get_value',
            'pdf_initgraphics','pdf_lineto','pdf_load_font',
            'pdf_load_iccprofile','pdf_load_image','pdf_makespotcolor',
            'pdf_moveto','pdf_new','pdf_open_ccitt','pdf_open_file',
            'pdf_open_image','pdf_open_image_file','pdf_open_pdi',
            'pdf_open_pdi_page','pdf_place_image','pdf_place_pdi_page',
            'pdf_process_pdi','pdf_rect','pdf_restore','pdf_rotate','pdf_save',
            'pdf_scale','pdf_set_border_color','pdf_set_border_dash',
            'pdf_set_border_style','pdf_set_gstate','pdf_set_info',
            'pdf_set_parameter','pdf_set_text_pos','pdf_set_value',
            'pdf_setcolor','pdf_setdash','pdf_setdashpattern','pdf_setflat',
            'pdf_setfont','pdf_setlinecap','pdf_setlinejoin','pdf_setlinewidth',
            'pdf_setmatrix','pdf_setmiterlimit','pdf_setpolydash','pdf_shading',
            'pdf_shading_pattern','pdf_shfill','pdf_show','pdf_show_boxed',
            'pdf_show_xy','pdf_skew','pdf_stringwidth','pdf_stroke',
            'pdf_translate','pdo_drivers','pfsockopen','pg_affected_rows',
            'pg_cancel_query','pg_clientencoding','pg_client_encoding',
            'pg_close','pg_cmdtuples','pg_connect','pg_connection_busy',
            'pg_connection_reset','pg_connection_status','pg_convert',
            'pg_copy_from','pg_copy_to','pg_dbname','pg_delete','pg_end_copy',
            'pg_errormessage','pg_escape_bytea','pg_escape_string','pg_exec',
            'pg_execute','pg_fetch_all','pg_fetch_all_columns','pg_fetch_array',
            'pg_fetch_assoc','pg_fetch_object','pg_fetch_result','pg_fetch_row',
            'pg_fieldisnull','pg_fieldname','pg_fieldnum','pg_fieldprtlen',
            'pg_fieldsize','pg_fieldtype','pg_field_is_null','pg_field_name',
            'pg_field_num','pg_field_prtlen','pg_field_size','pg_field_table',
            'pg_field_type','pg_field_type_oid','pg_free_result',
            'pg_freeresult','pg_get_notify','pg_get_pid','pg_get_result',
            'pg_getlastoid','pg_host','pg_insert','pg_last_error',
            'pg_last_notice','pg_last_oid','pg_loclose','pg_locreate',
            'pg_loexport','pg_loimport','pg_loopen','pg_loread','pg_loreadall',
            'pg_lounlink','pg_lowrite','pg_lo_close','pg_lo_create',
            'pg_lo_export','pg_lo_import','pg_lo_open','pg_lo_read',
            'pg_lo_read_all','pg_lo_seek','pg_lo_tell','pg_lo_unlink',
            'pg_lo_write','pg_meta_data','pg_numfields','pg_numrows',
            'pg_num_fields','pg_num_rows','pg_options','pg_parameter_status',
            'pg_pconnect','pg_ping','pg_port','pg_prepare','pg_put_line',
            'pg_query','pg_query_params','pg_result','pg_result_error',
            'pg_result_error_field','pg_result_seek','pg_result_status',
            'pg_select','pg_send_execute','pg_send_prepare','pg_send_query',
            'pg_send_query_params','pg_set_client_encoding',
            'pg_set_error_verbosity','pg_setclientencoding','pg_trace',
            'pg_transaction_status','pg_tty','pg_unescape_bytea','pg_untrace',
            'pg_update','pg_version','php_egg_logo_guid','php_ini_loaded_file',
            'php_ini_scanned_files','php_logo_guid','php_real_logo_guid',
            'php_sapi_name','php_strip_whitespace','php_uname','phpcredits',
            'phpdoc_xml_from_string','phpinfo','phpversion','pi','png2wbmp',
            'pop3_close','pop3_delete_message','pop3_get_account_size',
            'pop3_get_message','pop3_get_message_count',
            'pop3_get_message_header','pop3_get_message_ids',
            'pop3_get_message_size','pop3_get_message_sizes','pop3_open',
            'pop3_undelete','popen','pos','posix_ctermid','posix_errno',
            'posix_getcwd','posix_getegid','posix_geteuid','posix_getgid',
            'posix_getgrgid','posix_getgrnam','posix_getgroups',
            'posix_getlogin','posix_getpgid','posix_getpgrp','posix_getpid',
            'posix_getppid','posix_getpwnam','posix_getpwuid','posix_getrlimit',
            'posix_getsid','posix_getuid','posix_get_last_error','posix_isatty',
            'posix_kill','posix_mkfifo','posix_setegid','posix_seteuid',
            'posix_setgid','posix_setpgid','posix_setsid','posix_setuid',
            'posix_strerror','posix_times','posix_ttyname','posix_uname','pow',
            'preg_grep','preg_last_error','preg_match','preg_match_all',
            'preg_quote','preg_replace','preg_replace_callback','preg_split',
            'prev','print_r','printf','proc_close','proc_get_status',
            'proc_open','proc_terminate','putenv','quoted_printable_decode',
            'quotemeta','rad2deg','radius_acct_open','radius_add_server',
            'radius_auth_open','radius_close','radius_config',
            'radius_create_request','radius_cvt_addr','radius_cvt_int',
            'radius_cvt_string','radius_demangle','radius_demangle_mppe_key',
            'radius_get_attr','radius_get_vendor_attr','radius_put_addr',
            'radius_put_attr','radius_put_int','radius_put_string',
            'radius_put_vendor_addr','radius_put_vendor_attr',
            'radius_put_vendor_int','radius_put_vendor_string',
            'radius_request_authenticator','radius_send_request',
            'radius_server_secret','radius_strerror','rand','range',
            'rawurldecode','rawurlencode','read_exif_data','readdir','readfile',
            'readgzfile','readlink','realpath','reg_close_key','reg_create_key',
            'reg_enum_key','reg_enum_value','reg_get_value','reg_open_key',
            'reg_set_value','register_shutdown_function',
            'register_tick_function','rename','res_close','res_get','res_list',
            'res_list_type','res_open','res_set','reset',
            'restore_error_handler','restore_include_path','rewind','rewinddir',
            'rmdir','round','rsort','rtrim','runkit_class_adopt',
            'runkit_class_emancipate','runkit_constant_add',
            'runkit_constant_redefine','runkit_constant_remove',
            'runkit_default_property_add','runkit_function_add',
            'runkit_function_copy','runkit_function_redefine',
            'runkit_function_remove','runkit_function_rename','runkit_import',
            'runkit_lint','runkit_lint_file','runkit_method_add',
            'runkit_method_copy','runkit_method_redefine',
            'runkit_method_remove','runkit_method_rename','runkit_object_id',
            'runkit_return_value_used','runkit_sandbox_output_handler',
            'runkit_superglobals','runkit_zval_inspect','scandir','sem_acquire',
            'sem_get','sem_release','sem_remove','serialize',
            'session_cache_expire','session_cache_limiter','session_commit',
            'session_decode','session_destroy','session_encode',
            'session_get_cookie_params','session_id','session_is_registered',
            'session_module_name','session_name','session_regenerate_id',
            'session_register','session_save_path','session_set_cookie_params',
            'session_set_save_handler','session_start','session_unregister',
            'session_unset','session_write_close','set_content',
            'set_error_handler','set_file_buffer','set_include_path',
            'set_magic_quotes_runtime','set_socket_blocking','set_time_limit',
            'setcookie','setlocale','setrawcookie','settype','sha1','sha1_file',
            'shell_exec','shmop_close','shmop_delete','shmop_open','shmop_read',
            'shmop_size','shmop_write','shm_attach','shm_detach','shm_get_var',
            'shm_put_var','shm_remove','shm_remove_var','show_source','shuffle',
            'similar_text','simplexml_import_dom','simplexml_load_file',
            'simplexml_load_string','sin','sinh','sizeof','sleep','smtp_close',
            'smtp_cmd_data','smtp_cmd_mail','smtp_cmd_rcpt','smtp_connect',
            'snmp_get_quick_print','snmp_get_valueretrieval','snmp_read_mib',
            'snmp_set_quick_print','snmp_set_valueretrieval','snmp2_get',
            'snmp2_getnext','snmp2_real_walk','snmp2_set','snmp2_walk',
            'snmp3_get','snmp3_getnext','snmp3_real_walk','snmp3_set',
            'snmp3_walk','snmpget','snmpgetnext','snmprealwalk','snmpset',
            'snmpwalk','snmpwalkoid','socket_accept','socket_bind',
            'socket_clear_error','socket_close','socket_connect',
            'socket_create','socket_create_listen','socket_create_pair',
            'socket_getopt','socket_getpeername','socket_getsockname',
            'socket_get_option','socket_get_status','socket_iovec_add',
            'socket_iovec_alloc','socket_iovec_delete','socket_iovec_fetch',
            'socket_iovec_free','socket_iovec_set','socket_last_error',
            'socket_listen','socket_read','socket_readv','socket_recv',
            'socket_recvfrom','socket_recvmsg','socket_select','socket_send',
            'socket_sendmsg','socket_sendto','socket_setopt','socket_set_block',
            'socket_set_blocking','socket_set_nonblock','socket_set_option',
            'socket_set_timeout','socket_shutdown','socket_strerror',
            'socket_write','socket_writev','sort','soundex','spl_autoload',
            'spl_autoload_call','spl_autoload_extensions',
            'spl_autoload_functions','spl_autoload_register',
            'spl_autoload_unregister','spl_classes','spl_object_hash','split',
            'spliti','sprintf','sql_regcase','sqlite_array_query',
            'sqlite_busy_timeout','sqlite_changes','sqlite_close',
            'sqlite_column','sqlite_create_aggregate','sqlite_create_function',
            'sqlite_current','sqlite_error_string','sqlite_escape_string',
            'sqlite_exec','sqlite_factory','sqlite_fetch_all',
            'sqlite_fetch_array','sqlite_fetch_column_types',
            'sqlite_fetch_object','sqlite_fetch_single','sqlite_fetch_string',
            'sqlite_field_name','sqlite_has_more','sqlite_has_prev',
            'sqlite_last_error','sqlite_last_insert_rowid','sqlite_libencoding',
            'sqlite_libversion','sqlite_next','sqlite_num_fields',
            'sqlite_num_rows','sqlite_open','sqlite_popen','sqlite_prev',
            'sqlite_query','sqlite_rewind','sqlite_seek','sqlite_single_query',
            'sqlite_udf_decode_binary','sqlite_udf_encode_binary',
            'sqlite_unbuffered_query','sqlite_valid','sqrt','srand','sscanf',
            'ssh2_auth_hostbased_file','ssh2_auth_none','ssh2_auth_password',
            'ssh2_auth_pubkey_file','ssh2_connect','ssh2_exec',
            'ssh2_fetch_stream','ssh2_fingerprint','ssh2_forward_accept',
            'ssh2_forward_listen','ssh2_methods_negotiated','ssh2_poll',
            'ssh2_publickey_add','ssh2_publickey_init','ssh2_publickey_list',
            'ssh2_publickey_remove','ssh2_scp_recv','ssh2_scp_send','ssh2_sftp',
            'ssh2_sftp_lstat','ssh2_sftp_mkdir','ssh2_sftp_readlink',
            'ssh2_sftp_realpath','ssh2_sftp_rename','ssh2_sftp_rmdir',
            'ssh2_sftp_stat','ssh2_sftp_symlink','ssh2_sftp_unlink',
            'ssh2_shell','ssh2_tunnel','stat','stats_absolute_deviation',
            'stats_cdf_beta','stats_cdf_binomial','stats_cdf_cauchy',
            'stats_cdf_chisquare','stats_cdf_exponential','stats_cdf_f',
            'stats_cdf_gamma','stats_cdf_laplace','stats_cdf_logistic',
            'stats_cdf_negative_binomial','stats_cdf_noncentral_chisquare',
            'stats_cdf_noncentral_f','stats_cdf_noncentral_t',
            'stats_cdf_normal','stats_cdf_poisson','stats_cdf_t',
            'stats_cdf_uniform','stats_cdf_weibull','stats_covariance',
            'stats_dens_beta','stats_dens_cauchy','stats_dens_chisquare',
            'stats_dens_exponential','stats_dens_f','stats_dens_gamma',
            'stats_dens_laplace','stats_dens_logistic','stats_dens_normal',
            'stats_dens_pmf_binomial','stats_dens_pmf_hypergeometric',
            'stats_dens_pmf_negative_binomial','stats_dens_pmf_poisson',
            'stats_dens_t','stats_dens_uniform','stats_dens_weibull',
            'stats_harmonic_mean','stats_kurtosis','stats_rand_gen_beta',
            'stats_rand_gen_chisquare','stats_rand_gen_exponential',
            'stats_rand_gen_f','stats_rand_gen_funiform','stats_rand_gen_gamma',
            'stats_rand_gen_ipoisson','stats_rand_gen_iuniform',
            'stats_rand_gen_noncenral_f','stats_rand_gen_noncentral_chisquare',
            'stats_rand_gen_noncentral_t','stats_rand_gen_normal',
            'stats_rand_gen_t','stats_rand_getsd','stats_rand_ibinomial',
            'stats_rand_ibinomial_negative','stats_rand_ignlgi',
            'stats_rand_phrase_to_seeds','stats_rand_ranf','stats_rand_setall',
            'stats_skew','stats_standard_deviation','stats_stat_binomial_coef',
            'stats_stat_correlation','stats_stat_factorial',
            'stats_stat_independent_t','stats_stat_innerproduct',
            'stats_stat_paired_t','stats_stat_percentile','stats_stat_powersum',
            'stats_variance','strcasecmp','strchr','strcmp','strcoll','strcspn',
            'stream_bucket_append','stream_bucket_make_writeable',
            'stream_bucket_new','stream_bucket_prepend','stream_context_create',
            'stream_context_get_default','stream_context_get_options',
            'stream_context_set_default','stream_context_set_option',
            'stream_context_set_params','stream_copy_to_stream',
            'stream_encoding','stream_filter_append','stream_filter_prepend',
            'stream_filter_register','stream_filter_remove',
            'stream_get_contents','stream_get_filters','stream_get_line',
            'stream_get_meta_data','stream_get_transports',
            'stream_get_wrappers','stream_is_local',
            'stream_notification_callback','stream_register_wrapper',
            'stream_resolve_include_path','stream_select','stream_set_blocking',
            'stream_set_timeout','stream_set_write_buffer',
            'stream_socket_accept','stream_socket_client',
            'stream_socket_enable_crypto','stream_socket_get_name',
            'stream_socket_pair','stream_socket_recvfrom',
            'stream_socket_sendto','stream_socket_server',
            'stream_socket_shutdown','stream_supports_lock',
            'stream_wrapper_register','stream_wrapper_restore',
            'stream_wrapper_unregister','strftime','stripcslashes','stripos',
            'stripslashes','strip_tags','stristr','strlen','strnatcasecmp',
            'strnatcmp','strpbrk','strncasecmp','strncmp','strpos','strrchr',
            'strrev','strripos','strrpos','strspn','strstr','strtok',
            'strtolower','strtotime','strtoupper','strtr','strval',
            'str_ireplace','str_pad','str_repeat','str_replace','str_rot13',
            'str_split','str_shuffle','str_word_count','substr',
            'substr_compare','substr_count','substr_replace','svn_add',
            'svn_auth_get_parameter','svn_auth_set_parameter','svn_cat',
            'svn_checkout','svn_cleanup','svn_client_version','svn_commit',
            'svn_diff','svn_export','svn_fs_abort_txn','svn_fs_apply_text',
            'svn_fs_begin_txn2','svn_fs_change_node_prop','svn_fs_check_path',
            'svn_fs_contents_changed','svn_fs_copy','svn_fs_delete',
            'svn_fs_dir_entries','svn_fs_file_contents','svn_fs_file_length',
            'svn_fs_is_dir','svn_fs_is_file','svn_fs_make_dir',
            'svn_fs_make_file','svn_fs_node_created_rev','svn_fs_node_prop',
            'svn_fs_props_changed','svn_fs_revision_prop',
            'svn_fs_revision_root','svn_fs_txn_root','svn_fs_youngest_rev',
            'svn_import','svn_info','svn_log','svn_ls','svn_repos_create',
            'svn_repos_fs','svn_repos_fs_begin_txn_for_commit',
            'svn_repos_fs_commit_txn','svn_repos_hotcopy','svn_repos_open',
            'svn_repos_recover','svn_status','svn_update','symlink',
            'sys_get_temp_dir','syslog','system','tan','tanh','tempnam',
            'textdomain','thread_get','thread_include','thread_lock',
            'thread_lock_try','thread_mutex_destroy','thread_mutex_init',
            'thread_set','thread_start','thread_unlock','tidy_access_count',
            'tidy_clean_repair','tidy_config_count','tidy_diagnose',
            'tidy_error_count','tidy_get_body','tidy_get_config',
            'tidy_get_error_buffer','tidy_get_head','tidy_get_html',
            'tidy_get_html_ver','tidy_get_output','tidy_get_release',
            'tidy_get_root','tidy_get_status','tidy_getopt','tidy_is_xhtml',
            'tidy_is_xml','tidy_parse_file','tidy_parse_string',
            'tidy_repair_file','tidy_repair_string','tidy_warning_count','time',
            'timezone_abbreviations_list','timezone_identifiers_list',
            'timezone_name_from_abbr','timezone_name_get','timezone_offset_get',
            'timezone_open','timezone_transitions_get','tmpfile',
            'token_get_all','token_name','touch','trigger_error',
            'transliterate','transliterate_filters_get','trim','uasort',
            'ucfirst','ucwords','uksort','umask','uniqid','unixtojd','unlink',
            'unpack','unregister_tick_function','unserialize','unset',
            'urldecode','urlencode','user_error','use_soap_error_handler',
            'usleep','usort','utf8_decode','utf8_encode','var_dump',
            'var_export','variant_abs','variant_add','variant_and',
            'variant_cast','variant_cat','variant_cmp',
            'variant_date_from_timestamp','variant_date_to_timestamp',
            'variant_div','variant_eqv','variant_fix','variant_get_type',
            'variant_idiv','variant_imp','variant_int','variant_mod',
            'variant_mul','variant_neg','variant_not','variant_or',
            'variant_pow','variant_round','variant_set','variant_set_type',
            'variant_sub','variant_xor','version_compare','virtual','vfprintf',
            'vprintf','vsprintf','wddx_add_vars','wddx_deserialize',
            'wddx_packet_end','wddx_packet_start','wddx_serialize_value',
            'wddx_serialize_vars','win_beep','win_browse_file',
            'win_browse_folder','win_create_link','win_message_box',
            'win_play_wav','win_shell_execute','win32_create_service',
            'win32_delete_service','win32_get_last_control_message',
            'win32_ps_list_procs','win32_ps_stat_mem','win32_ps_stat_proc',
            'win32_query_service_status','win32_scheduler_delete_task',
            'win32_scheduler_enum_tasks','win32_scheduler_get_task_info',
            'win32_scheduler_run','win32_scheduler_set_task_info',
            'win32_set_service_status','win32_start_service',
            'win32_start_service_ctrl_dispatcher','win32_stop_service',
            'wordwrap','xml_error_string','xml_get_current_byte_index',
            'xml_get_current_column_number','xml_get_current_line_number',
            'xml_get_error_code','xml_parse','xml_parser_create',
            'xml_parser_create_ns','xml_parser_free','xml_parser_get_option',
            'xml_parser_set_option','xml_parse_into_struct',
            'xml_set_character_data_handler','xml_set_default_handler',
            'xml_set_element_handler','xml_set_end_namespace_decl_handler',
            'xml_set_external_entity_ref_handler',
            'xml_set_notation_decl_handler','xml_set_object',
            'xml_set_processing_instruction_handler',
            'xml_set_start_namespace_decl_handler',
            'xml_set_unparsed_entity_decl_handler','xmldoc','xmldocfile',
            'xmlrpc_decode','xmlrpc_decode_request','xmlrpc_encode',
            'xmlrpc_encode_request','xmlrpc_get_type','xmlrpc_is_fault',
            'xmlrpc_parse_method_descriptions',
            'xmlrpc_server_add_introspection_data','xmlrpc_server_call_method',
            'xmlrpc_server_create','xmlrpc_server_destroy',
            'xmlrpc_server_register_introspection_callback',
            'xmlrpc_server_register_method','xmlrpc_set_type','xmltree',
            'xmlwriter_end_attribute','xmlwriter_end_cdata',
            'xmlwriter_end_comment','xmlwriter_end_document',
            'xmlwriter_end_dtd','xmlwriter_end_dtd_attlist',
            'xmlwriter_end_dtd_element','xmlwriter_end_dtd_entity',
            'xmlwriter_end_element','xmlwriter_end_pi','xmlwriter_flush',
            'xmlwriter_full_end_element','xmlwriter_open_memory',
            'xmlwriter_open_uri','xmlwriter_output_memory',
            'xmlwriter_set_indent','xmlwriter_set_indent_string',
            'xmlwriter_start_attribute','xmlwriter_start_attribute_ns',
            'xmlwriter_start_cdata','xmlwriter_start_comment',
            'xmlwriter_start_document','xmlwriter_start_dtd',
            'xmlwriter_start_dtd_attlist','xmlwriter_start_dtd_element',
            'xmlwriter_start_dtd_entity','xmlwriter_start_element',
            'xmlwriter_start_element_ns','xmlwriter_start_pi','xmlwriter_text',
            'xmlwriter_write_attribute','xmlwriter_write_attribute_ns',
            'xmlwriter_write_cdata','xmlwriter_write_comment',
            'xmlwriter_write_dtd','xmlwriter_write_dtd_attlist',
            'xmlwriter_write_dtd_element','xmlwriter_write_dtd_entity',
            'xmlwriter_write_element','xmlwriter_write_element_ns',
            'xmlwriter_write_pi','xmlwriter_write_raw','xpath_eval',
            'xpath_eval_expression','xpath_new_context','xpath_register_ns',
            'xpath_register_ns_auto','xptr_eval','xptr_new_context','yp_all',
            'yp_cat','yp_errno','yp_err_string','yp_first',
            'yp_get_default_domain','yp_master','yp_match','yp_next','yp_order',
            'zend_current_obfuscation_level','zend_get_cfg_var','zend_get_id',
            'zend_loader_current_file','zend_loader_enabled',
            'zend_loader_file_encoded','zend_loader_file_licensed',
            'zend_loader_install_license','zend_loader_version',
            'zend_logo_guid','zend_match_hostmasks','zend_obfuscate_class_name',
            'zend_obfuscate_function_name','zend_optimizer_version',
            'zend_runtime_obfuscate','zend_version','zip_close',
            'zip_entry_close','zip_entry_compressedsize',
            'zip_entry_compressionmethod','zip_entry_filesize','zip_entry_name',
            'zip_entry_open','zip_entry_read','zip_open','zip_read',
            'zlib_get_coding_type'
            ),
        4 => array(
            'DEFAULT_INCLUDE_PATH', 'DIRECTORY_SEPARATOR', 'E_ALL',
            'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_CORE_ERROR',
            'E_CORE_WARNING', 'E_ERROR', 'E_NOTICE', 'E_PARSE', 'E_STRICT',
            'E_USER_ERROR', 'E_USER_NOTICE', 'E_USER_WARNING', 'E_WARNING',
            'ENT_COMPAT','ENT_QUOTES','ENT_NOQUOTES',
            'false', 'null', 'PEAR_EXTENSION_DIR', 'PEAR_INSTALL_DIR',
            'PHP_BINDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_DATADIR',
            'PHP_EXTENSION_DIR', 'PHP_LIBDIR',
            'PHP_LOCALSTATEDIR', 'PHP_OS',
            'PHP_OUTPUT_HANDLER_CONT', 'PHP_OUTPUT_HANDLER_END',
            'PHP_OUTPUT_HANDLER_START', 'PHP_SYSCONFDIR',
            'PHP_VERSION', 'true', '__CLASS__', '__FILE__', '__FUNCTION__',
            '__LINE__', '__METHOD__'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '<'.'%', '<'.'%=', '%'.'>', '<'.'?', '<'.'?=', '?'.'>'
            ),
        0 => array(
            '(', ')', '[', ']', '{', '}',
            '!', '@', '%', '&', '|', '/',
            '<', '>',
            '=', '-', '+', '*',
            '.', ':', ',', ';'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #990000;',
            4 => 'color: #009900; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #666666; font-style: italic;',
            3 => 'color: #0000cc; font-style: italic;',
            4 => 'color: #009933; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #006699; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold; font-style: italic;',
            6 => 'color: #009933; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;',
            'HARD' => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            ),
        'METHODS' => array(
            1 => 'color: #004000;',
            2 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            1 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #000088;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => '',
            4 => '',
            5 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.php.net/{FNAMEL}',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '->',
        2 => '::'
        ),
    'REGEXPS' => array(
        //Variables
        0 => "[\\$]+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*"
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            '<'.'?php' => '?'.'>'
            ),
        1 => array(
            '<'.'?' => '?'.'>'
            ),
        2 => array(
            '<'.'%' => '%'.'>'
            ),
        3 => array(
            ''
            ),
        4 => "/(?P<\\?(?>php\b)?)(?:".
            "(?>[^\"'?\\/<]+)|".
            "\\?(?!>)|".
            "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
            "(?>\"(?>[^\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|".
            "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|".
            "\\/\\/(?>.*?(?:\\?>|$))|".
            "#(?>.*?(?:\\?>|$))|".
            "\\/(?=[^*\\/])|".
            "<(?!<<)|".
            "<<<(?P\w+)\s.*?\s\k".
            ")*?(?P\\?>|\Z)/sm",
        5 => "/(?P<%)(?:".
            "(?>[^\"'%\\/<]+)|".
            "%(?!>)|".
            "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
            "(?>\"(?>[^\\\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|".
            "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|".
            "\\/\\/(?>.*?(?:%>|$))|".
            "#(?>.*?(?:%>|$))|".
            "\\/(?=[^*\\/])|".
            "<(?!<<)|".
            "<<<(?P\w+)\s.*?\s\k".
            ")*?(?P%>|\Z)/sm",
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/icon.php0000664000175000017500000002100712014173443013626 0ustar  benbebenbe 'Icon',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '\''),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'break', 'case', 'continue', 'create', 'default', 'do', 'else',
            'end', 'every', 'fail', 'for', 'if', 'import', 'initial',
            'initially', 'invocable', 'link', 'next', 'not', 'of', 'package',
            'procedure', 'record', 'repeat', 'return', 'switch', 'suspend',
            'then', 'to', 'until', 'while'
            ),
        2 => array(
            'global', 'local', 'static'
            ),
        3 => array(
            'allocated', 'ascii', 'clock', 'collections',
            'column', 'cset', 'current', 'date', 'dateline', 'digits',
            'dump', 'e', 'error', 'errornumber', 'errortext',
            'errorvalue', 'errout', 'eventcode', 'eventsource', 'eventvalue',
            'fail', 'features', 'file', 'host', 'input', 'lcase',
            'letters', 'level', 'line', 'main', 'now', 'null',
            'output', 'phi', 'pi', 'pos', 'progname', 'random',
            'regions', 'source', 'storage', 'subject', 'syserr', 'time',
            'trace', 'ucase', 'version', 'col', 'control', 'interval',
            'ldrag', 'lpress', 'lrelease', 'mdrag', 'meta', 'mpress',
            'mrelease', 'rdrag', 'resize', 'row', 'rpress', 'rrelease',
            'shift', 'window', 'x', 'y'
            ),
        4 => array(
            'abs', 'acos', 'any', 'args', 'asin', 'atan', 'bal', 'center', 'char',
            'chmod', 'close', 'cofail', 'collect', 'copy', 'cos', 'cset', 'ctime', 'delay', 'delete',
            'detab', 'display', 'dtor', 'entab', 'errorclear', 'event', 'eventmask', 'EvGet', 'exit',
            'exp', 'fetch', 'fieldnames', 'find', 'flock', 'flush', 'function', 'get', 'getch',
            'getche', 'getenv', 'gettimeofday', 'globalnames', 'gtime', 'iand', 'icom', 'image',
            'insert', 'integer', 'ior', 'ishift', 'ixor', 'key', 'left', 'list', 'load', 'loadfunc',
            'localnames', 'log', 'many', 'map', 'match', 'member', 'mkdir', 'move', 'name', 'numeric',
            'open', 'opmask', 'ord', 'paramnames', 'parent', 'pipe', 'pop', 'pos', 'proc', 'pull',
            'push', 'put', 'read', 'reads', 'real', 'receive', 'remove', 'rename', 'repl', 'reverse',
            'right', 'rmdir', 'rtod', 'runerr', 'seek', 'select', 'send', 'seq', 'serial', 'set',
            'setenv', 'sort', 'sortf', 'sql', 'sqrt', 'stat', 'stop', 'string', 'system', 'tab',
            'table', 'tan', 'trap', 'trim', 'truncate', 'type', 'upto', 'utime', 'variable', 'where',
            'write', 'writes'
            ),
        5 => array(
            'Active', 'Alert', 'Bg', 'Clip', 'Clone', 'Color', 'ColorValue',
            'CopyArea', 'Couple', 'DrawArc', 'DrawCircle', 'DrawCurve', 'DrawCylinder', 'DrawDisk',
            'DrawImage', 'DrawLine', 'DrawPoint', 'DrawPolygon', 'DrawRectangle', 'DrawSegment',
            'DrawSphere', 'DrawString', 'DrawTorus', 'EraseArea', 'Event', 'Fg', 'FillArc',
            'FillCircle', 'FillPolygon', 'FillRectangle', 'Font', 'FreeColor', 'GotoRC', 'GotoXY',
            'IdentifyMatrix', 'Lower', 'MatrixMode', 'NewColor', 'PaletteChars', 'PaletteColor',
            'PaletteKey', 'Pattern', 'Pending', 'Pixel', 'PopMatrix', 'PushMatrix', 'PushRotate',
            'PushScale', 'PushTranslate', 'QueryPointer', 'Raise', 'ReadImage', 'Refresh', 'Rotate',
            'Scale', 'Texcoord', 'TextWidth', 'Texture', 'Translate', 'Uncouple', 'WAttrib',
            'WDefault', 'WFlush', 'WindowContents', 'WriteImage', 'WSync'
            ),
        6 => array(
            'define', 'include', 'ifdef', 'ifndef', 'else', 'endif', 'error',
            'line', 'undef'
            ),
        7 => array(
            '_V9', '_AMIGA', '_ACORN', '_CMS', '_MACINTOSH', '_MSDOS_386',
            '_MS_WINDOWS_NT', '_MSDOS', '_MVS', '_OS2', '_POR', 'T', '_UNIX', '_POSIX', '_DBM',
            '_VMS', '_ASCII', '_EBCDIC', '_CO_EXPRESSIONS', '_CONSOLE_WINDOW', '_DYNAMIC_LOADING',
            '_EVENT_MONITOR', '_EXTERNAL_FUNCTIONS', '_KEYBOARD_FUNCTIONS', '_LARGE_INTEGERS',
            '_MULTITASKING', '_PIPES', '_RECORD_IO', '_SYSTEM_FUNCTION', '_MESSAGING', '_GRAPHICS',
            '_X_WINDOW_SYSTEM', '_MS_WINDOWS', '_WIN32', '_PRESENTATION_MGR', '_ARM_FUNCTIONS',
            '_DOS_FUNCTIONS'
            ),
        8 => array(
            'line'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '\\', '%', '=', '<', '>', '!', '^',
            '&', '|', '?', ':', ';', ',', '.', '~', '@'
            ),
        2 => array(
            '$(', '$)', '$<', '$>', '$'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #b1b100;',
            3 => 'color: #b1b100;',
            4 => 'color: #b1b100;',
            5 => 'color: #b1b100;',
            6 => 'color: #b1b100;',
            7 => 'color: #b1b100;',
            8 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;',
            2 => 'color: #b1b100;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(1 => '.'),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            3 => array(
                'DISALLOWED_BEFORE' => '(?<=&)'
                ),
            4 => array(
                'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\"\'])"
                ),
            6 => array(
                'DISALLOWED_BEFORE' => '(?<=\$)'
                ),
            8 => array(
                'DISALLOWED_BEFORE' => '(?<=#)'
                )
            )
        )
);

?>geshi/geshi/prolog.php0000664000175000017500000001217212014173404014200 0ustar  benbebenbe 'Prolog',
    'COMMENT_SINGLE' => array(1 => '%'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("\'"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'abolish','abs','arg','asserta','assertz','at_end_of_stream','atan',
            'atom','atom_chars','atom_codes','atom_concat','atom_length',
            'atomic','bagof','call','catch','ceiling','char_code',
            'char_conversion','clause','close','compound','consult','copy_term',
            'cos','current_char_conversion','current_input','current_op',
            'current_output','current_predicate','current_prolog_flag',
            'discontiguous','dynamic','ensure_loaded','exp','fail','findall',
            'float','float_fractional_part','float_integer_part','floor',
            'flush_output','functor','get_byte','get_char','get_code','halt',
            'include','initialization','integer','is','listing','log','mod',
            'multifile','nl','nonvar','notrace','number','number_chars',
            'number_codes','once','op','open','peek_byte','peek_char',
            'peek_code','put_byte','put_char','put_code','read','read_term',
            'rem','repeat','retract','round','set_input','set_output',
            'set_prolog_flag','set_stream_position','setof','sign','sin','sqrt',
            'stream_property','sub_atom','throw','trace','true','truncate',
            'unify_with_occurs_check','univ','var','write','write_canonical',
            'write_term','writeq'
            )
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '[', ']', '{', '}',),
        1 => array('?-', ':-', '=:='),
        2 => array('\-', '\+', '\*', '\/'),
        3 => array('-', '+', '*', '/'),
        4 => array('.', ':', ',', ';'),
        5 => array('!', '@', '&', '|'),
        6 => array('<', '>', '=')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #990000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;',
            'HARD' => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #800080;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            1 => 'color: #339933;',
            2 => 'color: #339933;',
            3 => 'color: #339933;',
            4 => 'color: #339933;',
            5 => 'color: #339933;',
            6 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            0 => 'color: #008080;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://pauillac.inria.fr/~deransar/prolog/bips.html'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Variables
        0 => "(? GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/vim.php0000664000175000017500000005547212014173427013510 0ustar  benbebenbe  ...   ... works event if they aren't surround by space.
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array(
    'LANG_NAME' => 'Vim Script',
    'COMMENT_SINGLE' => array(),
    'COMMENT_REGEXP' => array(
        1 => "/\s*\"[^\"]*?$/m",
        //Regular expressions (Ported from perl.php)
//        2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU",
        ),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'au', 'augroup', 'autocmd', 'brea', 'break', 'bufadd',
            'bufcreate', 'bufdelete', 'bufenter', 'buffilepost',
            'buffilepre', 'bufleave', 'bufnew', 'bufnewfile',
            'bufread', 'bufreadcmd', 'bufreadpost', 'bufreadpre',
            'bufunload', 'bufwinenter', 'bufwinleave', 'bufwipeout',
            'bufwrite', 'bufwritecmd', 'bufwritepost', 'bufwritepre',
            'call', 'cat', 'catc', 'catch', 'cmd-event', 'cmdwinenter',
            'cmdwinleave', 'colorscheme', 'con', 'confirm', 'cont', 'conti',
            'contin', 'continu', 'continue', 'cursorhold', 'cursorholdi',
            'cursormoved', 'cursormovedi', 'ec', 'echo', 'echoe',
            'echoer', 'echoerr', 'echoh', 'echohl', 'echom', 'echoms',
            'echomsg', 'echon', 'el', 'els', 'else', 'elsei', 'elseif',
            'en', 'encodingchanged', 'end', 'endfo', 'endfor', 'endi',
            'endif', 'endt', 'endtr', 'endtry', 'endw', 'endwh', 'endwhi',
            'endwhil', 'endwhile', 'exe', 'exec', 'execu', 'execut',
            'execute', 'fileappendcmd', 'fileappendpost', 'fileappendpre',
            'filechangedro', 'filechangedshell', 'filechangedshellpost',
            'filereadcmd', 'filereadpost', 'filereadpre',
            'filetype', 'filewritecmd', 'filewritepost', 'filewritepre',
            'filterreadpost', 'filterreadpre', 'filterwritepost',
            'filterwritepre', 'fina', 'final', 'finall', 'finally',
            'finish', 'focusgained', 'focuslost', 'for', 'fun', 'func',
            'funct', 'functi', 'functio', 'function', 'funcundefined',
            'guienter', 'guifailed', 'hi', 'highlight', 'if', 'in',
            'insertchange', 'insertenter', 'insertleave', 'let', 'lockv',
            'lockva', 'lockvar', 'map', 'match', 'menupopup', 'nnoremap',
            'quickfixcmdpost', 'quickfixcmdpre', 'remotereply', 'retu',
            'retur', 'return', 'sessionloadpost', 'set', 'setlocal',
            'shellcmdpost', 'shellfilterpost', 'sourcecmd', 'sourcepre',
            'spellfilemissing', 'stdinreadpost', 'stdinreadpre',
            'swapexists', 'syntax', 'tabenter', 'tableave', 'termchanged',
            'termresponse', 'th', 'thr', 'thro', 'throw', 'tr', 'try', 'unl',
            'unle', 'unlet', 'unlo', 'unloc', 'unlock', 'unlockv',
            'unlockva', 'unlockvar', 'user', 'usergettingbored',
            'vimenter', 'vimleave', 'vimleavepre', 'vimresized', 'wh',
            'whi', 'whil', 'while', 'winenter', 'winleave'
            ),
        2 => array(
            '<CR>', '<Esc>', '<F1>', '<F10>',
            '<F11>', '<F12>', '<F2>', '<F3>',
            '<F4>', '<F5>', '<F6>', '<F7>',
            '<F8>', '<F9>', '<cr>', '<silent>',
            '-nargs', 'acd', 'ai', 'akm', 'al', 'aleph',
            'allowrevins', 'altkeymap', 'ambiwidth', 'ambw',
            'anti', 'antialias', 'ar', 'arab', 'arabic',
            'arabicshape', 'ari', 'arshape', 'autochdir',
            'autoindent', 'autoread', 'autowrite', 'autowriteall',
            'aw', 'awa', 'background', 'backspace', 'backup',
            'backupcopy', 'backupdir', 'backupext',
            'backupskip', 'balloondelay', 'ballooneval', 'balloonexpr',
            'bdir', 'bdlay', 'beval', 'bex', 'bexpr', 'bg',
            'bh', 'bin', 'binary', 'biosk', 'bioskey',
            'bk', 'bkc', 'bl', 'bomb', 'breakat', 'brk',
            'bs', 'bsdir', 'bsk', 'bt', 'bufhidden',
            'buftype', 'casemap', 'cb',
            'ccv', 'cd', 'cdpath', 'cedit', 'cf', 'cfu', 'ch',
            'charconvert', 'ci', 'cin', 'cink',
            'cinkeys', 'cino', 'cinoptions', 'cinw', 'cinwords',
            'clipboard', 'cmdheight', 'cmdwinheight',
            'cmp', 'cms', 'co', 'columns', 'com',
            'comc', 'comcl', 'comcle', 'comclea', 'comclear', 'comm',
            'comma', 'comman', 'command', 'comments', 'commentstring',
            'compatible', 'completefunc', 'completeopt',
            'consk', 'conskey', 'copyindent',
            'cot', 'cp', 'cpo', 'cpoptions', 'cpt',
            'cscopepathcomp', 'cscopeprg', 'cscopequickfix', 'cscopetag',
            'cscopetagorder', 'cscopeverbose',
            'cspc', 'csprg', 'csqf', 'cst', 'csto', 'csverb', 'cuc',
            'cul', 'cursorcolumn', 'cursorline', 'cwh', 'debug',
            'deco', 'def', 'define', 'delc', 'delco', 'delcom',
            'delcombine', 'delcomm', 'delcomman', 'delcommand', 'dex',
            'dg', 'dict', 'dictionary', 'diff', 'diffexpr',
            'diffopt', 'digraph', 'dip', 'dir', 'directory', 'display',
            'dlcomma', 'dy', 'ea', 'ead', 'eadirection',
            'eb', 'ed', 'edcompatible', 'ef', 'efm',
            'ei', 'ek', 'enc', 'encoding', 'endfun', 'endofline',
            'eol', 'ep', 'equalalways', 'equalprg', 'errorbells',
            'errorfile', 'errorformat', 'esckeys', 'et',
            'eventignore', 'ex', 'expandtab', 'exrc', 'fcl',
            'fcs', 'fdc', 'fde', 'fdi', 'fdl', 'fdls', 'fdm',
            'fdn', 'fdo', 'fdt', 'fen', 'fenc', 'fencs', 'fex',
            'ff', 'ffs', 'fileencoding', 'fileencodings', 'fileformat',
            'fileformats', /*'filetype',*/ 'fillchars', 'fk',
            'fkmap', 'flp', 'fml', 'fmr', 'fo', 'foldclose',
            'foldcolumn', 'foldenable', 'foldexpr', 'foldignore',
            'foldlevelstart', 'foldmarker', 'foldmethod', 'foldminlines',
            'foldnestmax', 'foldopen', 'formatexpr', 'formatlistpat',
            'formatoptions', 'formatprg', 'fp', 'fs', 'fsync', 'ft',
            'gcr', 'gd', 'gdefault', 'gfm', 'gfn', 'gfs', 'gfw',
            'ghr', 'go', 'gp', 'grepformat', 'grepprg', 'gtl',
            'gtt', 'guicursor', 'guifont', 'guifontset',
            'guifontwide', 'guiheadroom', 'guioptions', 'guipty',
            'guitablabel', 'guitabtooltip', 'helpfile',
            'helpheight', 'helplang', 'hf', 'hh', 'hid', 'hidden',
            'history', 'hk', 'hkmap', 'hkmapp', 'hkp', 'hl',
            'hlg', 'hls', 'hlsearch', 'ic', 'icon', 'iconstring',
            'ignorecase', 'im', 'imactivatekey', 'imak', 'imc',
            'imcmdline', 'imd', 'imdisable', 'imi', 'iminsert', 'ims',
            'imsearch', 'inc', 'include', 'includeexpr',
            'incsearch', 'inde', 'indentexpr', 'indentkeys',
            'indk', 'inex', 'inf', 'infercase', 'insertmode', 'is', 'isf',
            'isfname', 'isi', 'isident', 'isk', 'iskeyword',
            'isp', 'isprint', 'joinspaces', 'js', 'key',
            'keymap', 'keymodel', 'keywordprg', 'km', 'kmp', 'kp',
            'langmap', 'langmenu', 'laststatus', 'lazyredraw', 'lbr',
            'lcs', 'linebreak', 'lines', 'linespace', 'lisp',
            'lispwords', 'list', 'listchars', 'lm', 'lmap',
            'loadplugins', 'lpl', 'ls', 'lsp', 'lw', 'lz', 'ma',
            'macatsui', 'magic', 'makeef', 'makeprg', 'mat',
            'matchpairs', 'matchtime', 'maxcombine', 'maxfuncdepth',
            'maxmapdepth', 'maxmem', 'maxmempattern',
            'maxmemtot', 'mco', 'mef', 'menuitems', 'mfd', 'mh',
            'mis', 'mkspellmem', 'ml', 'mls', 'mm', 'mmd', 'mmp',
            'mmt', 'mod', 'modeline', 'modelines', 'modifiable',
            'modified', 'more', 'mouse', 'mousef', 'mousefocus',
            'mousehide', 'mousem', 'mousemodel', 'mouses',
            'mouseshape', 'mouset', 'mousetime', 'mp', 'mps', 'msm',
            'mzq', 'mzquantum', 'nf', 'noacd', 'noai', 'noakm',
            'noallowrevins', 'noaltkeymap', 'noanti', 'noantialias',
            'noar', 'noarab', 'noarabic', 'noarabicshape', 'noari',
            'noarshape', 'noautochdir', 'noautoindent', 'noautoread',
            'noautowrite', 'noautowriteall', 'noaw', 'noawa', 'nobackup',
            'noballooneval', 'nobeval', 'nobin', 'nobinary', 'nobiosk',
            'nobioskey', 'nobk', 'nobl', 'nobomb', 'nobuflisted', 'nocf',
            'noci', 'nocin', 'nocindent', 'nocompatible', 'noconfirm',
            'noconsk', 'noconskey', 'nocopyindent', 'nocp', 'nocscopetag',
            'nocscopeverbose', 'nocst', 'nocsverb', 'nocuc', 'nocul',
            'nocursorcolumn', 'nocursorline', 'nodeco', 'nodelcombine',
            'nodg', 'nodiff', 'nodigraph', 'nodisable', 'noea', 'noeb',
            'noed', 'noedcompatible', 'noek', 'noendofline', 'noeol',
            'noequalalways', 'noerrorbells', 'noesckeys', 'noet',
            'noex', 'noexpandtab', 'noexrc', 'nofen', 'nofk', 'nofkmap',
            'nofoldenable', 'nogd', 'nogdefault', 'noguipty', 'nohid',
            'nohidden', 'nohk', 'nohkmap', 'nohkmapp', 'nohkp', 'nohls',
            'nohlsearch', 'noic', 'noicon', 'noignorecase', 'noim',
            'noimc', 'noimcmdline', 'noimd', 'noincsearch', 'noinf',
            'noinfercase', 'noinsertmode', 'nois', 'nojoinspaces',
            'nojs', 'nolazyredraw', 'nolbr', 'nolinebreak', 'nolisp',
            'nolist', 'noloadplugins', 'nolpl', 'nolz', 'noma',
            'nomacatsui', 'nomagic', 'nomh', 'noml', 'nomod',
            'nomodeline', 'nomodifiable', 'nomodified', 'nomore',
            'nomousef', 'nomousefocus', 'nomousehide', 'nonu',
            'nonumber', 'noodev', 'noopendevice', 'nopaste', 'nopi',
            'nopreserveindent', 'nopreviewwindow', 'noprompt', 'nopvw',
            'noreadonly', 'noremap', 'norestorescreen', 'norevins',
            'nori', 'norightleft', 'norightleftcmd', 'norl', 'norlc',
            'noro', 'nors', 'noru', 'noruler', 'nosb', 'nosc', 'noscb',
            'noscrollbind', 'noscs', 'nosecure', 'nosft', 'noshellslash',
            'noshelltemp', 'noshiftround', 'noshortname', 'noshowcmd',
            'noshowfulltag', 'noshowmatch', 'noshowmode', 'nosi', 'nosm',
            'nosmartcase', 'nosmartindent', 'nosmarttab', 'nosmd',
            'nosn', 'nosol', 'nospell', 'nosplitbelow', 'nosplitright',
            'nospr', 'nosr', 'nossl', 'nosta', 'nostartofline',
            'nostmp', 'noswapfile', 'noswf', 'nota', 'notagbsearch',
            'notagrelative', 'notagstack', 'notbi', 'notbidi', 'notbs',
            'notermbidi', 'noterse', 'notextauto', 'notextmode',
            'notf', 'notgst', 'notildeop', 'notimeout', 'notitle',
            'noto', 'notop', 'notr', 'nottimeout', 'nottybuiltin',
            'nottyfast', 'notx', 'novb', 'novisualbell', 'nowa',
            'nowarn', 'nowb', 'noweirdinvert', 'nowfh', 'nowfw',
            'nowildmenu', 'nowinfixheight', 'nowinfixwidth', 'nowiv',
            'nowmnu', 'nowrap', 'nowrapscan', 'nowrite', 'nowriteany',
            'nowritebackup', 'nows', 'nrformats', 'nu', 'number',
            'numberwidth', 'nuw', 'odev', 'oft', 'ofu',
            'omnifunc', 'opendevice', 'operatorfunc', 'opfunc',
            'osfiletype', 'pa', 'para', 'paragraphs',
            'paste', 'pastetoggle', 'patchexpr',
            'patchmode', 'path', 'pdev', 'penc', 'pex', 'pexpr',
            'pfn', 'ph', 'pheader', 'pi', 'pm', 'pmbcs',
            'pmbfn', 'popt', 'preserveindent', 'previewheight',
            'previewwindow', 'printdevice', 'printencoding', 'printexpr',
            'printfont', 'printheader', 'printmbcharset',
            'printmbfont', 'printoptions', 'prompt', 'pt', 'pumheight',
            'pvh', 'pvw', 'qe', 'quoteescape', 'rdt',
            'readonly', 'redrawtime', 'remap', 'report',
            'restorescreen', 'revins', 'ri', 'rightleft', 'rightleftcmd',
            'rl', 'rlc', 'ro', 'rs', 'rtp', 'ru',
            'ruf', 'ruler', 'rulerformat', 'runtimepath', 'sb', 'sbo',
            'sbr', 'sc', 'scb', 'scr', 'scroll', 'scrollbind',
            'scrolljump', 'scrolloff', 'scrollopt',
            'scs', 'sect', 'sections', 'secure', 'sel',
            'selection', 'selectmode', 'sessionoptions', 'sft',
            'sh', 'shcf', 'shell', 'shellcmdflag', 'shellpipe',
            'shellquote', 'shellredir', 'shellslash',
            'shelltemp', 'shelltype', 'shellxquote', 'shiftround',
            'shiftwidth', 'shm', 'shortmess', 'shortname',
            'showbreak', 'showcmd', 'showfulltag', 'showmatch',
            'showmode', 'showtabline', 'shq', 'si', 'sidescroll',
            'sidescrolloff', 'siso', 'sj', 'slm', 'sm', 'smartcase',
            'smartindent', 'smarttab', 'smc', 'smd', 'sn',
            'so', 'softtabstop', 'sol', 'sp', 'spc', 'spell',
            'spellcapcheck', 'spellfile', 'spelllang',
            'spf', 'spl', 'splitbelow', 'splitright', 'spr',
            'sps', 'sr', 'srr', 'ss', 'ssl', 'ssop', 'st', 'sta',
            'stal', 'startofline', 'statusline', 'stl', 'stmp',
            'sts', 'su', 'sua', 'suffixes', 'suffixesadd', 'sw',
            'swapfile', 'swapsync', 'swb', 'swf', 'switchbuf',
            'sws', 'sxq', 'syn', 'synmaxcol', 'ta',
            'tabline', 'tabpagemax', 'tabstop', 'tag',
            'tagbsearch', 'taglength', 'tagrelative', 'tags', 'tagstack',
            'tal', 'tb', 'tbi', 'tbidi', 'tbis', 'tbs',
            'tenc', 'term', 'termbidi', 'termencoding', 'terse',
            'textauto', 'textmode', 'textwidth', 'tf', 'tgst',
            'thesaurus', 'tildeop', 'timeout', 'timeoutlen',
            'title', 'titlelen', 'titleold', 'titlestring',
            'tl', 'tm', 'to', 'toolbar', 'toolbariconsize', 'top',
            'tpm', 'ts', 'tsl', 'tsr', 'ttimeout',
            'ttimeoutlen', 'ttm', 'tty', 'ttybuiltin', 'ttyfast', 'ttym',
            'ttymouse', 'ttyscroll', 'ttytype', 'tw', 'tx', 'uc',
            'ul', 'undolevels', 'updatecount', 'updatetime', 'ut',
            'vb', 'vbs', 'vdir', 've', 'verbose', 'verbosefile',
            'vfile', 'vi', 'viewdir', 'viewoptions', 'viminfo',
            'virtualedit', 'visualbell', 'vop', 'wa', 'wak',
            'warn', 'wb', 'wc', 'wcm', 'wd', 'weirdinvert', 'wfh',
            'wfw', /*'wh',*/ 'whichwrap', 'wi', 'wig', 'wildchar',
            'wildcharm', 'wildignore', 'wildmenu',
            'wildmode', 'wildoptions', 'wim', 'winaltkeys', 'window',
            'winfixheight', 'winfixwidth', 'winheight',
            'winminheight', 'winminwidth', 'winwidth', 'wiv',
            'wiw', 'wm', 'wmh', 'wmnu', 'wmw', 'wop', 'wrap',
            'wrapmargin', 'wrapscan', 'write', 'writeany',
            'writebackup', 'writedelay', 'ws', 'ww'
            ),
        3 => array(
            'BufAdd', 'BufCreate', 'BufDelete', 'BufEnter', 'BufFilePost',
            'BufFilePre', 'BufHidden', 'BufLeave', 'BufNew', 'BufNewFile',
            'BufRead', 'BufReadCmd', 'BufReadPost', 'BufReadPre',
            'BufUnload', 'BufWinEnter', 'BufWinLeave', 'BufWipeout',
            'BufWrite', 'BufWriteCmd', 'BufWritePost', 'BufWritePre',
            'Cmd-event', 'CmdwinEnter', 'CmdwinLeave', 'ColorScheme',
            'CursorHold', 'CursorHoldI', 'CursorMoved', 'CursorMovedI',
            'EncodingChanged', 'FileAppendCmd', 'FileAppendPost',
            'FileAppendPre', 'FileChangedRO', 'FileChangedShell',
            'FileChangedShellPost', 'FileEncoding', 'FileReadCmd',
            'FileReadPost', 'FileReadPre', 'FileType',
            'FileWriteCmd', 'FileWritePost', 'FileWritePre',
            'FilterReadPost', 'FilterReadPre', 'FilterWritePost',
            'FilterWritePre', 'FocusGained', 'FocusLost', 'FuncUndefined',
            'GUIEnter', 'GUIFailed', 'InsertChange', 'InsertEnter',
            'InsertLeave', 'MenuPopup', 'QuickFixCmdPost',
            'QuickFixCmdPre', 'RemoteReply', 'SessionLoadPost',
            'ShellCmdPost', 'ShellFilterPost', 'SourceCmd',
            'SourcePre', 'SpellFileMissing', 'StdinReadPost',
            'StdinReadPre', 'SwapExists', 'Syntax', 'TabEnter',
            'TabLeave', 'TermChanged', 'TermResponse', 'User',
            'UserGettingBored', 'VimEnter', 'VimLeave', 'VimLeavePre',
            'VimResized', 'WinEnter', 'WinLeave', 'abs', 'add', 'append',
            'argc', 'argidx', 'argv', 'atan', 'browse', 'browsedir',
            'bufexists', 'buflisted', 'bufloaded', 'bufname', 'bufnr',
            'bufwinnr', 'byte2line', 'byteidx', 'ceil', 'changenr',
            'char2nr', 'cindent', 'clearmatches', 'col', 'complete',
            'complete_add', 'complete_check', 'copy',
            'cos', 'count', 'cscope_connection', 'cursor', 'deepcopy',
            'delete', 'did_filetype', 'diff_filler', 'diff_hlID',
            'empty', 'escape', 'eval', 'eventhandler', 'executable',
            'exists', 'expand', 'extend', 'feedkeys', 'filereadable',
            'filewritable', 'filter', 'finddir', 'findfile', 'float2nr',
            'floor', 'fnameescape', 'fnamemodify', 'foldclosed',
            'foldclosedend', 'foldlevel', 'foldtext', 'foldtextresult',
            'foreground', 'garbagecollect', 'get', 'getbufline',
            'getbufvar', 'getchar', 'getcharmod', 'getcmdline',
            'getcmdpos', 'getcmdtype', 'getcwd', 'getfontname',
            'getfperm', 'getfsize', 'getftime', 'getftype', 'getline',
            'getloclist', 'getmatches', 'getpid', 'getpos', 'getqflist',
            'getreg', 'getregtype', 'gettabwinvar', 'getwinposx',
            'getwinposy', 'getwinvar', 'glob', 'globpath', 'has',
            'has_key', 'haslocaldir', 'hasmapto', 'histadd', 'histdel',
            'histget', 'histnr', 'hlID', 'hlexists', 'hostname', 'iconv',
            'indent', 'index', 'input', 'inputdialog', 'inputlist',
            'inputrestore', 'inputsave', 'inputsecret', 'insert',
            'isdirectory', 'islocked', 'items', 'join', 'keys', 'len',
            'libcall', 'libcallnr', 'line', 'line2byte', 'lispindent',
            'localtime', 'log10', 'maparg', 'mapcheck', 'matchadd',
            'matcharg', 'matchdelete', 'matchend', 'matchlist',
            'matchstr', 'max', 'min', 'mkdir', 'mode', 'nextnonblank',
            'nr2char', 'off', 'on', 'pathshorten', 'plugin', 'pow',
            'prevnonblank', 'printf', 'pumvisible', 'range', 'readfile',
            'reltime', 'reltimestr', 'remote_expr', 'remote_foreground',
            'remote_peek', 'remote_read', 'remote_send', 'remove',
            'rename', 'repeat', 'resolve', 'reverse', 'round', 'search',
            'searchdecl', 'searchpair', 'searchpairpos', 'searchpos',
            'server2client', 'serverlist', 'setbufvar', 'setcmdpos',
            'setline', 'setloclist', 'setmatches', 'setpos', 'setqflist',
            'setreg', 'settabwinvar', 'setwinvar', 'shellescape',
            'simplify', 'sin', 'sort', 'soundfold', 'spellbadword',
            'spellsuggest', 'split', 'sqrt', 'str2float', 'str2nr',
            'strftime', 'stridx', 'string', 'strlen', 'strpart',
            'strridx', 'strtrans', 'submatch', 'substitute',
            'synID', 'synIDattr', 'synIDtrans', 'synstack', 'system',
            'tabpagebuflist', 'tabpagenr', 'tabpagewinnr', 'tagfiles',
            'taglist', 'tempname', 'tolower', 'toupper', 'trunc',
            'type', 'values', 'virtcol', 'visualmode', 'winbufnr',
            'wincol', 'winline', 'winnr', 'winrestcmd',
            'winrestview', 'winsaveview', 'writefile'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '%', '&', '*', '|', '/', '<', '>',
        '^', '-', '+', '~', '?', ':', '$', '@', '.'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true
        ),
    'STYLES' => array(
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
//            2 => 'color: #009966; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'KEYWORDS' => array(
            1 => 'color: #804040;',
            2 => 'color: #668080;',
            3 => 'color: #25BB4D;'
            ),
        'METHODS' => array(
            0 => 'color: #000000;',
            ),
        'NUMBERS' => array(
            0 => 'color: #000000; font-weight:bold;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            ),
        'STRINGS' => array(
            0 => 'color: #C5A22D;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;'
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false, //Save some time as OO identifiers aren't used
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>
geshi/geshi/div.php0000664000175000017500000000765712014173425013477 0ustar  benbebenbe 'DIV',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'while','until','to','switch','step','return','repeat','loop','if','from','frame','for','end','elseif',
            'else','default','debug','continue','clone','case','break','begin'
            ),
        2 => array(
            'xor','whoami','type','sizeof','pointer','or','offset','not','neg','mod','id','dup','and','_ne','_lt',
            '_le','_gt','_ge','_eq'
            ),
        3 => array(
            'setup_program','program','process','private','local','import','global','function','const',
            'compiler_options'
            ),
        4 => array(
            'word','struct','string','int','byte'
            ),
        ),
    'SYMBOLS' => array(
        '(',')','[',']','=','+','-','*','/','!','%','^','&',':',';',',','<','>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0040b1;',
            2 => 'color: #000000;',
            3 => 'color: #000066; font-weight: bold;',
            4 => 'color: #993333;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'color: #44aa44;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #202020;',
            ),
        'SYMBOLS' => array(
            0 => 'color: #44aa44;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/apache.php0000664000175000017500000004114112014173441014116 0ustar  benbebenbe 'Apache configuration',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        /*keywords*/
        1 => array(
            //core.c
            'AcceptFilter','AcceptPathInfo','AccessConfig','AccessFileName',
            'AddDefaultCharset','AddOutputFilterByType','AllowEncodedSlashes',
            'AllowOverride','AuthName','AuthType','ContentDigest',
            'CoreDumpDirectory','DefaultType','DocumentRoot','EnableMMAP',
            'EnableSendfile','ErrorDocument','ErrorLog','FileETag','ForceType',
            'HostnameLookups','Include','LimitInternalRecursion',
            'LimitRequestBody','LimitRequestFields','LimitRequestFieldsize',
            'LimitRequestLine','LimitXMLRequestBody','LogLevel','MaxMemFree',
            'MaxRequestsPerChild','NameVirtualHost','Options','PidFile','Port',
            'Protocol','Require','RLimitCPU','RLimitMEM','RLimitNPROC',
            'Satisfy','ScoreBoardFile','ServerAdmin','ServerAlias','ServerName',
            'ServerPath','ServerRoot','ServerSignature','ServerTokens',
            'SetHandler','SetInputFilter','SetOutputFilter','ThreadStackSize',
            'Timeout','TraceEnable','UseCanonicalName',
            'UseCanonicalPhysicalPort',

            //http_core.c
            'KeepAlive','KeepAliveTimeout','MaxKeepAliveRequests',

            //mod_actions.c
            'Action','Script',

            //mod_alias.c
            'Alias','AliasMatch','Redirect','RedirectMatch','RedirectPermanent',
            'RedirectTemp','ScriptAlias','ScriptAliasMatch',

            //mod_asis.c

            //mod_auth_basic.c
            'AuthBasicAuthoritative','AuthBasicProvider',

            //mod_auth_digest.c
            'AuthDigestAlgorithm','AuthDigestDomain','AuthDigestNcCheck',
            'AuthDigestNonceFormat','AuthDigestNonceLifetime',
            'AuthDigestProvider','AuthDigestQop','AuthDigestShmemSize',

            //mod_authn_alias.c

            //mod_authn_anon.c
            'Anonymous','Anonymous_LogEmail','Anonymous_MustGiveEmail',
            'Anonymous_NoUserId','Anonymous_VerifyEmail',

            //mod_authn_dbd.c
            'AuthDBDUserPWQuery','AuthDBDUserRealmQuery',

            //mod_authn_dbm.c
            'AuthDBMType','AuthDBMUserFile',

            //mod_authn_default.c
            'AuthDefaultAuthoritative',

            //mod_authn_file.c
            'AuthUserFile',

            //mod_authnz_ldap.c
            'AuthLDAPBindDN','AuthLDAPBindPassword','AuthLDAPCharsetConfig',
            'AuthLDAPCompareDNOnServer','AuthLDAPDereferenceAliases',
            'AuthLDAPGroupAttribute','AuthLDAPGroupAttributeIsDN',
            'AuthLDAPRemoteUserAttribute','AuthLDAPRemoteUserIsDN',
            'AuthLDAPURL','AuthzLDAPAuthoritative',

            //mod_authz_dbm.c
            'AuthDBMGroupFile','AuthzDBMAuthoritative','AuthzDBMType',

            //mod_authz_default.c
            'AuthzDefaultAuthoritative',

            //mod_authz_groupfile.c
            'AuthGroupFile','AuthzGroupFileAuthoritative',

            //mod_authz_host.c
            'Allow','Deny','Order',

            //mod_authz_owner.c
            'AuthzOwnerAuthoritative',

            //mod_authz_svn.c
            'AuthzForceUsernameCase','AuthzSVNAccessFile','AuthzSVNAnonymous',
            'AuthzSVNAuthoritative','AuthzSVNNoAuthWhenAnonymousAllowed',

            //mod_authz_user.c
            'AuthzUserAuthoritative',

            //mod_autoindex.c
            'AddAlt','AddAltByEncoding','AddAltByType','AddDescription',
            'AddIcon','AddIconByEncoding','AddIconByType','DefaultIcon',
            'FancyIndexing','HeaderName','IndexHeadInsert','IndexIgnore',
            'IndexOptions','IndexOrderDefault','IndexStyleSheet','ReadmeName',

            //mod_bt.c
            'Tracker','TrackerDetailURL','TrackerFlags','TrackerHashMaxAge',
            'TrackerHashMinAge','TrackerHashWatermark','TrackerHome',
            'TrackerReturnInterval','TrackerReturnMax',
            'TrackerReturnPeerFactor','TrackerReturnPeers','TrackerRootInclude',
            'TrackerStyleSheet',

            //mod_bw.c
            'BandWidth','BandWidthError','BandWidthModule','BandWidthPacket',
            'ForceBandWidthModule','LargeFileLimit','MaxConnection',
            'MinBandWidth',

            //mod_cache.c
            'CacheDefaultExpire','CacheDisable','CacheEnable',
            'CacheIgnoreCacheControl','CacheIgnoreHeaders',
            'CacheIgnoreNoLastMod','CacheIgnoreQueryString',
            'CacheLastModifiedFactor','CacheMaxExpire','CacheStoreNoStore',
            'CacheStorePrivate',

            //mod_cern_meta.c
            'MetaDir','MetaFiles','MetaSuffix',

            //mod_cgi.c
            'ScriptLog','ScriptLogBuffer','ScriptLogLength',

            //mod_charset_lite.c
            'CharsetDefault','CharsetOptions','CharsetSourceEnc',

            //mod_dav.c
            'DAV','DAVDepthInfinity','DAVMinTimeout',

            //mod_dav_fs.c
            'DAVLockDB',

            //mod_dav_lock.c
            'DAVGenericLockDB',

            //mod_dav_svn.c
            'SVNActivitiesDB','SVNAllowBulkUpdates','SVNAutoversioning',
            'SVNIndexXSLT','SVNListParentPath','SVNMasterURI','SVNParentPath',
            'SVNPath','SVNPathAuthz','SVNReposName','SVNSpecialURI',

            //mod_dbd.c
            'DBDExptime','DBDKeep','DBDMax','DBDMin','DBDParams','DBDPersist',
            'DBDPrepareSQL','DBDriver',

            //mod_deflate.c
            'DeflateBufferSize','DeflateCompressionLevel','DeflateFilterNote',
            'DeflateMemLevel','DeflateWindowSize',

            //mod_dir.c
            'DirectoryIndex','DirectorySlash',

            //mod_disk_cache.c
            'CacheDirLength','CacheDirLevels','CacheMaxFileSize',
            'CacheMinFileSize','CacheRoot',

            //mod_dumpio.c
            'DumpIOInput','DumpIOLogLevel','DumpIOOutput',

            //mod_env.c
            'PassEnv','SetEnv','UnsetEnv',

            //mod_expires.c
            'ExpiresActive','ExpiresByType','ExpiresDefault',

            //mod_ext_filter.c
            'ExtFilterDefine','ExtFilterOptions',

            //mod_file_cache.c
            'cachefile','mmapfile',

            //mod_filter.c
            'FilterChain','FilterDeclare','FilterProtocol','FilterProvider',
            'FilterTrace',

            //mod_gnutls.c
            'GnuTLSCache','GnuTLSCacheTimeout','GnuTLSCertificateFile',
            'GnuTLSKeyFile','GnuTLSPGPCertificateFile','GnuTLSPGPKeyFile',
            'GnuTLSClientVerify','GnuTLSClientCAFile','GnuTLSPGPKeyringFile',
            'GnuTLSEnable','GnuTLSDHFile','GnuTLSRSAFile','GnuTLSSRPPasswdFile',
            'GnuTLSSRPPasswdConfFile','GnuTLSPriorities',
            'GnuTLSExportCertificates',

            //mod_headers.c
            'Header','RequestHeader',

            //mod_imagemap.c
            'ImapBase','ImapDefault','ImapMenu',

            //mod_include.c
            'SSIAccessEnable','SSIEndTag','SSIErrorMsg','SSIStartTag',
            'SSITimeFormat','SSIUndefinedEcho','XBitHack',

            //mod_ident.c
            'IdentityCheck','IdentityCheckTimeout',

            //mod_info.c
            'AddModuleInfo',

            //mod_isapi.c
            'ISAPIAppendLogToErrors','ISAPIAppendLogToQuery','ISAPICacheFile',
            'ISAPIFakeAsync','ISAPILogNotSupported','ISAPIReadAheadBuffer',

            //mod_log_config.c
            'BufferedLogs','CookieLog','CustomLog','LogFormat','TransferLog',

            //mod_log_forensic.c
            'ForensicLog',

            //mod_log_rotate.c
            'RotateInterval','RotateLogs','RotateLogsLocalTime',

            //mod_logio.c

            //mod_mem_cache.c
            'MCacheMaxObjectCount','MCacheMaxObjectSize',
            'MCacheMaxStreamingBuffer','MCacheMinObjectSize',
            'MCacheRemovalAlgorithm','MCacheSize',

            //mod_mime.c
            'AddCharset','AddEncoding','AddHandler','AddInputFilter',
            'AddLanguage','AddOutputFilter','AddType','DefaultLanguage',
            'ModMimeUsePathInfo','MultiviewsMatch','RemoveCharset',
            'RemoveEncoding','RemoveHandler','RemoveInputFilter',
            'RemoveLanguage','RemoveOutputFilter','RemoveType','TypesConfig',

            //mod_mime_magic.c
            'MimeMagicFile',

            //mod_negotiation.c
            'CacheNegotiatedDocs','ForceLanguagePriority','LanguagePriority',

            //mod_php5.c
            'php_admin_flag','php_admin_value','php_flag','php_value',
            'PHPINIDir',

            //mod_proxy.c
            'AllowCONNECT','BalancerMember','NoProxy','ProxyBadHeader',
            'ProxyBlock','ProxyDomain','ProxyErrorOverride',
            'ProxyFtpDirCharset','ProxyIOBufferSize','ProxyMaxForwards',
            'ProxyPass','ProxyPassInterpolateEnv','ProxyPassMatch',
            'ProxyPassReverse','ProxyPassReverseCookieDomain',
            'ProxyPassReverseCookiePath','ProxyPreserveHost',
            'ProxyReceiveBufferSize','ProxyRemote','ProxyRemoteMatch',
            'ProxyRequests','ProxySet','ProxyStatus','ProxyTimeout','ProxyVia',

            //mod_proxy_ajp.c

            //mod_proxy_balancer.c

            //mod_proxy_connect.c

            //mod_proxy_ftp.c

            //mod_proxy_http.c

            //mod_rewrite.c
            'RewriteBase','RewriteCond','RewriteEngine','RewriteLock',
            'RewriteLog','RewriteLogLevel','RewriteMap','RewriteOptions',
            'RewriteRule',

            //mod_setenvif.c
            'BrowserMatch','BrowserMatchNoCase','SetEnvIf','SetEnvIfNoCase',

            //mod_so.c
            'LoadFile','LoadModule',

            //mod_speling.c
            'CheckCaseOnly','CheckSpelling',

            //mod_ssl.c
            'SSLCACertificateFile','SSLCACertificatePath','SSLCADNRequestFile',
            'SSLCADNRequestPath','SSLCARevocationFile','SSLCARevocationPath',
            'SSLCertificateChainFile','SSLCertificateFile',
            'SSLCertificateKeyFile','SSLCipherSuite','SSLCryptoDevice',
            'SSLEngine','SSLHonorCipherOrder','SSLMutex','SSLOptions',
            'SSLPassPhraseDialog','SSLProtocol','SSLProxyCACertificateFile',
            'SSLProxyCACertificatePath','SSLProxyCARevocationFile',
            'SSLProxyCARevocationPath','SSLProxyCipherSuite','SSLProxyEngine',
            'SSLProxyMachineCertificateFile','SSLProxyMachineCertificatePath',
            'SSLProxyProtocol','SSLProxyVerify','SSLProxyVerifyDepth',
            'SSLRandomSeed','SSLRenegBufferSize','SSLRequire','SSLRequireSSL',
            'SSLSessionCache','SSLSessionCacheTimeout','SSLUserName',
            'SSLVerifyClient','SSLVerifyDepth',

            //mod_status.c
            'ExtendedStatus','SeeRequestTail',

            //mod_substitute.c
            'Substitute',

            //mod_suexec.c
            'SuexecUserGroup',

            //mod_unique_id.c

            //mod_upload_progress
            'ReportUploads', 'TrackUploads', 'UploadProgressSharedMemorySize',

            //mod_userdir.c
            'UserDir',

            //mod_usertrack.c
            'CookieDomain','CookieExpires','CookieName','CookieStyle',
            'CookieTracking',

            //mod_version.c

            //mod_vhost_alias.c
            'VirtualDocumentRoot','VirtualDocumentRootIP',
            'VirtualScriptAlias','VirtualScriptAliasIP',

            //mod_view.c
            'ViewEnable',

            //mod_win32.c
            'ScriptInterpreterSource',

            //mpm_winnt.c
            'Listen','ListenBacklog','ReceiveBufferSize','SendBufferSize',
            'ThreadLimit','ThreadsPerChild','Win32DisableAcceptEx',

            //mpm_common.c
            'AcceptMutex','AddModule','ClearModuleList','EnableExceptionHook',
            'Group','LockFile','MaxClients','MaxSpareServers','MaxSpareThreads',
            'MinSpareServers','MinSpareThreads','ServerLimit','StartServers',
            'StartThreads','User',

            //util_ldap.c
            'LDAPCacheEntries','LDAPCacheTTL','LDAPConnectionTimeout',
            'LDAPOpCacheEntries','LDAPOpCacheTTL','LDAPSharedCacheFile',
            'LDAPSharedCacheSize','LDAPTrustedClientCert',
            'LDAPTrustedGlobalCert','LDAPTrustedMode','LDAPVerifyServerCert',

            //Unknown Mods ...
            'AgentLog','BindAddress','bs2000account','CacheForceCompletion',
            'CacheGCInterval','CacheSize','NoCache','qsc','RefererIgnore',
            'RefererLog','Resourceconfig','ServerType','SingleListen'
            ),
        /*keywords 2*/
        2 => array(
            'all','on','off','standalone','inetd','indexes',
            'force-response-1.0','downgrade-1.0','nokeepalive',
            'includes','followsymlinks','none',
            'x-compress','x-gzip'
        ),
        /*keywords 3*/
        3 => array(
            //core.c
            'Directory','DirectoryMatch','Files','FilesMatch','IfDefine',
            'IfModule','Limit','LimitExcept','Location','LocationMatch',
            'VirtualHost',

            //mod_authn_alias.c
            'AuthnProviderAlias',

            //mod_proxy.c
            'Proxy','ProxyMatch',

            //mod_version.c
            'IfVersion'
        )
    ),
    'SYMBOLS' => array(
        '+', '-'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f;',
            2 => 'color: #0000ff;',
            3 => 'color: #000000; font-weight:bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #339933;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            'SYMBOLS' => GESHI_NEVER
        ),
        'KEYWORDS' => array(
            3 => array(
                'DISALLOWED_BEFORE' => '(?<=<|<\/)',
                'DISALLOWED_AFTER' => '(?=\s|\/|>)',
            )
        )
    )
);

?>geshi/geshi/upc.php0000664000175000017500000002366611702144551013503 0ustar  benbebenbe 'UPC',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Multiline-continued single-line comments
        1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Multiline-continued preprocessor define
        2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{2}#",
        //Hexadecimal Char Specs
        3 => "#\\\\u[\da-fA-F]{4}#",
        //Hexadecimal Char Specs
        4 => "#\\\\U[\da-fA-F]{8}#",
        //Octal Char Specs
        5 => "#\\\\[0-7]{1,3}#"
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'if', 'return', 'while', 'case', 'continue', 'default',
            'do', 'else', 'for', 'switch', 'goto',

            'upc_forall', 'upc_barrier', 'upc_notify', 'upc_wait', 'upc_fence'
            ),
        2 => array(
            'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline'
            ),
        3 => array(
            // assert.h
            'assert',

            //complex.h
            'cabs', 'cacos', 'cacosh', 'carg', 'casin', 'casinh', 'catan',
            'catanh', 'ccos', 'ccosh', 'cexp', 'cimag', 'cis', 'clog', 'conj',
            'cpow', 'cproj', 'creal', 'csin', 'csinh', 'csqrt', 'ctan', 'ctanh',

            //ctype.h
            'digittoint', 'isalnum', 'isalpha', 'isascii', 'isblank', 'iscntrl',
            'isdigit', 'isgraph', 'islower', 'isprint', 'ispunct', 'isspace',
            'isupper', 'isxdigit', 'toascii', 'tolower', 'toupper',

            //inttypes.h
            'imaxabs', 'imaxdiv', 'strtoimax', 'strtoumax', 'wcstoimax',
            'wcstoumax',

            //locale.h
            'localeconv', 'setlocale',

            //math.h
            'acos', 'asin', 'atan', 'atan2', 'ceil', 'cos', 'cosh', 'exp',
            'fabs', 'floor', 'frexp', 'ldexp', 'log', 'log10', 'modf', 'pow',
            'sin', 'sinh', 'sqrt', 'tan', 'tanh',

            //setjmp.h
            'longjmp', 'setjmp',

            //signal.h
            'raise',

            //stdarg.h
            'va_arg', 'va_copy', 'va_end', 'va_start',

            //stddef.h
            'offsetof',

            //stdio.h
            'clearerr', 'fclose', 'fdopen', 'feof', 'ferror', 'fflush', 'fgetc',
            'fgetpos', 'fgets', 'fopen', 'fprintf', 'fputc', 'fputchar',
            'fputs', 'fread', 'freopen', 'fscanf', 'fseek', 'fsetpos', 'ftell',
            'fwrite', 'getc', 'getch', 'getchar', 'gets', 'perror', 'printf',
            'putc', 'putchar', 'puts', 'remove', 'rename', 'rewind', 'scanf',
            'setbuf', 'setvbuf', 'snprintf', 'sprintf', 'sscanf', 'tmpfile',
            'tmpnam', 'ungetc', 'vfprintf', 'vfscanf', 'vprintf', 'vscanf',
            'vsprintf', 'vsscanf',

            //stdlib.h
            'abort', 'abs', 'atexit', 'atof', 'atoi', 'atol', 'bsearch',
            'calloc', 'div', 'exit', 'free', 'getenv', 'itoa', 'labs', 'ldiv',
            'ltoa', 'malloc', 'qsort', 'rand', 'realloc', 'srand', 'strtod',
            'strtol', 'strtoul', 'system',

            //string.h
            'memchr', 'memcmp', 'memcpy', 'memmove', 'memset', 'strcat',
            'strchr', 'strcmp', 'strcoll', 'strcpy', 'strcspn', 'strerror',
            'strlen', 'strncat', 'strncmp', 'strncpy', 'strpbrk', 'strrchr',
            'strspn', 'strstr', 'strtok', 'strxfrm',

            //time.h
            'asctime', 'clock', 'ctime', 'difftime', 'gmtime', 'localtime',
            'mktime', 'strftime', 'time',

            //wchar.h
            'btowc', 'fgetwc', 'fgetws', 'fputwc', 'fputws', 'fwide',
            'fwprintf', 'fwscanf', 'getwc', 'getwchar', 'mbrlen', 'mbrtowc',
            'mbsinit', 'mbsrtowcs', 'putwc', 'putwchar', 'swprintf', 'swscanf',
            'ungetwc', 'vfwprintf', 'vswprintf', 'vwprintf', 'wcrtomb',
            'wcscat', 'wcschr', 'wcscmp', 'wcscoll', 'wcscpy', 'wcscspn',
            'wcsftime', 'wcslen', 'wcsncat', 'wcsncmp', 'wcsncpy', 'wcspbrk',
            'wcsrchr', 'wcsrtombs', 'wcsspn', 'wcsstr', 'wcstod', 'wcstok',
            'wcstol', 'wcstoul', 'wcsxfrm', 'wctob', 'wmemchr', 'wmemcmp',
            'wmemcpy', 'wmemmove', 'wmemset', 'wprintf', 'wscanf',

            //wctype.h
            'iswalnum', 'iswalpha', 'iswcntrl', 'iswctype', 'iswdigit',
            'iswgraph', 'iswlower', 'iswprint', 'iswpunct', 'iswspace',
            'iswupper', 'iswxdigit', 'towctrans', 'towlower', 'towupper',
            'wctrans', 'wctype'
            ),
        4 => array(
            'auto', 'char', 'const', 'double',  'float', 'int', 'long',
            'register', 'short', 'signed', 'sizeof', 'static', 'struct',
            'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t',

            'int8', 'int16', 'int32', 'int64',
            'uint8', 'uint16', 'uint32', 'uint64',

            'int_fast8_t', 'int_fast16_t', 'int_fast32_t', 'int_fast64_t',
            'uint_fast8_t', 'uint_fast16_t', 'uint_fast32_t', 'uint_fast64_t',

            'int_least8_t', 'int_least16_t', 'int_least32_t', 'int_least64_t',
            'uint_least8_t', 'uint_least16_t', 'uint_least32_t', 'uint_least64_t',

            'int8_t', 'int16_t', 'int32_t', 'int64_t',
            'uint8_t', 'uint16_t', 'uint32_t', 'uint64_t',

            'intmax_t', 'uintmax_t', 'intptr_t', 'uintptr_t',
            'size_t', 'off_t',

            'upc_lock_t', 'shared', 'strict', 'relaxed', 'upc_blocksizeof',
            'upc_localsizeof', 'upc_elemsizeof'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']',
        '+', '-', '*', '/', '%',
        '=', '<', '>',
        '!', '^', '&', '|',
        '?', ':',
        ';', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;',
            4 => 'color: #993333;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #339933;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #660099; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/ada.php0000664000175000017500000001035012014173426013423 0ustar  benbebenbe 'Ada',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'begin', 'declare', 'do', 'else', 'elsif', 'exception', 'for', 'if',
            'is', 'loop', 'while', 'then', 'end', 'select', 'case', 'until',
            'goto', 'return'
            ),
        2 => array(
            'abs', 'and', 'at', 'mod', 'not', 'or', 'rem', 'xor'
            ),
        3 => array(
            'abort', 'abstract', 'accept', 'access', 'aliased', 'all', 'array',
            'body', 'constant', 'delay', 'delta', 'digits', 'entry', 'exit',
            'function', 'generic', 'in', 'interface', 'limited', 'new', 'null',
            'of', 'others', 'out', 'overriding', 'package', 'pragma', 'private',
            'procedure', 'protected', 'raise', 'range', 'record', 'renames',
            'requeue', 'reverse', 'separate', 'subtype', 'synchronized',
            'tagged', 'task', 'terminate', 'type', 'use', 'when', 'with'
            )
        ),
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f;',
            2 => 'color: #0000ff;',
            3 => 'color: #46aa03; font-weight:bold;',
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/intercal.php0000664000175000017500000000701412014173370014500 0ustar  benbebenbe 'INTERCAL',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        //Politeness
        1 => array(
            'DO', 'DOES', 'DONT', 'DON\'T', 'NOT', 'PLEASE', 'PLEASENT', 'PLEASEN\'T', 'MAYBE'
            ),
        //Statements
        2 => array(
            'STASH', 'RETRIEVE', 'NEXT', 'RESUME', 'FORGET', 'ABSTAIN', 'ABSTAINING',
            'COME', 'FROM', 'CALCULATING', 'REINSTATE', 'IGNORE', 'REMEMBER',
            'WRITE', 'IN', 'READ', 'OUT', 'GIVE', 'UP'
            )
        ),
    'SYMBOLS' => array(
        '.', ',', ':', ';', '#',
        '~', '$', '&', '?',
        '\'', '"', '<-'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000080; font-weight: bold;',
            2 => 'color: #000080; font-weight: bold;'
            ),
        'COMMENTS' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            1 => 'color: #808080; font-style: italic;'
            )
        ),
    'URLS' => array(
        1 => '',
        2 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        1 => '^\(\d+\)'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'COMMENTS' => GESHI_NEVER,
            'STRINGS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER
            )
        )
);

?>geshi/geshi/lisp.php0000664000175000017500000001202512014173421013641 0ustar  benbebenbe 'Lisp',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(';|' => '|;'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'not','defun','princ','when',
            'eval','apply','funcall','quote','identity','function',
            'complement','backquote','lambda','set','setq','setf',
            'defmacro','gensym','make','symbol','intern',
            'name','value','plist','get',
            'getf','putprop','remprop','hash','array','aref',
            'car','cdr','caar','cadr','cdar','cddr','caaar','caadr','cadar',
            'caddr','cdaar','cdadr','cddar','cdddr','caaaar','caaadr',
            'caadar','caaddr','cadaar','cadadr','caddar','cadddr',
            'cdaaar','cdaadr','cdadar','cdaddr','cddaar','cddadr',
            'cdddar','cddddr','cons','list','append','reverse','last','nth',
            'nthcdr','member','assoc','subst','sublis','nsubst',
            'nsublis','remove','length',
            'mapc','mapcar','mapl','maplist','mapcan','mapcon','rplaca',
            'rplacd','nconc','delete','atom','symbolp','numberp',
            'boundp','null','listp','consp','minusp','zerop','plusp',
            'evenp','oddp','eq','eql','equal','cond','case','and','or',
            'let','l','if','prog','prog1','prog2','progn','go','return',
            'do','dolist','dotimes','catch','throw','error','cerror','break',
            'continue','errset','baktrace','evalhook','truncate','float',
            'rem','min','max','abs','sin','cos','tan','expt','exp','sqrt',
            'random','logand','logior','logxor','lognot','bignums','logeqv',
            'lognand','lognor','logorc2','logtest','logbitp','logcount',
            'integer','nil','parse-integer','make-list','print','write'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']',
        '!', '%', '^', '&',
        ' + ',' - ',' * ',' / ',
        '=','<','>',
        '.',':',',',';',
        '|'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #555;',
            1 => 'color: #555;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        '::', ':'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'OOLANG' => array(
            'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*'
            )
        )
);

?>geshi/geshi/gettext.php0000664000175000017500000000571012014173407014365 0ustar  benbebenbe 'GNU Gettext',
    'COMMENT_SINGLE' => array('#:', '#.', '#,', '#|', '#'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array('msgctxt', 'msgid_plural', 'msgid', 'msgstr'),
    ),
    'SYMBOLS' => array(),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
    ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;'
        ),
        'COMMENTS' => array(
            0 => 'color: #000099;',
            1 => 'color: #000099;',
            2 => 'color: #000099;',
            3 => 'color: #006666;',
            4 => 'color: #666666; font-style: italic;',
        ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
        ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
        ),
        'REGEXPS' => array(),
        'SYMBOLS' => array(),
        'NUMBERS' => array(
            0 => 'color: #000099;'
        ),
        'METHODS' => array(),
        'SCRIPT' => array(),
        'BRACKETS' => array(
            0 => 'color: #000099;'
        ),
    ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
);

?>
geshi/geshi/spark.php0000664000175000017500000001017712014173406014023 0ustar  benbebenbe 'SPARK',
    'COMMENT_SINGLE' => array(1 => '--', 2 => '--#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'begin', 'declare', 'do', 'else', 'elsif', 'exception', 'for', 'if',
            'is', 'loop', 'while', 'then', 'end', 'select', 'case', 'until',
            'goto', 'return'
            ),
        2 => array(
            'abs', 'and', 'at', 'mod', 'not', 'or', 'rem', 'xor'
            ),
        3 => array(
            'abort', 'abstract', 'accept', 'access', 'aliased', 'all', 'array',
            'body', 'constant', 'delay', 'delta', 'digits', 'entry', 'exit',
            'function', 'generic', 'in', 'interface', 'limited', 'new', 'null',
            'of', 'others', 'out', 'overriding', 'package', 'pragma', 'private',
            'procedure', 'protected', 'raise', 'range', 'record', 'renames',
            'requeue', 'reverse', 'separate', 'subtype', 'synchronized',
            'tagged', 'task', 'terminate', 'type', 'use', 'when', 'with'
            )
        ),
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f;',
            2 => 'color: #0000ff;',
            3 => 'color: #46aa03; font-weight:bold;',
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            2 => 'color: #adadad; font-style: italic; font-weight: bold;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/matlab.php0000664000175000017500000002567312014173444014154 0ustar  benbebenbe 'Matlab M',
    'COMMENT_SINGLE' => array(1 => '%'),
    'COMMENT_MULTI' => array(),
    //Matlab Strings
    'COMMENT_REGEXP' => array(
        2 => "/(? GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'break', 'case', 'catch', 'continue', 'elseif', 'else', 'end', 'for',
            'function', 'global', 'if', 'otherwise', 'persistent', 'return',
            'switch', 'try', 'while'
            ),
        2 => array(
            'all','any','exist','is','logical','mislocked',

            'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle',
            'ans','area','asec','asech','asin','asinh','atan','atan2','atanh',
            'auread','autumn','auwrite','axes','axis','balance','bar','bar3',
            'bar3h','barh','besselh','besseli','besselj','besselk','Bessely',
            'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand',
            'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor',
            'blkdiag','bone','box','brighten','builtin','bwcontr','calendar',
            'camdolly','camlight','camlookat','camorbit','campan','campos',
            'camproj','camroll','camtarget','camup','camva','camzoom','capture',
            'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil','cell',
            'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs',
            'char','chol','cholinc','cholupdate','cla','clabel','class','clc',
            'clf','clg','clock','close','colmmd','colorbar','colorcube',
            'colordef','colormap','colperm','comet','comet3','compan','compass',
            'complex','computer','cond','condeig','condest','coneplot','conj',
            'contour','contourc','contourf','contourslice','contrast','conv',
            'conv2','convhull','cool','copper','copyobj','corrcoef','cos',
            'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch',
            'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum',
            'datestr','datetick','datevec','dbclear','dbcont','dbdown',
            'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop',
            'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2',
            'delaunay','det','diag','dialog','diff','diffuse','dlmread',
            'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig',
            'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx',
            'erfiny','error','errorbar','errordlg','etime','eval','evalc',
            'evalin','exp','expint','expm','eye','ezcontour','ezcontourf',
            'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc',
            'factor','factorial','fclose','feather','feof','ferror','feval',
            'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure',
            'fill','fill3','filter','filter2','find','findfigs','findobj',
            'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops',
            'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf',
            'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma',
            'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get',
            'getfield','ginput','gmres','gradient','gray','graymon','grid',
            'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg',
            'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot',
            'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag',
            'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto',
            'inline','inpolygon','input','inputdlg','inputname','int16',
            'int2str','int32','int8','interp1','interp2','interp3','interpft',
            'interpn','intersect','inv','invhilb','ipermute','isa','ishandle',
            'ismember','isocaps','isonormals','isosurface','j','jet','keyboard',
            'lcm','legend','legendre','light','lighting','lightingangle',
            'lin2mu','line','lines','linspace','listdlg','loadobj','log',
            'log10','log2','loglog','logm','logspace','lower','lscov','lu',
            'luinc','magic','mat2str','material','max','mean','median','menu',
            'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin',
            'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims',
            'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now',
            'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,',
            'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones',
            'orient','orth','pagedlg','pareto','pascal','patch','pause',
            'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie',
            'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart',
            'polar','poly','polyarea','polyder','polyeig','polyfit','polyval',
            'polyvalm','pow2','primes','print','printdlg','printopt','prism',
            'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate',
            'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm',
            'rank','rat','rats','rbbox','rcond','real','realmax','realmin',
            'rectangle','reducepatch','reducevolume','refresh','rem','repmat',
            'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield',
            'roots','rose','rot90','rotate','rotate3d','round','rref',
            'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur',
            'script','sec','sech','selectmoveresize','semilogx','semilogy',
            'set','setdiff','setfield','setxor','shading','shg','shiftdim',
            'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort',
            'sortrows','sound','soundsc','spalloc','sparse','spconvert',
            'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap',
            'spline','spones','spparms','sprand','sprandn','sprandsym','spring',
            'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem',
            'stem3','str2double','str2num','strcat','strcmp','strcmpi',
            'stream2','stream3','streamline','strings','strjust','strmatch',
            'strncmp','strrep','strtok','struct','struct2cell','strvcat',
            'sub2ind','subplot','subspace','subvolume','sum','summer',
            'superiorto','surf','surf2patch','surface','surfc','surfl',
            'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh',
            'texlabel','text Create','textread','textwrap','tic','title','toc',
            'toeplitz','trace','trapz','tril','trimesh','trisurf','triu',
            'tsearch','uicontext Create','uicontextmenu','uicontrol',
            'uigetfile','uimenu','uint32','uint8','uiputfile','uiresume',
            'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap',
            'upper','var','varargin','varargout','vectorize','view','viewmtx',
            'voronoi','waitbar','waitforbuttonpress','warndlg','warning',
            'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson',
            'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim',
            'zeros','zlabel','zlim','zoom',
            //'[Keywords 6]',
            'addpath','cd','clear','copyfile','delete','diary','dir','disp',
            'doc','docopt','echo','edit','fileparts','format','fullfile','help',
            'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length',
            'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock',
            'more','munlock','open','openvar','pack','partialpath','path',
            'pathtool','profile','profreport','pwd','quit','rmpath','save',
            'saveas','size','tempdir','tempname','type','ver','version','web',
            'what','whatsnew','which','who','whos','workspace'
            )
        ),
    'SYMBOLS' => array(
        '...'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        //3 => false,
        //4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000FF;'
            ),
        'COMMENTS' => array(
            1 => 'color: #228B22;',
            2 => 'color:#A020F0;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'color: #080;'
            ),
        'STRINGS' => array(
            //0 => 'color: #A020F0;'
            ),
        'NUMBERS' => array(
            0 => 'color: #33f;'
            ),
        'METHODS' => array(
            1 => '',
            2 => ''
            ),
        'SYMBOLS' => array(
            0 => 'color: #080;'
            ),
        'REGEXPS' => array(
            0 => 'color: #33f;'
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => 'http://www.mathworks.com/access/helpdesk/help/techdoc/ref/{FNAMEL}.html'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        //Complex numbers
        0 => '(?html)'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/fo.php0000664000175000017500000002361612014173436013314 0ustar  benbebenbe 'FO (abas-ERP)',
    'COMMENT_SINGLE' => array(1 => '..'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        //Control Flow
        1 => array(
            /* see http://www.abas.de/sub_de/kunden/help/hd/html/9.html */

            /* fo keywords, part 1: control flow */
            '.weiter', '.continue'

            /* this language works with goto's only*/
            ),

        //FO Keywords
        2 => array(
            /* fo keywords, part 2 */
            '.fo', '.formel', '.formula',
            '.zuweisen', '.assign',
            '.fehler', '.error',
            '.ende', '.end'
            ),

        //Java Keywords
        3 => array(
            /* Java keywords, part 3: primitive data types */
            '.art', '.type',
            'integer', 'real', 'bool', 'text', 'datum', 'woche', 'termin', 'zeit',
            'mehr', 'MEHR'
            ),

        //Reserved words in fo literals
        4 => array(
            /* other reserved words in fo literals */
            /* should be styled to look similar to numbers and Strings */
            'false', 'null', 'true',
            'OBJEKT',
            'VORGANG', 'PROCESS',
            'OFFEN', 'OPEN',
            'ABORT',
            'AN', 'ADDEDTO',
            'AUF', 'NEW',
            'BILDSCHIRM', 'TERMINAL',
            'PC',
            'MASKE', 'SCREEN',
            'ZEILE', 'LINE'
            ),

        // interpreter settings
        5 => array (
            '..!INTERPRETER', 'DEBUG'
            ),

        // database commands
        6 => array (
            '.hole', '.hol', '.select',
            '.lade', '.load',
            '.aktion', '.action',
            '.belegen', '.occupy',
            '.bringe', '.rewrite',
            '.dazu', '.add',
            '.löschen', '.delete',
            '.mache', '.make',
            '.merke', '.reserve',
            '.setze', '.set',
            'SPERREN', 'LOCK',
            'TEIL', 'PART',
            'KEINESPERRE',
            'AMASKE', 'ASCREEN',
            'BETRIEB', 'WORK-ORDER',
            'NUMERISCH', 'NUMERICAL',
            'VORSCHLAG', 'SUGGESTION',
            'OBLIGO', 'OUTSTANDING',
            'LISTE', 'LIST',
            'DRUCK', 'PRINT',
            'ÜBERNAHME', 'TAGEOVER',
            'ABLAGE', 'FILINGSYSTEM',
            'BDE', 'PDC',
            'BINDUNG', 'ALLOCATION',
            'BUCHUNG', 'ENTRY',
            'COLLI', 'SERIAL',
            'DATEI', 'FILE',
            'VERKAUF', 'SALES',
            'EINKAUF', 'PURCHASING',
            'EXEMPLAR', 'EXAMPLE',
            'FERTIGUNG', 'PRODUCTION',
            'FIFO',
            'GRUPPE', 'GROUP',
            'JAHR', 'YEAR',
            'JOURNAL',
            'KOPF', 'HEADER',
            'KOSTEN',
            'LIFO',
            'LMENGE', 'SQUANTITY',
            'LOHNFERTIGUNG', 'SUBCONTRACTING',
            'LPLATZ', 'LOCATION',
            'MBELEGUNG', 'MACHLOADING',
            'MONAT', 'MONTH', 'MZ',
            'NACHRICHT', 'MESSAGE',
            'PLAN', 'TARGET',
            'REGIONEN', 'REGIONS',
            'SERVICEANFRAGE', 'SERVICEREQUEST',
            'VERWENDUNG', 'APPLICATION',
            'WEITER', 'CONTINUE',
            'ABBRUCH', 'CANCEL',
            'ABLAGEKENNZEICHEN', 'FILLINGCODE',
            'ALLEIN', 'SINGLEUSER',
            'AUFZAEHLTYP', 'ENUMERATION-TYPE',
            'AUSGABE', 'OUTPUT',
            'DEZPUNKT', 'DECPOINT'
            ),

        // output settings
        7 => array (
            '.absatz', '.para',
            '.blocksatz', '.justified',
            '.flattersatz', '.unjustified',
            '.format',
            '.box',
            '.drucken', '.print',
            '.gedruckt', '.printed',
            '.länge', '.length',
            '.links', '.left',
            '.rechts', '.right',
            '.oben', '.up',
            '.unten', '.down',
            '.seite', '.page',
            '.tabellensatz', '.tablerecord',
            '.trenner', '.separator',
            'ARCHIV'
            ),

        // text commands
        8 => array (
            '.text',
            '.atext',
            '.println',
            '.uebersetzen', '.translate'
            ),

        // I/O commands
        9 => array (
            '.aus', '.ausgabe', '.output',
            '.ein', '.eingabe', '.input',
            '.datei', '.file',
            '.lesen', '.read',
            '.sortiere', '.sort',
            '-ÖFFNEN', '-OPEN',
            '-TEST',
            '-LESEN', '-READ',
            'VON', 'FROM'
            ),

        //system
        10 => array (
            '.browser',
            '.kommando', '.command',
            '.system', '.dde',
            '.editiere', '.edit',
            '.hilfe', '.help',
            '.kopieren', '.copy',
            '.pc.clip',
            '.pc.copy',
            '.pc.dll',
            '.pc.exec',
            '.pc.open',
            'DIAGNOSE', 'ERRORREPORT',
            'DOPPELPUNKT', 'COLON',
            'ERSETZUNG', 'REPLACEMENT',
            'WARTEN', 'PARALLEL'
            ),

        //fibu/accounting specific commands
        11 => array (
            '.budget',
            '.chart',
            'VKZ',
            'KONTO', 'ACCOUNT',
            'AUSZUG', 'STATEMENT',
            'WAEHRUNG', 'CURRENCY',
            'WAEHRUNGSKURS', 'EXCHANGERATE',
            'AUSWAEHR', 'FORCURR',
            'BUCHUNGSKREIS', 'SET OF BOOKS'
            ),

        // efop - extended flexible surface
        12 => array (
            '.cursor',
            '.farbe', '.colour',
            '.fenster', '.window',
            '.hinweis', '.note',
            '.menue', '.menu',
            '.schutz', '.protection',
            '.zeigen', '.view',
            '.zeile', '.line',
            'VORDERGRUND', 'FOREGROUND',
            'HINTERGRUND', 'BACKGROUND',
            'SOFORT', 'IMMEDIATELY',
            'AKTUALISIEREN', 'UPDATE',
            'FENSTERSCHLIESSEN', 'CLOSEWINDOWS'
            ),
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '[', ']', '{', '}', '*', '&', '%', ';', '<', '>'),
        1 => array('?', '!')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        /* all fo keywords are case sensitive, don't have to but I like this type of coding */
        1 => true, 2 => true, 3 => true, 4 => true,
        5 => true, 6 => true, 7 => true, 8 => true, 9 => true,
        10 => true, 11 => true, 12 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #006600; font-weight: bold;',
            4 => 'color: #006600; font-weight: bold;',
            5 => 'color: #003399; font-weight: bold;',
            6 => 'color: #003399; font-weight: bold;',
            7 => 'color: #003399; font-weight: bold;',
            8 => 'color: #003399; font-weight: bold;',
            9 => 'color: #003399; font-weight: bold;',
            10 => 'color: #003399; font-weight: bold;',
            11 => 'color: #003399; font-weight: bold;',
            12 => 'color: #003399; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            //2 => 'color: #006699;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006633;',
            2 => 'color: #006633;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            1 => 'color: #000000; font-weight: bold;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        9 => '',
        10 => '',
        11 => '',
        12 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);
?>geshi/geshi/io.php0000664000175000017500000001221712014173432013306 0ustar  benbebenbe 'Io',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'and', 'break', 'else', 'elseif', 'exit', 'for', 'foreach', 'if', 'ifFalse', 'ifNil',
            'ifTrue', 'or', 'pass', 'raise', 'return', 'then', 'try', 'wait', 'while', 'yield'
            ),
        2 => array(
            'activate', 'activeCoroCount', 'asString', 'block', 'catch', 'clone', 'collectGarbage',
            'compileString', 'continue', 'do', 'doFile', 'doMessage', 'doString', 'forward',
            'getSlot', 'getenv', 'hasSlot', 'isActive', 'isNil', 'isResumable', 'list', 'message',
            'method', 'parent', 'pause', 'perform', 'performWithArgList', 'print', 'proto',
            'raiseResumable', 'removeSlot', 'resend', 'resume', 'schedulerSleepSeconds', 'self',
            'sender', 'setSchedulerSleepSeconds', 'setSlot', 'shallowCopy', 'slotNames', 'super',
            'system', 'thisBlock', 'thisContext', 'thisMessage', 'type', 'uniqueId', 'updateSlot',
            'write'
            ),
        3 => array(
            'Array', 'AudioDevice', 'AudioMixer', 'Block', 'Box', 'Buffer', 'CFunction', 'CGI',
            'Color', 'Curses', 'DBM', 'DNSResolver', 'DOConnection', 'DOProxy', 'DOServer',
            'Date', 'Directory', 'Duration', 'DynLib', 'Error', 'Exception', 'FFT', 'File',
            'Fnmatch', 'Font', 'Future', 'GL', 'GLE', 'GLScissor', 'GLU', 'GLUCylinder',
            'GLUQuadric', 'GLUSphere', 'GLUT', 'Host', 'Image', 'Importer', 'LinkList', 'List',
            'Lobby', 'Locals', 'MD5', 'MP3Decoder', 'MP3Encoder', 'Map', 'Message', 'Movie',
            'NULL', 'Nil', 'Nop', 'Notifiction', 'Number', 'Object', 'OpenGL', 'Point', 'Protos',
            'Regex', 'SGMLTag', 'SQLite', 'Server', 'ShowMessage', 'SleepyCat', 'SleepyCatCursor',
            'Socket', 'SocketManager', 'Sound', 'Soup', 'Store', 'String', 'Tree', 'UDPSender',
            'UDPReceiver', 'URL', 'User', 'Warning', 'WeakLink'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/6502acme.php0000664000175000017500000001772212014173407014131 0ustar  benbebenbe 'MOS 6502 (6510) ACME Cross Assembler format',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* 6502/6510 Opcodes. */
        1 => array(
            'adc', 'and', 'asl', 'bcc', 'bcs', 'beq', 'bit', 'bmi',
            'bne', 'bpl', 'brk', 'bvc', 'bvs', 'clc', 'cld', 'cli',
            'clv', 'cmp', 'cpx', 'cpy', 'dec', 'dex', 'dey', 'eor',
            'inc', 'inx', 'iny', 'jmp', 'jsr', 'lda', 'ldx', 'ldy',
            'lsr', 'nop', 'ora', 'pha', 'php', 'pla', 'plp', 'rol',
            'ror', 'rti', 'rts', 'sbc', 'sec', 'sed', 'sei', 'sta',
            'stx', 'sty', 'tax', 'tay', 'tsx', 'txa', 'txs', 'tya',
            ),
        /* Index Registers, yes the 6502 has other registers by they are only
        * accessable by specific opcodes. The 65816 also has access to the stack pointer S. */
        2 => array(
            'x', 'y', 's'
            ),
        /* Directives or "pseudo opcodes" as defined by ACME 0.93 file AllPOs.txt. */
        3 => array(
            '!8', '!08', '!by', '!byte',
            '!16', '!wo', '!word',
            '!24', '!32',
            '!fi', '!fill',
            '!align',
            '!ct', '!convtab',
            '!tx', '!text',
            '!pet',
            '!raw',
            '!scrxor',
            '!to',
            '!source',
            '!bin', '!binary',
            '!zn', '!zone',
            '!sl',
            '!svl',
            '!sal',
            '!if', '!ifdef',
            '!for',
            '!set',
            '!do', 'while', 'until',
            '!eof', '!endoffile',
            '!warn', '!error', '!serious',
            '!macro',
//            , '*='        // Not a valid keyword (uses both * and = signs) moved to symbols instead.
            '!initmem',
            '!pseudopc',
            '!cpu',
            '!al', '!as', '!rl', '!rs',
            ),

        /* 6502/6510 undocumented opcodes (often referred to as illegal instructions).
        *  These are present in the 6502/6510 but NOT in the newer CMOS revisions of the 65C02 or 65816.
        *  As they are undocumented instructions there are no "official" names for them, there are also
        *  several more that mainly perform various forms of crash and are not supported by ACME 0.93.
        */
        4 => array(
            'anc', 'arr', 'asr', 'dcp', 'dop', 'isc', 'jam', 'lax',
            'rla', 'rra', 'sax', 'sbx', 'slo', 'sre', 'top',
            ),
        /* 65c02 instructions, MOS added a few (much needed) instructions in the CMOS version of the 6502, but stupidly removed the undocumented/illegal opcodes.
        *  ACME 0.93 does not support the rmb0-7 and smb0-7 instructions (they are currently rem'ed out).  */
        5 => array(
            'bra', 'phx', 'phy', 'plx', 'ply', 'stz', 'trb', 'tsb'
            ),
        /* 65816 instructions. */
        6 => array(
            'brl', 'cop', 'jml', 'jsl', 'mvn', 'mvp', 'pea', 'pei',
            'per', 'phb', 'phd', 'phk', 'plb', 'pld', 'rep', 'rtl',
            'sep', 'tcd', 'tcs', 'tdc', 'tsc', 'txy', 'tyx', 'wdm',
            'xba', 'xce',
            ),
        /* Deprecated directives or "pseudo opcodes" as defined by ACME 0.93 file AllPOs.txt. */
        7 => array(
            '!cbm',
            '!sz', '!subzone',
            '!realpc',
            ),
        /* Math functions, some are aliases for the symbols. */
        8 => array(
            'not', 'div', 'mod', 'xor', 'or', 'sin', 'cos', 'tan',
            'arcsin', 'arccos', 'arctan', 'int', 'float',

            ),

        ),
    'SYMBOLS' => array(
//        '[', ']', '(', ')', '{', '}',    // These are already defined by GeSHi as BRACKETS.
        '*=', '#', '!', '^', '-', '*', '/',
        '%', '+', '-', '<<', '>>', '>>>',
        '<', '>', '^', '<=', '<', '>=', '>', '!=',
        '=', '&', '|', '<>',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00f; font-weight:bold;',
            2 => 'color: #00f; font-weight:bold;',
            3 => 'color: #080; font-weight:bold;',
            4 => 'color: #f00; font-weight:bold;',
            5 => 'color: #80f; font-weight:bold;',
            6 => 'color: #f08; font-weight:bold;',
            7 => 'color: #a04; font-weight:bold; font-style: italic;',
            8 => 'color: #000;',
            ),
        'COMMENTS' => array(
            1 => 'color: #999; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #009; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000;'
            ),
        'STRINGS' => array(
            0 => 'color: #080;'
            ),
        'NUMBERS' => array(
            GESHI_NUMBER_INT_BASIC          => 'color: #f00;',
            GESHI_NUMBER_HEX_PREFIX_DOLLAR  => 'color: #f00;',
            GESHI_NUMBER_HEX_PREFIX         => 'color: #f00;',
            GESHI_NUMBER_BIN_PREFIX_PERCENT => 'color: #f00;',
            GESHI_NUMBER_FLT_NONSCI         => 'color: #f00;',
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #080;'
            ),
        'REGEXPS' => array(
            0   => 'color: #f00;'
            , 1 => 'color: #933;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_HEX_PREFIX_DOLLAR |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_BIN_PREFIX_PERCENT,
        // AMCE Octal format not support and gets picked up as Decimal unfortunately.
    'REGEXPS' => array(
        //ACME .# Binary number format. e.g. %..##..##..##
        0 => '\%[\.\#]{1,64}',
        //ACME Local Labels
        1 => '\.[_a-zA-Z][_a-zA-Z0-9]*',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8,
    'PARSER_CONTROL' => array(
        'NUMBERS' => array(
            'PRECHECK_RX' => '/[\da-fA-F\.\$\%]/'
            )
        )
);

?>geshi/geshi/typoscript.php0000664000175000017500000002562512014173433015127 0ustar  benbebenbe Complete rewrite
 * 2005/07/29 (1.0.0)
 *  -  First Release
 *
 * TODO (updated 2004/07/14)
 * -------------------------
 * 
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'TypoScript',
    'COMMENT_SINGLE' => array(1  => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(2 => '/(? GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        // Conditions: http://documentation.typo3.org/documentation/tsref/conditions/
        1 => array(
            'browser', 'compatVersion', 'dayofmonth', 'dayofweek', 'device',
            'globalString', 'globalVars', 'hostname', 'hour',
            'ip', 'language', 'loginUser', 'loginuser', 'minute',
            'month', 'PIDinRootline', 'PIDupinRootline',
            'system', 'treelevel', 'useragent', 'userFunc',
            'usergroup', 'version'
            ),

        // Functions: http://documentation.typo3.org/documentation/tsref/functions/
        2 => array(
            'addParams', 'encapsLines', 'filelink', 'HTMLparser',
            'HTMLparser_tags', 'if', 'imageLinkWrap',
            'imgResource', 'makelinks', 'numRows', 'parseFunc',
            'select', 'split', 'stdWrap', 'tableStyle', 'tags',
            'textStyle', 'typolink'
            ),

        // Toplevel objects: http://documentation.typo3.org/documentation/tsref/tlo-objects/
        3 => array(
            'CARRAY', 'CONFIG', 'CONSTANTS', 'FE_DATA', 'FE_TABLE', 'FRAME',
            'FRAMESET', 'META', 'PAGE', 'plugin'
            ),

        // Content Objects (cObject) : http://documentation.typo3.org/documentation/tsref/cobjects/
        4 => array(
            'CASE', 'CLEARGIF', 'COA', 'COA_INT', 'COBJ_ARRAY', 'COLUMNS',
            'CONTENT', 'CTABLE', 'EDITPANEL', 'FILE', 'FORM',
            'HMENU', 'HRULER', 'HTML', 'IMAGE', 'IMGTEXT',
            'IMG_RESOURCE', 'LOAD_REGISTER', 'MULTIMEDIA',
            'OTABLE', 'PHP_SCRIPT', 'PHP_SCRIPT_EXT',
            'PHP_SCRIPT_INT', 'RECORDS', 'RESTORE_REGISTER',
            'SEARCHRESULT', 'TEMPLATE', 'TEXT', 'USER',
            'USER_INT'
            ),

        // GIFBUILDER toplevel link: http://documentation.typo3.org/documentation/tsref/gifbuilder/
        5 => array(
            'GIFBUILDER',
            ),

        // GIFBUILDER: http://documentation.typo3.org/documentation/tsref/gifbuilder/
        // skipped fields: IMAGE, TEXT
        // NOTE! the IMAGE and TEXT field already are linked in group 4, they
        // cannot be linked twice . . . . unfortunately
        6 => array(
            'ADJUST', 'BOX', 'CROP', 'EFFECT', 'EMBOSS',
            'IMGMAP', 'OUTLINE', 'SCALE', 'SHADOW',
            'WORKAREA'
            ),

        // MENU Objects: http://documentation.typo3.org/documentation/tsref/menu/
        7 => array(
            'GMENU', 'GMENU_FOLDOUT', 'GMENU_LAYERS', 'IMGMENU',
            'IMGMENUITEM', 'JSMENU', 'JSMENUITEM', 'TMENU',
            'TMENUITEM', 'TMENU_LAYERS'
            ),

        // MENU common properties: http://documentation.typo3.org/documentation/tsref/menu/common-properties/
        8 => array(
            'alternativeSortingField', 'begin', 'debugItemConf',
            'imgNameNotRandom', 'imgNamePrefix',
            'itemArrayProcFunc', 'JSWindow', 'maxItems',
            'minItems', 'overrideId', 'sectionIndex',
            'showAccessRestrictedPages', 'submenuObjSuffixes'
            ),

        // MENU item states: http://documentation.typo3.org/documentation/tsref/menu/item-states/
        9 => array(
            'ACT', 'ACTIFSUB', 'ACTIFSUBRO', 'ACTRO', 'CUR', 'CURIFSUB',
            'CURIFSUBRO', 'CURRO', 'IFSUB', 'IFSUBRO', 'NO',
            'SPC', 'USERDEF1', 'USERDEF1RO', 'USERDEF2',
            'USERDEF2RO', 'USR', 'USRRO'
            ),
        ),

    // Does not include '-' because of stuff like htmlTag_langKey = en-GB and
    // lib.nav-sub
    'SYMBOLS' => array(
        0 => array(
            '|',
            '+', '*', '/', '%',
            '!', '&&', '^',
            '<', '>', '=',
            '?', ':',
            '.'
            ),
        1 => array(
            '(', ')', '{', '}', '[', ']'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        9 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #ed7d14;',
            2 => 'font-weight: bold;',
            3 => 'color: #990000; font-weight: bold;',
            4 => 'color: #990000; font-weight: bold;',
            5 => 'color: #990000; font-weight: bold;',
            6 => 'color: #990000; font-weight: bold;',
            7 => 'color: #990000; font-weight: bold;',
            8 => 'font-weight: bold;',
            9 => 'color: #990000; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #aaa; font-style: italic;',
            2 => 'color: #aaa; font-style: italic;',
            'MULTI' => 'color: #aaa; font-style: italic;'
            ),
        'STRINGS' => array(
            0 => 'color: #ac14aa;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc0000;'
            ),
        'METHODS' => array(
            1 => 'color: #0000e0; font-weight: bold;',
            2 => 'color: #0000e0; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933; font-weight: bold;',
                // Set this to the same value as brackets above
            1 => 'color: #009900; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #009900;',
            1 => 'color: #009900; font-weight: bold;',
            2 => 'color: #3366CC;',
            3 => 'color: #000066; font-weight: bold;',
            4 => 'color: #ed7d14;',
            5 => 'color: #000066; font-weight: bold;',
            6 => 'color: #009900;',
            7 => 'color: #3366CC;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://documentation.typo3.org/documentation/tsref/conditions/{FNAME}/',
        2 => 'http://documentation.typo3.org/documentation/tsref/functions/{FNAME}/',
        3 => 'http://documentation.typo3.org/documentation/tsref/tlo-objects/{FNAME}/',
        4 => 'http://documentation.typo3.org/documentation/tsref/cobjects/{FNAME}/',
        5 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/',
        6 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/{FNAME}/',
        7 => 'http://documentation.typo3.org/documentation/tsref/menu/{FNAME}/',
        8 => 'http://documentation.typo3.org/documentation/tsref/menu/common-properties/',
        9 => 'http://documentation.typo3.org/documentation/tsref/menu/item-states/'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
            // xhtml tag
        2 => array(
            GESHI_SEARCH => '(<)([a-zA-Z\\/][^\\/\\|]*?)(>)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 's',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),

            // Constant
        0 => array(
            GESHI_SEARCH => '(\{)(\$[a-zA-Z_\.]+[a-zA-Z0-9_\.]*)(\})',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),

            // Constant dollar sign
        1 => array(
            GESHI_SEARCH => '(\$)([a-zA-Z_\.]+[a-zA-Z0-9_\.]*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '\\2'
            ),

            // extension keys / tables: (static|user|ttx|tx|tt|fe)_something[_something]
        3 => array(
            GESHI_SEARCH => '(plugin\.|[^\.]\b)((?:static|user|ttx|tx|tt|fe)(?:_[0-9A-Za-z_]+?)\b)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),

            // conditions and controls
        4 => array(
            GESHI_SEARCH => '(\[)(globalVar|global|end)\b',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),

            // lowlevel setup and constant objects
        5 => array(
            GESHI_SEARCH => '([^\.\$-\{]\b)(cObj|field|config|content|file|frameset|includeLibs|lib|page|plugin|register|resources|sitemap|sitetitle|styles|temp|tt_content|tt_news|types|xmlnews)\b',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),

            // markers
        6 => array(
            GESHI_SEARCH => '(###[^#]+###)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),

            // hex color codes
        7 => array(
            GESHI_SEARCH => '(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
);

?>
geshi/geshi/ldif.php0000664000175000017500000000665711702144551013633 0ustar  benbebenbe 'LDIF',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => ''
            ),
        'STRINGS' => array(
            0 => 'color: #933;'
            ),
        'NUMBERS' => array(
            0 => ''
            ),
        'METHODS' => array(
            0 => ''
            ),
        'SYMBOLS' => array(
            ),
        'REGEXPS' => array(
            0 => 'color: #000066; font-weight: bold;',
            1 => 'color: #FF0000;'
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => array(
            GESHI_SEARCH => '([a-zA-Z0-9_]+):(.+)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ':\\2'
            ),
        1 => array(
            // Evil hackery to get around GeSHi bug: <>" and ; are added so s can be matched
            // Explicit match on variable names because if a comment is before the first < of the span
            // gets chewed up...
            GESHI_SEARCH => '([<>";a-zA-Z0-9_]+):(.+)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1:',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/netrexx.php0000664000175000017500000001313512014173411014371 0ustar  benbebenbe 'NetRexx',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'class', 'do', 'exit', 'if', 'import', 'iterate', 'leave',
            'loop', 'nop', 'numeric', 'package', 'parse', 'properties',
            'return', 'say', 'select', 'signal', 'trace'
            ),
        2 => array(
            'abstract', 'adapter', 'all', 'ask', 'binary', 'case',
            'constant', 'dependent', 'deprecated', 'extends', 'final',
            'implements', 'inheritable', 'interface', 'label', 'methods',
            'native', 'off', 'private', 'protect', 'public', 'results',
            'returns', 'shared', 'signals', 'source', 'static',
            'transient', 'unused', 'uses', 'version', 'volatile'
            ),
        3 => array(
            'catch', 'else', 'end', 'finally', 'otherwise', 'then', 'when'
            ),
        4 => array(
            'rc', 'result', 'self', 'sigl', 'super'
            ),
        5 => array(
            'placeholderforoorexxdirectives'
            ),
        6 => array(
            'abbrev', 'abs', 'b2x', 'c2d', 'c2x', 'center', 'centre',
            'changestr', 'compare', 'copies', 'copyindexed', 'countstr',
            'd2c', 'd2x', 'datatype', 'delstr', 'delword', 'exists',
            'formword', 'hashcode', 'insert', 'lastpos', 'left', 'lower',
            'max', 'min', 'noteq', 'noteqs', 'opadd', 'opand', 'opcc',
            'opccblank', 'opdiv', 'opdivi', 'opeq', 'opeqs', 'opgt',
            'opgteq', 'opgteqs', 'opgts', 'oplt', 'oplteq', 'oplteqs',
            'oplts', 'opminus', 'opmult', 'opnot', 'opor', 'opplus',
            'oppow', 'oprem', 'opsub', 'opxor', 'overlay', 'pos position',
            'reverse', 'right', 'sequence', 'setdigits', 'setform',
            'sign', 'space', 'strip', 'substr', 'subword', 'toboolean',
            'tobyte', 'tochar', 'todouble', 'tofloat', 'toint', 'tolong',
            'toshort', 'tostring', 'translate', 'trunc', 'upper',
            'verify', 'word', 'wordindex', 'wordlength', 'wordpos',
            'words', 'x2b', 'x2c', 'x2d'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '<', '>', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':',
        '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #ff0000; font-weight: bold;',
            3 => 'color: #00ff00; font-weight: bold;',
            4 => 'color: #0000ff; font-weight: bold;',
            5 => 'color: #880088; font-weight: bold;',
            6 => 'color: #888800; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666;',
            'MULTI' => 'color: #808080;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/modula3.php0000664000175000017500000001065012014173371014244 0ustar  benbebenbe 'Modula-3',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('(*' => '*)'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("''"),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'AND', 'ANY', 'ARRAY', 'AS', 'BEGIN', 'BITS', 'BRANDED', 'BY', 'CASE',
            'CONST', 'DIV', 'DO', 'ELSE', 'ELSIF', 'END', 'EVAL', 'EXCEPT', 'EXCEPTION',
            'EXIT', 'EXPORTS', 'FINALLY', 'FOR', 'FROM', 'GENERIC', 'IF', 'IMPORT', 'IN',
            'INTERFACE', 'LOCK', 'LOOP', 'METHODS', 'MOD', 'MODULE', 'NOT', 'OBJECT', 'OF',
            'OR', 'OVERRIDES', 'PROCEDURE', 'RAISE', 'RAISES', 'READONLY', 'RECORD', 'REF',
            'REPEAT', 'RETURN', 'REVEAL', 'ROOT', 'SET', 'THEN', 'TO', 'TRY', 'TYPE', 'TYPECASE',
            'UNSAFE', 'UNTIL', 'UNTRACED', 'VALUE', 'VAR', 'WHILE', 'WITH'
            ),
        2 => array(
            'NIL', 'NULL', 'FALSE', 'TRUE',
            ),
        3 => array(
            'ABS','ADR','ADRSIZE','BITSIZE','BYTESIZE','CEILING','DEC','DISPOSE',
            'EXTENDED','FIRST','FLOAT','FLOOR','INC','ISTYPE','LAST','LOOPHOLE','MAX','MIN',
            'NARROW','NEW','NUMBER','ORD','ROUND','SUBARRAY','TRUNC','TYPECODE', 'VAL'
            ),
        4 => array(
            'ADDRESS', 'BOOLEAN', 'CARDINAL', 'CHAR', 'INTEGER',
            'LONGREAL', 'MUTEX', 'REAL', 'REFANY', 'TEXT'
            ),
        ),
    'SYMBOLS' => array(
        ',', ':', '=', '+', '-', '*', '/', '#'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;',
            4 => 'color: #000066; font-weight: bold;'
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #0066ee;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/pic16.php0000664000175000017500000001152612014173374013630 0ustar  benbebenbe 'PIC16',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        /*Instructions*/
        1 => array(
            'addcf','adddcf','addlw','addwf','andlw','andwf','bc','bcf','bdc',
            'bnc','bndc','bnz','bsf','btfsc','btfss','bz','call','clrc','clrdc',
            'clrf','clrw','clrwdt','clrz','comf','decf','goto','incf','incfsz',
            'iorlw','iorwf','lcall','lgoto','movf','movfw','movlw','movwf',
            'option','negf','nop','retfie','retlw','return','rlf','rrf','setc',
            'setdc','setz','skpc','skpdc','skpnc','skpndc','skpnz','skpz',
            'sleep','subcf','subdcf','sublw','subwf','swapf','tris','tstf',
            'xorlw','xorwf'
            ),
        /*Registers*/
        2 => array(
            'INDF','TMR0','OPTION','PCL','STATUS','FSR','PORTA','PORTB','PORTC',
            'PORTD','PORTE','PORTF','TRISA','TRISB','TRISC','TRISD','TRISE',
            'TRISF','PCLATH','INTCON','PIR1','PIE1','PCON','CMCON','VRCON',
            'F','W'
            ),
        /*Directives*/
        3 => array(
            '_BADRAM','BANKISEL','BANKSEL','CBLOCK','CODE','_CONFIG','CONSTANT',
            'DA','DATA','DB','DE','#DEFINE','DT','DW','ELSE','END','ENDC',
            'ENDIF','ENDM','ENDW','EQU','ERROR','ERRORLEVEL','EXITM','EXPAND',
            'EXTERN','FILL','GLOBAL','IDATA','_IDLOCS','IF','IFDEF','IFNDEF',
            'INCLUDE','#INCLUDE','LIST','LOCAL','MACRO','_MAXRAM','MESSG',
            'NOEXPAND','NOLIST','ORG','PAGE','PAGESEL','PROCESSOR','RADIX',
            'RES','SET','SPACE','SUBTITLE','TITLE','UDATA','UDATA_ACS',
            'UDATA_OVR','UDATA_SHR','#UNDEFINE','VARIABLE','WHILE',
            'D','H','O','B','A'
            ),
        ),
    'SYMBOLS' => array('=','.',',',':'),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000a0; font-weight: bold;',
            2 => 'color: #aa3300; font-weight: bold;',
            3 => 'color: #0000ff;',
            ),
        'COMMENTS' => array(
            1 => 'color: #00a000;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #ff0000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #0000ff;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff7700;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff7700;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #7777ff;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_BIN_SUFFIX |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_HEX_SUFFIX,
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#>|^",
            'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%"
            )
        )
);

?>
geshi/geshi/vedit.php0000664000175000017500000000627311702144552014023 0ustar  benbebenbe 'Vedit macro language',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '\''),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'break', 'breakout', 'break_out', 'continue', 'do', 'else', 'for',
            'goto', 'if', 'repeat', 'return', 'while'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%',
            '=', '<', '>', '!', '^', '&', '|', '?', ':', ';', ','
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(1 => ''),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>geshi/geshi/eiffel.php0000664000175000017500000002455012014173426014137 0ustar  benbebenbe 'Eiffel',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '%',
    'KEYWORDS' => array(
        1 => array(
            'separate',
            'invariant',
            'inherit',
            'indexing',
            'feature',
            'expanded',
            'deferred',
            'class'
            ),
        2 => array(
            'xor',
            'when',
            'variant',
            'until',
            'unique',
            'undefine',
            'then',
            'strip',
            'select',
            'retry',
            'rescue',
            'require',
            'rename',
            'reference',
            'redefine',
            'prefix',
            'or',
            'once',
            'old',
            'obsolete',
            'not',
            'loop',
            'local',
            'like',
            'is',
            'inspect',
            'infix',
            'include',
            'implies',
            'if',
            'frozen',
            'from',
            'external',
            'export',
            'ensure',
            'end',
            'elseif',
            'else',
            'do',
            'creation',
            'create',
            'check',
            'as',
            'and',
            'alias',
            'agent'
            ),
        3 => array(
            'Void',
            'True',
            'Result',
            'Precursor',
            'False',
            'Current'
            ),
        4 => array(
            'UNIX_SIGNALS',
            'UNIX_FILE_INFO',
            'UNBOUNDED',
            'TWO_WAY_TREE_CURSOR',
            'TWO_WAY_TREE',
            'TWO_WAY_SORTED_SET',
            'TWO_WAY_LIST',
            'TWO_WAY_CURSOR_TREE',
            'TWO_WAY_CIRCULAR',
            'TWO_WAY_CHAIN_ITERATOR',
            'TUPLE',
            'TREE',
            'TRAVERSABLE',
            'TO_SPECIAL',
            'THREAD_CONTROL',
            'THREAD_ATTRIBUTES',
            'THREAD',
            'TABLE',
            'SUBSET',
            'STRING_HANDLER',
            'STRING',
            'STREAM',
            'STORABLE',
            'STD_FILES',
            'STACK',
            'SPECIAL',
            'SORTED_TWO_WAY_LIST',
            'SORTED_STRUCT',
            'SORTED_LIST',
            'SINGLE_MATH',
            'SET',
            'SEQUENCE',
            'SEQ_STRING',
            'SEMAPHORE',
            'ROUTINE',
            'RESIZABLE',
            'RECURSIVE_TREE_CURSOR',
            'RECURSIVE_CURSOR_TREE',
            'REAL_REF',
            'REAL',
            'RAW_FILE',
            'RANDOM',
            'QUEUE',
            'PROXY',
            'PROFILING_SETTING',
            'PROCEDURE',
            'PRIORITY_QUEUE',
            'PRIMES',
            'PRECOMP',
            'POINTER_REF',
            'POINTER',
            'PLATFORM',
            'PLAIN_TEXT_FILE',
            'PATH_NAME',
            'PART_SORTED_TWO_WAY_LIST',
            'PART_SORTED_SET',
            'PART_SORTED_LIST',
            'PART_COMPARABLE',
            'OPERATING_ENVIRONMENT',
            'ONCE_CONTROL',
            'OBJECT_OWNER',
            'OBJECT_CONTROL',
            'NUMERIC',
            'NONE',
            'MUTEX',
            'MULTI_ARRAY_LIST',
            'MULTAR_LIST_CURSOR',
            'MEMORY',
            'MEM_INFO',
            'MEM_CONST',
            'MATH_CONST',
            'LIST',
            'LINKED_TREE_CURSOR',
            'LINKED_TREE',
            'LINKED_STACK',
            'LINKED_SET',
            'LINKED_QUEUE',
            'LINKED_PRIORITY_QUEUE',
            'LINKED_LIST_CURSOR',
            'LINKED_LIST',
            'LINKED_CURSOR_TREE',
            'LINKED_CIRCULAR',
            'LINKABLE',
            'LINEAR_ITERATOR',
            'LINEAR',
            'ITERATOR',
            'IO_MEDIUM',
            'INTERNAL',
            'INTEGER_REF',
            'INTEGER_INTERVAL',
            'INTEGER',
            'INFINITE',
            'INDEXABLE',
            'IDENTIFIED_CONTROLLER',
            'IDENTIFIED',
            'HIERARCHICAL',
            'HEAP_PRIORITY_QUEUE',
            'HASHABLE',
            'HASH_TABLE_CURSOR',
            'HASH_TABLE',
            'GENERAL',
            'GC_INFO',
            'FUNCTION',
            'FORMAT_INTEGER',
            'FORMAT_DOUBLE',
            'FIXED_TREE',
            'FIXED_LIST',
            'FIXED',
            'FINITE',
            'FILE_NAME',
            'FILE',
            'FIBONACCI',
            'EXECUTION_ENVIRONMENT',
            'EXCEPTIONS',
            'EXCEP_CONST',
            'DYNAMIC_TREE',
            'DYNAMIC_LIST',
            'DYNAMIC_CIRCULAR',
            'DYNAMIC_CHAIN',
            'DOUBLE_REF',
            'DOUBLE_MATH',
            'DOUBLE',
            'DISPENSER',
            'DIRECTORY_NAME',
            'DIRECTORY',
            'DECLARATOR',
            'DEBUG_OUTPUT',
            'CURSOR_TREE_ITERATOR',
            'CURSOR_TREE',
            'CURSOR_STRUCTURE',
            'CURSOR',
            'COUNTABLE_SEQUENCE',
            'COUNTABLE',
            'CONTAINER',
            'CONSOLE',
            'CONDITION_VARIABLE',
            'COMPARABLE_STRUCT',
            'COMPARABLE_SET',
            'COMPARABLE',
            'COMPACT_TREE_CURSOR',
            'COMPACT_CURSOR_TREE',
            'COLLECTION',
            'CIRCULAR_CURSOR',
            'CIRCULAR',
            'CHARACTER_REF',
            'CHARACTER',
            'CHAIN',
            'CELL',
            'BOX',
            'BOUNDED_STACK',
            'BOUNDED_QUEUE',
            'BOUNDED',
            'BOOLEAN_REF',
            'BOOLEAN',
            'BOOL_STRING',
            'BIT_REF',
            'BINARY_TREE',
            'BINARY_SEARCH_TREE_SET',
            'BINARY_SEARCH_TREE',
            'BILINEAR',
            'BI_LINKABLE',
            'BASIC_ROUTINES',
            'BAG',
            'ASCII',
            'ARRAYED_TREE',
            'ARRAYED_STACK',
            'ARRAYED_QUEUE',
            'ARRAYED_LIST_CURSOR',
            'ARRAYED_LIST',
            'ARRAYED_CIRCULAR',
            'ARRAY2',
            'ARRAY',
            'ARGUMENTS',
            'ANY',
            'ACTIVE'
            ),
        5 => array(
            'yes',
            'visible',
            'trace',
            'system',
            'root',
            'profile',
            'override_cluster',
            'object',
            'no',
            'multithreaded',
            'msil_generation_type',
            'line_generation',
            'library',
            'inlining_size',
            'inlining',
            'include_path',
            'il_verifiable',
            'exclude',
            'exception_trace',
            'dynamic_runtime',
            'dotnet_naming_convention',
            'disabled_debug',
            'default',
            'debug',
            'dead_code_removal',
            'console_application',
            'cluster',
            'cls_compliant',
            'check_vape',
            'assertion',
            'array_optimization',
            'all',
            'address_expression'
            ),
        ),
    'SYMBOLS' => array(
        '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', '|', ':',
        '(', ')', '{', '}', '[', ']', '#'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => true,
        5 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF; font-weight: bold;',
            2 => 'color: #0600FF; font-weight: bold;',
            3 => 'color: #800080;',
            4 => 'color: #800000',
            5 => 'color: #603000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000; font-style: italic;',
            'MULTI' => ''
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #005070; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #FF0000;'
            ),
        'STRINGS' => array(
            0 => 'color: #0080A0;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            1 => 'color: #000060;',
            2 => 'color: #000050;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #600000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => 'http://www.google.com/search?q=site%3Ahttp%3A%2F%2Fdocs.eiffel.com%2Feiffelstudio%2Flibraries+{FNAMEL}&btnI=I%27m+Feeling+Lucky',
        5 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/z80.php0000664000175000017500000001121212014173373013316 0ustar  benbebenbe 'ZiLOG Z80 Assembler',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /*CPU*/
        1 => array(
            'adc','add','and','bit','call','ccf','cp','cpd','cpdr','cpir','cpi',
            'cpl','daa','dec','di','djnz','ei','ex','exx','halt','im','in',
            'in0','inc','ind','indr','inir','ini','jp','jr','ld','ldd','lddr',
            'ldir','ldi','mlt','neg','nop','or','otdm','otdmr','otdr','otim',
            'otimr','otir','out','out0','outd','outi','pop','push','res','ret',
            'reti','retn','rl','rla','rlc','rlca','rld','rr','rra','rrc','rrca',
            'rrd','rst','sbc','scf','set','sla','sl1','sll','slp','sra','srl',
            'sub','tst','tstio','xor'
            ),
        /*registers*/
        2 => array(
            'a','b','c','d','e','h','l',
            'af','bc','de','hl','ix','iy','sp',
            'af\'','ixh','ixl','iyh','iyl'
            ),
        /*Directive*/
        3 => array(
            '#define','#endif','#else','#ifdef','#ifndef','#include','#undef',
            '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ'
            ),
        ),
    'SYMBOLS' => array(
        '[', ']', '(', ')', '?', '+', '-', '*', '/', '%', '$'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff; font-weight:bold;',
            2 => 'color: #0000ff;',
            3 => 'color: #46aa03; font-weight:bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #0000ff;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #dd22dd;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            0 => 'color: #22bbff;',
            1 => 'color: #22bbff;',
            2 => 'color: #993333;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Hex numbers
        0 => '0[0-9a-fA-F]{1,32}[hH]',
        //Binary numbers
        1 => '\%[01]{1,64}|[01]{1,64}[bB]?(?![^<]*>)',
        //Labels
        2 => '^[_a-zA-Z][_a-zA-Z0-9]?\:'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8
);

?>geshi/geshi/m68k.php0000664000175000017500000001107612014173407013470 0ustar  benbebenbe 'Motorola 68000 Assembler',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /*CPU*/
        1 => array(
            'adc','add','ais','aix','and','asl','asr','bcc','bclr','bcs','beq',
            'bge','bgt','bhcc','bhcs','bhi','bhs','bih','bil','bit','ble','blo',
            'bls','blt','bmc','bmi','bms','bne','bpl','bra','brclr','brn',
            'brset','bset','bsr','cbeq','clc','cli','clr','cmp','com','cphx',
            'cpx','daa','dbnz','dec','div','eor','inc','jmp','jsr','lda','ldhx',
            'ldx','lsl','lsr','mov','mul','neg','nop','nsa','ora','psha','pshh',
            'pshx','pula','pulh','pulx','rol','ror','rsp','rti','rts','sbc',
            'sec','sei','sta','sthx','stop','stx','sub','swi','tap','tax','tpa',
            'tst','tsx','txa','txs','wait'
        ),
        /*registers*/
        2 => array(
            'a','h','x',
            'hx','sp'
            ),
        /*Directive*/
        3 => array(
            '#define','#endif','#else','#ifdef','#ifndef','#include','#undef',
            '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ'
            ),
        ),
    'SYMBOLS' => array(
        ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff; font-weight:bold;',
            2 => 'color: #0000ff;',
            3 => 'color: #46aa03; font-weight:bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #0000ff;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #dd22dd;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            0 => 'color: #22bbff;',
            1 => 'color: #22bbff;',
            2 => 'color: #993333;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Hex numbers
        0 => '#?0[0-9a-fA-F]{1,32}[hH]',
        //Binary numbers
        1 => '\%[01]{1,64}[bB]',
        //Labels
        2 => '^[_a-zA-Z][_a-zA-Z0-9]*?\:'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8
);

?>
geshi/geshi/caddcl.php0000664000175000017500000001072412014173437014117 0ustar  benbebenbe 'CAD DCL',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'boxed_column','boxed_radio_column','boxed_radio_row','boxed_row',
            'column','concatenation','button','dialog','edit_box','image','image_button',
            'errtile','list_box','ok_cancel','ok_cancel_help','ok_cancel_help_errtile',
            'ok_cancel_help_info','ok_only','paragraph','popup_list','radio_button',
            'radio_column','radio_row','row','slider','spacer','spacer_0','spacer_1','text',
            'text_part','toggle',
            'action','alignment','allow_accept','aspect_ratio','big_increment',
            'children_alignment','children_fixed_height',
            'children_fixed_width','color',
            'edit_limit','edit_width','fixed_height','fixed_width',
            'height','initial_focus','is_cancel','is_default',
            'is_enabled','is_tab_stop','is-bold','key','label','layout','list',
            'max_value','min_value','mnemonic','multiple_select','password_char',
            'small_increment','tabs','tab_truncate','value','width',
            'false','true','left','right','centered','top','bottom',
            'dialog_line','dialog_foreground','dialog_background',
            'graphics_background','black','red','yellow','green','cyan',
            'blue','magenta','whitegraphics_foreground',
            'horizontal','vertical'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/winbatch.php0000664000175000017500000010553112014173411014475 0ustar  benbebenbe 'Winbatch',
    'COMMENT_SINGLE' => array(1 => ';', 2 => ':'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"', '`'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'While', 'To', 'Then', 'Switch', 'Select', 'Return', 'Next', 'IntControl', 'Include', 'In', 'If',
            'Goto', 'GoSub', 'ForEach', 'For', 'Exit', 'Execute', 'ErrorMode', 'EndWhile', 'EndSwitch', '#EndSubRoutine',
            'EndSelect', 'EndIf', '#EEndFunction', 'EndFor', 'End', 'Else', 'DropWild', 'Drop', '#DefineSubRoutine',
            '#DefineFunction', 'Debug', 'Continue', 'Case', 'CallExt', 'Call', 'By', 'BreakPoint', 'Break'
            ),
        2 => array(
            'ZOOMED', 'YES', 'WORD4', 'WORD2', 'WORD1', 'WHOLESECTION', 'WAIT', 'UNSORTED', 'UNCHECK', 'TRUE', 'TILE',
            'TAB', 'STRING', 'STACK', 'SPC2NET', 'SORTED', 'SOK', 'SNET2PC', 'SINGLE', 'SHIFT', 'SERVER', 'SERRWINSOCK',
            'SERRVOICE', 'SERRSOCKET', 'SERRSERVICE', 'SERRSELECT', 'SERRPARAM', 'SERROUTOFMEM', 'SERRNOTFOUND', 'SERRNOCONN',
            'SERRNOANSWER', 'SERRMUSTWAIT', 'SERRIPADDR', 'SERRHOSTNAME', 'SERRFAILURE', 'SERRBUSY', 'SCROLLLOCK', 'SCANCEL',
            'SAVE', 'SALREADY', 'ROWS', 'REGUSERS', 'REGROOT', 'REGMACHINE', 'REGCURRENT', 'REGCLASSES', 'RDBLCLICK', 'RCLICK',
            'RBUTTON', 'RAD2DEG', 'QSUCCESSINFO', 'QSUCCESS', 'QSTILLEX', 'QROLLBACK', 'QNULL', 'QNODATA', 'QNEXT', 'QNEEDDATA',
            'QFIRST', 'QCOMMIT', 'QBADHANDLE', 'PRINTER', 'PLANCKJOULES', 'PLANCKERGS', 'PI', 'PARSEONLY', 'PARSEC', 'P3ERRREPLY',
            'OPEN', 'ON', 'OFF', 'NUMLOCK', 'NOWAIT', 'NOTIFY', 'NORMAL', 'NORESIZE', 'NONE', 'NO', 'NCSAFORMAT', 'MULTIPLE',
            'MSFORMAT', 'MPLAYRDBLCK', 'MPLAYRCLK', 'MPLAYRBUTTON', 'MPLAYMDBLCK', 'MPLAYMCLK', 'MPLAYMBUTTON', 'MPLAYLDBLCK',
            'MPLAYLCLK', 'MPLAYLBUTTON', 'MINOR', 'MDBLCLICK', 'MCLICK', 'MBYESNO', 'MBUTTON', 'MBOKCANCEL', 'MAJOR', 'MAGFIELD',
            'LOCALGROUP', 'LIGHTMTPS', 'LIGHTMPS', 'LF', 'LDBLCLICK', 'LCLICK', 'LBUTTON', 'LAFFDBERROR', 'ICON', 'HTTPS', 'HTTP',
            'HNOHEADER', 'HMETHODPOST', 'HMETHODGET', 'HIDDEN', 'HHEADERONLY', 'HHEADER', 'GRAVITATION', 'GOPHER', 'GOLDENRATIO',
            'GMTSEC', 'GLOBALGROUP', 'GFTSEC', 'GETPROCID', 'GETEXITCODE', 'FWDSCAN', 'FTPPASSIVE', 'FTP', 'FLOAT8', 'FARADAY',
            'FALSE', 'EXTENDED', 'EULERS', 'ENABLE', 'ELECTRIC', 'DRIVE', 'DISABLE', 'DESCENDING', 'DEG2RAD', 'DEFAULT', 'CTRL',
            'CRLF', 'CR', 'COMMONFORMAT', 'COLUMNS', 'CHECK', 'CAPSLOCK', 'CANCEL', 'BOLTZMANN', 'BACKSCAN', 'AVOGADRO', 'ATTR_X',
            'ATTR_T', 'ATTR_SY', 'ATTR_SH', 'ATTR_RO', 'ATTR_RI', 'ATTR_P', 'ATTR_IC', 'ATTR_H', 'ATTR_DM', 'ATTR_DI', 'ATTR_DC',
            'ATTR_CI', 'ATTR_A', 'ASCENDING', 'ARRANGE', 'AMC', 'ACC_WRITE', 'ACC_READ_NT', 'ACC_READ_95', 'ACC_READ', 'ACC_PRINT_NT',
            'ACC_PMANG_NT', 'ACC_PFULL_NT', 'ACC_LIST', 'ACC_FULL_NT', 'ACC_FULL_95', 'ACC_DELETE', 'ACC_CREATE', 'ACC_CONTROL',
            'ACC_CHNG_NT', 'ACC_ATTRIB', 'ABOVEICONS'
            ),
        3 => array(
            'Yields', 'Yield', 'WinZoom', 'WinWaitExist', 'WinWaitClose', 'WinWaitChild', 'WinVersion', 'WinTitle', 'WinSysInfo',
            'WinState', 'WinShow', 'WinResources', 'WinPositionChild', 'WinPosition', 'WinPlaceSet', 'WinPlaceGet', 'WinPlaceChild',
            'WinPlace', 'WinParmSet', 'WinParmGet', 'WinName', 'WinMetrics', 'WinItemProcId', 'WinItemNameId', 'WinItemizeEx',
            'WinItemize', 'WinItemChild', 'WinIsDos', 'WinIdGet', 'WinIconize', 'WinHide', 'WinHelp', 'WinGetactive', 'WinExistchild',
            'WinExist', 'WinExename', 'WinConfig', 'WinClosenot', 'WinClose', 'WinArrange', 'WinActivechild', 'WinActivchild',
            'WinActivate', 'WebVerifyCard', 'WebSetTimeout', 'WebParamSize', 'WebParamNames', 'WebParamFile', 'WebParamData',
            'WebParamBuf', 'WebOutFile', 'WebOutBinary', 'WebOut', 'WebDumpError', 'WebDatData', 'WebCounter', 'WebConSize', 'WebConData',
            'WebConBuf', 'WebCmdData', 'WebBaseConv', 'Wallpaper', 'WaitForKeyEX', 'WaitForKey', 'VersionDLL', 'Version', 'VarType',
            'TimeYmdHms', 'TimeWait', 'TimeSubtract', 'TimeJulToYmd', 'TimeJulianDay', 'TimeDiffSecs', 'TimeDiffDays', 'TimeDiff', 'TimeDelay',
            'TimeDate', 'TimeAdd', 'TextSelect', 'TextBoxSort', 'TextBox', 'Terminate', 'Tanh', 'Tan', 'SysParamInfo', 'SvcWaitForCmd',
            'SvcSetState', 'SvcSetAccept', 'StrUpper', 'StrTrim', 'StrSubWild', 'StrSub', 'StrScan', 'StrReplace', 'StrLower', 'StrLenWild',
            'StrLen', 'StrIndexWild', 'StrIndexNC', 'StrIndex', 'StriCmp', 'StrFixLeft', 'StrFixCharsL', 'StrFixChars', 'StrFix', 'StrFill',
            'StrCnt', 'StrCmp', 'StrClean', 'StrCharCount', 'StrCat', 'StrByteCount', 'Sqrt', 'SoundVolume', 'Sounds', 'Snapshot', 'Sinh', 'Sin',
            'ShortCutMake', 'ShortCutInfo', 'ShortCutExtra', 'ShortCutEdit', 'ShortCutDir', 'ShellExecute', 'SendMenusToEx', 'SendMenusTo',
            'SendKeysTo', 'SendKeysChild', 'SendKey', 'RunZoomWait', 'RunZoom', 'RunWithLogon', 'RunWait', 'RunShell', 'RunIconWait',
            'RunIcon', 'RunHideWait', 'RunHide', 'RunExit', 'RunEnviron', 'Run', 'RtStatus', 'Reload', 'RegUnloadHive', 'RegSetValue',
            'RegSetQword', 'RegSetMulSz', 'RegSetExpSz', 'RegSetEx', 'RegSetDword', 'RegSetBin', 'RegQueryValue', 'RegQueryStr',
            'RegQueryQword', 'RegQueryMulSz', 'RegQueryKeys', 'RegQueryKeyLastWriteTime', 'RegQueryKey', 'RegQueryItem', 'RegQueryExpSz',
            'RegQueryEx', 'RegQueryDword', 'RegQueryBin', 'RegOpenKeyEx', 'RegOpenKey', 'RegOpenFlags', 'RegLoadHive', 'RegExistValue',
            'RegExistKey', 'RegEntryType', 'RegDelValue', 'RegDeleteKey', 'RegCreateKey', 'RegConnect', 'RegCloseKey', 'RegApp', 'Random',
            'PtrPersistent', 'PtrGlobalDefine', 'PtrGlobal', 'Print', 'PlayWaveform', 'PlayMidi', 'PlayMedia', 'PipeServerWrite', 'PipeServerRead',
            'PipeServerCreate', 'PipeServerClose', 'PipeInfo', 'PipeClientSendRecvData', 'PipeClientOpen', 'PipeClientClose', 'Pause',
            'ParseData', 'ObjectTypeGet', 'ObjectType', 'ObjectOpen', 'ObjectGet', 'ObjectEventRemove', 'ObjectEventAdd',
            'ObjectCreate', 'ObjectConstToArray', 'ObjectConstantsGet', 'ObjectCollectionOpen', 'ObjectCollectionNext',
            'ObjectCollectionClose', 'ObjectClose', 'ObjectAccess', 'Num2Char', 'NetInfo', 'MsgTextGet', 'MousePlay', 'MouseMove', 'MouseInfo',
            'MouseDrag', 'MouseCoords', 'MouseClickBtn', 'MouseClick', 'mod', 'Min', 'Message', 'Max', 'Loge', 'LogDisk', 'Log10', 'LastError',
            'KeyToggleSet', 'KeyToggleGet', 'ItemSortNc', 'ItemSort', 'ItemSelect', 'ItemReplace', 'ItemRemove', 'ItemLocate', 'ItemInsert',
            'ItemExtractCSV', 'ItemExtract', 'ItemCountCSV', 'ItemCount', 'IsNumber', 'IsLicensed', 'IsKeyDown', 'IsInt', 'IsFloat', 'IsDefined',
            'Int', 'InstallFile', 'IniWritePvt', 'IniWrite', 'IniReadPvt', 'IniRead', 'IniItemizePvt', 'IniItemize', 'IniDeletePvt', 'IniDelete',
            'IgnoreInput', 'IconReplace', 'IconInfo', 'IconExtract', 'IconArrange', 'GetTickCount', 'GetObject', 'GetExactTime', 'Floor',
            'FindWindow', 'FileYmdHms', 'FileWrite', 'FileVerInfo', 'FileTimeTouch', 'FileTimeSetEx', 'FileTimeSet', 'FileTimeGetEx',
            'FileTimeGet', 'FileTimeCode', 'FileSizeEx', 'FileSize', 'FileRoot', 'FileRename', 'FileRead', 'FilePutW', 'FilePut', 'FilePath',
            'FileOpen', 'FileNameShort', 'FileNameLong', 'FileNameEval2', 'FileNameEval1', 'FileMoveAttr', 'FileMove', 'FileMapName',
            'FileLocate', 'FileItemPath', 'FileItemize', 'FileInfoToArray', 'FileGetW', 'FileGet', 'FileFullname', 'FileExtension', 'FileExist',
            'FileDelete', 'FileCreateTemp', 'FileCopyAttr', 'FileCopy', 'FileCompare', 'FileClose', 'FileBaseName', 'FileAttrSetEx',
            'FileAttrSet', 'FileAttrGetEx', 'FileAttrGet', 'FileAppend', 'Fabs', 'ExtractAttachedFile', 'Exp', 'ExeTypeInfo', 'Exclusive',
            'EnvItemize', 'EnvironSet', 'Environment', 'EndSession', 'DosVersion', 'DllLoad', 'DllLastError', 'DllHwnd', 'DllHinst',
            'DllFree', 'DllCallCDecl', 'DllCall', 'Display', 'DiskVolinfo', 'DiskSize', 'DiskScan', 'DiskInfo', 'DiskFree', 'DiskExist',
            'DirWindows', 'DirSize', 'DirScript', 'DirRename', 'DirRemove', 'DirMake', 'DirItemize', 'DirInfoToArray', 'DirHome', 'DirGet',
            'DirExist', 'DirChange', 'DirAttrSetEx', 'DirAttrSet', 'DirAttrGetEx', 'DirAttrGet', 'DialogProcOptions', 'DialogObject',
            'DialogControlState', 'DialogControlSet', 'DialogControlGet', 'DialogBox', 'Dialog', 'Delay', 'Decimals', 'DebugTrace',
            'DebugData', 'DDETimeout', 'DDETerminate', 'DDERequest', 'DDEPoke', 'DDEInitiate', 'DDEExecute', 'DateTime', 'CurrFilepath',
            'CurrentPath', 'CurrentFile', 'CreateObject', 'Cosh', 'Cos', 'ClipPut', 'ClipHasFormat', 'ClipGetEx', 'ClipGet', 'ClipAppend',
            'ChrUnicodeToString', 'ChrUnicodeToHex', 'ChrStringToUnicode', 'ChrSetCodepage', 'ChrHexToUnicode', 'ChrGetCodepage',
            'Char2Num', 'Ceiling', 'ButtonNames', 'BoxUpdates', 'BoxTitle', 'BoxTextFont', 'BoxTextColor', 'BoxText', 'BoxShut', 'BoxPen',
            'BoxOpen', 'BoxNew', 'BoxMapmode', 'BoxesUp', 'BoxDrawText', 'BoxDrawRect', 'BoxDrawLine', 'BoxDrawCircle', 'BoxDestroy',
            'BoxDataTag', 'BoxDataClear', 'BoxColor', 'BoxCaption', 'BoxButtonWait', 'BoxButtonStat', 'BoxButtonKill', 'BoxButtonDraw',
            'BoxBitMap', 'BinaryXor', 'BinaryXlate', 'BinaryWriteEx', 'BinaryWrite', 'BinaryTagRepl', 'BinaryTagLen', 'BinaryTagInit',
            'BinaryTagIndex', 'BinaryTagFind', 'BinaryTagExtr', 'BinaryStrCnt', 'BinarySort', 'BinaryReplace', 'BinaryReadEx',
            'BinaryRead', 'BinaryPokeStrW', 'BinaryPokeStr', 'BinaryPokeHex', 'BinaryPokeFlt', 'BinaryPoke4', 'BinaryPoke2', 'BinaryPoke',
            'BinaryPeekStrW', 'BinaryPeekStr', 'BinaryPeekHex', 'BinaryPeekFlt', 'BinaryPeek4', 'BinaryPeek2', 'BinaryPeek', 'BinaryOr',
            'BinaryOleType', 'BinaryIndexNc', 'BinaryIndexEx', 'BinaryIndexBin', 'BinaryIndex', 'BinaryIncrFlt', 'BinaryIncr4',
            'BinaryIncr2', 'BinaryIncr', 'BinaryHashRec', 'BinaryFree', 'BinaryEodSet', 'BinaryEodGet', 'BinaryCopy', 'BinaryConvert',
            'BinaryCompare', 'BinaryClipPut', 'BinaryClipGet', 'BinaryChecksum', 'BinaryBufInfo', 'BinaryAnd', 'BinaryAllocArray',
            'BinaryAlloc', 'Beep', 'Average', 'Atan', 'AskYesNo', 'AskTextbox', 'AskPassword', 'AskLine', 'AskItemlist', 'AskFont',
            'AskFiletext', 'AskFilename', 'AskDirectory', 'AskColor', 'Asin', 'ArrInitialize', 'ArrInfo', 'ArrDimension',
            'Arrayize', 'ArrayFilePutCSV', 'ArrayFilePut', 'ArrayFileGetCSV', 'ArrayFileGet', 'AppWaitClose', 'AppExist', 'AddExtender',
            'Acos', 'Abs', 'About'
            ),
        4 => array(
            'zZipFiles', 'zVersionInfo', 'zVersion', 'zUnZipFiles', 'zSetPortBit', 'zRPortShift', 'zPortOut', 'zPortIn', 'zNotPortBit',
            'zLPortShift', 'zGetPortBit', 'zClrPortBit', 'xVerifyCCard', 'xSendMessage', 'xMessageBox', 'xMemCompact', 'xHex', 'xGetElapsed',
            'xGetChildHwnd', 'xExtenderInfo', 'xEnumStreams', 'xEjectMedia', 'xDriveReady', 'xDiskLabelGet', 'xCursorSet', 'xBaseConvert',
            'wxPing', 'wxParmSet', 'wxParmGet', 'wxMsgSetHdr', 'wxMsgGetHdr', 'wxMsgGetBody', 'wxHost2Addr', 'wxGetLastErr', 'wxGetInfo',
            'wxGetErrDesc', 'wxAddr2Host', 'wtsWaitSystemEvent', 'wtsVersion', 'wtsTerminateProcess', 'wtsShutdownSystem', 'wtsSendMessage',
            'wtsQuerySessionInfo', 'wtsProcIdToSessId', 'wtsLogoffSession', 'wtsLastErrMsg', 'wtsIsTSEnabled', 'wtsIsCitrixEnabled',
            'wtsGetActiveConsoleSessId', 'wtsEnumSessions', 'wtsEnumProcesses', 'wtsDisconnectSession', 'wnWrkGroups', 'wnVersion', 'wntWtsUserSet',
            'wntWtsUserGet', 'wntVersion', 'wntUserSidChk', 'wntUserSetDat', 'wntUserRename', 'wntUserProps', 'wntUserList', 'wntUserInfo',
            'wntUserGetDat', 'wntUserFiles', 'wntUserExist', 'wntUserDel', 'wntUserAddDat', 'wntUserAdd', 'wntSvcStatus', 'wntSvcStart',
            'wntSvcList', 'wntSvcDelete', 'wntSvcCreate', 'wntSvcControl', 'wntSvcCfgSet', 'wntSvcCfgGet', 'wntShutdown', 'wntShareUsers',
            'wntShareSet', 'wntShareList', 'wntShareInfo', 'wntShareDel', 'wntShareAdd', 'wntServiceInf', 'wntServiceAt', 'wntServerType',
            'wntServerList', 'wntServerInfo', 'wntSecurityGet', 'wntRunAsUser', 'wntResources2', 'wntResources', 'wntRemoteTime', 'wntRasUserSet',
            'wntRasUserGet', 'wntProfileInfo', 'wntProfileDel', 'wntPrivUsers', 'wntPrivList', 'wntPrivGet', 'wntPrivDel', 'wntPrivAdd',
            'wntOwnerSet', 'wntOwnerGet', 'wntMemberSet', 'wntMemberLst2', 'wntMemberList', 'wntMemberGrps', 'wntMemberGet', 'wntMemberDel',
            'wntLsaPolSet', 'wntLsaPolGet', 'wntListGroups', 'wntLastErrMsg', 'wntGroupRen', 'wntGroupInfo', 'wntGroupEdit', 'wntGroupDel',
            'wntGroupAdd', 'wntGetUser', 'wntGetDrive', 'wntGetDc', 'wntGetCon', 'wntFileUsers', 'wntFilesOpen', 'wntFileClose', 'wntEventWrite',
            'wntEventLog', 'wntDomainSync', 'wntDirDialog', 'wntDfsList', 'wntDfsGetInfo', 'wntCurrUsers', 'wntChgPswd', 'wntCancelCon',
            'wntAuditMod', 'wntAuditList', 'wntAuditGet', 'wntAuditDel', 'wntAuditAdd2', 'wntAuditAdd', 'wntAddPrinter', 'wntAddDrive',
            'wntAcctPolSet', 'wntAcctPolGet', 'wntAcctList', 'wntAcctInfo', 'wntAccessMod', 'wntAccessList', 'wntAccessGet', 'wntAccessDel',
            'wntaccessadd2', 'wntAccessAdd', 'wnShares', 'wnSharePath', 'wnShareName', 'wnShareCnt', 'wnServers', 'wnRestore', 'wnNetNames',
            'wnGetUser', 'wnGetCon', 'wnGetCaps', 'wnDlgShare', 'wnDlgNoShare', 'wnDlgDiscon', 'wnDlgCon4', 'wnDlgCon3', 'wnDlgCon2', 'wnDlgCon',
            'wnDlgBrowse', 'wnDialog', 'wnCmptrInfo', 'wnCancelCon', 'wnAddCon', 'WaitSRQ', 'w9xVersion', 'w9xUserSetDat', 'w9xUserRename',
            'w9xUserprops', 'w9xUserList', 'w9xUserinfo', 'w9xUserGetDat', 'w9xUserExist', 'w9xUserDel', 'w9xUserAddDat', 'w9xUserAdd', 'w9xShareSet',
            'w9xShareInfo', 'w9xShareDel', 'w9xShareAdd', 'w9xServiceAt', 'w9xServerList', 'w9xRemoteTime', 'w9xOwnerGet', 'w9xMemberSet',
            'w9xMemberList', 'w9xMemberGrps', 'w9xMemberGet', 'w9xMemberDel', 'w9xListGroups', 'w9xGroupInfo', 'w9xGroupDel', 'w9xGroupAdd',
            'w9xGetDC', 'w9xFileUsers', 'w9xAccessList', 'w9xAccessGet', 'w9xAccessDel', 'w9xAccessAdd', 'w95Version', 'w95ShareUsers',
            'w95ShareSet', 'w95ShareList', 'w95ShareInfo', 'w95ShareDel', 'w95ShareAdd', 'w95ServiceInf', 'w95ServiceAt', 'w95ServerType',
            'w95ServerInfo', 'w95Resources', 'w95GetUser', 'w95GetDrive', 'w95GetCon', 'w95FileUsers', 'w95FileClose', 'w95DirDialog',
            'w95CancelCon', 'w95AddPrinter', 'w95AddDrive', 'w95AccessDel', 'w95AccessAdd', 'w3Version', 'w3PrtBrowse', 'w3NetGetUser',
            'w3NetDialog', 'w3GetCon', 'w3GetCaps', 'w3DirBrowse', 'w3CancelCon', 'w3AddCon', 'urlGetScheme', 'urlEncode', 'urlDecode',
            'tVersion', 'tSetPriority', 'TriggerList', 'Trigger', 'tRemoteConn', 'tOpenProc', 'tListProc', 'tListMod', 'tKillProc', 'tGetProcInfo',
            'tGetPriority', 'tGetModInfo', 'tGetLastError', 'tGetData', 'TestSys', 'TestSRQ', 'tCountProc', 'tCompatible', 'tCloseProc',
            'tBrowseCntrs', 'sSendString', 'sSendNum', 'sSendLine', 'sSendBinary', 'sRecvNum', 'sRecvLine', 'sRecvBinary', 'SrchVersion',
            'SrchNext', 'SrchInit', 'SrchFree', 'sOpen', 'sOK2Send', 'sOK2Recv', 'smtpSendText', 'smtpSendFile', 'sListen', 'SetRWLS',
            'SendSetup', 'SendLLO', 'SendList', 'SendIFC', 'SendDataBytes', 'SendCmds', 'Send', 'sConnect', 'sClose', 'SByteOrder32',
            'sByteOrder16', 'sAccept', 'rRegVersion', 'rRegSearch', 'ResetSys', 'ReceiveSetup', 'Receive', 'ReadStsByte', 'RcvRespMsg',
            'RasVersion', 'RasTypeSize', 'RasRename', 'RasNumCons', 'RasNameValid', 'RasListActCon', 'RasItemize', 'RasHangUp', 'RasGetLastErr',
            'RasGetConStat', 'RasEntrySet', 'RasEntryInfo', 'RasEntryExist', 'RasEntryDel', 'RasEntryAdd', 'RasDialInfo', 'RasDial',
            'RasCopy', 'RasConStatus', 'qVersionInfo', 'qTransact', 'qTables', 'qSpecial', 'qSetConnOpt', 'qNumRsltCol', 'qNativeSql', 'qLastCode',
            'qGetData', 'qFreeStmt', 'qFreeEnv', 'qFreeConnect', 'qFetch', 'qExecDirect', 'qError', 'qDriverList', 'qDriverCon', 'qDisconnect',
            'qDataSources', 'qConnect', 'qConfigError', 'qConfigData', 'qColumns', 'qBindCol', 'qAllocStmt', 'qAllocEnv', 'qAllocConnect',
            'pWaitFor', 'pVersionInfo', 'pTimeout', 'pSetPublish', 'pSetPrtInfo', 'pSetPrtAttrib', 'pSetDefPrtEx', 'pSetDefPrt', 'pSendFile',
            'pRecvFile', 'pPutString', 'pPutLine', 'pPutChar', 'pPutByte', 'pPutBinary', 'PPollUnconfig', 'PPollConfig', 'PPoll', 'pPeekChar',
            'pPeekByte', 'pPaperSizes', 'pPaperBins', 'pModemSReg', 'pModemParams', 'pModemInit', 'pModemHangUp', 'pModemDial', 'pModemControl',
            'pModemConnect', 'pModemCommand', 'pModemAnsRing', 'pModemAnsCall', 'pMediaTypes', 'pGetString', 'pGetPublish', 'pGetPrtList',
            'pGetPrtInfo', 'pGetPrtAttrib', 'pGetLine', 'pGetLastError', 'pGetErrorMsg', 'pGetErrorCode', 'pGetDefPrtInf', 'pGetChar',
            'pGetByte', 'pGetBinary', 'pDelPrtConn', 'pDelPrinter', 'pComOpen', 'pComModify', 'pComInfo', 'pComControl', 'pComClose',
            'pCheckSum', 'pCheckBinary', 'pCaptureOn', 'pCaptureOff', 'pCaptureLog', 'PassControl', 'pAddPrtConn', 'pAddPrinter', 'p3RecvText',
            'p3RecvFile', 'p3Peek', 'p3Open', 'p3GetReply', 'p3Delete', 'p3Count', 'p3Close', 'nwWhoAmI', 'nwVfyPassword', 'nwVersion',
            'nwSrvShutdown', 'nwSrvNLMMgr', 'nwSrvGenGUID', 'nwSrvExecNCF', 'nwSetVolLimit', 'nwSetSrvParam', 'nwSetSrvInfo', 'nwSetPrimServ',
            'nwSetPassword', 'nwSetOptions', 'nwSetFileInfo', 'nwSetDirLimit', 'nwSetDirInfo', 'nwSetContext', 'nwSetBcastMode', 'nwServerList',
            'nwSendBcastMsg', 'nwSearchObjects', 'nwSearchFilter', 'nwRenameObject', 'nwRemoveObject', 'nwReceiveBcastMsg', 'nwNameConvert',
            'nwMutateObject', 'nwMoveObject', 'nwModifyObject', 'nwMapDelete', 'nwMap', 'nwLogout', 'nwLogin', 'nwListUserGroups',
            'nwListObjects', 'nwListGroupMembers', 'nwLastErrMsg', 'nwIsUserInGroup', 'nwGetVolLimit', 'nwGetSrvStats', 'nwGetSrvParam',
            'nwGetSrvInfo', 'nwGetSrvCfg', 'nwGetOptions', 'nwGetObjValue', 'nwGetObjInfo', 'nwGetNLMInfo', 'nwGetMapped', 'nwGetFileInfo',
            'nwGetDirLimit', 'nwGetDirInfo', 'nwGetContext', 'nwGetConnInfo', 'nwGetCapture', 'nwGetBcastMode', 'nwGetAttrInfo',
            'nwDriveStatus', 'nwDrivePath', 'nwDetachFromServer', 'nwDelUserFromGroup', 'nwDelConnNum', 'nwCompareObject', 'nwClientInfo',
            'nwChgPassword', 'nwAttachToServer', 'nwAddUserToGroup', 'nwAddObject', 'netVersion', 'netResources', 'netGetUser', 'netGetCon',
            'netDirDialog', 'netCancelCon', 'netAddPrinter', 'netAddDrive', 'n4Version', 'n4UserGroups', 'n4UserGroupEx', 'n4SetPrimServ',
            'n4SetOptions', 'n4SetContextG', 'n4SetContext', 'n4ServerList', 'n4ServerInfo', 'n4ObjSearch', 'n4ObjRename', 'n4ObjOptions',
            'n4ObjMove', 'n4ObjGetVal', 'n4ObjectProps', 'n4ObjectList', 'n4ObjectInfo', 'n4ObjDelete', 'n4NameConvert', 'n4MsgsEndAll',
            'n4MsgsEnd', 'n4MemberSet', 'n4MemberGet', 'n4MemberDel', 'n4MapRoot', 'n4MapDir', 'n4MapDelete', 'n4Map', 'n4LogoutTree',
            'n4Logout', 'n4Login', 'n4GetUserName', 'n4GetUserId', 'n4GetUser', 'n4GetNetAddr', 'n4GetMapped', 'n4GetContext',
            'n4GetConnNum', 'n4FileUsers', 'n4FileTimeGet', 'n4FileAttrSet', 'n4FileAttrGet', 'n4DriveStatus', 'n4DrivePath', 'n4DirTimeGet',
            'n4DirAttrSet', 'n4DirAttrGet', 'n4Detach', 'n4ChgPassword', 'n4CapturePrt', 'n4CaptureGet', 'n4CaptureEnd', 'n4Attach',
            'n3Version', 'n3UserGroups', 'n3ServerList', 'n3ServerInfo', 'n3MsgsEndAll', 'n3MsgsEnd', 'n3MemberSet', 'n3MemberGet',
            'n3MemberDel', 'n3Maproot', 'n3Mapdir', 'n3Mapdelete', 'n3Map', 'n3Logout', 'n3GetUserId', 'n3GetUser', 'n3GetNetAddr',
            'n3GetMapped', 'n3GetConnNum', 'n3FileTimeGet', 'n3FileAttrSet', 'n3FileAttrGet', 'n3DriveStatus', 'n3DrivePath',
            'n3DirTimeGet', 'n3DirAttrSet', 'n3DirAttrGet', 'n3Detach', 'n3ChgPassword', 'n3CapturePrt', 'n3CaptureGet',
            'n3CaptureEnd', 'n3Attach', 'mVersion', 'mSyncMail', 'mSendMailEx', 'mSendMail', 'mrecvmail', 'mReadNextMsg', 'mLogOn',
            'mLogOff', 'mFindNext', 'mError', 'mCompatible', 'kVerInfo', 'kStatusInfo', 'kSendText', 'kSendFile', 'kManageImap4',
            'kInit', 'kGetMail', 'kExtra', 'kDest', 'kDeletePop3', 'iWriteDataBuf', 'iWriteData', 'iVersion', 'IUrlOpen', 'iUrlEncode',
            'iUrlDecode', 'iReadDataBuf', 'iReadData', 'ipVersion', 'ipPing', 'iPing', 'ipHost2Addr', 'ipGetLastErr', 'ipGetAddress',
            'iParseURL', 'ipAddr2Host', 'iOptionSet', 'iOptionGet', 'ImgWave', 'ImgVersion', 'ImgUnsharpMask', 'ImgThreshold', 'ImgSwirl',
            'ImgSpread', 'ImgSolarize', 'ImgShear', 'ImgSharpen', 'ImgShade', 'ImgScale', 'ImgSample', 'ImgRotate', 'ImgResize',
            'ImgReduceNoise', 'ImgRaise', 'ImgOilPaint', 'ImgNormalize', 'ImgNegate', 'ImgMotionBlur', 'ImgModulate', 'ImgMinify',
            'ImgMedianFilter', 'ImgMagnify', 'ImgLevel', 'ImgIsValid', 'ImgIsPalette', 'ImgIsMono', 'ImgIsGray', 'ImgInfo', 'ImgImplode',
            'ImgGetImageType', 'ImgGetColorCount', 'ImgGaussianBlur', 'ImgGamma', 'ImgFrame', 'ImgFlop', 'ImgFlip', 'ImgEqualize',
            'ImgEnhance', 'ImgEmboss', 'ImgCrop', 'ImgConvert', 'ImgContrast', 'ImgCompare', 'ImgColorize', 'ImgChop', 'ImgCharcoal',
            'ImgBorder', 'ImgBlur', 'ImgAddNoise', 'iLocFindNext', 'iLocFindInit', 'iHttpOpen', 'iHttpInit', 'iHttpHeaders', 'iHttpAccept',
            'iHostConnect', 'iHost2Addr', 'iGetResponse', 'iGetLastError', 'iGetIEVer', 'iGetConStatEx', 'iGetConState', 'iFtpRename',
            'iFtpPut', 'iFtpOpen', 'iFtpGet', 'iFtpFindNext', 'iFtpFindInit', 'iFtpDirRemove', 'iFtpDirMake', 'iFtpDirGet', 'iFtpDirChange',
            'iFtpDialog', 'iFtpDelete', 'iFtpCmd', 'iErrorDialog', 'iDialItemize', 'iDialHangUp', 'iDial', 'iCookieSet', 'iCookieGet',
            'iContentURL', 'iContentFile', 'iContentData', 'iClose', 'ibWrtf', 'ibWrt', 'ibWait', 'ibVersion', 'ibUnlock', 'ibTrg',
            'ibTmo', 'ibStop', 'ibStatus', 'ibSta', 'ibSre', 'ibSic', 'ibSad', 'ibRsv', 'ibRsp', 'ibRsc', 'ibRpp', 'ibRdf', 'ibRd',
            'ibPpc', 'ibPoke', 'ibPct', 'ibPad', 'ibOnl', 'ibMakeAddr', 'ibLock', 'ibLoc', 'ibLn', 'ibLines', 'ibIst', 'ibInit',
            'ibGts', 'ibGetSad', 'ibGetPad', 'ibFind', 'ibEvent', 'ibErr', 'ibEot', 'ibEos', 'iBegin', 'ibDma', 'ibDev', 'ibConfig',
            'ibCntl', 'ibCnt', 'ibCmda', 'ibCmd', 'ibClr', 'ibCac', 'ibBna', 'ibAsk', 'iAddr2Host', 'huge_Thousands', 'huge_Subtract',
            'huge_SetOptions', 'huge_Multiply', 'huge_GetLastError', 'huge_ExtenderInfo', 'huge_Divide', 'huge_Decimal', 'huge_Add',
            'httpStripHTML', 'httpRecvTextF', 'httpRecvText', 'httpRecvQuery', 'httpRecvQryF', 'httpRecvFile', 'httpGetServer',
            'httpGetQuery', 'httpGetPath', 'httpGetFile', 'httpGetDir', 'httpGetAnchor', 'httpFullPath', 'httpFirewall', 'httpAuth',
            'ftpRename', 'ftpQuote', 'ftpPut', 'ftpOpen', 'ftpList', 'ftpGet', 'ftpFirewall', 'ftpDelete', 'ftpClose', 'ftpChDir',
            'FindRQS', 'FindLstn', 'EnvSetVar', 'EnvPathDel', 'EnvPathChk', 'EnvPathAdd', 'EnvListVars', 'EnvGetVar', 'EnvGetInfo',
            'EnableRemote', 'EnableLocal', 'ehllapiWait', 'ehllapiVersion', 'ehllapiUninit', 'ehllapiStopKeyIntercept', 'ehllapiStopHostNotify',
            'ehllapiStopCloseIntercept', 'ehllapiStartKeyIntercept', 'ehllapiStartHostNotify', 'ehllapiStartCloseIntercept',
            'ehllapiSetWindowStatus', 'ehllapiSetSessionParams', 'ehllapiSetPSWindowName', 'ehllapiSetCursorLoc', 'ehllapiSendKey',
            'ehllapiSendFile', 'ehllapiSearchPS', 'ehllapiSearchField', 'ehllapiRunProfile', 'ehllapiResetSystem', 'ehllapiReserve',
            'ehllapiRelease', 'ehllapiReceiveFile', 'ehllapiQuerySystem', 'ehllapiQueryPSStatus', 'ehllapiQueryHostNotify',
            'ehllapiQueryFieldAttr', 'ehllapiQueryCursorLoc', 'ehllapiQueryCloseIntercept', 'ehllapiPostInterceptStatus',
            'ehllapiPause', 'ehllapiLastErrMsg', 'ehllapiInit', 'ehllapiGetWindowStatus', 'ehllapiGetPSHWND', 'ehllapiGetKey',
            'ehllapiFindFieldPos', 'ehllapiFindFieldLen', 'ehllapiDisconnectPS', 'ehllapiCvtRCToPos', 'ehllapiCvtPosToRC',
            'ehllapiCopyTextToPS', 'ehllapiCopyTextToField', 'ehllapiCopyTextFromPS', 'ehllapiCopyTextFromField', 'ehllapiCopyOIA',
            'ehllapiConnectPS', 'dunItemize', 'dunDisconnect', 'dunConnectEx', 'dunConnect', 'dsTestParam', 'dsSIDtoHexStr', 'dsSetSecProp',
            'dsSetProperty', 'dsSetPassword', 'dsSetObj', 'dsSetCredentX', 'dsSetCredent', 'dsRemFromGrp', 'dsRelSecObj', 'dsMoveObj',
            'dsIsObject', 'dsIsMemberGrp', 'dsIsContainer', 'dsGetUsersGrps', 'dsGetSecProp', 'dsGetPropName', 'dsGetProperty',
            'dsGetPrntPath', 'dsGetPrimGrp', 'dsGetMemGrp', 'dsGetInfo', 'dsGetClass', 'dsGetChldPath', 'dsFindPath', 'dsDeleteObj',
            'dsCreatSecObj', 'dsCreateObj', 'dsCopySecObj', 'dsAddToGrp', 'dsAclRemAce', 'dsAclOrderAce', 'dsAclGetAces', 'dsAclAddAce',
            'DevClearList', 'DevClear', 'dbTest', 'dbSwapColumns', 'dbSort', 'dbSetRecordField', 'dbSetOptions', 'dbSetErrorReporting',
            'dbSetEntireRecord', 'dbSetDelimiter', 'dbSave', 'dbOpen', 'dbNameColumn', 'dbMakeNewItem', 'dbInsertColumn', 'dbGetVersion',
            'dbGetSaveStatus', 'dbGetRecordField', 'dbGetRecordCount', 'dbGetNextItem', 'dbGetLastError', 'dbGetEntireRecord',
            'dbGetColumnType', 'dbGetColumnNumber', 'dbGetColumnName', 'dbGetColumnCount', 'dbFindRecord', 'dbExist', 'dbEasterEgg',
            'dbDeleteRecord', 'dbDeleteColumn', 'dbDebug', 'dbCookDatabases', 'dbClose', 'dbCloneRecord', 'dbBindCol', 'cWndState',
            'cWndinfo', 'cWndGetWndSpecName', 'cWndGetWndSpec', 'cWndexist', 'cWndByWndSpecName', 'cWndByWndSpec', 'cWndbyseq',
            'cWndbyname', 'cWndbyid', 'cWndbyclass', 'cWinIDConvert', 'cVersionInfo', 'cVendorId', 'cSetWndText', 'cSetUpDownPos',
            'cSetTvItem', 'cSetTrackPos', 'cSetTabItem', 'cSetLvItem', 'cSetLbItemEx', 'cSetLbItem', 'cSetIpAddr', 'cSetFocus',
            'cSetEditText', 'cSetDtpDate', 'cSetCbItem', 'cSetCalDate', 'cSendMessage', 'cRadioButton', 'cPostMessage', 'cPostButton',
            'cMemStat', 'cGetWndCursor', 'cGetUpDownPos', 'cGetUpDownMin', 'cGetUpDownMax', 'cGetTVItem', 'cGetTrackPos', 'cGetTrackMin',
            'cGetTrackMax', 'cGetTbText', 'cGetSbText', 'cGetLvText', 'cGetLvSelText', 'cGetLvFocText', 'cGetLvDdtText', 'cGetLvColText',
            'cGetLbText', 'cGetLbSelText', 'cGetLbCount', 'cGetIpAddr', 'cGetInfo', 'cGetHrText', 'cGetFocus', 'cGetEditText', 'cGetDtpDate',
            'cGetControlImageCRC', 'cGetCBText', 'cGetCbCount', 'cGetCalDate', 'cFindByName', 'cFindByClass', 'cEnablestate', 'cDblClickItem',
            'cCpuSupt', 'cCpuSpeed', 'cCpuIdExt', 'cCpuId', 'cCpuFeat', 'cCpuBenchmark', 'cCloneCheck', 'cClickToolbar', 'cClickButton',
            'cClearTvItem', 'cClearLvItem', 'cClearLbAll', 'cCheckbox', 'aVersion', 'aStatusbar', 'aShellFolder', 'aMsgTimeout', 'AllSPoll',
            'aGetLastError', 'aFileRename', 'aFileMove', 'aFileDelete', 'aFileCopy'
            ),
        5 => array(
            'wWordRight', 'wWordLeft', 'wWinTile', 'wWinRestore', 'wWinNext', 'wWinMinimize', 'wWinMaximize', 'wWinCloseAll', 'wWinClose',
            'wWinCascade', 'wWinArricons', 'wViewOutput', 'wViewOptions', 'wViewHtml', 'wUpperCase', 'wUpline', 'wUndo', 'wTopOfFile', 'wToggleIns',
            'wTab', 'wStatusMsg', 'wStartSel', 'wSpellcheck', 'wSetProject', 'wSetPrefs', 'wSetColblk', 'wSetBookmark', 'wSelWordRight',
            'wSelWordLeft', 'wSelUp', 'wSelTop', 'wSelRight', 'wSelPgUp', 'wSelPgDn', 'wSelLeft', 'wSelInfo', 'wSelHome', 'wSelEnd', 'wSelectAll',
            'wSelDown', 'wSelBottom', 'wRunRebuild', 'wRunMake', 'wRunExecute', 'wRunDebug', 'wRunConfig', 'wRunCompile', 'wRunCommand', 'wRight',
            'wRepeat', 'wRedo', 'wRecord', 'wProperties', 'wPrintDirect', 'wPrinSetup', 'wPrevError', 'wPaste', 'wPageUp', 'wPageDown', 'wNextError',
            'wNewLine', 'wLowerCase', 'wLineCount', 'wLeft', 'wInvertCase', 'wInsString', 'wInsLine', 'wHome', 'wHelpKeyword', 'wHelpKeybrd',
            'wHelpIndex', 'wHelpHelp', 'wHelpCmds', 'wHelpAbout', 'wGotoLine', 'wGotoCol', 'wGetWrap', 'wGetWord', 'wGetUndo', 'wGetSelstate',
            'wGetRedo', 'wGetOutput', 'wGetModified', 'wGetLineNo', 'wGetIns', 'wGetFilename', 'wGetColNo', 'wGetChar', 'wFtpOpen', 'wFindNext',
            'wFindInFiles', 'wFind', 'wFileSaveAs', 'wFileSave', 'wFileRevert', 'wFilePrint', 'wFilePgSetup', 'wFileOpen', 'wFileNew', 'wFileMerge',
            'wFileList', 'wFileExit', 'wEndSel', 'wEndOfFile', 'wEnd', 'wEdWrap', 'wEdWordRight', 'wEdWordLeft', 'wEdUpLine', 'wEdUndo', 'wEdTopOfFile',
            'wEdToggleIns', 'wEdTab', 'wEdStartSel', 'wEdSetColBlk', 'wEdSelectAll', 'wEdRight', 'wEdRedo', 'wEdPaste', 'wEdPageUp', 'wEdPageDown',
            'wEdNewLine', 'wEdLeft', 'wEdInsString', 'wEdHome', 'wEdGoToLine', 'wEdGoToCol', 'wEdGetWord', 'wEdEndSel', 'wEdEndOfFile', 'wEdEnd',
            'wEdDownLine', 'wEdDelete', 'wEdCutLine', 'wEdCut', 'wEdCopyLine', 'wEdCopy', 'wEdClearSel', 'wEdBackTab', 'wEdBackspace', 'wDownLine',
            'wDelete', 'wDelButton', 'wCutMarked', 'wCutLine', 'wCutAppend', 'wCut', 'wCopyMarked', 'wCopyLine', 'wCopyAppend', 'wCopy', 'wCompile',
            'wClearSel', 'wChange', 'wCallMacro', 'wBackTab', 'wBackspace', 'wAutoIndent', 'wAddButton', 'edWindowTile', 'edWindowRestore',
            'edWindowNext', 'edWindowMinimize', 'edWindowMaximize', 'edWindowCloseall', 'edWindowClose', 'edWindowCascade', 'edWindowArrangeIcons',
            'edStatusMsg', 'edSearchViewOutput', 'edSearchRepeat', 'edSearchPrevError', 'edSearchNextError', 'edSearchFind', 'edSearchChange',
            'edRunRebuild', 'edRunMake', 'edRunExecute', 'edRunDebug', 'edRunConfigure', 'edRunCompile', 'edRunCommand', 'edRecord', 'edHelpProcedures',
            'edHelpKeyword', 'edHelpKeyboard', 'edHelpIndex', 'edHelpHelp', 'edHelpCommands', 'edHelpAbout', 'edGetWordWrapState', 'edGetWindowName',
            'edGetUndoState', 'edGetSelectionState', 'edGetRedoState', 'edGetModifiedStatus', 'edGetLineNumber', 'edGetInsertState', 'edGetColumnNumber',
            'edGetChar', 'edFileSetPreferences', 'edFileSaveAs', 'edFileSave', 'edFilePrinterSetup', 'edFilePrint', 'edFilePageSetup', 'edFileOpen',
            'edFileNew', 'edFileMerge', 'edFileList', 'edFileExit', 'edEditWrap', 'edEditWordRight', 'edEditWordLeft', 'edEditUpLine', 'edEditUndo',
            'edEditToggleIns', 'edEditTab', 'edEditStartSelection', 'edEditSetColumnBlock', 'edEditSetBookmark', 'edEditSelectAll', 'edEditRight',
            'edEditRedo', 'edEditPaste', 'edEditPageUp', 'edEditPageDown', 'edEditLeft', 'edEditInsertString', 'edEditGoToLine', 'edEditGoToColumn',
            'edEditGoToBookmark', 'edEditGetCurrentWord', 'edEditEndSelection', 'edEditEndOfLine', 'edEditEndOfFile', 'edEditDownline', 'edEditDelete',
            'edEditCutline', 'edEditCut', 'edEditCopyline', 'edEditCopy', 'edEditClearSelection', 'edEditBeginningOfLine', 'edEditBeginningOfFile',
            'edEditBackTab', 'edEditBackspace', 'edDeleteButton', 'edAddButton'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '+', '-', '~', '$', '^', '?', '@', '%', '#', '&', '*', '|', '/', '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #800080;',
            2 => 'color: #0080FF; font-weight: bold;',
            3 => 'color: #0000FF;',
            4 => 'color: #FF00FF;',
            5 => 'color: #008000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000; font-style: italic;',
            2 => 'color: #FF1010; font-weight: bold;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(//Variable names
        0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*"
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/perl.php0000664000175000017500000002122112014173412013632 0ustar  benbebenbe 'Perl',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(
        '=back' => '=cut',
        '=head' => '=cut',
        '=item' => '=cut',
        '=over' => '=cut',
        '=begin' => '=cut',
        '=end' => '=cut',
        '=for' => '=cut',
        '=encoding' => '=cut',
        '=pod' => '=cut'
        ),
    'COMMENT_REGEXP' => array(
        //Regular expressions
        2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU",
        //Regular expression match variables
        3 => '/\$\d+/',
        //Heredoc
        4 => '/<<\s*?([\'"]?)([a-zA-Z0-9]+)\1;[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
        //Predefined variables
        5 => '/\$(\^[a-zA-Z]?|[\*\$`\'&_\.,+\-~:;\\\\\/"\|%=\?!@#<>\(\)\[\]])(?!\w)|@[_+\-]|%[!]|\$(?=\{)/',
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"','`'),
    'HARDQUOTE' => array("'", "'"),            // An optional 2-element array defining the beginning and end of a hard-quoted string
    'HARDESCAPE' => array('\\\'',),
        // Things that must still be escaped inside a hard-quoted string
        // If HARDQUOTE is defined, HARDESCAPE must be defined
        // This will not work unless the first character of each element is either in the
        // QUOTEMARKS array or is the ESCAPE_CHAR
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'case', 'do', 'else', 'elsif', 'for', 'if', 'then', 'until', 'while', 'foreach', 'my',
            'xor', 'or', 'and', 'unless', 'next', 'last', 'redo', 'not', 'our',
            'reset', 'continue', 'cmp', 'ne', 'eq', 'lt', 'gt', 'le', 'ge',
            ),
        2 => array(
            'use', 'sub', 'new', '__END__', '__DATA__', '__DIE__', '__WARN__', 'BEGIN',
            'STDIN', 'STDOUT', 'STDERR', 'ARGV', 'ARGVOUT'
            ),
        3 => array(
            'abs', 'accept', 'alarm', 'atan2', 'bind', 'binmode', 'bless',
            'caller', 'chdir', 'chmod', 'chomp', 'chop', 'chown', 'chr',
            'chroot', 'close', 'closedir', 'connect', 'cos',
            'crypt', 'dbmclose', 'dbmopen', 'defined', 'delete', 'die',
            'dump', 'each', 'endgrent', 'endhostent', 'endnetent', 'endprotoent',
            'endpwent', 'endservent', 'eof', 'eval', 'exec', 'exists', 'exit',
            'exp', 'fcntl', 'fileno', 'flock', 'fork', 'format', 'formline',
            'getc', 'getgrent', 'getgrgid', 'getgrnam', 'gethostbyaddr',
            'gethostbyname', 'gethostent', 'getlogin', 'getnetbyaddr', 'getnetbyname',
            'getnetent', 'getpeername', 'getpgrp', 'getppid', 'getpriority',
            'getprotobyname', 'getprotobynumber', 'getprotoent', 'getpwent',
            'getpwnam', 'getpwuid', 'getservbyname', 'getservbyport', 'getservent',
            'getsockname', 'getsockopt', 'glob', 'gmtime', 'goto', 'grep',
            'hex', 'import', 'index', 'int', 'ioctl', 'join', 'keys', 'kill',
            'lc', 'lcfirst', 'length', 'link', 'listen', 'local',
            'localtime', 'log', 'lstat', 'm', 'map', 'mkdir', 'msgctl', 'msgget',
            'msgrcv', 'msgsnd', 'no', 'oct', 'open', 'opendir',
            'ord', 'pack', 'package', 'pipe', 'pop', 'pos', 'print',
            'printf', 'prototype', 'push', 'qq', 'qr', 'quotemeta', 'qw',
            'qx', 'q', 'rand', 'read', 'readdir', 'readline', 'readlink', 'readpipe',
            'recv', 'ref', 'rename', 'require', 'return',
            'reverse', 'rewinddir', 'rindex', 'rmdir', 's', 'scalar', 'seek',
            'seekdir', 'select', 'semctl', 'semget', 'semop', 'send', 'setgrent',
            'sethostent', 'setnetent', 'setpgrp', 'setpriority', 'setprotoent',
            'setpwent', 'setservent', 'setsockopt', 'shift', 'shmctl', 'shmget',
            'shmread', 'shmwrite', 'shutdown', 'sin', 'sleep', 'socket', 'socketpair',
            'sort', 'splice', 'split', 'sprintf', 'sqrt', 'srand', 'stat',
            'study', 'substr', 'symlink', 'syscall', 'sysopen', 'sysread',
            'sysseek', 'system', 'syswrite', 'tell', 'telldir', 'tie', 'tied',
            'time', 'times', 'tr', 'truncate', 'uc', 'ucfirst', 'umask', 'undef',
            'unlink', 'unpack', 'unshift', 'untie', 'utime', 'values',
            'vec', 'wait', 'waitpid', 'wantarray', 'warn', 'write', 'y'
            )
        ),
    'SYMBOLS' => array(
        '<', '>', '=',
        '!', '@', '~', '&', '|', '^',
        '+','-', '*', '/', '%',
        ',', ';', '?', '.', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #009966; font-style: italic;',
            3 => 'color: #0000ff;',
            4 => 'color: #cc0000; font-style: italic;',
            5 => 'color: #0000ff;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;',
            4 => 'color: #009999;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://perldoc.perl.org/functions/{FNAMEL}.html'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '->',
        2 => '::'
        ),
    'REGEXPS' => array(
        //Variable
        0 => '(?:\$[\$#]?|\\\\(?:[@%*]?|\\\\*\$|&)|%[$]?|@[$]?|\*[$]?|&[$]?)[a-zA-Z_][a-zA-Z0-9_]*',
        //File Descriptor
        4 => '<[a-zA-Z_][a-zA-Z0-9_]*>',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '$'
        )
    )
);

?>geshi/geshi/postgresql.php0000664000175000017500000003173412014173436015113 0ustar  benbebenbe 2010-05-03
 * Copyright: (c) 2007 Christophe Chauvet (http://kryskool.org/), Nigel McNie (http://qbnz.com/highlighter)
 * Release Version: 1.0.8.11
 * Date Started: 2007/07/20
 *
 * PostgreSQL language file for GeSHi.
 *
 * CHANGES
 * -------
 * 2007/07/20 (1.0.0)
 *  -  First Release
 *
 * TODO (updated 2007/07/20)
 * -------------------------
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'PostgreSQL',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"', '`'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        //Put PostgreSQL reserved keywords here.  I like mine uppercase.
        1 => array(
            'ABORT','ABSOLUTE','ACCESS','ACTION','ADD','ADMIN','AFTER',
            'AGGREGATE','ALL','ALSO','ALTER','ALWAYS','ANALYSE','ANALYZE','AND',
            'ANY','AS','ASC,','ASSERTION','ASSIGNMENT','ASYMMETRIC','AT',
            'AUTHORIZATION','BACKWARD','BEFORE','BEGIN','BETWEEN','BOTH','BY',
            'CACHE','CALLED','CASCADE','CASCADED','CASE','CAST','CATALOG',
            'CHAIN','CHARACTERISTICS','CHECK','CHECKPOINT','CLASS','CLOSE',
            'CLUSTER','COALESCE','COLLATE','COLUMN','COMMENT','COMMIT',
            'COMMITTED','CONCURRENTLY','CONFIGURATION','CONNECTION',
            'CONSTRAINT','CONSTRAINTS','CONTENT','CONTINUE','CONVERSION','COPY',
            'COST','CREATE','CREATEDB','CREATEROLE','CREATEUSER','CROSS','CSV',
            'CURRENT','CURRENT_CATALOG','CURRENT_DATE','CURRENT_ROLE',
            'CURRENT_SCHEMA','CURRENT_TIME','CURRENT_TIMESTAMP','CURRENT_USER',
            'CURSOR','CYCLE','DATA','DATABASE','DAY','DEALLOCATE','DEC',
            'DECLARE','DEFAULT','DEFAULTS','DEFERRABLE','DEFERRED','DEFINER',
            'DELETE','DELIMITER','DELIMITERS','DESC','DICTIONARY','DISABLE',
            'DISCARD','DISTINCT','DO','DOCUMENT','DOMAIN','DOUBLE','DROP',
            'EACH','ELSE','ENABLE','ENCODING','ENCRYPTED','END','ESCAPE',
            'EXCEPT','EXCLUDING','EXCLUSIVE','EXECUTE','EXISTS','EXPLAIN',
            'EXTERNAL','EXTRACT','FALSE','FAMILY','FETCH','FIRST','FOLLOWING',
            'FOR','FORCE','FOREIGN','FORWARD','FREEZE','FROM','FULL','FUNCTION',
            'GLOBAL','GRANT','GRANTED','GREATEST','GROUP','HANDLER','HAVING',
            'HEADER','HOLD','HOUR','IDENTITY','IF','ILIKE','IMMEDIATE',
            'IMMUTABLE','IMPLICIT','IN','INCLUDING','INCREMENT','INDEX',
            'INDEXES','INHERIT','INHERITS','INITIALLY','INNER','INOUT','INPUT',
            'INSENSITIVE','INSERT','INSTEAD','INTERSECT','INTO','INVOKER','IS',
            'ISNULL','ISOLATION','JOIN','KEY','LANCOMPILER','LANGUAGE','LARGE',
            'LAST','LC_COLLATE','LC_CTYPE','LEADING','LEAST','LEFT','LEVEL',
            'LIKE','LIMIT','LISTEN','LOAD','LOCAL','LOCALTIME','LOCALTIMESTAMP',
            'LOCATION','LOCK','LOGIN','LOOP','MAPPING','MATCH','MAXVALUE',
            'MINUTE','MINVALUE','MODE','MONTH','MOVE','NAME','NAMES','NATIONAL',
            'NATURAL','NEW','NEXT','NO','NOCREATEDB','NOCREATEROLE',
            'NOCREATEUSER','NOINHERIT','NOLOGIN','NONE','NOSUPERUSER','NOT',
            'NOTHING','NOTIFY','NOTNULL','NOWAIT','NULL','NULLIF','NULLS',
            'NUMERIC','OBJECT','OF','OFF','OFFSET','OIDS','OLD','ON','ONLY',
            'OPERATOR','OPTION','OPTIONS','OR','ORDER','OUT','OUTER','OVER',
            'OVERLAPS','OVERLAY','OWNED','OWNER','PARSER','PARTIAL','PARTITION',
            'PASSWORD','PLACING','PLANS','POSITION','PRECEDING','PRECISION',
            'PREPARE','PREPARED','PRESERVE','PRIMARY','PRIOR','PRIVILEGES',
            'PROCEDURAL','PROCEDURE','QUOTE','RANGE','READ','REASSIGN',
            'RECHECK','RECURSIVE','REFERENCES','REINDEX','RELATIVE','RELEASE',
            'RENAME','REPEATABLE','REPLACE','REPLICA','RESET','RESTART',
            'RESTRICT','RETURN','RETURNING','RETURNS','REVOKE','RIGHT','ROLE',
            'ROLLBACK','ROW','ROWS','RULE','SAVEPOINT','SCHEMA','SCROLL',
            'SEARCH','SECOND',
            'SECURITY','SELECT','SEQUENCE','SERIALIZABLE','SERVER','SESSION',
            'SESSION_USER','SET','SETOF','SHARE','SHOW','SIMILAR','SIMPLE',
            'SOME','STABLE','STANDALONE','START','STATEMENT','STATISTICS',
            'STDIN','STDOUT','STORAGE','STRICT','STRIP','SUPERUSER',
            'SYMMETRIC','SYSID','SYSTEM','TABLE','TABLESPACE','TEMP','TEMPLATE',
            'TEMPORARY','THEN','TO','TRAILING','TRANSACTION','TREAT','TRIGGER',
            'TRUE','TRUNCATE','TRUSTED','TYPE','UNBOUNDED','UNCOMMITTED',
            'UNENCRYPTED','UNION','UNIQUE','UNKNOWN','UNLISTEN','UNTIL',
            'UPDATE','USER','USING','VACUUM','VALID','VALIDATOR','VALUE',
            'VALUES','VARIADIC','VERBOSE','VERSION','VIEW','VOLATILE','WHEN',
            'WHERE','WHILE','WHITESPACE','WINDOW','WITH','WITHOUT','WORK','WRAPPER',
            'WRITE','XMLATTRIBUTES','XMLCONCAT','XMLELEMENT','XMLFOREST',
            'XMLPARSE','XMLPI','XMLROOT','XMLSERIALIZE','YEAR','YES','ZONE'
            ),

        //Put functions here
        3 => array(
            // mathematical functions
            'ABS','CBRT','CEIL','CEILING','DEGREES','DIV','EXP','FLOOR','LN',
            'LOG','MOD','PI','POWER','RADIANS','RANDOM','ROUND','SETSEED',
            'SIGN','SQRT','TRUNC','WIDTH_BUCKET',
            // trigonometric functions
            'ACOS','ASIN','ATAN','ATAN2','COS','COT','SIN','TAN',
            // string functions
            'BIT_LENGTH','CHAR_LENGTH','CHARACTER_LENGTH','LOWER',
            'OCTET_LENGTH','POSITION','SUBSTRING','TRIM','UPPER',
            // other string functions
            'ASCII','BTRIM','CHR','CONVERT','CONVERT_FROM','CONVERT_TO',
            'DECODE','ENCODE','INITCAP','LENGTH','LPAD','LTRIM','MD5',
            'PG_CLIENT_ENCODING','QUOTE_IDENT','QUOTE_LITERAL','QUOTE_NULLABLE',
            'REGEXP_MATCHES','REGEXP_REPLACE','REGEXP_SPLIT_TO_ARRAY',
            'REGEXP_SPLIT_TO_TABLE','REPEAT','RPAD','RTRIM','SPLIT_PART',
            'STRPOS','SUBSTR','TO_ASCII','TO_HEX','TRANSLATE',
            // binary string functions
            'GET_BIT','GET_BYTE','SET_BIT','SET_BYTE',
            // data type formatting functions
            'TO_CHAR','TO_DATE','TO_NUMBER','TO_TIMESTAMP',
            // date/time functions
            'AGE','CLOCK_TIMESTAMP','DATE_PART','DATE_TRUNC','EXTRACT',
            'ISFINITE','JUSTIFY_DAYS','JUSTIFY_HOURS','JUSTIFY_INTERVAL','NOW',
            'STATEMENT_TIMESTAMP','TIMEOFDAY','TRANSACTION_TIMESTAMP',
            // enum support functions
            'ENUM_FIRST','ENUM_LAST','ENUM_RANGE',
            // geometric functions
            'AREA','CENTER','DIAMETER','HEIGHT','ISCLOSED','ISOPEN','NPOINTS',
            'PCLOSE','POPEN','RADIUS','WIDTH',
            'BOX','CIRCLE','LSEG','PATH','POINT','POLYGON',
            // cidr and inet functions
            'ABBREV','BROADCAST','FAMILY','HOST','HOSTMASK','MASKLEN','NETMASK',
            'NETWORK','SET_MASKLEN',
            // text search functions
            'TO_TSVECTOR','SETWEIGHT','STRIP','TO_TSQUERY','PLAINTO_TSQUERY',
            'NUMNODE','QUERYTREE','TS_RANK','TS_RANK_CD','TS_HEADLINE',
            'TS_REWRITE','GET_CURRENT_TS_CONFIG','TSVECTOR_UPDATE_TRIGGER',
            'TSVECTOR_UPDATE_TRIGGER_COLUMN',
            'TS_DEBUG','TS_LEXISE','TS_PARSE','TS_TOKEN_TYPE','TS_STAT',
            // XML functions
            'XMLCOMMENT','XMLCONCAT','XMLELEMENT','XMLFOREST','XMLPI','XMLROOT',
            'XMLAGG','XPATH','TABLE_TO_XMLSCHEMA','QUERY_TO_XMLSCHEMA',
            'CURSOR_TO_XMLSCHEMA','TABLE_TO_XML_AND_XMLSCHEMA',
            'QUERY_TO_XML_AND_XMLSCHEMA','SCHEMA_TO_XML','SCHEMA_TO_XMLSCHEMA',
            'SCHEMA_TO_XML_AND_XMLSCHEMA','DATABASE_TO_XML',
            'DATABASE_TO_XMLSCHEMA','DATABASE_TO_XML_AND_XMLSCHEMA',
            // sequence manipulating functions
            'CURRVAL','LASTVAL','NEXTVAL','SETVAL',
            // conditional expressions
            'COALESCE','NULLIF','GREATEST','LEAST',
            // array functions
            'ARRAY_APPEND','ARRAY_CAT','ARRAY_NDIMS','ARRAY_DIMS','ARRAY_FILL',
            'ARRAY_LENGTH','ARRAY_LOWER','ARRAY_PREPEND','ARRAY_TO_STRING',
            'ARRAY_UPPER','STRING_TO_ARRAY','UNNEST',
            // aggregate functions
            'ARRAY_AGG','AVG','BIT_AND','BIT_OR','BOOL_AND','BOOL_OR','COUNT',
            'EVERY','MAX','MIN','STRING_AGG','SUM',
            // statistic aggregate functions
            'CORR','COVAR_POP','COVAR_SAMP','REGR_AVGX','REGR_AVGY',
            'REGR_COUNT','REGR_INTERCEPT','REGR_R2','REGR_SLOPE','REGR_SXX',
            'REGR_SXY','REGR_SYY','STDDEV','STDDEV_POP','STDDEV_SAMP',
            'VARIANCE','VAR_POP','VAR_SAMP',
            // window functions
            'ROW_NUMBER','RANK','DENSE_RANK','PERCENT_RANK','CUME_DIST','NTILE',
            'LAG','LEAD','FIRST_VALUE','LAST_VALUE','NTH_VALUE',
            // set returning functions
            'GENERATE_SERIES','GENERATE_SUBSCRIPTS'
            // system information functions not currently included
            ),

        //Put your postgresql var
        4 => array(
            'client_encoding',
            'standard_conforming_strings'
            ),

        //Put your data types here
        5 => array(
            'ARRAY','ABSTIME','BIGINT','BIGSERIAL','BINARY','BIT','BIT VARYING',
            'BOOLEAN','BOX','BYTEA','CHAR','CHARACTER','CHARACTER VARYING',
            'CIDR','CIRCLE','DATE','DECIMAL','DOUBLE PRECISION','ENUM','FLOAT',
            'INET','INT','INTEGER','INTERVAL','NCHAR','REAL','SMALLINT','TEXT',
            'TIME','TIMESTAMP','VARCHAR','XML',
            ),

        //        //Put your package names here
        //        6 => array(
        //            ),

        ),
    'SYMBOLS' => array(
        '(', ')', '=', '<', '>', '|'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        3 => false,
        4 => false,
        5 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            // regular keywords
            1 => 'color: #000000; font-weight: bold; text-transform: uppercase;',
            // inbuilt functions
            3 => 'color: #333399; font-weight: bold; text-transform: uppercase;',
            // postgresql var(?)
            4 => 'color: #993333; font-weight: bold; text-transform: uppercase;',
            // data types
            5 => 'color: #993333; font-weight: bold; text-transform: uppercase;',
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #ff0000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        3 => '',
        4 => 'http://paste.postgresql.fr/wiki/desc.php?def={FNAME}',
        5 => '',
        ),

    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            1 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),

            3 => array(
                'DISALLOWED_AFTER' => '(?=\()'
                ),

            4 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),

            5 => array(
                'DISALLOWED_AFTER' => '(?![\(\w])'
                ),
            )
        )

);

?>geshi/geshi/zxbasic.php0000664000175000017500000001143012014173412014334 0ustar  benbebenbe 'ZXBasic',
    'COMMENT_SINGLE' => array(
        1 => "'",
        2 => '#',
        3 => 'REM'
        ),
    'COMMENT_MULTI' => array("/'" => "'/"),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER, //GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            "ASM", "BEEP", "BOLD", "BORDER", "BRIGHT", "ByRef", "ByVal", "CAST",
            "CIRCLE", "CLS", "CONST", "CONTINUE", "DECLARE", "DIM", "DO",
            "DRAW", "ELSE", "ELSEIF", "END", "EXIT", "FastCall", "FLASH", "FOR",
            "FUNCTION", "GOTO", "GOSUB", "GO", "IF", "INK", "INVERSE", "ITALIC",
            "LET", "LOAD", "LOOP", "NEXT", "OVER", "PAPER", "PAUSE", "PI",
            "PLOT", "POKE", "PRINT", "RANDOMIZE", "REM", "RETURN", "SAVE",
            "StdCall", "Sub", "THEN", "TO", "UNTIL", "VERIFY", "WEND", "WHILE",
            ),

        // types
        2 => array(
            'byte', 'ubyte', 'integer', 'uinteger', 'long', 'ulong', 'fixed',
            'float', 'string'
            ),

        // Functions
        3 => array(
            "ABS", "ACS", "ASN", "ATN", "CHR", "CODE", "COS", "CSRLIN", "EXP",
            "HEX", "HEX16", "INKEY", "INT", "LEN", "LN", "PEEK", "POS", "RND",
            "SCREEN$", "SGN", "SIN", "SQR", "STR", "TAN", "VAL",
            ),

        // Operators and modifiers
        4 => array(
            "AT", "AS", "AND", "MOD", "NOT", "OR", "SHL", "SHR", "STEP", "XOR"
            )
        ),
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000080; font-weight: bold;', // Commands
            2 => 'color: #800080; font-weight: bold;', // Types
            3 => 'color: #006000; font-weight: bold;', // Functions
            4 => 'color: #801010; font-weight: bold;'  // Operators and Modifiers
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #339933;',
            3 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'BRACKETS' => array(
            //0 => 'color: #66cc66;'
            0 => 'color: #007676;'
            ),
        'STRINGS' => array(
            //0 => 'color: #ff0000;'
            0 => 'color: #A00000; font-style: italic;'
            ),
        'NUMBERS' => array(
            //0 => 'color: #cc66cc;'
            0 => 'color: #b05103;'// font-weight: bold;'
            ),
        'METHODS' => array(
            0 => 'color: #66cc66;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/powerbuilder.php0000664000175000017500000006115112014173413015402 0ustar  benbebenbe 'PowerBuilder',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '~',
    'KEYWORDS' => array(
        1 => array(
            'alias', 'and', 'autoinstantiate', 'call',
            'case', 'catch', 'choose', 'close', 'commit', 'connect',
            'constant', 'continue', 'create', 'cursor', 'declare',
            'delete', 'describe', 'descriptor', 'destroy', 'disconnect',
            'do', 'dynamic', 'else', 'elseif', 'end', 'enumerated',
            'event', 'execute', 'exit', 'external', 'false', 'fetch',
            'first', 'for', 'forward', 'from', 'function', 'global',
            'goto', 'halt', 'if', 'immediate', 'indirect', 'insert',
            'into', 'intrinsic', 'is', 'last', 'library', 'loop', 'next',
            'not', 'of', 'on', 'open', 'or', 'parent', 'post', 'prepare',
            'prior', 'private', 'privateread', 'privatewrite', 'procedure',
            'protected', 'protectedread', 'protectedwrite', 'prototypes',
            'public', 'readonly', 'ref', 'return', 'rollback', 'rpcfunc',
            'select', 'selectblob', 'shared', 'static', 'step', 'subroutine',
            'super', 'system', 'systemread', 'systemwrite', 'then', 'this',
            'to', 'trigger', 'true', 'try', 'type', 'until', 'update', 'updateblob',
            'using', 'variables', 'where', 'while', 'with', 'within'
            ),
        2 => array (
            'blob', 'boolean', 'char', 'character', 'date', 'datetime',
            'dec', 'decimal',
            'double', 'int', 'integer', 'long', 'real', 'string', 'time',
            'uint', 'ulong', 'unsignedint', 'unsignedinteger', 'unsignedlong'
            ),
        3 => array (
            'abortretryignore!', 'actbegin!', 'acterror!', 'actesql!',
            'actgarbagecollect!', 'activate!', 'activatemanually!',
            'activateondoubleclick!',
            'activateongetfocus!', 'actline!', 'actobjectcreate!', 'actobjectdestroy!',
            'actprofile!', 'actroutine!', 'acttrace!', 'actual!',
            'actuser!', 'adoresultset!', 'adtdate!', 'adtdatetime!',
            'adtdefault!', 'adtdouble!', 'adttext!', 'adttime!',
            'aix!', 'alignatbottom!', 'alignatleft!', 'alignatright!',
            'alignattop!', 'all!', 'allowpartialchanges!', 'alpha!',
            'ansi!', 'any!', 'anycase!', 'anyfont!',
            'append!', 'application!', 'arabiccharset!', 'area3d!',
            'areagraph!', 'arraybounds!', 'arrow!', 'ascending!',
            'asstatement!', 'atbottom!', 'atleft!', 'atright!',
            'attop!', 'autosize!', 'background!', 'balticcharset!',
            'bar3dgraph!', 'bar3dobjgraph!', 'bargraph!', 'barstack3dobjgraph!',
            'barstackgraph!', 'bdiagonal!', 'beam!', 'begin!',
            'begindrag!', 'beginlabeledit!', 'beginrightdrag!', 'behind!',
            'blob!', 'bold!', 'boolean!', 'bottom!',
            'boundedarray!', 'box!', 'byreferenceargument!', 'byvalueargument!',
            'cancel!', 'cascade!', 'cascaded!', 'category!',
            'center!', 'character!', 'charsetansi!', 'charsetansiarabic!',
            'charsetansihebrew!', 'charsetdbcsjapanese!', 'charsetunicode!', 'checkbox!',
            'child!', 'childtreeitem!', 'chinesebig5!', 'classdefinition!',
            'classdefinitionobject!', 'classorstructuretype!', 'clicked!', 'clip!',
            'clipboard!', 'clipformatbitmap!', 'clipformatdib!', 'clipformatdif!',
            'clipformatenhmetafile!', 'clipformathdrop!', 'clipformatlocale!',
            'clipformatmetafilepict!',
            'clipformatoemtext!', 'clipformatpalette!', 'clipformatpendata!', 'clipformatriff!',
            'clipformatsylk!', 'clipformattext!', 'clipformattiff!', 'clipformatunicodetext!',
            'clipformatwave!', 'clock!', 'close!', 'closequery!',
            'col3dgraph!', 'col3dobjgraph!', 'colgraph!',
            'colstack3dobjgraph!', 'colstackgraph!', 'columnclick!', 'commandbutton!',
            'connection!', 'connectioninfo!', 'connectobject!', 'connectprivilege!',
            'connectwithadminprivilege!', 'constructor!', 'containsany!', 'containsembeddedonly!',
            'containslinkedonly!', 'contextinformation!', 'contextkeyword!', 'continuous!',
            'corbaobject!', 'corbaunion!', 'cplusplus!', 'cross!',
            'csv!', 'cumulative!', 'cumulativepercent!', 'currenttreeitem!',
            'customvisual!', 'dash!', 'dashdot!', 'dashdotdot!',
            'data!', 'datachange!', 'datamodified!', 'datastore!',
            'datawindow!', 'datawindowchild!', 'date!', 'datemask!',
            'datetime!', 'datetimemask!', 'dbase2!', 'dbase3!',
            'dberror!', 'deactivate!', 'decimal!', 'decimalmask!',
            'decorative!', 'default!', 'defaultcharset!', 'delete!',
            'deleteallitems!', 'deleteitem!', 'descending!', 'desktop!',
            'destructor!', 'detail!', 'diamond!', 'dif!',
            'dirall!', 'dirapplication!', 'dirdatawindow!', 'directionall!',
            'directiondown!', 'directionleft!', 'directionright!', 'directionup!',
            'dirfunction!', 'dirmenu!', 'dirpipeline!', 'dirproject!',
            'dirquery!', 'dirstructure!', 'diruserobject!', 'dirwindow!',
            'displayasactivexdocument!', 'displayascontent!', 'displayasicon!', 'dot!',
            'double!', 'doubleclicked!', 'dragdrop!', 'dragenter!',
            'dragleave!', 'dragobject!', 'dragwithin!', 'drawobject!',
            'dropdownlistbox!', 'dropdownpicturelistbox!', 'drophighlighttreeitem!', 'dwobject!',
            'dynamicdescriptionarea!', 'dynamicstagingarea!', 'easteuropecharset!', 'editchanged!',
            'editmask!', 'editmenu!', 'end!', 'endlabeledit!',
            'enterprise!', 'enterpriseonlyfeature!', 'enumeratedtype!', 'enumerationdefinition!',
            'enumerationitemdefinition!', 'environment!', 'error!', 'errorlogging!',
            'eventnotexisterror!', 'eventwrongprototypeerror!', 'excel!', 'excel5!',
            'exceptionfail!', 'exceptionignore!', 'exceptionretry!',
            'exceptionsubstitutereturnvalue!',
            'exclamation!', 'exclude!', 'exportapplication!', 'exportdatawindow!',
            'exportfunction!', 'exportmenu!', 'exportpipeline!', 'exportproject!',
            'exportquery!', 'exportstructure!', 'exportuserobject!', 'exportwindow!',
            'externalvisual!', 'extobject!', 'failonanyconflict!', 'fdiagonal!',
            'featurenotsupportederror!', 'filealreadyopenerror!', 'filecloseerror!',
            'fileexists!',
            'fileinvalidformaterror!', 'filemenu!', 'filenotopenerror!', 'filenotseterror!',
            'filereaderror!', 'filetyperichtext!', 'filetypetext!', 'filewriteerror!',
            'filter!', 'first!', 'firstvisibletreeitem!', 'fixed!',
            'floating!', 'focusrect!', 'footer!', 'foreground!',
            'frombeginning!', 'fromcurrent!', 'fromend!', 'functionobject!',
            'gb231charset!', 'getfocus!', 'graph!', 'graphicobject!',
            'graxis!', 'grdispattr!', 'greekcharset!', 'groupbox!',
            'hand!', 'hangeul!', 'header!', 'hebrewcharset!',
            'helpmenu!', 'hide!', 'horizontal!', 'hotlinkalarm!',
            'hourglass!', 'hppa!', 'hprogressbar!', 'hpux!',
            'hscrollbar!', 'hticksonboth!', 'hticksonbottom!', 'hticksonneither!',
            'hticksontop!', 'htmltable!', 'htrackbar!', 'i286!',
            'i386!', 'i486!', 'icon!', 'icons!',
            'idle!', 'importdatawindow!', 'indent!', 'index!',
            'inet!', 'information!', 'inplace!', 'inputfieldselected!',
            'insertitem!', 'inside!', 'integer!', 'internetresult!',
            'italic!', 'itemchanged!', 'itemchanging!', 'itemcollapsed!',
            'itemcollapsing!', 'itemerror!', 'itemexpanded!', 'itemexpanding!',
            'itemfocuschanged!', 'itempopulate!', 'jaguarorb!', 'johabcharset!',
            'justify!', 'key!', 'key0!', 'key1!',
            'key2!', 'key3!', 'key4!', 'key5!',
            'key6!', 'key7!', 'key8!', 'key9!',
            'keya!', 'keyadd!', 'keyalt!', 'keyapps!',
            'keyb!', 'keyback!', 'keybackquote!', 'keybackslash!',
            'keyc!', 'keycapslock!', 'keycomma!', 'keycontrol!',
            'keyd!', 'keydash!', 'keydecimal!', 'keydelete!',
            'keydivide!', 'keydownarrow!', 'keye!', 'keyend!',
            'keyenter!', 'keyequal!', 'keyescape!', 'keyf!',
            'keyf1!', 'keyf10!', 'keyf11!', 'keyf12!',
            'keyf2!', 'keyf3!', 'keyf4!', 'keyf5!',
            'keyf6!', 'keyf7!', 'keyf8!', 'keyf9!',
            'keyg!', 'keyh!', 'keyhome!', 'keyi!',
            'keyinsert!', 'keyj!', 'keyk!', 'keyl!',
            'keyleftarrow!', 'keyleftbracket!', 'keyleftbutton!', 'keyleftwindows!',
            'keym!', 'keymiddlebutton!', 'keymultiply!', 'keyn!',
            'keynull!', 'keynumlock!', 'keynumpad0!', 'keynumpad1!',
            'keynumpad2!', 'keynumpad3!', 'keynumpad4!', 'keynumpad5!',
            'keynumpad6!', 'keynumpad7!', 'keynumpad8!', 'keynumpad9!',
            'keyo!', 'keyp!', 'keypagedown!', 'keypageup!',
            'keypause!', 'keyperiod!', 'keyprintscreen!', 'keyq!',
            'keyquote!', 'keyr!', 'keyrightarrow!', 'keyrightbracket!',
            'keyrightbutton!', 'keyrightwindows!', 'keys!', 'keyscrolllock!',
            'keysemicolon!', 'keyshift!', 'keyslash!', 'keyspacebar!',
            'keysubtract!', 'keyt!', 'keytab!', 'keyu!',
            'keyuparrow!', 'keyv!', 'keyw!', 'keyword!',
            'keyx!', 'keyy!', 'keyz!', 'languageafrikaans!',
            'languagealbanian!', 'languagearabicalgeria!', 'languagearabicbahrain!',
            'languagearabicegypt!',
            'languagearabiciraq!', 'languagearabicjordan!', 'languagearabickuwait!',
            'languagearabiclebanon!',
            'languagearabiclibya!', 'languagearabicmorocco!', 'languagearabicoman!',
            'languagearabicqatar!',
            'languagearabicsaudiarabia!', 'languagearabicsyria!', 'languagearabictunisia!',
            'languagearabicuae!',
            'languagearabicyemen!', 'languagebasque!', 'languagebulgarian!', 'languagebyelorussian!',
            'languagecatalan!', 'languagechinese!', 'languagechinesehongkong!', 'languagechinesesimplified!',
            'languagechinesesingapore!', 'languagechinesetraditional!', 'languagecroatian!', 'languageczech!',
            'languagedanish!', 'languagedutch!', 'languagedutchbelgian!', 'languagedutchneutral!',
            'languageenglish!', 'languageenglishaustralian!', 'languageenglishcanadian!',
            'languageenglishirish!',
            'languageenglishnewzealand!', 'languageenglishsouthafrica!', 'languageenglishuk!',
            'languageenglishus!',
            'languageestonian!', 'languagefaeroese!', 'languagefarsi!', 'languagefinnish!',
            'languagefrench!', 'languagefrenchbelgian!', 'languagefrenchcanadian!', 'languagefrenchluxembourg!',
            'languagefrenchneutral!', 'languagefrenchswiss!', 'languagegerman!', 'languagegermanaustrian!',
            'languagegermanliechtenstein!', 'languagegermanluxembourg!', 'languagegermanneutral!',
            'languagegermanswiss!',
            'languagegreek!', 'languagehebrew!', 'languagehindi!', 'languagehungarian!',
            'languageicelandic!', 'languageindonesian!', 'languageitalian!', 'languageitalianneutral!',
            'languageitalianswiss!', 'languagejapanese!', 'languagekorean!', 'languagekoreanjohab!',
            'languagelatvian!', 'languagelithuanian!', 'languagemacedonian!', 'languagemaltese!',
            'languageneutral!', 'languagenorwegian!', 'languagenorwegianbokmal!', 'languagenorwegiannynorsk!',
            'languagepolish!', 'languageportuguese!', 'languageportuguese_brazilian!',
            'languageportugueseneutral!',
            'languagerhaetoromanic!', 'languageromanian!', 'languageromanianmoldavia!', 'languagerussian!',
            'languagerussianmoldavia!', 'languagesami!', 'languageserbian!', 'languageslovak!',
            'languageslovenian!', 'languagesorbian!', 'languagesortnative!', 'languagesortunicode!',
            'languagespanish!', 'languagespanishcastilian!', 'languagespanishmexican!', 'languagespanishmodern!',
            'languagesutu!', 'languageswedish!', 'languagesystemdefault!', 'languagethai!',
            'languagetsonga!', 'languagetswana!', 'languageturkish!', 'languageukrainian!',
            'languageurdu!', 'languageuserdefault!', 'languagevenda!', 'languagexhosa!',
            'languagezulu!', 'last!', 'layer!', 'layered!',
            'Left!', 'leftmargin!', 'line!', 'line3d!',
            'linear!', 'linecolor!', 'linedown!', 'linegraph!',
            'lineleft!', 'linemode!', 'lineright!', 'lineup!',
            'linkupdateautomatic!', 'linkupdatemanual!', 'listbox!', 'listview!',
            'listviewitem!', 'listviewlargeicon!', 'listviewlist!', 'listviewreport!',
            'listviewsmallicon!', 'lockread!', 'lockreadwrite!', 'lockwrite!',
            'log10!', 'loge!', 'long!', 'losefocus!',
            'lower!', 'lowered!', 'm68000!', 'm68020!',
            'm68030!', 'm68040!', 'maccharset!', 'macintosh!',
            'mailattach!', 'mailbcc!', 'mailbodyasfile!', 'mailcc!',
            'maildownload!', 'mailentiremessage!', 'mailenvelopeonly!', 'mailfiledescription!',
            'mailmessage!', 'mailnewsession!', 'mailnewsessionwithdownload!', 'mailole!',
            'mailolestatic!', 'mailoriginator!', 'mailrecipient!', 'mailreturnaccessdenied!',
            'mailreturnattachmentnotfound!', 'mailreturnattachmentopenfailure!',
            'mailreturnattachmentwritefailure!', 'mailreturndiskfull!',
            'mailreturnfailure!', 'mailreturninsufficientmemory!', 'mailreturninvalidmessage!',
            'mailreturnloginfailure!',
            'mailreturnmessageinuse!', 'mailreturnnomessages!', 'mailreturnsuccess!', 'mailreturntexttoolarge!',
            'mailreturntoomanyfiles!', 'mailreturntoomanyrecipients!', 'mailreturntoomanysessions!',
            'mailreturnunknownrecipient!',
            'mailreturnuserabort!', 'mailsession!', 'mailsuppressattachments!', 'mailto!',
            'main!', 'maximized!', 'mdi!', 'mdiclient!',
            'mdihelp!', 'menu!', 'menucascade!', 'menuitemtypeabout!',
            'menuitemtypeexit!', 'menuitemtypehelp!', 'menuitemtypenormal!', 'merge!',
            'message!', 'minimized!', 'mips!', 'modelexistserror!',
            'modelnotexistserror!', 'modern!', 'modified!', 'mousedown!',
            'mousemove!', 'mouseup!', 'moved!', 'multiline!',
            'multilineedit!', 'mutexcreateerror!', 'new!', 'newmodified!',
            'next!', 'nexttreeitem!', 'nextvisibletreeitem!', 'noborder!',
            'noconnectprivilege!', 'nolegend!', 'none!', 'nonvisualobject!',
            'normal!', 'nosymbol!', 'notic!', 'notmodified!',
            'notopmost!', 'notype!', 'numericmask!', 'objhandle!',
            'oem!', 'off!', 'offsite!', 'ok!',
            'okcancel!', 'olecontrol!', 'olecustomcontrol!', 'oleobject!',
            'olestorage!', 'olestream!', 'oletxnobject!', 'omcontrol!',
            'omcustomcontrol!', 'omembeddedcontrol!', 'omobject!', 'omstorage!',
            'omstream!', 'open!', 'orb!', 'original!',
            'osf1!', 'other!', 'outside!', 'oval!',
            'pagedown!', 'pageleft!', 'pageright!', 'pageup!',
            'parenttreeitem!', 'pbtocppobject!', 'pentium!', 'percentage!',
            'picture!', 'picturebutton!', 'picturehyperlink!', 'picturelistbox!',
            'pictureselected!', 'pie3d!', 'piegraph!', 'pipeend!',
            'pipeline!', 'pipemeter!', 'pipestart!', 'popup!',
            'powerobject!', 'powerpc!', 'powerrs!', 'ppc601!',
            'ppc603!', 'ppc604!', 'previewdelete!', 'previewfunctionreselectrow!',
            'previewfunctionretrieve!', 'previewfunctionupdate!', 'previewinsert!', 'previewselect!',
            'previewupdate!', 'previoustreeitem!', 'previousvisibletreeitem!', 'primary!',
            'printend!', 'printfooter!', 'printheader!', 'printpage!',
            'printstart!', 'prior!', 'private!', 'process!',
            'profilecall!', 'profileclass!', 'profileline!', 'profileroutine!',
            'profiling!', 'protected!', 'psreport!', 'public!',
            'question!', 'radiobutton!', 'raised!', 'rbuttondown!',
            'rbuttonup!', 'read!', 'readonlyargument!', 'real!',
            'rectangle!', 'regbinary!', 'regexpandstring!', 'reglink!',
            'regmultistring!', 'regstring!', 'regulong!', 'regulongbigendian!',
            'remoteexec!', 'remotehotlinkstart!', 'remotehotlinkstop!', 'remoteobject!',
            'remoterequest!', 'remotesend!', 'rename!', 'replace!',
            'resize!', 'resizeborder!', 'response!', 'resultset!',
            'resultsets!', 'retrieveend!', 'retrieverow!', 'retrievestart!',
            'retrycancel!', 'richtextedit!', 'Right!', 'rightclicked!',
            'rightdoubleclicked!', 'rightmargin!', 'rnddays!', 'rnddefault!',
            'rndhours!', 'rndmicroseconds!', 'rndminutes!', 'rndmonths!',
            'rndnumber!', 'rndseconds!', 'rndyears!', 'roman!',
            'roottreeitem!', 'roundrectangle!', 'routineesql!', 'routineevent!',
            'routinefunction!', 'routinegarbagecollection!', 'routineobjectcreation!',
            'routineobjectdestruction!',
            'routineroot!', 'rowfocuschanged!', 'russiancharset!', 'save!',
            'scalartype!', 'scattergraph!', 'script!', 'scriptdefinition!',
            'scriptevent!', 'scriptfunction!', 'scrollhorizontal!', 'scrollvertical!',
            'selected!', 'selectionchanged!', 'selectionchanging!', 'series!',
            'service!', 'shade!', 'shadowbox!', 'shared!',
            'sharedobjectcreateinstanceerror!', 'sharedobjectcreatepbsessionerror!',
            'sharedobjectexistserror!', 'sharedobjectnotexistserror!',
            'shiftjis!', 'show!', 'simpletype!', 'simpletypedefinition!',
            'singlelineedit!', 'size!', 'sizenesw!', 'sizens!',
            'sizenwse!', 'sizewe!', 'sol2!', 'solid!',
            'sort!', 'sourcepblerror!', 'spacing1!', 'spacing15!',
            'spacing2!', 'sparc!', 'sqlinsert!', 'sqlpreview!',
            'square!', 'sslcallback!', 'sslserviceprovider!', 'statichyperlink!',
            'statictext!', 'stgdenynone!', 'stgdenyread!', 'stgdenywrite!',
            'stgexclusive!', 'stgread!', 'stgreadwrite!', 'stgwrite!',
            'stopsign!', 'straddle!', 'streammode!', 'stretch!',
            'strikeout!', 'string!', 'stringmask!', 'structure!',
            'stylebox!', 'stylelowered!', 'styleraised!', 'styleshadowbox!',
            'subscript!', 'success!', 'superscript!', 'swiss!',
            'sylk!', 'symbol!', 'symbolhollowbox!', 'symbolhollowcircle!',
            'symbolhollowdiamond!', 'symbolhollowdownarrow!', 'symbolhollowuparrow!', 'symbolplus!',
            'symbolsolidbox!', 'symbolsolidcircle!', 'symbolsoliddiamond!', 'symbolsoliddownarrow!',
            'symbolsoliduparrow!', 'symbolstar!', 'symbolx!', 'system!',
            'systemerror!', 'systemfunctions!', 'systemkey!', 'tab!',
            'tabsonbottom!', 'tabsonbottomandtop!', 'tabsonleft!', 'tabsonleftandright!',
            'tabsonright!', 'tabsonrightandleft!', 'tabsontop!', 'tabsontopandbottom!',
            'text!', 'thaicharset!', 'thread!', 'tile!',
            'tilehorizontal!', 'time!', 'timemask!', 'timer!',
            'timernone!', 'timing!', 'tobottom!', 'toolbarmoved!',
            'top!', 'topic!', 'topmost!', 'totop!',
            'traceactivitynode!', 'traceatomic!', 'tracebeginend!', 'traceerror!',
            'traceesql!', 'tracefile!', 'tracegarbagecollect!', 'tracegeneralerror!',
            'tracein!', 'traceline!', 'tracenomorenodes!', 'tracenotstartederror!',
            'traceobject!', 'traceout!', 'traceroutine!', 'tracestartederror!',
            'tracetree!', 'tracetreeerror!', 'tracetreeesql!', 'tracetreegarbagecollect!',
            'tracetreeline!', 'tracetreenode!', 'tracetreeobject!', 'tracetreeroutine!',
            'tracetreeuser!', 'traceuser!', 'transaction!', 'transactionserver!',
            'transparent!', 'transport!', 'treeview!', 'treeviewitem!',
            'turkishcharset!', 'typeboolean!', 'typecategory!', 'typecategoryaxis!',
            'typecategorylabel!', 'typedata!', 'typedate!', 'typedatetime!',
            'typedecimal!', 'typedefinition!', 'typedouble!', 'typegraph!',
            'typeinteger!', 'typelegend!', 'typelong!', 'typereal!',
            'typeseries!', 'typeseriesaxis!', 'typeserieslabel!', 'typestring!',
            'typetime!', 'typetitle!', 'typeuint!', 'typeulong!',
            'typeunknown!', 'typevalueaxis!', 'typevaluelabel!', 'ultrasparc!',
            'unboundedarray!', 'underline!', 'underlined!', 'unsignedinteger!',
            'unsignedlong!', 'unsorted!', 'uparrow!', 'updateend!',
            'updatestart!', 'upper!', 'userdefinedsort!', 'userobject!',
            'variable!', 'variableargument!', 'variablecardinalitydefinition!', 'variabledefinition!',
            'variableglobal!', 'variableinstance!', 'variablelocal!', 'variableshared!',
            'varlistargument!', 'vbxvisual!', 'vcenter!', 'vertical!',
            'vietnamesecharset!', 'viewchange!', 'vprogressbar!', 'vscrollbar!',
            'vticksonboth!', 'vticksonleft!', 'vticksonneither!', 'vticksonright!',
            'vtrackbar!', 'window!', 'windowmenu!', 'windowobject!',
            'windows!', 'windowsnt!', 'wk1!', 'wks!',
            'wmf!', 'write!', 'xpixelstounits!', 'xunitstopixels!',
            'xvalue!', 'yesno!', 'yesnocancel!', 'ypixelstounits!',
            'yunitstopixels!',
            'yvalue!',
            'zoom!'
            )
        ),
    'SYMBOLS' => array(
            0 => array('(', ')', '[', ']', '{', '}'),
            1 => array('|'),
            2 => array('+', '-', '*', '/'),
            3 => array('=', '<', '>', '^')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #008000; font-weight: bold;',
            2 => 'color: #990099; font-weight: bold;',
            3 => 'color: #330099; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #0000ff; font-weight: bold;',
            'MULTI' => 'color: #0000ff; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #800000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #330099; font-weight: bold;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;',
            1 => 'color: #ffff00; background-color:#993300; font-weight: bold',
            2 => 'color: #000000;',
            3 => 'color: #000000;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #800000; font-weight: bold;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/idl.php0000664000175000017500000000744012014173400013444 0ustar  benbebenbe 'Uno Idl',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'published', 'get', 'set', 'service', 'singleton', 'type', 'module', 'interface', 'struct',
            'const', 'constants', 'exception', 'enum', 'raises', 'typedef'
            ),
        2 => array(
            'bound', 'maybeambiguous', 'maybedefault', 'maybevoid', 'oneway', 'optional',
            'readonly', 'in', 'out', 'inout', 'attribute', 'transient', 'removable'
            ),
        3 => array(
            'True', 'False', 'TRUE', 'FALSE'
            ),
        4 => array(
            'string', 'long', 'byte', 'hyper', 'boolean', 'any', 'char', 'double',
            'void', 'sequence', 'unsigned'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':', ';', '...'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #990078; font-weight: bold',
            2 => 'color: #36dd1c;',
            3 => 'color: #990078; font-weight: bold',
            4 => 'color: #0000ec;'
            ),
        'COMMENTS' => array(
            1 => 'color: #3f7f5f;',
            2 => 'color: #808080;',
            'MULTI' => 'color: #4080ff; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #666666; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #808080;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/purebasic.php0000664000175000017500000006210312014173433014654 0ustar  benbebenbe 'PureBasic',
    'COMMENT_SINGLE' => array( 1 => ";"  ),
    'COMMENT_MULTI' => array( ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            // Keywords
            'And', 'As', 'Break', 'CallDebugger', 'Case', 'CompilerCase', 'CompilerDefault', 'CompilerElse', 'CompilerEndIf', 'CompilerEndSelect',
            'CompilerError', 'CompilerIf', 'CompilerSelect', 'Continue', 'Data', 'DataSection', 'EndDataSection', 'Debug', 'DebugLevel', 'Declare',
            'DeclareCDLL', 'DeclareDLL', 'Default', 'Define', 'Dim', 'DisableASM', 'DisableDebugger', 'DisableExplicit', 'Else', 'ElseIf', 'EnableASM',
            'EnableDebugger', 'EnableExplicit', 'End', 'EndEnumeration', 'EndIf', 'EndImport', 'EndInterface', 'EndMacro', 'EndProcedure',
            'EndSelect', 'EndStructure', 'EndStructureUnion', 'EndWith', 'Enumeration', 'Extends', 'FakeReturn', 'For', 'Next', 'ForEach',
            'ForEver', 'Global', 'Gosub', 'Goto', 'If', 'Import', 'ImportC', 'IncludeBinary', 'IncludeFile', 'IncludePath', 'Interface', 'Macro',
            'NewList', 'Not', 'Or', 'Procedure', 'ProcedureC', 'ProcedureCDLL', 'ProcedureDLL', 'ProcedureReturn', 'Protected', 'Prototype',
            'PrototypeC', 'Read', 'ReDim', 'Repeat', 'Until', 'Restore', 'Return', 'Select', 'Shared', 'Static', 'Step', 'Structure', 'StructureUnion',
            'Swap', 'To', 'Wend', 'While', 'With', 'XIncludeFile', 'XOr'
            ),
        2 => array(
            // All Functions
            'Abs', 'ACos', 'Add3DArchive', 'AddBillboard', 'AddDate', 'AddElement', 'AddGadgetColumn', 'AddGadgetItem',
            'AddKeyboardShortcut', 'AddMaterialLayer', 'AddPackFile', 'AddPackMemory', 'AddStatusBarField', 'AddSysTrayIcon',
            'AllocateMemory', 'AmbientColor', 'AnimateEntity', 'Asc', 'ASin', 'ATan', 'AudioCDLength', 'AudioCDName', 'AudioCDStatus',
            'AudioCDTrackLength', 'AudioCDTracks', 'AudioCDTrackSeconds', 'AvailableProgramOutput', 'AvailableScreenMemory',
            'BackColor', 'Base64Decoder', 'Base64Encoder', 'BillboardGroupLocate', 'BillboardGroupMaterial', 'BillboardGroupX',
            'BillboardGroupY', 'BillboardGroupZ', 'BillboardHeight', 'BillboardLocate', 'BillboardWidth', 'BillboardX', 'BillboardY', 'BillboardZ',
            'Bin', 'BinQ', 'Blue', 'Box', 'ButtonGadget', 'ButtonImageGadget', 'CalendarGadget', 'CallCFunction', 'CallCFunctionFast',
            'CallFunction', 'CallFunctionFast', 'CameraBackColor', 'CameraFOV', 'CameraLocate', 'CameraLookAt', 'CameraProjection',
            'CameraRange', 'CameraRenderMode', 'CameraX', 'CameraY', 'CameraZ', 'CatchImage', 'CatchSound', 'CatchSprite',
            'CatchXML', 'ChangeAlphaIntensity', 'ChangeCurrentElement', 'ChangeGamma', 'ChangeListIconGadgetDisplay',
            'ChangeSysTrayIcon', 'CheckBoxGadget', 'CheckEntityCollision', 'CheckFilename', 'ChildXMLNode', 'Chr', 'Circle',
            'ClearBillboards', 'ClearClipboard', 'ClearConsole', 'ClearError', 'ClearGadgetItemList', 'ClearList', 'ClearScreen', 'ClipSprite',
            'CloseConsole', 'CloseDatabase', 'CloseFile', 'CloseGadgetList', 'CloseHelp', 'CloseLibrary', 'CloseNetworkConnection',
            'CloseNetworkServer', 'ClosePack', 'ClosePreferences', 'CloseProgram', 'CloseScreen', 'CloseSubMenu', 'CloseWindow',
            'ColorRequester', 'ComboBoxGadget', 'CompareMemory', 'CompareMemoryString', 'ConnectionID', 'ConsoleColor',
            'ConsoleCursor', 'ConsoleError', 'ConsoleLocate', 'ConsoleTitle', 'ContainerGadget', 'CopyDirectory', 'CopyEntity',
            'CopyFile', 'CopyImage', 'CopyLight', 'CopyMaterial', 'CopyMemory', 'CopyMemoryString', 'CopyMesh', 'CopySprite',
            'CopyTexture', 'CopyXMLNode', 'Cos', 'CountBillboards', 'CountGadgetItems', 'CountLibraryFunctions', 'CountList',
            'CountMaterialLayers', 'CountProgramParameters', 'CountRenderedTriangles', 'CountString', 'CRC32Fingerprint',
            'CreateBillboardGroup', 'CreateCamera', 'CreateDirectory', 'CreateEntity', 'CreateFile', 'CreateGadgetList',
            'CreateImage', 'CreateLight', 'CreateMaterial', 'CreateMenu', 'CreateMesh', 'CreateMutex', 'CreateNetworkServer',
            'CreatePack', 'CreatePalette', 'CreateParticleEmitter', 'CreatePopupMenu', 'CreatePreferences', 'CreateSprite',
            'CreateSprite3D', 'CreateStatusBar', 'CreateTerrain', 'CreateTexture', 'CreateThread', 'CreateToolBar', 'CreateXML',
            'CreateXMLNode', 'DatabaseColumnName', 'DatabaseColumns', 'DatabaseColumnType', 'DatabaseDriverDescription',
            'DatabaseDriverName', 'DatabaseError', 'DatabaseQuery', 'DatabaseUpdate', 'Date', 'DateGadget', 'Day', 'DayOfWeek',
            'DayOfYear', 'DefaultPrinter', 'Defined', 'Delay', 'DeleteDirectory', 'DeleteElement', 'DeleteFile', 'DeleteXMLNode',
            'DESFingerprint', 'DesktopDepth', 'DesktopFrequency', 'DesktopHeight', 'DesktopMouseX', 'DesktopMouseY', 'DesktopName',
            'DesktopWidth', 'DirectoryEntryAttributes', 'DirectoryEntryDate', 'DirectoryEntryName', 'DirectoryEntrySize',
            'DirectoryEntryType', 'DisableGadget', 'DisableMaterialLighting', 'DisableMenuItem', 'DisableToolBarButton', 'DisableWindow',
            'DisASMCommand', 'DisplayAlphaSprite', 'DisplayPalette', 'DisplayPopupMenu', 'DisplayRGBFilter', 'DisplayShadowSprite',
            'DisplaySolidSprite', 'DisplaySprite', 'DisplaySprite3D', 'DisplayTranslucentSprite', 'DisplayTransparentSprite', 'DragFiles',
            'DragImage', 'DragOSFormats', 'DragPrivate', 'DragText', 'DrawAlphaImage', 'DrawImage', 'DrawingBuffer',
            'DrawingBufferPitch', 'DrawingBufferPixelFormat', 'DrawingFont', 'DrawingMode', 'DrawText', 'EditorGadget',
            'egrid_AddColumn', 'egrid_AddRows', 'egrid_AppendCells', 'egrid_ClearRows', 'egrid_CopyCells',
            'egrid_CreateCellCallback', 'egrid_CreateGrid', 'egrid_DeleteCells', 'egrid_FastDeleteCells', 'egrid_FreeGrid',
            'egrid_GetCellSelection', 'egrid_GetCellText', 'egrid_GetColumnOrderArray', 'egrid_HasSelectedCellChanged', 'egrid_Height',
            'egrid_HideEdit', 'egrid_HideGrid', 'egrid_MakeCellVisible', 'egrid_NumberOfColumns', 'egrid_NumberOfRows',
            'egrid_PasteCells', 'egrid_Register', 'egrid_RemoveCellCallback', 'egrid_RemoveColumn', 'egrid_RemoveRow', 'egrid_Resize',
            'egrid_SelectCell', 'egrid_SelectedColumn', 'egrid_SelectedRow', 'egrid_SetCellSelection', 'egrid_SetCellText',
            'egrid_SetColumnOrderArray', 'egrid_SetHeaderFont', 'egrid_SetHeaderHeight', 'egrid_SetOption', 'egrid_Width', 'egrid_x',
            'egrid_y', 'EjectAudioCD', 'ElapsedMilliseconds', 'Ellipse', 'EnableGadgetDrop', 'EnableGraphicalConsole',
            'EnableWindowDrop', 'EnableWorldCollisions', 'EnableWorldPhysics', 'Engine3DFrameRate', 'EntityAngleX',
            'EntityAnimationLength', 'EntityLocate', 'EntityMaterial', 'EntityMesh', 'EntityPhysicBody', 'EntityRenderMode',
            'EntityX', 'EntityY', 'EntityZ', 'EnvironmentVariableName', 'EnvironmentVariableValue', 'Eof', 'EventClient',
            'EventDropAction', 'EventDropBuffer', 'EventDropFiles', 'EventDropImage', 'EventDropPrivate', 'EventDropSize',
            'EventDropText', 'EventDropType', 'EventDropX', 'EventDropY', 'EventGadget', 'EventlParam', 'EventMenu', 'EventServer',
            'EventType', 'EventWindow', 'EventwParam', 'ExamineDatabaseDrivers', 'ExamineDesktops', 'ExamineDirectory',
            'ExamineEnvironmentVariables', 'ExamineIPAddresses', 'ExamineJoystick', 'ExamineKeyboard', 'ExamineLibraryFunctions',
            'ExamineMouse', 'ExaminePreferenceGroups', 'ExaminePreferenceKeys', 'ExamineScreenModes', 'ExamineWorldCollisions',
            'ExamineXMLAttributes', 'ExplorerComboGadget', 'ExplorerListGadget', 'ExplorerTreeGadget', 'ExportXML',
            'ExportXMLSize', 'FileBuffersSize', 'FileID', 'FileSeek', 'FileSize', 'FillArea', 'FindString', 'FinishDirectory',
            'FirstDatabaseRow', 'FirstElement', 'FirstWorldCollisionEntity', 'FlipBuffers', 'FlushFileBuffers', 'Fog', 'FontID',
            'FontRequester', 'FormatDate', 'FormatXML', 'Frame3DGadget', 'FreeBillboardGroup', 'FreeCamera', 'FreeEntity',
            'FreeFont', 'FreeGadget', 'FreeImage', 'FreeLight', 'FreeMaterial', 'FreeMemory', 'FreeMenu', 'FreeMesh',
            'FreeModule', 'FreeMovie', 'FreeMutex', 'FreePalette', 'FreeParticleEmitter', 'FreeSound', 'FreeSprite',
            'FreeSprite3D', 'FreeStatusBar', 'FreeTexture', 'FreeToolBar', 'FreeXML', 'FrontColor', 'GadgetHeight', 'GadgetID',
            'GadgetItemID', 'GadgetToolTip', 'GadgetType', 'GadgetWidth', 'GadgetX', 'GadgetY', 'GetActiveGadget',
            'GetActiveWindow', 'GetClientIP', 'GetClientPort', 'GetClipboardImage', 'GetClipboardText', 'GetCurrentDirectory',
            'GetCurrentEIP', 'GetDatabaseDouble', 'GetDatabaseFloat', 'GetDatabaseLong', 'GetDatabaseQuad', 'GetDatabaseString',
            'GetDisASMString', 'GetEntityAnimationTime', 'GetEntityFriction', 'GetEntityMass', 'GetEnvironmentVariable',
            'GetErrorAddress', 'GetErrorCounter', 'GetErrorDescription', 'GetErrorDLL', 'GetErrorLineNR', 'GetErrorModuleName',
            'GetErrorNumber', 'GetErrorRegister', 'GetExtensionPart', 'GetFileAttributes', 'GetFileDate', 'GetFilePart', 'GetFunction',
            'GetFunctionEntry', 'GetGadgetAttribute', 'GetGadgetColor', 'GetGadgetData', 'GetGadgetFont',
            'GetGadgetItemAttribute', 'GetGadgetItemColor', 'GetGadgetItemData', 'GetGadgetItemState', 'GetGadgetItemText',
            'GetGadgetState', 'GetGadgetText', 'GetHomeDirectory', 'GetMenuItemState', 'GetMenuItemText', 'GetMenuTitleText',
            'GetModulePosition', 'GetModuleRow', 'GetPaletteColor', 'GetPathPart', 'GetTemporaryDirectory',
            'GetToolBarButtonState', 'GetWindowColor', 'GetWindowState', 'GetWindowTitle', 'GetXMLAttribute', 'GetXMLEncoding',
            'GetXMLNodeName', 'GetXMLNodeOffset', 'GetXMLNodeText', 'GetXMLStandalone', 'GoToEIP', 'GrabImage', 'GrabSprite',
            'Green', 'Hex', 'HexQ', 'HideBillboardGroup', 'HideEntity', 'HideGadget', 'HideLight', 'HideMenu', 'HideParticleEmitter',
            'HideWindow', 'Hostname', 'Hour', 'HyperLinkGadget', 'ImageDepth', 'ImageGadget', 'ImageHeight', 'ImageID',
            'ImageOutput', 'ImageWidth', 'InitAudioCD', 'InitEngine3D', 'InitJoystick', 'InitKeyboard', 'InitMouse', 'InitMovie',
            'InitNetwork', 'InitPalette', 'InitScintilla', 'InitSound', 'InitSprite', 'InitSprite3D', 'Inkey', 'Input', 'InputRequester',
            'InsertElement', 'Int', 'IntQ', 'IPAddressField', 'IPAddressGadget', 'IPString', 'IsBillboardGroup', 'IsCamera', 'IsDatabase',
            'IsDirectory', 'IsEntity', 'IsFile', 'IsFont', 'IsGadget', 'IsImage', 'IsLibrary', 'IsLight', 'IsMaterial', 'IsMenu', 'IsMesh',
            'IsModule', 'IsMovie', 'IsPalette', 'IsParticleEmitter', 'IsProgram', 'IsScreenActive', 'IsSound', 'IsSprite', 'IsSprite3D',
            'IsStatusBar', 'IsSysTrayIcon', 'IsTexture', 'IsThread', 'IsToolBar', 'IsWindow', 'IsXML', 'JoystickAxisX', 'JoystickAxisY',
            'JoystickButton', 'KeyboardInkey', 'KeyboardMode', 'KeyboardPushed', 'KeyboardReleased', 'KillProgram', 'KillThread',
            'LastElement', 'LCase', 'Left', 'Len', 'LibraryFunctionAddress', 'LibraryFunctionName', 'LibraryID', 'LightColor',
            'LightLocate', 'LightSpecularColor', 'Line', 'LineXY', 'ListIconGadget', 'ListIndex', 'ListViewGadget', 'LoadFont',
            'LoadImage', 'LoadMesh', 'LoadModule', 'LoadMovie', 'LoadPalette', 'LoadSound', 'LoadSprite', 'LoadTexture',
            'LoadWorld', 'LoadXML', 'Loc', 'LockMutex', 'Lof', 'Log', 'Log10', 'LSet', 'LTrim', 'MainXMLNode', 'MakeIPAddress',
            'MaterialAmbientColor', 'MaterialBlendingMode', 'MaterialDiffuseColor', 'MaterialFilteringMode', 'MaterialID',
            'MaterialShadingMode', 'MaterialSpecularColor', 'MD5FileFingerprint', 'MD5Fingerprint', 'MDIGadget', 'MemorySize',
            'MemoryStringLength', 'MenuBar', 'MenuHeight', 'MenuID', 'MenuItem', 'MenuTitle', 'MeshID', 'MessageRequester',
            'Mid', 'Minute', 'ModuleVolume', 'Month', 'MouseButton', 'MouseDeltaX', 'MouseDeltaY', 'MouseLocate', 'MouseWheel',
            'MouseX', 'MouseY', 'MoveBillboard', 'MoveBillboardGroup', 'MoveCamera', 'MoveEntity', 'MoveLight', 'MoveMemory',
            'MoveParticleEmitter', 'MoveXMLNode', 'MovieAudio', 'MovieHeight', 'MovieInfo', 'MovieLength', 'MovieSeek',
            'MovieStatus', 'MovieWidth', 'NetworkClientEvent', 'NetworkServerEvent', 'NewPrinterPage', 'NextDatabaseDriver',
            'NextDatabaseRow', 'NextDirectoryEntry', 'NextElement', 'NextEnvironmentVariable', 'NextIPAddress',
            'NextLibraryFunction', 'NextPackFile', 'NextPreferenceGroup', 'NextPreferenceKey', 'NextScreenMode',
            'NextSelectedFileName', 'NextWorldCollision', 'NextXMLAttribute', 'NextXMLNode', 'OffsetOf', 'OnErrorExit',
            'OnErrorGosub', 'OnErrorGoto', 'OnErrorResume', 'OpenComPort', 'OpenConsole', 'OpenDatabase',
            'OpenDatabaseRequester', 'OpenFile', 'OpenFileRequester', 'OpenGadgetList', 'OpenHelp', 'OpenLibrary',
            'OpenNetworkConnection', 'OpenPack', 'OpenPreferences', 'OpenScreen', 'OpenSubMenu', 'OpenWindow',
            'OpenWindowedScreen', 'OptionGadget', 'OSVersion', 'PackerCallback', 'PackFileSize', 'PackMemory', 'PanelGadget',
            'ParentXMLNode', 'Parse3DScripts', 'ParseDate', 'ParticleColorFader', 'ParticleColorRange', 'ParticleEmissionRate',
            'ParticleEmitterDirection', 'ParticleEmitterLocate', 'ParticleEmitterX', 'ParticleEmitterY', 'ParticleEmitterZ',
            'ParticleMaterial', 'ParticleSize', 'ParticleTimeToLive', 'ParticleVelocity', 'PathRequester', 'PauseAudioCD',
            'PauseMovie', 'PauseThread', 'PeekB', 'PeekC', 'PeekD', 'PeekF', 'PeekL', 'PeekQ', 'PeekS', 'PeekW', 'PlayAudioCD',
            'PlayModule', 'PlayMovie', 'PlaySound', 'Plot', 'Point', 'PokeB', 'PokeC', 'PokeD', 'PokeF', 'PokeL', 'PokeQ', 'PokeS',
            'PokeW', 'Pow', 'PreferenceComment', 'PreferenceGroup', 'PreferenceGroupName', 'PreferenceKeyName',
            'PreferenceKeyValue', 'PreviousDatabaseRow', 'PreviousElement', 'PreviousXMLNode', 'Print', 'PrinterOutput',
            'PrinterPageHeight', 'PrinterPageWidth', 'PrintN', 'PrintRequester', 'ProgramExitCode', 'ProgramFilename',
            'ProgramID', 'ProgramParameter', 'ProgramRunning', 'ProgressBarGadget', 'Random', 'RandomSeed', 'RawKey',
            'ReadByte', 'ReadCharacter', 'ReadConsoleData', 'ReadData', 'ReadDouble', 'ReadFile', 'ReadFloat', 'ReadLong',
            'ReadPreferenceDouble', 'ReadPreferenceFloat', 'ReadPreferenceLong', 'ReadPreferenceQuad',
            'ReadPreferenceString', 'ReadProgramData', 'ReadProgramError', 'ReadProgramString', 'ReadQuad', 'ReadString',
            'ReadStringFormat', 'ReadWord', 'ReAllocateMemory', 'ReceiveNetworkData', 'ReceiveNetworkFile', 'Red',
            'Reg_DeleteEmptyKey', 'Reg_DeleteKey', 'Reg_DeleteValue', 'Reg_GetErrorMsg', 'Reg_GetErrorNr',
            'Reg_GetValueTyp', 'Reg_ListSubKey', 'Reg_ListSubValue', 'Reg_ReadBinary', 'Reg_ReadExpandString',
            'Reg_ReadLong', 'Reg_ReadMultiLineString', 'Reg_ReadQuad', 'Reg_ReadString', 'Reg_WriteBinary',
            'Reg_WriteExpandString', 'Reg_WriteLong', 'Reg_WriteMultiLineString', 'Reg_WriteQuad', 'Reg_WriteString',
            'ReleaseMouse', 'RemoveBillboard', 'RemoveEnvironmentVariable', 'RemoveGadgetColumn', 'RemoveGadgetItem',
            'RemoveKeyboardShortcut', 'RemoveMaterialLayer', 'RemovePreferenceGroup', 'RemovePreferenceKey',
            'RemoveString', 'RemoveSysTrayIcon', 'RemoveXMLAttribute', 'RenameFile', 'RenderMovieFrame', 'RenderWorld',
            'ReplaceString', 'ResetList', 'ResizeBillboard', 'ResizeEntity', 'ResizeGadget', 'ResizeImage', 'ResizeMovie',
            'ResizeParticleEmitter', 'ResizeWindow', 'ResolveXMLAttributeName', 'ResolveXMLNodeName', 'ResumeAudioCD',
            'ResumeMovie', 'ResumeThread', 'RGB', 'Right', 'RootXMLNode', 'RotateBillboardGroup', 'RotateCamera',
            'RotateEntity', 'RotateMaterial', 'RotateSprite3D', 'Round', 'RSet', 'RTrim', 'RunProgram', 'SaveFileRequester',
            'SaveImage', 'SaveSprite', 'SaveXML', 'ScaleEntity', 'ScaleMaterial', 'ScintillaGadget', 'ScintillaSendMessage',
            'ScreenID', 'ScreenModeDepth', 'ScreenModeHeight', 'ScreenModeRefreshRate', 'ScreenModeWidth',
            'ScreenOutput', 'ScrollAreaGadget', 'ScrollBarGadget', 'ScrollMaterial', 'Second', 'SecondWorldCollisionEntity',
            'SelectedFilePattern', 'SelectedFontColor', 'SelectedFontName', 'SelectedFontSize', 'SelectedFontStyle',
            'SelectElement', 'SendNetworkData', 'SendNetworkFile', 'SendNetworkString', 'SetActiveGadget',
            'SetActiveWindow', 'SetClipboardImage', 'SetClipboardText', 'SetCurrentDirectory', 'SetDragCallback',
            'SetDropCallback', 'SetEntityAnimationTime', 'SetEntityFriction', 'SetEntityMass', 'SetEnvironmentVariable',
            'SetErrorNumber', 'SetFileAttributes', 'SetFileDate', 'SetFrameRate', 'SetGadgetAttribute', 'SetGadgetColor',
            'SetGadgetData', 'SetGadgetFont', 'SetGadgetItemAttribute', 'SetGadgetItemColor', 'SetGadgetItemData',
            'SetGadgetItemState', 'SetGadgetItemText', 'SetGadgetState', 'SetGadgetText', 'SetMenuItemState',
            'SetMenuItemText', 'SetMenuTitleText', 'SetMeshData', 'SetModulePosition', 'SetPaletteColor', 'SetRefreshRate',
            'SetToolBarButtonState', 'SetWindowCallback', 'SetWindowColor', 'SetWindowState', 'SetWindowTitle',
            'SetXMLAttribute', 'SetXMLEncoding', 'SetXMLNodeName', 'SetXMLNodeOffset', 'SetXMLNodeText',
            'SetXMLStandalone', 'Sin', 'SizeOf', 'SkyBox', 'SkyDome', 'SmartWindowRefresh', 'SortArray', 'SortList',
            'SortStructuredArray', 'SortStructuredList', 'SoundFrequency', 'SoundPan', 'SoundVolume', 'Space',
            'SpinGadget', 'SplitterGadget', 'Sprite3DBlendingMode', 'Sprite3DQuality', 'SpriteCollision', 'SpriteDepth',
            'SpriteHeight', 'SpriteID', 'SpriteOutput', 'SpritePixelCollision', 'SpriteWidth', 'Sqr', 'Start3D', 'StartDrawing',
            'StartPrinting', 'StartSpecialFX', 'StatusBarHeight', 'StatusBarIcon', 'StatusBarID', 'StatusBarText',
            'StickyWindow', 'Stop3D', 'StopAudioCD', 'StopDrawing', 'StopModule', 'StopMovie', 'StopPrinting',
            'StopSound', 'StopSpecialFX', 'Str', 'StrD', 'StrF', 'StringByteLength', 'StringField', 'StringGadget', 'StrQ',
            'StrU', 'Subsystem', 'SwapElements', 'SysTrayIconToolTip', 'Tan', 'TerrainHeight', 'TextGadget', 'TextHeight',
            'TextureHeight', 'TextureID', 'TextureOutput', 'TextureWidth', 'TextWidth', 'ThreadID', 'ThreadPriority',
            'ToolBarHeight', 'ToolBarID', 'ToolBarImageButton', 'ToolBarSeparator', 'ToolBarStandardButton',
            'ToolBarToolTip', 'TrackBarGadget', 'TransformSprite3D', 'TransparentSpriteColor', 'TreeGadget', 'Trim',
            'TruncateFile', 'TryLockMutex', 'UCase', 'UnlockMutex', 'UnpackMemory', 'UseAudioCD', 'UseBuffer',
            'UseGadgetList', 'UseJPEGImageDecoder', 'UseJPEGImageEncoder', 'UseODBCDatabase', 'UseOGGSoundDecoder',
            'UsePNGImageDecoder', 'UsePNGImageEncoder', 'UseTGAImageDecoder', 'UseTIFFImageDecoder', 'Val', 'ValD',
            'ValF', 'ValQ', 'WaitProgram', 'WaitThread', 'WaitWindowEvent', 'WebGadget', 'WebGadgetPath', 'WindowEvent',
            'WindowHeight', 'WindowID', 'WindowMouseX', 'WindowMouseY', 'WindowOutput', 'WindowWidth', 'WindowX',
            'WindowY', 'WorldGravity', 'WorldShadows', 'WriteByte', 'WriteCharacter', 'WriteConsoleData', 'WriteData',
            'WriteDouble', 'WriteFloat', 'WriteLong', 'WritePreferenceDouble', 'WritePreferenceFloat', 'WritePreferenceLong',
            'WritePreferenceQuad', 'WritePreferenceString', 'WriteProgramData', 'WriteProgramString', 'WriteProgramStringN',
            'WriteQuad', 'WriteString', 'WriteStringFormat', 'WriteStringN', 'WriteWord', 'XMLAttributeName', 'XMLAttributeValue',
            'XMLChildCount', 'XMLError', 'XMLErrorLine', 'XMLErrorPosition', 'XMLNodeFromID', 'XMLNodeFromPath', 'XMLNodePath',
            'XMLNodeType', 'XMLStatus', 'Year', 'ZoomSprite3D'
            ),
        3 => array(
            // some ASM instructions
            'AAA', 'AAD', 'AAM', 'AAS', 'ADC', 'ADD', 'AND', 'ARPL', 'BOUND', 'BSF', 'BSR', 'BSWAP', 'BT', 'BTC', 'BTR',
            'BTS', 'CALL', 'CBW', 'CDQ', 'CLC', 'CLD', 'CLI', 'CLTS', 'CMC', 'CMP', 'CMPS', 'CMPXCHG', 'CWD', 'CWDE',
            'DAA', 'DAS', 'DB', 'DD', 'DEC', 'DIV', 'DW', 'ENTER', 'ESC', 'F2XM1', 'FABS', 'FADD', 'FCHS', 'FCLEX',
            'FCOM', 'FDIV', 'FDIVR', 'FFREE', 'FINCSTP', 'FINIT', 'FLD', 'FLD1', 'FLDCW', 'FMUL', 'FNOP', 'FPATAN',
            'FPREM', 'FRNDINT', 'FSAVE', 'FSCALE', 'FSETPM', 'FSIN', 'FSQRT', 'FST', 'FSTENV', 'FSTSW', 'FSUB',
            'FSUBR', 'FTST', 'FUCOM', 'FWAIT', 'FXAM', 'FXCH', 'FXTRACT', 'FYL2X', 'FYL2XP1', 'HLT', 'IDIV', 'IMUL',
            'IN', 'INC', 'INS', 'INT', 'INTO', 'INVLPG', 'IRET', 'IRETD', 'JA', 'JAE', 'JB', 'JBE', 'JC', 'JCXZ', 'JE', 'JECXZ',
            'JG', 'JGE', 'JL', 'JLE', 'JMP', 'JNA', 'JNAE', 'JNB', 'JNBE', 'JNC', 'JNE', 'JNG', 'JNGE', 'JNL', 'JNLE', 'JNO', 'JNP',
            'JNS', 'JNZ', 'JO', 'JP', 'JPE', 'JPO', 'JS', 'JZ', 'LAHF', 'LAR', 'LDS', 'LEA', 'LEAVE', 'LES', 'LFS', 'LGDT', 'LGS',
            'LIDT', 'LLDT', 'LMSW', 'LOCK', 'LODS', 'LOOP', 'LOOPE', 'LOOPNE', 'LOOPNZ', 'LOOPZ', 'LSL', 'LSS', 'LTR',
            'MOV', 'MOVS', 'MOVSX', 'MOVZX', 'MUL', 'NEG', 'NOP', 'NOT', 'OR', 'OUT', 'OUTS', 'POP', 'POPA', 'POPAD',
            'POPF', 'POPFD', 'PUSH', 'PUSHA', 'PUSHAD', 'PUSHF', 'PUSHFD', 'RCL', 'RCR', 'REP', 'REPE', 'REPNE',
            'REPNZ', 'REPZ', 'RET', 'RETF', 'ROL', 'ROR', 'SAHF', 'SAL', 'SAR', 'SBB', 'SCAS', 'SETAE', 'SETB', 'SETBE',
            'SETC', 'SETE', 'SETG', 'SETGE', 'SETL', 'SETLE', 'SETNA', 'SETNAE', 'SETNB', 'SETNC', 'SETNE', 'SETNG',
            'SETNGE', 'SETNL', 'SETNLE', 'SETNO', 'SETNP', 'SETNS', 'SETNZ', 'SETO', 'SETP', 'SETPE', 'SETPO',
            'SETS', 'SETZ', 'SGDT', 'SHL', 'SHLD', 'SHR', 'SHRD', 'SIDT', 'SLDT', 'SMSW', 'STC', 'STD', 'STI',
            'STOS', 'STR', 'SUB', 'TEST', 'VERR', 'VERW', 'WAIT', 'WBINVD', 'XCHG', 'XLAT', 'XLATB', 'XOR'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '+', '-', '*', '/', '\\', '>', '<', '=', '<=', '>=', '&', '|', '!', '~', '<>', '>>', '<<', '%'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000066; font-weight: bold;',
            2 => 'color: #0000ff;',
            3 => 'color: #000fff;'
            ),
        'COMMENTS' => array(
            1 => 'color: #ff0000; font-style: italic;',
            'MULTI' => 'color: #ff0000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000066;'
            ),
        'STRINGS' => array(
            0 => 'color: #009900;'
            ),
        'NUMBERS' => array(
            0 => 'color: #CC0000;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => '\\'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => false,
        1 => false
        )
);

?>geshi/geshi/actionscript.php0000664000175000017500000002731612014173444015412 0ustar  benbebenbe 'ActionScript',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            '#include', 'for', 'foreach', 'each', 'if', 'elseif', 'else', 'while', 'do', 'dowhile',
            'endwhile', 'endif', 'switch', 'case', 'endswitch', 'return', 'break', 'continue', 'in'
            ),
        2 => array(
            'null', 'false', 'true', 'var',
            'default', 'function', 'class',
            'new', '_global'
            ),
        3 => array(
            '#endinitclip', '#initclip', '__proto__', '_accProps', '_alpha', '_currentframe',
            '_droptarget', '_focusrect', '_framesloaded', '_height', '_highquality', '_lockroot',
            '_name', '_parent', '_quality', '_root', '_rotation', '_soundbuftime', '_target', '_totalframes',
            '_url', '_visible', '_width', '_x', '_xmouse', '_xscale', '_y', '_ymouse', '_yscale', 'abs',
            'Accessibility', 'acos', 'activityLevel', 'add', 'addListener', 'addPage', 'addProperty',
            'addRequestHeader', 'align', 'allowDomain', 'allowInsecureDomain', 'and', 'appendChild',
            'apply', 'Arguments', 'Array', 'asfunction', 'asin', 'atan', 'atan2', 'attachAudio', 'attachMovie',
            'attachSound', 'attachVideo', 'attributes', 'autosize', 'avHardwareDisable', 'background',
            'backgroundColor', 'BACKSPACE', 'bandwidth', 'beginFill', 'beginGradientFill', 'blockIndent',
            'bold', 'Boolean', 'border', 'borderColor', 'bottomScroll', 'bufferLength', 'bufferTime',
            'builtInItems', 'bullet', 'Button', 'bytesLoaded', 'bytesTotal', 'call', 'callee', 'caller',
            'Camera', 'capabilities', 'CAPSLOCK', 'caption', 'catch', 'ceil', 'charAt', 'charCodeAt',
            'childNodes', 'chr', 'clear', 'clearInterval', 'cloneNode', 'close', 'Color', 'concat',
            'connect', 'condenseWhite', 'constructor', 'contentType', 'ContextMenu', 'ContextMenuItem',
            'CONTROL', 'copy', 'cos', 'createElement', 'createEmptyMovieClip', 'createTextField',
            'createTextNode', 'currentFps', 'curveTo', 'CustomActions', 'customItems', 'data', 'Date',
            'deblocking', 'delete', 'DELETEKEY', 'docTypeDecl', 'domain', 'DOWN',
            'duplicateMovieClip', 'duration', 'dynamic', 'E', 'embedFonts', 'enabled',
            'END', 'endFill', 'ENTER', 'eq', 'Error', 'ESCAPE(Konstante)', 'escape(Funktion)', 'eval',
            'exactSettings', 'exp', 'extends', 'finally', 'findText', 'firstChild', 'floor',
            'flush', 'focusEnabled', 'font', 'fps', 'fromCharCode', 'fscommand',
            'gain', 'ge', 'get', 'getAscii', 'getBeginIndex', 'getBounds', 'getBytesLoaded', 'getBytesTotal',
            'getCaretIndex', 'getCode', 'getCount', 'getDate', 'getDay', 'getDepth', 'getEndIndex', 'getFocus',
            'getFontList', 'getFullYear', 'getHours', 'getInstanceAtDepth', 'getLocal', 'getMilliseconds',
            'getMinutes', 'getMonth', 'getNewTextFormat', 'getNextHighestDepth', 'getPan', 'getProgress',
            'getProperty', 'getRGB', 'getSeconds', 'getSelected', 'getSelectedText', 'getSize', 'getStyle',
            'getStyleNames', 'getSWFVersion', 'getText', 'getTextExtent', 'getTextFormat', 'getTextSnapshot',
            'getTime', 'getTimer', 'getTimezoneOffset', 'getTransform', 'getURL', 'getUTCDate', 'getUTCDay',
            'getUTCFullYear', 'getUTCHours', 'getUTCMilliseconds', 'getUTCMinutes', 'getUTCMonth', 'getUTCSeconds',
            'getVersion', 'getVolume', 'getYear', 'globalToLocal', 'goto', 'gotoAndPlay', 'gotoAndStop',
            'hasAccessibility', 'hasAudio', 'hasAudioEncoder', 'hasChildNodes', 'hasEmbeddedVideo', 'hasMP3',
            'hasPrinting', 'hasScreenBroadcast', 'hasScreenPlayback', 'hasStreamingAudio', 'hasStreamingVideo',
            'hasVideoEncoder', 'height', 'hide', 'hideBuiltInItems', 'hitArea', 'hitTest', 'hitTestTextNearPos',
            'HOME', 'hscroll', 'html', 'htmlText', 'ID3', 'ifFrameLoaded', 'ignoreWhite', 'implements',
            'import', 'indent', 'index', 'indexOf', 'Infinity', '-Infinity', 'INSERT', 'insertBefore', 'install',
            'instanceof', 'int', 'interface', 'isActive', 'isDebugger', 'isDown', 'isFinite', 'isNaN', 'isToggled',
            'italic', 'join', 'Key', 'language', 'lastChild', 'lastIndexOf', 'le', 'leading', 'LEFT', 'leftMargin',
            'length', 'level', 'lineStyle', 'lineTo', 'list', 'LN10', 'LN2', 'load', 'loadClip', 'loaded', 'loadMovie',
            'loadMovieNum', 'loadSound', 'loadVariables', 'loadVariablesNum', 'LoadVars', 'LocalConnection',
            'localFileReadDisable', 'localToGlobal', 'log', 'LOG10E', 'LOG2E', 'manufacturer', 'Math', 'max',
            'MAX_VALUE', 'maxChars', 'maxhscroll', 'maxscroll', 'mbchr', 'mblength', 'mbord', 'mbsubstring', 'menu',
            'message', 'Microphone', 'min', 'MIN_VALUE', 'MMExecute', 'motionLevel', 'motionTimeOut', 'Mouse',
            'mouseWheelEnabled', 'moveTo', 'Movieclip', 'MovieClipLoader', 'multiline', 'muted', 'name', 'names', 'NaN',
            'ne', 'NEGATIVE_INFINITY', 'NetConnection', 'NetStream', 'newline', 'nextFrame',
            'nextScene', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue', 'not', 'Number', 'Object',
            'on', 'onActivity', 'onChanged', 'onClipEvent', 'onClose', 'onConnect', 'onData', 'onDragOut',
            'onDragOver', 'onEnterFrame', 'onID3', 'onKeyDown', 'onKeyUp', 'onKillFocus', 'onLoad', 'onLoadComplete',
            'onLoadError', 'onLoadInit', 'onLoadProgress', 'onLoadStart', 'onMouseDown', 'onMouseMove', 'onMouseUp',
            'onMouseWheel', 'onPress', 'onRelease', 'onReleaseOutside', 'onResize', 'onRollOut', 'onRollOver',
            'onScroller', 'onSelect', 'onSetFocus', 'onSoundComplete', 'onStatus', 'onUnload', 'onUpdate', 'onXML',
            'or(logischesOR)', 'ord', 'os', 'parentNode', 'parseCSS', 'parseFloat', 'parseInt', 'parseXML', 'password',
            'pause', 'PGDN', 'PGUP', 'PI', 'pixelAspectRatio', 'play', 'playerType', 'pop', 'position',
            'POSITIVE_INFINITY', 'pow', 'prevFrame', 'previousSibling', 'prevScene', 'print', 'printAsBitmap',
            'printAsBitmapNum', 'PrintJob', 'printNum', 'private', 'prototype', 'public', 'push', 'quality',
            'random', 'rate', 'registerClass', 'removeListener', 'removeMovieClip', 'removeNode', 'removeTextField',
            'replaceSel', 'replaceText', 'resolutionX', 'resolutionY', 'restrict', 'reverse', 'RIGHT',
            'rightMargin', 'round', 'scaleMode', 'screenColor', 'screenDPI', 'screenResolutionX', 'screenResolutionY',
            'scroll', 'seek', 'selectable', 'Selection', 'send', 'sendAndLoad', 'separatorBefore', 'serverString',
            'set', 'setvariable', 'setBufferTime', 'setClipboard', 'setDate', 'setFocus', 'setFullYear', 'setGain',
            'setHours', 'setInterval', 'setMask', 'setMilliseconds', 'setMinutes', 'setMode', 'setMonth',
            'setMotionLevel', 'setNewTextFormat', 'setPan', 'setProperty', 'setQuality', 'setRate', 'setRGB',
            'setSeconds', 'setSelectColor', 'setSelected', 'setSelection', 'setSilenceLevel', 'setStyle',
            'setTextFormat', 'setTime', 'setTransform', 'setUseEchoSuppression', 'setUTCDate', 'setUTCFullYear',
            'setUTCHours', 'setUTCMilliseconds', 'setUTCMinutes', 'setUTCMonth', 'setUTCSeconds', 'setVolume',
            'setYear', 'SharedObject', 'SHIFT(Konstante)', 'shift(Methode)', 'show', 'showMenu', 'showSettings',
            'silenceLevel', 'silenceTimeout', 'sin', 'size', 'slice', 'smoothing', 'sort', 'sortOn', 'Sound', 'SPACE',
            'splice', 'split', 'sqrt', 'SQRT1_2', 'SQRT2', 'Stage', 'start', 'startDrag', 'static', 'status', 'stop',
            'stopAllSounds', 'stopDrag', 'String', 'StyleSheet(Klasse)', 'styleSheet(Eigenschaft)', 'substr',
            'substring', 'super', 'swapDepths', 'System', 'TAB', 'tabChildren', 'tabEnabled', 'tabIndex',
            'tabStops', 'tan', 'target', 'targetPath', 'tellTarget', 'text', 'textColor', 'TextField', 'TextFormat',
            'textHeight', 'TextSnapshot', 'textWidth', 'this', 'throw', 'time', 'toggleHighQuality', 'toLowerCase',
            'toString', 'toUpperCase', 'trace', 'trackAsMenu', 'try', 'type', 'typeof', 'undefined',
            'underline', 'unescape', 'uninstall', 'unloadClip', 'unloadMovie', 'unLoadMovieNum', 'unshift', 'unwatch',
            'UP', 'updateAfterEvent', 'updateProperties', 'url', 'useCodePage', 'useEchoSuppression', 'useHandCursor',
            'UTC', 'valueOf', 'variable', 'version', 'Video', 'visible', 'void', 'watch', 'width',
            'with', 'wordwrap', 'XML', 'xmlDecl', 'XMLNode', 'XMLSocket'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #0066CC;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>geshi/geshi/hq9plus.php0000664000175000017500000000556312014173404014311 0ustar  benbebenbe 'HQ9+',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        'H', 'Q', '9', '+', 'h', 'q'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #a16000;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'KEYWORDS' => GESHI_NEVER,
            'COMMENTS' => GESHI_NEVER,
            'STRINGS' => GESHI_NEVER,
            'REGEXPS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER
            )
        )
);

?>
geshi/geshi/actionscript3.php0000664000175000017500000006732412014173451015476 0ustar  benbebenbe 'ActionScript 3',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Regular expressions
        2 => "/(?<=[\\s^])(s|tr|y)\\/(?!\s)(?:\\\\.|(?!\n)[^\\/\\\\])+(? GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'with', 'while', 'void', 'undefined', 'typeof', 'try', 'true',
            'throw', 'this', 'switch', 'super', 'set', 'return', 'public', 'protected',
            'private', 'null', 'new', 'is', 'internal', 'instanceof', 'in',
            'import', 'if', 'get', 'for', 'false', 'else', 'each', 'do',
            'delete', 'default', 'continue', 'catch', 'case', 'break', 'as',
            'extends', 'override'
            ),
        2 => array(
            'var'
            ),
        3 => array(
            'function'
            ),
        4 => array(
            'class', 'package'
            ),
        6 => array(
            'flash.xml', 'flash.utils', 'flash.ui', 'flash.text',
            'flash.system', 'flash.profiler', 'flash.printing', 'flash.net',
            'flash.media', 'flash.geom', 'flash.filters', 'flash.external',
            'flash.events', 'flash.errors', 'flash.display',
            'flash.accessibility'
            ),
        7 => array(
            'zoom', 'year', 'y', 'xmlDecl', 'x', 'writeUnsignedInt',
            'writeUTFBytes', 'writeUTF', 'writeShort', 'writeObject',
            'writeMultiByte', 'writeInt', 'writeFloat', 'writeExternal',
            'writeDynamicProperty', 'writeDynamicProperties', 'writeDouble',
            'writeBytes', 'writeByte', 'writeBoolean', 'wordWrap',
            'willTrigger', 'width', 'volume', 'visible', 'videoWidth',
            'videoHeight', 'version', 'valueOf', 'value', 'usingTLS',
            'useRichTextClipboard', 'useHandCursor', 'useEchoSuppression',
            'useCodePage', 'url', 'uri', 'uploadCompleteData', 'upload',
            'updateProperties', 'updateAfterEvent', 'upState', 'unshift',
            'unlock', 'unload', 'union', 'unescapeMultiByte', 'unescape',
            'underline', 'uncompress', 'type', 'ty', 'tx', 'transparent',
            'translate', 'transformPoint', 'transform', 'trackAsMenu', 'track',
            'trace', 'totalMemory', 'totalFrames', 'topLeft', 'top',
            'togglePause', 'toXMLString', 'toUpperCase', 'toUTCString',
            'toTimeString', 'toString', 'toPrecision', 'toLowerCase',
            'toLocaleUpperCase', 'toLocaleTimeString', 'toLocaleString',
            'toLocaleLowerCase', 'toLocaleDateString', 'toFixed',
            'toExponential', 'toDateString', 'timezoneOffset', 'timerComplete',
            'timer', 'time', 'threshold', 'thickness', 'textWidth',
            'textSnapshot', 'textInput', 'textHeight', 'textColor', 'text',
            'test', 'target', 'tan', 'tabStops', 'tabIndexChange', 'tabIndex',
            'tabEnabledChange', 'tabEnabled', 'tabChildrenChange',
            'tabChildren', 'sync', 'swfVersion', 'swapChildrenAt',
            'swapChildren', 'subtract', 'substring', 'substr', 'styleSheet',
            'styleNames', 'strength', 'stopPropagation',
            'stopImmediatePropagation', 'stopDrag', 'stopAll', 'stop', 'status',
            'startDrag', 'start', 'stageY', 'stageX', 'stageWidth',
            'stageHeight', 'stageFocusRect', 'stage', 'sqrt', 'split', 'splice',
            'source', 'soundTransform', 'soundComplete', 'sortOn', 'sort',
            'songName', 'some', 'socketData', 'smoothing', 'slice', 'size',
            'sin', 'silent', 'silenceTimeout', 'silenceLevel', 'showSettings',
            'showRedrawRegions', 'showDefaultContextMenu', 'show', 'shortcut',
            'shiftKey', 'shift', 'sharpness', 'sharedEvents', 'shadowColor',
            'shadowAlpha', 'settings', 'setUseEchoSuppression', 'setUTCSeconds',
            'setUTCMonth', 'setUTCMinutes', 'setUTCMilliseconds', 'setUTCHours',
            'setUTCFullYear', 'setUTCDate', 'setTimeout', 'setTime',
            'setTextFormat', 'setStyle', 'setSilenceLevel', 'setSettings',
            'setSelection', 'setSelected', 'setSelectColor', 'setSeconds',
            'setQuality', 'setPropertyIsEnumerable', 'setProperty', 'setPixels',
            'setPixel32', 'setPixel', 'setNamespace', 'setName',
            'setMotionLevel', 'setMonth', 'setMode', 'setMinutes',
            'setMilliseconds', 'setLoopback', 'setLoopBack', 'setLocalName',
            'setKeyFrameInterval', 'setInterval', 'setHours', 'setFullYear',
            'setEmpty', 'setDirty', 'setDate', 'setCompositionString',
            'setClipboard', 'setChildren', 'setChildIndex',
            'setAdvancedAntiAliasingTable', 'serverString', 'separatorBefore',
            'sendToURL', 'send', 'selectionEndIndex', 'selectionBeginIndex',
            'selectable', 'select', 'seek', 'securityError', 'securityDomain',
            'secondsUTC', 'seconds', 'search', 'scrollV', 'scrollRect',
            'scrollH', 'scroll', 'screenResolutionY', 'screenResolutionX',
            'screenDPI', 'screenColor', 'scenes', 'scaleY', 'scaleX',
            'scaleMode', 'scale9Grid', 'scale', 'save', 'sandboxType',
            'sameDomain', 'running', 'round', 'rotation', 'rotate', 'root',
            'rollOver', 'rollOut', 'rightToRight', 'rightToLeft', 'rightPeak',
            'rightMargin', 'right', 'rewind', 'reverse', 'resume', 'restrict',
            'resize', 'reset', 'requestHeaders', 'replaceText',
            'replaceSelectedText', 'replace', 'repeatCount', 'render',
            'removedFromStage', 'removed', 'removeNode', 'removeNamespace',
            'removeEventListener', 'removeChildAt', 'removeChild',
            'relatedObject', 'registerFont', 'registerClassAlias', 'redOffset',
            'redMultiplier', 'rect', 'receiveVideo', 'receiveAudio',
            'readUnsignedShort', 'readUnsignedInt', 'readUnsignedByte',
            'readUTFBytes', 'readUTF', 'readShort', 'readObject',
            'readMultiByte', 'readInt', 'readFloat', 'readExternal',
            'readDouble', 'readBytes', 'readByte', 'readBoolean', 'ratios',
            'rate', 'random', 'quality', 'push', 'publish', 'proxyType',
            'prototype', 'propertyIsEnumerable', 'progress',
            'processingInstructions', 'printAsBitmap', 'print',
            'previousSibling', 'preventDefault', 'prevScene', 'prevFrame',
            'prettyPrinting', 'prettyIndent', 'preserveAlpha', 'prependChild',
            'prefix', 'pow', 'position', 'pop', 'polar', 'playerType', 'play',
            'pixelSnapping', 'pixelDissolve', 'pixelBounds', 'pixelAspectRatio',
            'perlinNoise', 'pause', 'parseXML', 'parseInt', 'parseFloat',
            'parseCSS', 'parse', 'parentNode', 'parentDomain',
            'parentAllowsChild', 'parent', 'parameters', 'paperWidth',
            'paperHeight', 'pan', 'paletteMap', 'pageWidth', 'pageHeight',
            'overState', 'outsideCutoff', 'os', 'orientation', 'open',
            'opaqueBackground', 'onPlayStatus', 'onMetaData', 'onCuePoint',
            'offsetPoint', 'offset', 'objectID', 'objectEncoding', 'numLock',
            'numLines', 'numFrames', 'numChildren', 'normalize', 'noise',
            'nodeValue', 'nodeType', 'nodeName', 'nodeKind', 'noAutoLabeling',
            'nextValue', 'nextSibling', 'nextScene', 'nextNameIndex',
            'nextName', 'nextFrame', 'netStatus', 'navigateToURL',
            'namespaceURI', 'namespaceDeclarations', 'namespace', 'names',
            'name', 'muted', 'multiline', 'moveTo', 'mouseY', 'mouseX',
            'mouseWheelEnabled', 'mouseWheel', 'mouseUp', 'mouseTarget',
            'mouseOver', 'mouseOut', 'mouseMove', 'mouseLeave',
            'mouseFocusChange', 'mouseEnabled', 'mouseDown', 'mouseChildren',
            'motionTimeout', 'motionLevel', 'monthUTC', 'month',
            'modificationDate', 'mode', 'minutesUTC', 'minutes', 'min',
            'millisecondsUTC', 'milliseconds', 'method', 'message', 'merge',
            'menuSelect', 'menuItemSelect', 'maxScrollV', 'maxScrollH',
            'maxLevel', 'maxChars', 'max', 'matrixY', 'matrixX', 'matrix',
            'match', 'mask', 'mapPoint', 'mapBitmap', 'map', 'manufacturer',
            'macType', 'loopback', 'loop', 'log', 'lock', 'localeCompare',
            'localY', 'localX', 'localToGlobal', 'localName',
            'localFileReadDisable', 'loaderURL', 'loaderInfo', 'loader',
            'loadPolicyFile', 'loadBytes', 'load', 'liveDelay', 'link',
            'lineTo', 'lineStyle', 'lineGradientStyle', 'level',
            'letterSpacing', 'length', 'leftToRight', 'leftToLeft', 'leftPeak',
            'leftMargin', 'left', 'leading', 'lastIndexOf', 'lastIndex',
            'lastChild', 'language', 'labels', 'knockout', 'keyUp',
            'keyLocation', 'keyFrameInterval', 'keyFocusChange', 'keyDown',
            'keyCode', 'kerning', 'join', 'italic', 'isXMLName',
            'isPrototypeOf', 'isNaN', 'isFocusInaccessible', 'isFinite',
            'isEmpty', 'isDefaultPrevented', 'isDebugger', 'isBuffering',
            'isAttribute', 'isAccessible', 'ioError', 'invert', 'invalidate',
            'intersects', 'intersection', 'interpolate', 'insideCutoff',
            'insertChildBefore', 'insertChildAfter', 'insertBefore', 'inner',
            'init', 'info', 'inflatePoint', 'inflate', 'indexOf', 'index',
            'indent', 'inScopeNamespaces', 'imeComposition', 'ime',
            'ignoreWhitespace', 'ignoreWhite', 'ignoreProcessingInstructions',
            'ignoreComments', 'ignoreCase', 'identity', 'idMap', 'id3',
            'httpStatus', 'htmlText', 'hoursUTC', 'hours', 'hitTestTextNearPos',
            'hitTestState', 'hitTestPoint', 'hitTestObject', 'hitTest',
            'hitArea', 'highlightColor', 'highlightAlpha', 'hideObject',
            'hideBuiltInItems', 'hide', 'height', 'hasVideoEncoder', 'hasTLS',
            'hasStreamingVideo', 'hasStreamingAudio', 'hasSimpleContent',
            'hasScreenPlayback', 'hasScreenBroadcast', 'hasProperty',
            'hasPrinting', 'hasOwnProperty', 'hasMP3', 'hasIME', 'hasGlyphs',
            'hasEventListener', 'hasEmbeddedVideo', 'hasDefinition',
            'hasComplexContent', 'hasChildNodes', 'hasAudioEncoder', 'hasAudio',
            'hasAccessibility', 'gridFitType', 'greenOffset', 'greenMultiplier',
            'graphics', 'gotoAndStop', 'gotoAndPlay', 'globalToLocal', 'global',
            'getUTCSeconds', 'getUTCMonth', 'getUTCMinutes',
            'getUTCMilliseconds', 'getUTCHours', 'getUTCFullYear', 'getUTCDay',
            'getUTCDate', 'getTimezoneOffset', 'getTimer', 'getTime',
            'getTextRunInfo', 'getTextFormat', 'getText', 'getStyle',
            'getStackTrace', 'getSelectedText', 'getSelected', 'getSeconds',
            'getRemote', 'getRect', 'getQualifiedSuperclassName',
            'getQualifiedClassName', 'getProperty', 'getPrefixForNamespace',
            'getPixels', 'getPixel32', 'getPixel', 'getParagraphLength',
            'getObjectsUnderPoint', 'getNamespaceForPrefix', 'getMonth',
            'getMinutes', 'getMilliseconds', 'getMicrophone', 'getLocal',
            'getLineText', 'getLineOffset', 'getLineMetrics', 'getLineLength',
            'getLineIndexOfChar', 'getLineIndexAtPoint', 'getImageReference',
            'getHours', 'getFullYear', 'getFirstCharInParagraph',
            'getDescendants', 'getDefinitionByName', 'getDefinition', 'getDay',
            'getDate', 'getColorBoundsRect', 'getClassByAlias', 'getChildIndex',
            'getChildByName', 'getChildAt', 'getCharIndexAtPoint',
            'getCharBoundaries', 'getCamera', 'getBounds', 'genre',
            'generateFilterRect', 'gain', 'fullYearUTC', 'fullYear',
            'fullScreen', 'fscommand', 'fromCharCode', 'framesLoaded',
            'frameRate', 'frame', 'fps', 'forwardAndBack', 'formatToString',
            'forceSimple', 'forEach', 'fontType', 'fontStyle', 'fontSize',
            'fontName', 'font', 'focusRect', 'focusOut', 'focusIn', 'focus',
            'flush', 'floor', 'floodFill', 'firstChild', 'findText', 'filters',
            'filter', 'fillRect', 'fileList', 'extension', 'extended', 'exp',
            'exec', 'exactSettings', 'every', 'eventPhase', 'escapeMultiByte',
            'escape', 'errorID', 'error', 'equals', 'enumerateFonts',
            'enterFrame', 'endian', 'endFill', 'encodeURIComponent',
            'encodeURI', 'enabled', 'embedFonts', 'elements',
            'dynamicPropertyWriter', 'dropTarget', 'drawRoundRect', 'drawRect',
            'drawEllipse', 'drawCircle', 'draw', 'download', 'downState',
            'doubleClickEnabled', 'doubleClick', 'dotall', 'domain',
            'docTypeDecl', 'doConversion', 'divisor', 'distance', 'dispose',
            'displayState', 'displayMode', 'displayAsPassword', 'dispatchEvent',
            'description', 'describeType', 'descent', 'descendants',
            'deltaTransformPoint', 'delta', 'deleteProperty', 'delay',
            'defaultTextFormat', 'defaultSettings', 'defaultObjectEncoding',
            'decodeURIComponent', 'decodeURI', 'decode', 'deblocking',
            'deactivate', 'dayUTC', 'day', 'dateUTC', 'date', 'dataFormat',
            'data', 'd', 'customItems', 'curveTo', 'currentTarget',
            'currentScene', 'currentLabels', 'currentLabel', 'currentFrame',
            'currentFPS', 'currentDomain', 'currentCount', 'ctrlKey', 'creator',
            'creationDate', 'createTextNode', 'createGradientBox',
            'createElement', 'createBox', 'cos', 'copyPixels', 'copyChannel',
            'copy', 'conversionMode', 'contextMenuOwner', 'contextMenu',
            'contentType', 'contentLoaderInfo', 'content', 'containsRect',
            'containsPoint', 'contains', 'constructor', 'connectedProxyType',
            'connected', 'connect', 'condenseWhite', 'concatenatedMatrix',
            'concatenatedColorTransform', 'concat', 'computeSpectrum',
            'compress', 'componentY', 'componentX', 'complete', 'compare',
            'comments', 'comment', 'colors', 'colorTransform', 'color', 'code',
            'close', 'cloneNode', 'clone', 'client', 'click', 'clearTimeout',
            'clearInterval', 'clear', 'clamp', 'children', 'childNodes',
            'childIndex', 'childAllowsParent', 'child', 'checkPolicyFile',
            'charCount', 'charCodeAt', 'charCode', 'charAt', 'changeList',
            'change', 'ceil', 'caretIndex', 'caption', 'capsLock', 'cancelable',
            'cancel', 'callee', 'callProperty', 'call', 'cacheAsBitmap', 'c',
            'bytesTotal', 'bytesLoaded', 'bytesAvailable', 'buttonMode',
            'buttonDown', 'bullet', 'builtInItems', 'bufferTime',
            'bufferLength', 'bubbles', 'browse', 'bottomScrollV', 'bottomRight',
            'bottom', 'borderColor', 'border', 'bold', 'blurY', 'blurX',
            'blueOffset', 'blueMultiplier', 'blockIndent', 'blendMode',
            'bitmapData', 'bias', 'beginGradientFill', 'beginFill',
            'beginBitmapFill', 'bandwidth', 'backgroundColor', 'background',
            'b', 'available', 'avHardwareDisable', 'autoSize', 'attributes',
            'attribute', 'attachNetStream', 'attachCamera', 'attachAudio',
            'atan2', 'atan', 'asyncError', 'asin', 'ascent', 'artist',
            'areSoundsInaccessible', 'areInaccessibleObjectsUnderPoint',
            'applyFilter', 'apply', 'applicationDomain', 'appendText',
            'appendChild', 'antiAliasType', 'angle', 'alwaysShowSelection',
            'altKey', 'alphas', 'alphaOffset', 'alphaMultiplier', 'alpha',
            'allowInsecureDomain', 'allowDomain', 'align', 'album',
            'addedToStage', 'added', 'addPage', 'addNamespace', 'addHeader',
            'addEventListener', 'addChildAt', 'addChild', 'addCallback', 'add',
            'activityLevel', 'activity', 'active', 'activating', 'activate',
            'actionScriptVersion', 'acos', 'accessibilityProperties', 'abs'
            ),
        8 => array(
            'WRAP', 'VERTICAL', 'VARIABLES',
            'UTC', 'UPLOAD_COMPLETE_DATA', 'UP', 'UNLOAD', 'UNKNOWN',
            'UNIQUESORT', 'TOP_RIGHT', 'TOP_LEFT', 'TOP', 'TIMER_COMPLETE',
            'TIMER', 'TEXT_NODE', 'TEXT_INPUT', 'TEXT', 'TAB_INDEX_CHANGE',
            'TAB_ENABLED_CHANGE', 'TAB_CHILDREN_CHANGE', 'TAB', 'SYNC',
            'SUBTRACT', 'SUBPIXEL', 'STATUS', 'STANDARD', 'SQUARE', 'SQRT2',
            'SQRT1_2', 'SPACE', 'SOUND_COMPLETE', 'SOCKET_DATA', 'SHOW_ALL',
            'SHIFT', 'SETTINGS_MANAGER', 'SELECT', 'SECURITY_ERROR', 'SCROLL',
            'SCREEN', 'ROUND', 'ROLL_OVER', 'ROLL_OUT', 'RIGHT', 'RGB',
            'RETURNINDEXEDARRAY', 'RESIZE', 'REPEAT', 'RENDER',
            'REMOVED_FROM_STAGE', 'REMOVED', 'REMOTE', 'REGULAR', 'REFLECT',
            'RED', 'RADIAL', 'PROGRESS', 'PRIVACY', 'POST', 'POSITIVE_INFINITY',
            'PORTRAIT', 'PIXEL', 'PI', 'PENDING', 'PAGE_UP', 'PAGE_DOWN', 'PAD',
            'OVERLAY', 'OUTER', 'OPEN', 'NaN', 'NUM_PAD', 'NUMPAD_SUBTRACT',
            'NUMPAD_MULTIPLY', 'NUMPAD_ENTER', 'NUMPAD_DIVIDE',
            'NUMPAD_DECIMAL', 'NUMPAD_ADD', 'NUMPAD_9', 'NUMPAD_8', 'NUMPAD_7',
            'NUMPAD_6', 'NUMPAD_5', 'NUMPAD_4', 'NUMPAD_3', 'NUMPAD_2',
            'NUMPAD_1', 'NUMPAD_0', 'NUMERIC', 'NO_SCALE', 'NO_BORDER',
            'NORMAL', 'NONE', 'NEVER', 'NET_STATUS', 'NEGATIVE_INFINITY',
            'MULTIPLY', 'MOUSE_WHEEL', 'MOUSE_UP', 'MOUSE_OVER', 'MOUSE_OUT',
            'MOUSE_MOVE', 'MOUSE_LEAVE', 'MOUSE_FOCUS_CHANGE', 'MOUSE_DOWN',
            'MITER', 'MIN_VALUE', 'MICROPHONE', 'MENU_SELECT',
            'MENU_ITEM_SELECT', 'MEDIUM', 'MAX_VALUE', 'LOW', 'LOG2E', 'LOG10E',
            'LOCAL_WITH_NETWORK', 'LOCAL_WITH_FILE', 'LOCAL_TRUSTED',
            'LOCAL_STORAGE', 'LN2', 'LN10', 'LITTLE_ENDIAN', 'LINK',
            'LINEAR_RGB', 'LINEAR', 'LIGHT_COLOR', 'LIGHTEN', 'LEFT', 'LCD',
            'LAYER', 'LANDSCAPE', 'KOREAN', 'KEY_UP', 'KEY_FOCUS_CHANGE',
            'KEY_DOWN', 'JUSTIFY', 'JAPANESE_KATAKANA_HALF',
            'JAPANESE_KATAKANA_FULL', 'JAPANESE_HIRAGANA', 'Infinity', 'ITALIC',
            'IO_ERROR', 'INVERT', 'INSERT', 'INPUT', 'INNER', 'INIT',
            'IME_COMPOSITION', 'IGNORE', 'ID3', 'HTTP_STATUS', 'HORIZONTAL',
            'HOME', 'HIGH', 'HARDLIGHT', 'GREEN', 'GET', 'FULLSCREEN', 'FULL',
            'FOCUS_OUT', 'FOCUS_IN', 'FLUSHED', 'FLASH9', 'FLASH8', 'FLASH7',
            'FLASH6', 'FLASH5', 'FLASH4', 'FLASH3', 'FLASH2', 'FLASH1', 'F9',
            'F8', 'F7', 'F6', 'F5', 'F4', 'F3', 'F2', 'F15', 'F14', 'F13',
            'F12', 'F11', 'F10', 'F1', 'EXACT_FIT', 'ESCAPE', 'ERROR', 'ERASE',
            'ENTER_FRAME', 'ENTER', 'END', 'EMBEDDED', 'ELEMENT_NODE', 'E',
            'DYNAMIC', 'DOWN', 'DOUBLE_CLICK', 'DIFFERENCE', 'DEVICE',
            'DESCENDING', 'DELETE', 'DEFAULT', 'DEACTIVATE', 'DATA',
            'DARK_COLOR', 'DARKEN', 'CRT', 'CONTROL', 'CONNECT', 'COMPLETE',
            'COLOR', 'CLOSE', 'CLICK', 'CLAMP', 'CHINESE', 'CHANGE', 'CENTER',
            'CASEINSENSITIVE', 'CAPTURING_PHASE', 'CAPS_LOCK', 'CANCEL',
            'CAMERA', 'BUBBLING_PHASE', 'BOTTOM_RIGHT', 'BOTTOM_LEFT', 'BOTTOM',
            'BOLD_ITALIC', 'BOLD', 'BLUE', 'BINARY', 'BIG_ENDIAN', 'BEVEL',
            'BEST', 'BACKSPACE', 'AUTO', 'AT_TARGET', 'ASYNC_ERROR', 'AMF3',
            'AMF0', 'ALWAYS', 'ALPHANUMERIC_HALF', 'ALPHANUMERIC_FULL', 'ALPHA',
            'ADVANCED', 'ADDED_TO_STAGE', 'ADDED', 'ADD', 'ACTIVITY',
            'ACTIONSCRIPT3', 'ACTIONSCRIPT2'
            ),
        //FIX: Must be last in order to avoid conflicts with keywords present
        //in other keyword groups, that might get highlighted as part of the URL.
        //I know this is not a proper work-around, but should do just fine.
        5 => array(
            'uint', 'int', 'arguments', 'XMLSocket', 'XMLNodeType', 'XMLNode',
            'XMLList', 'XMLDocument', 'XML', 'Video', 'VerifyError',
            'URLVariables', 'URLStream', 'URLRequestMethod', 'URLRequestHeader',
            'URLRequest', 'URLLoaderDataFormat', 'URLLoader', 'URIError',
            'TypeError', 'Transform', 'TimerEvent', 'Timer', 'TextSnapshot',
            'TextRenderer', 'TextLineMetrics', 'TextFormatAlign', 'TextFormat',
            'TextFieldType', 'TextFieldAutoSize', 'TextField', 'TextEvent',
            'TextDisplayMode', 'TextColorType', 'System', 'SyntaxError',
            'SyncEvent', 'StyleSheet', 'String', 'StatusEvent', 'StaticText',
            'StageScaleMode', 'StageQuality', 'StageAlign', 'Stage',
            'StackOverflowError', 'Sprite', 'SpreadMethod', 'SoundTransform',
            'SoundMixer', 'SoundLoaderContext', 'SoundChannel', 'Sound',
            'Socket', 'SimpleButton', 'SharedObjectFlushStatus', 'SharedObject',
            'Shape', 'SecurityPanel', 'SecurityErrorEvent', 'SecurityError',
            'SecurityDomain', 'Security', 'ScriptTimeoutError', 'Scene',
            'SWFVersion', 'Responder', 'RegExp', 'ReferenceError', 'Rectangle',
            'RangeError', 'QName', 'Proxy', 'ProgressEvent',
            'PrintJobOrientation', 'PrintJobOptions', 'PrintJob', 'Point',
            'PixelSnapping', 'ObjectEncoding', 'Object', 'Number', 'NetStream',
            'NetStatusEvent', 'NetConnection', 'Namespace', 'MovieClip',
            'MouseEvent', 'Mouse', 'MorphShape', 'Microphone', 'MemoryError',
            'Matrix', 'Math', 'LocalConnection', 'LoaderInfo', 'LoaderContext',
            'Loader', 'LineScaleMode', 'KeyboardEvent', 'Keyboard',
            'KeyLocation', 'JointStyle', 'InvalidSWFError',
            'InterpolationMethod', 'InteractiveObject', 'IllegalOperationError',
            'IOErrorEvent', 'IOError', 'IMEEvent', 'IMEConversionMode', 'IME',
            'IExternalizable', 'IEventDispatcher', 'IDynamicPropertyWriter',
            'IDynamicPropertyOutput', 'IDataOutput', 'IDataInput', 'ID3Info',
            'IBitmapDrawable', 'HTTPStatusEvent', 'GridFitType', 'Graphics',
            'GradientType', 'GradientGlowFilter', 'GradientBevelFilter',
            'GlowFilter', 'Function', 'FrameLabel', 'FontType', 'FontStyle',
            'Font', 'FocusEvent', 'FileReferenceList', 'FileReference',
            'FileFilter', 'ExternalInterface', 'EventPhase', 'EventDispatcher',
            'Event', 'EvalError', 'ErrorEvent', 'Error', 'Endian', 'EOFError',
            'DropShadowFilter', 'DisplayObjectContainer', 'DisplayObject',
            'DisplacementMapFilterMode', 'DisplacementMapFilter', 'Dictionary',
            'DefinitionError', 'Date', 'DataEvent', 'ConvolutionFilter',
            'ContextMenuItem', 'ContextMenuEvent', 'ContextMenuBuiltInItems',
            'ContextMenu', 'ColorTransform', 'ColorMatrixFilter', 'Class',
            'CapsStyle', 'Capabilities', 'Camera', 'CSMSettings', 'ByteArray',
            'Boolean', 'BlurFilter', 'BlendMode', 'BitmapFilterType',
            'BitmapFilterQuality', 'BitmapFilter', 'BitmapDataChannel',
            'BitmapData', 'Bitmap', 'BevelFilter', 'AsyncErrorEvent', 'Array',
            'ArgumentError', 'ApplicationDomain', 'AntiAliasType',
            'ActivityEvent', 'ActionScriptVersion', 'AccessibilityProperties',
            'Accessibility', 'AVM1Movie'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '%', '&', '*', '|', '/', '<', '>', '^', '-', '+', '~', '?', ':', ';', '.', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0033ff; font-weight: bold;',
            2 => 'color: #6699cc; font-weight: bold;',
            3 => 'color: #339966; font-weight: bold;',
            4 => 'color: #9900cc; font-weight: bold;',
            5 => 'color: #004993;',
            6 => 'color: #004993;',
            7 => 'color: #004993;',
            8 => 'color: #004993;'
            ),
        'COMMENTS' => array(
            1 => 'color: #009900; font-style: italic;',
            2 => 'color: #009966; font-style: italic;',
            'MULTI' => 'color: #3f5fbf;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #990000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000; font-weight:bold;'
            ),
        'METHODS' => array(
            0 => 'color: #000000;',
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066; font-weight: bold;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => 'http://www.google.com/search?q={FNAMEL}%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:{FNAMEL}.html',
        6 => '',
        7 => '',
        8 => ''
        ),
    'OOLANG' => false,//Save some time as OO identifiers aren't used
    'OBJECT_SPLITTERS' => array(
        // commented out because it's not very relevant for AS, as all properties, methods and constants are dot-accessed.
        // I believe it's preferable to have package highlighting for example, which is not possible with this enabled.
        // 0 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>geshi/geshi/python.php0000664000175000017500000002762512014173402014226 0ustar  benbebenbe 'Python',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    //Longest quotemarks ALWAYS first
    'QUOTEMARKS' => array('"""', "'''", '"', "'"),
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX_0O | GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_NONSCI | GESHI_NUMBER_FLT_NONSCI_F |
        GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(

        /*
        ** Set 1: reserved words
        ** http://python.org/doc/current/ref/keywords.html
        */
        1 => array(
            'and', 'del', 'for', 'is', 'raise', 'assert', 'elif', 'from', 'lambda', 'return', 'break',
            'else', 'global', 'not', 'try', 'class', 'except', 'if', 'or', 'while', 'continue', 'exec',
            'import', 'pass', 'yield', 'def', 'finally', 'in', 'print', 'with', 'as', 'nonlocal'
            ),

        /*
        ** Set 2: builtins
        ** http://python.org/doc/current/lib/built-in-funcs.html
        */
        2 => array(
            '__import__', 'abs', 'basestring', 'bool', 'callable', 'chr', 'classmethod', 'cmp',
            'compile', 'complex', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile',
            'file', 'filter', 'float', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help',
            'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'list', 'locals',
            'long', 'map', 'max', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'range',
            'raw_input', 'reduce', 'reload', 'reversed', 'round', 'set', 'setattr', 'slice',
            'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode',
            'vars', 'xrange', 'zip',
            // Built-in constants: http://python.org/doc/current/lib/node35.html
            'False', 'True', 'None', 'NotImplemented', 'Ellipsis',
            // Built-in Exceptions: http://python.org/doc/current/lib/module-exceptions.html
            'Exception', 'StandardError', 'ArithmeticError', 'LookupError', 'EnvironmentError',
            'AssertionError', 'AttributeError', 'EOFError', 'FloatingPointError', 'IOError',
            'ImportError', 'IndexError', 'KeyError', 'KeyboardInterrupt', 'MemoryError', 'NameError',
            'NotImplementedError', 'OSError', 'OverflowError', 'ReferenceError', 'RuntimeError',
            'StopIteration', 'SyntaxError', 'SystemError', 'SystemExit', 'TypeError',
            'UnboundlocalError', 'UnicodeError', 'UnicodeEncodeError', 'UnicodeDecodeError',
            'UnicodeTranslateError', 'ValueError', 'WindowsError', 'ZeroDivisionError', 'Warning',
            'UserWarning', 'DeprecationWarning', 'PendingDeprecationWarning', 'SyntaxWarning',
            'RuntimeWarning', 'FutureWarning',
            // self: this is a common python convention (but not a reserved word)
            'self',
            // other
            'any', 'all'
            ),

        /*
        ** Set 3: standard library
        ** http://python.org/doc/current/lib/modindex.html
        */
        3 => array(
            '__builtin__', '__future__', '__main__', '_winreg', 'aifc', 'AL', 'al', 'anydbm',
            'array', 'asynchat', 'asyncore', 'atexit', 'audioop', 'base64', 'BaseHTTPServer',
            'Bastion', 'binascii', 'binhex', 'bisect', 'bsddb', 'bz2', 'calendar', 'cd', 'cgi',
            'CGIHTTPServer', 'cgitb', 'chunk', 'cmath', 'cmd', 'code', 'codecs', 'codeop',
            'collections', 'colorsys', 'commands', 'compileall', 'compiler',
            'ConfigParser', 'Cookie', 'cookielib', 'copy', 'copy_reg', 'cPickle', 'crypt',
            'cStringIO', 'csv', 'curses', 'datetime', 'dbhash', 'dbm', 'decimal', 'DEVICE',
            'difflib', 'dircache', 'dis', 'distutils', 'dl', 'doctest', 'DocXMLRPCServer', 'dumbdbm',
            'dummy_thread', 'dummy_threading', 'email', 'encodings', 'errno', 'exceptions', 'fcntl',
            'filecmp', 'fileinput', 'FL', 'fl', 'flp', 'fm', 'fnmatch', 'formatter', 'fpectl',
            'fpformat', 'ftplib', 'gc', 'gdbm', 'getopt', 'getpass', 'gettext', 'GL', 'gl', 'glob',
            'gopherlib', 'grp', 'gzip', 'heapq', 'hmac', 'hotshot', 'htmlentitydefs', 'htmllib',
            'HTMLParser', 'httplib', 'imageop', 'imaplib', 'imgfile', 'imghdr', 'imp', 'inspect',
            'itertools', 'jpeg', 'keyword', 'linecache', 'locale', 'logging', 'mailbox', 'mailcap',
            'marshal', 'math', 'md5', 'mhlib', 'mimetools', 'mimetypes', 'MimeWriter', 'mimify',
            'mmap', 'msvcrt', 'multifile', 'mutex', 'netrc', 'new', 'nis', 'nntplib', 'operator',
            'optparse', 'os', 'ossaudiodev', 'parser', 'pdb', 'pickle', 'pickletools', 'pipes',
            'pkgutil', 'platform', 'popen2', 'poplib', 'posix', 'posixfile', 'pprint', 'profile',
            'pstats', 'pty', 'pwd', 'py_compile', 'pyclbr', 'pydoc', 'Queue', 'quopri', 'random',
            're', 'readline', 'repr', 'resource', 'rexec', 'rfc822', 'rgbimg', 'rlcompleter',
            'robotparser', 'sched', 'ScrolledText', 'select', 'sets', 'sgmllib', 'sha', 'shelve',
            'shlex', 'shutil', 'signal', 'SimpleHTTPServer', 'SimpleXMLRPCServer', 'site', 'smtpd',
            'smtplib', 'sndhdr', 'socket', 'SocketServer', 'stat', 'statcache', 'statvfs', 'string',
            'StringIO', 'stringprep', 'struct', 'subprocess', 'sunau', 'SUNAUDIODEV', 'sunaudiodev',
            'symbol', 'sys', 'syslog', 'tabnanny', 'tarfile', 'telnetlib', 'tempfile', 'termios',
            'test', 'textwrap', 'thread', 'threading', 'time', 'timeit', 'Tix', 'Tkinter', 'token',
            'tokenize', 'traceback', 'tty', 'turtle', 'types', 'unicodedata', 'unittest', 'urllib2',
            'urllib', 'urlparse', 'user', 'UserDict', 'UserList', 'UserString', 'uu', 'warnings',
            'wave', 'weakref', 'webbrowser', 'whichdb', 'whrandom', 'winsound', 'xdrlib', 'xml',
            'xmllib', 'xmlrpclib', 'zipfile', 'zipimport', 'zlib',
            // Python 3.0
            'bytes', 'bytearray'
            ),

        /*
        ** Set 4: special methods
        ** http://python.org/doc/current/ref/specialnames.html
        */
        4 => array(
            /*
            // Iterator types: http://python.org/doc/current/lib/typeiter.html
            '__iter__', 'next',
            // String types: http://python.org/doc/current/lib/string-methods.html
            'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs',
            'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle',
            'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust',
            'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title',
            'translate', 'upper', 'zfill',
            */
            // Basic customization: http://python.org/doc/current/ref/customization.html
            '__new__', '__init__', '__del__', '__repr__', '__str__',
            '__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__', '__cmp__', '__rcmp__',
            '__hash__', '__nonzero__', '__unicode__', '__dict__',
            // Attribute access: http://python.org/doc/current/ref/attribute-access.html
            '__setattr__', '__delattr__', '__getattr__', '__getattribute__', '__get__', '__set__',
            '__delete__', '__slots__',
            // Class creation, callable objects
            '__metaclass__', '__call__',
            // Container types: http://python.org/doc/current/ref/sequence-types.html
            '__len__', '__getitem__', '__setitem__', '__delitem__', '__iter__', '__contains__',
            '__getslice__', '__setslice__', '__delslice__',
            // Numeric types: http://python.org/doc/current/ref/numeric-types.html
            '__abs__','__add__','__and__','__coerce__','__div__','__divmod__','__float__',
            '__hex__','__iadd__','__isub__','__imod__','__idiv__','__ipow__','__iand__',
            '__ior__','__ixor__', '__ilshift__','__irshift__','__invert__','__int__',
            '__long__','__lshift__',
            '__mod__','__mul__','__neg__','__oct__','__or__','__pos__','__pow__',
            '__radd__','__rdiv__','__rdivmod__','__rmod__','__rpow__','__rlshift__','__rrshift__',
            '__rshift__','__rsub__','__rmul__','__rand__','__rxor__','__ror__',
            '__sub__','__xor__'
            )
        ),
    'SYMBOLS' => array(
        '<', '>', '=', '!', '<=', '>=',             //·comparison·operators
        '~', '@',                                   //·unary·operators
        ';', ','                                    //·statement·separator
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #ff7700;font-weight:bold;',    // Reserved
            2 => 'color: #008000;',                        // Built-ins + self
            3 => 'color: #dc143c;',                        // Standard lib
            4 => 'color: #0000cd;'                        // Special methods
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: black;'
            ),
        'STRINGS' => array(
            0 => 'color: #483d8b;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff4500;'
            ),
        'METHODS' => array(
            1 => 'color: black;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/jquery.php0000664000175000017500000002116312014173416014220 0ustar  benbebenbe 'jQuery',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    //Regular Expressions
    'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do',
            'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item',
            'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void',
            'while', 'write', 'with'
            ),
        2 => array(
            'class', 'const', 'default', 'debugger', 'export', 'extends', 'false',
            'function', 'import', 'namespace', 'new', 'null', 'package', 'private',
            'protected', 'public', 'super', 'true', 'use', 'var'
            ),
        3 => array(
            // common functions for Window object
            'alert', 'back', 'close', 'confirm', 'forward', 'home',
            'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove',
            'onresize', 'onunload', 'open', 'print', 'prompt', 'status',
            //'blur', 'focus', 'scroll', // Duplicate with kw9
            //'stop', //Duplicate with kw10
            ),
        4 => array(
            // jQuery Core Functions
            'jQuery', 'each', 'size', 'length', 'selector', 'context', 'eq',
            'index', 'data', 'removeData', 'queue', 'dequeue', 'noConflict'
            //'get', //Duplicate with kw11
            ),
        5 => array(
            // jQuery Attribute Functions
            'attr', 'removeAttr', 'addClass', 'hasClass', 'removeClass', 'toggleClass',
            'html', 'text', 'val',
            ),
        6 => array(
            // jQuery Traversing Functions
            'filter', 'not', 'slice', 'add', 'children', 'closest',
            'contents', 'find', 'next', 'nextAll', 'parent', 'parents',
            'prev', 'prevAll', 'siblings', 'andSelf', 'end',
            //'is',  //Dup with kw1
            //'offsetParent', //Duplicate with kw8
            //'map', //Duplicate with kw12
            ),
        7 => array(
            // jQuery Manipulation Functions
            'append', 'appendTo', 'prepend', 'prependTo', 'after', 'before', 'insertAfter',
            'insertBefore', 'wrap', 'wrapAll', 'wrapInner', 'replaceWith', 'replaceAll',
            'empty', 'remove', 'clone',
            ),
        8 => array(
            // jQuery CSS Functions
            'css', 'offset', 'offsetParent', 'position', 'scrollTop', 'scrollLeft',
            'height', 'width', 'innerHeight', 'innerWidth', 'outerHeight', 'outerWidth',
            ),
        9 => array(
            // jQuery Events Functions
            'ready', 'bind', 'one', 'trigger', 'triggerHandler', 'unbind', 'live',
            'die', 'hover', 'blur', 'change', 'click', 'dblclick', 'error',
            'focus', 'keydown', 'keypress', 'keyup', 'mousedown', 'mouseenter',
            'mouseleave', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'resize',
            'scroll', 'select', 'submit', 'unload',
            //'toggle', //Duplicate with kw10
            //'load', //Duplicate with kw11
            ),
        10 => array(
            // jQuery Effects Functions
            'show', 'hide', 'toggle', 'slideDown', 'slideUp', 'slideToggle', 'fadeIn',
            'fadeOut', 'fadeTo', 'animate', 'stop',
            ),
        11 => array(
            // jQuery Ajax Functions
            'ajax', 'load', 'get', 'getJSON', 'getScript', 'post', 'ajaxComplete',
            'ajaxError', 'ajaxSend', 'ajaxStart', 'ajaxStop', 'ajaxSuccess', 'ajaxSetup',
            'serialize', 'serializeArray',
            ),
        12 => array(
            // jQuery Utility Functions
            'support', 'browser', 'version', 'boxModal', 'extend', 'grep', 'makeArray',
            'map', 'inArray', 'merge', 'unique', 'isArray', 'isFunction', 'trim',
            'param',
            ),
        ),
    'SYMBOLS' => array(
        0 => array(
            '(', ')', '[', ']', '{', '}',
            '+', '-', '*', '/', '%',
            '!', '@', '&', '|', '^',
            '<', '>', '=',
            ',', ';', '?', ':'
            ),
        1 => array(
            '$'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        9 => false,
        10 => false,
        11 => false,
        12 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000066; font-weight: bold;',
            2 => 'color: #003366; font-weight: bold;',
            3 => 'color: #000066;',
            4 => 'color: #000066;',
            5 => 'color: #000066;',
            6 => 'color: #000066;',
            7 => 'color: #000066;',
            8 => 'color: #000066;',
            9 => 'color: #000066;',
            10 => 'color: #000066;',
            11 => 'color: #000066;',
            12 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #006600; font-style: italic;',
            2 => 'color: #009966; font-style: italic;',
            'MULTI' => 'color: #006600; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #3366CC;'
            ),
        'NUMBERS' => array(
            0 => 'color: #CC0000;'
            ),
        'METHODS' => array(
            1 => 'color: #660066;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            1 => 'color: #000066;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => 'http://docs.jquery.com/Core/{FNAME}',
        5 => 'http://docs.jquery.com/Attributes/{FNAME}',
        6 => 'http://docs.jquery.com/Traversing/{FNAME}',
        7 => 'http://docs.jquery.com/Manipulation/{FNAME}',
        8 => 'http://docs.jquery.com/CSS/{FNAME}',
        9 => 'http://docs.jquery.com/Events/{FNAME}',
        10 => 'http://docs.jquery.com/Effects/{FNAME}',
        11 => 'http://docs.jquery.com/Ajax/{FNAME}',
        12 => 'http://docs.jquery.com/Utilities/{FNAME}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            ''
            ),
        1 => array(
            ''
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true
        )
);

?>geshi/geshi/applescript.php0000664000175000017500000001427612014173434015236 0ustar  benbebenbe 'AppleScript',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array( '(*' => '*)'),
    'COMMENT_REGEXP' => array(
        2 => '/(?<=[a-z])\'/i',
        3 => '/(? GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'application','close','count','delete','duplicate','exists','launch','make','move','open',
            'print','quit','reopen','run','save','saving', 'idle', 'path to', 'number', 'alias', 'list', 'text', 'string',
            'integer', 'it','me','version','pi','result','space','tab','anything','case','diacriticals','expansion',
            'hyphens','punctuation','bold','condensed','expanded','hidden','italic','outline','plain',
            'shadow','strikethrough','subscript','superscript','underline','ask','no','yes','false', 'id',
            'true','weekday','monday','mon','tuesday','tue','wednesday','wed','thursday','thu','friday',
            'fri','saturday','sat','sunday','sun','month','january','jan','february','feb','march',
            'mar','april','apr','may','june','jun','july','jul','august','aug','september', 'quote', 'do JavaScript',
            'sep','october','oct','november','nov','december','dec','minutes','hours', 'name', 'default answer',
            'days','weeks', 'folder', 'folders', 'file', 'files', 'window', 'eject', 'disk', 'reveal', 'sleep',
            'shut down', 'restart', 'display dialog', 'buttons', 'invisibles', 'item', 'items', 'delimiters', 'offset of',
            'AppleScript\'s', 'choose file', 'choose folder', 'choose from list', 'beep', 'contents', 'do shell script',
            'paragraph', 'paragraphs', 'missing value', 'quoted form', 'desktop', 'POSIX path', 'POSIX file',
            'activate', 'document', 'adding', 'receiving', 'content', 'new', 'properties', 'info for', 'bounds',
            'selection', 'extension', 'into', 'onto', 'by', 'between', 'against', 'set the clipboard to', 'the clipboard'
            ),
        2 => array(
            'each','some','every','whose','where','index','first','second','third','fourth',
            'fifth','sixth','seventh','eighth','ninth','tenth','last','front','back','st','nd',
            'rd','th','middle','named','through','thru','before','after','beginning','the', 'as',
            'div','mod','and','not','or','contains','equal','equals','isnt', 'less', 'greater'
            ),
        3 => array(
            'script','property','prop','end','to','set','global','local','on','of',
            'in','given','with','without','return','continue','tell','if','then','else','repeat',
            'times','while','until','from','exit','try','error','considering','ignoring','timeout',
            'transaction','my','get','put','is', 'copy'
            )
        ),
    'SYMBOLS' => array(
        ')','+','-','^','*','/','&','<','>=','<','<=','=','�'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0066ff;',
            2 => 'color: #ff0033;',
            3 => 'color: #ff0033; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => '',
            3 => 'color: #ff0000;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000000; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #009900;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;'
            ),
        'REGEXPS' => array(
            0 => 'color: #339933;',
            4 => 'color: #0066ff;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => ',+-=<>/?^&*'
        ),
    'REGEXPS' => array(
        //Variables
        0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*',
        //File descriptors
        4 => '<[a-zA-Z_][a-zA-Z0-9_]*>',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'SPACE_AS_WHITESPACE' => true
            )
        )
);

?>geshi/geshi/cfm.php0000664000175000017500000003326312014173414013450 0ustar  benbebenbe 'ColdFusion',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        /* CFM Tags */
        1 => array(
            'cfabort', 'cfapplet', 'cfapplication', 'cfargument', 'cfassociate',
            'cfbreak', 'cfcache', 'cfcase', 'cfcatch', 'cfchart', 'cfchartdata',
            'cfchartseries', 'cfcol', 'cfcollection', 'cfcomponent',
            'cfcontent', 'cfcookie', 'cfdefaultcase', 'cfdirectory',
            'cfdocument', 'cfdocumentitem', 'cfdocumentsection', 'cfdump',
            'cfelse', 'cfelseif', 'cferror', 'cfexecute', 'cfexit', 'cffile',
            'cfflush', 'cfform', 'cfformgroup', 'cfformitem', 'cfftp',
            'cffunction', 'cfgrid', 'cfgridcolumn', 'cfgridrow', 'cfgridupdate',
            'cfheader', 'cfhtmlhead', 'cfhttp', 'cfhttpparam', 'cfif',
            'cfimport', 'cfinclude', 'cfindex', 'cfinput', 'cfinsert',
            'cfinvoke', 'cfinvokeargument', 'cfldap', 'cflocation', 'cflock',
            'cflog', 'cflogin', 'cfloginuser', 'cflogout', 'cfloop', 'cfmail',
            'cfmailparam', 'cfmailpart', 'cfmodule', 'cfNTauthenticate',
            'cfobject', 'cfobjectcache', 'cfoutput', 'cfparam', 'cfpop',
            'cfprocessingdirective', 'cfprocparam',
            'cfprocresult', 'cfproperty', 'cfquery', 'cfqueryparam',
            'cfregistry', 'cfreport', 'cfreportparam', 'cfrethrow', 'cfreturn',
            'cfsavecontent', 'cfschedule', 'cfscript', 'cfsearch', 'cfselect',
            'cfset', 'cfsetting', 'cfsilent', 'cfstoredproc',
            'cfswitch', 'cftable', 'cftextarea', 'cfthrow', 'cftimer',
            'cftrace', 'cftransaction', 'cftree', 'cftreeitem', 'cftry',
            'cfupdate', 'cfwddx'
            ),
        /* HTML Tags */
        2 => array(
            'a', 'abbr', 'acronym', 'address', 'applet',

            'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b',

            'caption', 'center', 'cite', 'code', 'colgroup', 'col',

            'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt',

            'em',

            'fieldset', 'font', 'form', 'frame', 'frameset',

            'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html',

            'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i',

            'kbd',

            'label', 'legend', 'link', 'li',

            'map', 'meta',

            'noframes', 'noscript',

            'object', 'ol', 'optgroup', 'option',

            'param', 'pre', 'p',

            'q',

            'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's',

            'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt',

            'ul', 'u',

            'var',
            ),
        /* HTML attributes */
        3 => array(
            'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis',
            'background', 'bgcolor', 'border',
            'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords',
            'data', 'datetime', 'declare', 'defer', 'dir', 'disabled',
            'enctype',
            'face', 'for', 'frame', 'frameborder',
            'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv',
            'id', 'ismap',
            'label', 'lang', 'language', 'link', 'longdesc',
            'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple',
            'name', 'nohref', 'noresize', 'noshade', 'nowrap',
            'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload',
            'profile', 'prompt',
            'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules',
            'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary',
            'tabindex', 'target', 'text', 'title', 'type',
            'usemap',
            'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace',
            'width'
            ),
        /* CFM Script delimeters */
        4 => array(
            'var', 'function', 'while', 'if','else'
            ),
        /* CFM Functions */
        5 => array(
            'Abs', 'GetFunctionList', 'LSTimeFormat','ACos','GetGatewayHelper','LTrim','AddSOAPRequestHeader','GetHttpRequestData',
            'Max','AddSOAPResponseHeader','GetHttpTimeString','Mid','ArrayAppend','GetLocale','Min','ArrayAvg','GetLocaleDisplayName',
            'Minute','ArrayClear','GetMetaData','Month','ArrayDeleteAt','GetMetricData','MonthAsString','ArrayInsertAt','GetPageContext',
            'Now','ArrayIsEmpty','GetProfileSections','NumberFormat','ArrayLen','GetProfileString','ParagraphFormat','ArrayMax',
            'GetLocalHostIP','ParseDateTime','ArrayMin','GetSOAPRequest','Pi','ArrayNew','GetSOAPRequestHeader','PreserveSingleQuotes',
            'ArrayPrepend','GetSOAPResponse','Quarter','ArrayResize','GetSOAPResponseHeader','QueryAddColumn','ArraySet',
            'GetTempDirectory','QueryAddRow','ArraySort','QueryNew','ArraySum','GetTempFile','QuerySetCell',
            'ArraySwap','GetTickCount','QuotedValueList','ArrayToList','GetTimeZoneInfo','Rand','Asc','GetToken','Randomize',
            'ASin','Hash','RandRange','Atn','Hour','REFind','BinaryDecode','HTMLCodeFormat','REFindNoCase','BinaryEncode',
            'HTMLEditFormat','ReleaseComObject','BitAnd','IIf','RemoveChars','BitMaskClear','IncrementValue','RepeatString',
            'BitMaskRead','InputBaseN','Replace','BitMaskSet','Insert','ReplaceList','BitNot','Int','ReplaceNoCase','BitOr',
            'IsArray','REReplace','BitSHLN','IsBinary','REReplaceNoCase','BitSHRN','IsBoolean','Reverse','BitXor','IsCustomFunction',
            'Right','Ceiling','IsDate','RJustify','CharsetDecode','IsDebugMode','Round','CharsetEncode','IsDefined','RTrim',
            'Chr','IsLeapYear','Second','CJustify','IsLocalHost','SendGatewayMessage','Compare','IsNumeric','SetEncoding',
            'CompareNoCase','IsNumericDate','SetLocale','Cos','IsObject','SetProfileString','CreateDate','IsQuery','SetVariable',
            'CreateDateTime','IsSimpleValue','Sgn','CreateObject','IsSOAPRequest','Sin','CreateODBCDate','IsStruct','SpanExcluding',
            'CreateODBCDateTime','IsUserInRole','SpanIncluding','CreateODBCTime','IsValid','Sqr','CreateTime','IsWDDX','StripCR',
            'CreateTimeSpan','IsXML','StructAppend','CreateUUID','IsXmlAttribute','StructClear','DateAdd','IsXmlDoc','StructCopy',
            'DateCompare','IsXmlElem','StructCount','DateConvert','IsXmlNode','StructDelete','DateDiff','IsXmlRoot','StructFind',
            'DateFormat','JavaCast','StructFindKey','DatePart','JSStringFormat','StructFindValue','Day','LCase','StructGet',
            'DayOfWeek','Left','StructInsert','DayOfWeekAsString','Len','StructIsEmpty','DayOfYear','ListAppend','StructKeyArray',
            'DaysInMonth','ListChangeDelims','StructKeyExists','DaysInYear','ListContains','StructKeyList','DE','ListContainsNoCase',
            'StructNew','DecimalFormat','ListDeleteAt','StructSort','DecrementValue','ListFind','StructUpdate','Decrypt','ListFindNoCase',
            'Tan','DecryptBinary','ListFirst','TimeFormat','DeleteClientVariable','ListGetAt','ToBase64','DirectoryExists',
            'ListInsertAt','ToBinary','DollarFormat','ListLast','ToScript','Duplicate','ListLen','ToString','Encrypt','ListPrepend',
            'Trim','EncryptBinary','ListQualify','UCase','Evaluate','ListRest','URLDecode','Exp','ListSetAt','URLEncodedFormat',
            'ExpandPath','ListSort','URLSessionFormat','FileExists','ListToArray','Val','Find','ListValueCount','ValueList',
            'FindNoCase','ListValueCountNoCase','Week','FindOneOf','LJustify','Wrap','FirstDayOfMonth','Log','WriteOutput',
            'Fix','Log10','XmlChildPos','FormatBaseN','LSCurrencyFormat','XmlElemNew','GetAuthUser','LSDateFormat','XmlFormat',
            'GetBaseTagData','LSEuroCurrencyFormat','XmlGetNodeType','GetBaseTagList','LSIsCurrency','XmlNew','GetBaseTemplatePath',
            'LSIsDate','XmlParse','GetClientVariablesList','LSIsNumeric','XmlSearch','GetCurrentTemplatePath','LSNumberFormat',
            'XmlTransform','GetDirectoryFromPath','LSParseCurrency','XmlValidate','GetEncoding','LSParseDateTime','Year',
            'GetException','LSParseEuroCurrency','YesNoFormat','GetFileFromPath','LSParseNumber'
            ),
        /* CFM Attributes */
        6 => array(
            'dbtype','connectstring','datasource','username','password','query','delimeter','description','required','hint','default','access','from','to','list','index'
            ),
        7 => array(
            'EQ', 'GT', 'LT', 'GTE', 'LTE', 'IS', 'LIKE', 'NEQ'
            )
        ),
    'SYMBOLS' => array(
        '/', '=', '{', '}', '(', ')', '[', ']', '<', '>', '&'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #990000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #0000FF;',
            4 => 'color: #000000; font-weight: bold;',
            5 => 'color: #0000FF;',
            6 => 'color: #0000FF;',
            7 => 'color: #0000FF;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #0000FF;'
            ),
        'STRINGS' => array(
            0 => 'color: #009900;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #0000FF;'
            ),
        'SCRIPT' => array(
            0 => 'color: #808080; font-style: italic;',
            1 => 'color: #00bbdd;',
            2 => 'color: #0000FF;',
            3 => 'color: #000099;',
            4 => 'color: #333333;',
            5 => 'color: #333333;'
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => 'http://december.com/html/4/element/{FNAMEL}.html',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            ''
            ),
        1 => array(
            ' '>'
            ),
        2 => "/(?!<#)(?:(?:##)*)(#)[a-zA-Z0-9_\.\(\)]+(#)/",
        3 => array(
            '' => ''
            ),
        4 => array(
            '<' => '>'
            ),
        5 => '/((?!])+?(>)/si'
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => false,
        1 => false,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            1 => array(
                'DISALLOWED_BEFORE' => '(?<=<|<\/)',
                'DISALLOWED_AFTER' => '(?=\s|\/|>)',
                ),
            2 => array(
                'DISALLOWED_BEFORE' => '(?<=<|<\/)',
                'DISALLOWED_AFTER' => '(?=\s|\/|>)',
                ),
            3 => array(
                'DISALLOWED_BEFORE' => '(?|^])', // allow ; before keywords
                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords
                ),
            7 => array(
                'DISALLOWED_BEFORE' => '(?&|^])', // allow ; before keywords
                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords
                )
            )
        )
);

?>geshi/geshi/gdb.php0000664000175000017500000001353612014173427013444 0ustar  benbebenbe 'GDB',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        0 => array(
            'Application',
            'signal',
            ),
        1 => array(
            'Segmentation fault',
            '[KCrash Handler]',
            ),
        ),
    'NUMBERS' => false,
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        0 => true,
        1 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            0 => 'font-weight:bold;',
            1 => 'font-weight:bold; color: #ff0000;'
            ),
        'COMMENTS' => array(
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'font-weight:bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #933;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            ),
        'REGEXPS' => array(
            0 => 'color: #000066; font-weight:bold;',
            1 => 'color: #006600;',
            2 => 'color: #B07E00;',
            3 => 'color: #0057AE; text-style:italic;',
            4 => 'color: #0057AE; text-style:italic;',
            5 => 'color: #442886;',
            6 => 'color: #442886; font-weight:bold;',
            7 => 'color: #FF0000; font-weight:bold;',
            8 => 'color: #006E26;',
            9 => 'color: #555;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        0 => '',
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //[Current Thread...], [KCrash Handler] etc.
        0 => array(
            GESHI_SEARCH => '^\[.+\]',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //stack number
        1 => array(
            GESHI_SEARCH => '^#\d+',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Thread X (Thread...)
        2 => array(
            GESHI_SEARCH => '^Thread \d.+$',
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        //Files with linenumbers
        3 => array(
            GESHI_SEARCH => '(at\s+)(.+)(:\d+\s*)$',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        //Libs without linenumbers
        4 => array(
            GESHI_SEARCH => '(from\s+)(.+)(\s*)$',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        //Line numbers
        5 => array(
            GESHI_SEARCH => '(:)(\d+)(\s*)$',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        //Location
        6 => array(
            GESHI_SEARCH => '(\s+)(in\s+)?([^ 0-9][^ ]*)([ \n]+\()',
            GESHI_REPLACE => '\\3',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1\\2',
            GESHI_AFTER => '\\4'
            ),
        // interesting parts: abort, qFatal, assertions, null ptrs, ...
        7 => array(
            GESHI_SEARCH => '\b((?:\*__GI_)?(?:__assert_fail|abort)|qFatal|0x0)\b([^\.]|$)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '\\2'
            ),
        // Namespace / Classes
        8 => array(
            GESHI_SEARCH => '\b(\w+)(::)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'U',
            GESHI_BEFORE => '',
            GESHI_AFTER => '\\2'
            ),
        // make ptr adresses and  uninteresting
        9 => '\b(?:0x[a-f0-9]{2,}|value\s+optimized\s+out)\b'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'NUMBERS' => false
            ),
        )
);

// kate: replace-tabs on; indent-width 4;

?>
geshi/geshi/6502tasm.php0000664000175000017500000001567512014173406014174 0ustar  benbebenbe 'MOS 6502 (6510) TASM/64TASS 1.46 Assembler format',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* 6502/6510 Opcodes. */
        1 => array(
            'adc', 'and', 'asl', 'bcc', 'bcs', 'beq', 'bit', 'bmi',
            'bne', 'bpl', 'brk', 'bvc', 'bvs', 'clc', 'cld', 'cli',
            'clv', 'cmp', 'cpx', 'cpy', 'dec', 'dex', 'dey', 'eor',
            'inc', 'inx', 'iny', 'jmp', 'jsr', 'lda', 'ldx', 'ldy',
            'lsr', 'nop', 'ora', 'pha', 'php', 'pla', 'plp', 'rol',
            'ror', 'rti', 'rts', 'sbc', 'sec', 'sed', 'sei', 'sta',
            'stx', 'sty', 'tax', 'tay', 'tsx', 'txa', 'txs', 'tya',
            ),
        /* Index Registers, yes the 6502 has other registers by they are only
        * accessable by specific opcodes. The 65816 also has access to the stack pointer S. */
        2 => array(
            'x', 'y', 's'
            ),
        /* Directives. */
        3 => array(
            '.al', '.align', '.as', '.assert', '.binary', '.byte', '.cerror', '.char',
            '.comment', '.cpu', '.cwarn', '.databank', '.dpage', '.else', '.elsif',
            '.enc', '.endc', '.endif', '.endm', '.endp', '.error', '.fi', '.fill',
            '.for', '.here', '.if', '.ifeq', '.ifmi', '.ifne', '.ifpl',
            '.include', '.int', '.logical', '.long', '.macro', '.next', '.null', '.offs',
            '.page', '.pend', '.proc', '.rept', '.rta', '.shift', '.text', '.warn', '.word',
            '.xl', '.xs',
//            , '*='        // Not a valid keyword (uses both * and = signs) moved to symbols instead.
            ),

        /* 6502/6510 undocumented opcodes (often referred to as illegal instructions).
        *  These are present in the 6502/6510 but NOT in the newer CMOS revisions of the 65C02 or 65816.
        *  As they are undocumented instructions there are no "official" names for them, these are the names
        *  used by 64TASS V1.46.
        */
        4 => array(
            'ahx', 'alr', 'anc', 'ane', 'arr', 'asr', 'axs', 'dcm',
            'dcp', 'ins', 'isb', 'isc', 'jam', 'lae', 'las', 'lax',
            'lds', 'lxa', 'rla', 'rra', 'sax', 'sbx', 'sha', 'shs',
            'shx', 'shy', 'slo', 'sre', 'tas', 'xaa',
            ),
        /* 65c02 instructions, MOS added a few (much needed) instructions in the
        *  CMOS version of the 6502, but stupidly removed the undocumented/illegal opcodes.  */
        5 => array(
            'bra', 'dea', 'gra', 'ina', 'phx', 'phy', 'plx', 'ply',
            'stz', 'trb', 'tsb',
            ),
        /* 65816 instructions. */
        6 => array(
            'brl', 'cop', 'jml', 'jsl', 'mvn', 'mvp', 'pea', 'pei',
            'per', 'phb', 'phd', 'phk', 'plb', 'pld', 'rep', 'rtl',
            'sep', 'stp', 'swa', 'tad', 'tcd', 'tcs', 'tda',
            'tdc', 'tsa', 'tsc', 'txy', 'tyx', 'wai', 'xba', 'xce',
            ),
        /* Deprecated directives (or yet to be implemented). */
        7 => array(
            '.global', '.check'
            ),
        ),
    'SYMBOLS' => array(
//        '[', ']', '(', ')', '{', '}',    // These are already defined by GeSHi as BRACKETS.
        '*=', '#', '<', '>', '`', '=', '<', '>',
        '!=', '>=', '<=', '+', '-', '*', '/', '//', '|',
        '^', '&', '<<', '>>', '-', '~', '!',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00f; font-weight:bold;',
            2 => 'color: #00f; font-weight:bold;',
            3 => 'color: #080; font-weight:bold;',
            4 => 'color: #f00; font-weight:bold;',
            5 => 'color: #80f; font-weight:bold;',
            6 => 'color: #f08; font-weight:bold;',
            7 => 'color: #a04; font-weight:bold; font-style: italic;',
            ),
        'COMMENTS' => array(
            1 => 'color: #999; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #009; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000;'
            ),
        'STRINGS' => array(
            0 => 'color: #080;'
            ),
        'NUMBERS' => array(
            GESHI_NUMBER_INT_BASIC          => 'color: #f00;',
            GESHI_NUMBER_HEX_PREFIX_DOLLAR  => 'color: #f00;',
            GESHI_NUMBER_BIN_PREFIX_PERCENT => 'color: #f00;',
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #080;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_HEX_PREFIX_DOLLAR |
        GESHI_NUMBER_BIN_PREFIX_PERCENT,
        // AMCE Octal format not support and gets picked up as Decimal unfortunately.
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 8,
    'PARSER_CONTROL' => array(
        'NUMBERS' => array(
            'PRECHECK_RX' => '/[\da-fA-F\.\$\%]/'
            )
        )
);

?>geshi/geshi/4cs.php0000664000175000017500000001257312014173375013403 0ustar  benbebenbe 'GADV 4CS',
    'COMMENT_SINGLE' => array(1 => "//"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'All', 'AllMatches', 'And', 'And_Filters', 'As', 'Asc', 'BasedOn',
            'BestMatch', 'Block', 'Buffer', 'ByRef', 'ByVal', 'Call', 'Channel',
            'Chr', 'Clear', 'Close', 'Confirm', 'Const', 'Continue', 'Cos',
            'Critical', 'Declare', 'Default', 'DefaultChannel', 'DefaultDelayTime',
            'DefaultReceiveMode', 'DefaultResponseTime', '#Define', 'DelayTime',
            'Delete', 'Div', 'Else', '#Else', 'ElseIf', '#ElseIf', 'End', 'EndCritical',
            'EndInlineC', 'EndFunction', 'EndIf', '#EndIf', 'EndInputList',
            'EndLocalChannel', 'EndScenario', 'EndSub', 'EndWhile', 'Error',
            'ErrorLevelOff', 'ErrorLevelOn', 'ErrorLevelSet', 'ErrorLevelSetRaw',
            'Event', 'EventMode', 'EventOff', 'EventOn', 'EventSet', 'EventSetRaw',
            'Execute', 'Exit', 'Exp', 'FileClose', 'FilterClear', 'FileEOF', 'FileOpen',
            'FileRead', 'FileSize', 'FileWrite', 'FilterAdd', 'FilterMode',
            'FilterOff', 'FilterOn', 'For', 'Format', 'Function', 'GoOnline', 'GoTo',
            'Handle', 'Hide', 'If', '#If', '#IfDef', '#IfNDef', 'Ignore', '#Include',
            'InlineC', 'Input', 'InputItem', 'InputList', 'Kill', 'LBound', 'LocalChannel',
            'Local', 'Log', 'Log10', 'LogOff', 'LogOn', 'Loop', 'Message', 'Mod',
            'MonitorChannel', 'MostFormat', 'MostMessage', 'Named', 'Never', 'Next',
            'NoOrder', 'Not', 'Nothing', 'NoWait', 'Numeric', 'OnError', 'OnEvent',
            'Or', 'Or_Filters', 'Order', 'Pass', 'Pow', 'Prototype', 'Quit', 'Raise',
            'Random', 'Receive', 'ReceiveMode', 'ReceiveRaw', 'Redim', 'Remote', 'Repeat',
            'Repeated', 'ResponseTime', 'Resume', 'ResumeCritical', 'RT_Common',
            'RT_Dll_Call', 'RT_FILEIO', 'RT_General', 'RT_HardwareAccess',
            'RT_MessageVariableAccess', 'RT_Scenario', 'RT_VariableAccess', 'Runtime',
            'Scenario', 'ScenarioEnd', 'ScenarioStart', 'ScenarioStatus', 'ScenarioTerminate',
            'Send', 'SendRaw', 'Set', 'SetError', 'Sin', 'Single', 'Show', 'Start',
            'StartCritical', 'Starts', 'Static', 'Step', 'Stop', 'String', 'Sub',
            'System_Error', 'TerminateAllChilds', 'Terminates', 'Then', 'Throw', 'TimeOut',
            'To', 'TooLate', 'Trunc', 'UBound', 'Unexpected', 'Until', 'User_Error',
            'View', 'Wait', 'Warning', 'While', 'XOr'
            ),
        2 => array(
            'alias', 'winapi', 'long', 'char', 'double', 'float', 'int', 'short', 'lib'
            )
        ),
    'SYMBOLS' => array(
        '=', ':=', '<', '>', '<>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000C0; font-weight: bold;',
            2 => 'color: #808080;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000080;'
            ),
        'STRINGS' => array(
            0 => 'color: #800080;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #66cc66;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000080;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/java5.php0000664000175000017500000031412212014173372013710 0ustar  benbebenbe 'Java(TM) 2 Platform Standard Edition 5.0',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Import and Package directives (Basic Support only)
        2 => '/(?:(?<=import[\\n\\s](?!static))|(?<=import[\\n\\s]static[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i',
        // javadoc comments
        3 => '#/\*\*(?![\*\/]).*\*/#sU'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            /* see the authoritative list of all 50 Java keywords at */
            /* http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#229308 */

            /* java keywords, part 1: control flow */
            'case', 'default', 'do', 'else', 'for',
            'goto', 'if', 'switch', 'while'

            /* IMO 'break', 'continue', 'return' and 'throw' */
                        /* should also be added to this group, as they   */
            /* also manage the control flow,                 */
            /* arguably 'try'/'catch'/'finally' as well      */
            ),
        2 => array(
            /* java keywords, part 2 */

            'break', 'continue', 'return', 'throw',
            'try', 'catch', 'finally',

            'abstract', 'assert', 'class', 'const', 'enum', 'extends',
            'final', 'implements', 'import', 'instanceof', 'interface',
            'native', 'new', 'package', 'private', 'protected',
            'public', 'static', 'strictfp', 'super', 'synchronized',
            'this', 'throws', 'transient', 'volatile'
            ),
        3 => array(
            /* Java keywords, part 3: primitive data types and 'void' */
            'boolean', 'byte', 'char', 'double',
            'float', 'int', 'long', 'short', 'void'
            ),
        4 => array(
            /* other reserved words in Java: literals */
            /* should be styled to look similar to numbers and Strings */
            'false', 'null', 'true'
            ),
        5 => array (
            'Applet', 'AppletContext', 'AppletStub', 'AudioClip'
            ),
        6 => array (
            'AWTError', 'AWTEvent', 'AWTEventMulticaster', 'AWTException', 'AWTKeyStroke', 'AWTPermission', 'ActiveEvent', 'Adjustable', 'AlphaComposite', 'BasicStroke', 'BorderLayout', 'BufferCapabilities', 'BufferCapabilities.FlipContents', 'Button', 'Canvas', 'CardLayout', 'Checkbox', 'CheckboxGroup', 'CheckboxMenuItem', 'Choice', 'Color', 'Component', 'ComponentOrientation', 'Composite', 'CompositeContext', 'Container', 'ContainerOrderFocusTraversalPolicy', 'Cursor', 'DefaultFocusTraversalPolicy', 'DefaultKeyboardFocusManager', 'Dialog', 'Dimension', 'DisplayMode', 'EventQueue', 'FileDialog', 'FlowLayout', 'FocusTraversalPolicy', 'Font', 'FontFormatException', 'FontMetrics', 'Frame', 'GradientPaint', 'Graphics', 'Graphics2D', 'GraphicsConfigTemplate', 'GraphicsConfiguration', 'GraphicsDevice', 'GraphicsEnvironment', 'GridBagConstraints', 'GridBagLayout', 'GridLayout', 'HeadlessException', 'IllegalComponentStateException', 'Image', 'ImageCapabilities', 'Insets', 'ItemSelectable', 'JobAttributes',
            'JobAttributes.DefaultSelectionType', 'JobAttributes.DestinationType', 'JobAttributes.DialogType', 'JobAttributes.MultipleDocumentHandlingType', 'JobAttributes.SidesType', 'KeyEventDispatcher', 'KeyEventPostProcessor', 'KeyboardFocusManager', 'Label', 'LayoutManager', 'LayoutManager2', 'MediaTracker', 'Menu', 'MenuBar', 'MenuComponent', 'MenuContainer', 'MenuItem', 'MenuShortcut', 'MouseInfo', 'PageAttributes', 'PageAttributes.ColorType', 'PageAttributes.MediaType', 'PageAttributes.OrientationRequestedType', 'PageAttributes.OriginType', 'PageAttributes.PrintQualityType', 'Paint', 'PaintContext', 'Panel', 'Point', 'PointerInfo', 'Polygon', 'PopupMenu', 'PrintGraphics', 'PrintJob', 'Rectangle', 'RenderingHints', 'RenderingHints.Key', 'Robot', 'ScrollPane', 'ScrollPaneAdjustable', 'Scrollbar', 'Shape', 'Stroke', 'SystemColor', 'TextArea', 'TextComponent', 'TextField', 'TexturePaint', 'Toolkit', 'Transparency', 'Window'
            ),
        7 => array (
            'CMMException', 'ColorSpace', 'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray', 'ICC_ProfileRGB', 'ProfileDataException'
            ),
        8 => array (
            'Clipboard', 'ClipboardOwner', 'DataFlavor', 'FlavorEvent', 'FlavorListener', 'FlavorMap', 'FlavorTable', 'MimeTypeParseException', 'StringSelection', 'SystemFlavorMap', 'Transferable', 'UnsupportedFlavorException'
            ),
        9 => array (
            'Autoscroll', 'DnDConstants', 'DragGestureEvent', 'DragGestureListener', 'DragGestureRecognizer', 'DragSource', 'DragSourceAdapter', 'DragSourceContext', 'DragSourceDragEvent', 'DragSourceDropEvent', 'DragSourceEvent', 'DragSourceListener', 'DragSourceMotionListener', 'DropTarget', 'DropTarget.DropTargetAutoScroller', 'DropTargetAdapter', 'DropTargetContext', 'DropTargetDragEvent', 'DropTargetDropEvent', 'DropTargetEvent', 'DropTargetListener', 'InvalidDnDOperationException', 'MouseDragGestureRecognizer'
            ),
        10 => array (
            'AWTEventListener', 'AWTEventListenerProxy', 'ActionEvent', 'ActionListener', 'AdjustmentEvent', 'AdjustmentListener', 'ComponentAdapter', 'ComponentEvent', 'ComponentListener', 'ContainerAdapter', 'ContainerEvent', 'ContainerListener', 'FocusAdapter', 'FocusEvent', 'FocusListener', 'HierarchyBoundsAdapter', 'HierarchyBoundsListener', 'HierarchyEvent', 'HierarchyListener', 'InputEvent', 'InputMethodEvent', 'InputMethodListener', 'InvocationEvent', 'ItemEvent', 'ItemListener', 'KeyAdapter', 'KeyEvent', 'KeyListener', 'MouseAdapter', 'MouseListener', 'MouseMotionAdapter', 'MouseMotionListener', 'MouseWheelEvent', 'MouseWheelListener', 'PaintEvent', 'TextEvent', 'TextListener', 'WindowAdapter', 'WindowEvent', 'WindowFocusListener', 'WindowListener', 'WindowStateListener'
            ),
        11 => array (
            'FontRenderContext', 'GlyphJustificationInfo', 'GlyphMetrics', 'GlyphVector', 'GraphicAttribute', 'ImageGraphicAttribute', 'LineBreakMeasurer', 'LineMetrics', 'MultipleMaster', 'NumericShaper', 'ShapeGraphicAttribute', 'TextAttribute', 'TextHitInfo', 'TextLayout', 'TextLayout.CaretPolicy', 'TextMeasurer', 'TransformAttribute'
            ),
        12 => array (
            'AffineTransform', 'Arc2D', 'Arc2D.Double', 'Arc2D.Float', 'Area', 'CubicCurve2D', 'CubicCurve2D.Double', 'CubicCurve2D.Float', 'Dimension2D', 'Ellipse2D', 'Ellipse2D.Double', 'Ellipse2D.Float', 'FlatteningPathIterator', 'GeneralPath', 'IllegalPathStateException', 'Line2D', 'Line2D.Double', 'Line2D.Float', 'NoninvertibleTransformException', 'PathIterator', 'Point2D', 'Point2D.Double', 'Point2D.Float', 'QuadCurve2D', 'QuadCurve2D.Double', 'QuadCurve2D.Float', 'Rectangle2D', 'Rectangle2D.Double', 'Rectangle2D.Float', 'RectangularShape', 'RoundRectangle2D', 'RoundRectangle2D.Double', 'RoundRectangle2D.Float'
            ),
        13 => array (
            'InputContext', 'InputMethodHighlight', 'InputMethodRequests', 'InputSubset'
            ),
        14 => array (
            'InputMethod', 'InputMethodContext', 'InputMethodDescriptor'
            ),
        15 => array (
            'AffineTransformOp', 'AreaAveragingScaleFilter', 'BandCombineOp', 'BandedSampleModel', 'BufferStrategy', 'BufferedImage', 'BufferedImageFilter', 'BufferedImageOp', 'ByteLookupTable', 'ColorConvertOp', 'ColorModel', 'ComponentColorModel', 'ComponentSampleModel', 'ConvolveOp', 'CropImageFilter', 'DataBuffer', 'DataBufferByte', 'DataBufferDouble', 'DataBufferFloat', 'DataBufferInt', 'DataBufferShort', 'DataBufferUShort', 'DirectColorModel', 'FilteredImageSource', 'ImageConsumer', 'ImageFilter', 'ImageObserver', 'ImageProducer', 'ImagingOpException', 'IndexColorModel', 'Kernel', 'LookupOp', 'LookupTable', 'MemoryImageSource', 'MultiPixelPackedSampleModel', 'PackedColorModel', 'PixelGrabber', 'PixelInterleavedSampleModel', 'RGBImageFilter', 'Raster', 'RasterFormatException', 'RasterOp', 'RenderedImage', 'ReplicateScaleFilter', 'RescaleOp', 'SampleModel', 'ShortLookupTable', 'SinglePixelPackedSampleModel', 'TileObserver', 'VolatileImage', 'WritableRaster', 'WritableRenderedImage'
            ),
        16 => array (
            'ContextualRenderedImageFactory', 'ParameterBlock', 'RenderContext', 'RenderableImage', 'RenderableImageOp', 'RenderableImageProducer', 'RenderedImageFactory'
            ),
        17 => array (
            'Book', 'PageFormat', 'Pageable', 'Paper', 'Printable', 'PrinterAbortException', 'PrinterException', 'PrinterGraphics', 'PrinterIOException', 'PrinterJob'
            ),
        18 => array (
            'AppletInitializer', 'BeanDescriptor', 'BeanInfo', 'Beans', 'Customizer', 'DefaultPersistenceDelegate', 'DesignMode', 'Encoder', 'EventHandler', 'EventSetDescriptor', 'ExceptionListener', 'Expression', 'FeatureDescriptor', 'IndexedPropertyChangeEvent', 'IndexedPropertyDescriptor', 'Introspector', 'MethodDescriptor', 'ParameterDescriptor', 'PersistenceDelegate', 'PropertyChangeEvent', 'PropertyChangeListener', 'PropertyChangeListenerProxy', 'PropertyChangeSupport', 'PropertyDescriptor', 'PropertyEditor', 'PropertyEditorManager', 'PropertyEditorSupport', 'PropertyVetoException', 'SimpleBeanInfo', 'VetoableChangeListener', 'VetoableChangeListenerProxy', 'VetoableChangeSupport', 'Visibility', 'XMLDecoder', 'XMLEncoder'
            ),
        19 => array (
            'BeanContext', 'BeanContextChild', 'BeanContextChildComponentProxy', 'BeanContextChildSupport', 'BeanContextContainerProxy', 'BeanContextEvent', 'BeanContextMembershipEvent', 'BeanContextMembershipListener', 'BeanContextProxy', 'BeanContextServiceAvailableEvent', 'BeanContextServiceProvider', 'BeanContextServiceProviderBeanInfo', 'BeanContextServiceRevokedEvent', 'BeanContextServiceRevokedListener', 'BeanContextServices', 'BeanContextServicesListener', 'BeanContextServicesSupport', 'BeanContextServicesSupport.BCSSServiceProvider', 'BeanContextSupport', 'BeanContextSupport.BCSIterator'
            ),
        20 => array (
            'BufferedInputStream', 'BufferedOutputStream', 'BufferedReader', 'BufferedWriter', 'ByteArrayInputStream', 'ByteArrayOutputStream', 'CharArrayReader', 'CharArrayWriter', 'CharConversionException', 'Closeable', 'DataInput', 'DataOutput', 'EOFException', 'Externalizable', 'File', 'FileDescriptor', 'FileInputStream', 'FileNotFoundException', 'FileOutputStream', 'FilePermission', 'FileReader', 'FileWriter', 'FilenameFilter', 'FilterInputStream', 'FilterOutputStream', 'FilterReader', 'FilterWriter', 'Flushable', 'IOException', 'InputStreamReader', 'InterruptedIOException', 'InvalidClassException', 'InvalidObjectException', 'LineNumberInputStream', 'LineNumberReader', 'NotActiveException', 'NotSerializableException', 'ObjectInput', 'ObjectInputStream', 'ObjectInputStream.GetField', 'ObjectInputValidation', 'ObjectOutput', 'ObjectOutputStream', 'ObjectOutputStream.PutField', 'ObjectStreamClass', 'ObjectStreamConstants', 'ObjectStreamException', 'ObjectStreamField', 'OptionalDataException', 'OutputStreamWriter',
            'PipedInputStream', 'PipedOutputStream', 'PipedReader', 'PipedWriter', 'PrintStream', 'PrintWriter', 'PushbackInputStream', 'PushbackReader', 'RandomAccessFile', 'Reader', 'SequenceInputStream', 'Serializable', 'SerializablePermission', 'StreamCorruptedException', 'StreamTokenizer', 'StringBufferInputStream', 'StringReader', 'StringWriter', 'SyncFailedException', 'UTFDataFormatException', 'UnsupportedEncodingException', 'WriteAbortedException', 'Writer'
            ),
        21 => array (
            'AbstractMethodError', 'Appendable', 'ArithmeticException', 'ArrayIndexOutOfBoundsException', 'ArrayStoreException', 'AssertionError', 'Boolean', 'Byte', 'CharSequence', 'Character', 'Character.Subset', 'Character.UnicodeBlock', 'Class', 'ClassCastException', 'ClassCircularityError', 'ClassFormatError', 'ClassLoader', 'ClassNotFoundException', 'CloneNotSupportedException', 'Cloneable', 'Comparable', 'Compiler', 'Deprecated', 'Double', 'Enum', 'EnumConstantNotPresentException', 'Error', 'Exception', 'ExceptionInInitializerError', 'Float', 'IllegalAccessError', 'IllegalAccessException', 'IllegalArgumentException', 'IllegalMonitorStateException', 'IllegalStateException', 'IllegalThreadStateException', 'IncompatibleClassChangeError', 'IndexOutOfBoundsException', 'InheritableThreadLocal', 'InstantiationError', 'InstantiationException', 'Integer', 'InternalError', 'InterruptedException', 'Iterable', 'LinkageError', 'Long', 'Math', 'NegativeArraySizeException', 'NoClassDefFoundError', 'NoSuchFieldError',
            'NoSuchFieldException', 'NoSuchMethodError', 'NoSuchMethodException', 'NullPointerException', 'Number', 'NumberFormatException', 'OutOfMemoryError', 'Override', 'Package', 'Process', 'ProcessBuilder', 'Readable', 'Runnable', 'Runtime', 'RuntimeException', 'RuntimePermission', 'SecurityException', 'SecurityManager', 'Short', 'StackOverflowError', 'StackTraceElement', 'StrictMath', 'String', 'StringBuffer', 'StringBuilder', 'StringIndexOutOfBoundsException', 'SuppressWarnings', 'System', 'Thread', 'Thread.State', 'Thread.UncaughtExceptionHandler', 'ThreadDeath', 'ThreadGroup', 'ThreadLocal', 'Throwable', 'TypeNotPresentException', 'UnknownError', 'UnsatisfiedLinkError', 'UnsupportedClassVersionError', 'UnsupportedOperationException', 'VerifyError', 'VirtualMachineError', 'Void'
            ),
        22 => array (
            'AnnotationFormatError', 'AnnotationTypeMismatchException', 'Documented', 'ElementType', 'IncompleteAnnotationException', 'Inherited', 'Retention', 'RetentionPolicy', 'Target'
            ),
        23 => array (
            'ClassDefinition', 'ClassFileTransformer', 'IllegalClassFormatException', 'Instrumentation', 'UnmodifiableClassException'
            ),
        24 => array (
            'ClassLoadingMXBean', 'CompilationMXBean', 'GarbageCollectorMXBean', 'ManagementFactory', 'ManagementPermission', 'MemoryMXBean', 'MemoryManagerMXBean', 'MemoryNotificationInfo', 'MemoryPoolMXBean', 'MemoryType', 'MemoryUsage', 'OperatingSystemMXBean', 'RuntimeMXBean', 'ThreadInfo', 'ThreadMXBean'
            ),
        25 => array (
            'PhantomReference', 'ReferenceQueue', 'SoftReference', 'WeakReference'
            ),
        26 => array (
            'AccessibleObject', 'AnnotatedElement', 'Constructor', 'Field', 'GenericArrayType', 'GenericDeclaration', 'GenericSignatureFormatError', 'InvocationHandler', 'InvocationTargetException', 'MalformedParameterizedTypeException', 'Member', 'Method', 'Modifier', 'ParameterizedType', 'ReflectPermission', 'Type', 'TypeVariable', 'UndeclaredThrowableException', 'WildcardType'
            ),
        27 => array (
            'BigDecimal', 'BigInteger', 'MathContext', 'RoundingMode'
            ),
        28 => array (
            'Authenticator', 'Authenticator.RequestorType', 'BindException', 'CacheRequest', 'CacheResponse', 'ContentHandlerFactory', 'CookieHandler', 'DatagramPacket', 'DatagramSocket', 'DatagramSocketImpl', 'DatagramSocketImplFactory', 'FileNameMap', 'HttpRetryException', 'HttpURLConnection', 'Inet4Address', 'Inet6Address', 'InetAddress', 'InetSocketAddress', 'JarURLConnection', 'MalformedURLException', 'MulticastSocket', 'NetPermission', 'NetworkInterface', 'NoRouteToHostException', 'PasswordAuthentication', 'PortUnreachableException', 'ProtocolException', 'Proxy.Type', 'ProxySelector', 'ResponseCache', 'SecureCacheResponse', 'ServerSocket', 'Socket', 'SocketAddress', 'SocketException', 'SocketImpl', 'SocketImplFactory', 'SocketOptions', 'SocketPermission', 'SocketTimeoutException', 'URI', 'URISyntaxException', 'URL', 'URLClassLoader', 'URLConnection', 'URLDecoder', 'URLEncoder', 'URLStreamHandler', 'URLStreamHandlerFactory', 'UnknownServiceException'
            ),
        29 => array (
            'Buffer', 'BufferOverflowException', 'BufferUnderflowException', 'ByteBuffer', 'ByteOrder', 'CharBuffer', 'DoubleBuffer', 'FloatBuffer', 'IntBuffer', 'InvalidMarkException', 'LongBuffer', 'MappedByteBuffer', 'ReadOnlyBufferException', 'ShortBuffer'
            ),
        30 => array (
            'AlreadyConnectedException', 'AsynchronousCloseException', 'ByteChannel', 'CancelledKeyException', 'Channel', 'Channels', 'ClosedByInterruptException', 'ClosedChannelException', 'ClosedSelectorException', 'ConnectionPendingException', 'DatagramChannel', 'FileChannel', 'FileChannel.MapMode', 'FileLock', 'FileLockInterruptionException', 'GatheringByteChannel', 'IllegalBlockingModeException', 'IllegalSelectorException', 'InterruptibleChannel', 'NoConnectionPendingException', 'NonReadableChannelException', 'NonWritableChannelException', 'NotYetBoundException', 'NotYetConnectedException', 'OverlappingFileLockException', 'Pipe', 'Pipe.SinkChannel', 'Pipe.SourceChannel', 'ReadableByteChannel', 'ScatteringByteChannel', 'SelectableChannel', 'SelectionKey', 'Selector', 'ServerSocketChannel', 'SocketChannel', 'UnresolvedAddressException', 'UnsupportedAddressTypeException', 'WritableByteChannel'
            ),
        31 => array (
            'AbstractInterruptibleChannel', 'AbstractSelectableChannel', 'AbstractSelectionKey', 'AbstractSelector', 'SelectorProvider'
            ),
        32 => array (
            'CharacterCodingException', 'Charset', 'CharsetDecoder', 'CharsetEncoder', 'CoderMalfunctionError', 'CoderResult', 'CodingErrorAction', 'IllegalCharsetNameException', 'MalformedInputException', 'UnmappableCharacterException', 'UnsupportedCharsetException'
            ),
        33 => array (
            'CharsetProvider'
            ),
        34 => array (
            'AccessException', 'AlreadyBoundException', 'ConnectIOException', 'MarshalException', 'MarshalledObject', 'Naming', 'NoSuchObjectException', 'NotBoundException', 'RMISecurityException', 'RMISecurityManager', 'Remote', 'RemoteException', 'ServerError', 'ServerException', 'ServerRuntimeException', 'StubNotFoundException', 'UnexpectedException', 'UnmarshalException'
            ),
        35 => array (
            'Activatable', 'ActivateFailedException', 'ActivationDesc', 'ActivationException', 'ActivationGroup', 'ActivationGroupDesc', 'ActivationGroupDesc.CommandEnvironment', 'ActivationGroupID', 'ActivationGroup_Stub', 'ActivationID', 'ActivationInstantiator', 'ActivationMonitor', 'ActivationSystem', 'Activator', 'UnknownGroupException', 'UnknownObjectException'
            ),
        36 => array (
            'DGC', 'Lease', 'VMID'
            ),
        37 => array (
            'LocateRegistry', 'Registry', 'RegistryHandler'
            ),
        38 => array (
            'ExportException', 'LoaderHandler', 'LogStream', 'ObjID', 'Operation', 'RMIClassLoader', 'RMIClassLoaderSpi', 'RMIClientSocketFactory', 'RMIFailureHandler', 'RMIServerSocketFactory', 'RMISocketFactory', 'RemoteCall', 'RemoteObject', 'RemoteObjectInvocationHandler', 'RemoteRef', 'RemoteServer', 'RemoteStub', 'ServerCloneException', 'ServerNotActiveException', 'ServerRef', 'Skeleton', 'SkeletonMismatchException', 'SkeletonNotFoundException', 'SocketSecurityException', 'UID', 'UnicastRemoteObject', 'Unreferenced'
            ),
        39 => array (
            'AccessControlContext', 'AccessControlException', 'AccessController', 'AlgorithmParameterGenerator', 'AlgorithmParameterGeneratorSpi', 'AlgorithmParameters', 'AlgorithmParametersSpi', 'AllPermission', 'AuthProvider', 'BasicPermission', 'CodeSigner', 'CodeSource', 'DigestException', 'DigestInputStream', 'DigestOutputStream', 'DomainCombiner', 'GeneralSecurityException', 'Guard', 'GuardedObject', 'Identity', 'IdentityScope', 'InvalidAlgorithmParameterException', 'InvalidParameterException', 'Key', 'KeyException', 'KeyFactory', 'KeyFactorySpi', 'KeyManagementException', 'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi', 'KeyRep', 'KeyRep.Type', 'KeyStore', 'KeyStore.Builder', 'KeyStore.CallbackHandlerProtection', 'KeyStore.Entry', 'KeyStore.LoadStoreParameter', 'KeyStore.PasswordProtection', 'KeyStore.PrivateKeyEntry', 'KeyStore.ProtectionParameter', 'KeyStore.SecretKeyEntry', 'KeyStore.TrustedCertificateEntry', 'KeyStoreException', 'KeyStoreSpi', 'MessageDigest', 'MessageDigestSpi',
            'NoSuchAlgorithmException', 'NoSuchProviderException', 'PermissionCollection', 'Permissions', 'PrivateKey', 'PrivilegedAction', 'PrivilegedActionException', 'PrivilegedExceptionAction', 'ProtectionDomain', 'Provider', 'Provider.Service', 'ProviderException', 'PublicKey', 'SecureClassLoader', 'SecureRandom', 'SecureRandomSpi', 'Security', 'SecurityPermission', 'Signature', 'SignatureException', 'SignatureSpi', 'SignedObject', 'Signer', 'UnrecoverableEntryException', 'UnrecoverableKeyException', 'UnresolvedPermission'
            ),
        40 => array (
            'Acl', 'AclEntry', 'AclNotFoundException', 'Group', 'LastOwnerException', 'NotOwnerException', 'Owner'
            ),
        41 => array (
            'CRL', 'CRLException', 'CRLSelector', 'CertPath', 'CertPath.CertPathRep', 'CertPathBuilder', 'CertPathBuilderException', 'CertPathBuilderResult', 'CertPathBuilderSpi', 'CertPathParameters', 'CertPathValidator', 'CertPathValidatorException', 'CertPathValidatorResult', 'CertPathValidatorSpi', 'CertSelector', 'CertStore', 'CertStoreException', 'CertStoreParameters', 'CertStoreSpi', 'Certificate.CertificateRep', 'CertificateFactory', 'CertificateFactorySpi', 'CollectionCertStoreParameters', 'LDAPCertStoreParameters', 'PKIXBuilderParameters', 'PKIXCertPathBuilderResult', 'PKIXCertPathChecker', 'PKIXCertPathValidatorResult', 'PKIXParameters', 'PolicyNode', 'PolicyQualifierInfo', 'TrustAnchor', 'X509CRL', 'X509CRLEntry', 'X509CRLSelector', 'X509CertSelector', 'X509Extension'
            ),
        42 => array (
            'DSAKey', 'DSAKeyPairGenerator', 'DSAParams', 'DSAPrivateKey', 'DSAPublicKey', 'ECKey', 'ECPrivateKey', 'ECPublicKey', 'RSAKey', 'RSAMultiPrimePrivateCrtKey', 'RSAPrivateCrtKey', 'RSAPrivateKey', 'RSAPublicKey'
            ),
        43 => array (
            'AlgorithmParameterSpec', 'DSAParameterSpec', 'DSAPrivateKeySpec', 'DSAPublicKeySpec', 'ECField', 'ECFieldF2m', 'ECFieldFp', 'ECGenParameterSpec', 'ECParameterSpec', 'ECPoint', 'ECPrivateKeySpec', 'ECPublicKeySpec', 'EllipticCurve', 'EncodedKeySpec', 'InvalidKeySpecException', 'InvalidParameterSpecException', 'KeySpec', 'MGF1ParameterSpec', 'PKCS8EncodedKeySpec', 'PSSParameterSpec', 'RSAKeyGenParameterSpec', 'RSAMultiPrimePrivateCrtKeySpec', 'RSAOtherPrimeInfo', 'RSAPrivateCrtKeySpec', 'RSAPrivateKeySpec', 'RSAPublicKeySpec', 'X509EncodedKeySpec'
            ),
        44 => array (
            'BatchUpdateException', 'Blob', 'CallableStatement', 'Clob', 'Connection', 'DataTruncation', 'DatabaseMetaData', 'Driver', 'DriverManager', 'DriverPropertyInfo', 'ParameterMetaData', 'PreparedStatement', 'Ref', 'ResultSet', 'ResultSetMetaData', 'SQLData', 'SQLException', 'SQLInput', 'SQLOutput', 'SQLPermission', 'SQLWarning', 'Savepoint', 'Struct', 'Time', 'Types'
            ),
        45 => array (
            'AttributedCharacterIterator', 'AttributedCharacterIterator.Attribute', 'AttributedString', 'Bidi', 'BreakIterator', 'CharacterIterator', 'ChoiceFormat', 'CollationElementIterator', 'CollationKey', 'Collator', 'DateFormat', 'DateFormat.Field', 'DateFormatSymbols', 'DecimalFormat', 'DecimalFormatSymbols', 'FieldPosition', 'Format', 'Format.Field', 'MessageFormat', 'MessageFormat.Field', 'NumberFormat', 'NumberFormat.Field', 'ParseException', 'ParsePosition', 'RuleBasedCollator', 'SimpleDateFormat', 'StringCharacterIterator'
            ),
        46 => array (
            'AbstractCollection', 'AbstractList', 'AbstractMap', 'AbstractQueue', 'AbstractSequentialList', 'AbstractSet', 'ArrayList', 'Arrays', 'BitSet', 'Calendar', 'Collection', 'Collections', 'Comparator', 'ConcurrentModificationException', 'Currency', 'Dictionary', 'DuplicateFormatFlagsException', 'EmptyStackException', 'EnumMap', 'EnumSet', 'Enumeration', 'EventListenerProxy', 'EventObject', 'FormatFlagsConversionMismatchException', 'Formattable', 'FormattableFlags', 'Formatter.BigDecimalLayoutForm', 'FormatterClosedException', 'GregorianCalendar', 'HashMap', 'HashSet', 'Hashtable', 'IdentityHashMap', 'IllegalFormatCodePointException', 'IllegalFormatConversionException', 'IllegalFormatException', 'IllegalFormatFlagsException', 'IllegalFormatPrecisionException', 'IllegalFormatWidthException', 'InputMismatchException', 'InvalidPropertiesFormatException', 'Iterator', 'LinkedHashMap', 'LinkedHashSet', 'LinkedList', 'ListIterator', 'ListResourceBundle', 'Locale', 'Map', 'Map.Entry', 'MissingFormatArgumentException',
            'MissingFormatWidthException', 'MissingResourceException', 'NoSuchElementException', 'Observable', 'Observer', 'PriorityQueue', 'Properties', 'PropertyPermission', 'PropertyResourceBundle', 'Queue', 'Random', 'RandomAccess', 'ResourceBundle', 'Scanner', 'Set', 'SimpleTimeZone', 'SortedMap', 'SortedSet', 'Stack', 'StringTokenizer', 'TimeZone', 'TimerTask', 'TooManyListenersException', 'TreeMap', 'TreeSet', 'UUID', 'UnknownFormatConversionException', 'UnknownFormatFlagsException', 'Vector', 'WeakHashMap'
            ),
        47 => array (
            'AbstractExecutorService', 'ArrayBlockingQueue', 'BlockingQueue', 'BrokenBarrierException', 'Callable', 'CancellationException', 'CompletionService', 'ConcurrentHashMap', 'ConcurrentLinkedQueue', 'ConcurrentMap', 'CopyOnWriteArrayList', 'CopyOnWriteArraySet', 'CountDownLatch', 'CyclicBarrier', 'DelayQueue', 'Delayed', 'Exchanger', 'ExecutionException', 'Executor', 'ExecutorCompletionService', 'ExecutorService', 'Executors', 'Future', 'FutureTask', 'LinkedBlockingQueue', 'PriorityBlockingQueue', 'RejectedExecutionException', 'RejectedExecutionHandler', 'ScheduledExecutorService', 'ScheduledFuture', 'ScheduledThreadPoolExecutor', 'Semaphore', 'SynchronousQueue', 'ThreadFactory', 'ThreadPoolExecutor', 'ThreadPoolExecutor.AbortPolicy', 'ThreadPoolExecutor.CallerRunsPolicy', 'ThreadPoolExecutor.DiscardOldestPolicy', 'ThreadPoolExecutor.DiscardPolicy', 'TimeUnit', 'TimeoutException'
            ),
        48 => array (
            'AtomicBoolean', 'AtomicInteger', 'AtomicIntegerArray', 'AtomicIntegerFieldUpdater', 'AtomicLong', 'AtomicLongArray', 'AtomicLongFieldUpdater', 'AtomicMarkableReference', 'AtomicReference', 'AtomicReferenceArray', 'AtomicReferenceFieldUpdater', 'AtomicStampedReference'
            ),
        49 => array (
            'AbstractQueuedSynchronizer', 'Condition', 'Lock', 'LockSupport', 'ReadWriteLock', 'ReentrantLock', 'ReentrantReadWriteLock', 'ReentrantReadWriteLock.ReadLock', 'ReentrantReadWriteLock.WriteLock'
            ),
        50 => array (
            'Attributes.Name', 'JarEntry', 'JarException', 'JarFile', 'JarInputStream', 'JarOutputStream', 'Manifest', 'Pack200', 'Pack200.Packer', 'Pack200.Unpacker'
            ),
        51 => array (
            'ConsoleHandler', 'ErrorManager', 'FileHandler', 'Filter', 'Handler', 'Level', 'LogManager', 'LogRecord', 'Logger', 'LoggingMXBean', 'LoggingPermission', 'MemoryHandler', 'SimpleFormatter', 'SocketHandler', 'StreamHandler', 'XMLFormatter'
            ),
        52 => array (
            'AbstractPreferences', 'BackingStoreException', 'InvalidPreferencesFormatException', 'NodeChangeEvent', 'NodeChangeListener', 'PreferenceChangeEvent', 'PreferenceChangeListener', 'Preferences', 'PreferencesFactory'
            ),
        53 => array (
            'MatchResult', 'Matcher', 'Pattern', 'PatternSyntaxException'
            ),
        54 => array (
            'Adler32', 'CRC32', 'CheckedInputStream', 'CheckedOutputStream', 'Checksum', 'DataFormatException', 'Deflater', 'DeflaterOutputStream', 'GZIPInputStream', 'GZIPOutputStream', 'Inflater', 'InflaterInputStream', 'ZipEntry', 'ZipException', 'ZipFile', 'ZipInputStream', 'ZipOutputStream'
            ),
        55 => array (
            'Accessible', 'AccessibleAction', 'AccessibleAttributeSequence', 'AccessibleBundle', 'AccessibleComponent', 'AccessibleContext', 'AccessibleEditableText', 'AccessibleExtendedComponent', 'AccessibleExtendedTable', 'AccessibleExtendedText', 'AccessibleHyperlink', 'AccessibleHypertext', 'AccessibleIcon', 'AccessibleKeyBinding', 'AccessibleRelation', 'AccessibleRelationSet', 'AccessibleResourceBundle', 'AccessibleRole', 'AccessibleSelection', 'AccessibleState', 'AccessibleStateSet', 'AccessibleStreamable', 'AccessibleTable', 'AccessibleTableModelChange', 'AccessibleText', 'AccessibleTextSequence', 'AccessibleValue'
            ),
        56 => array (
            'ActivityCompletedException', 'ActivityRequiredException', 'InvalidActivityException'
            ),
        57 => array (
            'BadPaddingException', 'Cipher', 'CipherInputStream', 'CipherOutputStream', 'CipherSpi', 'EncryptedPrivateKeyInfo', 'ExemptionMechanism', 'ExemptionMechanismException', 'ExemptionMechanismSpi', 'IllegalBlockSizeException', 'KeyAgreement', 'KeyAgreementSpi', 'KeyGenerator', 'KeyGeneratorSpi', 'Mac', 'MacSpi', 'NoSuchPaddingException', 'NullCipher', 'SealedObject', 'SecretKey', 'SecretKeyFactory', 'SecretKeyFactorySpi', 'ShortBufferException'
            ),
        58 => array (
            'DHKey', 'DHPrivateKey', 'DHPublicKey', 'PBEKey'
            ),
        59 => array (
            'DESKeySpec', 'DESedeKeySpec', 'DHGenParameterSpec', 'DHParameterSpec', 'DHPrivateKeySpec', 'DHPublicKeySpec', 'IvParameterSpec', 'OAEPParameterSpec', 'PBEKeySpec', 'PBEParameterSpec', 'PSource', 'PSource.PSpecified', 'RC2ParameterSpec', 'RC5ParameterSpec', 'SecretKeySpec'
            ),
        60 => array (
            'IIOException', 'IIOImage', 'IIOParam', 'IIOParamController', 'ImageIO', 'ImageReadParam', 'ImageReader', 'ImageTranscoder', 'ImageTypeSpecifier', 'ImageWriteParam', 'ImageWriter'
            ),
        61 => array (
            'IIOReadProgressListener', 'IIOReadUpdateListener', 'IIOReadWarningListener', 'IIOWriteProgressListener', 'IIOWriteWarningListener'
            ),
        62 => array (
            'IIOInvalidTreeException', 'IIOMetadata', 'IIOMetadataController', 'IIOMetadataFormat', 'IIOMetadataFormatImpl', 'IIOMetadataNode'
            ),
        63 => array (
            'BMPImageWriteParam'
            ),
        64 => array (
            'JPEGHuffmanTable', 'JPEGImageReadParam', 'JPEGImageWriteParam', 'JPEGQTable'
            ),
        65 => array (
            'IIORegistry', 'IIOServiceProvider', 'ImageInputStreamSpi', 'ImageOutputStreamSpi', 'ImageReaderSpi', 'ImageReaderWriterSpi', 'ImageTranscoderSpi', 'ImageWriterSpi', 'RegisterableService', 'ServiceRegistry', 'ServiceRegistry.Filter'
            ),
        66 => array (
            'FileCacheImageInputStream', 'FileCacheImageOutputStream', 'FileImageInputStream', 'FileImageOutputStream', 'IIOByteBuffer', 'ImageInputStream', 'ImageInputStreamImpl', 'ImageOutputStream', 'ImageOutputStreamImpl', 'MemoryCacheImageInputStream', 'MemoryCacheImageOutputStream'
            ),
        67 => array (
            'AttributeChangeNotification', 'AttributeChangeNotificationFilter', 'AttributeNotFoundException', 'AttributeValueExp', 'BadAttributeValueExpException', 'BadBinaryOpValueExpException', 'BadStringOperationException', 'Descriptor', 'DescriptorAccess', 'DynamicMBean', 'InstanceAlreadyExistsException', 'InstanceNotFoundException', 'InvalidApplicationException', 'JMException', 'JMRuntimeException', 'ListenerNotFoundException', 'MBeanAttributeInfo', 'MBeanConstructorInfo', 'MBeanException', 'MBeanFeatureInfo', 'MBeanInfo', 'MBeanNotificationInfo', 'MBeanOperationInfo', 'MBeanParameterInfo', 'MBeanPermission', 'MBeanRegistration', 'MBeanRegistrationException', 'MBeanServer', 'MBeanServerBuilder', 'MBeanServerConnection', 'MBeanServerDelegate', 'MBeanServerDelegateMBean', 'MBeanServerFactory', 'MBeanServerInvocationHandler', 'MBeanServerNotification', 'MBeanServerPermission', 'MBeanTrustPermission', 'MalformedObjectNameException', 'NotCompliantMBeanException', 'Notification', 'NotificationBroadcaster',
            'NotificationBroadcasterSupport', 'NotificationEmitter', 'NotificationFilter', 'NotificationFilterSupport', 'NotificationListener', 'ObjectInstance', 'ObjectName', 'OperationsException', 'PersistentMBean', 'Query', 'QueryEval', 'QueryExp', 'ReflectionException', 'RuntimeErrorException', 'RuntimeMBeanException', 'RuntimeOperationsException', 'ServiceNotFoundException', 'StandardMBean', 'StringValueExp', 'ValueExp'
            ),
        68 => array (
            'ClassLoaderRepository', 'MLet', 'MLetMBean', 'PrivateClassLoader', 'PrivateMLet'
            ),
        69 => array (
            'DescriptorSupport', 'InvalidTargetObjectTypeException', 'ModelMBean', 'ModelMBeanAttributeInfo', 'ModelMBeanConstructorInfo', 'ModelMBeanInfo', 'ModelMBeanInfoSupport', 'ModelMBeanNotificationBroadcaster', 'ModelMBeanNotificationInfo', 'ModelMBeanOperationInfo', 'RequiredModelMBean', 'XMLParseException'
            ),
        70 => array (
            'CounterMonitor', 'CounterMonitorMBean', 'GaugeMonitor', 'GaugeMonitorMBean', 'Monitor', 'MonitorMBean', 'MonitorNotification', 'MonitorSettingException', 'StringMonitor', 'StringMonitorMBean'
            ),
        71 => array (
            'ArrayType', 'CompositeData', 'CompositeDataSupport', 'CompositeType', 'InvalidOpenTypeException', 'KeyAlreadyExistsException', 'OpenDataException', 'OpenMBeanAttributeInfo', 'OpenMBeanAttributeInfoSupport', 'OpenMBeanConstructorInfo', 'OpenMBeanConstructorInfoSupport', 'OpenMBeanInfo', 'OpenMBeanInfoSupport', 'OpenMBeanOperationInfo', 'OpenMBeanOperationInfoSupport', 'OpenMBeanParameterInfo', 'OpenMBeanParameterInfoSupport', 'SimpleType', 'TabularData', 'TabularDataSupport', 'TabularType'
            ),
        72 => array (
            'InvalidRelationIdException', 'InvalidRelationServiceException', 'InvalidRelationTypeException', 'InvalidRoleInfoException', 'InvalidRoleValueException', 'MBeanServerNotificationFilter', 'Relation', 'RelationException', 'RelationNotFoundException', 'RelationNotification', 'RelationService', 'RelationServiceMBean', 'RelationServiceNotRegisteredException', 'RelationSupport', 'RelationSupportMBean', 'RelationType', 'RelationTypeNotFoundException', 'RelationTypeSupport', 'Role', 'RoleInfo', 'RoleInfoNotFoundException', 'RoleList', 'RoleNotFoundException', 'RoleResult', 'RoleStatus', 'RoleUnresolved', 'RoleUnresolvedList'
            ),
        73 => array (
            'JMXAuthenticator', 'JMXConnectionNotification', 'JMXConnector', 'JMXConnectorFactory', 'JMXConnectorProvider', 'JMXConnectorServer', 'JMXConnectorServerFactory', 'JMXConnectorServerMBean', 'JMXConnectorServerProvider', 'JMXPrincipal', 'JMXProviderException', 'JMXServerErrorException', 'JMXServiceURL', 'MBeanServerForwarder', 'NotificationResult', 'SubjectDelegationPermission', 'TargetedNotification'
            ),
        74 => array (
            'RMIConnection', 'RMIConnectionImpl', 'RMIConnectionImpl_Stub', 'RMIConnector', 'RMIConnectorServer', 'RMIIIOPServerImpl', 'RMIJRMPServerImpl', 'RMIServer', 'RMIServerImpl', 'RMIServerImpl_Stub'
            ),
        75 => array (
            'TimerAlarmClockNotification', 'TimerMBean', 'TimerNotification'
            ),
        76 => array (
            'AuthenticationNotSupportedException', 'BinaryRefAddr', 'CannotProceedException', 'CommunicationException', 'CompositeName', 'CompoundName', 'ConfigurationException', 'ContextNotEmptyException', 'InitialContext', 'InsufficientResourcesException', 'InterruptedNamingException', 'InvalidNameException', 'LimitExceededException', 'LinkException', 'LinkLoopException', 'LinkRef', 'MalformedLinkException', 'Name', 'NameAlreadyBoundException', 'NameClassPair', 'NameNotFoundException', 'NameParser', 'NamingEnumeration', 'NamingException', 'NamingSecurityException', 'NoInitialContextException', 'NoPermissionException', 'NotContextException', 'OperationNotSupportedException', 'PartialResultException', 'RefAddr', 'Referenceable', 'ReferralException', 'ServiceUnavailableException', 'SizeLimitExceededException', 'StringRefAddr', 'TimeLimitExceededException'
            ),
        77 => array (
            'AttributeInUseException', 'AttributeModificationException', 'BasicAttribute', 'BasicAttributes', 'DirContext', 'InitialDirContext', 'InvalidAttributeIdentifierException', 'InvalidAttributesException', 'InvalidSearchControlsException', 'InvalidSearchFilterException', 'ModificationItem', 'NoSuchAttributeException', 'SchemaViolationException', 'SearchControls', 'SearchResult'
            ),
        78 => array (
            'EventContext', 'EventDirContext', 'NamespaceChangeListener', 'NamingEvent', 'NamingExceptionEvent', 'NamingListener', 'ObjectChangeListener'
            ),
        79 => array (
            'BasicControl', 'ControlFactory', 'ExtendedRequest', 'ExtendedResponse', 'HasControls', 'InitialLdapContext', 'LdapContext', 'LdapName', 'LdapReferralException', 'ManageReferralControl', 'PagedResultsControl', 'PagedResultsResponseControl', 'Rdn', 'SortControl', 'SortKey', 'SortResponseControl', 'StartTlsRequest', 'StartTlsResponse', 'UnsolicitedNotification', 'UnsolicitedNotificationEvent', 'UnsolicitedNotificationListener'
            ),
        80 => array (
            'DirObjectFactory', 'DirStateFactory', 'DirStateFactory.Result', 'DirectoryManager', 'InitialContextFactory', 'InitialContextFactoryBuilder', 'NamingManager', 'ObjectFactory', 'ObjectFactoryBuilder', 'ResolveResult', 'Resolver', 'StateFactory'
            ),
        81 => array (
            'ServerSocketFactory', 'SocketFactory'
            ),
        82 => array (
            'CertPathTrustManagerParameters', 'HandshakeCompletedEvent', 'HandshakeCompletedListener', 'HostnameVerifier', 'HttpsURLConnection', 'KeyManager', 'KeyManagerFactory', 'KeyManagerFactorySpi', 'KeyStoreBuilderParameters', 'ManagerFactoryParameters', 'SSLContext', 'SSLContextSpi', 'SSLEngine', 'SSLEngineResult', 'SSLEngineResult.HandshakeStatus', 'SSLEngineResult.Status', 'SSLException', 'SSLHandshakeException', 'SSLKeyException', 'SSLPeerUnverifiedException', 'SSLPermission', 'SSLProtocolException', 'SSLServerSocket', 'SSLServerSocketFactory', 'SSLSession', 'SSLSessionBindingEvent', 'SSLSessionBindingListener', 'SSLSessionContext', 'SSLSocket', 'SSLSocketFactory', 'TrustManager', 'TrustManagerFactory', 'TrustManagerFactorySpi', 'X509ExtendedKeyManager', 'X509KeyManager', 'X509TrustManager'
            ),
        83 => array (
            'AttributeException', 'CancelablePrintJob', 'Doc', 'DocFlavor', 'DocFlavor.BYTE_ARRAY', 'DocFlavor.CHAR_ARRAY', 'DocFlavor.INPUT_STREAM', 'DocFlavor.READER', 'DocFlavor.SERVICE_FORMATTED', 'DocFlavor.STRING', 'DocFlavor.URL', 'DocPrintJob', 'FlavorException', 'MultiDoc', 'MultiDocPrintJob', 'MultiDocPrintService', 'PrintException', 'PrintService', 'PrintServiceLookup', 'ServiceUI', 'ServiceUIFactory', 'SimpleDoc', 'StreamPrintService', 'StreamPrintServiceFactory', 'URIException'
            ),
        84 => array (
            'AttributeSetUtilities', 'DateTimeSyntax', 'DocAttribute', 'DocAttributeSet', 'EnumSyntax', 'HashAttributeSet', 'HashDocAttributeSet', 'HashPrintJobAttributeSet', 'HashPrintRequestAttributeSet', 'HashPrintServiceAttributeSet', 'IntegerSyntax', 'PrintJobAttribute', 'PrintJobAttributeSet', 'PrintRequestAttribute', 'PrintRequestAttributeSet', 'PrintServiceAttribute', 'PrintServiceAttributeSet', 'ResolutionSyntax', 'SetOfIntegerSyntax', 'Size2DSyntax', 'SupportedValuesAttribute', 'TextSyntax', 'URISyntax', 'UnmodifiableSetException'
            ),
        85 => array (
            'Chromaticity', 'ColorSupported', 'Compression', 'Copies', 'CopiesSupported', 'DateTimeAtCompleted', 'DateTimeAtCreation', 'DateTimeAtProcessing', 'Destination', 'DocumentName', 'Fidelity', 'Finishings', 'JobHoldUntil', 'JobImpressions', 'JobImpressionsCompleted', 'JobImpressionsSupported', 'JobKOctets', 'JobKOctetsProcessed', 'JobKOctetsSupported', 'JobMediaSheets', 'JobMediaSheetsCompleted', 'JobMediaSheetsSupported', 'JobMessageFromOperator', 'JobName', 'JobOriginatingUserName', 'JobPriority', 'JobPrioritySupported', 'JobSheets', 'JobState', 'JobStateReason', 'JobStateReasons', 'Media', 'MediaName', 'MediaPrintableArea', 'MediaSize', 'MediaSize.Engineering', 'MediaSize.ISO', 'MediaSize.JIS', 'MediaSize.NA', 'MediaSize.Other', 'MediaSizeName', 'MediaTray', 'MultipleDocumentHandling', 'NumberOfDocuments', 'NumberOfInterveningJobs', 'NumberUp', 'NumberUpSupported', 'OrientationRequested', 'OutputDeviceAssigned', 'PDLOverrideSupported', 'PageRanges', 'PagesPerMinute', 'PagesPerMinuteColor',
            'PresentationDirection', 'PrintQuality', 'PrinterInfo', 'PrinterIsAcceptingJobs', 'PrinterLocation', 'PrinterMakeAndModel', 'PrinterMessageFromOperator', 'PrinterMoreInfo', 'PrinterMoreInfoManufacturer', 'PrinterName', 'PrinterResolution', 'PrinterState', 'PrinterStateReason', 'PrinterStateReasons', 'PrinterURI', 'QueuedJobCount', 'ReferenceUriSchemesSupported', 'RequestingUserName', 'Severity', 'SheetCollate', 'Sides'
            ),
        86 => array (
            'PrintEvent', 'PrintJobAdapter', 'PrintJobAttributeEvent', 'PrintJobAttributeListener', 'PrintJobEvent', 'PrintJobListener', 'PrintServiceAttributeEvent', 'PrintServiceAttributeListener'
            ),
        87 => array (
            'PortableRemoteObject'
            ),
        88 => array (
            'ClassDesc', 'PortableRemoteObjectDelegate', 'Stub', 'StubDelegate', 'Tie', 'Util', 'UtilDelegate', 'ValueHandler', 'ValueHandlerMultiFormat'
            ),
        89 => array (
            'SslRMIClientSocketFactory', 'SslRMIServerSocketFactory'
            ),
        90 => array (
            'AuthPermission', 'DestroyFailedException', 'Destroyable', 'PrivateCredentialPermission', 'RefreshFailedException', 'Refreshable', 'Subject', 'SubjectDomainCombiner'
            ),
        91 => array (
            'Callback', 'CallbackHandler', 'ChoiceCallback', 'ConfirmationCallback', 'LanguageCallback', 'NameCallback', 'PasswordCallback', 'TextInputCallback', 'TextOutputCallback', 'UnsupportedCallbackException'
            ),
        92 => array (
            'DelegationPermission', 'KerberosKey', 'KerberosPrincipal', 'KerberosTicket', 'ServicePermission'
            ),
        93 => array (
            'AccountException', 'AccountExpiredException', 'AccountLockedException', 'AccountNotFoundException', 'AppConfigurationEntry', 'AppConfigurationEntry.LoginModuleControlFlag', 'Configuration', 'CredentialException', 'CredentialExpiredException', 'CredentialNotFoundException', 'FailedLoginException', 'LoginContext', 'LoginException'
            ),
        94 => array (
            'LoginModule'
            ),
        95 => array (
            'X500Principal', 'X500PrivateCredential'
            ),
        96 => array (
            'AuthorizeCallback', 'RealmCallback', 'RealmChoiceCallback', 'Sasl', 'SaslClient', 'SaslClientFactory', 'SaslException', 'SaslServer', 'SaslServerFactory'
            ),
        97 => array (
            'ControllerEventListener', 'Instrument', 'InvalidMidiDataException', 'MetaEventListener', 'MetaMessage', 'MidiChannel', 'MidiDevice', 'MidiDevice.Info', 'MidiEvent', 'MidiFileFormat', 'MidiMessage', 'MidiSystem', 'MidiUnavailableException', 'Patch', 'Receiver', 'Sequence', 'Sequencer', 'Sequencer.SyncMode', 'ShortMessage', 'Soundbank', 'SoundbankResource', 'Synthesizer', 'SysexMessage', 'Track', 'Transmitter', 'VoiceStatus'
            ),
        98 => array (
            'MidiDeviceProvider', 'MidiFileReader', 'MidiFileWriter', 'SoundbankReader'
            ),
        99 => array (
            'AudioFileFormat', 'AudioFileFormat.Type', 'AudioFormat', 'AudioFormat.Encoding', 'AudioInputStream', 'AudioPermission', 'AudioSystem', 'BooleanControl', 'BooleanControl.Type', 'Clip', 'CompoundControl', 'CompoundControl.Type', 'Control.Type', 'DataLine', 'DataLine.Info', 'EnumControl', 'EnumControl.Type', 'FloatControl', 'FloatControl.Type', 'Line', 'Line.Info', 'LineEvent', 'LineEvent.Type', 'LineListener', 'LineUnavailableException', 'Mixer', 'Mixer.Info', 'Port', 'Port.Info', 'ReverbType', 'SourceDataLine', 'TargetDataLine', 'UnsupportedAudioFileException'
            ),
        100 => array (
            'AudioFileReader', 'AudioFileWriter', 'FormatConversionProvider', 'MixerProvider'
            ),
        101 => array (
            'ConnectionEvent', 'ConnectionEventListener', 'ConnectionPoolDataSource', 'DataSource', 'PooledConnection', 'RowSet', 'RowSetEvent', 'RowSetInternal', 'RowSetListener', 'RowSetMetaData', 'RowSetReader', 'RowSetWriter', 'XAConnection', 'XADataSource'
            ),
        102 => array (
            'BaseRowSet', 'CachedRowSet', 'FilteredRowSet', 'JdbcRowSet', 'JoinRowSet', 'Joinable', 'Predicate', 'RowSetMetaDataImpl', 'RowSetWarning', 'WebRowSet'
            ),
        103 => array (
            'SQLInputImpl', 'SQLOutputImpl', 'SerialArray', 'SerialBlob', 'SerialClob', 'SerialDatalink', 'SerialException', 'SerialJavaObject', 'SerialRef', 'SerialStruct'
            ),
        104 => array (
            'SyncFactory', 'SyncFactoryException', 'SyncProvider', 'SyncProviderException', 'SyncResolver', 'TransactionalWriter', 'XmlReader', 'XmlWriter'
            ),
        105 => array (
            'AbstractAction', 'AbstractButton', 'AbstractCellEditor', 'AbstractListModel', 'AbstractSpinnerModel', 'Action', 'ActionMap', 'BorderFactory', 'BoundedRangeModel', 'Box', 'Box.Filler', 'BoxLayout', 'ButtonGroup', 'ButtonModel', 'CellEditor', 'CellRendererPane', 'ComboBoxEditor', 'ComboBoxModel', 'ComponentInputMap', 'DebugGraphics', 'DefaultBoundedRangeModel', 'DefaultButtonModel', 'DefaultCellEditor', 'DefaultComboBoxModel', 'DefaultDesktopManager', 'DefaultFocusManager', 'DefaultListCellRenderer', 'DefaultListCellRenderer.UIResource', 'DefaultListModel', 'DefaultListSelectionModel', 'DefaultSingleSelectionModel', 'DesktopManager', 'FocusManager', 'GrayFilter', 'Icon', 'ImageIcon', 'InputMap', 'InputVerifier', 'InternalFrameFocusTraversalPolicy', 'JApplet', 'JButton', 'JCheckBox', 'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox', 'JComboBox.KeySelectionManager', 'JComponent', 'JDesktopPane', 'JDialog', 'JEditorPane', 'JFileChooser', 'JFormattedTextField', 'JFormattedTextField.AbstractFormatter',
            'JFormattedTextField.AbstractFormatterFactory', 'JFrame', 'JInternalFrame', 'JInternalFrame.JDesktopIcon', 'JLabel', 'JLayeredPane', 'JList', 'JMenu', 'JMenuBar', 'JMenuItem', 'JOptionPane', 'JPanel', 'JPasswordField', 'JPopupMenu', 'JPopupMenu.Separator', 'JProgressBar', 'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane', 'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider', 'JSpinner', 'JSpinner.DateEditor', 'JSpinner.DefaultEditor', 'JSpinner.ListEditor', 'JSpinner.NumberEditor', 'JSplitPane', 'JTabbedPane', 'JTable', 'JTable.PrintMode', 'JTextArea', 'JTextField', 'JTextPane', 'JToggleButton', 'JToggleButton.ToggleButtonModel', 'JToolBar', 'JToolBar.Separator', 'JToolTip', 'JTree', 'JTree.DynamicUtilTreeNode', 'JTree.EmptySelectionModel', 'JViewport', 'JWindow', 'KeyStroke', 'LayoutFocusTraversalPolicy', 'ListCellRenderer', 'ListModel', 'ListSelectionModel', 'LookAndFeel', 'MenuElement', 'MenuSelectionManager', 'MutableComboBoxModel', 'OverlayLayout', 'Popup', 'PopupFactory', 'ProgressMonitor',
            'ProgressMonitorInputStream', 'Renderer', 'RepaintManager', 'RootPaneContainer', 'ScrollPaneConstants', 'ScrollPaneLayout', 'ScrollPaneLayout.UIResource', 'Scrollable', 'SingleSelectionModel', 'SizeRequirements', 'SizeSequence', 'SortingFocusTraversalPolicy', 'SpinnerDateModel', 'SpinnerListModel', 'SpinnerModel', 'SpinnerNumberModel', 'Spring', 'SpringLayout', 'SpringLayout.Constraints', 'SwingConstants', 'SwingUtilities', 'ToolTipManager', 'TransferHandler', 'UIDefaults', 'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap', 'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue', 'UIManager', 'UIManager.LookAndFeelInfo', 'UnsupportedLookAndFeelException', 'ViewportLayout', 'WindowConstants'
            ),
        106 => array (
            'AbstractBorder', 'BevelBorder', 'Border', 'CompoundBorder', 'EmptyBorder', 'EtchedBorder', 'LineBorder', 'MatteBorder', 'SoftBevelBorder', 'TitledBorder'
            ),
        107 => array (
            'AbstractColorChooserPanel', 'ColorChooserComponentFactory', 'ColorSelectionModel', 'DefaultColorSelectionModel'
            ),
        108 => array (
            'AncestorEvent', 'AncestorListener', 'CaretEvent', 'CaretListener', 'CellEditorListener', 'ChangeEvent', 'ChangeListener', 'DocumentEvent.ElementChange', 'DocumentEvent.EventType', 'DocumentListener', 'EventListenerList', 'HyperlinkEvent', 'HyperlinkEvent.EventType', 'HyperlinkListener', 'InternalFrameAdapter', 'InternalFrameEvent', 'InternalFrameListener', 'ListDataEvent', 'ListDataListener', 'ListSelectionEvent', 'ListSelectionListener', 'MenuDragMouseEvent', 'MenuDragMouseListener', 'MenuEvent', 'MenuKeyEvent', 'MenuKeyListener', 'MenuListener', 'MouseInputAdapter', 'MouseInputListener', 'PopupMenuEvent', 'PopupMenuListener', 'SwingPropertyChangeSupport', 'TableColumnModelEvent', 'TableColumnModelListener', 'TableModelEvent', 'TableModelListener', 'TreeExpansionEvent', 'TreeExpansionListener', 'TreeModelEvent', 'TreeModelListener', 'TreeSelectionEvent', 'TreeSelectionListener', 'TreeWillExpandListener', 'UndoableEditEvent', 'UndoableEditListener'
            ),
        109 => array (
            'FileSystemView', 'FileView'
            ),
        110 => array (
            'ActionMapUIResource', 'BorderUIResource', 'BorderUIResource.BevelBorderUIResource', 'BorderUIResource.CompoundBorderUIResource', 'BorderUIResource.EmptyBorderUIResource', 'BorderUIResource.EtchedBorderUIResource', 'BorderUIResource.LineBorderUIResource', 'BorderUIResource.MatteBorderUIResource', 'BorderUIResource.TitledBorderUIResource', 'ButtonUI', 'ColorChooserUI', 'ColorUIResource', 'ComboBoxUI', 'ComponentInputMapUIResource', 'ComponentUI', 'DesktopIconUI', 'DesktopPaneUI', 'DimensionUIResource', 'FileChooserUI', 'FontUIResource', 'IconUIResource', 'InputMapUIResource', 'InsetsUIResource', 'InternalFrameUI', 'LabelUI', 'ListUI', 'MenuBarUI', 'MenuItemUI', 'OptionPaneUI', 'PanelUI', 'PopupMenuUI', 'ProgressBarUI', 'RootPaneUI', 'ScrollBarUI', 'ScrollPaneUI', 'SeparatorUI', 'SliderUI', 'SpinnerUI', 'SplitPaneUI', 'TabbedPaneUI', 'TableHeaderUI', 'TableUI', 'TextUI', 'ToolBarUI', 'ToolTipUI', 'TreeUI', 'UIResource', 'ViewportUI'
            ),
        111 => array (
            'BasicArrowButton', 'BasicBorders', 'BasicBorders.ButtonBorder', 'BasicBorders.FieldBorder', 'BasicBorders.MarginBorder', 'BasicBorders.MenuBarBorder', 'BasicBorders.RadioButtonBorder', 'BasicBorders.RolloverButtonBorder', 'BasicBorders.SplitPaneBorder', 'BasicBorders.ToggleButtonBorder', 'BasicButtonListener', 'BasicButtonUI', 'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI', 'BasicColorChooserUI', 'BasicComboBoxEditor', 'BasicComboBoxEditor.UIResource', 'BasicComboBoxRenderer', 'BasicComboBoxRenderer.UIResource', 'BasicComboBoxUI', 'BasicComboPopup', 'BasicDesktopIconUI', 'BasicDesktopPaneUI', 'BasicDirectoryModel', 'BasicEditorPaneUI', 'BasicFileChooserUI', 'BasicFormattedTextFieldUI', 'BasicGraphicsUtils', 'BasicHTML', 'BasicIconFactory', 'BasicInternalFrameTitlePane', 'BasicInternalFrameUI', 'BasicLabelUI', 'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI', 'BasicMenuItemUI', 'BasicMenuUI', 'BasicOptionPaneUI', 'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI', 'BasicPasswordFieldUI',
            'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI', 'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI', 'BasicRadioButtonUI', 'BasicRootPaneUI', 'BasicScrollBarUI', 'BasicScrollPaneUI', 'BasicSeparatorUI', 'BasicSliderUI', 'BasicSpinnerUI', 'BasicSplitPaneDivider', 'BasicSplitPaneUI', 'BasicTabbedPaneUI', 'BasicTableHeaderUI', 'BasicTableUI', 'BasicTextAreaUI', 'BasicTextFieldUI', 'BasicTextPaneUI', 'BasicTextUI', 'BasicTextUI.BasicCaret', 'BasicTextUI.BasicHighlighter', 'BasicToggleButtonUI', 'BasicToolBarSeparatorUI', 'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI', 'BasicViewportUI', 'ComboPopup', 'DefaultMenuLayout'
            ),
        112 => array (
            'DefaultMetalTheme', 'MetalBorders', 'MetalBorders.ButtonBorder', 'MetalBorders.Flush3DBorder', 'MetalBorders.InternalFrameBorder', 'MetalBorders.MenuBarBorder', 'MetalBorders.MenuItemBorder', 'MetalBorders.OptionDialogBorder', 'MetalBorders.PaletteBorder', 'MetalBorders.PopupMenuBorder', 'MetalBorders.RolloverButtonBorder', 'MetalBorders.ScrollPaneBorder', 'MetalBorders.TableHeaderBorder', 'MetalBorders.TextFieldBorder', 'MetalBorders.ToggleButtonBorder', 'MetalBorders.ToolBarBorder', 'MetalButtonUI', 'MetalCheckBoxIcon', 'MetalCheckBoxUI', 'MetalComboBoxButton', 'MetalComboBoxEditor', 'MetalComboBoxEditor.UIResource', 'MetalComboBoxIcon', 'MetalComboBoxUI', 'MetalDesktopIconUI', 'MetalFileChooserUI', 'MetalIconFactory', 'MetalIconFactory.FileIcon16', 'MetalIconFactory.FolderIcon16', 'MetalIconFactory.PaletteCloseIcon', 'MetalIconFactory.TreeControlIcon', 'MetalIconFactory.TreeFolderIcon', 'MetalIconFactory.TreeLeafIcon', 'MetalInternalFrameTitlePane', 'MetalInternalFrameUI', 'MetalLabelUI',
            'MetalLookAndFeel', 'MetalMenuBarUI', 'MetalPopupMenuSeparatorUI', 'MetalProgressBarUI', 'MetalRadioButtonUI', 'MetalRootPaneUI', 'MetalScrollBarUI', 'MetalScrollButton', 'MetalScrollPaneUI', 'MetalSeparatorUI', 'MetalSliderUI', 'MetalSplitPaneUI', 'MetalTabbedPaneUI', 'MetalTextFieldUI', 'MetalTheme', 'MetalToggleButtonUI', 'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI', 'OceanTheme'
            ),
        113 => array (
            'MultiButtonUI', 'MultiColorChooserUI', 'MultiComboBoxUI', 'MultiDesktopIconUI', 'MultiDesktopPaneUI', 'MultiFileChooserUI', 'MultiInternalFrameUI', 'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel', 'MultiMenuBarUI', 'MultiMenuItemUI', 'MultiOptionPaneUI', 'MultiPanelUI', 'MultiPopupMenuUI', 'MultiProgressBarUI', 'MultiRootPaneUI', 'MultiScrollBarUI', 'MultiScrollPaneUI', 'MultiSeparatorUI', 'MultiSliderUI', 'MultiSpinnerUI', 'MultiSplitPaneUI', 'MultiTabbedPaneUI', 'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI', 'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI', 'MultiViewportUI'
            ),
        114 => array (
            'ColorType', 'Region', 'SynthConstants', 'SynthContext', 'SynthGraphicsUtils', 'SynthLookAndFeel', 'SynthPainter', 'SynthStyle', 'SynthStyleFactory'
            ),
        115 => array (
            'AbstractTableModel', 'DefaultTableCellRenderer', 'DefaultTableCellRenderer.UIResource', 'DefaultTableColumnModel', 'DefaultTableModel', 'JTableHeader', 'TableCellEditor', 'TableCellRenderer', 'TableColumn', 'TableColumnModel', 'TableModel'
            ),
        116 => array (
            'AbstractDocument', 'AbstractDocument.AttributeContext', 'AbstractDocument.Content', 'AbstractDocument.ElementEdit', 'AbstractWriter', 'AsyncBoxView', 'AttributeSet.CharacterAttribute', 'AttributeSet.ColorAttribute', 'AttributeSet.FontAttribute', 'AttributeSet.ParagraphAttribute', 'BadLocationException', 'BoxView', 'Caret', 'ChangedCharSetException', 'ComponentView', 'CompositeView', 'DateFormatter', 'DefaultCaret', 'DefaultEditorKit', 'DefaultEditorKit.BeepAction', 'DefaultEditorKit.CopyAction', 'DefaultEditorKit.CutAction', 'DefaultEditorKit.DefaultKeyTypedAction', 'DefaultEditorKit.InsertBreakAction', 'DefaultEditorKit.InsertContentAction', 'DefaultEditorKit.InsertTabAction', 'DefaultEditorKit.PasteAction', 'DefaultFormatter', 'DefaultFormatterFactory', 'DefaultHighlighter', 'DefaultHighlighter.DefaultHighlightPainter', 'DefaultStyledDocument', 'DefaultStyledDocument.AttributeUndoableEdit', 'DefaultStyledDocument.ElementSpec', 'DefaultTextUI', 'DocumentFilter', 'DocumentFilter.FilterBypass',
            'EditorKit', 'ElementIterator', 'FieldView', 'FlowView', 'FlowView.FlowStrategy', 'GapContent', 'GlyphView', 'GlyphView.GlyphPainter', 'Highlighter', 'Highlighter.Highlight', 'Highlighter.HighlightPainter', 'IconView', 'InternationalFormatter', 'JTextComponent', 'JTextComponent.KeyBinding', 'Keymap', 'LabelView', 'LayeredHighlighter', 'LayeredHighlighter.LayerPainter', 'LayoutQueue', 'MaskFormatter', 'MutableAttributeSet', 'NavigationFilter', 'NavigationFilter.FilterBypass', 'NumberFormatter', 'PasswordView', 'PlainDocument', 'PlainView', 'Position', 'Position.Bias', 'Segment', 'SimpleAttributeSet', 'StringContent', 'Style', 'StyleConstants', 'StyleConstants.CharacterConstants', 'StyleConstants.ColorConstants', 'StyleConstants.FontConstants', 'StyleConstants.ParagraphConstants', 'StyleContext', 'StyledDocument', 'StyledEditorKit', 'StyledEditorKit.AlignmentAction', 'StyledEditorKit.BoldAction', 'StyledEditorKit.FontFamilyAction', 'StyledEditorKit.FontSizeAction', 'StyledEditorKit.ForegroundAction',
            'StyledEditorKit.ItalicAction', 'StyledEditorKit.StyledTextAction', 'StyledEditorKit.UnderlineAction', 'TabExpander', 'TabSet', 'TabStop', 'TabableView', 'TableView', 'TextAction', 'Utilities', 'View', 'ViewFactory', 'WrappedPlainView', 'ZoneView'
            ),
        117 => array (
            'BlockView', 'CSS', 'CSS.Attribute', 'FormSubmitEvent', 'FormSubmitEvent.MethodType', 'FormView', 'HTML', 'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag', 'HTMLDocument', 'HTMLDocument.Iterator', 'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory', 'HTMLEditorKit.HTMLTextAction', 'HTMLEditorKit.InsertHTMLTextAction', 'HTMLEditorKit.LinkController', 'HTMLEditorKit.Parser', 'HTMLEditorKit.ParserCallback', 'HTMLFrameHyperlinkEvent', 'HTMLWriter', 'ImageView', 'InlineView', 'ListView', 'MinimalHTMLWriter', 'ObjectView', 'Option', 'StyleSheet', 'StyleSheet.BoxPainter', 'StyleSheet.ListPainter'
            ),
        118 => array (
            'ContentModel', 'DTD', 'DTDConstants', 'DocumentParser', 'ParserDelegator', 'TagElement'
            ),
        119 => array (
            'RTFEditorKit'
            ),
        120 => array (
            'AbstractLayoutCache', 'AbstractLayoutCache.NodeDimensions', 'DefaultMutableTreeNode', 'DefaultTreeCellEditor', 'DefaultTreeCellRenderer', 'DefaultTreeModel', 'DefaultTreeSelectionModel', 'ExpandVetoException', 'FixedHeightLayoutCache', 'MutableTreeNode', 'RowMapper', 'TreeCellEditor', 'TreeCellRenderer', 'TreeModel', 'TreeNode', 'TreePath', 'TreeSelectionModel', 'VariableHeightLayoutCache'
            ),
        121 => array (
            'AbstractUndoableEdit', 'CannotRedoException', 'CannotUndoException', 'CompoundEdit', 'StateEdit', 'StateEditable', 'UndoManager', 'UndoableEdit', 'UndoableEditSupport'
            ),
        122 => array (
            'InvalidTransactionException', 'TransactionRequiredException', 'TransactionRolledbackException'
            ),
        123 => array (
            'XAException', 'XAResource', 'Xid'
            ),
        124 => array (
            'XMLConstants'
            ),
        125 => array (
            'DatatypeConfigurationException', 'DatatypeConstants', 'DatatypeConstants.Field', 'DatatypeFactory', 'Duration', 'XMLGregorianCalendar'
            ),
        126 => array (
            'NamespaceContext', 'QName'
            ),
        127 => array (
            'DocumentBuilder', 'DocumentBuilderFactory', 'FactoryConfigurationError', 'ParserConfigurationException', 'SAXParser', 'SAXParserFactory'
            ),
        128 => array (
            'ErrorListener', 'OutputKeys', 'Result', 'Source', 'SourceLocator', 'Templates', 'Transformer', 'TransformerConfigurationException', 'TransformerException', 'TransformerFactory', 'TransformerFactoryConfigurationError', 'URIResolver'
            ),
        129 => array (
            'DOMResult', 'DOMSource'
            ),
        130 => array (
            'SAXResult', 'SAXSource', 'SAXTransformerFactory', 'TemplatesHandler', 'TransformerHandler'
            ),
        131 => array (
            'StreamResult', 'StreamSource'
            ),
        132 => array (
            'Schema', 'SchemaFactory', 'SchemaFactoryLoader', 'TypeInfoProvider', 'Validator', 'ValidatorHandler'
            ),
        133 => array (
            'XPath', 'XPathConstants', 'XPathException', 'XPathExpression', 'XPathExpressionException', 'XPathFactory', 'XPathFactoryConfigurationException', 'XPathFunction', 'XPathFunctionException', 'XPathFunctionResolver', 'XPathVariableResolver'
            ),
        134 => array (
            'ChannelBinding', 'GSSContext', 'GSSCredential', 'GSSException', 'GSSManager', 'GSSName', 'MessageProp', 'Oid'
            ),
        135 => array (
            'ACTIVITY_COMPLETED', 'ACTIVITY_REQUIRED', 'ARG_IN', 'ARG_INOUT', 'ARG_OUT', 'Any', 'AnyHolder', 'AnySeqHolder', 'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION', 'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE', 'BAD_POLICY_VALUE', 'BAD_QOS', 'BAD_TYPECODE', 'BooleanHolder', 'BooleanSeqHelper', 'BooleanSeqHolder', 'ByteHolder', 'CODESET_INCOMPATIBLE', 'COMM_FAILURE', 'CTX_RESTRICT_SCOPE', 'CharHolder', 'CharSeqHelper', 'CharSeqHolder', 'CompletionStatus', 'CompletionStatusHelper', 'ContextList', 'CurrentHolder', 'CustomMarshal', 'DATA_CONVERSION', 'DefinitionKind', 'DefinitionKindHelper', 'DomainManager', 'DomainManagerOperations', 'DoubleHolder', 'DoubleSeqHelper', 'DoubleSeqHolder', 'Environment', 'ExceptionList', 'FREE_MEM', 'FixedHolder', 'FloatHolder', 'FloatSeqHelper', 'FloatSeqHolder', 'IDLType', 'IDLTypeHelper', 'IDLTypeOperations', 'IMP_LIMIT', 'INITIALIZE', 'INTERNAL', 'INTF_REPOS', 'INVALID_ACTIVITY', 'INVALID_TRANSACTION', 'INV_FLAG', 'INV_IDENT', 'INV_OBJREF', 'INV_POLICY', 'IRObject',
            'IRObjectOperations', 'IdentifierHelper', 'IntHolder', 'LocalObject', 'LongHolder', 'LongLongSeqHelper', 'LongLongSeqHolder', 'LongSeqHelper', 'LongSeqHolder', 'MARSHAL', 'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION', 'NO_RESOURCES', 'NO_RESPONSE', 'NVList', 'NamedValue', 'OBJECT_NOT_EXIST', 'OBJ_ADAPTER', 'OMGVMCID', 'ObjectHelper', 'ObjectHolder', 'OctetSeqHelper', 'OctetSeqHolder', 'PERSIST_STORE', 'PRIVATE_MEMBER', 'PUBLIC_MEMBER', 'ParameterMode', 'ParameterModeHelper', 'ParameterModeHolder', 'PolicyError', 'PolicyErrorCodeHelper', 'PolicyErrorHelper', 'PolicyErrorHolder', 'PolicyHelper', 'PolicyHolder', 'PolicyListHelper', 'PolicyListHolder', 'PolicyOperations', 'PolicyTypeHelper', 'PrincipalHolder', 'REBIND', 'RepositoryIdHelper', 'Request', 'ServerRequest', 'ServiceDetail', 'ServiceDetailHelper', 'ServiceInformation', 'ServiceInformationHelper', 'ServiceInformationHolder', 'SetOverrideType', 'SetOverrideTypeHelper', 'ShortHolder', 'ShortSeqHelper', 'ShortSeqHolder', 'StringHolder',
            'StringSeqHelper', 'StringSeqHolder', 'StringValueHelper', 'StructMember', 'StructMemberHelper', 'SystemException', 'TCKind', 'TIMEOUT', 'TRANSACTION_MODE', 'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK', 'TRANSACTION_UNAVAILABLE', 'TRANSIENT', 'TypeCode', 'TypeCodeHolder', 'ULongLongSeqHelper', 'ULongLongSeqHolder', 'ULongSeqHelper', 'ULongSeqHolder', 'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE', 'UShortSeqHelper', 'UShortSeqHolder', 'UnionMember', 'UnionMemberHelper', 'UnknownUserException', 'UnknownUserExceptionHelper', 'UnknownUserExceptionHolder', 'UserException', 'VM_ABSTRACT', 'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE', 'ValueBaseHelper', 'ValueBaseHolder', 'ValueMember', 'ValueMemberHelper', 'VersionSpecHelper', 'VisibilityHelper', 'WCharSeqHelper', 'WCharSeqHolder', 'WStringSeqHelper', 'WStringSeqHolder', 'WStringValueHelper', 'WrongTransaction', 'WrongTransactionHelper', 'WrongTransactionHolder', '_IDLTypeStub', '_PolicyStub'
            ),
        136 => array (
            'Invalid', 'InvalidSeq'
            ),
        137 => array (
            'BadKind'
            ),
        138 => array (
            'ApplicationException', 'BoxedValueHelper', 'CustomValue', 'IDLEntity', 'IndirectionException', 'InvokeHandler', 'RemarshalException', 'ResponseHandler', 'ServantObject', 'Streamable', 'StreamableValue', 'UnknownException', 'ValueBase', 'ValueFactory', 'ValueInputStream', 'ValueOutputStream'
            ),
        139 => array (
            'BindingHelper', 'BindingHolder', 'BindingIterator', 'BindingIteratorHelper', 'BindingIteratorHolder', 'BindingIteratorOperations', 'BindingIteratorPOA', 'BindingListHelper', 'BindingListHolder', 'BindingType', 'BindingTypeHelper', 'BindingTypeHolder', 'IstringHelper', 'NameComponent', 'NameComponentHelper', 'NameComponentHolder', 'NameHelper', 'NameHolder', 'NamingContext', 'NamingContextExt', 'NamingContextExtHelper', 'NamingContextExtHolder', 'NamingContextExtOperations', 'NamingContextExtPOA', 'NamingContextHelper', 'NamingContextHolder', 'NamingContextOperations', 'NamingContextPOA', '_BindingIteratorImplBase', '_BindingIteratorStub', '_NamingContextExtStub', '_NamingContextImplBase', '_NamingContextStub'
            ),
        140 => array (
            'AddressHelper', 'InvalidAddress', 'InvalidAddressHelper', 'InvalidAddressHolder', 'StringNameHelper', 'URLStringHelper'
            ),
        141 => array (
            'AlreadyBound', 'AlreadyBoundHelper', 'AlreadyBoundHolder', 'CannotProceed', 'CannotProceedHelper', 'CannotProceedHolder', 'InvalidNameHolder', 'NotEmpty', 'NotEmptyHelper', 'NotEmptyHolder', 'NotFound', 'NotFoundHelper', 'NotFoundHolder', 'NotFoundReason', 'NotFoundReasonHelper', 'NotFoundReasonHolder'
            ),
        142 => array (
            'Parameter'
            ),
        143 => array (
            'DynAnyFactory', 'DynAnyFactoryHelper', 'DynAnyFactoryOperations', 'DynAnyHelper', 'DynAnyOperations', 'DynAnySeqHelper', 'DynArrayHelper', 'DynArrayOperations', 'DynEnumHelper', 'DynEnumOperations', 'DynFixedHelper', 'DynFixedOperations', 'DynSequenceHelper', 'DynSequenceOperations', 'DynStructHelper', 'DynStructOperations', 'DynUnionHelper', 'DynUnionOperations', 'DynValueBox', 'DynValueBoxOperations', 'DynValueCommon', 'DynValueCommonOperations', 'DynValueHelper', 'DynValueOperations', 'NameDynAnyPair', 'NameDynAnyPairHelper', 'NameDynAnyPairSeqHelper', 'NameValuePairSeqHelper', '_DynAnyFactoryStub', '_DynAnyStub', '_DynArrayStub', '_DynEnumStub', '_DynFixedStub', '_DynSequenceStub', '_DynStructStub', '_DynUnionStub', '_DynValueStub'
            ),
        144 => array (
            'InconsistentTypeCodeHelper'
            ),
        145 => array (
            'InvalidValueHelper'
            ),
        146 => array (
            'CodeSets', 'Codec', 'CodecFactory', 'CodecFactoryHelper', 'CodecFactoryOperations', 'CodecOperations', 'ComponentIdHelper', 'ENCODING_CDR_ENCAPS', 'Encoding', 'ExceptionDetailMessage', 'IOR', 'IORHelper', 'IORHolder', 'MultipleComponentProfileHelper', 'MultipleComponentProfileHolder', 'ProfileIdHelper', 'RMICustomMaxStreamFormat', 'ServiceContext', 'ServiceContextHelper', 'ServiceContextHolder', 'ServiceContextListHelper', 'ServiceContextListHolder', 'ServiceIdHelper', 'TAG_ALTERNATE_IIOP_ADDRESS', 'TAG_CODE_SETS', 'TAG_INTERNET_IOP', 'TAG_JAVA_CODEBASE', 'TAG_MULTIPLE_COMPONENTS', 'TAG_ORB_TYPE', 'TAG_POLICIES', 'TAG_RMI_CUSTOM_MAX_STREAM_FORMAT', 'TaggedComponent', 'TaggedComponentHelper', 'TaggedComponentHolder', 'TaggedProfile', 'TaggedProfileHelper', 'TaggedProfileHolder', 'TransactionService'
            ),
        147 => array (
            'UnknownEncoding', 'UnknownEncodingHelper'
            ),
        148 => array (
            'FormatMismatch', 'FormatMismatchHelper', 'InvalidTypeForEncoding', 'InvalidTypeForEncodingHelper'
            ),
        149 => array (
            'SYNC_WITH_TRANSPORT', 'SyncScopeHelper'
            ),
        150 => array (
            'ACTIVE', 'AdapterManagerIdHelper', 'AdapterNameHelper', 'AdapterStateHelper', 'ClientRequestInfo', 'ClientRequestInfoOperations', 'ClientRequestInterceptor', 'ClientRequestInterceptorOperations', 'DISCARDING', 'HOLDING', 'INACTIVE', 'IORInfo', 'IORInfoOperations', 'IORInterceptor', 'IORInterceptorOperations', 'IORInterceptor_3_0', 'IORInterceptor_3_0Helper', 'IORInterceptor_3_0Holder', 'IORInterceptor_3_0Operations', 'Interceptor', 'InterceptorOperations', 'InvalidSlot', 'InvalidSlotHelper', 'LOCATION_FORWARD', 'NON_EXISTENT', 'ORBIdHelper', 'ORBInitInfo', 'ORBInitInfoOperations', 'ORBInitializer', 'ORBInitializerOperations', 'ObjectReferenceFactory', 'ObjectReferenceFactoryHelper', 'ObjectReferenceFactoryHolder', 'ObjectReferenceTemplate', 'ObjectReferenceTemplateHelper', 'ObjectReferenceTemplateHolder', 'ObjectReferenceTemplateSeqHelper', 'ObjectReferenceTemplateSeqHolder', 'PolicyFactory', 'PolicyFactoryOperations', 'RequestInfo', 'RequestInfoOperations', 'SUCCESSFUL', 'SYSTEM_EXCEPTION',
            'ServerIdHelper', 'ServerRequestInfo', 'ServerRequestInfoOperations', 'ServerRequestInterceptor', 'ServerRequestInterceptorOperations', 'TRANSPORT_RETRY', 'USER_EXCEPTION'
            ),
        151 => array (
            'DuplicateName', 'DuplicateNameHelper'
            ),
        152 => array (
            'AdapterActivator', 'AdapterActivatorOperations', 'ID_ASSIGNMENT_POLICY_ID', 'ID_UNIQUENESS_POLICY_ID', 'IMPLICIT_ACTIVATION_POLICY_ID', 'IdAssignmentPolicy', 'IdAssignmentPolicyOperations', 'IdAssignmentPolicyValue', 'IdUniquenessPolicy', 'IdUniquenessPolicyOperations', 'IdUniquenessPolicyValue', 'ImplicitActivationPolicy', 'ImplicitActivationPolicyOperations', 'ImplicitActivationPolicyValue', 'LIFESPAN_POLICY_ID', 'LifespanPolicy', 'LifespanPolicyOperations', 'LifespanPolicyValue', 'POA', 'POAHelper', 'POAManager', 'POAManagerOperations', 'POAOperations', 'REQUEST_PROCESSING_POLICY_ID', 'RequestProcessingPolicy', 'RequestProcessingPolicyOperations', 'RequestProcessingPolicyValue', 'SERVANT_RETENTION_POLICY_ID', 'Servant', 'ServantActivator', 'ServantActivatorHelper', 'ServantActivatorOperations', 'ServantActivatorPOA', 'ServantLocator', 'ServantLocatorHelper', 'ServantLocatorOperations', 'ServantLocatorPOA', 'ServantManager', 'ServantManagerOperations', 'ServantRetentionPolicy',
            'ServantRetentionPolicyOperations', 'ServantRetentionPolicyValue', 'THREAD_POLICY_ID', 'ThreadPolicy', 'ThreadPolicyOperations', 'ThreadPolicyValue', '_ServantActivatorStub', '_ServantLocatorStub'
            ),
        153 => array (
            'NoContext', 'NoContextHelper'
            ),
        154 => array (
            'AdapterInactive', 'AdapterInactiveHelper', 'State'
            ),
        155 => array (
            'AdapterAlreadyExists', 'AdapterAlreadyExistsHelper', 'AdapterNonExistent', 'AdapterNonExistentHelper', 'InvalidPolicy', 'InvalidPolicyHelper', 'NoServant', 'NoServantHelper', 'ObjectAlreadyActive', 'ObjectAlreadyActiveHelper', 'ObjectNotActive', 'ObjectNotActiveHelper', 'ServantAlreadyActive', 'ServantAlreadyActiveHelper', 'ServantNotActive', 'ServantNotActiveHelper', 'WrongAdapter', 'WrongAdapterHelper', 'WrongPolicy', 'WrongPolicyHelper'
            ),
        156 => array (
            'CookieHolder'
            ),
        157 => array (
            'RunTime', 'RunTimeOperations'
            ),
        158 => array (
            '_Remote_Stub'
            ),
        159 => array (
            'Attr', 'CDATASection', 'CharacterData', 'Comment', 'DOMConfiguration', 'DOMError', 'DOMErrorHandler', 'DOMException', 'DOMImplementation', 'DOMImplementationList', 'DOMImplementationSource', 'DOMStringList', 'DocumentFragment', 'DocumentType', 'EntityReference', 'NameList', 'NamedNodeMap', 'Node', 'NodeList', 'Notation', 'ProcessingInstruction', 'Text', 'TypeInfo', 'UserDataHandler'
            ),
        160 => array (
            'DOMImplementationRegistry'
            ),
        161 => array (
            'EventException', 'EventTarget', 'MutationEvent', 'UIEvent'
            ),
        162 => array (
            'DOMImplementationLS', 'LSException', 'LSInput', 'LSLoadEvent', 'LSOutput', 'LSParser', 'LSParserFilter', 'LSProgressEvent', 'LSResourceResolver', 'LSSerializer', 'LSSerializerFilter'
            ),
        163 => array (
            'DTDHandler', 'DocumentHandler', 'EntityResolver', 'ErrorHandler', 'HandlerBase', 'InputSource', 'Locator', 'SAXException', 'SAXNotRecognizedException', 'SAXNotSupportedException', 'SAXParseException', 'XMLFilter', 'XMLReader'
            ),
        164 => array (
            'Attributes2', 'Attributes2Impl', 'DeclHandler', 'DefaultHandler2', 'EntityResolver2', 'LexicalHandler', 'Locator2', 'Locator2Impl'
            ),
        165 => array (
            'AttributeListImpl', 'AttributesImpl', 'DefaultHandler', 'LocatorImpl', 'NamespaceSupport', 'ParserAdapter', 'ParserFactory', 'XMLFilterImpl', 'XMLReaderAdapter', 'XMLReaderFactory'
            ),
        /* ambiguous class names (appear in more than one package) */
        166 => array (
            'Annotation', 'AnySeqHelper', 'Array', 'Attribute', 'AttributeList', 'AttributeSet', 'Attributes', 'AuthenticationException', 'Binding', 'Bounds', 'Certificate', 'CertificateEncodingException', 'CertificateException', 'CertificateExpiredException', 'CertificateNotYetValidException', 'CertificateParsingException', 'ConnectException', 'ContentHandler', 'Context', 'Control', 'Current', 'CurrentHelper', 'CurrentOperations', 'DOMLocator', 'DataInputStream', 'DataOutputStream', 'Date', 'DefaultLoaderRepository', 'Delegate', 'Document', 'DocumentEvent', 'DynAny', 'DynArray', 'DynEnum', 'DynFixed', 'DynSequence', 'DynStruct', 'DynUnion', 'DynValue', 'DynamicImplementation', 'Element', 'Entity', 'Event', 'EventListener', 'FieldNameHelper', 'FileFilter', 'Formatter', 'ForwardRequest', 'ForwardRequestHelper', 'InconsistentTypeCode', 'InputStream', 'IntrospectionException', 'InvalidAttributeValueException', 'InvalidKeyException', 'InvalidName', 'InvalidNameHelper', 'InvalidValue', 'List', 'MouseEvent',
            'NameValuePair', 'NameValuePairHelper', 'ORB', 'Object', 'ObjectIdHelper', 'ObjectImpl', 'OpenType', 'OutputStream', 'ParagraphView', 'Parser', 'Permission', 'Policy', 'Principal', 'Proxy', 'Reference', 'Statement', 'Timer', 'Timestamp', 'TypeMismatch', 'TypeMismatchHelper', 'UNKNOWN', 'UnknownHostException', 'X509Certificate'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        /* all Java keywords are case sensitive */
        1 => true, 2 => true, 3 => true, 4 => true,
        5 => true, 6 => true, 7 => true, 8 => true, 9 => true,
        10 => true, 11 => true, 12 => true, 13 => true, 14 => true,
        15 => true, 16 => true, 17 => true, 18 => true, 19 => true,
        20 => true, 21 => true, 22 => true, 23 => true, 24 => true,
        25 => true, 26 => true, 27 => true, 28 => true, 29 => true,
        30 => true, 31 => true, 32 => true, 33 => true, 34 => true,
        35 => true, 36 => true, 37 => true, 38 => true, 39 => true,
        40 => true, 41 => true, 42 => true, 43 => true, 44 => true,
        45 => true, 46 => true, 47 => true, 48 => true, 49 => true,
        50 => true, 51 => true, 52 => true, 53 => true, 54 => true,
        55 => true, 56 => true, 57 => true, 58 => true, 59 => true,
        60 => true, 61 => true, 62 => true, 63 => true, 64 => true,
        65 => true, 66 => true, 67 => true, 68 => true, 69 => true,
        70 => true, 71 => true, 72 => true, 73 => true, 74 => true,
        75 => true, 76 => true, 77 => true, 78 => true, 79 => true,
        80 => true, 81 => true, 82 => true, 83 => true, 84 => true,
        85 => true, 86 => true, 87 => true, 88 => true, 89 => true,
        90 => true, 91 => true, 92 => true, 93 => true, 94 => true,
        95 => true, 96 => true, 97 => true, 98 => true, 99 => true,
        100 => true, 101 => true, 102 => true, 103 => true, 104 => true,
        105 => true, 106 => true, 107 => true, 108 => true, 109 => true,
        110 => true, 111 => true, 112 => true, 113 => true, 114 => true,
        115 => true, 116 => true, 117 => true, 118 => true, 119 => true,
        120 => true, 121 => true, 122 => true, 123 => true, 124 => true,
        125 => true, 126 => true, 127 => true, 128 => true, 129 => true,
        130 => true, 131 => true, 132 => true, 133 => true, 134 => true,
        135 => true, 136 => true, 137 => true, 138 => true, 139 => true,
        140 => true, 141 => true, 142 => true, 143 => true, 144 => true,
        145 => true, 146 => true, 147 => true, 148 => true, 149 => true,
        150 => true, 151 => true, 152 => true, 153 => true, 154 => true,
        155 => true, 156 => true, 157 => true, 158 => true, 159 => true,
        160 => true, 161 => true, 162 => true, 163 => true, 164 => true,
        165 => true, 166 => true
    ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000;  font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #006600; font-weight: bold;',
            4 => 'color: #006600; font-weight: bold;',
            5 => 'color: #003399; font-weight: bold;',
            6 => 'color: #003399; font-weight: bold;',
            7 => 'color: #003399; font-weight: bold;',
            8 => 'color: #003399; font-weight: bold;',
            9 => 'color: #003399; font-weight: bold;',
            10 => 'color: #003399; font-weight: bold;',
            11 => 'color: #003399; font-weight: bold;',
            12 => 'color: #003399; font-weight: bold;',
            13 => 'color: #003399; font-weight: bold;',
            14 => 'color: #003399; font-weight: bold;',
            15 => 'color: #003399; font-weight: bold;',
            16 => 'color: #003399; font-weight: bold;',
            17 => 'color: #003399; font-weight: bold;',
            18 => 'color: #003399; font-weight: bold;',
            19 => 'color: #003399; font-weight: bold;',
            20 => 'color: #003399; font-weight: bold;',
            21 => 'color: #003399; font-weight: bold;',
            22 => 'color: #003399; font-weight: bold;',
            23 => 'color: #003399; font-weight: bold;',
            24 => 'color: #003399; font-weight: bold;',
            25 => 'color: #003399; font-weight: bold;',
            26 => 'color: #003399; font-weight: bold;',
            27 => 'color: #003399; font-weight: bold;',
            28 => 'color: #003399; font-weight: bold;',
            29 => 'color: #003399; font-weight: bold;',
            30 => 'color: #003399; font-weight: bold;',
            31 => 'color: #003399; font-weight: bold;',
            32 => 'color: #003399; font-weight: bold;',
            33 => 'color: #003399; font-weight: bold;',
            34 => 'color: #003399; font-weight: bold;',
            35 => 'color: #003399; font-weight: bold;',
            36 => 'color: #003399; font-weight: bold;',
            37 => 'color: #003399; font-weight: bold;',
            38 => 'color: #003399; font-weight: bold;',
            39 => 'color: #003399; font-weight: bold;',
            40 => 'color: #003399; font-weight: bold;',
            41 => 'color: #003399; font-weight: bold;',
            42 => 'color: #003399; font-weight: bold;',
            43 => 'color: #003399; font-weight: bold;',
            44 => 'color: #003399; font-weight: bold;',
            45 => 'color: #003399; font-weight: bold;',
            46 => 'color: #003399; font-weight: bold;',
            47 => 'color: #003399; font-weight: bold;',
            48 => 'color: #003399; font-weight: bold;',
            49 => 'color: #003399; font-weight: bold;',
            50 => 'color: #003399; font-weight: bold;',
            51 => 'color: #003399; font-weight: bold;',
            52 => 'color: #003399; font-weight: bold;',
            53 => 'color: #003399; font-weight: bold;',
            54 => 'color: #003399; font-weight: bold;',
            55 => 'color: #003399; font-weight: bold;',
            56 => 'color: #003399; font-weight: bold;',
            57 => 'color: #003399; font-weight: bold;',
            58 => 'color: #003399; font-weight: bold;',
            59 => 'color: #003399; font-weight: bold;',
            60 => 'color: #003399; font-weight: bold;',
            61 => 'color: #003399; font-weight: bold;',
            62 => 'color: #003399; font-weight: bold;',
            63 => 'color: #003399; font-weight: bold;',
            64 => 'color: #003399; font-weight: bold;',
            65 => 'color: #003399; font-weight: bold;',
            66 => 'color: #003399; font-weight: bold;',
            67 => 'color: #003399; font-weight: bold;',
            68 => 'color: #003399; font-weight: bold;',
            69 => 'color: #003399; font-weight: bold;',
            70 => 'color: #003399; font-weight: bold;',
            71 => 'color: #003399; font-weight: bold;',
            72 => 'color: #003399; font-weight: bold;',
            73 => 'color: #003399; font-weight: bold;',
            74 => 'color: #003399; font-weight: bold;',
            75 => 'color: #003399; font-weight: bold;',
            76 => 'color: #003399; font-weight: bold;',
            77 => 'color: #003399; font-weight: bold;',
            78 => 'color: #003399; font-weight: bold;',
            79 => 'color: #003399; font-weight: bold;',
            80 => 'color: #003399; font-weight: bold;',
            81 => 'color: #003399; font-weight: bold;',
            82 => 'color: #003399; font-weight: bold;',
            83 => 'color: #003399; font-weight: bold;',
            84 => 'color: #003399; font-weight: bold;',
            85 => 'color: #003399; font-weight: bold;',
            86 => 'color: #003399; font-weight: bold;',
            87 => 'color: #003399; font-weight: bold;',
            88 => 'color: #003399; font-weight: bold;',
            89 => 'color: #003399; font-weight: bold;',
            90 => 'color: #003399; font-weight: bold;',
            91 => 'color: #003399; font-weight: bold;',
            92 => 'color: #003399; font-weight: bold;',
            93 => 'color: #003399; font-weight: bold;',
            94 => 'color: #003399; font-weight: bold;',
            95 => 'color: #003399; font-weight: bold;',
            96 => 'color: #003399; font-weight: bold;',
            97 => 'color: #003399; font-weight: bold;',
            98 => 'color: #003399; font-weight: bold;',
            99 => 'color: #003399; font-weight: bold;',
            100 => 'color: #003399; font-weight: bold;',
            101 => 'color: #003399; font-weight: bold;',
            102 => 'color: #003399; font-weight: bold;',
            103 => 'color: #003399; font-weight: bold;',
            104 => 'color: #003399; font-weight: bold;',
            105 => 'color: #003399; font-weight: bold;',
            106 => 'color: #003399; font-weight: bold;',
            107 => 'color: #003399; font-weight: bold;',
            108 => 'color: #003399; font-weight: bold;',
            109 => 'color: #003399; font-weight: bold;',
            110 => 'color: #003399; font-weight: bold;',
            111 => 'color: #003399; font-weight: bold;',
            112 => 'color: #003399; font-weight: bold;',
            113 => 'color: #003399; font-weight: bold;',
            114 => 'color: #003399; font-weight: bold;',
            115 => 'color: #003399; font-weight: bold;',
            116 => 'color: #003399; font-weight: bold;',
            117 => 'color: #003399; font-weight: bold;',
            118 => 'color: #003399; font-weight: bold;',
            119 => 'color: #003399; font-weight: bold;',
            120 => 'color: #003399; font-weight: bold;',
            121 => 'color: #003399; font-weight: bold;',
            122 => 'color: #003399; font-weight: bold;',
            123 => 'color: #003399; font-weight: bold;',
            124 => 'color: #003399; font-weight: bold;',
            125 => 'color: #003399; font-weight: bold;',
            126 => 'color: #003399; font-weight: bold;',
            127 => 'color: #003399; font-weight: bold;',
            128 => 'color: #003399; font-weight: bold;',
            129 => 'color: #003399; font-weight: bold;',
            130 => 'color: #003399; font-weight: bold;',
            131 => 'color: #003399; font-weight: bold;',
            132 => 'color: #003399; font-weight: bold;',
            133 => 'color: #003399; font-weight: bold;',
            134 => 'color: #003399; font-weight: bold;',
            135 => 'color: #003399; font-weight: bold;',
            136 => 'color: #003399; font-weight: bold;',
            137 => 'color: #003399; font-weight: bold;',
            138 => 'color: #003399; font-weight: bold;',
            139 => 'color: #003399; font-weight: bold;',
            140 => 'color: #003399; font-weight: bold;',
            141 => 'color: #003399; font-weight: bold;',
            142 => 'color: #003399; font-weight: bold;',
            143 => 'color: #003399; font-weight: bold;',
            144 => 'color: #003399; font-weight: bold;',
            145 => 'color: #003399; font-weight: bold;',
            146 => 'color: #003399; font-weight: bold;',
            147 => 'color: #003399; font-weight: bold;',
            148 => 'color: #003399; font-weight: bold;',
            149 => 'color: #003399; font-weight: bold;',
            150 => 'color: #003399; font-weight: bold;',
            151 => 'color: #003399; font-weight: bold;',
            152 => 'color: #003399; font-weight: bold;',
            153 => 'color: #003399; font-weight: bold;',
            154 => 'color: #003399; font-weight: bold;',
            155 => 'color: #003399; font-weight: bold;',
            156 => 'color: #003399; font-weight: bold;',
            157 => 'color: #003399; font-weight: bold;',
            158 => 'color: #003399; font-weight: bold;',
            159 => 'color: #003399; font-weight: bold;',
            160 => 'color: #003399; font-weight: bold;',
            161 => 'color: #003399; font-weight: bold;',
            162 => 'color: #003399; font-weight: bold;',
            163 => 'color: #003399; font-weight: bold;',
            164 => 'color: #003399; font-weight: bold;',
            165 => 'color: #003399; font-weight: bold;',
            166 => 'color: #003399; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #006699;',
            3 => 'color: #008000; font-style: italic; font-weight: bold;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006633;',
            2 => 'color: #006633;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => 'http://docs.oracle.com/javase/7/docs/api/java/applet/{FNAME}.html',
        6 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/{FNAME}.html',
        7 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/color/{FNAME}.html',
        8 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/datatransfer/{FNAME}.html',
        9 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/dnd/{FNAME}.html',
        10 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/event/{FNAME}.html',
        11 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/font/{FNAME}.html',
        12 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/geom/{FNAME}.html',
        13 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/im/{FNAME}.html',
        14 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/im/spi/{FNAME}.html',
        15 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/image/{FNAME}.html',
        16 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/image/renderable/{FNAME}.html',
        17 => 'http://docs.oracle.com/javase/7/docs/api/java/awt/print/{FNAME}.html',
        18 => 'http://docs.oracle.com/javase/7/docs/api/java/beans/{FNAME}.html',
        19 => 'http://docs.oracle.com/javase/7/docs/api/java/beans/beancontext/{FNAME}.html',
        20 => 'http://docs.oracle.com/javase/7/docs/api/java/io/{FNAME}.html',
        21 => 'http://docs.oracle.com/javase/7/docs/api/java/lang/{FNAME}.html',
        22 => 'http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/{FNAME}.html',
        23 => 'http://docs.oracle.com/javase/7/docs/api/java/lang/instrument/{FNAME}.html',
        24 => 'http://docs.oracle.com/javase/7/docs/api/java/lang/management/{FNAME}.html',
        25 => 'http://docs.oracle.com/javase/7/docs/api/java/lang/ref/{FNAME}.html',
        26 => 'http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/{FNAME}.html',
        27 => 'http://docs.oracle.com/javase/7/docs/api/java/math/{FNAME}.html',
        28 => 'http://docs.oracle.com/javase/7/docs/api/java/net/{FNAME}.html',
        29 => 'http://docs.oracle.com/javase/7/docs/api/java/nio/{FNAME}.html',
        30 => 'http://docs.oracle.com/javase/7/docs/api/java/nio/channels/{FNAME}.html',
        31 => 'http://docs.oracle.com/javase/7/docs/api/java/nio/channels/spi/{FNAME}.html',
        32 => 'http://docs.oracle.com/javase/7/docs/api/java/nio/charset/{FNAME}.html',
        33 => 'http://docs.oracle.com/javase/7/docs/api/java/nio/charset/spi/{FNAME}.html',
        34 => 'http://docs.oracle.com/javase/7/docs/api/java/rmi/{FNAME}.html',
        35 => 'http://docs.oracle.com/javase/7/docs/api/java/rmi/activation/{FNAME}.html',
        36 => 'http://docs.oracle.com/javase/7/docs/api/java/rmi/dgc/{FNAME}.html',
        37 => 'http://docs.oracle.com/javase/7/docs/api/java/rmi/registry/{FNAME}.html',
        38 => 'http://docs.oracle.com/javase/7/docs/api/java/rmi/server/{FNAME}.html',
        39 => 'http://docs.oracle.com/javase/7/docs/api/java/security/{FNAME}.html',
        40 => 'http://docs.oracle.com/javase/7/docs/api/java/security/acl/{FNAME}.html',
        41 => 'http://docs.oracle.com/javase/7/docs/api/java/security/cert/{FNAME}.html',
        42 => 'http://docs.oracle.com/javase/7/docs/api/java/security/interfaces/{FNAME}.html',
        43 => 'http://docs.oracle.com/javase/7/docs/api/java/security/spec/{FNAME}.html',
        44 => 'http://docs.oracle.com/javase/7/docs/api/java/sql/{FNAME}.html',
        45 => 'http://docs.oracle.com/javase/7/docs/api/java/text/{FNAME}.html',
        46 => 'http://docs.oracle.com/javase/7/docs/api/java/util/{FNAME}.html',
        47 => 'http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/{FNAME}.html',
        48 => 'http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/{FNAME}.html',
        49 => 'http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/{FNAME}.html',
        50 => 'http://docs.oracle.com/javase/7/docs/api/java/util/jar/{FNAME}.html',
        51 => 'http://docs.oracle.com/javase/7/docs/api/java/util/logging/{FNAME}.html',
        52 => 'http://docs.oracle.com/javase/7/docs/api/java/util/prefs/{FNAME}.html',
        53 => 'http://docs.oracle.com/javase/7/docs/api/java/util/regex/{FNAME}.html',
        54 => 'http://docs.oracle.com/javase/7/docs/api/java/util/zip/{FNAME}.html',
        55 => 'http://docs.oracle.com/javase/7/docs/api/javax/accessibility/{FNAME}.html',
        56 => 'http://docs.oracle.com/javase/7/docs/api/javax/activity/{FNAME}.html',
        57 => 'http://docs.oracle.com/javase/7/docs/api/javax/crypto/{FNAME}.html',
        58 => 'http://docs.oracle.com/javase/7/docs/api/javax/crypto/interfaces/{FNAME}.html',
        59 => 'http://docs.oracle.com/javase/7/docs/api/javax/crypto/spec/{FNAME}.html',
        60 => 'http://docs.oracle.com/javase/7/docs/api/javax/imageio/{FNAME}.html',
        61 => 'http://docs.oracle.com/javase/7/docs/api/javax/imageio/event/{FNAME}.html',
        62 => 'http://docs.oracle.com/javase/7/docs/api/javax/imageio/metadata/{FNAME}.html',
        63 => 'http://docs.oracle.com/javase/7/docs/api/javax/imageio/plugins/bmp/{FNAME}.html',
        64 => 'http://docs.oracle.com/javase/7/docs/api/javax/imageio/plugins/jpeg/{FNAME}.html',
        65 => 'http://docs.oracle.com/javase/7/docs/api/javax/imageio/spi/{FNAME}.html',
        66 => 'http://docs.oracle.com/javase/7/docs/api/javax/imageio/stream/{FNAME}.html',
        67 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/{FNAME}.html',
        68 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/loading/{FNAME}.html',
        69 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/modelmbean/{FNAME}.html',
        70 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/monitor/{FNAME}.html',
        71 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/openmbean/{FNAME}.html',
        72 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/relation/{FNAME}.html',
        73 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/remote/{FNAME}.html',
        74 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/remote/rmi/{FNAME}.html',
        75 => 'http://docs.oracle.com/javase/7/docs/api/javax/management/timer/{FNAME}.html',
        76 => 'http://docs.oracle.com/javase/7/docs/api/javax/naming/{FNAME}.html',
        77 => 'http://docs.oracle.com/javase/7/docs/api/javax/naming/directory/{FNAME}.html',
        78 => 'http://docs.oracle.com/javase/7/docs/api/javax/naming/event/{FNAME}.html',
        79 => 'http://docs.oracle.com/javase/7/docs/api/javax/naming/ldap/{FNAME}.html',
        80 => 'http://docs.oracle.com/javase/7/docs/api/javax/naming/spi/{FNAME}.html',
        81 => 'http://docs.oracle.com/javase/7/docs/api/javax/net/{FNAME}.html',
        82 => 'http://docs.oracle.com/javase/7/docs/api/javax/net/ssl/{FNAME}.html',
        83 => 'http://docs.oracle.com/javase/7/docs/api/javax/print/{FNAME}.html',
        84 => 'http://docs.oracle.com/javase/7/docs/api/javax/print/attribute/{FNAME}.html',
        85 => 'http://docs.oracle.com/javase/7/docs/api/javax/print/attribute/standard/{FNAME}.html',
        86 => 'http://docs.oracle.com/javase/7/docs/api/javax/print/event/{FNAME}.html',
        87 => 'http://docs.oracle.com/javase/7/docs/api/javax/rmi/{FNAME}.html',
        88 => 'http://docs.oracle.com/javase/7/docs/api/javax/rmi/CORBA/{FNAME}.html',
        89 => 'http://docs.oracle.com/javase/7/docs/api/javax/rmi/ssl/{FNAME}.html',
        90 => 'http://docs.oracle.com/javase/7/docs/api/javax/security/auth/{FNAME}.html',
        91 => 'http://docs.oracle.com/javase/7/docs/api/javax/security/auth/callback/{FNAME}.html',
        92 => 'http://docs.oracle.com/javase/7/docs/api/javax/security/auth/kerberos/{FNAME}.html',
        93 => 'http://docs.oracle.com/javase/7/docs/api/javax/security/auth/login/{FNAME}.html',
        94 => 'http://docs.oracle.com/javase/7/docs/api/javax/security/auth/spi/{FNAME}.html',
        95 => 'http://docs.oracle.com/javase/7/docs/api/javax/security/auth/x500/{FNAME}.html',
        96 => 'http://docs.oracle.com/javase/7/docs/api/javax/security/sasl/{FNAME}.html',
        97 => 'http://docs.oracle.com/javase/7/docs/api/javax/sound/midi/{FNAME}.html',
        98 => 'http://docs.oracle.com/javase/7/docs/api/javax/sound/midi/spi/{FNAME}.html',
        99 => 'http://docs.oracle.com/javase/7/docs/api/javax/sound/sampled/{FNAME}.html',
        100 => 'http://docs.oracle.com/javase/7/docs/api/javax/sound/sampled/spi/{FNAME}.html',
        101 => 'http://docs.oracle.com/javase/7/docs/api/javax/sql/{FNAME}.html',
        102 => 'http://docs.oracle.com/javase/7/docs/api/javax/sql/rowset/{FNAME}.html',
        103 => 'http://docs.oracle.com/javase/7/docs/api/javax/sql/rowset/serial/{FNAME}.html',
        104 => 'http://docs.oracle.com/javase/7/docs/api/javax/sql/rowset/spi/{FNAME}.html',
        105 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/{FNAME}.html',
        106 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/border/{FNAME}.html',
        107 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/colorchooser/{FNAME}.html',
        108 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/event/{FNAME}.html',
        109 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/filechooser/{FNAME}.html',
        110 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/plaf/{FNAME}.html',
        111 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/plaf/basic/{FNAME}.html',
        112 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/plaf/metal/{FNAME}.html',
        113 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/plaf/multi/{FNAME}.html',
        114 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/plaf/synth/{FNAME}.html',
        115 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/table/{FNAME}.html',
        116 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/text/{FNAME}.html',
        117 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/text/html/{FNAME}.html',
        118 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/text/html/parser/{FNAME}.html',
        119 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/text/rtf/{FNAME}.html',
        120 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/tree/{FNAME}.html',
        121 => 'http://docs.oracle.com/javase/7/docs/api/javax/swing/undo/{FNAME}.html',
        122 => 'http://docs.oracle.com/javase/7/docs/api/javax/transaction/{FNAME}.html',
        123 => 'http://docs.oracle.com/javase/7/docs/api/javax/transaction/xa/{FNAME}.html',
        124 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/{FNAME}.html',
        125 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/datatype/{FNAME}.html',
        126 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/namespace/{FNAME}.html',
        127 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/parsers/{FNAME}.html',
        128 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/transform/{FNAME}.html',
        129 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/transform/dom/{FNAME}.html',
        130 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/transform/sax/{FNAME}.html',
        131 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/transform/stream/{FNAME}.html',
        132 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/validation/{FNAME}.html',
        133 => 'http://docs.oracle.com/javase/7/docs/api/javax/xml/xpath/{FNAME}.html',
        134 => 'http://docs.oracle.com/javase/7/docs/api/org/ietf/jgss/{FNAME}.html',
        135 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/CORBA/{FNAME}.html',
        136 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/CORBA/DynAnyPackage/{FNAME}.html',
        137 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/CORBA/TypeCodePackage/{FNAME}.html',
        138 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/CORBA/portable/{FNAME}.html',
        139 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/CosNaming/{FNAME}.html',
        140 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/CosNaming/NamingContextExtPackage/{FNAME}.html',
        141 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/CosNaming/NamingContextPackage/{FNAME}.html',
        142 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/Dynamic/{FNAME}.html',
        143 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/DynamicAny/{FNAME}.html',
        144 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/DynamicAny/DynAnyFactoryPackage/{FNAME}.html',
        145 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/DynamicAny/DynAnyPackage/{FNAME}.html',
        146 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/IOP/{FNAME}.html',
        147 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/IOP/CodecFactoryPackage/{FNAME}.html',
        148 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/IOP/CodecPackage/{FNAME}.html',
        149 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/Messaging/{FNAME}.html',
        150 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/PortableInterceptor/{FNAME}.html',
        151 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/PortableInterceptor/ORBInitInfoPackage/{FNAME}.html',
        152 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/PortableServer/{FNAME}.html',
        153 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/PortableServer/CurrentPackage/{FNAME}.html',
        154 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/PortableServer/POAManagerPackage/{FNAME}.html',
        155 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/PortableServer/POAPackage/{FNAME}.html',
        156 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/PortableServer/ServantLocatorPackage/{FNAME}.html',
        157 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/SendingContext/{FNAME}.html',
        158 => 'http://docs.oracle.com/javase/7/docs/api/org/omg/stub/java/rmi/{FNAME}.html',
        159 => 'http://docs.oracle.com/javase/7/docs/api/org/w3c/dom/{FNAME}.html',
        160 => 'http://docs.oracle.com/javase/7/docs/api/org/w3c/dom/bootstrap/{FNAME}.html',
        161 => 'http://docs.oracle.com/javase/7/docs/api/org/w3c/dom/events/{FNAME}.html',
        162 => 'http://docs.oracle.com/javase/7/docs/api/org/w3c/dom/ls/{FNAME}.html',
        163 => 'http://docs.oracle.com/javase/7/docs/api/org/xml/sax/{FNAME}.html',
        164 => 'http://docs.oracle.com/javase/7/docs/api/org/xml/sax/ext/{FNAME}.html',
        165 => 'http://docs.oracle.com/javase/7/docs/api/org/xml/sax/helpers/{FNAME}.html',
        /* ambiguous class names (appear in more than one package) */
        166 => 'http://www.google.com/search?sitesearch=docs.oracle.com&q=allinurl%3Ajavase+docs+api+{FNAME}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        /* Java does not use '::' */
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => '(?|^&"\'])',
            'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-;"\'])'
            )
        )
);

?>
geshi/geshi/mpasm.php0000664000175000017500000001374112014173447014025 0ustar  benbebenbe 'Microchip Assembler',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /*Directive Language*/
        4 => array(
            'CONSTANT', '#DEFINE', 'END', 'EQU', 'ERROR', 'ERROR-LEVEL', '#INCLUDE', 'LIST',
            'MESSG', 'NOLIST', 'ORG', 'PAGE', 'PROCESSOR', 'RADIX', 'SET', 'SPACE', 'SUBTITLE',
            'TITLE', '#UNDEFINE', 'VARIABLE', 'ELSE', 'ENDIF', 'ENDW', 'IF', 'IFDEF', 'IFNDEF',
            'WHILE', '__BADRAM', 'CBLOCK', '__CONFIG', 'DA', 'DATA', 'DB', 'DE', 'DT', 'DW',
            'ENDC', 'FILL', '__IDLOCS', '__MAXRAM', 'RES', 'ENDM', 'EXITM', 'EXPAND', 'LOCAL',
            'MACRO', 'NOEXPAND', 'BANKISEL', 'BANKSEL', 'CODE', 'EXTERN', 'GLOBAL', 'IDATA',
            'PAGESEL', 'UDATA', 'UDATA_ACS', 'UDATA_OVR', 'UDATA_SHR'
            ),
        /* 12&14-bit Specific Instruction Set*/
        1 => array(
            'andlw', 'call', 'clrwdt', 'goto', 'iorlw', 'movlw', 'option', 'retlw', 'sleep',
            'tris', 'xorlw', 'addwf', 'andwf', 'clrf', 'clrw', 'comf', 'decf', 'decfsz', 'incf',
            'incfsz', 'iorwf', 'movf', 'nop', 'rlf', 'rrf', 'subwf', 'swapf', 'xorwf',
            'bcf', 'bsf', 'btfsc', 'btfss',
            'addlw', 'retfie', 'return', 'sublw', 'addcf', 'adddcf', 'b', 'bc', 'bdc',
            'bnc', 'bndc', 'bnz', 'bz', 'clrc', 'clrdc', 'clrz', 'lcall', 'lgoto', 'movfw',
            'negf', 'setc', 'setdc', 'setz', 'skpc', 'skpdc', 'skpnc', 'skpndc', 'skpnz', 'skpz',
            'subcf', 'subdcf', 'tstf'
            ),
        /* 16-bit Specific Instructiob Set */
        2 => array (
            'movfp', 'movlb', 'movlp', 'movpf', 'movwf', 'tablrd', 'tablwt', 'tlrd', 'tlwt',
            'addwfc', 'daw', 'mullw', 'negw', 'rlcf', 'rlncf', 'rrcf', 'rrncf', 'setf', 'subwfb',
            'btg', 'cpfseq', 'cpfsgt', 'cpfslt', 'dcfsnz', 'infsnz', 'tstfsz', 'lfsr', 'bnn',
            'bnov', 'bra', 'pop', 'push', 'rcall', 'reset'
            ),
        /* Registers */
        3 => array(
            'INDF', 'TMR0', 'PCL', 'STATUS', 'FSR', 'PORTA', 'PORTB', 'PORTC', 'PORTD', 'PORTE',
            'PCLATH', 'INTCON', 'PIR1', 'PIR2', 'TMR1L', 'TMR1H', 'T1CON', 'TMR2', 'T2CON', 'TMR2L',
            'TMR2H', 'TMR0H', 'TMR0L', 'SSPBUF', 'SSPCON', 'CCPR1L', 'CCPR1H', 'CCP1CON', 'RCSTA',
            'TXREG', 'RCREG', 'CCPR2L', 'CCPR2H', 'CCP2CON', 'OPTION', 'TRISA', 'TRISB', 'TRISC',
            'TRISD', 'TRISE', 'PIE2', 'PIE1', 'PR2', 'SSPADD', 'SSPSTAT', 'TXSTA', 'SPBRG'
            ),
        /*Operands*/
        5 => array(
            'high','low'
            )
        ),
    'SYMBOLS' => array(
        '[', ']', '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f;',
            2 => 'color: #0000ff;',
            3 => 'color: #007f00;',
            4 => 'color: #46aa03; font-weight:bold;',
            5 => 'color: #7f0000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff0000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            0 => 'color: #ff0000;',
            1 => 'color: #ff0000;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Hex numbers
        0 => '[0-9a-fA-F]{1,32}[hH]',
        //Binary numbers
        1 => '[01]{1,64}[bB]'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/plsql.php0000664000175000017500000003437012014173403014034 0ustar  benbebenbe
 * Copyright: (c) 2006 Victor Engmark (http://l0b0.net/)
 * Release Version: 1.0.8.11
 * Date Started: 2006/10/26
 *
 * Oracle 9.2 PL/SQL language file for GeSHi.
 * Formatting is based on the default setup of TOAD 8.6.
 *
 * CHANGES
 * -------
 * 2006/10/27 (1.0.0)
 *    -    First Release
 *
 * TODO (updated 2006/10/27)
 * -------------------------
 * * Add < and > to brackets
 * * Remove symbols which are also comment delimiters / quote marks?
 *
 *************************************************************************************
 *
 *         This file is part of GeSHi.
 *
 *     GeSHi is free software; you can redistribute it and/or modify
 *     it under the terms of the GNU General Public License as published by
 *     the Free Software Foundation; either version 2 of the License, or
 *     (at your option) any later version.
 *
 *     GeSHi is distributed in the hope that it will be useful,
 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.    See the
 *     GNU General Public License for more details.
 *
 *     You should have received a copy of the GNU General Public License
 *     along with GeSHi; if not, write to the Free Software
 *     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA    02111-1307    USA
 *
 ************************************************************************************/

$language_data = array (
    'LANG_NAME' => 'PL/SQL',
    'COMMENT_SINGLE' => array(1 =>'--'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2930
    'COMMENT_MULTI' => array('/*' => '*/'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2950
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array("'", '"'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        //PL/SQL reserved keywords (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/f_words.htm#LNPLS019)
        1 => array('ZONE', 'YEAR', 'WRITE', 'WORK', 'WITH', 'WHILE', 'WHERE',
        'WHENEVER', 'WHEN', 'VIEW', 'VARCHAR2', 'VARCHAR', 'VALUES',
        'VALIDATE', 'USE', 'UPDATE', 'UNIQUE', 'UNION', 'TYPE', 'TRUE',
        'TRIGGER', 'TO', 'TIMEZONE_REGION', 'TIMEZONE_MINUTE', 'TIMEZONE_HOUR',
        'TIMEZONE_ABBR', 'TIMESTAMP', 'TIME', 'THEN', 'TABLE', 'SYNONYM',
        'SUCCESSFUL', 'SUBTYPE', 'START', 'SQLERRM', 'SQLCODE', 'SQL', 'SPACE',
        'SMALLINT', 'SHARE', 'SET', 'SEPARATE', 'SELECT', 'SECOND',
        'SAVEPOINT', 'ROWTYPE', 'ROWNUM', 'ROWID', 'ROW', 'ROLLBACK',
        'REVERSE', 'RETURN', 'RELEASE', 'RECORD', 'REAL', 'RAW', 'RANGE',
        'RAISE', 'PUBLIC', 'PROCEDURE', 'PRIVATE', 'PRIOR', 'PRAGMA',
        'POSITIVEN', 'POSITIVE', 'PLS_INTEGER', 'PCTFREE', 'PARTITION',
        'PACKAGE', 'OUT', 'OTHERS', 'ORGANIZATION', 'ORDER', 'OR', 'OPTION',
        'OPERATOR', 'OPEN', 'OPAQUE', 'ON', 'OF', 'OCIROWID', 'NUMBER_BASE',
        'NUMBER', 'NULL', 'NOWAIT', 'NOT', 'NOCOPY', 'NEXTVAL', 'NEW',
        'NATURALN', 'NATURAL', 'MONTH', 'MODE', 'MLSLABEL', 'MINUTE', 'MINUS',
        'LOOP', 'LONG', 'LOCK', 'LIMITED', 'LIKE', 'LEVEL', 'JAVA',
        'ISOLATION', 'IS', 'INTO', 'INTERVAL', 'INTERSECT', 'INTERFACE',
        'INTEGER', 'INSERT', 'INDICATOR', 'INDEX', 'IN', 'IMMEDIATE', 'IF',
        'HOUR', 'HEAP', 'HAVING', 'GROUP', 'GOTO', 'FUNCTION', 'FROM',
        'FORALL', 'FOR', 'FLOAT', 'FETCH', 'FALSE', 'EXTENDS', 'EXIT',
        'EXISTS', 'EXECUTE', 'EXCLUSIVE', 'EXCEPTION', 'END', 'ELSIF', 'ELSE',
        'DROP', 'DO', 'DISTINCT', 'DESC', 'DELETE', 'DEFAULT', 'DECLARE',
        'DECIMAL', 'DAY', 'DATE', 'CURSOR', 'CURRVAL', 'CURRENT', 'CREATE',
        'CONSTANT', 'CONNECT', 'COMPRESS', 'COMMIT', 'COMMENT', 'COLLECT',
        'CLUSTER', 'CLOSE', 'CHECK', 'CHAR_BASE', 'CHAR', 'CASE', 'BY', 'BULK',
        'BOOLEAN', 'BODY', 'BINARY_INTEGER', 'BETWEEN', 'BEGIN', 'AUTHID',
        'AT', 'ASC', 'AS', 'ARRAY', 'ANY', 'AND', 'ALTER', 'ALL'),
        //SQL functions (http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/toc.htm & http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/functions101a.htm#85925)
        2 => array('XMLTRANSFORM', 'XMLSEQUENCE', 'XMLFOREST', 'XMLELEMENT',
        'XMLCONCAT', 'XMLCOLATTVAL', 'XMLAGG', 'WIDTH_BUCKET', 'VSIZE',
        'VARIANCE', 'VAR_SAMP', 'VAR_POP', 'VALUE', 'USERENV', 'USER', 'UPPER',
        'UPDATEXML', 'UNISTR', 'UID', 'TZ_OFFSET', 'TRUNC', 'TRIM', 'TREAT',
        'TRANSLATE', 'TO_YMINTERVAL', 'TO_TIMESTAMP_TZ', 'TO_TIMESTAMP',
        'TO_SINGLE_BYTE', 'TO_NUMBER', 'TO_NCLOB', 'TO_NCHAR', 'TO_MULTI_BYTE',
        'TO_LOB', 'TO_DSINTERVAL', 'TO_DATE', 'TO_CLOB', 'TO_CHAR', 'TANH',
        'TAN', 'SYSTIMESTAMP', 'SYSDATE', 'SYS_XMLGEN', 'SYS_XMLAGG',
        'SYS_TYPEID', 'SYS_GUID', 'SYS_EXTRACT_UTC', 'SYS_DBURIGEN',
        'SYS_CONTEXT', 'SYS_CONNECT_BY_PATH', 'SUM', 'SUBSTR', 'STDDEV_SAMP',
        'STDDEV_POP', 'STDDEV', 'SQRT', 'SOUNDEX', 'SINH', 'SIN', 'SIGN',
        'SESSIONTIMEZONE', 'RTRIM', 'RPAD', 'ROWIDTONCHAR', 'ROWIDTOCHAR',
        'ROW_NUMBER', 'ROUND', 'REPLACE', 'REGR_SYY', 'REGR_SXY', 'REGR_SXX',
        'REGR_SLOPE', 'REGR_R2', 'REGR_INTERCEPT', 'REGR_COUNT', 'REGR_AVGY',
        'REGR_AVGX', 'REFTOHEX', 'REF', 'RAWTONHEX', 'RAWTOHEX',
        'RATIO_TO_REPORT', 'RANK', 'POWER', 'PERCENTILE_DISC',
        'PERCENTILE_CONT', 'PERCENT_RANK', 'PATH', 'NVL2', 'NVL',
        'NUMTOYMINTERVAL', 'NUMTODSINTERVAL', 'NULLIF', 'NTILE', 'NLSSORT',
        'NLS_UPPER', 'NLS_LOWER', 'NLS_INITCAP', 'NLS_CHARSET_NAME',
        'NLS_CHARSET_ID', 'NLS_CHARSET_DECL_LEN', 'NEXT_DAY', 'NEW_TIME',
        'NCHR', 'MONTHS_BETWEEN', 'MOD', 'MIN', 'MAX', 'MAKE_REF', 'LTRIM',
        'LPAD', 'LOWER', 'LOG', 'LOCALTIMESTAMP', 'LN', 'LENGTH', 'LEAST',
        'LEAD', 'LAST_VALUE', 'LAST_DAY', 'LAST', 'LAG', 'INSTR', 'INITCAP',
        'HEXTORAW', 'GROUPING_ID', 'GROUPING', 'GROUP_ID', 'GREATEST',
        'FROM_TZ', 'FLOOR', 'FIRST_VALUE', 'FIRST', 'EXTRACTVALUE', 'EXTRACT',
        'EXP', 'EXISTSNODE', 'EMPTY_CLOB', 'EMPTY_BLOB', 'DUMP', 'DEREF',
        'DEPTH', 'DENSE_RANK', 'DECOMPOSE', 'DECODE', 'DBTIMEZONE',
        'CURRENT_TIMESTAMP', 'CURRENT_DATE', 'CUME_DIST', 'COVAR_SAMP',
        'COVAR_POP', 'COUNT', 'COSH', 'COS', 'CORR', 'CONVERT', 'CONCAT',
        'COMPOSE', 'COALESCE', 'CHR', 'CHARTOROWID', 'CEIL', 'CAST', 'BITAND',
        'BIN_TO_NUM', 'BFILENAME', 'AVG', 'ATAN2', 'ATAN', 'ASIN', 'ASCIISTR',
        'ASCII', 'ADD_MONTHS', 'ACOS', 'ABS'),
        //PL/SQL packages (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96612/intro2.htm#1025672)
        3 => array('UTL_URL', 'UTL_TCP', 'UTL_SMTP', 'UTL_REF', 'UTL_RAW',
        'UTL_PG', 'UTL_INADDR', 'UTL_HTTP', 'UTL_FILE', 'UTL_ENCODE',
        'UTL_COLL', 'SDO_UTIL', 'SDO_TUNE', 'SDO_MIGRATE', 'SDO_LRS',
        'SDO_GEOM', 'SDO_CS', 'DMBS_XMLQUERY', 'DMBS_FLASHBACK',
        'DMBS_DEFER_SYS', 'DEBUG_EXTPROC', 'DBMS_XSLPROCESSOR', 'DBMS_XPLAN',
        'DBMS_XMLSCHEMA', 'DBMS_XMLSAVE', 'DBMS_XMLPARSER', 'DBMS_XMLGEN',
        'DBMS_XMLDOM', 'DBMS_XDBT', 'DBMS_XDB_VERSION', 'DBMS_XDB', 'DBMS_WM',
        'DBMS_UTILITY', 'DBMS_TYPES', 'DBMS_TTS', 'DBMS_TRANSFORM',
        'DBMS_TRANSACTION', 'DBMS_TRACE', 'DBMS_STRM_A', 'DBMS_STRM',
        'DBMS_STORAGE_MAP', 'DBMS_STATS', 'DBMS_SQL', 'DBMS_SPACE_ADMIN',
        'DBMS_SPACE', 'DBMS_SHARED_POOL', 'DBMS_SESSION', 'DBMS_RULE_ADM',
        'DBMS_RULE', 'DBMS_ROWID', 'DBMS_RLS', 'DBMS_RESUMABLE',
        'DBMS_RESOURCE_MANAGER_PRIVS', 'DBMS_RESOURCE_MANAGER', 'DBMS_REPUTIL',
        'DBMS_REPCAT_RGT', 'DBMS_REPCAT_INSTATIATE', 'DBMS_REPCAT_ADMIN',
        'DBMS_REPCAT', 'DBMS_REPAIR', 'DBMS_REFRESH', 'DBMS_REDEFINITION',
        'DBMS_RECTIFIER_DIFF', 'DBMS_RANDOM', 'DBMS_PROPAGATION_ADM',
        'DBMS_PROFILER', 'DBMS_PIPE', 'DBMS_PCLXUTIL', 'DBMS_OUTPUT',
        'DBMS_OUTLN_EDIT', 'DBMS_OUTLN', 'DBMS_ORACLE_TRACE_USER',
        'DBMS_ORACLE_TRACE_AGENT', 'DBMS_OLAP', 'DBMS_OFFLINE_SNAPSHOT',
        'DBMS_OFFLINE_OG', 'DBMS_ODCI', 'DBMS_OBFUSCATION_TOOLKIT',
        'DBMS_MVIEW', 'DBMS_MGWMSG', 'DBMS_MGWADM', 'DBMS_METADATA',
        'DBMS_LOGSTDBY', 'DBMS_LOGMNR_D', 'DBMS_LOGMNR_CDC_SUBSCRIBE',
        'DBMS_LOGMNR_CDC_PUBLISH', 'DBMS_LOGMNR', 'DBMS_LOCK', 'DBMS_LOB',
        'DBMS_LIBCACHE', 'DBMS_LDAP', 'DBMS_JOB', 'DBMS_IOT',
        'DBMS_HS_PASSTHROUGH', 'DBMS_FGA', 'DBMS_DISTRIBUTED_TRUST_ADMIN',
        'DBMS_DESCRIBE', 'DBMS_DEFER_QUERY', 'DBMS_DEFER', 'DBMS_DEBUG',
        'DBMS_DDL', 'DBMS_CAPTURE_ADM', 'DBMS_AW', 'DBMS_AQELM', 'DBMS_AQADM',
        'DBMS_AQ', 'DBMS_APPLY_ADM', 'DBMS_APPLICATION_INFO', 'DBMS_ALERT',
        'CWM2_OLAP_AW_ACCESS'),
        //PL/SQL predefined exceptions (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/07_errs.htm#784)
        4 => array('ZERO_DIVIDE', 'VALUE_ERROR', 'TOO_MANY_ROWS',
        'TIMEOUT_ON_RESOURCE', 'SYS_INVALID_ROWID', 'SUBSCRIPT_OUTSIDE_LIMIT',
        'SUBSCRIPT_BEYOND_COUNT', 'STORAGE_ERROR', 'SELF_IS_NULL',
        'ROWTYPE_MISMATCH', 'PROGRAM_ERROR', 'NOT_LOGGED_ON', 'NO_DATA_FOUND',
        'LOGIN_DENIED', 'INVALID_NUMBER', 'INVALID_CURSOR', 'DUP_VAL_ON_INDEX',
        'CURSOR_ALREADY_OPEN', 'COLLECTION_IS_NULL', 'CASE_NOT_FOUND',
        'ACCESS_INTO_NULL'),
        //Static data dictionary views (http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96536/ch2.htm)
        5 => array('USER_REPSITES', 'USER_REPSCHEMA',
        'USER_REPRESOLUTION_STATISTICS', 'USER_REPRESOLUTION_METHOD',
        'USER_REPRESOLUTION', 'USER_REPRESOL_STATS_CONTROL', 'USER_REPPROP',
        'USER_REPPRIORITY_GROUP', 'USER_REPPRIORITY',
        'USER_REPPARAMETER_COLUMN', 'USER_REPOBJECT', 'USER_REPKEY_COLUMNS',
        'USER_REPGROUPED_COLUMN', 'USER_REPGROUP_PRIVILEGES', 'USER_REPGROUP',
        'USER_REPGENOBJECTS', 'USER_REPGENERATED', 'USER_REPFLAVORS',
        'USER_REPFLAVOR_OBJECTS', 'USER_REPFLAVOR_COLUMNS', 'USER_REPDDL',
        'USER_REPCONFLICT', 'USER_REPCOLUMN_GROUP', 'USER_REPCOLUMN',
        'USER_REPCATLOG', 'USER_REPCAT_USER_PARM_VALUES',
        'USER_REPCAT_USER_AUTHORIZATIONS', 'USER_REPCAT_TEMPLATE_SITES',
        'USER_REPCAT_TEMPLATE_PARMS', 'USER_REPCAT_TEMPLATE_OBJECTS',
        'USER_REPCAT_REFRESH_TEMPLATES', 'USER_REPCAT', 'USER_REPAUDIT_COLUMN',
        'USER_REPAUDIT_ATTRIBUTE', 'DBA_REPSITES_NEW', 'DBA_REPSITES',
        'DBA_REPSCHEMA', 'DBA_REPRESOLUTION_STATISTICS',
        'DBA_REPRESOLUTION_METHOD', 'DBA_REPRESOLUTION',
        'DBA_REPRESOL_STATS_CONTROL', 'DBA_REPPROP', 'DBA_REPPRIORITY_GROUP',
        'DBA_REPPRIORITY', 'DBA_REPPARAMETER_COLUMN', 'DBA_REPOBJECT',
        'DBA_REPKEY_COLUMNS', 'DBA_REPGROUPED_COLUMN',
        'DBA_REPGROUP_PRIVILEGES', 'DBA_REPGROUP', 'DBA_REPGENOBJECTS',
        'DBA_REPGENERATED', 'DBA_REPFLAVORS', 'DBA_REPFLAVOR_OBJECTS',
        'DBA_REPFLAVOR_COLUMNS', 'DBA_REPEXTENSIONS', 'DBA_REPDDL',
        'DBA_REPCONFLICT', 'DBA_REPCOLUMN_GROUP', 'DBA_REPCOLUMN',
        'DBA_REPCATLOG', 'DBA_REPCAT_USER_PARM_VALUES',
        'DBA_REPCAT_USER_AUTHORIZATIONS', 'DBA_REPCAT_TEMPLATE_SITES',
        'DBA_REPCAT_TEMPLATE_PARMS', 'DBA_REPCAT_TEMPLATE_OBJECTS',
        'DBA_REPCAT_REFRESH_TEMPLATES', 'DBA_REPCAT_EXCEPTIONS', 'DBA_REPCAT',
        'DBA_REPAUDIT_COLUMN', 'DBA_REPAUDIT_ATTRIBUTE', 'ALL_REPSITES',
        'ALL_REPSCHEMA', 'ALL_REPRESOLUTION_STATISTICS',
        'ALL_REPRESOLUTION_METHOD', 'ALL_REPRESOLUTION',
        'ALL_REPRESOL_STATS_CONTROL', 'ALL_REPPROP', 'ALL_REPPRIORITY_GROUP',
        'ALL_REPPRIORITY', 'ALL_REPPARAMETER_COLUMN', 'ALL_REPOBJECT',
        'ALL_REPKEY_COLUMNS', 'ALL_REPGROUPED_COLUMN',
        'ALL_REPGROUP_PRIVILEGES', 'ALL_REPGROUP', 'ALL_REPGENOBJECTS',
        'ALL_REPGENERATED', 'ALL_REPFLAVORS', 'ALL_REPFLAVOR_OBJECTS',
        'ALL_REPFLAVOR_COLUMNS', 'ALL_REPDDL', 'ALL_REPCONFLICT',
        'ALL_REPCOLUMN_GROUP', 'ALL_REPCOLUMN', 'ALL_REPCATLOG',
        'ALL_REPCAT_USER_PARM_VALUES', 'ALL_REPCAT_USER_AUTHORIZATIONS',
        'ALL_REPCAT_TEMPLATE_SITES', 'ALL_REPCAT_TEMPLATE_PARMS',
        'ALL_REPCAT_TEMPLATE_OBJECTS', 'ALL_REPCAT_REFRESH_TEMPLATES',
        'ALL_REPCAT', 'ALL_REPAUDIT_COLUMN', 'ALL_REPAUDIT_ATTRIBUTE')
        ),
    'SYMBOLS' => array(
        //PL/SQL delimiters (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2732)
        '+', '%', "'", '.', '/', '(', ')', ':', ',', '*', '"', '=', '<', '>', '@', ';', '-', ':=', '=>', '||', '**', '<<', '>>', '/*', '*/', '..', '<>', '!=', '~=', '^=', '<=', '>='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00F;',
            2 => 'color: #000;',
            3 => 'color: #00F;',
            4 => 'color: #F00;',
            5 => 'color: #800;'
            ),
        'COMMENTS' => array(
            1 => 'color: #080; font-style: italic;',
            'MULTI' => 'color: #080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #00F;'
            ),
        'STRINGS' => array(
            0 => 'color: #F00;'
            ),
        'NUMBERS' => array(
            0 => 'color: #800;'
            ),
        'METHODS' => array(
            0 => 'color: #0F0;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #00F;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => 'color: #0F0;'
            )
        ),
        'URLS' => array(
            1 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}',
            2 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}',
            3 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}',
            4 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}',
            5 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}'
            ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

?>
geshi/geshi/rpmspec.php0000664000175000017500000001076012014173414014351 0ustar  benbebenbe 'RPM Specification File',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'QUOTEMARKS' => array('"','`'),
    'ESCAPE_CHAR' => '\\',
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        ),
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        '<', '>', '=',
        '!', '@', '~', '&', '|', '^',
        '+','-', '*', '/', '%',
        ',', ';', '?', '.', ':'
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #009999;',
            3 => 'color: #000000; font-weight: bold;',
            4 => 'color: #ff6600; font-style: italic;',
            ),
        'SCRIPT' => array(
            )
        ),
    'REGEXPS' => array(
        1 => array(
            // search for generic macros
            GESHI_SEARCH => '(%{?[a-zA-Z0-9_]+}?)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        2 => array(
            // search for special macros
            GESHI_SEARCH => '(%(?:define|patch\d*|mklibname|mkrel|configure\S+|makeinstall\S+|make_session|make|defattr|config|doc|setup))',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        3 => array (
            // special definitions
            GESHI_SEARCH => '((?:summary|license|buildroot|buildrequires|provides|version|release|source\d*|group|buildarch|autoreqprov|provides|obsoletes|vendor|distribution|suggests|autoreq|autoprov|conflicts|name|url|requires|patch\d*):)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        4 => array (
            // section delimiting words
            GESHI_SEARCH => '(%(?:description|package|prep|build|install|clean|postun|preun|post|pre|files|changelog))',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => '',
            ),
        ),
    'URLS' => array(),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
);

?>geshi/geshi/ocaml-brief.php0000664000175000017500000000735512014173433015067 0ustar  benbebenbe 'OCaml (brief)',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('(*' => '*)'),
    'CASE_KEYWORDS' => 0,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => "",
    'KEYWORDS' => array(
        /* main OCaml keywords */
        1 => array(
            'and', 'as', 'asr', 'begin', 'class', 'closed', 'constraint', 'do', 'done', 'downto', 'else',
            'end', 'exception', 'external', 'failwith', 'false', 'flush', 'for', 'fun', 'function', 'functor',
            'if', 'in', 'include', 'inherit',  'incr', 'land', 'let', 'load', 'los', 'lsl', 'lsr', 'lxor',
            'match', 'method', 'mod', 'module', 'mutable', 'new', 'not', 'of', 'open', 'option', 'or', 'parser',
            'private', 'ref', 'rec', 'raise', 'regexp', 'sig', 'struct', 'stdout', 'stdin', 'stderr', 'then',
            'to', 'true', 'try', 'type', 'val', 'virtual', 'when', 'while', 'with'
            )
        ),
    /* highlighting symbols is really important in OCaml */
    'SYMBOLS' => array(
        ';', '!', ':', '.', '=', '%', '^', '*', '-', '/', '+',
        '>', '<', '(', ')', '[', ']', '&', '|', '#', "'"
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #06c; font-weight: bold;' /* nice blue */
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #5d478b; font-style: italic;' /* light purple */
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: #6c6;'
            ),
        'STRINGS' => array(
            0 => 'color: #3cb371;' /* nice green */
            ),
        'NUMBERS' => array(
            0 => 'color: #c6c;' /* pink */
            ),
        'METHODS' => array(
            1 => 'color: #060;' /* dark green */
            ),
        'REGEXPS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #a52a2a;' /* maroon */
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/octave.php0000664000175000017500000007264612014173424014175 0ustar  benbebenbe 'GNU Octave',
    'COMMENT_SINGLE' => array(1 => '#', 2 => '%'),
    // we can't use COMMENT_MULTI since start and end of block comments need to
    // be alone on the line (optionally, with whitespace). See COMMENT_REGEXP
    'COMMENT_MULTI' => array(),
    // we can't use QUOTEMARKS, not even HARDQUOTE, see COMMENT_REGEXP
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'COMMENT_REGEXP' => array(
        // Single quote strings: we can't use QUOTEMARKS here since new
        // lines will break the string. Plus, single quote strings do not even
        // allow for continuation markers, only double quote strings allow it.
        // Also, to do not misdetect the transpose operator ' as the start of a
        // string we assert to not follow a variable name (letters, digits and
        // underscores) or a closing bracket (round, square or curly) or a dot
        // (to form the array transpose operator ".'" ).
        3 => "/(? '/"(.|(\.\.\.|\\\)(\s)*?\n)*?(? "/^\s*?[%#]{\s*?$.*?^\s*?[%#]}\s*?$/ms",
        // Packaging system: comes here so that pkg can also be used in the
        // function form. The list of pkg commands is optional to the match so
        // that at least pkg is highlighted if new commands are implemented
        6 => "/\bpkg(?!\s*\()\s+((un)?install|update|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)?\b/",
        // Function handles
        7 => "/@([a-z_][a-z1-9_]*)?/i",
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |
        GESHI_NUMBER_OCT_PREFIX |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'KEYWORDS' => array(
        // Data types
        1 => array(
            'cell', 'char', 'double', 'uint8', 'uint16', 'uint32', 'uint64',
            'int8','int16', 'int32', 'int64', 'logical', 'single', 'struct'
            ),
        // Storage type
        2 => array(
            'global', 'persistent', 'static'
            ),
        // Internal variable
        3 => array(
            'ans'
            ),
        // Reserved words
        4 => array(
            'break', 'case', 'catch', 'continue', 'do', 'else', 'elseif', 'end',
            'end_try_catch', 'end_unwind_protect', 'endfor', 'endfunction',
            'endif', 'endparfor', 'endswitch', 'endwhile', 'for', 'function',
            'if', 'otherwise', 'parfor', 'return',
            'switch', 'try', 'until', 'unwind_protect',
            'unwind_protect_cleanup', 'varargin', 'varargout', 'while'
            ),
        // Built in
        5 => array(
            'P_tmpdir', 'abs', 'acos', 'acosh',
            'add_input_event_hook', 'addlistener', 'addpath', 'addproperty',
            'all', 'allow_noninteger_range_as_index', 'and', 'angle', 'any',
            'arg', 'argnames', 'argv', 'asin', 'asinh', 'assignin', 'atan',
            'atan2', 'atanh', 'atexit', 'autoload', 'available_graphics_toolkits',
            'beep_on_error', 'bitand', 'bitmax', 'bitor', 'bitshift', 'bitxor',
            'builtin', 'canonicalize_file_name', 'cat', 'cbrt', 'cd', 'ceil',
            'cell2struct', 'cellstr', 'chdir', 'class', 'clc',
            'clear', 'columns', 'command_line_path', 'completion_append_char',
            'completion_matches', 'complex', 'confirm_recursive_rmdir', 'conj',
            'cos', 'cosh', 'cputime', 'crash_dumps_octave_core', 'ctranspose',
            'cumprod', 'cumsum', 'dbclear', 'dbcont', 'dbdown', 'dbnext',
            'dbquit', 'dbstack', 'dbstatus', 'dbstep', 'dbstop', 'dbtype', 'dbup',
            'dbwhere', 'debug_on_error', 'debug_on_interrupt', 'debug_on_warning',
            'default_save_options', 'dellistener', 'diag', 'diary', 'diff',
            'disp', 'do_braindead_shortcircuit_evaluation', 'do_string_escapes',
            'doc_cache_file', 'drawnow', 'dup2', 'echo',
            'echo_executing_commands', 'edit_history','eq', 'erf', 'erfc',
            'erfcx', 'erfinv', 'errno', 'errno_list', 'error', 'eval', 'evalin',
            'exec', 'exist', 'exit', 'exp', 'expm1', 'eye', 'fclear',
            'fclose', 'fcntl', 'fdisp', 'feof', 'ferror', 'feval', 'fflush',
            'fgetl', 'fgets', 'fieldnames', 'file_in_loadpath', 'file_in_path',
            'filemarker', 'filesep', 'find_dir_in_path', 'finite', 'fix',
            'fixed_point_format', 'floor', 'fmod', 'fnmatch', 'fopen', 'fork',
            'format', 'formula', 'fprintf', 'fputs', 'fread', 'freport',
            'frewind', 'fscanf', 'fseek', 'fskipl', 'ftell', 'full', 'func2str',
            'functions', 'fwrite', 'gamma', 'gammaln', 'ge', 'genpath', 'get',
            'get_help_text', 'get_help_text_from_file', 'getegid', 'getenv',
            'geteuid', 'getgid', 'gethostname', 'getpgrp', 'getpid', 'getppid',
            'getuid', 'glob', 'gt', 'history', 'history_control', 'history_file',
            'history_size', 'history_timestamp_format_string', 'home', 'horzcat',
            'hypot', 'ifelse', 'ignore_function_time_stamp', 'imag',
            'inferiorto', 'info_file', 'info_program', 'inline', 'input',
            'intmax', 'intmin', 'ipermute',
            'is_absolute_filename', 'is_dq_string', 'is_function_handle',
            'is_rooted_relative_filename', 'is_sq_string', 'isalnum', 'isalpha',
            'isargout', 'isascii', 'isbool', 'iscell', 'iscellstr', 'ischar',
            'iscntrl', 'iscomplex', 'isdebugmode', 'isdigit', 'isempty',
            'isfield', 'isfinite', 'isfloat', 'isglobal', 'isgraph', 'ishandle',
            'isieee', 'isindex', 'isinf', 'isinteger', 'iskeyword', 'islogical',
            'islower', 'ismatrix', 'ismethod', 'isna', 'isnan', 'isnull',
            'isnumeric', 'isobject', 'isprint', 'ispunct', 'isreal', 'issorted',
            'isspace', 'issparse', 'isstruct', 'isupper', 'isvarname', 'isxdigit',
            'kbhit', 'keyboard', 'kill', 'lasterr', 'lasterror', 'lastwarn',
            'ldivide', 'le', 'length', 'lgamma', 'link', 'linspace',
            'list_in_columns', 'load', 'loaded_graphics_toolkits', 'log', 'log10',
            'log1p', 'log2', 'lower', 'lstat', 'lt',
            'make_absolute_filename', 'makeinfo_program', 'max_recursion_depth',
            'merge', 'methods', 'mfilename', 'minus', 'mislocked',
            'missing_function_hook', 'mkdir', 'mkfifo', 'mkstemp', 'mldivide',
            'mlock', 'mod', 'more', 'mpower', 'mrdivide', 'mtimes', 'munlock',
            'nargin', 'nargout', 'native_float_format', 'ndims', 'ne',
            'nfields', 'nnz', 'norm', 'not', 'nth_element', 'numel', 'nzmax',
            'octave_config_info', 'octave_core_file_limit',
            'octave_core_file_name', 'octave_core_file_options',
            'octave_tmp_file_name', 'onCleanup', 'ones',
            'optimize_subsasgn_calls', 'or', 'output_max_field_width',
            'output_precision', 'page_output_immediately', 'page_screen_output',
            'path', 'pathsep', 'pause', 'pclose', 'permute', 'pipe', 'plus',
            'popen', 'popen2', 'power', 'print_empty_dimensions',
            'print_struct_array_contents', 'printf', 'prod',
            'program_invocation_name', 'program_name', 'putenv', 'puts', 'pwd',
            'quit', 'rats', 'rdivide', 're_read_readline_init_file',
            'read_readline_init_file', 'readdir', 'readlink', 'real', 'realmax',
            'realmin', 'register_graphics_toolkit', 'rehash', 'rem',
            'remove_input_event_hook', 'rename', 'repelems', 'reset', 'reshape',
            'resize', 'restoredefaultpath', 'rethrow', 'rmdir', 'rmfield',
            'rmpath', 'round', 'roundb', 'rows', 'run_history', 'save',
            'save_header_format_string', 'save_precision', 'saving_history',
            'scanf', 'set', 'setenv', 'sighup_dumps_octave_core', 'sign',
            'sigterm_dumps_octave_core', 'silent_functions', 'sin',
            'sinh', 'size', 'size_equal', 'sizemax', 'sizeof', 'sleep', 'sort',
            'source', 'spalloc', 'sparse', 'sparse_auto_mutate',
            'split_long_rows', 'sprintf', 'sqrt', 'squeeze', 'sscanf', 'stat',
            'stderr', 'stdin', 'stdout', 'str2func', 'strcmp', 'strcmpi',
            'string_fill_char', 'strncmp', 'strncmpi', 'struct2cell',
            'struct_levels_to_print', 'strvcat', 'subsasgn', 'subsref', 'sum',
            'sumsq', 'superiorto', 'suppress_verbose_help_message', 'symlink',
            'system', 'tan', 'tanh', 'terminal_size', 'tic', 'tilde_expand',
            'times', 'tmpfile', 'tmpnam', 'toascii', 'toc', 'tolower', 'toupper',
            'transpose', 'typeinfo',
            'umask', 'uminus', 'uname', 'undo_string_escapes', 'unlink',
            'uplus', 'upper', 'usage', 'usleep', 'vec', 'vectorize', 'vertcat',
            'waitfor', 'waitpid', 'warning', 'warranty', 'who', 'whos',
            'whos_line_format', 'yes_or_no', 'zeros'
            ),
        // Octave functions
        6 => array(
            'accumarray', 'accumdim', 'acosd', 'acot', 'acotd', 'acoth', 'acsc',
            'acscd', 'acsch', 'addpref', 'addtodate', 'allchild', 'amd',
            'ancestor', 'anova', 'arch_fit', 'arch_rnd', 'arch_test',
            'area', 'arma_rnd', 'asctime', 'asec', 'asecd', 'asech', 'asind',
            'assert', 'atand', 'autoreg_matrix', 'autumn',
            'axes', 'axis', 'balance', 'bar', 'barh', 'bartlett', 'bartlett_test',
            'base2dec', 'beep', 'bessel', 'besselj', 'beta', 'betacdf',
            'betainc', 'betainv', 'betaln', 'betapdf', 'betarnd', 'bicg',
            'bicgstab', 'bicubic', 'bin2dec', 'bincoeff', 'binocdf', 'binoinv',
            'binopdf', 'binornd', 'bitcmp', 'bitget', 'bitset', 'blackman',
            'blanks', 'blkdiag', 'bone', 'box', 'brighten', 'bsxfun',
            'bug_report', 'bunzip2', 'bzip2', 'calendar', 'cart2pol', 'cart2sph',
            'cast', 'cauchy_cdf', 'cauchy_inv', 'cauchy_pdf', 'cauchy_rnd',
            'caxis', 'ccolamd', 'cell2mat', 'celldisp', 'cellfun',
            'center', 'cgs', 'chi2cdf', 'chi2inv', 'chi2pdf', 'chi2rnd',
            'chisquare_test_homogeneity', 'chisquare_test_independence', 'chol',
            'chop', 'circshift', 'cla', 'clabel', 'clf', 'clock',
            'cloglog', 'close', 'closereq', 'colamd', 'colloc', 'colon',
            'colorbar', 'colormap', 'colperm', 'colstyle', 'comet', 'comet3',
            'comma', 'common_size', 'commutation_matrix', 'compan',
            'compare_versions', 'compass', 'computer', 'cond', 'condest',
            'contour', 'contour3', 'contourc', 'contourf', 'contrast', 'conv',
            'conv2', 'convhull', 'convhulln', 'cool', 'copper', 'copyfile',
            'cor_test', 'corr', 'cosd', 'cot', 'cotd', 'coth', 'cov',
            'cplxpair', 'cross', 'csc', 'cscd', 'csch', 'cstrcat',
            'csvread', 'csvwrite', 'ctime', 'cumtrapz', 'curl', 'cylinder',
            'daspect', 'daspk', 'dasrt', 'dassl', 'date', 'datenum', 'datestr',
            'datetick', 'datevec', 'dblquad', 'deal', 'deblank', 'debug',
            'dec2base', 'dec2bin', 'dec2hex', 'deconv', 'del2', 'delaunay',
            'delaunay3', 'delaunayn', 'delete', 'demo', 'det', 'detrend',
            'diffpara', 'diffuse', 'dir', 'discrete_cdf', 'discrete_inv',
            'discrete_pdf', 'discrete_rnd', 'display', 'divergence',
            'dlmread', 'dlmwrite', 'dmperm', 'doc', 'dos', 'dot', 'dsearch',
            'dsearchn', 'dump_prefs', 'duplication_matrix', 'durbinlevinson',
            'edit', 'eig', 'eigs', 'ellipsoid', 'empirical_cdf', 'empirical_inv',
            'empirical_pdf', 'empirical_rnd', 'eomday', 'errorbar',
            'etime', 'etreeplot', 'example', 'expcdf', 'expinv', 'expm', 'exppdf',
            'exprnd', 'ezcontour', 'ezcontourf', 'ezmesh', 'ezmeshc', 'ezplot',
            'ezplot3', 'ezpolar', 'ezsurf', 'ezsurfc', 'f_test_regression',
            'fact', 'factor', 'factorial', 'fail', 'fcdf', 'feather', 'fft',
            'fft2', 'fftconv', 'fftfilt', 'fftn', 'fftshift', 'fftw', 'figure',
            'fileattrib', 'fileparts', 'fileread', 'fill', 'filter', 'filter2',
            'find', 'findall', 'findobj', 'findstr', 'finv', 'flag', 'flipdim',
            'fliplr', 'flipud', 'fminbnd', 'fminunc', 'fpdf', 'fplot',
            'fractdiff', 'freqz', 'freqz_plot', 'frnd', 'fsolve',
            'fullfile', 'fzero', 'gamcdf', 'gaminv', 'gammainc',
            'gampdf', 'gamrnd', 'gca', 'gcbf', 'gcbo', 'gcd', 'gcf',
            'gen_doc_cache', 'genvarname', 'geocdf', 'geoinv', 'geopdf', 'geornd',
            'get_first_help_sentence', 'getappdata', 'getfield', 'getgrent',
            'getpref', 'getpwent', 'getrusage', 'ginput', 'givens', 'glpk',
            'gls', 'gmap40', 'gmres', 'gnuplot_binary', 'gplot',
            'gradient', 'graphics_toolkit', 'gray', 'gray2ind', 'grid',
            'griddata', 'griddata3', 'griddatan', 'gtext', 'guidata',
            'guihandles', 'gunzip', 'gzip', 'hadamard', 'hamming', 'hankel',
            'hanning', 'help', 'hess', 'hex2dec', 'hex2num', 'hggroup', 'hidden',
            'hilb', 'hist', 'histc', 'hold', 'hot', 'hotelling_test',
            'hotelling_test_2', 'housh', 'hsv', 'hsv2rgb', 'hurst', 'hygecdf',
            'hygeinv', 'hygepdf', 'hygernd', 'idivide', 'ifftshift', 'image',
            'imagesc', 'imfinfo', 'imread', 'imshow', 'imwrite', 'ind2gray',
            'ind2rgb', 'index', 'info', 'inpolygon', 'inputname', 'int2str',
            'interp1', 'interp1q', 'interp2', 'interp3', 'interpft', 'interpn',
            'intersect', 'inv', 'invhilb', 'iqr',
            'is_leap_year', 'is_valid_file_id',
            'isa', 'isappdata', 'iscolumn', 'isdefinite', 'isdeployed', 'isdir',
            'isequal', 'isequalwithequalnans', 'isfigure', 'ishermitian',
            'ishghandle', 'ishold', 'isletter', 'ismac', 'ismember', 'isocolors',
            'isonormals', 'isosurface', 'ispc', 'ispref', 'isprime', 'isprop',
            'isrow', 'isscalar', 'issquare', 'isstrprop', 'issymmetric',
            'isunix', 'isvector', 'jet', 'kendall', 'kolmogorov_smirnov_cdf',
            'kolmogorov_smirnov_test', 'kolmogorov_smirnov_test_2', 'kron',
            'kruskal_wallis_test', 'krylov', 'kurtosis', 'laplace_cdf',
            'laplace_inv', 'laplace_pdf', 'laplace_rnd', 'lcm', 'legend',
            'legendre', 'license', 'lin2mu', 'line', 'linkprop', 'list_primes',
            'loadaudio', 'loadobj', 'logistic_cdf', 'logistic_inv',
            'logistic_pdf', 'logistic_regression', 'logistic_rnd', 'logit',
            'loglog', 'loglogerr', 'logm', 'logncdf', 'logninv', 'lognpdf',
            'lognrnd', 'logspace', 'lookfor', 'lookup', 'ls', 'ls_command',
            'lsode', 'lsqnonneg', 'lu', 'luinc', 'magic', 'mahalanobis', 'manova',
            'mat2str', 'matlabroot', 'matrix_type', 'max', 'mcnemar_test',
            'md5sum', 'mean', 'meansq', 'median', 'menu', 'mesh', 'meshc',
            'meshgrid', 'meshz', 'mex', 'mexext', 'mgorth', 'mkoctfile', 'mkpp',
            'mode', 'moment', 'movefile', 'mpoles', 'mu2lin', 'namelengthmax',
            'nargchk', 'narginchk', 'nargoutchk', 'nbincdf', 'nbininv', 'nbinpdf',
            'nbinrnd', 'nchoosek', 'ndgrid', 'newplot', 'news', 'nextpow2',
            'nonzeros', 'normcdf', 'normest', 'norminv', 'normpdf', 'normrnd',
            'now', 'nproc', 'nthargout', 'nthroot', 'ntsc2rgb', 'null', 'num2str',
            'ocean', 'ols', 'onenormest', 'optimget', 'optimset', 'orderfields',
            'orient', 'orth', 'pack', 'paren', 'pareto', 'parseparams', 'pascal',
            'patch', 'pathdef', 'pbaspect', 'pcg', 'pchip', 'pcolor', 'pcr',
            'peaks', 'periodogram', 'perl', 'perms', 'pie', 'pie3',
            'pink', 'pinv', 'pkg', 'planerot', 'playaudio', 'plot', 'plot3',
            'plotmatrix', 'plotyy', 'poisscdf', 'poissinv', 'poisspdf',
            'poissrnd', 'pol2cart', 'polar', 'poly', 'polyaffine', 'polyarea',
            'polyder', 'polyfit', 'polygcd', 'polyint', 'polyout',
            'polyreduce', 'polyval', 'polyvalm', 'postpad', 'pow2', 'powerset',
            'ppder', 'ppint', 'ppjumps', 'ppplot', 'ppval', 'pqpnonneg',
            'prctile', 'prepad', 'primes', 'print', 'printAllBuiltins',
            'print_usage', 'prism', 'probit', 'profexplore', 'profile',
            'profshow', 'prop_test_2', 'python', 'qp', 'qqplot', 'qr', 'quad',
            'quadcc', 'quadgk', 'quadl', 'quadv', 'quantile', 'quiver', 'quiver3',
            'qz', 'qzhess', 'rainbow', 'rand', 'randi', 'range', 'rank', 'ranks',
            'rat', 'rcond', 'reallog', 'realpow', 'realsqrt', 'record',
            'rectangle', 'rectint', 'recycle', 'refresh', 'refreshdata', 'regexp',
            'regexptranslate', 'repmat', 'residue', 'rgb2hsv',
            'rgb2ind', 'rgb2ntsc', 'ribbon', 'rindex', 'rmappdata', 'rmpref',
            'roots', 'rose', 'rosser', 'rot90', 'rotdim', 'rref', 'run',
            'run_count', 'run_test', 'rundemos', 'runlength', 'runtests',
            'saveas', 'saveaudio', 'saveobj', 'savepath', 'scatter',
            'scatter3', 'schur', 'sec', 'secd', 'sech', 'semicolon', 'semilogx',
            'semilogxerr', 'semilogy', 'semilogyerr', 'setappdata', 'setaudio',
            'setdiff', 'setfield', 'setpref', 'setxor', 'shading',
            'shg', 'shift', 'shiftdim', 'sign_test', 'sinc', 'sind',
            'sinetone', 'sinewave', 'skewness', 'slice', 'sombrero', 'sortrows',
            'spaugment', 'spconvert', 'spdiags', 'spearman', 'spectral_adf',
            'spectral_xdf', 'specular', 'speed', 'spencer', 'speye', 'spfun',
            'sph2cart', 'sphere', 'spinmap', 'spline', 'spones', 'spparms',
            'sprand', 'sprandn', 'sprandsym', 'spring', 'spstats', 'spy', 'sqp',
            'sqrtm', 'stairs', 'statistics', 'std', 'stdnormal_cdf',
            'stdnormal_inv', 'stdnormal_pdf', 'stdnormal_rnd', 'stem', 'stem3',
            'stft', 'str2double', 'str2num', 'strcat', 'strchr',
            'strfind', 'strjust', 'strmatch', 'strread', 'strsplit', 'strtok',
            'strtrim', 'strtrunc', 'structfun', 'sub2ind',
            'subplot', 'subsindex', 'subspace', 'substr', 'substruct', 'summer',
            'surf', 'surface', 'surfc', 'surfl', 'surfnorm', 'svd', 'svds',
            'swapbytes', 'syl', 'symbfact', 'symrcm',
            'symvar', 'synthesis', 't_test', 't_test_2', 't_test_regression',
            'table', 'tand', 'tar', 'tcdf', 'tempdir', 'tempname', 'test', 'text',
            'textread', 'textscan', 'time', 'tinv', 'title', 'toeplitz', 'tpdf',
            'trace', 'trapz', 'treelayout', 'treeplot', 'tril', 'trimesh',
            'triplequad', 'triplot', 'trisurf', 'trnd', 'tsearch', 'tsearchn',
            'type', 'typecast', 'u_test', 'uicontextmenu', 'uicontrol',
            'uigetdir', 'uigetfile', 'uimenu', 'uipanel', 'uipushtool',
            'uiputfile', 'uiresume', 'uitoggletool', 'uitoolbar', 'uiwait',
            'unidcdf', 'unidinv', 'unidpdf', 'unidrnd', 'unifcdf', 'unifinv',
            'unifpdf', 'unifrnd', 'unimplemented', 'union', 'unique', 'unix',
            'unmkpp', 'unpack', 'untabify', 'untar', 'unwrap', 'unzip',
            'urlwrite', 'usejava', 'validatestring', 'vander', 'var',
            'var_test', 'vech', 'ver', 'version', 'view', 'voronoi', 'voronoin',
            'waitbar', 'waitforbuttonpress', 'warning_ids', 'wavread', 'wavwrite',
            'wblcdf', 'wblinv', 'wblpdf', 'wblrnd', 'weekday',
            'welch_test', 'what', 'which',
            'white', 'whitebg', 'wienrnd', 'wilcoxon_test', 'wilkinson', 'winter',
            'xlabel', 'xlim', 'xor', 'ylabel', 'ylim', 'yulewalker', 'z_test',
            'z_test_2', 'zip', 'zlabel', 'zlim', 'zscore', 'airy', 'arrayfun',
            'besselh', 'besseli', 'besselk', 'bessely', 'bitpack', 'bitunpack',
            'blkmm', 'cellindexmat', 'cellslices', 'chol2inv', 'choldelete',
            'cholinsert', 'cholinv', 'cholshift', 'cholupdate', 'convn',
            'csymamd', 'cummax', 'cummin', 'daspk_options', 'dasrt_options',
            'dassl_options', 'endgrent', 'endpwent', 'etree', 'getgrgid',
            'getgrnam', 'getpwnam', 'getpwuid', 'gmtime', 'gui_mode', 'ifft',
            'ifft2', 'ifftn', 'ind2sub', 'inverse', 'localtime', 'lsode_options',
            'luupdate', 'mat2cell', 'min', 'mktime', 'mouse_wheel_zoom',
            'num2cell', 'num2hex', 'qrdelete', 'qrinsert', 'qrshift', 'qrupdate',
            'quad_options', 'rande', 'randg', 'randn', 'randp', 'randperm',
            'regexpi', 'regexprep', 'rsf2csf', 'setgrent', 'setpwent', 'sprank',
            'strftime', 'strptime', 'strrep', 'svd_driver', 'symamd', 'triu',
            'urlread'
            ),
        // Private builtin
        7 => array(
            '__accumarray_max__', '__accumarray_min__', '__accumarray_sum__',
            '__accumdim_sum__', '__builtins__', '__calc_dimensions__',
            '__current_scope__', '__display_tokens__', '__dump_symtab_info__',
            '__end__', '__get__', '__go_axes__', '__go_axes_init__',
            '__go_delete__', '__go_execute_callback__', '__go_figure__',
            '__go_figure_handles__', '__go_handles__', '__go_hggroup__',
            '__go_image__', '__go_line__', '__go_patch__', '__go_surface__',
            '__go_text__', '__go_uicontextmenu__', '__go_uicontrol__',
            '__go_uimenu__', '__go_uipanel__', '__go_uipushtool__',
            '__go_uitoggletool__', '__go_uitoolbar__', '__gud_mode__',
            '__image_pixel_size__', '__is_handle_visible__', '__isa_parent__',
            '__keywords__', '__lexer_debug_flag__', '__list_functions__',
            '__operators__', '__parent_classes__', '__parser_debug_flag__',
            '__pathorig__', '__profiler_data__', '__profiler_enable__',
            '__profiler_reset__', '__request_drawnow__', '__sort_rows_idx__',
            '__token_count__', '__varval__', '__version_info__', '__which__'
        ),
        // Private Octave functions
        8 => array(
            '__all_opts__', '__contourc__', '__delaunayn__', '__dispatch__',
            '__dsearchn__', '__finish__', '__fltk_uigetfile__',
            '__glpk__', '__gnuplot_drawnow__', '__init_fltk__',
            '__init_gnuplot__', '__lin_interpn__', '__magick_read__',
            '__makeinfo__', '__pchip_deriv__', '__plt_get_axis_arg__', '__qp__',
            '__voronoi__', '__fltk_maxtime__', '__fltk_redraw__', '__ftp__',
            '__ftp_ascii__', '__ftp_binary__', '__ftp_close__', '__ftp_cwd__',
            '__ftp_delete__', '__ftp_dir__', '__ftp_mget__', '__ftp_mkdir__',
            '__ftp_mode__', '__ftp_mput__', '__ftp_pwd__', '__ftp_rename__',
            '__ftp_rmdir__', '__magick_finfo__', '__magick_format_list__',
            '__magick_write__'
            ),
        // Builtin Global Variables
        9 => array(
            'EDITOR', 'EXEC_PATH', 'F_DUPFD', 'F_GETFD', 'F_GETFL', 'F_SETFD',
            'F_SETFL', 'IMAGE_PATH', 'OCTAVE_HOME',
            'OCTAVE_VERSION', 'O_APPEND', 'O_ASYNC', 'O_CREAT', 'O_EXCL',
            'O_NONBLOCK', 'O_RDONLY', 'O_RDWR', 'O_SYNC', 'O_TRUNC', 'O_WRONLY',
            'PAGER', 'PAGER_FLAGS', 'PS1', 'PS2', 'PS4', 'SEEK_CUR', 'SEEK_END',
            'SEEK_SET', 'SIG', 'S_ISBLK', 'S_ISCHR', 'S_ISDIR', 'S_ISFIFO',
            'S_ISLNK', 'S_ISREG', 'S_ISSOCK', 'WCONTINUE', 'WCOREDUMP',
            'WEXITSTATUS', 'WIFCONTINUED', 'WIFEXITED', 'WIFSIGNALED',
            'WIFSTOPPED', 'WNOHANG', 'WSTOPSIG', 'WTERMSIG', 'WUNTRACED'
            ),
        // Constant functions
        10 => array (
            'e', 'eps', 'inf', 'Inf', 'nan', 'NaN', 'NA', 'pi', 'i', 'I', 'j',
            'J', 'true', 'false'
            ),
        ),
    'SYMBOLS' => array(
        // Comparison & logical
        0 => array(
            '!', '!=', '&', '&&','|', '||', '~', '~=',
            '<', '<=', '==', '>', '>='
            ),
        // Aritmethical
        1 => array(
            '*', '**', '+', '++', '-', '--', '/', "\\","'"
            ),
        // Elementwise arithmetical
        2 => array(
            '.*', '.**','./', '.^', '^',".\\",".'"
            ),
        // Arithmetical & assignation
        3 => array(
            '*=','+=','-=','/=','\=','**=','^=',
            '.*=','.+=','.-=','./=','.\=','.**=','.^=','='
            ),
        // Indexer
        4 => array(
            ':'
            ),
        // Delimiters
        5 => array(
            ',', '...', ';'
            ),
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        9 => true,
        10 => true,
        ),
    'URLS' => array(
        1 => 'http://octave.sourceforge.net/octave/function/{FNAME}.html',
        2 => '',
        3 => '',
        4 => '',
        5 => 'http://octave.sourceforge.net/octave/function/{FNAME}.html',
        6 => 'http://octave.sourceforge.net/octave/function/{FNAME}.html',
        7 => '',
        8 => '',
        9 => 'http://octave.sourceforge.net/octave/function/{FNAME}.html',
        10 => 'http://octave.sourceforge.net/octave/function/{FNAME}.html',
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        ),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'STYLES' => array(
        'COMMENTS' => array(
            1 => 'color: #0000FF; font-style: italic;', // single quote strings
            2 => 'color: #0000FF; font-style: italic;', // double quote strings
            3 => 'color: #FF00FF; font-style: italic;', // single quote strings
            4 => 'color: #FF00FF; font-style: italic;', // double quote strings
            5 => 'color: #0000FF; font-style: italic;', // block comments
            6 => 'color: #996600; font-weight:bold;',   // packaging system
            7 => 'color: #006600; font-weight:bold;',   // function handles
            'MULTI' => 'color: #0000FF; font-style: italic;',
            ),
        'KEYWORDS' => array(
            1 => 'color: #2E8B57; font-weight:bold;',   // Data types
            2 => 'color: #2E8B57;',                     // Storage type
            3 => 'color: #0000FF; font-weight:bold;',   // Internal variable
            4 => 'color: #990000; font-weight:bold;',   // Reserved words
            5 => 'color: #008A8C; font-weight:bold;',   // Built-in
            6 => 'color: #008A8C;',                     // Octave functions
            9 => 'color: #000000; font-weight:bold;',   // Builtin Global Variables
            10 => 'color: #008A8C; font-weight:bold;',  // Constant functions
            ),
        'ESCAPE_CHAR' => array(),
        'BRACKETS' => array(
            0 => 'color: #080;',
            ),
        'STRINGS' => array(
            // strings were specified on the COMMENT_REGEXP section
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            ),
        'METHODS' => array(),
        'SYMBOLS' => array(
            0 => 'color: #FF9696; font-weight:bold;',   // Comparison & logical
            1 => 'color: #CC0000; font-weight:bold;',   // Aritmethical
            2 => 'color: #993333; font-weight:bold;',   // Elementwise arithmetical
            3 => 'color: #FF0000; font-weight:bold;',   // Arithmetical & assignation
            4 => 'color: #33F;',                        // Indexer
            5 => 'color: #33F;',                        // Delimiters
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array(),
        )
);

?>
geshi/geshi/f1.php0000664000175000017500000001132112014173421013176 0ustar  benbebenbe 'Formula One',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('{' => '}'),
    'COMMENT_REGEXP' => array(
        //Nested Comments
        2 =>  "/(\{(?:\{.*\}|[^\{])*\})/m"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'",'"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[\\\\nrt\'\"?\n]#i",
        //Hexadecimal Char Specs (Utf16 codes, Unicode versions only)
        2 => "#\\\\u[\da-fA-F]{4}#",
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE |
        GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX_0O |
        GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'pred','proc','subr','else','elsif','iff','if','then','false','true',
            'case','of','use','local','mod','end','list','file','all','one','max','min','rel',
            'external','Nil','_stdcall','_cdecl','_addressof','_pred','_file','_line'
            ),
        2 => array(
            'Ascii','Bin','I','L','P','R','S','U'
            ),
        3 => array(
            'Append','in','Dupl','Len','Print','_AllDifferent','_AllAscending',
            '_AllDescending','_Ascending','_Descending'
            )
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '[', ']'),
        1 => array('<', '>','='),
        2 => array('+', '-', '*', '/'),
        3 => array('&', '|'),
        4 => array(':', ';')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #000080;',
            3 => 'color: #000080;',
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000; font-style: italic;',
            2 => 'color: #008000; font-style: italic;',
            'MULTI' => 'color: #008000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #009999; font-weight: bold;',
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #800000;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;',
            1 => 'color: #000000;',
            2 => 'color: #000000;',
            3 => 'color: #000000;',
            4 => 'color: #000000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.f1compiler.com/f1helponline/f1_runtime_library.html#{FNAME}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/cadlisp.php0000664000175000017500000002267212014173422014323 0ustar  benbebenbe 'CAD Lisp',
    'COMMENT_SINGLE' => array(1 => ";"),
    'COMMENT_MULTI' => array(";|" => "|;"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'abs','acad_colordlg','acad_helpdlg','acad_strlsort','action_tile',
            'add_list','alert','alloc','and','angle','angtof','angtos','append','apply',
            'arx','arxload','arxunload','ascii','assoc','atan','atof','atoi','atom',
            'atoms-family','autoarxload','autoload','Boole','boundp','caddr',
            'cadr','car','cdr','chr','client_data_tile','close','command','cond',
            'cons','cos','cvunit','defun','defun-q','defun-q-list-ref',
            'defun-q-list-set','dictadd','dictnext','dictremove','dictrename',
            'dictsearch','dimx_tile','dimy_tile','distance','distof','done_dialog',
            'end_image','end_list','entdel','entget','entlast','entmake',
            'entmakex','entmod','entnext','entsel','entupd','eq','equal','eval','exit',
            'exp','expand','expt','fill_image','findfile','fix','float','foreach','function',
            'gc','gcd','get_attr','get_tile','getangle','getcfg','getcname','getcorner',
            'getdist','getenv','getfiled','getint','getkword','getorient','getpoint',
            'getreal','getstring','getvar','graphscr','grclear','grdraw','grread','grtext',
            'grvecs','handent','help','if','initdia','initget','inters','itoa','lambda','last',
            'layoutlist','length','list','listp','load','load_dialog','log','logand','logior',
            'lsh','mapcar','max','mem','member','menucmd','menugroup','min','minusp','mode_tile',
            'namedobjdict','nentsel','nentselp','new_dialog','nil','not','nth','null',
            'numberp','open','or','osnap','polar','prin1','princ','print','progn','prompt',
            'quit','quote','read','read-char','read-line','redraw','regapp','rem','repeat',
            'reverse','rtos','set','set_tile','setcfg','setenv','setfunhelp','setq','setvar',
            'setview','sin','slide_image','snvalid','sqrt','ssadd','ssdel','ssget','ssgetfirst',
            'sslength','ssmemb','ssname','ssnamex','sssetfirst','start_dialog','start_image',
            'start_list','startapp','strcase','strcat','strlen','subst','substr','t','tablet',
            'tblnext','tblobjname','tblsearch','term_dialog','terpri','textbox','textpage',
            'textscr','trace','trans','type','unload_dialog','untrace','vector_image','ver',
            'vports','wcmatch','while','write-char','write-line','xdroom','xdsize','zerop',
            'vl-acad-defun','vl-acad-undefun','vl-arx-import','vlax-3D-point',
            'vlax-add-cmd','vlax-create-object','vlax-curve-getArea',
            'vlax-curve-getClosestPointTo','vlax-curve-getClosestPointToProjection',
            'vlax-curve-getDistAtParam','vlax-curve-getDistAtPoint',
            'vlax-curve-getEndParam','vlax-curve-getEndPoint',
            'vlax-curve-getFirstDeriv','vlax-curve-getParamAtDist',
            'vlax-curve-getParamAtPoint','vlax-curve-getPointAtDist',
            'vlax-curve-getPointAtParam','vlax-curve-getSecondDeriv',
            'vlax-curve-getStartParam','vlax-curve-getStartPoint',
            'vlax-curve-isClosed','vlax-curve-isPeriodic','vlax-curve-isPlanar',
            'vlax-dump-object','vlax-erased-p','vlax-for','vlax-get-acad-object',
            'vlax-get-object','vlax-get-or-create-object','vlax-get-property',
            'vlax-import-type-library','vlax-invoke-method','vlax-ldata-delete',
            'vlax-ldata-get','vlax-ldata-list','vlax-ldata-put','vlax-ldata-test',
            'vlax-make-safearray','vlax-make-variant','vlax-map-collection',
            'vlax-method-applicable-p','vlax-object-released-p','vlax-product-key',
            'vlax-property-available-p','vlax-put-property','vlax-read-enabled-p',
            'vlax-release-object','vlax-remove-cmd','vlax-safearray-fill',
            'vlax-safearray-get-dim','vlax-safearray-get-element',
            'vlax-safearray-get-l-bound','vlax-safearray-get-u-bound',
            'vlax-safearray-put-element','vlax-safearray-type','vlax-tmatrix',
            'vlax-typeinfo-available-p','vlax-variant-change-type',
            'vlax-variant-type','vlax-variant-value','vlax-write-enabled-p',
            'vl-bb-ref','vl-bb-set','vl-catch-all-apply','vl-catch-all-error-message',
            'vl-catch-all-error-p','vl-cmdf','vl-consp','vl-directory-files','vl-doc-export',
            'vl-doc-import','vl-doc-ref','vl-doc-set','vl-every','vl-exit-with-error',
            'vl-exit-with-value','vl-file-copy','vl-file-delete','vl-file-directory-p',
            'vl-filename-base','vl-filename-directory','vl-filename-extension',
            'vl-filename-mktemp','vl-file-rename','vl-file-size','vl-file-systime',
            'vl-get-resource','vlisp-compile','vl-list-exported-functions',
            'vl-list-length','vl-list-loaded-vlx','vl-load-all','vl-load-com',
            'vl-load-reactors','vl-member-if','vl-member-if-not','vl-position',
            'vl-prin1-to-string','vl-princ-to-string','vl-propagate','vlr-acdb-reactor',
            'vlr-add','vlr-added-p','vlr-beep-reaction','vlr-command-reactor',
            'vlr-current-reaction-name','vlr-data','vlr-data-set',
            'vlr-deepclone-reactor','vlr-docmanager-reactor','vlr-dwg-reactor',
            'vlr-dxf-reactor','vlr-editor-reactor','vl-registry-delete',
            'vl-registry-descendents','vl-registry-read','vl-registry-write',
            'vl-remove','vl-remove-if','vl-remove-if-not','vlr-insert-reactor',
            'vlr-linker-reactor','vlr-lisp-reactor','vlr-miscellaneous-reactor',
            'vlr-mouse-reactor','vlr-notification','vlr-object-reactor',
            'vlr-owner-add','vlr-owner-remove','vlr-owners','vlr-pers','vlr-pers-list',
            'vlr-pers-p','vlr-pers-release','vlr-reaction-names','vlr-reactions',
            'vlr-reaction-set','vlr-reactors','vlr-remove','vlr-remove-all',
            'vlr-set-notification','vlr-sysvar-reactor','vlr-toolbar-reactor',
            'vlr-trace-reaction','vlr-type','vlr-types','vlr-undo-reactor',
            'vlr-wblock-reactor','vlr-window-reactor','vlr-xref-reactor',
            'vl-some','vl-sort','vl-sort-i','vl-string-elt','vl-string-left-trim',
            'vl-string-mismatch','vl-string-position','vl-string-right-trim',
            'vl-string-search','vl-string-subst','vl-string-translate','vl-string-trim',
            'vl-symbol-name','vl-symbolp','vl-symbol-value','vl-unload-vlx','vl-vbaload',
            'vl-vbarun','vl-vlx-loaded-p'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/dcpu16.php0000664000175000017500000000762312014173430014004 0ustar  benbebenbe 'DCPU-16 Assembly',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_HEX_PREFIX,
    'KEYWORDS' => array(
        /*CPU*/
        1 => array(
            'set','add','sub','mul','div','mod','shl','shr','and','bor','xor',
            'ife','ifn','ifg','ifb',
            'jsr'
            ),
        /*registers*/
        2 => array(
            'a','b','c','x','y','z','i','j',
            'pc','sp','o',
            'pop','peek','push' //Special cases with DCPU-16
            ),
        ),
    'SYMBOLS' => array(
        '[', ']', '+', '-', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000088; font-weight:bold;',
            2 => 'color: #0000ff;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000088;'
            ),
        'STRINGS' => array(
            0 => 'color: #7f007f;'
            ),
        'NUMBERS' => array(
            0 => 'color: #880000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            2 => 'color: #993333;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://0x10c.com/doc/dcpu-16.txt',
        2 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Hex numbers
        //0 => '0[0-9a-fA-F]{1,32}[hH]',
        //Binary numbers
        //1 => '\%[01]{1,64}|[01]{1,64}[bB]?(?![^<]*>)',
        //Labels
        2 => '^:[_a-zA-Z][_a-zA-Z0-9]?(?=\s|$)'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\|%\\-])"
            )
        )
);

?>geshi/geshi/oz.php0000664000175000017500000001165212014173453013334 0ustar  benbebenbe 'OZ',
    'COMMENT_SINGLE' => array(1 => '%'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"','\''),
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' => array(),
    'KEYWORDS' => array(
        1 => array(
            'declare','local','in','end','proc','fun','functor','require','prepare',
            'import','export','define','at','case','then','else','of','elseof',
            'elsecase','if','elseif','class','from','prop','attr','feat','meth',
            'self','true','false','unit','div','mod','andthen','orelse','cond','or',
            'dis','choice','not','thread','try','catch','finally','raise','lock',
            'skip','fail','for','do'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true
        ),
    'SYMBOLS' => array(
        '@', '!', '|', '<-', ':=', '<', '>', '=<', '>=', '<=', '#', '~', '.',
        '*', '-', '+', '/', '<:', '>:', '=:', '=<:', '>=:', '\\=', '\\=:', ',',
        '!!', '...', '==', '::', ':::'
        ),
    'STYLES' => array(
        'REGEXPS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #00a030;',
            3 => 'color: #bc8f8f;',
            4 => 'color: #0000ff;',
            5 => 'color: #a020f0;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #bc8f8f;'
            ),
        'KEYWORDS' => array(
            1 => 'color: #a020f0;'
            ),
        'COMMENTS' => array(
            1 => 'color: #B22222;',
            'MULTI' => 'color: #B22222;'
            ),
        'STRINGS' => array(
            0 => 'color: #bc8f8f;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #a020f0;'
            ),
        'BRACKETS' => array(),
        'NUMBERS' => array(),
        'METHODS' => array(),
        'SCRIPT' => array()
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'URLS' => array(
        1 => ''
        ),
    'REGEXPS' => array(
        // function and procedure definition
        1 => array(
            GESHI_SEARCH => "(proc|fun)([^{}\n\)]*)(\\{)([\$A-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9_.]*)",
            GESHI_REPLACE => '\4',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1\2\3',
            GESHI_AFTER => ''
            ),
        // class definition
        2 => array(
            GESHI_SEARCH => "(class)([^A-Z\$]*)([\$A-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9_.]*)",
            GESHI_REPLACE => '\3\4',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1\2',
            GESHI_AFTER => ''
            ),
        // single character
        3 => array(
            GESHI_SEARCH => "&.",
            GESHI_REPLACE => '\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        // method definition
        4 => array(
            GESHI_SEARCH => "(meth)([^a-zA-Z]+)([a-zA-Z\300-\326\330-\336][A-Z\300-\326\330-\336a-z\337-\366\370-\3770-9]*)",
            GESHI_REPLACE => '\3',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1\2',
            GESHI_AFTER => ''
            ),
        // highlight "[]"
        // ([] is actually a keyword, but that causes problems in validation; putting it into symbols doesn't work.)
        5 => array(
            GESHI_SEARCH => "\[\]",
            GESHI_REPLACE => '\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            )
        )
);

?>geshi/geshi/urbi.php0000664000175000017500000001567012014173370013647 0ustar  benbebenbe 'Urbi',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Multiline-continued single-line comments
        1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Multiline-continued preprocessor define
        2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m',
        // Urbi warning.
        3 => "#\[[0-9a-f]{8}:warning\].*#",
        // Urbi message from echo.
        4 => '#\[[0-9a-f]{8}\] \*\*\*.*#',
        // Urbi error message.
        6 => '#\[[0-9a-f]{8}:error\].*#',
        // Urbi system message.
        5 => '#\[00.*\].*#',
        // Nested comment. Max depth 4.
        7 => '#\/\*(.|\n)*\/\*(.|\n)*\*\/(.|\n)*\*\/#',
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(
        0 => '"',
        1 => '\'',
        ),
    // For Urbi, disable escape char is better.
    'ESCAPE_CHAR' => '\\',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[abfnrtv\\\'\"?\n]#",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{2}#",
        //Hexadecimal Char Specs
        3 => "#\\\\u[\da-fA-F]{4}#",
        //Hexadecimal Char Specs
        4 => "#\\\\U[\da-fA-F]{8}#",
        //Octal Char Specs
        5 => "#\\\\[0-7]{1,3}#",
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        // Condition keywords.
        1 => array(
            'at', 'at;', 'at|', 'at&', 'at,', 'break', 'call', 'case', 'catch', 'continue',
            'do', 'else', 'every', 'every&', 'every,', 'every;', 'every|', 'for', 'for&',
            'for,', 'for;', 'foreach', 'for|', 'freezeif', 'goto', 'if', 'in', 'loop',
            'loop&', 'loop,', 'loop;', 'loop|', 'or_eq', 'stopif', 'switch', 'try',
            'waituntil', 'when', 'whenever', 'while', 'while&', 'while,', 'while;',
            'while|', 'throw', 'onleave', 'watch', 'return', 'and_eq', 'default', 'finally',
            'timeout', 'xor_eq'
            ),
        // Type.
        2 => array(
            'virtual', 'using', 'namespace', 'inline', 'protected', 'private', 'public',
            'typename', 'typeid', 'class', 'const_cast', 'dynamic_cast', 'friend',
            'template', 'enum', 'static_cast', 'reinterpret_cast', 'mutable', 'explicit'
            ),
        // Standard function.
        3 => array(
            'this', 'sizeof', 'delete', 'assert', 'isdef', 'compl', 'detach',
            'disown', '__HERE__', 'asm'
            ),
        // Type.
        4 => array(
            'char', 'const', 'double', 'int', 'long', 'typedef', 'union',
            'unsigned', 'var', 'short', 'wchar_t', 'volatile', 'signed', 'bool',
            'float', 'struct', 'auto', 'register', 'static', 'extern', 'function',
            'export', 'external', 'internal', 'closure', 'BIN'
            ),
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '{', '}', '[', ']'),
        1 => array('<', '>','=', '!=', '==', '==='),
        2 => array('+', '-', '*', '/', '%', 'bitand', 'bitor', 'xor'),
        3 => array('!', '^', '&', '|'),
        4 => array('?', ':', ';')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #0000ff;',
            3 => 'color: #0000dd;',
            4 => 'color: #0000ff;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666;',
            2 => 'color: #339900;',
            3 => 'color: #d46b0f;',
            4 => 'color: #20b537;',
            5 => 'color: #73776f;',
            6 => 'color: #a71616;',
            7 => 'color: #666666;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #ff0000;',
            1 => 'color: #ff0000;',
            ),
        'BRACKETS' => array(
            0 => 'color: #7a0874; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            1 => 'color: #007788;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;'
            ),
        'METHODS' => array(
            1 => 'color: #007788;',
            2 => 'color: #007788;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;',
            1 => 'color: #0000f8;',
            2 => 'color: #000040;',
            3 => 'color: #000040; font-weight: bold;',
            4 => 'color: #008080;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000dd',
            1 => 'color: #0000dd;',
            2 => 'color: #0000dd;',
            3 => 'color: #0000dd;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::',
        // FIXME: add -> splitter.
        ),
    'REGEXPS' => array(
        0 => '0x[0-9a-fA-F]([0-9a-fA-F_]*[0-9a-fA-F])*',
        1 => '[0-9]([0-9_]*[0-9])*(e|E)(-|\+)?[0-9]([0-9_]*[0-9])*',
        2 => '[0-9]([0-9_]*[0-9])*(min|s|ms|h|d)',
        3 => '[0-9]+_([0-9_])*[0-9]',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
);

?>
geshi/geshi/csharp.php0000664000175000017500000002220512014173423014155 0ustar  benbebenbe 'C#',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Using and Namespace directives (basic support)
        //Please note that the alias syntax for using is not supported
        3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'HARDQUOTE' => array('@"', '"'),
    'HARDESCAPE' => array('"'),
    'HARDCHAR' => '"',
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'abstract', 'add', 'as', 'base', 'break', 'by', 'case', 'catch', 'const', 'continue',
            'default', 'do', 'else', 'event', 'explicit', 'extern', 'false',
            'finally', 'fixed', 'for', 'foreach', 'from', 'get', 'goto', 'group', 'if',
            'implicit', 'in', 'into', 'internal', 'join', 'lock', 'namespace', 'null',
            'operator', 'out', 'override', 'params', 'partial', 'private',
            'protected', 'public', 'readonly', 'remove', 'ref', 'return', 'sealed',
            'select', 'set', 'stackalloc', 'static', 'switch', 'this', 'throw', 'true',
            'try', 'unsafe', 'using', 'var', 'value', 'virtual', 'volatile', 'where',
            'while', 'yield'
            ),
        2 => array(
            '#elif', '#endif', '#endregion', '#else', '#error', '#define', '#if',
            '#line', '#region', '#undef', '#warning'
            ),
        3 => array(
            'checked', 'is', 'new', 'sizeof', 'typeof', 'unchecked'
            ),
        4 => array(
            'bool', 'byte', 'char', 'class', 'decimal', 'delegate', 'double',
            'dynamic', 'enum', 'float', 'int', 'interface', 'long', 'object', 'sbyte',
            'short', 'string', 'struct', 'uint', 'ulong', 'ushort', 'void'
            ),
        5 => array(
            'Microsoft.Win32',
            'System',
            'System.CodeDOM',
            'System.CodeDOM.Compiler',
            'System.Collections',
            'System.Collections.Bases',
            'System.ComponentModel',
            'System.ComponentModel.Design',
            'System.ComponentModel.Design.CodeModel',
            'System.Configuration',
            'System.Configuration.Assemblies',
            'System.Configuration.Core',
            'System.Configuration.Install',
            'System.Configuration.Interceptors',
            'System.Configuration.Schema',
            'System.Configuration.Web',
            'System.Core',
            'System.Data',
            'System.Data.ADO',
            'System.Data.Design',
            'System.Data.Internal',
            'System.Data.SQL',
            'System.Data.SQLTypes',
            'System.Data.XML',
            'System.Data.XML.DOM',
            'System.Data.XML.XPath',
            'System.Data.XML.XSLT',
            'System.Diagnostics',
            'System.Diagnostics.SymbolStore',
            'System.DirectoryServices',
            'System.Drawing',
            'System.Drawing.Design',
            'System.Drawing.Drawing2D',
            'System.Drawing.Imaging',
            'System.Drawing.Printing',
            'System.Drawing.Text',
            'System.Globalization',
            'System.IO',
            'System.IO.IsolatedStorage',
            'System.Messaging',
            'System.Net',
            'System.Net.Sockets',
            'System.NewXml',
            'System.NewXml.XPath',
            'System.NewXml.Xsl',
            'System.Reflection',
            'System.Reflection.Emit',
            'System.Resources',
            'System.Runtime.InteropServices',
            'System.Runtime.InteropServices.Expando',
            'System.Runtime.Remoting',
            'System.Runtime.Serialization',
            'System.Runtime.Serialization.Formatters',
            'System.Runtime.Serialization.Formatters.Binary',
            'System.Security',
            'System.Security.Cryptography',
            'System.Security.Cryptography.X509Certificates',
            'System.Security.Permissions',
            'System.Security.Policy',
            'System.Security.Principal',
            'System.ServiceProcess',
            'System.Text',
            'System.Text.RegularExpressions',
            'System.Threading',
            'System.Timers',
            'System.Web',
            'System.Web.Caching',
            'System.Web.Configuration',
            'System.Web.Security',
            'System.Web.Services',
            'System.Web.Services.Description',
            'System.Web.Services.Discovery',
            'System.Web.Services.Protocols',
            'System.Web.UI',
            'System.Web.UI.Design',
            'System.Web.UI.Design.WebControls',
            'System.Web.UI.Design.WebControls.ListControls',
            'System.Web.UI.HtmlControls',
            'System.Web.UI.WebControls',
            'System.WinForms',
            'System.WinForms.ComponentModel',
            'System.WinForms.Design',
            'System.Xml',
            'System.Xml.Serialization',
            'System.Xml.Serialization.Code',
            'System.Xml.Serialization.Schema'
            ),
        ),
    'SYMBOLS' => array(
        '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';',
        '(', ')', '{', '}', '[', ']', '|', '.'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF; font-weight: bold;',
            2 => 'color: #FF8000; font-weight: bold;',
            3 => 'color: #008000;',
            4 => 'color: #6666cc; font-weight: bold;',
            5 => 'color: #000000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008080; font-style: italic;',
            2 => 'color: #008080;',
            3 => 'color: #008080;',
            'MULTI' => 'color: #008080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008080; font-weight: bold;',
            'HARD' => 'color: #008080; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #008000;'
            ),
        'STRINGS' => array(
            0 => 'color: #666666;',
            'HARD' => 'color: #666666;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000FF;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com',
        4 => '',
        5 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?|^])",
            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_%\\-])"
        )
    )
);

?>geshi/geshi/autoit.php0000664000175000017500000022002412014173436014205 0ustar  benbebenbe 'AutoIt',
    'COMMENT_SINGLE' => array(';'),
    'COMMENT_MULTI' => array(
        '#comments-start' => '#comments-end',
        '#cs' => '#ce'),
    'COMMENT_REGEXP' => array(
        0 => '/(? '/(?<=include)\s+<.*?>/'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'And','ByRef','Case','Const','ContinueCase','ContinueLoop',
            'Default','Dim','Do','Else','ElseIf','EndFunc','EndIf','EndSelect',
            'EndSwitch','EndWith','Enum','Exit','ExitLoop','False','For','Func',
            'Global','If','In','Local','Next','Not','Or','ReDim','Return',
            'Select','Step','Switch','Then','To','True','Until','WEnd','While',
            'With'
            ),
        2 => array(
            '@AppDataCommonDir','@AppDataDir','@AutoItExe','@AutoItPID',
            '@AutoItUnicode','@AutoItVersion','@AutoItX64','@COM_EventObj',
            '@CommonFilesDir','@Compiled','@ComputerName','@ComSpec','@CR',
            '@CRLF','@DesktopCommonDir','@DesktopDepth','@DesktopDir',
            '@DesktopHeight','@DesktopRefresh','@DesktopWidth',
            '@DocumentsCommonDir','@error','@exitCode','@exitMethod',
            '@extended','@FavoritesCommonDir','@FavoritesDir','@GUI_CtrlHandle',
            '@GUI_CtrlId','@GUI_DragFile','@GUI_DragId','@GUI_DropId',
            '@GUI_WinHandle','@HomeDrive','@HomePath','@HomeShare',
            '@HotKeyPressed','@HOUR','@InetGetActive','@InetGetBytesRead',
            '@IPAddress1','@IPAddress2','@IPAddress3','@IPAddress4','@KBLayout',
            '@LF','@LogonDNSDomain','@LogonDomain','@LogonServer','@MDAY',
            '@MIN','@MON','@MyDocumentsDir','@NumParams','@OSBuild','@OSLang',
            '@OSServicePack','@OSTYPE','@OSVersion','@ProcessorArch',
            '@ProgramFilesDir','@ProgramsCommonDir','@ProgramsDir','@ScriptDir',
            '@ScriptFullPath','@ScriptLineNumber','@ScriptName','@SEC',
            '@StartMenuCommonDir','@StartMenuDir','@StartupCommonDir',
            '@StartupDir','@SW_DISABLE','@SW_ENABLE','@SW_HIDE','@SW_LOCK',
            '@SW_MAXIMIZE','@SW_MINIMIZE','@SW_RESTORE','@SW_SHOW',
            '@SW_SHOWDEFAULT','@SW_SHOWMAXIMIZED','@SW_SHOWMINIMIZED',
            '@SW_SHOWMINNOACTIVE','@SW_SHOWNA','@SW_SHOWNOACTIVATE',
            '@SW_SHOWNORMAL','@SW_UNLOCK','@SystemDir','@TAB','@TempDir',
            '@TRAY_ID','@TrayIconFlashing','@TrayIconVisible','@UserName',
            '@UserProfileDir','@WDAY','@WindowsDir','@WorkingDir','@YDAY',
            '@YEAR'
            ),
        3 => array(
            'Abs','ACos','AdlibDisable','AdlibEnable','Asc','AscW','ASin',
            'Assign','ATan','AutoItSetOption','AutoItWinGetTitle',
            'AutoItWinSetTitle','Beep','Binary','BinaryLen','BinaryMid',
            'BinaryToString','BitAND','BitNOT','BitOR','BitRotate','BitShift',
            'BitXOR','BlockInput','Break','Call','CDTray','Ceiling','Chr',
            'ChrW','ClipGet','ClipPut','ConsoleRead','ConsoleWrite',
            'ConsoleWriteError','ControlClick','ControlCommand',
            'ControlDisable','ControlEnable','ControlFocus','ControlGetFocus',
            'ControlGetHandle','ControlGetPos','ControlGetText','ControlHide',
            'ControlListView','ControlMove','ControlSend','ControlSetText',
            'ControlShow','ControlTreeView','Cos','Dec','DirCopy','DirCreate',
            'DirGetSize','DirMove','DirRemove','DllCall','DllCallbackFree',
            'DllCallbackGetPtr','DllCallbackRegister','DllClose','DllOpen',
            'DllStructCreate','DllStructGetData','DllStructGetPtr',
            'DllStructGetSize','DllStructSetData','DriveGetDrive',
            'DriveGetFileSystem','DriveGetLabel','DriveGetSerial',
            'DriveGetType','DriveMapAdd','DriveMapDel','DriveMapGet',
            'DriveSetLabel','DriveSpaceFree','DriveSpaceTotal','DriveStatus',
            'EnvGet','EnvSet','EnvUpdate','Eval','Execute','Exp',
            'FileChangeDir','FileClose','FileCopy','FileCreateNTFSLink',
            'FileCreateShortcut','FileDelete','FileExists','FileFindFirstFile',
            'FileFindNextFile','FileGetAttrib','FileGetLongName',
            'FileGetShortcut','FileGetShortName','FileGetSize','FileGetTime',
            'FileGetVersion','FileInstall','FileMove','FileOpen',
            'FileOpenDialog','FileRead','FileReadLine','FileRecycle',
            'FileRecycleEmpty','FileSaveDialog','FileSelectFolder',
            'FileSetAttrib','FileSetTime','FileWrite','FileWriteLine','Floor',
            'FtpSetProxy','GUICreate','GUICtrlCreateAvi','GUICtrlCreateButton',
            'GUICtrlCreateCheckbox','GUICtrlCreateCombo',
            'GUICtrlCreateContextMenu','GUICtrlCreateDate','GUICtrlCreateDummy',
            'GUICtrlCreateEdit','GUICtrlCreateGraphic','GUICtrlCreateGroup',
            'GUICtrlCreateIcon','GUICtrlCreateInput','GUICtrlCreateLabel',
            'GUICtrlCreateList','GUICtrlCreateListView',
            'GUICtrlCreateListViewItem','GUICtrlCreateMenu',
            'GUICtrlCreateMenuItem','GUICtrlCreateMonthCal','GUICtrlCreateObj',
            'GUICtrlCreatePic','GUICtrlCreateProgress','GUICtrlCreateRadio',
            'GUICtrlCreateSlider','GUICtrlCreateTab','GUICtrlCreateTabItem',
            'GUICtrlCreateTreeView','GUICtrlCreateTreeViewItem',
            'GUICtrlCreateUpdown','GUICtrlDelete','GUICtrlGetHandle',
            'GUICtrlGetState','GUICtrlRead','GUICtrlRecvMsg',
            'GUICtrlRegisterListViewSort','GUICtrlSendMsg','GUICtrlSendToDummy',
            'GUICtrlSetBkColor','GUICtrlSetColor','GUICtrlSetCursor',
            'GUICtrlSetData','GUICtrlSetFont','GUICtrlSetDefColor',
            'GUICtrlSetDefBkColor','GUICtrlSetGraphic','GUICtrlSetImage',
            'GUICtrlSetLimit','GUICtrlSetOnEvent','GUICtrlSetPos',
            'GUICtrlSetResizing','GUICtrlSetState','GUICtrlSetStyle',
            'GUICtrlSetTip','GUIDelete','GUIGetCursorInfo','GUIGetMsg',
            'GUIGetStyle','GUIRegisterMsg','GUISetAccelerators()',
            'GUISetBkColor','GUISetCoord','GUISetCursor','GUISetFont',
            'GUISetHelp','GUISetIcon','GUISetOnEvent','GUISetState',
            'GUISetStyle','GUIStartGroup','GUISwitch','Hex','HotKeySet',
            'HttpSetProxy','HWnd','InetGet','InetGetSize','IniDelete','IniRead',
            'IniReadSection','IniReadSectionNames','IniRenameSection',
            'IniWrite','IniWriteSection','InputBox','Int','IsAdmin','IsArray',
            'IsBinary','IsBool','IsDeclared','IsDllStruct','IsFloat','IsHWnd',
            'IsInt','IsKeyword','IsNumber','IsObj','IsPtr','IsString','Log',
            'MemGetStats','Mod','MouseClick','MouseClickDrag','MouseDown',
            'MouseGetCursor','MouseGetPos','MouseMove','MouseUp','MouseWheel',
            'MsgBox','Number','ObjCreate','ObjEvent','ObjGet','ObjName','Opt',
            'Ping','PixelChecksum','PixelGetColor','PixelSearch','PluginClose',
            'PluginOpen','ProcessClose','ProcessExists','ProcessGetStats',
            'ProcessList','ProcessSetPriority','ProcessWait','ProcessWaitClose',
            'ProgressOff','ProgressOn','ProgressSet','Ptr','Random','RegDelete',
            'RegEnumKey','RegEnumVal','RegRead','RegWrite','Round','Run',
            'RunAs','RunAsWait','RunWait','Send','SendKeepActive','SetError',
            'SetExtended','ShellExecute','ShellExecuteWait','Shutdown','Sin',
            'Sleep','SoundPlay','SoundSetWaveVolume','SplashImageOn',
            'SplashOff','SplashTextOn','Sqrt','SRandom','StatusbarGetText',
            'StderrRead','StdinWrite','StdioClose','StdoutRead','String',
            'StringAddCR','StringCompare','StringFormat','StringInStr',
            'StringIsAlNum','StringIsAlpha','StringIsASCII','StringIsDigit',
            'StringIsFloat','StringIsInt','StringIsLower','StringIsSpace',
            'StringIsUpper','StringIsXDigit','StringLeft','StringLen',
            'StringLower','StringMid','StringRegExp','StringRegExpReplace',
            'StringReplace','StringRight','StringSplit','StringStripCR',
            'StringStripWS','StringToBinary','StringTrimLeft','StringTrimRight',
            'StringUpper','Tan','TCPAccept','TCPCloseSocket','TCPConnect',
            'TCPListen','TCPNameToIP','TCPRecv','TCPSend','TCPShutdown',
            'TCPStartup','TimerDiff','TimerInit','ToolTip','TrayCreateItem',
            'TrayCreateMenu','TrayGetMsg','TrayItemDelete','TrayItemGetHandle',
            'TrayItemGetState','TrayItemGetText','TrayItemSetOnEvent',
            'TrayItemSetState','TrayItemSetText','TraySetClick','TraySetIcon',
            'TraySetOnEvent','TraySetPauseIcon','TraySetState','TraySetToolTip',
            'TrayTip','UBound','UDPBind','UDPCloseSocket','UDPOpen','UDPRecv',
            'UDPSend','UDPShutdown','UDPStartup','VarGetType','WinActivate',
            'WinActive','WinClose','WinExists','WinFlash','WinGetCaretPos',
            'WinGetClassList','WinGetClientSize','WinGetHandle','WinGetPos',
            'WinGetProcess','WinGetState','WinGetText','WinGetTitle','WinKill',
            'WinList','WinMenuSelectItem','WinMinimizeAll','WinMinimizeAllUndo',
            'WinMove','WinSetOnTop','WinSetState','WinSetTitle','WinSetTrans',
            'WinWait','WinWaitActive','WinWaitClose','WinWaitNotActive'
            ),
        4 => array(
            'ArrayAdd','ArrayBinarySearch','ArrayConcatenate','ArrayDelete',
            'ArrayDisplay','ArrayFindAll','ArrayInsert','ArrayMax',
            'ArrayMaxIndex','ArrayMin','ArrayMinIndex','ArrayPop','ArrayPush',
            'ArrayReverse','ArraySearch','ArraySort','ArraySwap','ArrayToClip',
            'ArrayToString','ArrayTrim','ChooseColor','ChooseFont',
            'ClipBoard_ChangeChain','ClipBoard_Close','ClipBoard_CountFormats',
            'ClipBoard_Empty','ClipBoard_EnumFormats','ClipBoard_FormatStr',
            'ClipBoard_GetData','ClipBoard_GetDataEx','ClipBoard_GetFormatName',
            'ClipBoard_GetOpenWindow','ClipBoard_GetOwner',
            'ClipBoard_GetPriorityFormat','ClipBoard_GetSequenceNumber',
            'ClipBoard_GetViewer','ClipBoard_IsFormatAvailable',
            'ClipBoard_Open','ClipBoard_RegisterFormat','ClipBoard_SetData',
            'ClipBoard_SetDataEx','ClipBoard_SetViewer','ClipPutFile',
            'ColorConvertHSLtoRGB','ColorConvertRGBtoHSL','ColorGetBlue',
            'ColorGetGreen','ColorGetRed','Date_Time_CompareFileTime',
            'Date_Time_DOSDateTimeToArray','Date_Time_DOSDateTimeToFileTime',
            'Date_Time_DOSDateTimeToStr','Date_Time_DOSDateToArray',
            'Date_Time_DOSDateToStr','Date_Time_DOSTimeToArray',
            'Date_Time_DOSTimeToStr','Date_Time_EncodeFileTime',
            'Date_Time_EncodeSystemTime','Date_Time_FileTimeToArray',
            'Date_Time_FileTimeToDOSDateTime',
            'Date_Time_FileTimeToLocalFileTime','Date_Time_FileTimeToStr',
            'Date_Time_FileTimeToSystemTime','Date_Time_GetFileTime',
            'Date_Time_GetLocalTime','Date_Time_GetSystemTime',
            'Date_Time_GetSystemTimeAdjustment',
            'Date_Time_GetSystemTimeAsFileTime',
            'Date_Time_GetSystemTimes','Date_Time_GetTickCount',
            'Date_Time_GetTimeZoneInformation',
            'Date_Time_LocalFileTimeToFileTime','Date_Time_SetFileTime',
            'Date_Time_SetLocalTime','Date_Time_SetSystemTime',
            'Date_Time_SetSystemTimeAdjustment',
            'Date_Time_SetTimeZoneInformation','Date_Time_SystemTimeToArray',
            'Date_Time_SystemTimeToDateStr','Date_Time_SystemTimeToDateTimeStr',
            'Date_Time_SystemTimeToFileTime','Date_Time_SystemTimeToTimeStr',
            'Date_Time_SystemTimeToTzSpecificLocalTime',
            'Date_Time_TzSpecificLocalTimeToSystemTime','DateAdd',
            'DateDayOfWeek','DateDaysInMonth','DateDiff','DateIsLeapYear',
            'DateIsValid','DateTimeFormat','DateTimeSplit','DateToDayOfWeek',
            'DateToDayOfWeekISO','DateToDayValue','DateToMonth',
            'DayValueToDate','DebugBugReportEnv','DebugOut','DebugSetup',
            'Degree','EventLog__Backup','EventLog__Clear','EventLog__Close',
            'EventLog__Count','EventLog__DeregisterSource','EventLog__Full',
            'EventLog__Notify','EventLog__Oldest','EventLog__Open',
            'EventLog__OpenBackup','EventLog__Read','EventLog__RegisterSource',
            'EventLog__Report','FileCountLines','FileCreate','FileListToArray',
            'FilePrint','FileReadToArray','FileWriteFromArray',
            'FileWriteLog','FileWriteToLine','GDIPlus_ArrowCapCreate',
            'GDIPlus_ArrowCapDispose','GDIPlus_ArrowCapGetFillState',
            'GDIPlus_ArrowCapGetHeight','GDIPlus_ArrowCapGetMiddleInset',
            'GDIPlus_ArrowCapGetWidth','GDIPlus_ArrowCapSetFillState',
            'GDIPlus_ArrowCapSetHeight','GDIPlus_ArrowCapSetMiddleInset',
            'GDIPlus_ArrowCapSetWidth','GDIPlus_BitmapCloneArea',
            'GDIPlus_BitmapCreateFromFile','GDIPlus_BitmapCreateFromGraphics',
            'GDIPlus_BitmapCreateFromHBITMAP',
            'GDIPlus_BitmapCreateHBITMAPFromBitmap','GDIPlus_BitmapDispose',
            'GDIPlus_BitmapLockBits','GDIPlus_BitmapUnlockBits',
            'GDIPlus_BrushClone','GDIPlus_BrushCreateSolid',
            'GDIPlus_BrushDispose','GDIPlus_BrushGetType',
            'GDIPlus_CustomLineCapDispose','GDIPlus_Decoders',
            'GDIPlus_DecodersGetCount','GDIPlus_DecodersGetSize',
            'GDIPlus_Encoders','GDIPlus_EncodersGetCLSID',
            'GDIPlus_EncodersGetCount','GDIPlus_EncodersGetParamList',
            'GDIPlus_EncodersGetParamListSize','GDIPlus_EncodersGetSize',
            'GDIPlus_FontCreate','GDIPlus_FontDispose',
            'GDIPlus_FontFamilyCreate','GDIPlus_FontFamilyDispose',
            'GDIPlus_GraphicsClear','GDIPlus_GraphicsCreateFromHDC',
            'GDIPlus_GraphicsCreateFromHWND','GDIPlus_GraphicsDispose',
            'GDIPlus_GraphicsDrawArc','GDIPlus_GraphicsDrawBezier',
            'GDIPlus_GraphicsDrawClosedCurve','GDIPlus_GraphicsDrawCurve',
            'GDIPlus_GraphicsDrawEllipse','GDIPlus_GraphicsDrawImage',
            'GDIPlus_GraphicsDrawImageRect','GDIPlus_GraphicsDrawImageRectRect',
            'GDIPlus_GraphicsDrawLine','GDIPlus_GraphicsDrawPie',
            'GDIPlus_GraphicsDrawPolygon','GDIPlus_GraphicsDrawRect',
            'GDIPlus_GraphicsDrawString','GDIPlus_GraphicsDrawStringEx',
            'GDIPlus_GraphicsFillClosedCurve','GDIPlus_GraphicsFillEllipse',
            'GDIPlus_GraphicsFillPie','GDIPlus_GraphicsFillRect',
            'GDIPlus_GraphicsGetDC','GDIPlus_GraphicsGetSmoothingMode',
            'GDIPlus_GraphicsMeasureString','GDIPlus_GraphicsReleaseDC',
            'GDIPlus_GraphicsSetSmoothingMode','GDIPlus_GraphicsSetTransform',
            'GDIPlus_ImageDispose','GDIPlus_ImageGetGraphicsContext',
            'GDIPlus_ImageGetHeight','GDIPlus_ImageGetWidth',
            'GDIPlus_ImageLoadFromFile','GDIPlus_ImageSaveToFile',
            'GDIPlus_ImageSaveToFileEx','GDIPlus_MatrixCreate',
            'GDIPlus_MatrixDispose','GDIPlus_MatrixRotate','GDIPlus_ParamAdd',
            'GDIPlus_ParamInit','GDIPlus_PenCreate','GDIPlus_PenDispose',
            'GDIPlus_PenGetAlignment','GDIPlus_PenGetColor',
            'GDIPlus_PenGetCustomEndCap','GDIPlus_PenGetDashCap',
            'GDIPlus_PenGetDashStyle','GDIPlus_PenGetEndCap',
            'GDIPlus_PenGetWidth','GDIPlus_PenSetAlignment',
            'GDIPlus_PenSetColor','GDIPlus_PenSetCustomEndCap',
            'GDIPlus_PenSetDashCap','GDIPlus_PenSetDashStyle',
            'GDIPlus_PenSetEndCap','GDIPlus_PenSetWidth','GDIPlus_RectFCreate',
            'GDIPlus_Shutdown','GDIPlus_Startup','GDIPlus_StringFormatCreate',
            'GDIPlus_StringFormatDispose','GetIP','GUICtrlAVI_Close',
            'GUICtrlAVI_Create','GUICtrlAVI_Destroy','GUICtrlAVI_Open',
            'GUICtrlAVI_OpenEx','GUICtrlAVI_Play','GUICtrlAVI_Seek',
            'GUICtrlAVI_Show','GUICtrlAVI_Stop','GUICtrlButton_Click',
            'GUICtrlButton_Create','GUICtrlButton_Destroy',
            'GUICtrlButton_Enable','GUICtrlButton_GetCheck',
            'GUICtrlButton_GetFocus','GUICtrlButton_GetIdealSize',
            'GUICtrlButton_GetImage','GUICtrlButton_GetImageList',
            'GUICtrlButton_GetState','GUICtrlButton_GetText',
            'GUICtrlButton_GetTextMargin','GUICtrlButton_SetCheck',
            'GUICtrlButton_SetFocus','GUICtrlButton_SetImage',
            'GUICtrlButton_SetImageList','GUICtrlButton_SetSize',
            'GUICtrlButton_SetState','GUICtrlButton_SetStyle',
            'GUICtrlButton_SetText','GUICtrlButton_SetTextMargin',
            'GUICtrlButton_Show','GUICtrlComboBox_AddDir',
            'GUICtrlComboBox_AddString','GUICtrlComboBox_AutoComplete',
            'GUICtrlComboBox_BeginUpdate','GUICtrlComboBox_Create',
            'GUICtrlComboBox_DeleteString','GUICtrlComboBox_Destroy',
            'GUICtrlComboBox_EndUpdate','GUICtrlComboBox_FindString',
            'GUICtrlComboBox_FindStringExact','GUICtrlComboBox_GetComboBoxInfo',
            'GUICtrlComboBox_GetCount','GUICtrlComboBox_GetCurSel',
            'GUICtrlComboBox_GetDroppedControlRect',
            'GUICtrlComboBox_GetDroppedControlRectEx',
            'GUICtrlComboBox_GetDroppedState','GUICtrlComboBox_GetDroppedWidth',
            'GUICtrlComboBox_GetEditSel','GUICtrlComboBox_GetEditText',
            'GUICtrlComboBox_GetExtendedUI',
            'GUICtrlComboBox_GetHorizontalExtent',
            'GUICtrlComboBox_GetItemHeight','GUICtrlComboBox_GetLBText',
            'GUICtrlComboBox_GetLBTextLen','GUICtrlComboBox_GetList',
            'GUICtrlComboBox_GetListArray','GUICtrlComboBox_GetLocale',
            'GUICtrlComboBox_GetLocaleCountry','GUICtrlComboBox_GetLocaleLang',
            'GUICtrlComboBox_GetLocalePrimLang',
            'GUICtrlComboBox_GetLocaleSubLang','GUICtrlComboBox_GetMinVisible',
            'GUICtrlComboBox_GetTopIndex','GUICtrlComboBox_InitStorage',
            'GUICtrlComboBox_InsertString','GUICtrlComboBox_LimitText',
            'GUICtrlComboBox_ReplaceEditSel','GUICtrlComboBox_ResetContent',
            'GUICtrlComboBox_SelectString','GUICtrlComboBox_SetCurSel',
            'GUICtrlComboBox_SetDroppedWidth','GUICtrlComboBox_SetEditSel',
            'GUICtrlComboBox_SetEditText','GUICtrlComboBox_SetExtendedUI',
            'GUICtrlComboBox_SetHorizontalExtent',
            'GUICtrlComboBox_SetItemHeight','GUICtrlComboBox_SetMinVisible',
            'GUICtrlComboBox_SetTopIndex','GUICtrlComboBox_ShowDropDown',
            'GUICtrlComboBoxEx_AddDir','GUICtrlComboBoxEx_AddString',
            'GUICtrlComboBoxEx_BeginUpdate','GUICtrlComboBoxEx_Create',
            'GUICtrlComboBoxEx_CreateSolidBitMap',
            'GUICtrlComboBoxEx_DeleteString','GUICtrlComboBoxEx_Destroy',
            'GUICtrlComboBoxEx_EndUpdate','GUICtrlComboBoxEx_FindStringExact',
            'GUICtrlComboBoxEx_GetComboBoxInfo',
            'GUICtrlComboBoxEx_GetComboControl','GUICtrlComboBoxEx_GetCount',
            'GUICtrlComboBoxEx_GetCurSel',
            'GUICtrlComboBoxEx_GetDroppedControlRect',
            'GUICtrlComboBoxEx_GetDroppedControlRectEx',
            'GUICtrlComboBoxEx_GetDroppedState',
            'GUICtrlComboBoxEx_GetDroppedWidth',
            'GUICtrlComboBoxEx_GetEditControl','GUICtrlComboBoxEx_GetEditSel',
            'GUICtrlComboBoxEx_GetEditText',
            'GUICtrlComboBoxEx_GetExtendedStyle',
            'GUICtrlComboBoxEx_GetExtendedUI','GUICtrlComboBoxEx_GetImageList',
            'GUICtrlComboBoxEx_GetItem','GUICtrlComboBoxEx_GetItemEx',
            'GUICtrlComboBoxEx_GetItemHeight','GUICtrlComboBoxEx_GetItemImage',
            'GUICtrlComboBoxEx_GetItemIndent',
            'GUICtrlComboBoxEx_GetItemOverlayImage',
            'GUICtrlComboBoxEx_GetItemParam',
            'GUICtrlComboBoxEx_GetItemSelectedImage',
            'GUICtrlComboBoxEx_GetItemText','GUICtrlComboBoxEx_GetItemTextLen',
            'GUICtrlComboBoxEx_GetList','GUICtrlComboBoxEx_GetListArray',
            'GUICtrlComboBoxEx_GetLocale','GUICtrlComboBoxEx_GetLocaleCountry',
            'GUICtrlComboBoxEx_GetLocaleLang',
            'GUICtrlComboBoxEx_GetLocalePrimLang',
            'GUICtrlComboBoxEx_GetLocaleSubLang',
            'GUICtrlComboBoxEx_GetMinVisible','GUICtrlComboBoxEx_GetTopIndex',
            'GUICtrlComboBoxEx_InitStorage','GUICtrlComboBoxEx_InsertString',
            'GUICtrlComboBoxEx_LimitText','GUICtrlComboBoxEx_ReplaceEditSel',
            'GUICtrlComboBoxEx_ResetContent','GUICtrlComboBoxEx_SetCurSel',
            'GUICtrlComboBoxEx_SetDroppedWidth','GUICtrlComboBoxEx_SetEditSel',
            'GUICtrlComboBoxEx_SetEditText',
            'GUICtrlComboBoxEx_SetExtendedStyle',
            'GUICtrlComboBoxEx_SetExtendedUI','GUICtrlComboBoxEx_SetImageList',
            'GUICtrlComboBoxEx_SetItem','GUICtrlComboBoxEx_SetItemEx',
            'GUICtrlComboBoxEx_SetItemHeight','GUICtrlComboBoxEx_SetItemImage',
            'GUICtrlComboBoxEx_SetItemIndent',
            'GUICtrlComboBoxEx_SetItemOverlayImage',
            'GUICtrlComboBoxEx_SetItemParam',
            'GUICtrlComboBoxEx_SetItemSelectedImage',
            'GUICtrlComboBoxEx_SetMinVisible','GUICtrlComboBoxEx_SetTopIndex',
            'GUICtrlComboBoxEx_ShowDropDown','GUICtrlDTP_Create',
            'GUICtrlDTP_Destroy','GUICtrlDTP_GetMCColor','GUICtrlDTP_GetMCFont',
            'GUICtrlDTP_GetMonthCal','GUICtrlDTP_GetRange',
            'GUICtrlDTP_GetRangeEx','GUICtrlDTP_GetSystemTime',
            'GUICtrlDTP_GetSystemTimeEx','GUICtrlDTP_SetFormat',
            'GUICtrlDTP_SetMCColor','GUICtrlDTP_SetMCFont',
            'GUICtrlDTP_SetRange','GUICtrlDTP_SetRangeEx',
            'GUICtrlDTP_SetSystemTime','GUICtrlDTP_SetSystemTimeEx',
            'GUICtrlEdit_AppendText','GUICtrlEdit_BeginUpdate',
            'GUICtrlEdit_CanUndo','GUICtrlEdit_CharFromPos',
            'GUICtrlEdit_Create','GUICtrlEdit_Destroy',
            'GUICtrlEdit_EmptyUndoBuffer','GUICtrlEdit_EndUpdate',
            'GUICtrlEdit_Find','GUICtrlEdit_FmtLines',
            'GUICtrlEdit_GetFirstVisibleLine','GUICtrlEdit_GetLimitText',
            'GUICtrlEdit_GetLine','GUICtrlEdit_GetLineCount',
            'GUICtrlEdit_GetMargins','GUICtrlEdit_GetModify',
            'GUICtrlEdit_GetPasswordChar','GUICtrlEdit_GetRECT',
            'GUICtrlEdit_GetRECTEx','GUICtrlEdit_GetSel','GUICtrlEdit_GetText',
            'GUICtrlEdit_GetTextLen','GUICtrlEdit_HideBalloonTip',
            'GUICtrlEdit_InsertText','GUICtrlEdit_LineFromChar',
            'GUICtrlEdit_LineIndex','GUICtrlEdit_LineLength',
            'GUICtrlEdit_LineScroll','GUICtrlEdit_PosFromChar',
            'GUICtrlEdit_ReplaceSel','GUICtrlEdit_Scroll',
            'GUICtrlEdit_SetLimitText','GUICtrlEdit_SetMargins',
            'GUICtrlEdit_SetModify','GUICtrlEdit_SetPasswordChar',
            'GUICtrlEdit_SetReadOnly','GUICtrlEdit_SetRECT',
            'GUICtrlEdit_SetRECTEx','GUICtrlEdit_SetRECTNP',
            'GUICtrlEdit_SetRectNPEx','GUICtrlEdit_SetSel',
            'GUICtrlEdit_SetTabStops','GUICtrlEdit_SetText',
            'GUICtrlEdit_ShowBalloonTip','GUICtrlEdit_Undo',
            'GUICtrlHeader_AddItem','GUICtrlHeader_ClearFilter',
            'GUICtrlHeader_ClearFilterAll','GUICtrlHeader_Create',
            'GUICtrlHeader_CreateDragImage','GUICtrlHeader_DeleteItem',
            'GUICtrlHeader_Destroy','GUICtrlHeader_EditFilter',
            'GUICtrlHeader_GetBitmapMargin','GUICtrlHeader_GetImageList',
            'GUICtrlHeader_GetItem','GUICtrlHeader_GetItemAlign',
            'GUICtrlHeader_GetItemBitmap','GUICtrlHeader_GetItemCount',
            'GUICtrlHeader_GetItemDisplay','GUICtrlHeader_GetItemFlags',
            'GUICtrlHeader_GetItemFormat','GUICtrlHeader_GetItemImage',
            'GUICtrlHeader_GetItemOrder','GUICtrlHeader_GetItemParam',
            'GUICtrlHeader_GetItemRect','GUICtrlHeader_GetItemRectEx',
            'GUICtrlHeader_GetItemText','GUICtrlHeader_GetItemWidth',
            'GUICtrlHeader_GetOrderArray','GUICtrlHeader_GetUnicodeFormat',
            'GUICtrlHeader_HitTest','GUICtrlHeader_InsertItem',
            'GUICtrlHeader_Layout','GUICtrlHeader_OrderToIndex',
            'GUICtrlHeader_SetBitmapMargin',
            'GUICtrlHeader_SetFilterChangeTimeout',
            'GUICtrlHeader_SetHotDivider','GUICtrlHeader_SetImageList',
            'GUICtrlHeader_SetItem','GUICtrlHeader_SetItemAlign',
            'GUICtrlHeader_SetItemBitmap','GUICtrlHeader_SetItemDisplay',
            'GUICtrlHeader_SetItemFlags','GUICtrlHeader_SetItemFormat',
            'GUICtrlHeader_SetItemImage','GUICtrlHeader_SetItemOrder',
            'GUICtrlHeader_SetItemParam','GUICtrlHeader_SetItemText',
            'GUICtrlHeader_SetItemWidth','GUICtrlHeader_SetOrderArray',
            'GUICtrlHeader_SetUnicodeFormat','GUICtrlIpAddress_ClearAddress',
            'GUICtrlIpAddress_Create','GUICtrlIpAddress_Destroy',
            'GUICtrlIpAddress_Get','GUICtrlIpAddress_GetArray',
            'GUICtrlIpAddress_GetEx','GUICtrlIpAddress_IsBlank',
            'GUICtrlIpAddress_Set','GUICtrlIpAddress_SetArray',
            'GUICtrlIpAddress_SetEx','GUICtrlIpAddress_SetFocus',
            'GUICtrlIpAddress_SetFont','GUICtrlIpAddress_SetRange',
            'GUICtrlIpAddress_ShowHide','GUICtrlListBox_AddFile',
            'GUICtrlListBox_AddString','GUICtrlListBox_BeginUpdate',
            'GUICtrlListBox_Create','GUICtrlListBox_DeleteString',
            'GUICtrlListBox_Destroy','GUICtrlListBox_Dir',
            'GUICtrlListBox_EndUpdate','GUICtrlListBox_FindInText',
            'GUICtrlListBox_FindString','GUICtrlListBox_GetAnchorIndex',
            'GUICtrlListBox_GetCaretIndex','GUICtrlListBox_GetCount',
            'GUICtrlListBox_GetCurSel','GUICtrlListBox_GetHorizontalExtent',
            'GUICtrlListBox_GetItemData','GUICtrlListBox_GetItemHeight',
            'GUICtrlListBox_GetItemRect','GUICtrlListBox_GetItemRectEx',
            'GUICtrlListBox_GetListBoxInfo','GUICtrlListBox_GetLocale',
            'GUICtrlListBox_GetLocaleCountry','GUICtrlListBox_GetLocaleLang',
            'GUICtrlListBox_GetLocalePrimLang',
            'GUICtrlListBox_GetLocaleSubLang','GUICtrlListBox_GetSel',
            'GUICtrlListBox_GetSelCount','GUICtrlListBox_GetSelItems',
            'GUICtrlListBox_GetSelItemsText','GUICtrlListBox_GetText',
            'GUICtrlListBox_GetTextLen','GUICtrlListBox_GetTopIndex',
            'GUICtrlListBox_InitStorage','GUICtrlListBox_InsertString',
            'GUICtrlListBox_ItemFromPoint','GUICtrlListBox_ReplaceString',
            'GUICtrlListBox_ResetContent','GUICtrlListBox_SelectString',
            'GUICtrlListBox_SelItemRange','GUICtrlListBox_SelItemRangeEx',
            'GUICtrlListBox_SetAnchorIndex','GUICtrlListBox_SetCaretIndex',
            'GUICtrlListBox_SetColumnWidth','GUICtrlListBox_SetCurSel',
            'GUICtrlListBox_SetHorizontalExtent','GUICtrlListBox_SetItemData',
            'GUICtrlListBox_SetItemHeight','GUICtrlListBox_SetLocale',
            'GUICtrlListBox_SetSel','GUICtrlListBox_SetTabStops',
            'GUICtrlListBox_SetTopIndex','GUICtrlListBox_Sort',
            'GUICtrlListBox_SwapString','GUICtrlListBox_UpdateHScroll',
            'GUICtrlListView_AddArray','GUICtrlListView_AddColumn',
            'GUICtrlListView_AddItem','GUICtrlListView_AddSubItem',
            'GUICtrlListView_ApproximateViewHeight',
            'GUICtrlListView_ApproximateViewRect',
            'GUICtrlListView_ApproximateViewWidth','GUICtrlListView_Arrange',
            'GUICtrlListView_BeginUpdate','GUICtrlListView_CancelEditLabel',
            'GUICtrlListView_ClickItem','GUICtrlListView_CopyItems',
            'GUICtrlListView_Create','GUICtrlListView_CreateDragImage',
            'GUICtrlListView_CreateSolidBitMap',
            'GUICtrlListView_DeleteAllItems','GUICtrlListView_DeleteColumn',
            'GUICtrlListView_DeleteItem','GUICtrlListView_DeleteItemsSelected',
            'GUICtrlListView_Destroy','GUICtrlListView_DrawDragImage',
            'GUICtrlListView_EditLabel','GUICtrlListView_EnableGroupView',
            'GUICtrlListView_EndUpdate','GUICtrlListView_EnsureVisible',
            'GUICtrlListView_FindInText','GUICtrlListView_FindItem',
            'GUICtrlListView_FindNearest','GUICtrlListView_FindParam',
            'GUICtrlListView_FindText','GUICtrlListView_GetBkColor',
            'GUICtrlListView_GetBkImage','GUICtrlListView_GetCallbackMask',
            'GUICtrlListView_GetColumn','GUICtrlListView_GetColumnCount',
            'GUICtrlListView_GetColumnOrder',
            'GUICtrlListView_GetColumnOrderArray',
            'GUICtrlListView_GetColumnWidth','GUICtrlListView_GetCounterPage',
            'GUICtrlListView_GetEditControl',
            'GUICtrlListView_GetExtendedListViewStyle',
            'GUICtrlListView_GetGroupInfo',
            'GUICtrlListView_GetGroupViewEnabled','GUICtrlListView_GetHeader',
            'GUICtrlListView_GetHotCursor','GUICtrlListView_GetHotItem',
            'GUICtrlListView_GetHoverTime','GUICtrlListView_GetImageList',
            'GUICtrlListView_GetISearchString','GUICtrlListView_GetItem',
            'GUICtrlListView_GetItemChecked','GUICtrlListView_GetItemCount',
            'GUICtrlListView_GetItemCut','GUICtrlListView_GetItemDropHilited',
            'GUICtrlListView_GetItemEx','GUICtrlListView_GetItemFocused',
            'GUICtrlListView_GetItemGroupID','GUICtrlListView_GetItemImage',
            'GUICtrlListView_GetItemIndent','GUICtrlListView_GetItemParam',
            'GUICtrlListView_GetItemPosition',
            'GUICtrlListView_GetItemPositionX',
            'GUICtrlListView_GetItemPositionY','GUICtrlListView_GetItemRect',
            'GUICtrlListView_GetItemRectEx','GUICtrlListView_GetItemSelected',
            'GUICtrlListView_GetItemSpacing','GUICtrlListView_GetItemSpacingX',
            'GUICtrlListView_GetItemSpacingY','GUICtrlListView_GetItemState',
            'GUICtrlListView_GetItemStateImage','GUICtrlListView_GetItemText',
            'GUICtrlListView_GetItemTextArray',
            'GUICtrlListView_GetItemTextString','GUICtrlListView_GetNextItem',
            'GUICtrlListView_GetNumberOfWorkAreas','GUICtrlListView_GetOrigin',
            'GUICtrlListView_GetOriginX','GUICtrlListView_GetOriginY',
            'GUICtrlListView_GetOutlineColor',
            'GUICtrlListView_GetSelectedColumn',
            'GUICtrlListView_GetSelectedCount',
            'GUICtrlListView_GetSelectedIndices',
            'GUICtrlListView_GetSelectionMark','GUICtrlListView_GetStringWidth',
            'GUICtrlListView_GetSubItemRect','GUICtrlListView_GetTextBkColor',
            'GUICtrlListView_GetTextColor','GUICtrlListView_GetToolTips',
            'GUICtrlListView_GetTopIndex','GUICtrlListView_GetUnicodeFormat',
            'GUICtrlListView_GetView','GUICtrlListView_GetViewDetails',
            'GUICtrlListView_GetViewLarge','GUICtrlListView_GetViewList',
            'GUICtrlListView_GetViewRect','GUICtrlListView_GetViewSmall',
            'GUICtrlListView_GetViewTile','GUICtrlListView_HideColumn',
            'GUICtrlListView_HitTest','GUICtrlListView_InsertColumn',
            'GUICtrlListView_InsertGroup','GUICtrlListView_InsertItem',
            'GUICtrlListView_JustifyColumn','GUICtrlListView_MapIDToIndex',
            'GUICtrlListView_MapIndexToID','GUICtrlListView_RedrawItems',
            'GUICtrlListView_RegisterSortCallBack',
            'GUICtrlListView_RemoveAllGroups','GUICtrlListView_RemoveGroup',
            'GUICtrlListView_Scroll','GUICtrlListView_SetBkColor',
            'GUICtrlListView_SetBkImage','GUICtrlListView_SetCallBackMask',
            'GUICtrlListView_SetColumn','GUICtrlListView_SetColumnOrder',
            'GUICtrlListView_SetColumnOrderArray',
            'GUICtrlListView_SetColumnWidth',
            'GUICtrlListView_SetExtendedListViewStyle',
            'GUICtrlListView_SetGroupInfo','GUICtrlListView_SetHotItem',
            'GUICtrlListView_SetHoverTime','GUICtrlListView_SetIconSpacing',
            'GUICtrlListView_SetImageList','GUICtrlListView_SetItem',
            'GUICtrlListView_SetItemChecked','GUICtrlListView_SetItemCount',
            'GUICtrlListView_SetItemCut','GUICtrlListView_SetItemDropHilited',
            'GUICtrlListView_SetItemEx','GUICtrlListView_SetItemFocused',
            'GUICtrlListView_SetItemGroupID','GUICtrlListView_SetItemImage',
            'GUICtrlListView_SetItemIndent','GUICtrlListView_SetItemParam',
            'GUICtrlListView_SetItemPosition',
            'GUICtrlListView_SetItemPosition32',
            'GUICtrlListView_SetItemSelected','GUICtrlListView_SetItemState',
            'GUICtrlListView_SetItemStateImage','GUICtrlListView_SetItemText',
            'GUICtrlListView_SetOutlineColor',
            'GUICtrlListView_SetSelectedColumn',
            'GUICtrlListView_SetSelectionMark','GUICtrlListView_SetTextBkColor',
            'GUICtrlListView_SetTextColor','GUICtrlListView_SetToolTips',
            'GUICtrlListView_SetUnicodeFormat','GUICtrlListView_SetView',
            'GUICtrlListView_SetWorkAreas','GUICtrlListView_SimpleSort',
            'GUICtrlListView_SortItems','GUICtrlListView_SubItemHitTest',
            'GUICtrlListView_UnRegisterSortCallBack',
            'GUICtrlMenu_AddMenuItem','GUICtrlMenu_AppendMenu',
            'GUICtrlMenu_CheckMenuItem','GUICtrlMenu_CheckRadioItem',
            'GUICtrlMenu_CreateMenu','GUICtrlMenu_CreatePopup',
            'GUICtrlMenu_DeleteMenu','GUICtrlMenu_DestroyMenu',
            'GUICtrlMenu_DrawMenuBar','GUICtrlMenu_EnableMenuItem',
            'GUICtrlMenu_FindItem','GUICtrlMenu_FindParent',
            'GUICtrlMenu_GetItemBmp','GUICtrlMenu_GetItemBmpChecked',
            'GUICtrlMenu_GetItemBmpUnchecked','GUICtrlMenu_GetItemChecked',
            'GUICtrlMenu_GetItemCount','GUICtrlMenu_GetItemData',
            'GUICtrlMenu_GetItemDefault','GUICtrlMenu_GetItemDisabled',
            'GUICtrlMenu_GetItemEnabled','GUICtrlMenu_GetItemGrayed',
            'GUICtrlMenu_GetItemHighlighted','GUICtrlMenu_GetItemID',
            'GUICtrlMenu_GetItemInfo','GUICtrlMenu_GetItemRect',
            'GUICtrlMenu_GetItemRectEx','GUICtrlMenu_GetItemState',
            'GUICtrlMenu_GetItemStateEx','GUICtrlMenu_GetItemSubMenu',
            'GUICtrlMenu_GetItemText','GUICtrlMenu_GetItemType',
            'GUICtrlMenu_GetMenu','GUICtrlMenu_GetMenuBackground',
            'GUICtrlMenu_GetMenuBarInfo','GUICtrlMenu_GetMenuContextHelpID',
            'GUICtrlMenu_GetMenuData','GUICtrlMenu_GetMenuDefaultItem',
            'GUICtrlMenu_GetMenuHeight','GUICtrlMenu_GetMenuInfo',
            'GUICtrlMenu_GetMenuStyle','GUICtrlMenu_GetSystemMenu',
            'GUICtrlMenu_InsertMenuItem','GUICtrlMenu_InsertMenuItemEx',
            'GUICtrlMenu_IsMenu','GUICtrlMenu_LoadMenu',
            'GUICtrlMenu_MapAccelerator','GUICtrlMenu_MenuItemFromPoint',
            'GUICtrlMenu_RemoveMenu','GUICtrlMenu_SetItemBitmaps',
            'GUICtrlMenu_SetItemBmp','GUICtrlMenu_SetItemBmpChecked',
            'GUICtrlMenu_SetItemBmpUnchecked','GUICtrlMenu_SetItemChecked',
            'GUICtrlMenu_SetItemData','GUICtrlMenu_SetItemDefault',
            'GUICtrlMenu_SetItemDisabled','GUICtrlMenu_SetItemEnabled',
            'GUICtrlMenu_SetItemGrayed','GUICtrlMenu_SetItemHighlighted',
            'GUICtrlMenu_SetItemID','GUICtrlMenu_SetItemInfo',
            'GUICtrlMenu_SetItemState','GUICtrlMenu_SetItemSubMenu',
            'GUICtrlMenu_SetItemText','GUICtrlMenu_SetItemType',
            'GUICtrlMenu_SetMenu','GUICtrlMenu_SetMenuBackground',
            'GUICtrlMenu_SetMenuContextHelpID','GUICtrlMenu_SetMenuData',
            'GUICtrlMenu_SetMenuDefaultItem','GUICtrlMenu_SetMenuHeight',
            'GUICtrlMenu_SetMenuInfo','GUICtrlMenu_SetMenuStyle',
            'GUICtrlMenu_TrackPopupMenu','GUICtrlMonthCal_Create',
            'GUICtrlMonthCal_Destroy','GUICtrlMonthCal_GetColor',
            'GUICtrlMonthCal_GetColorArray','GUICtrlMonthCal_GetCurSel',
            'GUICtrlMonthCal_GetCurSelStr','GUICtrlMonthCal_GetFirstDOW',
            'GUICtrlMonthCal_GetFirstDOWStr','GUICtrlMonthCal_GetMaxSelCount',
            'GUICtrlMonthCal_GetMaxTodayWidth',
            'GUICtrlMonthCal_GetMinReqHeight','GUICtrlMonthCal_GetMinReqRect',
            'GUICtrlMonthCal_GetMinReqRectArray',
            'GUICtrlMonthCal_GetMinReqWidth','GUICtrlMonthCal_GetMonthDelta',
            'GUICtrlMonthCal_GetMonthRange','GUICtrlMonthCal_GetMonthRangeMax',
            'GUICtrlMonthCal_GetMonthRangeMaxStr',
            'GUICtrlMonthCal_GetMonthRangeMin',
            'GUICtrlMonthCal_GetMonthRangeMinStr',
            'GUICtrlMonthCal_GetMonthRangeSpan','GUICtrlMonthCal_GetRange',
            'GUICtrlMonthCal_GetRangeMax','GUICtrlMonthCal_GetRangeMaxStr',
            'GUICtrlMonthCal_GetRangeMin','GUICtrlMonthCal_GetRangeMinStr',
            'GUICtrlMonthCal_GetSelRange','GUICtrlMonthCal_GetSelRangeMax',
            'GUICtrlMonthCal_GetSelRangeMaxStr',
            'GUICtrlMonthCal_GetSelRangeMin',
            'GUICtrlMonthCal_GetSelRangeMinStr','GUICtrlMonthCal_GetToday',
            'GUICtrlMonthCal_GetTodayStr','GUICtrlMonthCal_GetUnicodeFormat',
            'GUICtrlMonthCal_HitTest','GUICtrlMonthCal_SetColor',
            'GUICtrlMonthCal_SetCurSel','GUICtrlMonthCal_SetDayState',
            'GUICtrlMonthCal_SetFirstDOW','GUICtrlMonthCal_SetMaxSelCount',
            'GUICtrlMonthCal_SetMonthDelta','GUICtrlMonthCal_SetRange',
            'GUICtrlMonthCal_SetSelRange','GUICtrlMonthCal_SetToday',
            'GUICtrlMonthCal_SetUnicodeFormat','GUICtrlRebar_AddBand',
            'GUICtrlRebar_AddToolBarBand','GUICtrlRebar_BeginDrag',
            'GUICtrlRebar_Create','GUICtrlRebar_DeleteBand',
            'GUICtrlRebar_Destroy','GUICtrlRebar_DragMove',
            'GUICtrlRebar_EndDrag','GUICtrlRebar_GetBandBackColor',
            'GUICtrlRebar_GetBandBorders','GUICtrlRebar_GetBandBordersEx',
            'GUICtrlRebar_GetBandChildHandle','GUICtrlRebar_GetBandChildSize',
            'GUICtrlRebar_GetBandCount','GUICtrlRebar_GetBandForeColor',
            'GUICtrlRebar_GetBandHeaderSize','GUICtrlRebar_GetBandID',
            'GUICtrlRebar_GetBandIdealSize','GUICtrlRebar_GetBandLength',
            'GUICtrlRebar_GetBandLParam','GUICtrlRebar_GetBandMargins',
            'GUICtrlRebar_GetBandMarginsEx','GUICtrlRebar_GetBandRect',
            'GUICtrlRebar_GetBandRectEx','GUICtrlRebar_GetBandStyle',
            'GUICtrlRebar_GetBandStyleBreak',
            'GUICtrlRebar_GetBandStyleChildEdge',
            'GUICtrlRebar_GetBandStyleFixedBMP',
            'GUICtrlRebar_GetBandStyleFixedSize',
            'GUICtrlRebar_GetBandStyleGripperAlways',
            'GUICtrlRebar_GetBandStyleHidden',
            'GUICtrlRebar_GetBandStyleHideTitle',
            'GUICtrlRebar_GetBandStyleNoGripper',
            'GUICtrlRebar_GetBandStyleTopAlign',
            'GUICtrlRebar_GetBandStyleUseChevron',
            'GUICtrlRebar_GetBandStyleVariableHeight',
            'GUICtrlRebar_GetBandText','GUICtrlRebar_GetBarHeight',
            'GUICtrlRebar_GetBKColor','GUICtrlRebar_GetColorScheme',
            'GUICtrlRebar_GetRowCount','GUICtrlRebar_GetRowHeight',
            'GUICtrlRebar_GetTextColor','GUICtrlRebar_GetToolTips',
            'GUICtrlRebar_GetUnicodeFormat','GUICtrlRebar_HitTest',
            'GUICtrlRebar_IDToIndex','GUICtrlRebar_MaximizeBand',
            'GUICtrlRebar_MinimizeBand','GUICtrlRebar_MoveBand',
            'GUICtrlRebar_SetBandBackColor','GUICtrlRebar_SetBandForeColor',
            'GUICtrlRebar_SetBandHeaderSize','GUICtrlRebar_SetBandID',
            'GUICtrlRebar_SetBandIdealSize','GUICtrlRebar_SetBandLength',
            'GUICtrlRebar_SetBandLParam','GUICtrlRebar_SetBandStyle',
            'GUICtrlRebar_SetBandStyleBreak',
            'GUICtrlRebar_SetBandStyleChildEdge',
            'GUICtrlRebar_SetBandStyleFixedBMP',
            'GUICtrlRebar_SetBandStyleFixedSize',
            'GUICtrlRebar_SetBandStyleGripperAlways',
            'GUICtrlRebar_SetBandStyleHidden',
            'GUICtrlRebar_SetBandStyleHideTitle',
            'GUICtrlRebar_SetBandStyleNoGripper',
            'GUICtrlRebar_SetBandStyleTopAlign',
            'GUICtrlRebar_SetBandStyleUseChevron',
            'GUICtrlRebar_SetBandStyleVariableHeight',
            'GUICtrlRebar_SetBandText','GUICtrlRebar_SetBKColor',
            'GUICtrlRebar_SetColorScheme','GUICtrlRebar_SetTextColor',
            'GUICtrlRebar_SetToolTips','GUICtrlRebar_SetUnicodeFormat',
            'GUICtrlRebar_ShowBand','GUICtrlSlider_ClearSel',
            'GUICtrlSlider_ClearTics','GUICtrlSlider_Create',
            'GUICtrlSlider_Destroy','GUICtrlSlider_GetBuddy',
            'GUICtrlSlider_GetChannelRect','GUICtrlSlider_GetLineSize',
            'GUICtrlSlider_GetNumTics','GUICtrlSlider_GetPageSize',
            'GUICtrlSlider_GetPos','GUICtrlSlider_GetPTics',
            'GUICtrlSlider_GetRange','GUICtrlSlider_GetRangeMax',
            'GUICtrlSlider_GetRangeMin','GUICtrlSlider_GetSel',
            'GUICtrlSlider_GetSelEnd','GUICtrlSlider_GetSelStart',
            'GUICtrlSlider_GetThumbLength','GUICtrlSlider_GetThumbRect',
            'GUICtrlSlider_GetThumbRectEx','GUICtrlSlider_GetTic',
            'GUICtrlSlider_GetTicPos','GUICtrlSlider_GetToolTips',
            'GUICtrlSlider_GetUnicodeFormat','GUICtrlSlider_SetBuddy',
            'GUICtrlSlider_SetLineSize','GUICtrlSlider_SetPageSize',
            'GUICtrlSlider_SetPos','GUICtrlSlider_SetRange',
            'GUICtrlSlider_SetRangeMax','GUICtrlSlider_SetRangeMin',
            'GUICtrlSlider_SetSel','GUICtrlSlider_SetSelEnd',
            'GUICtrlSlider_SetSelStart','GUICtrlSlider_SetThumbLength',
            'GUICtrlSlider_SetTic','GUICtrlSlider_SetTicFreq',
            'GUICtrlSlider_SetTipSide','GUICtrlSlider_SetToolTips',
            'GUICtrlSlider_SetUnicodeFormat','GUICtrlStatusBar_Create',
            'GUICtrlStatusBar_Destroy','GUICtrlStatusBar_EmbedControl',
            'GUICtrlStatusBar_GetBorders','GUICtrlStatusBar_GetBordersHorz',
            'GUICtrlStatusBar_GetBordersRect','GUICtrlStatusBar_GetBordersVert',
            'GUICtrlStatusBar_GetCount','GUICtrlStatusBar_GetHeight',
            'GUICtrlStatusBar_GetIcon','GUICtrlStatusBar_GetParts',
            'GUICtrlStatusBar_GetRect','GUICtrlStatusBar_GetRectEx',
            'GUICtrlStatusBar_GetText','GUICtrlStatusBar_GetTextFlags',
            'GUICtrlStatusBar_GetTextLength','GUICtrlStatusBar_GetTextLengthEx',
            'GUICtrlStatusBar_GetTipText','GUICtrlStatusBar_GetUnicodeFormat',
            'GUICtrlStatusBar_GetWidth','GUICtrlStatusBar_IsSimple',
            'GUICtrlStatusBar_Resize','GUICtrlStatusBar_SetBkColor',
            'GUICtrlStatusBar_SetIcon','GUICtrlStatusBar_SetMinHeight',
            'GUICtrlStatusBar_SetParts','GUICtrlStatusBar_SetSimple',
            'GUICtrlStatusBar_SetText','GUICtrlStatusBar_SetTipText',
            'GUICtrlStatusBar_SetUnicodeFormat','GUICtrlStatusBar_ShowHide',
            'GUICtrlTab_Create','GUICtrlTab_DeleteAllItems',
            'GUICtrlTab_DeleteItem','GUICtrlTab_DeselectAll',
            'GUICtrlTab_Destroy','GUICtrlTab_FindTab','GUICtrlTab_GetCurFocus',
            'GUICtrlTab_GetCurSel','GUICtrlTab_GetDisplayRect',
            'GUICtrlTab_GetDisplayRectEx','GUICtrlTab_GetExtendedStyle',
            'GUICtrlTab_GetImageList','GUICtrlTab_GetItem',
            'GUICtrlTab_GetItemCount','GUICtrlTab_GetItemImage',
            'GUICtrlTab_GetItemParam','GUICtrlTab_GetItemRect',
            'GUICtrlTab_GetItemRectEx','GUICtrlTab_GetItemState',
            'GUICtrlTab_GetItemText','GUICtrlTab_GetRowCount',
            'GUICtrlTab_GetToolTips','GUICtrlTab_GetUnicodeFormat',
            'GUICtrlTab_HighlightItem','GUICtrlTab_HitTest',
            'GUICtrlTab_InsertItem','GUICtrlTab_RemoveImage',
            'GUICtrlTab_SetCurFocus','GUICtrlTab_SetCurSel',
            'GUICtrlTab_SetExtendedStyle','GUICtrlTab_SetImageList',
            'GUICtrlTab_SetItem','GUICtrlTab_SetItemImage',
            'GUICtrlTab_SetItemParam','GUICtrlTab_SetItemSize',
            'GUICtrlTab_SetItemState','GUICtrlTab_SetItemText',
            'GUICtrlTab_SetMinTabWidth','GUICtrlTab_SetPadding',
            'GUICtrlTab_SetToolTips','GUICtrlTab_SetUnicodeFormat',
            'GUICtrlToolbar_AddBitmap','GUICtrlToolbar_AddButton',
            'GUICtrlToolbar_AddButtonSep','GUICtrlToolbar_AddString',
            'GUICtrlToolbar_ButtonCount','GUICtrlToolbar_CheckButton',
            'GUICtrlToolbar_ClickAccel','GUICtrlToolbar_ClickButton',
            'GUICtrlToolbar_ClickIndex','GUICtrlToolbar_CommandToIndex',
            'GUICtrlToolbar_Create','GUICtrlToolbar_Customize',
            'GUICtrlToolbar_DeleteButton','GUICtrlToolbar_Destroy',
            'GUICtrlToolbar_EnableButton','GUICtrlToolbar_FindToolbar',
            'GUICtrlToolbar_GetAnchorHighlight','GUICtrlToolbar_GetBitmapFlags',
            'GUICtrlToolbar_GetButtonBitmap','GUICtrlToolbar_GetButtonInfo',
            'GUICtrlToolbar_GetButtonInfoEx','GUICtrlToolbar_GetButtonParam',
            'GUICtrlToolbar_GetButtonRect','GUICtrlToolbar_GetButtonRectEx',
            'GUICtrlToolbar_GetButtonSize','GUICtrlToolbar_GetButtonState',
            'GUICtrlToolbar_GetButtonStyle','GUICtrlToolbar_GetButtonText',
            'GUICtrlToolbar_GetColorScheme',
            'GUICtrlToolbar_GetDisabledImageList',
            'GUICtrlToolbar_GetExtendedStyle','GUICtrlToolbar_GetHotImageList',
            'GUICtrlToolbar_GetHotItem','GUICtrlToolbar_GetImageList',
            'GUICtrlToolbar_GetInsertMark','GUICtrlToolbar_GetInsertMarkColor',
            'GUICtrlToolbar_GetMaxSize','GUICtrlToolbar_GetMetrics',
            'GUICtrlToolbar_GetPadding','GUICtrlToolbar_GetRows',
            'GUICtrlToolbar_GetString','GUICtrlToolbar_GetStyle',
            'GUICtrlToolbar_GetStyleAltDrag',
            'GUICtrlToolbar_GetStyleCustomErase','GUICtrlToolbar_GetStyleFlat',
            'GUICtrlToolbar_GetStyleList','GUICtrlToolbar_GetStyleRegisterDrop',
            'GUICtrlToolbar_GetStyleToolTips',
            'GUICtrlToolbar_GetStyleTransparent',
            'GUICtrlToolbar_GetStyleWrapable','GUICtrlToolbar_GetTextRows',
            'GUICtrlToolbar_GetToolTips','GUICtrlToolbar_GetUnicodeFormat',
            'GUICtrlToolbar_HideButton','GUICtrlToolbar_HighlightButton',
            'GUICtrlToolbar_HitTest','GUICtrlToolbar_IndexToCommand',
            'GUICtrlToolbar_InsertButton','GUICtrlToolbar_InsertMarkHitTest',
            'GUICtrlToolbar_IsButtonChecked','GUICtrlToolbar_IsButtonEnabled',
            'GUICtrlToolbar_IsButtonHidden',
            'GUICtrlToolbar_IsButtonHighlighted',
            'GUICtrlToolbar_IsButtonIndeterminate',
            'GUICtrlToolbar_IsButtonPressed','GUICtrlToolbar_LoadBitmap',
            'GUICtrlToolbar_LoadImages','GUICtrlToolbar_MapAccelerator',
            'GUICtrlToolbar_MoveButton','GUICtrlToolbar_PressButton',
            'GUICtrlToolbar_SetAnchorHighlight','GUICtrlToolbar_SetBitmapSize',
            'GUICtrlToolbar_SetButtonBitMap','GUICtrlToolbar_SetButtonInfo',
            'GUICtrlToolbar_SetButtonInfoEx','GUICtrlToolbar_SetButtonParam',
            'GUICtrlToolbar_SetButtonSize','GUICtrlToolbar_SetButtonState',
            'GUICtrlToolbar_SetButtonStyle','GUICtrlToolbar_SetButtonText',
            'GUICtrlToolbar_SetButtonWidth','GUICtrlToolbar_SetCmdID',
            'GUICtrlToolbar_SetColorScheme',
            'GUICtrlToolbar_SetDisabledImageList',
            'GUICtrlToolbar_SetDrawTextFlags','GUICtrlToolbar_SetExtendedStyle',
            'GUICtrlToolbar_SetHotImageList','GUICtrlToolbar_SetHotItem',
            'GUICtrlToolbar_SetImageList','GUICtrlToolbar_SetIndent',
            'GUICtrlToolbar_SetIndeterminate','GUICtrlToolbar_SetInsertMark',
            'GUICtrlToolbar_SetInsertMarkColor','GUICtrlToolbar_SetMaxTextRows',
            'GUICtrlToolbar_SetMetrics','GUICtrlToolbar_SetPadding',
            'GUICtrlToolbar_SetParent','GUICtrlToolbar_SetRows',
            'GUICtrlToolbar_SetStyle','GUICtrlToolbar_SetStyleAltDrag',
            'GUICtrlToolbar_SetStyleCustomErase','GUICtrlToolbar_SetStyleFlat',
            'GUICtrlToolbar_SetStyleList','GUICtrlToolbar_SetStyleRegisterDrop',
            'GUICtrlToolbar_SetStyleToolTips',
            'GUICtrlToolbar_SetStyleTransparent',
            'GUICtrlToolbar_SetStyleWrapable','GUICtrlToolbar_SetToolTips',
            'GUICtrlToolbar_SetUnicodeFormat','GUICtrlToolbar_SetWindowTheme',
            'GUICtrlTreeView_Add','GUICtrlTreeView_AddChild',
            'GUICtrlTreeView_AddChildFirst','GUICtrlTreeView_AddFirst',
            'GUICtrlTreeView_BeginUpdate','GUICtrlTreeView_ClickItem',
            'GUICtrlTreeView_Create','GUICtrlTreeView_CreateDragImage',
            'GUICtrlTreeView_CreateSolidBitMap','GUICtrlTreeView_Delete',
            'GUICtrlTreeView_DeleteAll','GUICtrlTreeView_DeleteChildren',
            'GUICtrlTreeView_Destroy','GUICtrlTreeView_DisplayRect',
            'GUICtrlTreeView_DisplayRectEx','GUICtrlTreeView_EditText',
            'GUICtrlTreeView_EndEdit','GUICtrlTreeView_EndUpdate',
            'GUICtrlTreeView_EnsureVisible','GUICtrlTreeView_Expand',
            'GUICtrlTreeView_ExpandedOnce','GUICtrlTreeView_FindItem',
            'GUICtrlTreeView_FindItemEx','GUICtrlTreeView_GetBkColor',
            'GUICtrlTreeView_GetBold','GUICtrlTreeView_GetChecked',
            'GUICtrlTreeView_GetChildCount','GUICtrlTreeView_GetChildren',
            'GUICtrlTreeView_GetCount','GUICtrlTreeView_GetCut',
            'GUICtrlTreeView_GetDropTarget','GUICtrlTreeView_GetEditControl',
            'GUICtrlTreeView_GetExpanded','GUICtrlTreeView_GetFirstChild',
            'GUICtrlTreeView_GetFirstItem','GUICtrlTreeView_GetFirstVisible',
            'GUICtrlTreeView_GetFocused','GUICtrlTreeView_GetHeight',
            'GUICtrlTreeView_GetImageIndex',
            'GUICtrlTreeView_GetImageListIconHandle',
            'GUICtrlTreeView_GetIndent','GUICtrlTreeView_GetInsertMarkColor',
            'GUICtrlTreeView_GetISearchString','GUICtrlTreeView_GetItemByIndex',
            'GUICtrlTreeView_GetItemHandle','GUICtrlTreeView_GetItemParam',
            'GUICtrlTreeView_GetLastChild','GUICtrlTreeView_GetLineColor',
            'GUICtrlTreeView_GetNext','GUICtrlTreeView_GetNextChild',
            'GUICtrlTreeView_GetNextSibling','GUICtrlTreeView_GetNextVisible',
            'GUICtrlTreeView_GetNormalImageList',
            'GUICtrlTreeView_GetParentHandle','GUICtrlTreeView_GetParentParam',
            'GUICtrlTreeView_GetPrev','GUICtrlTreeView_GetPrevChild',
            'GUICtrlTreeView_GetPrevSibling','GUICtrlTreeView_GetPrevVisible',
            'GUICtrlTreeView_GetScrollTime','GUICtrlTreeView_GetSelected',
            'GUICtrlTreeView_GetSelectedImageIndex',
            'GUICtrlTreeView_GetSelection','GUICtrlTreeView_GetSiblingCount',
            'GUICtrlTreeView_GetState','GUICtrlTreeView_GetStateImageIndex',
            'GUICtrlTreeView_GetStateImageList','GUICtrlTreeView_GetText',
            'GUICtrlTreeView_GetTextColor','GUICtrlTreeView_GetToolTips',
            'GUICtrlTreeView_GetTree','GUICtrlTreeView_GetUnicodeFormat',
            'GUICtrlTreeView_GetVisible','GUICtrlTreeView_GetVisibleCount',
            'GUICtrlTreeView_HitTest','GUICtrlTreeView_HitTestEx',
            'GUICtrlTreeView_HitTestItem','GUICtrlTreeView_Index',
            'GUICtrlTreeView_InsertItem','GUICtrlTreeView_IsFirstItem',
            'GUICtrlTreeView_IsParent','GUICtrlTreeView_Level',
            'GUICtrlTreeView_SelectItem','GUICtrlTreeView_SelectItemByIndex',
            'GUICtrlTreeView_SetBkColor','GUICtrlTreeView_SetBold',
            'GUICtrlTreeView_SetChecked','GUICtrlTreeView_SetCheckedByIndex',
            'GUICtrlTreeView_SetChildren','GUICtrlTreeView_SetCut',
            'GUICtrlTreeView_SetDropTarget','GUICtrlTreeView_SetFocused',
            'GUICtrlTreeView_SetHeight','GUICtrlTreeView_SetIcon',
            'GUICtrlTreeView_SetImageIndex','GUICtrlTreeView_SetIndent',
            'GUICtrlTreeView_SetInsertMark',
            'GUICtrlTreeView_SetInsertMarkColor',
            'GUICtrlTreeView_SetItemHeight','GUICtrlTreeView_SetItemParam',
            'GUICtrlTreeView_SetLineColor','GUICtrlTreeView_SetNormalImageList',
            'GUICtrlTreeView_SetScrollTime','GUICtrlTreeView_SetSelected',
            'GUICtrlTreeView_SetSelectedImageIndex','GUICtrlTreeView_SetState',
            'GUICtrlTreeView_SetStateImageIndex',
            'GUICtrlTreeView_SetStateImageList','GUICtrlTreeView_SetText',
            'GUICtrlTreeView_SetTextColor','GUICtrlTreeView_SetToolTips',
            'GUICtrlTreeView_SetUnicodeFormat','GUICtrlTreeView_Sort',
            'GUIImageList_Add','GUIImageList_AddBitmap','GUIImageList_AddIcon',
            'GUIImageList_AddMasked','GUIImageList_BeginDrag',
            'GUIImageList_Copy','GUIImageList_Create','GUIImageList_Destroy',
            'GUIImageList_DestroyIcon','GUIImageList_DragEnter',
            'GUIImageList_DragLeave','GUIImageList_DragMove',
            'GUIImageList_Draw','GUIImageList_DrawEx','GUIImageList_Duplicate',
            'GUIImageList_EndDrag','GUIImageList_GetBkColor',
            'GUIImageList_GetIcon','GUIImageList_GetIconHeight',
            'GUIImageList_GetIconSize','GUIImageList_GetIconSizeEx',
            'GUIImageList_GetIconWidth','GUIImageList_GetImageCount',
            'GUIImageList_GetImageInfoEx','GUIImageList_Remove',
            'GUIImageList_ReplaceIcon','GUIImageList_SetBkColor',
            'GUIImageList_SetIconSize','GUIImageList_SetImageCount',
            'GUIImageList_Swap','GUIScrollBars_EnableScrollBar',
            'GUIScrollBars_GetScrollBarInfoEx','GUIScrollBars_GetScrollBarRect',
            'GUIScrollBars_GetScrollBarRGState',
            'GUIScrollBars_GetScrollBarXYLineButton',
            'GUIScrollBars_GetScrollBarXYThumbBottom',
            'GUIScrollBars_GetScrollBarXYThumbTop',
            'GUIScrollBars_GetScrollInfo','GUIScrollBars_GetScrollInfoEx',
            'GUIScrollBars_GetScrollInfoMax','GUIScrollBars_GetScrollInfoMin',
            'GUIScrollBars_GetScrollInfoPage','GUIScrollBars_GetScrollInfoPos',
            'GUIScrollBars_GetScrollInfoTrackPos','GUIScrollBars_GetScrollPos',
            'GUIScrollBars_GetScrollRange','GUIScrollBars_Init',
            'GUIScrollBars_ScrollWindow','GUIScrollBars_SetScrollInfo',
            'GUIScrollBars_SetScrollInfoMax','GUIScrollBars_SetScrollInfoMin',
            'GUIScrollBars_SetScrollInfoPage','GUIScrollBars_SetScrollInfoPos',
            'GUIScrollBars_SetScrollRange','GUIScrollBars_ShowScrollBar',
            'GUIToolTip_Activate','GUIToolTip_AddTool','GUIToolTip_AdjustRect',
            'GUIToolTip_BitsToTTF','GUIToolTip_Create','GUIToolTip_DelTool',
            'GUIToolTip_Destroy','GUIToolTip_EnumTools',
            'GUIToolTip_GetBubbleHeight','GUIToolTip_GetBubbleSize',
            'GUIToolTip_GetBubbleWidth','GUIToolTip_GetCurrentTool',
            'GUIToolTip_GetDelayTime','GUIToolTip_GetMargin',
            'GUIToolTip_GetMarginEx','GUIToolTip_GetMaxTipWidth',
            'GUIToolTip_GetText','GUIToolTip_GetTipBkColor',
            'GUIToolTip_GetTipTextColor','GUIToolTip_GetTitleBitMap',
            'GUIToolTip_GetTitleText','GUIToolTip_GetToolCount',
            'GUIToolTip_GetToolInfo','GUIToolTip_HitTest',
            'GUIToolTip_NewToolRect','GUIToolTip_Pop','GUIToolTip_PopUp',
            'GUIToolTip_SetDelayTime','GUIToolTip_SetMargin',
            'GUIToolTip_SetMaxTipWidth','GUIToolTip_SetTipBkColor',
            'GUIToolTip_SetTipTextColor','GUIToolTip_SetTitle',
            'GUIToolTip_SetToolInfo','GUIToolTip_SetWindowTheme',
            'GUIToolTip_ToolExists','GUIToolTip_ToolToArray',
            'GUIToolTip_TrackActivate','GUIToolTip_TrackPosition',
            'GUIToolTip_TTFToBits','GUIToolTip_Update',
            'GUIToolTip_UpdateTipText','HexToString','IE_Example',
            'IE_Introduction','IE_VersionInfo','IEAction','IEAttach',
            'IEBodyReadHTML','IEBodyReadText','IEBodyWriteHTML','IECreate',
            'IECreateEmbedded','IEDocGetObj','IEDocInsertHTML',
            'IEDocInsertText','IEDocReadHTML','IEDocWriteHTML',
            'IEErrorHandlerDeRegister','IEErrorHandlerRegister','IEErrorNotify',
            'IEFormElementCheckBoxSelect','IEFormElementGetCollection',
            'IEFormElementGetObjByName','IEFormElementGetValue',
            'IEFormElementOptionSelect','IEFormElementRadioSelect',
            'IEFormElementSetValue','IEFormGetCollection','IEFormGetObjByName',
            'IEFormImageClick','IEFormReset','IEFormSubmit',
            'IEFrameGetCollection','IEFrameGetObjByName','IEGetObjById',
            'IEGetObjByName','IEHeadInsertEventScript','IEImgClick',
            'IEImgGetCollection','IEIsFrameSet','IELinkClickByIndex',
            'IELinkClickByText','IELinkGetCollection','IELoadWait',
            'IELoadWaitTimeout','IENavigate','IEPropertyGet','IEPropertySet',
            'IEQuit','IETableGetCollection','IETableWriteToArray',
            'IETagNameAllGetCollection','IETagNameGetCollection','Iif',
            'INetExplorerCapable','INetGetSource','INetMail','INetSmtpMail',
            'IsPressed','MathCheckDiv','Max','MemGlobalAlloc','MemGlobalFree',
            'MemGlobalLock','MemGlobalSize','MemGlobalUnlock','MemMoveMemory',
            'MemMsgBox','MemShowError','MemVirtualAlloc','MemVirtualAllocEx',
            'MemVirtualFree','MemVirtualFreeEx','Min','MouseTrap',
            'NamedPipes_CallNamedPipe','NamedPipes_ConnectNamedPipe',
            'NamedPipes_CreateNamedPipe','NamedPipes_CreatePipe',
            'NamedPipes_DisconnectNamedPipe',
            'NamedPipes_GetNamedPipeHandleState','NamedPipes_GetNamedPipeInfo',
            'NamedPipes_PeekNamedPipe','NamedPipes_SetNamedPipeHandleState',
            'NamedPipes_TransactNamedPipe','NamedPipes_WaitNamedPipe',
            'Net_Share_ConnectionEnum','Net_Share_FileClose',
            'Net_Share_FileEnum','Net_Share_FileGetInfo','Net_Share_PermStr',
            'Net_Share_ResourceStr','Net_Share_SessionDel',
            'Net_Share_SessionEnum','Net_Share_SessionGetInfo',
            'Net_Share_ShareAdd','Net_Share_ShareCheck','Net_Share_ShareDel',
            'Net_Share_ShareEnum','Net_Share_ShareGetInfo',
            'Net_Share_ShareSetInfo','Net_Share_StatisticsGetSvr',
            'Net_Share_StatisticsGetWrk','Now','NowCalc','NowCalcDate',
            'NowDate','NowTime','PathFull','PathMake','PathSplit',
            'ProcessGetName','ProcessGetPriority','Radian',
            'ReplaceStringInFile','RunDOS','ScreenCapture_Capture',
            'ScreenCapture_CaptureWnd','ScreenCapture_SaveImage',
            'ScreenCapture_SetBMPFormat','ScreenCapture_SetJPGQuality',
            'ScreenCapture_SetTIFColorDepth','ScreenCapture_SetTIFCompression',
            'Security__AdjustTokenPrivileges','Security__GetAccountSid',
            'Security__GetLengthSid','Security__GetTokenInformation',
            'Security__ImpersonateSelf','Security__IsValidSid',
            'Security__LookupAccountName','Security__LookupAccountSid',
            'Security__LookupPrivilegeValue','Security__OpenProcessToken',
            'Security__OpenThreadToken','Security__OpenThreadTokenEx',
            'Security__SetPrivilege','Security__SidToStringSid',
            'Security__SidTypeStr','Security__StringSidToSid','SendMessage',
            'SendMessageA','SetDate','SetTime','Singleton','SoundClose',
            'SoundLength','SoundOpen','SoundPause','SoundPlay','SoundPos',
            'SoundResume','SoundSeek','SoundStatus','SoundStop',
            'SQLite_Changes','SQLite_Close','SQLite_Display2DResult',
            'SQLite_Encode','SQLite_ErrCode','SQLite_ErrMsg','SQLite_Escape',
            'SQLite_Exec','SQLite_FetchData','SQLite_FetchNames',
            'SQLite_GetTable','SQLite_GetTable2d','SQLite_LastInsertRowID',
            'SQLite_LibVersion','SQLite_Open','SQLite_Query',
            'SQLite_QueryFinalize','SQLite_QueryReset','SQLite_QuerySingleRow',
            'SQLite_SaveMode','SQLite_SetTimeout','SQLite_Shutdown',
            'SQLite_SQLiteExe','SQLite_Startup','SQLite_TotalChanges',
            'StringAddComma','StringBetween','StringEncrypt','StringInsert',
            'StringProper','StringRepeat','StringReverse','StringSplit',
            'StringToHex','TCPIpToName','TempFile','TicksToTime','Timer_Diff',
            'Timer_GetTimerID','Timer_Init','Timer_KillAllTimers',
            'Timer_KillTimer','Timer_SetTimer','TimeToTicks','VersionCompare',
            'viClose','viExecCommand','viFindGpib','viGpibBusReset','viGTL',
            'viOpen','viSetAttribute','viSetTimeout','WeekNumberISO',
            'WinAPI_AttachConsole','WinAPI_AttachThreadInput','WinAPI_Beep',
            'WinAPI_BitBlt','WinAPI_CallNextHookEx','WinAPI_Check',
            'WinAPI_ClientToScreen','WinAPI_CloseHandle',
            'WinAPI_CommDlgExtendedError','WinAPI_CopyIcon',
            'WinAPI_CreateBitmap','WinAPI_CreateCompatibleBitmap',
            'WinAPI_CreateCompatibleDC','WinAPI_CreateEvent',
            'WinAPI_CreateFile','WinAPI_CreateFont','WinAPI_CreateFontIndirect',
            'WinAPI_CreateProcess','WinAPI_CreateSolidBitmap',
            'WinAPI_CreateSolidBrush','WinAPI_CreateWindowEx',
            'WinAPI_DefWindowProc','WinAPI_DeleteDC','WinAPI_DeleteObject',
            'WinAPI_DestroyIcon','WinAPI_DestroyWindow','WinAPI_DrawEdge',
            'WinAPI_DrawFrameControl','WinAPI_DrawIcon','WinAPI_DrawIconEx',
            'WinAPI_DrawText','WinAPI_EnableWindow','WinAPI_EnumDisplayDevices',
            'WinAPI_EnumWindows','WinAPI_EnumWindowsPopup',
            'WinAPI_EnumWindowsTop','WinAPI_ExpandEnvironmentStrings',
            'WinAPI_ExtractIconEx','WinAPI_FatalAppExit','WinAPI_FillRect',
            'WinAPI_FindExecutable','WinAPI_FindWindow','WinAPI_FlashWindow',
            'WinAPI_FlashWindowEx','WinAPI_FloatToInt',
            'WinAPI_FlushFileBuffers','WinAPI_FormatMessage','WinAPI_FrameRect',
            'WinAPI_FreeLibrary','WinAPI_GetAncestor','WinAPI_GetAsyncKeyState',
            'WinAPI_GetClassName','WinAPI_GetClientHeight',
            'WinAPI_GetClientRect','WinAPI_GetClientWidth',
            'WinAPI_GetCurrentProcess','WinAPI_GetCurrentProcessID',
            'WinAPI_GetCurrentThread','WinAPI_GetCurrentThreadId',
            'WinAPI_GetCursorInfo','WinAPI_GetDC','WinAPI_GetDesktopWindow',
            'WinAPI_GetDeviceCaps','WinAPI_GetDIBits','WinAPI_GetDlgCtrlID',
            'WinAPI_GetDlgItem','WinAPI_GetFileSizeEx','WinAPI_GetFocus',
            'WinAPI_GetForegroundWindow','WinAPI_GetIconInfo',
            'WinAPI_GetLastError','WinAPI_GetLastErrorMessage',
            'WinAPI_GetModuleHandle','WinAPI_GetMousePos','WinAPI_GetMousePosX',
            'WinAPI_GetMousePosY','WinAPI_GetObject','WinAPI_GetOpenFileName',
            'WinAPI_GetOverlappedResult','WinAPI_GetParent',
            'WinAPI_GetProcessAffinityMask','WinAPI_GetSaveFileName',
            'WinAPI_GetStdHandle','WinAPI_GetStockObject','WinAPI_GetSysColor',
            'WinAPI_GetSysColorBrush','WinAPI_GetSystemMetrics',
            'WinAPI_GetTextExtentPoint32','WinAPI_GetWindow',
            'WinAPI_GetWindowDC','WinAPI_GetWindowHeight',
            'WinAPI_GetWindowLong','WinAPI_GetWindowRect',
            'WinAPI_GetWindowText','WinAPI_GetWindowThreadProcessId',
            'WinAPI_GetWindowWidth','WinAPI_GetXYFromPoint',
            'WinAPI_GlobalMemStatus','WinAPI_GUIDFromString',
            'WinAPI_GUIDFromStringEx','WinAPI_HiWord','WinAPI_InProcess',
            'WinAPI_IntToFloat','WinAPI_InvalidateRect','WinAPI_IsClassName',
            'WinAPI_IsWindow','WinAPI_IsWindowVisible','WinAPI_LoadBitmap',
            'WinAPI_LoadImage','WinAPI_LoadLibrary','WinAPI_LoadLibraryEx',
            'WinAPI_LoadShell32Icon','WinAPI_LoadString','WinAPI_LocalFree',
            'WinAPI_LoWord','WinAPI_MakeDWord','WinAPI_MAKELANGID',
            'WinAPI_MAKELCID','WinAPI_MakeLong','WinAPI_MessageBeep',
            'WinAPI_Mouse_Event','WinAPI_MoveWindow','WinAPI_MsgBox',
            'WinAPI_MulDiv','WinAPI_MultiByteToWideChar',
            'WinAPI_MultiByteToWideCharEx','WinAPI_OpenProcess',
            'WinAPI_PointFromRect','WinAPI_PostMessage','WinAPI_PrimaryLangId',
            'WinAPI_PtInRect','WinAPI_ReadFile','WinAPI_ReadProcessMemory',
            'WinAPI_RectIsEmpty','WinAPI_RedrawWindow',
            'WinAPI_RegisterWindowMessage','WinAPI_ReleaseCapture',
            'WinAPI_ReleaseDC','WinAPI_ScreenToClient','WinAPI_SelectObject',
            'WinAPI_SetBkColor','WinAPI_SetCapture','WinAPI_SetCursor',
            'WinAPI_SetDefaultPrinter','WinAPI_SetDIBits','WinAPI_SetEvent',
            'WinAPI_SetFocus','WinAPI_SetFont','WinAPI_SetHandleInformation',
            'WinAPI_SetLastError','WinAPI_SetParent',
            'WinAPI_SetProcessAffinityMask','WinAPI_SetSysColors',
            'WinAPI_SetTextColor','WinAPI_SetWindowLong','WinAPI_SetWindowPos',
            'WinAPI_SetWindowsHookEx','WinAPI_SetWindowText',
            'WinAPI_ShowCursor','WinAPI_ShowError','WinAPI_ShowMsg',
            'WinAPI_ShowWindow','WinAPI_StringFromGUID','WinAPI_SubLangId',
            'WinAPI_SystemParametersInfo','WinAPI_TwipsPerPixelX',
            'WinAPI_TwipsPerPixelY','WinAPI_UnhookWindowsHookEx',
            'WinAPI_UpdateLayeredWindow','WinAPI_UpdateWindow',
            'WinAPI_ValidateClassName','WinAPI_WaitForInputIdle',
            'WinAPI_WaitForMultipleObjects','WinAPI_WaitForSingleObject',
            'WinAPI_WideCharToMultiByte','WinAPI_WindowFromPoint',
            'WinAPI_WriteConsole','WinAPI_WriteFile',
            'WinAPI_WriteProcessMemory','WinNet_AddConnection',
            'WinNet_AddConnection2','WinNet_AddConnection3',
            'WinNet_CancelConnection','WinNet_CancelConnection2',
            'WinNet_CloseEnum','WinNet_ConnectionDialog',
            'WinNet_ConnectionDialog1','WinNet_DisconnectDialog',
            'WinNet_DisconnectDialog1','WinNet_EnumResource',
            'WinNet_GetConnection','WinNet_GetConnectionPerformance',
            'WinNet_GetLastError','WinNet_GetNetworkInformation',
            'WinNet_GetProviderName','WinNet_GetResourceInformation',
            'WinNet_GetResourceParent','WinNet_GetUniversalName',
            'WinNet_GetUser','WinNet_OpenEnum','WinNet_RestoreConnection',
            'WinNet_UseConnection','Word_VersionInfo','WordAttach','WordCreate',
            'WordDocAdd','WordDocAddLink','WordDocAddPicture','WordDocClose',
            'WordDocFindReplace','WordDocGetCollection',
            'WordDocLinkGetCollection','WordDocOpen','WordDocPrint',
            'WordDocPropertyGet','WordDocPropertySet','WordDocSave',
            'WordDocSaveAs','WordErrorHandlerDeRegister',
            'WordErrorHandlerRegister','WordErrorNotify','WordMacroRun',
            'WordPropertyGet','WordPropertySet','WordQuit'
            ),
        5 => array(
            'ce','comments-end','comments-start','cs','include','include-once',
            'NoTrayIcon','RequireAdmin'
            ),
        6 => array(
            'AutoIt3Wrapper_Au3Check_Parameters',
            'AutoIt3Wrapper_Au3Check_Stop_OnWarning',
            'AutoIt3Wrapper_Change2CUI','AutoIt3Wrapper_Compression',
            'AutoIt3Wrapper_cvsWrapper_Parameters','AutoIt3Wrapper_Icon',
            'AutoIt3Wrapper_Outfile','AutoIt3Wrapper_Outfile_Type',
            'AutoIt3Wrapper_Plugin_Funcs','AutoIt3Wrapper_Res_Comment',
            'AutoIt3Wrapper_Res_Description','AutoIt3Wrapper_Res_Field',
            'AutoIt3Wrapper_Res_File_Add','AutoIt3Wrapper_Res_Fileversion',
            'AutoIt3Wrapper_Res_FileVersion_AutoIncrement',
            'AutoIt3Wrapper_Res_Icon_Add','AutoIt3Wrapper_Res_Language',
            'AutoIt3Wrapper_Res_LegalCopyright',
            'AutoIt3Wrapper_res_requestedExecutionLevel',
            'AutoIt3Wrapper_Res_SaveSource','AutoIt3Wrapper_Run_After',
            'AutoIt3Wrapper_Run_Au3check','AutoIt3Wrapper_Run_Before',
            'AutoIt3Wrapper_Run_cvsWrapper','AutoIt3Wrapper_Run_Debug_Mode',
            'AutoIt3Wrapper_Run_Obfuscator','AutoIt3Wrapper_Run_Tidy',
            'AutoIt3Wrapper_Tidy_Stop_OnError','AutoIt3Wrapper_UseAnsi',
            'AutoIt3Wrapper_UseUpx','AutoIt3Wrapper_UseX64',
            'AutoIt3Wrapper_Version','EndRegion','forceref',
            'Obfuscator_Ignore_Funcs','Obfuscator_Ignore_Variables',
            'Obfuscator_Parameters','Region','Tidy_Parameters'
            )
        ),
    'SYMBOLS' => array(
        '(',')','[',']',
        '+','-','*','/','&','^',
        '=','+=','-=','*=','/=','&=',
        '==','<','<=','>','>=',
        ',','.'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF; font-weight: bold;',
            2 => 'color: #800000; font-weight: bold;',
            3 => 'color: #000080; font-style: italic; font-weight: bold;',
            4 => 'color: #0080FF; font-style: italic; font-weight: bold;',
            5 => 'color: #F000FF; font-style: italic;',
            6 => 'color: #A00FF0; font-style: italic;'
            ),
        'COMMENTS' => array(
            'MULTI' => 'font-style: italic; color: #669900;',
            0 => 'font-style: italic; color: #009933;',
            1 => 'font-style: italic; color: #9977BB;',
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => 'color: #FF0000; font-weight: bold;'
            ),
        'STRINGS' => array(
            0 => 'font-weight: bold; color: #9977BB;'
            ),
        'NUMBERS' => array(
            0 => 'color: #AC00A9; font-style: italic; font-weight: bold;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF; font-style: italic; font-weight: bold;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #FF0000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'font-weight: bold; color: #AA0000;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://www.autoitscript.com/autoit3/docs/keywords.htm',
        2 => 'http://www.autoitscript.com/autoit3/docs/macros.htm',
        3 => 'http://www.autoitscript.com/autoit3/docs/functions/{FNAME}.htm',
        4 => '',
        5 => '',
        6 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        //Variables
        0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*'
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true,
        2 => true,
        3 => true
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            4 => array(
                'DISALLOWED_BEFORE' => '(? array(
                'DISALLOWED_BEFORE' => '(? array(
                'DISALLOWED_BEFORE' => '(?geshi/geshi/stonescript.php0000664000175000017500000004417411702144551015266 0ustar  benbebenbe 'StoneScript',
    'COMMENT_SINGLE' => array(1 => "--"),
    'COMMENT_MULTI' => array("--[[" => "]]"),
    'COMMENT_REGEXP' => array(
        4 => '/<<\s*?(\w+)\\n.*?\\n\\1(?![a-zA-Z0-9])/si',
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '`','\''),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        // Blue - General Keywords
        1 => array(
                'and', 'begin', 'break', 'do', 'else', 'elseif', 'end',
                'for', 'if', 'in', 'while', 'next', 'not', 'or', 'redo',
                'then', 'unless', 'until', 'when', 'false', 'nil', 'self',
                'true', 'local', 'this', 'return',
            ),
        // Dark Blue - Main API names
        2 => array(
                'animation', 'application', 'cache', 'camera', 'debug',
                'dynamics', 'group', 'hashtable', 'hud', 'input', 'light',
                'log', 'math', 'mesh', 'microphone', 'music', 'navigation',
                'network', 'object', 'pixelmap', 'projector', 'scene',
                'sensor', 'server', 'session', 'sfx', 'shape', 'sound',
                'string', 'system', 'table', 'user', 'video', 'xml',
                // Plugin API names
                'plasma', 'watersim',
                'winDirectories',
                'ActionSheet', 'Alert', 'Mail', 'Picker', 'StatusBar',
            ),
        // Constants
        // Can be commented out if performance is crucial -> then these keywords will appear in a slightly lighter color
        3 => array(
                //Animation
                'kPlaybackModeLoop', 'kPlaybackModeLoopMirrored', 'kPlaybackModeLoopReversed',
                'kPlaybackModeOnce', 'kPlaybackModeOnceReversed',
                //Application - Environment
                'kStatusLoading', 'kStatusReady', 'kStatusSaving', // 'kStatusNone'
                //Application - Options
                'kOptionAudioMasterVolume', 'kOptionAutomaticVirtualKeyboard', 'kOptionDynamicShadowsBufferCount',
                'kOptionDynamicShadowsBufferSize', 'kOptionDynamicShadowsConstantSampling', 'kOptionDynamicShadowsPCFSampleCount',
                'kOptionDynamicShadowsQuality', 'kOptionDynamicShadowsScreenSpaceBlur', 'kOptionFullscreen',
                'kOptionFullscreenHeight', 'kOptionFullscreenWidth', 'kOptionHardwareOcclusion',
                'kOptionMaxEventBouncesPerFrame', 'kOptionNetworkStreams', 'kOptionNetworkStreamsUseBrowser',
                'kOptionPrioritizeEventBounces', 'kOptionRenderingEnabled', 'kOptionShadersQuality',
                'kOptionSwapInterval', 'kOptionTerrainsQuality', 'kOptionTexturesAnisotropyLevel',
                'kOptionTexturesMipmapBias', 'kOptionTexturesQuality', 'kOptionViewportRotation',
                //Application - Resource Types
                'kResourceTypeAnimBank', 'kResourceTypeFont', 'kResourceTypeHUD',
                'kResourceTypeMaterial', 'kResourceTypeMesh', 'kResourceTypeParticle',
                'kResourceTypePixelMap', 'kResourceTypeSoundBank', 'kResourceTypeTexture',
                'kResourceTypeTextureClip', 'kResourceTypeTrail',
                //Cache
                'kPropertyHeight', 'kPropertySize', 'kPropertyWidth',
                //Dynamics
                'kAxisX', 'kAxisY', 'kAxisZ',
                'kTypeBox', 'kTypeCapsule', 'kTypeSphere',
                //HUD
                'kAddressingModeClamp', 'kAddressingModeRepeat', 'kAlignCenter', 'kAlignJustify','kAlignLeft', 'kAlignRight',
                'kAlignTop', 'kBlendModeAdd', 'kBlendModeDefault', 'kBlendModeModulate', 'kCaseFixed', 'kCaseVariable',
                'kCommandTypeCallAction', 'kCommandTypeCopyCheckStateToRegister', 'kCommandTypeCopyEditTextToRegister',
                'kCommandTypeCopyListItemTextToRegister', 'kCommandTypeCopyListLastSelectedItemToRegister',
                'kCommandTypeCopyProgressValueToRegister', 'kCommandTypeCopySliderValueToRegister', 'kCommandTypeCopyTagToRegister',
                'kCommandTypeEnterModalMode', 'kCommandTypeInterpolateBackgroundColor', 'kCommandTypeInterpolateBorderColor',
                'kCommandTypeInterpolateForegroundColor', 'kCommandTypeInterpolateHeight', 'kCommandTypeInterpolateOpacity',
                'kCommandTypeInterpolatePosition', 'kCommandTypeInterpolateProgressValue', 'kCommandTypeInterpolateRotation',
                'kCommandTypeInterpolateSize', 'kCommandTypeInterpolateWidth', 'kCommandTypeLeaveModalMode',
                'kCommandTypeMatchScreenSpaceBottomLeftCorner', 'kCommandTypeMatchScreenSpaceBottomRightCorner',
                'kCommandTypeMatchScreenSpaceCenter', 'kCommandTypeMatchScreenSpaceHeight', 'kCommandTypeMatchScreenSpaceTopLeftCorner',
                'kCommandTypeMatchScreenSpaceTopRightCorner', 'kCommandTypeMatchScreenSpaceWidth', 'kCommandTypePauseMovie',
                'kCommandTypePauseSound', 'kCommandTypePauseTimer', 'kCommandTypePlayMovie', 'kCommandTypePlaySound',
                'kCommandTypePlaySoundLoop', 'kCommandTypeResumeSound', 'kCommandTypeSendEventToUser', 'kCommandTypeSetActive',
                'kCommandTypeSetBackgroundColor', 'kCommandTypeSetBackgroundImage', 'kCommandTypeSetBackgroundImageUVOffset',
                'kCommandTypeSetBackgroundImageUVScale', 'kCommandTypeSetBorderColor', 'kCommandTypeSetButtonText',
                'kCommandTypeSetCheckState', 'kCommandTypeSetCheckText', 'kCommandTypeSetCursorPosition', 'kCommandTypeSetCursorVisible',
                'kCommandTypeSetEditText', 'kCommandTypeSetFocus', 'kCommandTypeSetForegroundColor', 'kCommandTypeSetHeight',
                'kCommandTypeSetLabelText', 'kCommandTypeSetOpacity', 'kCommandTypeSetPosition', 'kCommandTypeSetRotation',
                'kCommandTypeSetSize', 'kCommandTypeSetVisible', 'kCommandTypeSetWidth', 'kCommandTypeSleep', 'kCommandTypeStartTimer',
                'kCommandTypeStopAction', 'kCommandTypeStopMovie', 'kCommandTypeStopSound', 'kCommandTypeStopTimer',
                'kComponentTypeButton', 'kComponentTypeCheck', 'kComponentTypeContainer', 'kComponentTypeEdit', 'kComponentTypeLabel',
                'kComponentTypeList', 'kComponentTypeMovie', 'kComponentTypePicture', 'kComponentTypePixelMap', 'kComponentTypeProgress',
                'kComponentTypeRenderMap', 'kComponentTypeSlider', 'kCursorShapeCross', 'kCursorShapeDefault', 'kCursorShapeHandPointing',
                'kCursorShapeIBeam', 'kCursorShapeNone', 'kCursorShapeWaiting', 'kDirectionLeftToRight', 'kDirectionRightToLeft',
                'kEncodingASCII', 'kEncodingUTF8', 'kEventTypeGainFocus', 'kEventTypeLooseFocus', 'kEventTypeMouseEnter',
                'kEventTypeMouseLeave', 'kFillModeSolid', 'kInterpolatorTypeLinear', 'kInterpolatorTypePower2', 'kInterpolatorTypePower3',
                'kInterpolatorTypePower4', 'kInterpolatorTypeRoot2', 'kInterpolatorTypeRoot3', 'kInterpolatorTypeRoot4',
                'kInterpolatorTypeSpring1', 'kInterpolatorTypeSpring2', 'kInterpolatorTypeSpring3', 'kInterpolatorTypeSpring4',
                'kInterpolatorTypeSpring5', 'kInterpolatorTypeSpring6',
                'kOriginBottom', 'kOriginBottomLeft', 'kOriginBottomRight', 'kOriginCenter', 'kOriginLeft', 'kOriginRight',
                'kOriginTop', 'kOriginTopLeft', 'kOriginTopRight', 'kProgressTypeBottomToTop', 'kProgressTypeLeftToRight',
                'kProgressTypeRightToLeft', 'kProgressTypeTopToBottom', 'kRuntimeValueCallArgument0', 'kRuntimeValueCallArgument1',
                'kRuntimeValueCallArgument2', 'kRuntimeValueCallArgument3', 'kRuntimeValueCurrentUser', 'kRuntimeValueCurrentUserMainCamera',
                'kRuntimeValueRegister0', 'kRuntimeValueRegister1', 'kRuntimeValueRegister2', 'kRuntimeValueRegister3',
                'kShapeTypeEllipsoid', 'kShapeTypeRectangle', 'kShapeTypeRoundRectangle', 'kSliderTypeBottomToTop',
                'kSliderTypeLeftToRight', 'kSliderTypeRightToLeft', 'kSliderTypeTopToBottom', 'kWaveTypeConstant',
                'kWaveTypeSawtooth', 'kWaveTypeSawtoothInv', 'kWaveTypeSinus', 'kWaveTypeSinusNoise', 'kWaveTypeSquare', 'kWaveTypeTriangle',
                //Input
                'kJoypadTypeIPhone', 'kJoypadTypeNone', 'kJoypadTypePhone', 'kJoypadTypeStandard', 'kJoypadTypeWiimote',
                'kKey0', 'kKey1', 'kKey2', 'kKey3', 'kKey4', 'kKey5', 'kKey6', 'kKey7', 'kKey8', 'kKey9', 'kKeyA', 'kKeyB',
                'kKeyBackspace', 'kKeyC', 'kKeyD', 'kKeyDelete', 'kKeyDown', 'kKeyE', 'kKeyEnd', 'kKeyEscape', 'kKeyF',
                'kKeyF1', 'kKeyF10', 'kKeyF11', 'kKeyF12', 'kKeyF2', 'kKeyF3', 'kKeyF4', 'kKeyF5', 'kKeyF6', 'kKeyF7',
                'kKeyF8', 'kKeyF9', 'kKeyG', 'kKeyH', 'kKeyHome', 'kKeyI', 'kKeyInsert', 'kKeyJ', 'kKeyK', 'kKeyL',
                'kKeyLAlt', 'kKeyLControl', 'kKeyLeft', 'kKeyLShift', 'kKeyM', 'kKeyN', 'kKeyO', 'kKeyP', 'kKeyPageDown',
                'kKeyPageUp', 'kKeyQ', 'kKeyR', 'kKeyRAlt', 'kKeyRControl', 'kKeyReturn', 'kKeyRight', 'kKeyRShift',
                'kKeyS', 'kKeySpace', 'kKeyT', 'kKeyTab', 'kKeyU', 'kKeyUp', 'kKeyV', 'kKeyW', 'kKeyX', 'kKeyY',
                'kKeyZ', 'kJoypadButtonPSPCircle', 'kJoypadButtonPSPCross', 'kJoypadButtonPSPDown', 'kJoypadButtonPSPL',
                'kJoypadButtonPSPLeft', 'kJoypadButtonPSPR', 'kJoypadButtonPSPRight', 'kJoypadButtonPSPSelect',
                'kJoypadButtonPSPSquare', 'kJoypadButtonPSPStart', 'kJoypadButtonPSPTriangle', 'kJoypadButtonPSPUp',
                'kJoypadTypePSP', 'kJoypadButtonWiimoteA', 'kJoypadButtonWiimoteB', 'kJoypadButtonWiimoteC',
                'kJoypadButtonWiimoteDown', 'kJoypadButtonWiimoteHome', 'kJoypadButtonWiimoteLeft',
                'kJoypadButtonWiimoteMinus', 'kJoypadButtonWiimoteOne', 'kJoypadButtonWiimotePlus',
                'kJoypadButtonWiimoteRight', 'kJoypadButtonWiimoteTwo', 'kJoypadButtonWiimoteUp', 'kJoypadButtonWiimoteZ',
                //Light
                'kTypeDirectional', 'kTypePoint',
                //Math
                'kEpsilon', 'kInfinity', 'kPi',
                //Mesh
                'kLockModeRead', 'kLockModeWrite', 'kLockReadWrite',
                //Network
                'kBluetoothServerPort', 'kDefaultServerPort', 'kStatusAuthenticated', 'kStatusSearchFinished', // 'kStatusNone', 'kStatusPending',
                //Object
                'kControllerTypeAI', 'kControllerTypeAnimation', 'kControllerTypeAny', 'kControllerTypeDynamics',
                'kControllerTypeNavigation', 'kControllerTypeSound', 'kGlobalSpace', 'kLocalSpace', 'kParentSpace',
                'kTransformOptionInheritsParentRotation', 'kTransformOptionInheritsParentScale', 'kTransformOptionInheritsParentTranslation',
                'kTransformOptionTranslationAffectedByParentRotation', 'kTransformOptionTranslationAffectedByParentScale', 'kTypeCamera',
                'kTypeCollider', 'kTypeDummy', 'kTypeGroup', 'kTypeLight', 'kTypeOccluder', 'kTypeProjector', 'kTypeReflector',
                'kTypeSensor', 'kTypeSfx', 'kTypeShape',
                //Pixelmap
                'kBlendModeDecal', 'kBlendModeReplace', 'kFillModeBrush', 'kFillModeNone', 'kPenModeBrush', // 'kFillModeSolid',
                'kPenModeNone', 'kPenModeSolid',
                //Projector
                'kMapTypeMovie', 'kMapTypePixelMap', 'kMapTypeRenderMap', 'kMapTypeTexture', 'kMapTypeTextureClip',
                //Scene
                'kFilteringModeBilinear', 'kFilteringModeNearest', 'kFilteringModeTrilinear', // 'kAddressingModeClamp', 'kAddressingModeRepeat',
                'kSkyBoxFaceBack', 'kSkyBoxFaceBottom', 'kSkyBoxFaceFront', 'kSkyBoxFaceLeft', 'kSkyBoxFaceRight', 'kSkyBoxFaceTop',
                //Sensor
                'kShapeTypeBox', 'kShapeTypeSphere',
                //Server
                'kStatusConnected', 'kStatusNone', 'kStatusPending',
                //Session - duplicate keywords
                //'kStatusConnected', 'kStatusNone', 'kStatusPending',
                //Shape
                'kMapTypeUnknown', 'kCurveTypeBezier', 'kCurveTypeBSpline', 'kCurveTypeCatmullRom', 'kCurveTypePolyLine',
                // 'kMapTypeMovie', 'kMapTypePixelMap', 'kMapTypeRenderMap', 'kMapTypeTexture',  'kMapTypeTextureClip',

                //System
                'kOSType3DS', 'kOSTypeBada', 'kOSTypeBrew', 'kOSTypePalm', 'kOSTypePS3',
                'kClientTypeEditor', 'kClientTypeEmbedded', 'kClientTypeStandalone',
                'kGPUCapabilityBloomFilterSupport', 'kGPUCapabilityContrastFilterSupport', 'kGPUCapabilityDepthBlurFilterSupport',
                'kGPUCapabilityDistortionFilterSupport', 'kGPUCapabilityDynamicShadowsSupport', 'kGPUCapabilityHardwareOcclusionSupport',
                'kGPUCapabilityHardwareRenderingSupport', 'kGPUCapabilityMonochromeFilterSupport', 'kGPUCapabilityMotionBlurFilterSupport',
                'kGPUCapabilityPixelShaderSupport', 'kGPUCapabilityVelocityBlurFilterSupport', 'kGPUCapabilityVertexShaderSupport',
                'kLanguageAlbanian', 'kLanguageArabic', 'kLanguageBulgarian', 'kLanguageCatalan', 'kLanguageCzech', 'kLanguageDanish',
                'kLanguageDutch', 'kLanguageEnglish', 'kLanguageFinnish', 'kLanguageFrench', 'kLanguageGerman', 'kLanguageGreek',
                'kLanguageHebrew', 'kLanguageHungarian', 'kLanguageIcelandic', 'kLanguageItalian', 'kLanguageJapanese', 'kLanguageKorean',
                'kLanguageNorwegian', 'kLanguagePolish', 'kLanguagePortuguese', 'kLanguageRomanian', 'kLanguageRussian',
                'kLanguageSerboCroatian', 'kLanguageSlovak', 'kLanguageSpanish', 'kLanguageSwedish', 'kLanguageThai',
                'kLanguageTurkish', 'kLanguageUnknown', 'kLanguageUrdu', 'kOSTypeAndroid', 'kOSTypeAngstrom', 'kOSTypeIPhone',
                'kOSTypeLinux', 'kOSTypeMac', 'kOSTypePSP', 'kOSTypeSymbian', 'kOSTypeWii', 'kOSTypeWindows', 'kOSTypeWindowsCE',
            ),
        // Not used yet
        4 => array(
                'dummycommand',
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '%', '&', '*', '|', '/', '<', '>',
        '+', '-', '=>', '<<'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color:#0000FF; font-weight:bold;',
            2 => 'color:#000088; font-weight:bold;',
            3 => 'color:#C088C0; font-weight:bold;',
            4 => 'color:#00FEFE; font-weight:bold;',
            ),
        'COMMENTS' => array(
            1 => 'color:#008000; font-style:italic;',
            4 => 'color: #cc0000; font-style: italic;',
            'MULTI' => 'color:#008000; font-style:italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color:#000099;'
            ),
        'BRACKETS' => array(
            0 => 'color:#000000; font-weight:bold;'
            ),
        'STRINGS' => array(
            0 => 'color:#888800;'
            ),
        'NUMBERS' => array(
            0 => 'color:#AA0000;'
            ),
        // names after "."
        'METHODS' => array(
            1 => 'color:#FF00FF; font-weight:bold;'
            ),
        'SYMBOLS' => array(
            0 => 'color:#000000; font-weight:bold;'
            ),
        'REGEXPS' => array(
            0 => 'color:#ff6633; font-weight:bold;',
            1 => 'color:#0066ff; font-weight:bold;',
            2 => 'color:#6666ff; font-weight:bold;',
            3 => 'color:#ff3333; font-weight:bold;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        0 => array(//Variables
            GESHI_SEARCH => "([[:space:]])(\\$[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        1 => array(//Arrays
            GESHI_SEARCH => "([[:space:]])(@[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        2 => "([A-Z][a-zA-Z0-9_]*::)+[A-Z][a-zA-Z0-9_]*",//Static OOP symbols
        3 => array(
            GESHI_SEARCH => "([[:space:]]|\[|\()(:[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            '<%' => '%>'
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        ),
    'TAB_WIDTH' => 2
);

?>geshi/geshi/latex.php0000664000175000017500000002117212014173440014013 0ustar  benbebenbe 'LaTeX',
    'COMMENT_SINGLE' => array(
        1 => '%'
        ),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'addlinespace','and','address','appendix','author','backmatter',
            'bfseries','bibitem','bigskip','blindtext','caption','captionabove',
            'captionbelow','cdot','centering','chapter','cite','color',
            'colorbox','date','dedication','def','definecolor','documentclass',
            'edef','else','email','emph','eqref','extratitle','fbox','fi',
            'flushleft','flushright','footnote','frac','frontmatter',
            'graphicspath','hfil','hfill','hfilll','hline','hspace','huge','ifx','include',
            'includegraphics','infty','input','int','item','itemsep',
            'KOMAoption','KOMAoptions','label','LaTeX','left','let','limits',
            'listfiles','listoffigures','listoftables','lowertitleback',
            'mainmatter','makeatletter','makeatother','makebox','makeindex',
            'maketitle','mbox','mediumskip','newcommand','newenvironment',
            'newpage','nocite','nonumber','pagestyle','par','paragraph',
            'parbox','parident','parskip','partial','publishers','raggedleft',
            'raggedright','raisebox','ref','renewcommand','renewenvironment',
            'right','rule','section','setlength','sffamily','subject',
            'subparagraph','subsection','subsubsection','subtitle','sum',
            'table','tableofcontents','textbf','textcolor','textit',
            'textnormal','textsuperscript','texttt','textwidth','thanks','title',
            'titlehead','today','ttfamily','uppertitleback','urlstyle',
            'usepackage','vfil','vfill','vfilll','vspace'
            )
        ),
    'SYMBOLS' => array(
        "&", "\\", "{", "}", "[", "]"
        ),
    'CASE_SENSITIVE' => array(
        1 => true,
        GESHI_COMMENTS => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #800000;',
            ),
        'COMMENTS' => array(
            1 => 'color: #2C922C; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 =>  'color: #000000; font-weight: bold;'
            ),
        'BRACKETS' => array(
            ),
        'STRINGS' => array(
            0 =>  'color: #000000;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 =>  'color: #E02020; '
            ),
        'REGEXPS' => array(
            1 => 'color: #8020E0; font-weight: normal;',  // Math inner
            2 => 'color: #C08020; font-weight: normal;', // [Option]
            3 => 'color: #8020E0; font-weight: normal;', // Maths
            4 => 'color: #800000; font-weight: normal;', // Structure: Labels
            5 => 'color: #00008B; font-weight: bold;',  // Structure (\section{->x<-})
            6 => 'color: #800000; font-weight: normal;', // Structure (\section)
            7 => 'color: #0000D0; font-weight: normal;', // Environment \end or \begin{->x<-} (brighter blue)
            8 => 'color: #C00000; font-weight: normal;', // Structure \end or \begin
            9 => 'color: #2020C0; font-weight: normal;', // {...}
            10 => 'color: #800000; font-weight: normal;', // \%, \& etc.
            11 => 'color: #E00000; font-weight: normal;', // \@keyword
            12 => 'color: #800000; font-weight: normal;', // \keyword
        ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://www.golatex.de/wiki/index.php?title=%5C{FNAME}',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        // Math inner
        1 => array(
            GESHI_SEARCH => "(\\\\begin\\{(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|alignat|flalign)\\})(.*)(\\\\end\\{\\2\\})",
            GESHI_REPLACE => '\3',
            GESHI_MODIFIERS => 'Us',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => '\4'
            ),
        // [options]
        2 => array(
            GESHI_SEARCH => "(?<=\[).*(?=\])",
            GESHI_REPLACE => '\0',
            GESHI_MODIFIERS => 'Us',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        // Math mode with $ ... $
        3 => array(
            GESHI_SEARCH => "\\$.+\\$",
            GESHI_REPLACE => '\0',
            GESHI_MODIFIERS => 'Us',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        // Structure: Label
        4 => "\\\\(?:label|pageref|ref|cite)(?=[^a-zA-Z])",
        // Structure: sections
        5 => array(
            GESHI_SEARCH => "(\\\\(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph|addpart|addchap|addsec)\*?\\{)(.*)(?=\\})",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'U',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        // Structure: sections
        6 => "\\\\(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph|addpart|addchap|addsec)\*?(?=[^a-zA-Z])",
        // environment \begin{} and \end{} (i.e. the things inside the {})
        7 => array(
            GESHI_SEARCH => "(\\\\(?:begin|end)\\{)(.*)(?=\\})",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'U',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        // Structure \begin and \end
        8 => "\\\\(?:end|begin)(?=[^a-zA-Z])",
        // {parameters}
        9 => array(
            GESHI_SEARCH => "(?<=\\{)(?!<\|!REG3XP5!>).*?(?=\\})",
            GESHI_REPLACE => '\0',
            GESHI_MODIFIERS => 'Us',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        // \%, \& usw.
        10 => "\\\\(?:[_$%]|&)",
        //  \@keywords
        11 => "(?)\\\\@[a-zA-Z]+\*?",
        // \keywords
        12 => "(?)\\\\[a-zA-Z]+\*?",

// ---------------------------------------------
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '\\'
        ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?<=\\\\)",
            'DISALLOWED_AFTER' => "(?![A-Za-z0-9])"
        ),
        'ENABLE_FLAGS' => array(
            'NUMBERS' => GESHI_NEVER,
            'BRACKETS' => GESHI_NEVER
        )
    )
);

?>geshi/geshi/magiksf.php0000664000175000017500000001435312014173447014331 0ustar  benbebenbe null,
    'LANG_NAME' => 'MagikSF',
    'COMMENT_SINGLE' => array(1 => '##', 2 => '#%', 3 => '#'),
    'COMMENT_MULTI' => array("_pragma(" => ")"),
    //Multiline-continued single-line comments
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            '_block', '_endblock', '_proc', '_endproc', '_loop', '_endloop',
            '_method', '_endmethod',
            '_protect', '_endprotect', '_protection', '_locking',
            '_continue',
            ),
        2 => array(
            '_self', '_thisthread', '_pragma', '_private', '_abstract',
            '_local', '_global', '_dynamic', '_package', '_constant',
            '_import', '_iter', '_lock', '_optional', '_recursive', '_super'
            ),
        3 => array(
            '_if', '_endif', '_then', '_else', '_elif', '_orif', '_andif', '_for', '_over',
            '_try', '_endtry', '_when', '_throw', '_catch', '_endcatch', '_handling',
            '_finally', '_loopbody', '_return', '_leave', '_with'
            ),
        4 => array(
            '_false', '_true', '_maybe', '_unset', '_no_way'
            ),
        5 => array(
            '_mod', '_div', '_or', '_and', '_cf', '_is', '_isnt', '_not', '_gather', '_scatter',
            '_allresults', '_clone', '_xor'
            ),
        6 => array(
            'def_slotted_exemplar', 'write_string', 'write', 'condition',
            'record_transaction', 'gis_program_manager', 'perform', 'define_shared_constant',
            'property_list', 'rope', 'def_property', 'def_mixin'
            ),
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']',
        '+', '-', '*', '/', '**',
        '=', '<', '>', '<<', '>>',
        ',', '$',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #ff3f3f;',
            3 => 'color: #3f7f3f; font-weight: bold;',
            4 => 'color: #cc66cc;',
            5 => 'color: #ff3fff; font-weight: bold;',
            6 => 'font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #339933; font-weight: bold;',
            2 => 'color: #993333;',
            3 => 'color: #339933;',
            'MULTI' => 'color: #7f7f7f; font-style: italic',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #ff3f3f;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #ff3f3f;'
            ),
        'REGEXPS' => array(
            1 => 'color: #3f3fff;',
            2 => 'color: #3f3fff;',
            3 => 'color: #cc66cc;',
            4 => 'color: #7f3f7f; font-style: italic;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        1 => array(
            GESHI_SEARCH => '\b[a-zA-Z0-9_]+:', // package identifiers
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        2 => array(
            GESHI_SEARCH => ':(?:[a-zA-Z0-9!?_]+|(?:[].*?[]))*', //symbols
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        3 => array(
            GESHI_SEARCH => '%space|%tab|%newline|%.', //characters
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        4 => array(
            GESHI_SEARCH => '@(?:[a-zA-Z0-9!?_]+|(?:[].*?[]))*', //symbols
            GESHI_REPLACE => '\\0',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/email.php0000664000175000017500000001674312014173416014000 0ustar  benbebenbe 'eMail (mbox)',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'HTTP', 'SMTP', 'ASMTP', 'ESMTP'
            ),
        2 => array(
            'Authentication-Results','Comment','Content-Description','Content-Type',
            'Content-Disposition','Content-Transfer-Encoding','Delivered-To',
            'Dkim-Signature','Domainkey-Signature','In-Reply-To','Message-Id',
            'MIME-Version','OpenPGP','Received','Received-SPF','References',
            'Reply-To', 'Resend-From','Resend-To','Return-Path','User-Agent'
            ),
        3 => array(
            'Date','From','Sender','Subject','To','CC'
            ),
        4 => array(
            'by', 'for', 'from', 'id', 'with'
            )
        ),
    'SYMBOLS' => array(
        ':', ';', '<', '>', '[', ']'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => false,
        3 => false,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #800000; font-weight: bold;',
            4 => 'font-weight: bold;',
            ),
        'COMMENTS' => array(
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            0 => 'color: #000040;',
            ),
        'REGEXPS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #0000FF;',
            3 => 'color: #008000;',
            4 => 'color: #0000FF; font-weight: bold;',
            5 => 'font-weight: bold;',
            6 => 'color: #400080;'
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        // Non-Standard-Header
        1 => array(
            GESHI_SEARCH => "(?<=\A\x20|\n)x-[a-z0-9\-]*(?=\s*:|\s*<)",
            GESHI_REPLACE => "\\0",
            GESHI_MODIFIERS => "smi",
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            ),
        //Email-Adresses or Mail-IDs
        2 => array(
            GESHI_SEARCH => "\b(?\"?)[\w\.\-]+\k@(?!-)[\w\-]+(? "\\0",
            GESHI_MODIFIERS => "mi",
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            ),
        //Date values in RFC format
        3 => array(
            GESHI_SEARCH => "\b(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s+\d\d?\s+" .
                "(?:Jan|Feb|Mar|apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+" .
                "\d{4}\s+\d\d?:\d\d:\d\d\s+[+\-]\d{4}(?:\s+\(\w+\))?",
            GESHI_REPLACE => "\\0",
            GESHI_MODIFIERS => "mi",
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            ),
        //IP addresses
        4 => array(
            GESHI_SEARCH => "(?<=\s)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=\s)|".
                "(?<=\[)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=\])|".
                "(?<==)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=<)|".

                "(?<=\s)(?:[a-f\d]{1,4}\:)+(?:[a-f\d]{0,4})?(?:\:[a-f\d]{1,4})+(?=\s)|".
                "(?<=\[)(?:[a-f\d]{1,4}\:)+(?:[a-f\d]{0,4})?(?:\:[a-f\d]{1,4})+(?=\])|".
                "(?<==)(?:[a-f\d]{1,4}\:)+(?:[a-f\d]{0,4})?(?:\:[a-f\d]{1,4})+(?=<)|".

                "(?<=\s)\:(?:\:[a-f\d]{1,4})+(?=\s)|".
                "(?<=\[)\:(?:\:[a-f\d]{1,4})+(?=\])|".
                "(?<==)\:(?:\:[a-f\d]{1,4})+(?=<)|".

                "(?<=\s)(?:[a-f\d]{1,4}\:)+\:(?=\s)|".
                "(?<=\[)(?:[a-f\d]{1,4}\:)+\:(?=\])|".
                "(?<==)(?:[a-f\d]{1,4}\:)+\:(?=<)",
            GESHI_REPLACE => "\\0",
            GESHI_MODIFIERS => "i",
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            ),
        //Field-Assignments
        5 => array(
            GESHI_SEARCH => "(?<=\s)[A-Z0-9\-\.]+(?==(?:$|\s$|[^\s=]))",
            GESHI_REPLACE => "\\0",
            GESHI_MODIFIERS => "mi",
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            ),
        //MIME type
        6 => array(
            GESHI_SEARCH => "(?<=\s)(?:audio|application|image|multipart|text|".
                "video|x-[a-z0-9\-]+)\/[a-z0-9][a-z0-9\-]*(?=\s|<|$)",
            GESHI_REPLACE => "\\0",
            GESHI_MODIFIERS => "m",
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        0 => "/(?P^)[A-Za-z][a-zA-Z0-9\-]*\s*:\s*(?:.|(?=\n\s)\n)*(?P$)/m"
    ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            2 => array(
                'DISALLOWED_BEFORE' => '(?<=\A\x20|\n)',
                'DISALLOWED_AFTER' => '(?=\s*:)',
            ),
            3 => array(
                'DISALLOWED_BEFORE' => '(?<=\A\x20|\n)',
                'DISALLOWED_AFTER' => '(?=\s*:)',
            ),
            4 => array(
                'DISALLOWED_BEFORE' => '(?<=\s)',
                'DISALLOWED_AFTER' => '(?=\s|\b)',
            )
        ),
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            'COMMENTS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER
        )
    )
);

?>geshi/geshi/dcs.php0000664000175000017500000001664612014173405013462 0ustar  benbebenbe 'DCS',
    'COMMENT_SINGLE' => array(
        1 => ';'
        ),
    'COMMENT_MULTI' => array(
        ),
    'COMMENT_REGEXP' => array(
        // Highlight embedded C code in a separate color:
        2 => '/\bINSERT_C_CODE\b.*?\bEND_C_CODE\b/ims'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array(
        '"'
        ),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => '',
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'abs', 'ascii_value', 'bit_value', 'blank_date', 'calc_unit_values', 'cm',
            'complete_months', 'complete_years', 'correct', 'create_input_file', 'cy',
            'date_convert', 'day', 'del_output_separator',
            'delete_existing_output_files', 'div', 'ex', 'exact_years', 'exp',
            'extract_date', 'failed_validation', 'file_number', 'first_record',
            'fract', 'fund_fac_a', 'fund_fac_b', 'fund_fac_c', 'fund_fac_d',
            'fund_fac_e', 'fund_fac_f', 'fund_fac_g', 'fund_fac_h', 'fund_fac_i',
            'fund_fac_j', 'fund_fac_k', 'fund_fac_l', 'fund_fac_m', 'fund_fac_n',
            'fund_fac_o', 'fund_fac_p', 'fund_fac_q', 'fund_fac_r', 'fund_fac_s',
            'fund_fac_t', 'fund_fac_u', 'fund_fac_v', 'fund_fac_w', 'fund_fac_x',
            'fund_fac_y', 'fund_fac_z', 'group', 'group_record',
            'input_file_date_time', 'input_file_extension', 'input_file_location',
            'input_file_name', 'int', 'invalid', 'last_record', 'leap_year', 'len',
            'ln', 'log', 'main_format_name', 'max', 'max_num_subrecords', 'message',
            'min', 'mod', 'month', 'months_add', 'months_sub', 'nearest_months',
            'nearest_years', 'next_record', 'nm', 'no_of_current_records',
            'no_of_records', 'numval', 'ny', 'output', 'output_array_as_constants',
            'output_file_path', 'output_record', 'pmdf_output', 'previous', 'rand',
            're_start', 'read_generic_table', 'read_generic_table_text',
            'read_input_footer', 'read_input_footer_text', 'read_input_header',
            'read_input_header_text', 'record_count', 'record_suppressed', 'round',
            'round_down', 'round_near', 'round_up', 'run_dcs_program', 'run_parameter',
            'run_parameter_text', 'set_main_record', 'set_num_subrecords',
            'sort_array', 'sort_current_records', 'sort_input', 'strval', 'substr',
            'summarise', 'summarise_record', 'summarise_units',
            'summarise_units_record', 'suppress_record', 'table_correct',
            'table_validate', 'terminate', 'time', 'today', 'trim', 'ubound', 'year',
            'years_add', 'years_sub'
            ),
        2 => array(
            'and', 'as', 'begin', 'boolean', 'byref', 'byval', 'call', 'case', 'date',
            'default', 'do', 'else', 'elseif', 'end_c_code', 'endfor', 'endfunction',
            'endif', 'endproc', 'endswitch', 'endwhile', 'eq',
            'explicit_declarations', 'false', 'for', 'from', 'function', 'ge', 'gt',
            'if', 'insert_c_code', 'integer', 'le', 'loop', 'lt', 'ne', 'not',
            'number', 'or', 'private', 'proc', 'public', 'quitloop', 'return',
            'short', 'step', 'switch', 'text', 'then', 'to', 'true', 'while'
            ),
        3 => array(
            // These keywords are not highlighted by the DCS IDE but we may as well
            // keep track of them anyway:
            'mp_file', 'odbc_file'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']',
        '=', '<', '>',
        '+', '-', '*', '/', '^',
        ':', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: red;',
            2 => 'color: blue;',
            3 => 'color: black;'
            ),
        'COMMENTS' => array(
            1 => 'color: black; background-color: silver;',
            // Colors for highlighting embedded C code:
            2 => 'color: maroon; background-color: pink;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: black;'
            ),
        'STRINGS' => array(
            0 => 'color: green;'
            ),
        'NUMBERS' => array(
            0 => 'color: green;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: black;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            ),
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/unicon.php0000664000175000017500000002121412014173410014163 0ustar  benbebenbe 'Unicon (Unified Extended Dialect of Icon)',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '\''),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'break', 'case', 'class', 'continue', 'create', 'default', 'do',
            'else', 'end', 'every', 'fail', 'for', 'if', 'import', 'initial', 'initially',
            'invocable', 'link', 'method', 'next', 'not', 'of', 'package', 'procedure', 'record',
            'repeat', 'return', 'switch', 'suspend', 'then', 'to', 'until', 'while'
            ),
        2 => array(
            'global', 'local', 'static'
            ),
        3 => array(
            'allocated', 'ascii', 'clock', 'collections',
            'column', 'cset', 'current', 'date', 'dateline', 'digits',
            'dump', 'e', 'error', 'errornumber', 'errortext',
            'errorvalue', 'errout', 'eventcode', 'eventsource', 'eventvalue',
            'fail', 'features', 'file', 'host', 'input', 'lcase',
            'letters', 'level', 'line', 'main', 'now', 'null',
            'output', 'phi', 'pi', 'pos', 'progname', 'random',
            'regions', 'source', 'storage', 'subject', 'syserr', 'time',
            'trace', 'ucase', 'version', 'col', 'control', 'interval',
            'ldrag', 'lpress', 'lrelease', 'mdrag', 'meta', 'mpress',
            'mrelease', 'rdrag', 'resize', 'row', 'rpress', 'rrelease',
            'shift', 'window', 'x', 'y'
            ),
        4 => array(
            'abs', 'acos', 'any', 'args', 'asin', 'atan', 'bal', 'center', 'char',
            'chmod', 'close', 'cofail', 'collect', 'copy', 'cos', 'cset', 'ctime', 'dbcolumns',
            'dbdriver', 'dbkeys', 'dblimits', 'dbproduction', 'dbtables', 'delay', 'delete', 'detab',
            'display', 'dtor', 'entab', 'errorclear', 'event', 'eventmask', 'EvGet', 'exit', 'exp',
            'fetch', 'fieldnames', 'find', 'flock', 'flush', 'function', 'get', 'getch', 'getche',
            'getenv', 'gettimeofday', 'globalnames', 'gtime', 'iand', 'icom', 'image', 'insert',
            'integer', 'ior', 'ishift', 'ixor', 'key', 'left', 'list', 'load', 'loadfunc',
            'localnames', 'log', 'many', 'map', 'match', 'member', 'mkdir', 'move', 'name', 'numeric',
            'open', 'opmask', 'ord', 'paramnames', 'parent', 'pipe', 'pop', 'pos', 'proc', 'pull',
            'push', 'put', 'read', 'reads', 'real', 'receive', 'remove', 'rename', 'repl', 'reverse',
            'right', 'rmdir', 'rtod', 'runerr', 'seek', 'select', 'send', 'seq', 'serial', 'set',
            'setenv', 'sort', 'sortf', 'sql', 'sqrt', 'stat', 'staticnames', 'stop', 'string', 'system', 'tab',
            'table', 'tan', 'trap', 'trim', 'truncate', 'type', 'upto', 'utime', 'variable', 'where',
            'write', 'writes'
            ),
        5 => array(
            'Active', 'Alert', 'Bg', 'Clip', 'Clone', 'Color', 'ColorValue',
            'CopyArea', 'Couple', 'DrawArc', 'DrawCircle', 'DrawCurve', 'DrawCylinder', 'DrawDisk',
            'DrawImage', 'DrawLine', 'DrawPoint', 'DrawPolygon', 'DrawRectangle', 'DrawSegment',
            'DrawSphere', 'DrawString', 'DrawTorus', 'EraseArea', 'Event', 'Fg', 'FillArc',
            'FillCircle', 'FillPolygon', 'FillRectangle', 'Font', 'FreeColor', 'GotoRC', 'GotoXY',
            'IdentifyMatrix', 'Lower', 'MatrixMode', 'NewColor', 'PaletteChars', 'PaletteColor',
            'PaletteKey', 'Pattern', 'Pending', 'Pixel', 'PopMatrix', 'PushMatrix', 'PushRotate',
            'PushScale', 'PushTranslate', 'QueryPointer', 'Raise', 'ReadImage', 'Refresh', 'Rotate',
            'Scale', 'Texcoord', 'TextWidth', 'Texture', 'Translate', 'Uncouple', 'WAttrib',
            'WDefault', 'WFlush', 'WindowContents', 'WriteImage', 'WSync'
            ),
        6 => array(
            'define', 'include', 'ifdef', 'ifndef', 'else', 'endif', 'error',
            'line', 'undef'
            ),
        7 => array(
            '_V9', '_AMIGA', '_ACORN', '_CMS', '_MACINTOSH', '_MSDOS_386',
            '_MS_WINDOWS_NT', '_MSDOS', '_MVS', '_OS2', '_POR', 'T', '_UNIX', '_POSIX', '_DBM',
            '_VMS', '_ASCII', '_EBCDIC', '_CO_EXPRESSIONS', '_CONSOLE_WINDOW', '_DYNAMIC_LOADING',
            '_EVENT_MONITOR', '_EXTERNAL_FUNCTIONS', '_KEYBOARD_FUNCTIONS', '_LARGE_INTEGERS',
            '_MULTITASKING', '_PIPES', '_RECORD_IO', '_SYSTEM_FUNCTION', '_MESSAGING', '_GRAPHICS',
            '_X_WINDOW_SYSTEM', '_MS_WINDOWS', '_WIN32', '_PRESENTATION_MGR', '_ARM_FUNCTIONS',
            '_DOS_FUNCTIONS'
            ),
        8 => array(
            'line')
        ),
    'SYMBOLS' => array(
        1 => array(
            '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '\\', '%', '=', '<', '>', '!', '^',
            '&', '|', '?', ':', ';', ',', '.', '~', '@'
            ),
        2 => array(
            '$(', '$)', '$<', '$>'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #b1b100;',
            3 => 'color: #b1b100;',
            4 => 'color: #b1b100;',
            5 => 'color: #b1b100;',
            6 => 'color: #b1b100;',
            7 => 'color: #b1b100;',
            8 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(1 => '.'),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            3 => array(
                'DISALLOWED_BEFORE' => '(?<=&)'
                ),
            4 => array(
                'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\"\'])"
                ),
            6 => array(
                'DISALLOWED_BEFORE' => '(?<=\$)'
                ),
            8 => array(
                'DISALLOWED_BEFORE' => '(?<=#)'
                )
            )
        )
);

?>geshi/geshi/ini.php0000664000175000017500000000740312014173447013465 0ustar  benbebenbe 'INI',
    'COMMENT_SINGLE' => array(0 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        '[', ']', '='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            0 => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => ''
            ),
        'STRINGS' => array(
            0 => 'color: #933;'
            ),
        'NUMBERS' => array(
            0 => ''
            ),
        'METHODS' => array(
            0 => ''
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066; font-weight:bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #000066; font-weight:bold;',
            1 => 'color: #000099;',
            2 => 'color: #660066;'
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Section names
        0 => '\[.+\]',
        //Entry names
        1 => array(
            GESHI_SEARCH => '^(\s*)([a-zA-Z0-9_\-]+)(\s*=)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'm',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        //Entry values
        2 => array(
            // Evil hackery to get around GeSHi bug: <>" and ; are added so s can be matched
            // Explicit match on variable names because if a comment is before the first < of the span
            // gets chewed up...
            GESHI_SEARCH => '([<>";a-zA-Z0-9_]+\s*)=(.*)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1=',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/avisynth.php0000664000175000017500000002074012014173371014546 0ustar  benbebenbe 'AviSynth',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/', '[*' => '*]'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        //  Reserved words.
        1 => array(
            'try', 'cache', 'function', 'global', 'return'
            ),
        // Constants / special variables.
        2 => array(
            'true', 'yes', 'false', 'no', '__END__'
            ),
        // Internal Filters.
        3 => array(
            'AviSource', 'AviFileSource', 'AddBorders', 'AlignedSplice', 'AssumeFPS', 'AssumeScaledFPS',
            'AssumeFrameBased', 'AssumeFieldBased', 'AssumeBFF', 'AssumeTFF', 'Amplify', 'AmplifydB',
            'AssumeSampleRate', 'AudioDub', 'AudioDubEx', 'Animate', 'ApplyRange',
            'BicubicResize', 'BilinearResize', 'BlackmanResize', 'Blur', 'Bob', 'BlankClip', 'Blackness',
            'ColorYUV', 'ConvertBackToYUY2', 'ConvertToRGB', 'ConvertToRGB24', 'ConvertToRGB32',
            'ConvertToYUY2', 'ConvertToY8', 'ConvertToYV411', 'ConvertToYV12', 'ConvertToYV16', 'ConvertToYV24',
            'ColorKeyMask', 'Crop', 'CropBottom', 'ChangeFPS', 'ConvertFPS', 'ComplementParity', 'ConvertAudioTo8bit',
            'ConvertAudioTo16bit', 'ConvertAudioTo24bit', 'ConvertAudioTo32bit', 'ConvertAudioToFloat', 'ConvertToMono',
            'ConditionalFilter', 'ConditionalReader', 'ColorBars', 'Compare',
            'DirectShowSource', 'DeleteFrame', 'Dissolve', 'DuplicateFrame', 'DoubleWeave', 'DelayAudio',
            'EnsureVBRMP3Sync',
            'FixLuminance', 'FlipHorizontal', 'FlipVertical', 'FixBrokenChromaUpsampling', 'FadeIn0', 'FadeIn',
            'FadeIn2', 'FadeOut0', 'FadeOut', 'FadeOut2', 'FadeIO0', 'FadeIO', 'FadeIO2', 'FreezeFrame', 'FrameEvaluate',
            'GreyScale', 'GaussResize', 'GeneralConvolution', 'GetChannel', 'GetLeftChannel', 'GetRightChannel',
            'HorizontalReduceBy2', 'Histogram',
            'ImageReader', 'ImageSource', 'ImageWriter', 'Invert', 'Interleave', 'Info',
            'KillAudio', 'KillVideo',
            'Levels', 'Limiter', 'Layer', 'Letterbox', 'LanczosResize', 'Lanczos4Resize', 'Loop',
            'MergeARGB', 'MergeRGB', 'MergeChroma', 'MergeLuma', 'Merge', 'Mask', 'MaskHS', 'MergeChannels', 'MixAudio',
            'MonoToStereo', 'MessageClip',
            'Normalize',
            'OpenDMLSource', 'Overlay',
            'PointResize', 'PeculiarBlend', 'Pulldown',
            'RGBAdjust', 'ResetMask', 'Reverse', 'ResampleAudio', 'ReduceBy2',
            'SegmentedAviSource', 'SegmentedDirectShowSource', 'SoundOut', 'ShowAlpha', 'ShowRed', 'ShowGreen',
            'ShowBlue', 'SwapUV', 'Subtract', 'SincResize', 'Spline16Resize', 'Spline36Resize', 'Spline64Resize',
            'SelectEven', 'SelectOdd', 'SelectEvery', 'SelectRangeEvery', 'Sharpen', 'SpatialSoften', 'SeparateFields',
            'ShowFiveVersions', 'ShowFrameNumber', 'ShowSMPTE', 'ShowTime', 'StackHorizontal', 'StackVertical', 'Subtitle',
            'SwapFields', 'SuperEQ', 'SSRC', 'ScriptClip',
            'Tweak', 'TurnLeft', 'TurnRight', 'Turn180', 'TemporalSoften', 'TimeStretch', 'TCPServer', 'TCPSource', 'Trim',
            'Tone',
            'UToY', 'UToY8', 'UnalignedSplice',
            'VToY', 'VToY8', 'VerticalReduceBy2', 'Version',
            'WavSource', 'Weave', 'WriteFile', 'WriteFileIf', 'WriteFileStart', 'WriteFileEnd',
            'YToUV'
            ),
        // Internal functions.
        4 => array(
            'Abs', 'Apply', 'Assert', 'AverageLuma', 'AverageChromaU', 'AverageChromaV',
            'Ceil', 'Cos', 'Chr', 'ChromaUDifference', 'ChromaVDifference',
            'Defined', 'Default',
            'Exp', 'Exist', 'Eval',
            'Floor', 'Frac', 'Float', 'Findstr', 'GetMTMode',
            'HexValue',
            'Int', 'IsBool', 'IsClip', 'IsFloat', 'IsInt', 'IsString', 'Import',
            'LoadPlugin', 'Log', 'LCase', 'LeftStr', 'LumaDifference', 'LoadVirtualDubPlugin', 'LoadVFAPIPlugin',
            'LoadCPlugin', 'Load_Stdcall_Plugin',
            'Max', 'MulDiv', 'MidStr',
            'NOP',
            'OPT_AllowFloatAudio', 'OPT_UseWaveExtensible',
            'Pi', 'Pow',
            'Round', 'Rand', 'RevStr', 'RightStr', 'RGBDifference', 'RGBDifferenceFromPrevious', 'RGBDifferenceToNext',
            'Sin', 'Sqrt', 'Sign', 'Spline', 'StrLen', 'String', 'Select', 'SetMemoryMax', 'SetWorkingDir', 'SetMTMode',
            'SetPlanarLegacyAlignment',
            'Time',
            'UCase', 'UDifferenceFromPrevious', 'UDifferenceToNext', 'UPlaneMax', 'UPlaneMin', 'UPlaneMedian',
            'UPlaneMinMaxDifference',
            'Value', 'VersionNumber', 'VersionString', 'VDifferenceFromPrevious', 'VDifferenceToNext', 'VPlaneMax',
            'VPlaneMin', 'VPlaneMedian', 'VPlaneMinMaxDifference',
            'YDifferenceFromPrevious', 'YDifferenceToNext', 'YPlaneMax', 'YPlaneMin', 'YPlaneMedian',
            'YPlaneMinMaxDifference'
            )
        ),
    'SYMBOLS' => array(
        '+', '++', '-', '--', '/', '*', '%',
        '=', '==', '<', '<=', '>', '>=', '<>', '!=',
        '!', '?', ':',
        '|', '||', '&&',
        '\\',
        '(', ')', '{', '}',
        '.', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color:#9966CC; font-weight:bold;',
            2 => 'color:#0000FF; font-weight:bold;',
            3 => 'color:#CC3300; font-weight:bold;',
            4 => 'color:#660000; font-weight:bold;'
            ),
        'COMMENTS' => array(
            1 => 'color:#008000; font-style:italic;',
            'MULTI' => 'color:#000080; font-style:italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color:#000099;'
            ),
        'BRACKETS' => array(
            0 => 'color:#006600; font-weight:bold;'
            ),
        'STRINGS' => array(
            0 => 'color:#996600;'
            ),
        'NUMBERS' => array(
            0 => 'color:#006666;'
            ),
        'METHODS' => array(
            1 => 'color:#9900CC;'
            ),
        'SYMBOLS' => array(
            0 => 'color:#006600; font-weight:bold;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://avisynth.org/mediawiki/{FNAME}',
        4 => ''
        ),
    'REGEXPS' => array(
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);
?>
geshi/geshi/apt_sources.php0000664000175000017500000001236112014173453015231 0ustar  benbebenbe 'Apt sources',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        /*keywords*/
        1 => array(
            'deb-src', 'deb'
            ),
        2 => array(
            //Generic
            'stable', 'old-stable', 'testing', 'testing-proposed-updates',
            'unstable', 'unstable-proposed-updates', 'experimental',
            'non-US', 'security', 'volatile', 'volatile-sloppy',
            'apt-build',
            'stable/updates',
            //Debian
            'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', 'woody', 'sarge',
            'etch', 'lenny', 'wheezy', 'sid',
            //Ubuntu
            'warty', 'warty-updates', 'warty-security', 'warty-proposed', 'warty-backports',
            'hoary', 'hoary-updates', 'hoary-security', 'hoary-proposed', 'hoary-backports',
            'breezy', 'breezy-updates', 'breezy-security', 'breezy-proposed', 'breezy-backports',
            'dapper', 'dapper-updates', 'dapper-security', 'dapper-proposed', 'dapper-backports',
            'edgy', 'edgy-updates', 'edgy-security', 'edgy-proposed', 'edgy-backports',
            'feisty', 'feisty-updates', 'feisty-security', 'feisty-proposed', 'feisty-backports',
            'gutsy', 'gutsy-updates', 'gutsy-security', 'gutsy-proposed', 'gutsy-backports',
            'hardy', 'hardy-updates', 'hardy-security', 'hardy-proposed', 'hardy-backports',
            'intrepid', 'intrepid-updates', 'intrepid-security', 'intrepid-proposed', 'intrepid-backports',
            'jaunty', 'jaunty-updates', 'jaunty-security', 'jaunty-proposed', 'jaunty-backports',
            'karmic', 'karmic-updates', 'karmic-security', 'karmic-proposed', 'karmic-backports',
            'lucid', 'lucid-updates', 'lucid-security', 'lucid-proposed', 'lucid-backports',
            'maverick', 'maverick-updates', 'maverick-security', 'maverick-proposed', 'maverick-backports'
            ),
        3 => array(
            'main', 'restricted', 'preview', 'contrib', 'non-free',
            'commercial', 'universe', 'multiverse'
            )
    ),
    'REGEXPS' => array(
        0 => "(((http|ftp):\/\/|file:\/)[^\s]+)|(cdrom:\[[^\]]*\][^\s]*)",
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => true,
        3 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #00007f;',
            2 => 'color: #b1b100;',
            3 => 'color: #b16000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            ),
        'STRINGS' => array(
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            ),
        'REGEXPS' => array(
            0 => 'color: #009900;',
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'NUMBERS' => GESHI_NEVER,
            'METHODS' => GESHI_NEVER,
            'SCRIPT' => GESHI_NEVER,
            'SYMBOLS' => GESHI_NEVER,
            'ESCAPE_CHAR' => GESHI_NEVER,
            'BRACKETS' => GESHI_NEVER,
            'STRINGS' => GESHI_NEVER,
        ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => '(?|^\/])',
            'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])'
        )
    ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/mapbasic.php0000664000175000017500000015753412014173406014473 0ustar  benbebenbe 'MapBasic',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
/*
        1 - Statements + Clauses + Data Types + Logical Operators, Geographical Operators + SQL
        2 - Special Procedures
        3 - Functions
        4 - Constants
        5 - Extended keywords (case sensitive)
*/
        1 => array(
            'Add', 'Alias', 'All', 'Alter', 'And', 'Any', 'Application', 'Arc',
            'Area', 'As', 'AutoLabel', 'Bar', 'Beep', 'Begin', 'Bind',
            'Browse', 'Brush', 'BrushPicker', 'Button', 'ButtonPad',
            'ButtonPads', 'BY', 'Call', 'CancelButton', 'Cartographic', 'Case',
            'CharSet', 'Check', 'CheckBox', 'Clean', 'Close', 'Collection',
            'Column', 'Combine', 'Command', 'Commit', 'Connection',
            'ConnectionNumber', 'Contains', 'Continue', 'Control', 'CoordSys',
            'Create', 'Cutter', 'Date', 'Datum', 'DDEExecute', 'DDEPoke',
            'DDETerminate', 'DDETerminateAll', 'Declare', 'Default', 'Define',
            'Delete', 'Dialog', 'Digitizer', 'Dim', 'Disaggregate',
            'Disconnect', 'Distance', 'Do', 'Document', 'DocumentWindow',
            'Drag', 'Drop', 'EditText', 'Ellipse', 'Enclose', 'End', 'Entire',
            'Entirely', 'Erase', 'Error', 'Event', 'Exit', 'Export',
            'Farthest', 'Fetch', 'File', 'Find', 'Float', 'FME', 'Font',
            'FontPicker', 'For', 'Format', 'Frame', 'From', 'Function',
            'Geocode', 'Get', 'Global', 'Goto', 'Graph', 'Grid', 'GROUP',
            'GroupBox', 'Handler', 'If', 'Import', 'In', 'Include', 'Index',
            'Info', 'Input', 'Insert', 'Integer', 'Intersect', 'Intersects',
            'INTO', 'Isogram', 'Item', 'Kill', 'Layout', 'Legend', 'Line',
            'Link', 'ListBox', 'Logical', 'Loop', 'Map', 'Map3D', 'MapInfo',
            'MapInfoDialog', 'Menu', 'Merge', 'Metadata', 'Method', 'Mod',
            'Move', 'MultiListBox', 'MultiPoint', 'MWS', 'Nearest', 'Next',
            'NOSELECT', 'Not', 'Note', 'Object', 'Objects', 'Offset',
            'OKButton', 'OnError', 'Open', 'Or', 'ORDER', 'Overlay', 'Pack',
            'Paper', 'Part', 'Partly', 'Pen', 'PenPicker', 'Pline', 'Point',
            'PopupMenu', 'Preserve', 'Print', 'PrintWin', 'PrismMap',
            'Processing', 'Program', 'ProgressBar', 'ProgressBars', 'Put',
            'RadioGroup', 'Randomize', 'Ranges', 'Rect', 'ReDim',
            'Redistricter', 'Refresh', 'Region', 'Register', 'Relief',
            'Reload', 'Remove', 'Rename', 'Report', 'Reproject', 'Resolution',
            'Resume', 'Rollback', 'RoundRect', 'RowID', 'Run', 'Save', 'Seek',
            'Select', 'Selection', 'Server', 'Set', 'Shade', 'SmallInt',
            'Snap', 'Split', 'StaticText', 'StatusBar', 'Stop', 'String',
            'Style', 'Styles', 'Sub', 'Symbol', 'SymbolPicker', 'Symbols',
            'Table', 'Target', 'Terminate', 'Text', 'Then', 'Threshold',
            'Timeout', 'To', 'Transaction', 'Transform', 'Type', 'UnDim',
            'Units', 'Unlink', 'Update', 'Using', 'VALUES', 'Version',
            'Versioning', 'Wend', 'WFS', 'WHERE', 'While', 'Window', 'Within',
            'Workspace', 'Write'
            ),
        2 => array(
            'EndHandler', 'ForegroundTaskSwitchHandler', 'Main',
            'RemoteMapGenHandler', 'RemoteMsgHandler', 'SelChangedHandler',
            'ToolHandler', 'WinChangedHandler', 'WinClosedHandler',
            'WinFocusChangedHandler'
            ),
        3 => array(
            'Abs', 'Acos', 'ApplicationDirectory$', 'AreaOverlap', 'Asc',
            'Asin', 'Ask', 'Atn', 'Avg', 'Buffer', 'ButtonPadInfo',
            'CartesianArea', 'CartesianBuffer', 'CartesianConnectObjects',
            'CartesianDistance', 'CartesianObjectDistance',
            'CartesianObjectLen', 'CartesianOffset', 'CartesianOffsetXY',
            'CartesianPerimeter', 'Centroid', 'CentroidX', 'CentroidY',
            'ChooseProjection$', 'Chr$', 'ColumnInfo', 'CommandInfo',
            'ConnectObjects', 'ControlPointInfo', 'ConvertToPline',
            'ConvertToRegion', 'ConvexHull', 'CoordSysName$', 'Cos', 'Count',
            'CreateCircle', 'CreateLine', 'CreatePoint', 'CreateText',
            'CurDate', 'CurrentBorderPen', 'CurrentBrush', 'CurrentFont',
            'CurrentLinePen', 'CurrentPen', 'CurrentSymbol', 'DateWindow',
            'Day', 'DDEInitiate', 'DDERequest$', 'DeformatNumber$', 'EOF',
            'EOT', 'EPSGToCoordSysString$', 'Err', 'Error$', 'Exp',
            'ExtractNodes', 'FileAttr', 'FileExists', 'FileOpenDlg',
            'FileSaveAsDlg', 'Fix', 'Format$', 'FormatDate$', 'FormatNumber$',
            'FrontWindow', 'GeocodeInfo', 'GetFolderPath$', 'GetGridCellValue',
            'GetMetadata$', 'GetSeamlessSheet', 'GridTableInfo',
            'HomeDirectory$', 'InStr', 'Int', 'IntersectNodes',
            'IsGridCellNull', 'IsogramInfo', 'IsPenWidthPixels',
            'LabelFindByID', 'LabelFindFirst', 'LabelFindNext', 'LabelInfo',
            'LayerInfo', 'LCase$', 'Left$', 'LegendFrameInfo', 'LegendInfo',
            'LegendStyleInfo', 'Len', 'Like', 'LocateFile$', 'LOF', 'Log',
            'LTrim$', 'MakeBrush', 'MakeCustomSymbol', 'MakeFont',
            'MakeFontSymbol', 'MakePen', 'MakeSymbol', 'Map3DInfo',
            'MapperInfo', 'Max', 'Maximum', 'MBR', 'MenuItemInfoByHandler',
            'MenuItemInfoByID', 'MGRSToPoint', 'MICloseContent',
            'MICloseFtpConnection', 'MICloseFtpFileFind',
            'MICloseHttpConnection', 'MICloseHttpFile', 'MICloseSession',
            'MICreateSession', 'MICreateSessionFull', 'Mid$', 'MidByte$',
            'MIErrorDlg', 'MIFindFtpFile', 'MIFindNextFtpFile', 'MIGetContent',
            'MIGetContentBuffer', 'MIGetContentLen', 'MIGetContentString',
            'MIGetContentToFile', 'MIGetContentType',
            'MIGetCurrentFtpDirectory', 'MIGetErrorCode', 'MIGetErrorMessage',
            'MIGetFileURL', 'MIGetFtpConnection', 'MIGetFtpFile',
            'MIGetFtpFileFind', 'MIGetFtpFileName', 'MIGetHttpConnection',
            'MIIsFtpDirectory', 'MIIsFtpDots', 'Min', 'Minimum',
            'MIOpenRequest', 'MIOpenRequestFull', 'MIParseURL', 'MIPutFtpFile',
            'MIQueryInfo', 'MIQueryInfoStatusCode', 'MISaveContent',
            'MISendRequest', 'MISendSimpleRequest', 'MISetCurrentFtpDirectory',
            'MISetSessionTimeout', 'MIXmlAttributeListDestroy',
            'MIXmlDocumentCreate', 'MIXmlDocumentDestroy',
            'MIXmlDocumentGetNamespaces', 'MIXmlDocumentGetRootNode',
            'MIXmlDocumentLoad', 'MIXmlDocumentLoadXML',
            'MIXmlDocumentLoadXMLString', 'MIXmlDocumentSetProperty',
            'MIXmlGetAttributeList', 'MIXmlGetChildList',
            'MIXmlGetNextAttribute', 'MIXmlGetNextNode', 'MIXmlNodeDestroy',
            'MIXmlNodeGetAttributeValue', 'MIXmlNodeGetFirstChild',
            'MIXmlNodeGetName', 'MIXmlNodeGetParent', 'MIXmlNodeGetText',
            'MIXmlNodeGetValue', 'MIXmlNodeListDestroy', 'MIXmlSCDestroy',
            'MIXmlSCGetLength', 'MIXmlSCGetNamespace', 'MIXmlSelectNodes',
            'MIXmlSelectSingleNode', 'Month', 'NumAllWindows', 'NumberToDate',
            'NumCols', 'NumTables', 'NumWindows', 'ObjectDistance',
            'ObjectGeography', 'ObjectInfo', 'ObjectLen', 'ObjectNodeHasM',
            'ObjectNodeHasZ', 'ObjectNodeM', 'ObjectNodeX', 'ObjectNodeY',
            'ObjectNodeZ', 'OffsetXY', 'Overlap', 'OverlayNodes',
            'PathToDirectory$', 'PathToFileName$', 'PathToTableName$',
            'PenWidthToPoints', 'Perimeter', 'PointsToPenWidth',
            'PointToMGRS$', 'PrismMapInfo', 'ProgramDirectory$', 'Proper$',
            'ProportionOverlap', 'RasterTableInfo', 'ReadControlValue',
            'RegionInfo', 'RemoteQueryHandler', 'RGB', 'Right$', 'Rnd',
            'Rotate', 'RotateAtPoint', 'Round', 'RTrim$', 'SearchInfo',
            'SearchPoint', 'SearchRect', 'SelectionInfo', 'Server_ColumnInfo',
            'Server_Connect', 'Server_ConnectInfo', 'Server_DriverInfo',
            'Server_EOT', 'Server_Execute', 'Server_GetODBCHConn',
            'Server_GetODBCHStmt', 'Server_NumCols', 'Server_NumDrivers',
            'SessionInfo', 'Sgn', 'Sin', 'Space$', 'SphericalArea',
            'SphericalConnectObjects', 'SphericalDistance',
            'SphericalObjectDistance', 'SphericalObjectLen', 'SphericalOffset',
            'SphericalOffsetXY', 'SphericalPerimeter', 'Sqr', 'Str$',
            'String$', 'StringCompare', 'StringCompareIntl', 'StringToDate',
            'StyleAttr', 'Sum', 'SystemInfo', 'TableInfo', 'Tan',
            'TempFileName$', 'TextSize', 'Time', 'Timer', 'TriggerControl',
            'TrueFileName$', 'UBound', 'UCase$', 'UnitAbbr$', 'UnitName$',
            'Val', 'Weekday', 'WindowID', 'WindowInfo', 'WtAvg', 'Year'
            ),
        4 => array(
            'BLACK', 'BLUE', 'BRUSH_BACKCOLOR', 'BRUSH_FORECOLOR',
            'BRUSH_PATTERN', 'BTNPAD_INFO_FLOATING', 'BTNPAD_INFO_NBTNS',
            'BTNPAD_INFO_WIDTH', 'BTNPAD_INFO_WINID', 'BTNPAD_INFO_X',
            'BTNPAD_INFO_Y', 'CLS', 'CMD_INFO_CTRL', 'CMD_INFO_CUSTOM_OBJ',
            'CMD_INFO_DLG_DBL', 'CMD_INFO_DLG_OK', 'CMD_INFO_EDIT_ASK',
            'CMD_INFO_EDIT_DISCARD', 'CMD_INFO_EDIT_SAVE',
            'CMD_INFO_EDIT_STATUS', 'CMD_INFO_EDIT_TABLE', 'CMD_INFO_FIND_RC',
            'CMD_INFO_FIND_ROWID', 'CMD_INFO_HL_FILE_NAME',
            'CMD_INFO_HL_LAYER_ID', 'CMD_INFO_HL_ROWID',
            'CMD_INFO_HL_TABLE_NAME', 'CMD_INFO_HL_WINDOW_ID',
            'CMD_INFO_INTERRUPT', 'CMD_INFO_MENUITEM', 'CMD_INFO_MSG',
            'CMD_INFO_ROWID', 'CMD_INFO_SELTYPE', 'CMD_INFO_SHIFT',
            'CMD_INFO_STATUS', 'CMD_INFO_TASK_SWITCH', 'CMD_INFO_TOOLBTN',
            'CMD_INFO_WIN', 'CMD_INFO_X', 'CMD_INFO_X2', 'CMD_INFO_XCMD',
            'CMD_INFO_Y', 'CMD_INFO_Y2', 'COL_INFO_DECPLACES',
            'COL_INFO_EDITABLE', 'COL_INFO_INDEXED', 'COL_INFO_NAME',
            'COL_INFO_NUM', 'COL_INFO_TYPE', 'COL_INFO_WIDTH', 'COL_TYPE_CHAR',
            'COL_TYPE_DATE', 'COL_TYPE_DATETIME', 'COL_TYPE_DECIMAL',
            'COL_TYPE_FLOAT', 'COL_TYPE_GRAPHIC', 'COL_TYPE_INTEGER',
            'COL_TYPE_LOGICAL', 'COL_TYPE_SMALLINT', 'COL_TYPE_TIME', 'CYAN',
            'DATE_WIN_CURPROG', 'DATE_WIN_SESSION', 'DEG_2_RAD',
            'DICTIONARY_ADDRESS_ONLY', 'DICTIONARY_ALL',
            'DICTIONARY_PREFER_ADDRESS', 'DICTIONARY_PREFER_USER',
            'DICTIONARY_USER_ONLY', 'DM_CUSTOM_CIRCLE', 'DM_CUSTOM_ELLIPSE',
            'DM_CUSTOM_LINE', 'DM_CUSTOM_POINT', 'DM_CUSTOM_POLYGON',
            'DM_CUSTOM_POLYLINE', 'DM_CUSTOM_RECT', 'DMPAPER_10X11',
            'DMPAPER_10X14', 'DMPAPER_11X17', 'DMPAPER_12X11', 'DMPAPER_15X11',
            'DMPAPER_9X11', 'DMPAPER_A_PLUS', 'DMPAPER_A2', 'DMPAPER_A3',
            'DMPAPER_A3_EXTRA', 'DMPAPER_A3_EXTRA_TRANSVERSE',
            'DMPAPER_A3_ROTATED', 'DMPAPER_A3_TRANSVERSE', 'DMPAPER_A4',
            'DMPAPER_A4_EXTRA', 'DMPAPER_A4_PLUS', 'DMPAPER_A4_ROTATED',
            'DMPAPER_A4_TRANSVERSE', 'DMPAPER_A4SMALL', 'DMPAPER_A5',
            'DMPAPER_A5_EXTRA', 'DMPAPER_A5_ROTATED', 'DMPAPER_A5_TRANSVERSE',
            'DMPAPER_A6', 'DMPAPER_A6_ROTATED', 'DMPAPER_B_PLUS', 'DMPAPER_B4',
            'DMPAPER_B4_JIS_ROTATED', 'DMPAPER_B5', 'DMPAPER_B5_EXTRA',
            'DMPAPER_B5_JIS_ROTATED', 'DMPAPER_B5_TRANSVERSE',
            'DMPAPER_B6_JIS', 'DMPAPER_B6_JIS_ROTATED', 'DMPAPER_CSHEET',
            'DMPAPER_DBL_JAPANESE_POSTCARD',
            'DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED', 'DMPAPER_DSHEET',
            'DMPAPER_ENV_10', 'DMPAPER_ENV_11', 'DMPAPER_ENV_12',
            'DMPAPER_ENV_14', 'DMPAPER_ENV_9', 'DMPAPER_ENV_B4',
            'DMPAPER_ENV_B5', 'DMPAPER_ENV_B6', 'DMPAPER_ENV_C3',
            'DMPAPER_ENV_C4', 'DMPAPER_ENV_C5', 'DMPAPER_ENV_C6',
            'DMPAPER_ENV_C65', 'DMPAPER_ENV_DL', 'DMPAPER_ENV_INVITE',
            'DMPAPER_ENV_ITALY', 'DMPAPER_ENV_MONARCH', 'DMPAPER_ENV_PERSONAL',
            'DMPAPER_ESHEET', 'DMPAPER_EXECUTIVE',
            'DMPAPER_FANFOLD_LGL_GERMAN', 'DMPAPER_FANFOLD_STD_GERMAN',
            'DMPAPER_FANFOLD_US', 'DMPAPER_FIRST', 'DMPAPER_FOLIO',
            'DMPAPER_ISO_B4', 'DMPAPER_JAPANESE_POSTCARD',
            'DMPAPER_JAPANESE_POSTCARD_ROTATED', 'DMPAPER_JENV_CHOU3',
            'DMPAPER_JENV_CHOU3_ROTATED', 'DMPAPER_JENV_CHOU4',
            'DMPAPER_JENV_CHOU4_ROTATED', 'DMPAPER_JENV_KAKU2',
            'DMPAPER_JENV_KAKU2_ROTATED', 'DMPAPER_JENV_KAKU3',
            'DMPAPER_JENV_KAKU3_ROTATED', 'DMPAPER_JENV_YOU4',
            'DMPAPER_JENV_YOU4_ROTATED', 'DMPAPER_LEDGER', 'DMPAPER_LEGAL',
            'DMPAPER_LEGAL_EXTRA', 'DMPAPER_LETTER', 'DMPAPER_LETTER_EXTRA',
            'DMPAPER_LETTER_EXTRA_TRANSVERSE', 'DMPAPER_LETTER_PLUS',
            'DMPAPER_LETTER_ROTATED', 'DMPAPER_LETTER_TRANSVERSE',
            'DMPAPER_LETTERSMALL', 'DMPAPER_NOTE', 'DMPAPER_P16K',
            'DMPAPER_P16K_ROTATED', 'DMPAPER_P32K', 'DMPAPER_P32K_ROTATED',
            'DMPAPER_P32KBIG', 'DMPAPER_P32KBIG_ROTATED', 'DMPAPER_PENV_1',
            'DMPAPER_PENV_1_ROTATED', 'DMPAPER_PENV_10',
            'DMPAPER_PENV_10_ROTATED', 'DMPAPER_PENV_2',
            'DMPAPER_PENV_2_ROTATED', 'DMPAPER_PENV_3',
            'DMPAPER_PENV_3_ROTATED', 'DMPAPER_PENV_4',
            'DMPAPER_PENV_4_ROTATED', 'DMPAPER_PENV_5',
            'DMPAPER_PENV_5_ROTATED', 'DMPAPER_PENV_6',
            'DMPAPER_PENV_6_ROTATED', 'DMPAPER_PENV_7',
            'DMPAPER_PENV_7_ROTATED', 'DMPAPER_PENV_8',
            'DMPAPER_PENV_8_ROTATED', 'DMPAPER_PENV_9',
            'DMPAPER_PENV_9_ROTATED', 'DMPAPER_QUARTO', 'DMPAPER_RESERVED_48',
            'DMPAPER_RESERVED_49', 'DMPAPER_STATEMENT', 'DMPAPER_TABLOID',
            'DMPAPER_TABLOID_EXTRA', 'DMPAPER_USER', 'ERR_BAD_WINDOW',
            'ERR_BAD_WINDOW_NUM', 'ERR_CANT_ACCESS_FILE',
            'ERR_CANT_INITIATE_LINK', 'ERR_CMD_NOT_SUPPORTED',
            'ERR_FCN_ARG_RANGE', 'ERR_FCN_INVALID_FMT',
            'ERR_FCN_OBJ_FETCH_FAILED', 'ERR_FILEMGR_NOTOPEN',
            'ERR_FP_MATH_LIB_DOMAIN', 'ERR_FP_MATH_LIB_RANGE',
            'ERR_INVALID_CHANNEL', 'ERR_INVALID_READ_CONTROL',
            'ERR_INVALID_TRIG_CONTROL', 'ERR_NO_FIELD',
            'ERR_NO_RESPONSE_FROM_APP', 'ERR_NULL_SELECTION',
            'ERR_PROCESS_FAILED_IN_APP', 'ERR_TABLE_NOT_FOUND',
            'ERR_WANT_MAPPER_WIN', 'FALSE', 'FILE_ATTR_FILESIZE',
            'FILE_ATTR_MODE', 'FILTER_ALL_DIRECTIONS_1',
            'FILTER_ALL_DIRECTIONS_2', 'FILTER_DIAGONALLY',
            'FILTER_HORIZONTALLY', 'FILTER_VERTICALLY',
            'FILTER_VERTICALLY_AND_HORIZONTALLY', 'FOLDER_APPDATA',
            'FOLDER_COMMON_APPDATA', 'FOLDER_COMMON_DOCS',
            'FOLDER_LOCAL_APPDATA', 'FOLDER_MI_APPDATA',
            'FOLDER_MI_COMMON_APPDATA', 'FOLDER_MI_LOCAL_APPDATA',
            'FOLDER_MI_PREFERENCE', 'FOLDER_MYDOCS', 'FOLDER_MYPICS',
            'FONT_BACKCOLOR', 'FONT_FORECOLOR', 'FONT_NAME', 'FONT_POINTSIZE',
            'FONT_STYLE', 'FRAME_INFO_BORDER_PEN', 'FRAME_INFO_COLUMN',
            'FRAME_INFO_HEIGHT', 'FRAME_INFO_LABEL', 'FRAME_INFO_MAP_LAYER_ID',
            'FRAME_INFO_NUM_STYLES', 'FRAME_INFO_POS_X', 'FRAME_INFO_POS_Y',
            'FRAME_INFO_REFRESHABLE', 'FRAME_INFO_SUBTITLE',
            'FRAME_INFO_SUBTITLE_FONT', 'FRAME_INFO_TITLE',
            'FRAME_INFO_TITLE_FONT', 'FRAME_INFO_TYPE', 'FRAME_INFO_VISIBLE',
            'FRAME_INFO_WIDTH', 'FRAME_TYPE_STYLE', 'FRAME_TYPE_THEME',
            'GEO_CONTROL_POINT_X', 'GEO_CONTROL_POINT_Y', 'GEOCODE_BATCH_SIZE',
            'GEOCODE_COUNT_GEOCODED', 'GEOCODE_COUNT_NOTGEOCODED',
            'GEOCODE_COUNTRY_SUBDIVISION', 'GEOCODE_COUNTRY_SUBDIVISION2',
            'GEOCODE_DICTIONARY', 'GEOCODE_FALLBACK_GEOGRAPHIC',
            'GEOCODE_FALLBACK_POSTAL', 'GEOCODE_MAX_BATCH_SIZE',
            'GEOCODE_MIXED_CASE', 'GEOCODE_MUNICIPALITY',
            'GEOCODE_MUNICIPALITY2', 'GEOCODE_OFFSET_CENTER',
            'GEOCODE_OFFSET_CENTER_UNITS', 'GEOCODE_OFFSET_END',
            'GEOCODE_OFFSET_END_UNITS', 'GEOCODE_PASSTHROUGH',
            'GEOCODE_POSTAL_CODE', 'GEOCODE_RESULT_MARK_MULTIPLE',
            'GEOCODE_STREET_NAME', 'GEOCODE_STREET_NUMBER',
            'GEOCODE_UNABLE_TO_CONVERT_DATA', 'GREEN',
            'GRID_TAB_INFO_HAS_HILLSHADE', 'GRID_TAB_INFO_MAX_VALUE',
            'GRID_TAB_INFO_MIN_VALUE', 'HOTLINK_INFO_ENABLED',
            'HOTLINK_INFO_EXPR', 'HOTLINK_INFO_MODE', 'HOTLINK_INFO_RELATIVE',
            'HOTLINK_MODE_BOTH', 'HOTLINK_MODE_LABEL', 'HOTLINK_MODE_OBJ',
            'IMAGE_CLASS_BILEVEL', 'IMAGE_CLASS_GREYSCALE',
            'IMAGE_CLASS_PALETTE', 'IMAGE_CLASS_RGB', 'IMAGE_TYPE_GRID',
            'IMAGE_TYPE_RASTER', 'INCL_ALL', 'INCL_COMMON', 'INCL_CROSSINGS',
            'ISOGRAM_AMBIENT_SPEED_DIST_UNIT',
            'ISOGRAM_AMBIENT_SPEED_TIME_UNIT', 'ISOGRAM_BANDING',
            'ISOGRAM_BATCH_SIZE', 'ISOGRAM_DEFAULT_AMBIENT_SPEED',
            'ISOGRAM_MAJOR_POLYGON_ONLY', 'ISOGRAM_MAJOR_ROADS_ONLY',
            'ISOGRAM_MAX_BANDS', 'ISOGRAM_MAX_BATCH_SIZE',
            'ISOGRAM_MAX_DISTANCE', 'ISOGRAM_MAX_DISTANCE_UNITS',
            'ISOGRAM_MAX_OFFROAD_DIST', 'ISOGRAM_MAX_OFFROAD_DIST_UNITS',
            'ISOGRAM_MAX_TIME', 'ISOGRAM_MAX_TIME_UNITS',
            'ISOGRAM_POINTS_ONLY', 'ISOGRAM_PROPAGATION_FACTOR',
            'ISOGRAM_RECORDS_INSERTED', 'ISOGRAM_RECORDS_NOTINSERTED',
            'ISOGRAM_RETURN_HOLES', 'ISOGRAM_SIMPLIFICATION_FACTOR',
            'LABEL_INFO_ANCHORX', 'LABEL_INFO_ANCHORY', 'LABEL_INFO_DRAWN',
            'LABEL_INFO_EDIT', 'LABEL_INFO_EDIT_ANCHOR',
            'LABEL_INFO_EDIT_ANGLE', 'LABEL_INFO_EDIT_FONT',
            'LABEL_INFO_EDIT_OFFSET', 'LABEL_INFO_EDIT_PEN',
            'LABEL_INFO_EDIT_POSITION', 'LABEL_INFO_EDIT_TEXT',
            'LABEL_INFO_EDIT_TEXTARROW', 'LABEL_INFO_EDIT_TEXTLINE',
            'LABEL_INFO_EDIT_VISIBILITY', 'LABEL_INFO_OBJECT',
            'LABEL_INFO_OFFSET', 'LABEL_INFO_ORIENTATION',
            'LABEL_INFO_POSITION', 'LABEL_INFO_ROWID', 'LABEL_INFO_SELECT',
            'LABEL_INFO_TABLE', 'LAYER_INFO_ARROWS', 'LAYER_INFO_CENTROIDS',
            'LAYER_INFO_COSMETIC', 'LAYER_INFO_DISPLAY',
            'LAYER_INFO_DISPLAY_GLOBAL', 'LAYER_INFO_DISPLAY_GRAPHIC',
            'LAYER_INFO_DISPLAY_OFF', 'LAYER_INFO_DISPLAY_VALUE',
            'LAYER_INFO_EDITABLE', 'LAYER_INFO_HOTLINK_COUNT',
            'LAYER_INFO_HOTLINK_EXPR', 'LAYER_INFO_HOTLINK_MODE',
            'LAYER_INFO_HOTLINK_RELATIVE', 'LAYER_INFO_LABEL_ALPHA',
            'LAYER_INFO_LABEL_ORIENT_CURVED',
            'LAYER_INFO_LABEL_ORIENT_HORIZONTAL',
            'LAYER_INFO_LABEL_ORIENT_PARALLEL', 'LAYER_INFO_LAYER_ALPHA',
            'LAYER_INFO_LAYER_TRANSLUCENCY', 'LAYER_INFO_LBL_AUTODISPLAY',
            'LAYER_INFO_LBL_CURFONT', 'LAYER_INFO_LBL_DUPLICATES',
            'LAYER_INFO_LBL_EXPR', 'LAYER_INFO_LBL_FONT', 'LAYER_INFO_LBL_LT',
            'LAYER_INFO_LBL_LT_ARROW', 'LAYER_INFO_LBL_LT_NONE',
            'LAYER_INFO_LBL_LT_SIMPLE', 'LAYER_INFO_LBL_MAX',
            'LAYER_INFO_LBL_OFFSET', 'LAYER_INFO_LBL_ORIENTATION',
            'LAYER_INFO_LBL_OVERLAP', 'LAYER_INFO_LBL_PARALLEL',
            'LAYER_INFO_LBL_PARTIALSEGS', 'LAYER_INFO_LBL_POS',
            'LAYER_INFO_LBL_POS_BC', 'LAYER_INFO_LBL_POS_BL',
            'LAYER_INFO_LBL_POS_BR', 'LAYER_INFO_LBL_POS_CC',
            'LAYER_INFO_LBL_POS_CL', 'LAYER_INFO_LBL_POS_CR',
            'LAYER_INFO_LBL_POS_TC', 'LAYER_INFO_LBL_POS_TL',
            'LAYER_INFO_LBL_POS_TR', 'LAYER_INFO_LBL_VIS_OFF',
            'LAYER_INFO_LBL_VIS_ON', 'LAYER_INFO_LBL_VIS_ZOOM',
            'LAYER_INFO_LBL_VISIBILITY', 'LAYER_INFO_LBL_ZOOM_MAX',
            'LAYER_INFO_LBL_ZOOM_MIN', 'LAYER_INFO_NAME', 'LAYER_INFO_NODES',
            'LAYER_INFO_OVR_BRUSH', 'LAYER_INFO_OVR_FONT',
            'LAYER_INFO_OVR_LINE', 'LAYER_INFO_OVR_PEN',
            'LAYER_INFO_OVR_SYMBOL', 'LAYER_INFO_PATH',
            'LAYER_INFO_SELECTABLE', 'LAYER_INFO_TYPE',
            'LAYER_INFO_TYPE_COSMETIC', 'LAYER_INFO_TYPE_GRID',
            'LAYER_INFO_TYPE_IMAGE', 'LAYER_INFO_TYPE_NORMAL',
            'LAYER_INFO_TYPE_THEMATIC', 'LAYER_INFO_TYPE_WMS',
            'LAYER_INFO_ZOOM_LAYERED', 'LAYER_INFO_ZOOM_MAX',
            'LAYER_INFO_ZOOM_MIN', 'LEGEND_INFO_MAP_ID',
            'LEGEND_INFO_NUM_FRAMES', 'LEGEND_INFO_ORIENTATION',
            'LEGEND_INFO_STYLE_SAMPLE_SIZE', 'LEGEND_STYLE_INFO_FONT',
            'LEGEND_STYLE_INFO_OBJ', 'LEGEND_STYLE_INFO_TEXT',
            'LOCATE_ABB_FILE', 'LOCATE_CLR_FILE', 'LOCATE_CUSTSYMB_DIR',
            'LOCATE_DEF_WOR', 'LOCATE_FNT_FILE', 'LOCATE_GEOCODE_SERVERLIST',
            'LOCATE_GRAPH_DIR', 'LOCATE_LAYOUT_TEMPLATE_DIR',
            'LOCATE_MNU_FILE', 'LOCATE_PEN_FILE', 'LOCATE_PREF_FILE',
            'LOCATE_PRJ_FILE', 'LOCATE_ROUTING_SERVERLIST',
            'LOCATE_THMTMPLT_DIR', 'LOCATE_WFS_SERVERLIST',
            'LOCATE_WMS_SERVERLIST', 'M_3DMAP_CLONE_VIEW',
            'M_3DMAP_PREVIOUS_VIEW', 'M_3DMAP_PROPERTIES',
            'M_3DMAP_REFRESH_GRID_TEXTURE', 'M_3DMAP_VIEW_ENTIRE_GRID',
            'M_3DMAP_VIEWPOINT_CONTROL', 'M_3DMAP_WIREFRAME',
            'M_ANALYZE_CALC_STATISTICS', 'M_ANALYZE_CUSTOMIZE_LEGEND',
            'M_ANALYZE_FIND', 'M_ANALYZE_FIND_SELECTION',
            'M_ANALYZE_INVERTSELECT', 'M_ANALYZE_SELECT',
            'M_ANALYZE_SELECTALL', 'M_ANALYZE_SHADE', 'M_ANALYZE_SQLQUERY',
            'M_ANALYZE_UNSELECT', 'M_BROWSE_EDIT', 'M_BROWSE_GRID',
            'M_BROWSE_NEW_RECORD', 'M_BROWSE_OPTIONS', 'M_BROWSE_PICK_FIELDS',
            'M_DBMS_OPEN_ODBC', 'M_EDIT_CLEAR', 'M_EDIT_CLEAROBJ',
            'M_EDIT_COPY', 'M_EDIT_CUT', 'M_EDIT_GETINFO', 'M_EDIT_NEW_ROW',
            'M_EDIT_PASTE', 'M_EDIT_PREFERENCES', 'M_EDIT_PREFERENCES_COUNTRY',
            'M_EDIT_PREFERENCES_FILE', 'M_EDIT_PREFERENCES_IMAGE_PROC',
            'M_EDIT_PREFERENCES_LAYOUT', 'M_EDIT_PREFERENCES_LEGEND',
            'M_EDIT_PREFERENCES_MAP', 'M_EDIT_PREFERENCES_OUTPUT',
            'M_EDIT_PREFERENCES_PATH', 'M_EDIT_PREFERENCES_PRINTER',
            'M_EDIT_PREFERENCES_STYLES', 'M_EDIT_PREFERENCES_SYSTEM',
            'M_EDIT_PREFERENCES_WEBSERVICES', 'M_EDIT_RESHAPE', 'M_EDIT_UNDO',
            'M_FILE_ABOUT', 'M_FILE_ADD_WORKSPACE', 'M_FILE_CLOSE',
            'M_FILE_CLOSE_ALL', 'M_FILE_CLOSE_ODBC', 'M_FILE_EXIT',
            'M_FILE_HELP', 'M_FILE_NEW', 'M_FILE_OPEN', 'M_FILE_OPEN_ODBC',
            'M_FILE_OPEN_ODBC_CONN', 'M_FILE_OPEN_UNIVERSAL_DATA',
            'M_FILE_OPEN_WFS', 'M_FILE_OPEN_WMS', 'M_FILE_PAGE_SETUP',
            'M_FILE_PRINT', 'M_FILE_PRINT_SETUP', 'M_FILE_REVERT',
            'M_FILE_RUN', 'M_FILE_SAVE', 'M_FILE_SAVE_COPY_AS',
            'M_FILE_SAVE_QUERY', 'M_FILE_SAVE_WINDOW_AS',
            'M_FILE_SAVE_WORKSPACE', 'M_FORMAT_CUSTOM_COLORS',
            'M_FORMAT_PICK_FILL', 'M_FORMAT_PICK_FONT', 'M_FORMAT_PICK_LINE',
            'M_FORMAT_PICK_SYMBOL', 'M_GRAPH_3D_VIEWING_ANGLE',
            'M_GRAPH_FORMATING', 'M_GRAPH_GENERAL_OPTIONS',
            'M_GRAPH_GRID_SCALES', 'M_GRAPH_LABEL_AXIS',
            'M_GRAPH_SAVE_AS_TEMPLATE', 'M_GRAPH_SERIES',
            'M_GRAPH_SERIES_OPTIONS', 'M_GRAPH_TITLES', 'M_GRAPH_TYPE',
            'M_GRAPH_VALUE_AXIS', 'M_HELP_ABOUT', 'M_HELP_CHECK_FOR_UPDATE',
            'M_HELP_CONNECT_MIFORUM', 'M_HELP_CONTENTS',
            'M_HELP_CONTEXTSENSITIVE', 'M_HELP_HELPMODE',
            'M_HELP_MAPINFO_3DGRAPH_HELP', 'M_HELP_MAPINFO_CONNECT_SERVICES',
            'M_HELP_MAPINFO_WWW', 'M_HELP_MAPINFO_WWW_STORE',
            'M_HELP_MAPINFO_WWW_TUTORIAL', 'M_HELP_SEARCH',
            'M_HELP_TECHSUPPORT', 'M_HELP_USE_HELP', 'M_LAYOUT_ACTUAL',
            'M_LAYOUT_ALIGN', 'M_LAYOUT_AUTOSCROLL_ONOFF',
            'M_LAYOUT_BRING2FRONT', 'M_LAYOUT_CHANGE_VIEW',
            'M_LAYOUT_DISPLAYOPTIONS', 'M_LAYOUT_DROPSHADOWS',
            'M_LAYOUT_ENTIRE', 'M_LAYOUT_LAYOUT_SIZE', 'M_LAYOUT_PREVIOUS',
            'M_LAYOUT_SEND2BACK', 'M_LEGEND_ADD_FRAMES', 'M_LEGEND_DELETE',
            'M_LEGEND_PROPERTIES', 'M_LEGEND_REFRESH', 'M_MAP_AUTOLABEL',
            'M_MAP_AUTOSCROLL_ONOFF', 'M_MAP_CHANGE_VIEW',
            'M_MAP_CLEAR_COSMETIC', 'M_MAP_CLEAR_CUSTOM_LABELS',
            'M_MAP_CLIP_REGION_ONOFF', 'M_MAP_CLONE_MAPPER',
            'M_MAP_CREATE_3DMAP', 'M_MAP_CREATE_LEGEND',
            'M_MAP_CREATE_PRISMMAP', 'M_MAP_ENTIRE_LAYER',
            'M_MAP_LAYER_CONTROL', 'M_MAP_MODIFY_THEMATIC', 'M_MAP_OPTIONS',
            'M_MAP_PREVIOUS', 'M_MAP_PROJECTION', 'M_MAP_SAVE_COSMETIC',
            'M_MAP_SET_CLIP_REGION', 'M_MAP_SETUNITS', 'M_MAP_SETUPDIGITIZER',
            'M_MAP_THEMATIC', 'M_MAPBASIC_CLEAR', 'M_MAPBASIC_SAVECONTENTS',
            'M_OBJECTS_BREAKPOLY', 'M_OBJECTS_BUFFER',
            'M_OBJECTS_CHECK_REGIONS', 'M_OBJECTS_CLEAN',
            'M_OBJECTS_CLEAR_TARGET', 'M_OBJECTS_COMBINE',
            'M_OBJECTS_CONVEX_HULL', 'M_OBJECTS_CVT_PGON',
            'M_OBJECTS_CVT_PLINE', 'M_OBJECTS_DISAGG',
            'M_OBJECTS_DRIVE_REGION', 'M_OBJECTS_ENCLOSE', 'M_OBJECTS_ERASE',
            'M_OBJECTS_ERASE_OUT', 'M_OBJECTS_MERGE', 'M_OBJECTS_OFFSET',
            'M_OBJECTS_OVERLAY', 'M_OBJECTS_POLYLINE_SPLIT',
            'M_OBJECTS_POLYLINE_SPLIT_AT_NODE', 'M_OBJECTS_RESHAPE',
            'M_OBJECTS_ROTATE', 'M_OBJECTS_SET_TARGET', 'M_OBJECTS_SMOOTH',
            'M_OBJECTS_SNAP', 'M_OBJECTS_SPLIT', 'M_OBJECTS_UNSMOOTH',
            'M_OBJECTS_VORONOI', 'M_ORACLE_CREATE_WORKSPACE',
            'M_ORACLE_DELETE_WORKSPACE', 'M_ORACLE_MERGE_PARENT',
            'M_ORACLE_REFRESH_FROM_PARENT', 'M_ORACLE_VERSION_ENABLE_OFF',
            'M_ORACLE_VERSION_ENABLE_ON', 'M_QUERY_CALC_STATISTICS',
            'M_QUERY_FIND', 'M_QUERY_FIND_ADDRESS', 'M_QUERY_FIND_SELECTION',
            'M_QUERY_FIND_SELECTION_CURRENT_MAP', 'M_QUERY_INVERTSELECT',
            'M_QUERY_SELECT', 'M_QUERY_SELECTALL', 'M_QUERY_SQLQUERY',
            'M_QUERY_UNSELECT', 'M_REDISTRICT_ADD', 'M_REDISTRICT_ASSIGN',
            'M_REDISTRICT_DELETE', 'M_REDISTRICT_OPTIONS',
            'M_REDISTRICT_TARGET', 'M_SENDMAIL_CURRENTWINDOW',
            'M_SENDMAIL_WORKSPACE', 'M_TABLE_APPEND', 'M_TABLE_BUFFER',
            'M_TABLE_CHANGESYMBOL', 'M_TABLE_CREATE_POINTS', 'M_TABLE_DELETE',
            'M_TABLE_DRIVE_REGION', 'M_TABLE_EXPORT', 'M_TABLE_GEOCODE',
            'M_TABLE_IMPORT', 'M_TABLE_MAKEMAPPABLE',
            'M_TABLE_MERGE_USING_COLUMN', 'M_TABLE_MODIFY_STRUCTURE',
            'M_TABLE_PACK', 'M_TABLE_RASTER_REG', 'M_TABLE_RASTER_STYLE',
            'M_TABLE_REFRESH', 'M_TABLE_RENAME',
            'M_TABLE_UNIVERSAL_DATA_REFRESH', 'M_TABLE_UNLINK',
            'M_TABLE_UPDATE_COLUMN', 'M_TABLE_VORONOI', 'M_TABLE_WEB_GEOCODE',
            'M_TABLE_WFS_PROPS', 'M_TABLE_WFS_REFRESH', 'M_TABLE_WMS_PROPS',
            'M_TOOLS_ADD_NODE', 'M_TOOLS_ARC', 'M_TOOLS_CRYSTAL_REPORTS_NEW',
            'M_TOOLS_CRYSTAL_REPORTS_OPEN', 'M_TOOLS_DRAGWINDOW',
            'M_TOOLS_ELLIPSE', 'M_TOOLS_EXPAND', 'M_TOOLS_FRAME',
            'M_TOOLS_HOTLINK', 'M_TOOLS_LABELER', 'M_TOOLS_LINE',
            'M_TOOLS_MAPBASIC', 'M_TOOLS_PNT_QUERY', 'M_TOOLS_POINT',
            'M_TOOLS_POLYGON', 'M_TOOLS_POLYLINE', 'M_TOOLS_RASTER_REG',
            'M_TOOLS_RECENTER', 'M_TOOLS_RECTANGLE', 'M_TOOLS_ROUNDEDRECT',
            'M_TOOLS_RULER', 'M_TOOLS_RUN', 'M_TOOLS_SEARCH_BOUNDARY',
            'M_TOOLS_SEARCH_POLYGON', 'M_TOOLS_SEARCH_RADIUS',
            'M_TOOLS_SEARCH_RECT', 'M_TOOLS_SELECTOR', 'M_TOOLS_SHRINK',
            'M_TOOLS_TEXT', 'M_TOOLS_TOOL_MANAGER', 'M_WINDOW_ARRANGEICONS',
            'M_WINDOW_BROWSE', 'M_WINDOW_BUTTONPAD', 'M_WINDOW_CASCADE',
            'M_WINDOW_EXPORT_WINDOW', 'M_WINDOW_FIRST', 'M_WINDOW_GRAPH',
            'M_WINDOW_LAYOUT', 'M_WINDOW_LEGEND', 'M_WINDOW_MAP',
            'M_WINDOW_MAPBASIC', 'M_WINDOW_MORE', 'M_WINDOW_REDISTRICT',
            'M_WINDOW_REDRAW', 'M_WINDOW_STATISTICS', 'M_WINDOW_STATUSBAR',
            'M_WINDOW_TILE', 'M_WINDOW_TOOL_PALETTE', 'MAGENTA',
            'MAP3D_INFO_BACKGROUND', 'MAP3D_INFO_CAMERA_CLIP_FAR',
            'MAP3D_INFO_CAMERA_CLIP_NEAR', 'MAP3D_INFO_CAMERA_FOCAL_X',
            'MAP3D_INFO_CAMERA_FOCAL_Y', 'MAP3D_INFO_CAMERA_FOCAL_Z',
            'MAP3D_INFO_CAMERA_VPN_1', 'MAP3D_INFO_CAMERA_VPN_2',
            'MAP3D_INFO_CAMERA_VPN_3', 'MAP3D_INFO_CAMERA_VU_1',
            'MAP3D_INFO_CAMERA_VU_2', 'MAP3D_INFO_CAMERA_VU_3',
            'MAP3D_INFO_CAMERA_X', 'MAP3D_INFO_CAMERA_Y',
            'MAP3D_INFO_CAMERA_Z', 'MAP3D_INFO_LIGHT_COLOR',
            'MAP3D_INFO_LIGHT_X', 'MAP3D_INFO_LIGHT_Y', 'MAP3D_INFO_LIGHT_Z',
            'MAP3D_INFO_RESOLUTION_X', 'MAP3D_INFO_RESOLUTION_Y',
            'MAP3D_INFO_SCALE', 'MAP3D_INFO_UNITS', 'MAPPER_INFO_AREAUNITS',
            'MAPPER_INFO_CENTERX', 'MAPPER_INFO_CENTERY',
            'MAPPER_INFO_CLIP_DISPLAY_ALL', 'MAPPER_INFO_CLIP_DISPLAY_POLYOBJ',
            'MAPPER_INFO_CLIP_OVERLAY', 'MAPPER_INFO_CLIP_REGION',
            'MAPPER_INFO_CLIP_TYPE', 'MAPPER_INFO_COORDSYS_CLAUSE',
            'MAPPER_INFO_COORDSYS_CLAUSE_WITH_BOUNDS',
            'MAPPER_INFO_COORDSYS_NAME', 'MAPPER_INFO_DISPLAY',
            'MAPPER_INFO_DISPLAY_DECIMAL', 'MAPPER_INFO_DISPLAY_DEGMINSEC',
            'MAPPER_INFO_DISPLAY_DMS', 'MAPPER_INFO_DISPLAY_MGRS',
            'MAPPER_INFO_DISPLAY_POSITION', 'MAPPER_INFO_DISPLAY_SCALE',
            'MAPPER_INFO_DISPLAY_ZOOM', 'MAPPER_INFO_DIST_CALC_TYPE',
            'MAPPER_INFO_DIST_CARTESIAN', 'MAPPER_INFO_DIST_SPHERICAL',
            'MAPPER_INFO_DISTUNITS', 'MAPPER_INFO_EDIT_LAYER',
            'MAPPER_INFO_LAYERS', 'MAPPER_INFO_MAXX', 'MAPPER_INFO_MAXY',
            'MAPPER_INFO_MERGE_MAP', 'MAPPER_INFO_MINX', 'MAPPER_INFO_MINY',
            'MAPPER_INFO_MOVE_DUPLICATE_NODES', 'MAPPER_INFO_NUM_THEMATIC',
            'MAPPER_INFO_REPROJECTION', 'MAPPER_INFO_RESAMPLING',
            'MAPPER_INFO_SCALE', 'MAPPER_INFO_SCROLLBARS',
            'MAPPER_INFO_XYUNITS', 'MAPPER_INFO_ZOOM', 'MAX_STRING_LENGTH',
            'MENUITEM_INFO_ACCELERATOR', 'MENUITEM_INFO_CHECKABLE',
            'MENUITEM_INFO_CHECKED', 'MENUITEM_INFO_ENABLED',
            'MENUITEM_INFO_HANDLER', 'MENUITEM_INFO_HELPMSG',
            'MENUITEM_INFO_ID', 'MENUITEM_INFO_SHOWHIDEABLE',
            'MENUITEM_INFO_TEXT', 'MI_CURSOR_ARROW', 'MI_CURSOR_CHANGE_WIDTH',
            'MI_CURSOR_CROSSHAIR', 'MI_CURSOR_DRAG_OBJ',
            'MI_CURSOR_FINGER_LEFT', 'MI_CURSOR_FINGER_UP',
            'MI_CURSOR_GRABBER', 'MI_CURSOR_IBEAM', 'MI_CURSOR_IBEAM_CROSS',
            'MI_CURSOR_ZOOM_IN', 'MI_CURSOR_ZOOM_OUT', 'MI_ICON_ADD_NODE',
            'MI_ICON_ARC', 'MI_ICON_ARROW', 'MI_ICON_ARROW_1',
            'MI_ICON_ARROW_10', 'MI_ICON_ARROW_11', 'MI_ICON_ARROW_12',
            'MI_ICON_ARROW_13', 'MI_ICON_ARROW_14', 'MI_ICON_ARROW_15',
            'MI_ICON_ARROW_16', 'MI_ICON_ARROW_17', 'MI_ICON_ARROW_18',
            'MI_ICON_ARROW_19', 'MI_ICON_ARROW_2', 'MI_ICON_ARROW_20',
            'MI_ICON_ARROW_21', 'MI_ICON_ARROW_3', 'MI_ICON_ARROW_4',
            'MI_ICON_ARROW_5', 'MI_ICON_ARROW_6', 'MI_ICON_ARROW_7',
            'MI_ICON_ARROW_8', 'MI_ICON_ARROW_9', 'MI_ICON_CLIP_MODE',
            'MI_ICON_CLIP_REGION', 'MI_ICON_CLOSE_ALL',
            'MI_ICON_COMMUNICATION_1', 'MI_ICON_COMMUNICATION_10',
            'MI_ICON_COMMUNICATION_11', 'MI_ICON_COMMUNICATION_12',
            'MI_ICON_COMMUNICATION_2', 'MI_ICON_COMMUNICATION_3',
            'MI_ICON_COMMUNICATION_4', 'MI_ICON_COMMUNICATION_5',
            'MI_ICON_COMMUNICATION_6', 'MI_ICON_COMMUNICATION_7',
            'MI_ICON_COMMUNICATION_8', 'MI_ICON_COMMUNICATION_9',
            'MI_ICON_COMPASS_CIRCLE_TA', 'MI_ICON_COMPASS_CONTRACT',
            'MI_ICON_COMPASS_EXPAND', 'MI_ICON_COMPASS_POLY_TA',
            'MI_ICON_COMPASS_TAG', 'MI_ICON_COMPASS_UNTAG', 'MI_ICON_COPY',
            'MI_ICON_CROSSHAIR', 'MI_ICON_CUT', 'MI_ICON_DISTRICT_MANY',
            'MI_ICON_DISTRICT_SAME', 'MI_ICON_DRAG_HANDLE', 'MI_ICON_ELLIPSE',
            'MI_ICON_EMERGENCY_1', 'MI_ICON_EMERGENCY_10',
            'MI_ICON_EMERGENCY_11', 'MI_ICON_EMERGENCY_12',
            'MI_ICON_EMERGENCY_13', 'MI_ICON_EMERGENCY_14',
            'MI_ICON_EMERGENCY_15', 'MI_ICON_EMERGENCY_16',
            'MI_ICON_EMERGENCY_17', 'MI_ICON_EMERGENCY_18',
            'MI_ICON_EMERGENCY_2', 'MI_ICON_EMERGENCY_3',
            'MI_ICON_EMERGENCY_4', 'MI_ICON_EMERGENCY_5',
            'MI_ICON_EMERGENCY_6', 'MI_ICON_EMERGENCY_7',
            'MI_ICON_EMERGENCY_8', 'MI_ICON_EMERGENCY_9', 'MI_ICON_GRABBER',
            'MI_ICON_GRAPH_SELECT', 'MI_ICON_HELP', 'MI_ICON_HOT_LINK',
            'MI_ICON_INFO', 'MI_ICON_INVERTSELECT', 'MI_ICON_LABEL',
            'MI_ICON_LAYERS', 'MI_ICON_LEGEND', 'MI_ICON_LETTERS_A',
            'MI_ICON_LETTERS_B', 'MI_ICON_LETTERS_C', 'MI_ICON_LETTERS_D',
            'MI_ICON_LETTERS_E', 'MI_ICON_LETTERS_F', 'MI_ICON_LETTERS_G',
            'MI_ICON_LETTERS_H', 'MI_ICON_LETTERS_I', 'MI_ICON_LETTERS_J',
            'MI_ICON_LETTERS_K', 'MI_ICON_LETTERS_L', 'MI_ICON_LETTERS_M',
            'MI_ICON_LETTERS_N', 'MI_ICON_LETTERS_O', 'MI_ICON_LETTERS_P',
            'MI_ICON_LETTERS_Q', 'MI_ICON_LETTERS_R', 'MI_ICON_LETTERS_S',
            'MI_ICON_LETTERS_T', 'MI_ICON_LETTERS_U', 'MI_ICON_LETTERS_V',
            'MI_ICON_LETTERS_W', 'MI_ICON_LETTERS_X', 'MI_ICON_LETTERS_Y',
            'MI_ICON_LETTERS_Z', 'MI_ICON_LINE', 'MI_ICON_LINE_STYLE',
            'MI_ICON_MAPSYMB_1', 'MI_ICON_MAPSYMB_10', 'MI_ICON_MAPSYMB_11',
            'MI_ICON_MAPSYMB_12', 'MI_ICON_MAPSYMB_13', 'MI_ICON_MAPSYMB_14',
            'MI_ICON_MAPSYMB_15', 'MI_ICON_MAPSYMB_16', 'MI_ICON_MAPSYMB_17',
            'MI_ICON_MAPSYMB_18', 'MI_ICON_MAPSYMB_19', 'MI_ICON_MAPSYMB_2',
            'MI_ICON_MAPSYMB_20', 'MI_ICON_MAPSYMB_21', 'MI_ICON_MAPSYMB_22',
            'MI_ICON_MAPSYMB_23', 'MI_ICON_MAPSYMB_24', 'MI_ICON_MAPSYMB_25',
            'MI_ICON_MAPSYMB_26', 'MI_ICON_MAPSYMB_3', 'MI_ICON_MAPSYMB_4',
            'MI_ICON_MAPSYMB_5', 'MI_ICON_MAPSYMB_6', 'MI_ICON_MAPSYMB_7',
            'MI_ICON_MAPSYMB_8', 'MI_ICON_MAPSYMB_9', 'MI_ICON_MARITIME_1',
            'MI_ICON_MARITIME_10', 'MI_ICON_MARITIME_2', 'MI_ICON_MARITIME_3',
            'MI_ICON_MARITIME_4', 'MI_ICON_MARITIME_5', 'MI_ICON_MARITIME_6',
            'MI_ICON_MARITIME_7', 'MI_ICON_MARITIME_8', 'MI_ICON_MARITIME_9',
            'MI_ICON_MB_1', 'MI_ICON_MB_10', 'MI_ICON_MB_11', 'MI_ICON_MB_12',
            'MI_ICON_MB_13', 'MI_ICON_MB_14', 'MI_ICON_MB_2', 'MI_ICON_MB_3',
            'MI_ICON_MB_4', 'MI_ICON_MB_5', 'MI_ICON_MB_6', 'MI_ICON_MB_7',
            'MI_ICON_MB_8', 'MI_ICON_MB_9', 'MI_ICON_MISC_1',
            'MI_ICON_MISC_10', 'MI_ICON_MISC_11', 'MI_ICON_MISC_12',
            'MI_ICON_MISC_13', 'MI_ICON_MISC_14', 'MI_ICON_MISC_15',
            'MI_ICON_MISC_16', 'MI_ICON_MISC_17', 'MI_ICON_MISC_18',
            'MI_ICON_MISC_19', 'MI_ICON_MISC_2', 'MI_ICON_MISC_20',
            'MI_ICON_MISC_21', 'MI_ICON_MISC_22', 'MI_ICON_MISC_23',
            'MI_ICON_MISC_24', 'MI_ICON_MISC_25', 'MI_ICON_MISC_26',
            'MI_ICON_MISC_27', 'MI_ICON_MISC_28', 'MI_ICON_MISC_29',
            'MI_ICON_MISC_3', 'MI_ICON_MISC_30', 'MI_ICON_MISC_31',
            'MI_ICON_MISC_4', 'MI_ICON_MISC_5', 'MI_ICON_MISC_6',
            'MI_ICON_MISC_7', 'MI_ICON_MISC_8', 'MI_ICON_MISC_9',
            'MI_ICON_NEW_DOC', 'MI_ICON_NUMBERS_1', 'MI_ICON_NUMBERS_10',
            'MI_ICON_NUMBERS_11', 'MI_ICON_NUMBERS_12', 'MI_ICON_NUMBERS_13',
            'MI_ICON_NUMBERS_14', 'MI_ICON_NUMBERS_15', 'MI_ICON_NUMBERS_16',
            'MI_ICON_NUMBERS_17', 'MI_ICON_NUMBERS_18', 'MI_ICON_NUMBERS_19',
            'MI_ICON_NUMBERS_2', 'MI_ICON_NUMBERS_20', 'MI_ICON_NUMBERS_21',
            'MI_ICON_NUMBERS_22', 'MI_ICON_NUMBERS_23', 'MI_ICON_NUMBERS_24',
            'MI_ICON_NUMBERS_25', 'MI_ICON_NUMBERS_26', 'MI_ICON_NUMBERS_27',
            'MI_ICON_NUMBERS_28', 'MI_ICON_NUMBERS_29', 'MI_ICON_NUMBERS_3',
            'MI_ICON_NUMBERS_30', 'MI_ICON_NUMBERS_31', 'MI_ICON_NUMBERS_32',
            'MI_ICON_NUMBERS_4', 'MI_ICON_NUMBERS_5', 'MI_ICON_NUMBERS_6',
            'MI_ICON_NUMBERS_7', 'MI_ICON_NUMBERS_8', 'MI_ICON_NUMBERS_9',
            'MI_ICON_ODBC_DISCONNECT', 'MI_ICON_ODBC_MAPPABLE',
            'MI_ICON_ODBC_OPEN', 'MI_ICON_ODBC_REFRESH', 'MI_ICON_ODBC_SYMBOL',
            'MI_ICON_ODBC_UNLINK', 'MI_ICON_OPEN_FILE', 'MI_ICON_OPEN_WOR',
            'MI_ICON_OPENWFS', 'MI_ICON_OPENWMS', 'MI_ICON_PASTE',
            'MI_ICON_POLYGON', 'MI_ICON_POLYLINE', 'MI_ICON_PRINT',
            'MI_ICON_REALESTATE_1', 'MI_ICON_REALESTATE_10',
            'MI_ICON_REALESTATE_11', 'MI_ICON_REALESTATE_12',
            'MI_ICON_REALESTATE_13', 'MI_ICON_REALESTATE_14',
            'MI_ICON_REALESTATE_15', 'MI_ICON_REALESTATE_16',
            'MI_ICON_REALESTATE_17', 'MI_ICON_REALESTATE_18',
            'MI_ICON_REALESTATE_19', 'MI_ICON_REALESTATE_2',
            'MI_ICON_REALESTATE_20', 'MI_ICON_REALESTATE_21',
            'MI_ICON_REALESTATE_22', 'MI_ICON_REALESTATE_23',
            'MI_ICON_REALESTATE_3', 'MI_ICON_REALESTATE_4',
            'MI_ICON_REALESTATE_5', 'MI_ICON_REALESTATE_6',
            'MI_ICON_REALESTATE_7', 'MI_ICON_REALESTATE_8',
            'MI_ICON_REALESTATE_9', 'MI_ICON_RECT', 'MI_ICON_REGION_STYLE',
            'MI_ICON_RESHAPE', 'MI_ICON_ROUND_RECT', 'MI_ICON_RULER',
            'MI_ICON_RUN', 'MI_ICON_SAVE_FILE', 'MI_ICON_SAVE_WIN',
            'MI_ICON_SAVE_WOR', 'MI_ICON_SEARCH_BDY', 'MI_ICON_SEARCH_POLYGON',
            'MI_ICON_SEARCH_RADIUS', 'MI_ICON_SEARCH_RECT', 'MI_ICON_SIGNS_1',
            'MI_ICON_SIGNS_10', 'MI_ICON_SIGNS_11', 'MI_ICON_SIGNS_12',
            'MI_ICON_SIGNS_13', 'MI_ICON_SIGNS_14', 'MI_ICON_SIGNS_15',
            'MI_ICON_SIGNS_16', 'MI_ICON_SIGNS_17', 'MI_ICON_SIGNS_18',
            'MI_ICON_SIGNS_19', 'MI_ICON_SIGNS_2', 'MI_ICON_SIGNS_3',
            'MI_ICON_SIGNS_4', 'MI_ICON_SIGNS_5', 'MI_ICON_SIGNS_6',
            'MI_ICON_SIGNS_7', 'MI_ICON_SIGNS_8', 'MI_ICON_SIGNS_9',
            'MI_ICON_STATISTICS', 'MI_ICON_SYMBOL', 'MI_ICON_SYMBOL_STYLE',
            'MI_ICON_TEXT', 'MI_ICON_TEXT_STYLE', 'MI_ICON_TRANSPORT_1',
            'MI_ICON_TRANSPORT_10', 'MI_ICON_TRANSPORT_11',
            'MI_ICON_TRANSPORT_12', 'MI_ICON_TRANSPORT_13',
            'MI_ICON_TRANSPORT_14', 'MI_ICON_TRANSPORT_15',
            'MI_ICON_TRANSPORT_16', 'MI_ICON_TRANSPORT_17',
            'MI_ICON_TRANSPORT_18', 'MI_ICON_TRANSPORT_19',
            'MI_ICON_TRANSPORT_2', 'MI_ICON_TRANSPORT_20',
            'MI_ICON_TRANSPORT_21', 'MI_ICON_TRANSPORT_22',
            'MI_ICON_TRANSPORT_23', 'MI_ICON_TRANSPORT_24',
            'MI_ICON_TRANSPORT_25', 'MI_ICON_TRANSPORT_26',
            'MI_ICON_TRANSPORT_27', 'MI_ICON_TRANSPORT_3',
            'MI_ICON_TRANSPORT_4', 'MI_ICON_TRANSPORT_5',
            'MI_ICON_TRANSPORT_6', 'MI_ICON_TRANSPORT_7',
            'MI_ICON_TRANSPORT_8', 'MI_ICON_TRANSPORT_9', 'MI_ICON_UNDO',
            'MI_ICON_UNSELECT_ALL', 'MI_ICON_WINDOW_FRAME', 'MI_ICON_WRENCH',
            'MI_ICON_ZOOM_IN', 'MI_ICON_ZOOM_OUT', 'MI_ICON_ZOOM_QUESTION',
            'MI_ICONS_MAPS_1', 'MI_ICONS_MAPS_10', 'MI_ICONS_MAPS_11',
            'MI_ICONS_MAPS_12', 'MI_ICONS_MAPS_13', 'MI_ICONS_MAPS_14',
            'MI_ICONS_MAPS_15', 'MI_ICONS_MAPS_2', 'MI_ICONS_MAPS_3',
            'MI_ICONS_MAPS_4', 'MI_ICONS_MAPS_5', 'MI_ICONS_MAPS_6',
            'MI_ICONS_MAPS_7', 'MI_ICONS_MAPS_8', 'MI_ICONS_MAPS_9',
            'MIPLATFORM_HP', 'MIPLATFORM_MAC68K', 'MIPLATFORM_POWERMAC',
            'MIPLATFORM_SPECIAL', 'MIPLATFORM_SUN', 'MIPLATFORM_WIN16',
            'MIPLATFORM_WIN32', 'MODE_APPEND', 'MODE_BINARY', 'MODE_INPUT',
            'MODE_OUTPUT', 'MODE_RANDOM', 'OBJ_ARC', 'OBJ_ELLIPSE',
            'OBJ_FRAME', 'OBJ_GEO_ARCBEGANGLE', 'OBJ_GEO_ARCENDANGLE',
            'OBJ_GEO_CENTROID', 'OBJ_GEO_LINEBEGX', 'OBJ_GEO_LINEBEGY',
            'OBJ_GEO_LINEENDX', 'OBJ_GEO_LINEENDY', 'OBJ_GEO_MAXX',
            'OBJ_GEO_MAXY', 'OBJ_GEO_MINX', 'OBJ_GEO_MINY', 'OBJ_GEO_POINTM',
            'OBJ_GEO_POINTX', 'OBJ_GEO_POINTY', 'OBJ_GEO_POINTZ',
            'OBJ_GEO_ROUNDRADIUS', 'OBJ_GEO_TEXTANGLE', 'OBJ_GEO_TEXTLINEX',
            'OBJ_GEO_TEXTLINEY', 'OBJ_INFO_BRUSH', 'OBJ_INFO_FILLFRAME',
            'OBJ_INFO_FRAMETITLE', 'OBJ_INFO_FRAMEWIN', 'OBJ_INFO_HAS_M',
            'OBJ_INFO_HAS_Z', 'OBJ_INFO_MPOINT', 'OBJ_INFO_NONEMPTY',
            'OBJ_INFO_NPNTS', 'OBJ_INFO_NPOLYGONS', 'OBJ_INFO_PEN',
            'OBJ_INFO_PLINE', 'OBJ_INFO_REGION', 'OBJ_INFO_SMOOTH',
            'OBJ_INFO_SYMBOL', 'OBJ_INFO_TEXTARROW', 'OBJ_INFO_TEXTFONT',
            'OBJ_INFO_TEXTJUSTIFY', 'OBJ_INFO_TEXTSPACING',
            'OBJ_INFO_TEXTSTRING', 'OBJ_INFO_TYPE', 'OBJ_INFO_Z_UNIT',
            'OBJ_INFO_Z_UNIT_SET', 'OBJ_LINE', 'OBJ_PLINE', 'OBJ_POINT',
            'OBJ_RECT', 'OBJ_REGION', 'OBJ_ROUNDRECT', 'OBJ_TEXT',
            'OBJ_TYPE_ARC', 'OBJ_TYPE_COLLECTION', 'OBJ_TYPE_ELLIPSE',
            'OBJ_TYPE_FRAME', 'OBJ_TYPE_LINE', 'OBJ_TYPE_MPOINT',
            'OBJ_TYPE_PLINE', 'OBJ_TYPE_POINT', 'OBJ_TYPE_RECT',
            'OBJ_TYPE_REGION', 'OBJ_TYPE_ROUNDRECT', 'OBJ_TYPE_TEXT',
            'ORIENTATION_CUSTOM', 'ORIENTATION_LANDSCAPE',
            'ORIENTATION_PORTRAIT', 'PEN_COLOR', 'PEN_INDEX',
            'PEN_INTERLEAVED', 'PEN_PATTERN', 'PEN_WIDTH', 'PLATFORM_MAC',
            'PLATFORM_MOTIF', 'PLATFORM_SPECIAL', 'PLATFORM_WIN',
            'PLATFORM_X11', 'PLATFORM_XOL', 'PRISMMAP_INFO_BACKGROUND',
            'PRISMMAP_INFO_CAMERA_CLIP_FAR', 'PRISMMAP_INFO_CAMERA_CLIP_NEAR',
            'PRISMMAP_INFO_CAMERA_FOCAL_X', 'PRISMMAP_INFO_CAMERA_FOCAL_Y',
            'PRISMMAP_INFO_CAMERA_FOCAL_Z', 'PRISMMAP_INFO_CAMERA_VPN_1',
            'PRISMMAP_INFO_CAMERA_VPN_2', 'PRISMMAP_INFO_CAMERA_VPN_3',
            'PRISMMAP_INFO_CAMERA_VU_1', 'PRISMMAP_INFO_CAMERA_VU_2',
            'PRISMMAP_INFO_CAMERA_VU_3', 'PRISMMAP_INFO_CAMERA_X',
            'PRISMMAP_INFO_CAMERA_Y', 'PRISMMAP_INFO_CAMERA_Z',
            'PRISMMAP_INFO_INFOTIP_EXPR', 'PRISMMAP_INFO_LIGHT_COLOR',
            'PRISMMAP_INFO_LIGHT_X', 'PRISMMAP_INFO_LIGHT_Y',
            'PRISMMAP_INFO_LIGHT_Z', 'PRISMMAP_INFO_SCALE', 'RAD_2_DEG',
            'RASTER_CONTROL_POINT_X', 'RASTER_CONTROL_POINT_Y',
            'RASTER_TAB_INFO_ALPHA', 'RASTER_TAB_INFO_BITS_PER_PIXEL',
            'RASTER_TAB_INFO_BRIGHTNESS', 'RASTER_TAB_INFO_CONTRAST',
            'RASTER_TAB_INFO_DISPLAY_TRANSPARENT', 'RASTER_TAB_INFO_GREYSCALE',
            'RASTER_TAB_INFO_HEIGHT', 'RASTER_TAB_INFO_IMAGE_CLASS',
            'RASTER_TAB_INFO_IMAGE_NAME', 'RASTER_TAB_INFO_IMAGE_TYPE',
            'RASTER_TAB_INFO_NUM_CONTROL_POINTS',
            'RASTER_TAB_INFO_TRANSPARENT_COLOR', 'RASTER_TAB_INFO_WIDTH',
            'RED', 'REGION_INFO_IS_CLOCKWISE', 'SEARCH_INFO_ROW',
            'SEARCH_INFO_TABLE', 'SECONDS_PER_DAY', 'SEL_INFO_NROWS',
            'SEL_INFO_SELNAME', 'SEL_INFO_TABLENAME',
            'SESSION_INFO_AREA_UNITS', 'SESSION_INFO_COORDSYS_CLAUSE',
            'SESSION_INFO_DISTANCE_UNITS', 'SESSION_INFO_PAPER_UNITS',
            'SRV_COL_INFO_ALIAS', 'SRV_COL_INFO_NAME',
            'SRV_COL_INFO_PRECISION', 'SRV_COL_INFO_SCALE',
            'SRV_COL_INFO_STATUS', 'SRV_COL_INFO_TYPE', 'SRV_COL_INFO_VALUE',
            'SRV_COL_INFO_WIDTH', 'SRV_COL_TYPE_BIN_STRING',
            'SRV_COL_TYPE_CHAR', 'SRV_COL_TYPE_DATE', 'SRV_COL_TYPE_DECIMAL',
            'SRV_COL_TYPE_FIXED_LEN_STRING', 'SRV_COL_TYPE_FLOAT',
            'SRV_COL_TYPE_INTEGER', 'SRV_COL_TYPE_LOGICAL',
            'SRV_COL_TYPE_NONE', 'SRV_COL_TYPE_SMALLINT',
            'SRV_CONNECT_INFO_DB_NAME', 'SRV_CONNECT_INFO_DRIVER_NAME',
            'SRV_CONNECT_INFO_DS_NAME', 'SRV_CONNECT_INFO_QUOTE_CHAR',
            'SRV_CONNECT_INFO_SQL_USER_ID', 'SRV_DRV_DATA_SOURCE',
            'SRV_DRV_INFO_NAME', 'SRV_DRV_INFO_NAME_LIST', 'SRV_ERROR',
            'SRV_FETCH_FIRST', 'SRV_FETCH_LAST', 'SRV_FETCH_NEXT',
            'SRV_FETCH_PREV', 'SRV_INVALID_HANDLE', 'SRV_NEED_DATA',
            'SRV_NO_MORE_DATA', 'SRV_NULL_DATA', 'SRV_SUCCESS',
            'SRV_SUCCESS_WITH_INFO', 'SRV_TRUNCATED_DATA',
            'SRV_WM_HIST_NO_OVERWRITE', 'SRV_WM_HIST_NONE',
            'SRV_WM_HIST_OVERWRITE', 'STR_EQ', 'STR_GT', 'STR_LT',
            'STYLE_SAMPLE_SIZE_LARGE', 'STYLE_SAMPLE_SIZE_SMALL',
            'SWITCHING_INTO_MAPINFO', 'SWITCHING_OUT_OF_MAPINFO',
            'SYMBOL_ANGLE', 'SYMBOL_CODE', 'SYMBOL_COLOR',
            'SYMBOL_CUSTOM_NAME', 'SYMBOL_CUSTOM_STYLE', 'SYMBOL_FONT_NAME',
            'SYMBOL_FONT_STYLE', 'SYMBOL_KIND', 'SYMBOL_KIND_CUSTOM',
            'SYMBOL_KIND_FONT', 'SYMBOL_KIND_VECTOR', 'SYMBOL_POINTSIZE',
            'SYS_INFO_APPIDISPATCH', 'SYS_INFO_APPLICATIONWND',
            'SYS_INFO_APPVERSION', 'SYS_INFO_CHARSET',
            'SYS_INFO_COPYPROTECTED', 'SYS_INFO_DATE_FORMAT',
            'SYS_INFO_DDESTATUS', 'SYS_INFO_DIG_INSTALLED',
            'SYS_INFO_DIG_MODE', 'SYS_INFO_MAPINFOWND',
            'SYS_INFO_MDICLIENTWND', 'SYS_INFO_MIBUILD_NUMBER',
            'SYS_INFO_MIPLATFORM', 'SYS_INFO_MIVERSION',
            'SYS_INFO_NUMBER_FORMAT', 'SYS_INFO_PLATFORM',
            'SYS_INFO_PRODUCTLEVEL', 'SYS_INFO_RUNTIME',
            'TAB_GEO_CONTROL_POINT_X', 'TAB_GEO_CONTROL_POINT_Y',
            'TAB_INFO_BROWSER_LIST', 'TAB_INFO_COORDSYS_CLAUSE',
            'TAB_INFO_COORDSYS_CLAUSE_WITHOUT_BOUNDS',
            'TAB_INFO_COORDSYS_MAXX', 'TAB_INFO_COORDSYS_MAXY',
            'TAB_INFO_COORDSYS_MINX', 'TAB_INFO_COORDSYS_MINY',
            'TAB_INFO_COORDSYS_NAME', 'TAB_INFO_EDITED', 'TAB_INFO_FASTEDIT',
            'TAB_INFO_MAPPABLE', 'TAB_INFO_MAPPABLE_TABLE', 'TAB_INFO_MAXX',
            'TAB_INFO_MAXY', 'TAB_INFO_MINX', 'TAB_INFO_MINY', 'TAB_INFO_NAME',
            'TAB_INFO_NCOLS', 'TAB_INFO_NREFS', 'TAB_INFO_NROWS',
            'TAB_INFO_NUM', 'TAB_INFO_READONLY', 'TAB_INFO_SEAMLESS',
            'TAB_INFO_SUPPORT_MZ', 'TAB_INFO_TABFILE', 'TAB_INFO_TEMP',
            'TAB_INFO_THEME_METADATA', 'TAB_INFO_TYPE', 'TAB_INFO_UNDO',
            'TAB_INFO_USERBROWSE', 'TAB_INFO_USERCLOSE',
            'TAB_INFO_USERDISPLAYMAP', 'TAB_INFO_USEREDITABLE',
            'TAB_INFO_USERMAP', 'TAB_INFO_USERREMOVEMAP', 'TAB_INFO_Z_UNIT',
            'TAB_INFO_Z_UNIT_SET', 'TAB_TYPE_BASE', 'TAB_TYPE_FME',
            'TAB_TYPE_IMAGE', 'TAB_TYPE_LINKED', 'TAB_TYPE_RESULT',
            'TAB_TYPE_VIEW', 'TAB_TYPE_WFS', 'TAB_TYPE_WMS', 'TRUE', 'WHITE',
            'WIN_3DMAP', 'WIN_BROWSER', 'WIN_BUTTONPAD', 'WIN_CART_LEGEND',
            'WIN_GRAPH', 'WIN_HELP', 'WIN_INFO', 'WIN_INFO_AUTOSCROLL',
            'WIN_INFO_CLONEWINDOW', 'WIN_INFO_ENHANCED_RENDERING',
            'WIN_INFO_EXPORT_ANTIALIASING', 'WIN_INFO_EXPORT_BORDER',
            'WIN_INFO_EXPORT_DITHER', 'WIN_INFO_EXPORT_FILTER',
            'WIN_INFO_EXPORT_MASKSIZE', 'WIN_INFO_EXPORT_THRESHOLD',
            'WIN_INFO_EXPORT_TRANSPRASTER', 'WIN_INFO_EXPORT_TRANSPVECTOR',
            'WIN_INFO_EXPORT_TRUECOLOR', 'WIN_INFO_HEIGHT',
            'WIN_INFO_LEGENDS_MAP', 'WIN_INFO_NAME', 'WIN_INFO_OPEN',
            'WIN_INFO_PRINTER_BORDER', 'WIN_INFO_PRINTER_BOTTOMMARGIN',
            'WIN_INFO_PRINTER_COPIES', 'WIN_INFO_PRINTER_DITHER',
            'WIN_INFO_PRINTER_LEFTMARGIN', 'WIN_INFO_PRINTER_METHOD',
            'WIN_INFO_PRINTER_NAME', 'WIN_INFO_PRINTER_ORIENT',
            'WIN_INFO_PRINTER_PAPERSIZE', 'WIN_INFO_PRINTER_RIGHTMARGIN',
            'WIN_INFO_PRINTER_SCALE_PATTERNS', 'WIN_INFO_PRINTER_TOPMARGIN',
            'WIN_INFO_PRINTER_TRANSPRASTER', 'WIN_INFO_PRINTER_TRANSPVECTOR',
            'WIN_INFO_PRINTER_TRUECOLOR', 'WIN_INFO_SMARTPAN',
            'WIN_INFO_SMOOTH_IMAGE', 'WIN_INFO_SMOOTH_TEXT',
            'WIN_INFO_SMOOTH_VECTOR', 'WIN_INFO_SNAPMODE',
            'WIN_INFO_SNAPTHRESHOLD', 'WIN_INFO_STATE',
            'WIN_INFO_SYSMENUCLOSE', 'WIN_INFO_TABLE', 'WIN_INFO_TOPMOST',
            'WIN_INFO_TYPE', 'WIN_INFO_WIDTH', 'WIN_INFO_WINDOWID',
            'WIN_INFO_WND', 'WIN_INFO_WORKSPACE', 'WIN_INFO_X', 'WIN_INFO_Y',
            'WIN_LAYOUT', 'WIN_LEGEND', 'WIN_MAPBASIC', 'WIN_MAPINFO',
            'WIN_MAPPER', 'WIN_MESSAGE', 'WIN_PENPICKER',
            'WIN_PRINTER_LANDSCAPE', 'WIN_PRINTER_PORTRAIT', 'WIN_RULER',
            'WIN_STATE_MAXIMIZED', 'WIN_STATE_MINIMIZED', 'WIN_STATE_NORMAL',
            'WIN_STATISTICS', 'WIN_STYLE_CHILD', 'WIN_STYLE_POPUP',
            'WIN_STYLE_POPUP_FULLCAPTION', 'WIN_STYLE_STANDARD',
            'WIN_SYMBOLPICKER', 'WIN_TOOLBAR', 'WIN_TOOLPICKER', 'YELLOW'
            ),
        5 => array(
            'Abbrs', 'Above', 'Access', 'Active', 'Address', 'Advanced',
            'Affine', 'Align', 'Alpha', 'alpha_value', 'Always', 'Angle',
            'Animate', 'Antialiasing', 'Append', 'Apply', 'ApplyUpdates',
            'Arrow', 'Ascending', 'ASCII', 'At', 'AttributeData', 'Auto',
            'Autoflip', 'Autokey', 'Automatic', 'Autoscroll', 'Axis',
            'Background', 'Banding', 'Batch', 'Behind', 'Below', 'Bend',
            'Binary', 'Blocks', 'Border', 'BorderPen', 'Bottom', 'Bounds',
            'ByteOrder', 'ByVal', 'Calling', 'Camera', 'Candidates',
            'Cartesian', 'Cell', 'Center', 'Change', 'Char', 'Circle',
            'Clipping', 'CloseMatchesOnly', 'ClosestAddr', 'Color', 'Columns',
            'Contents', 'ControlPoints', 'Copies', 'Copyright', 'Counter',
            'Country', 'CountrySecondarySubdivision', 'CountrySubdivision',
            'Cross', 'CubicConvolution', 'Cull', 'Cursor', 'Custom', 'Data',
            'DBF', 'DDE', 'Decimal', 'DecimalPlaces', 'DefaultAmbientSpeed',
            'DefaultPropagationFactor', 'DeformatNumber', 'Delimiter',
            'Density', 'DenyWrite', 'Descending', 'Destroy', 'Device',
            'Dictionary', 'DInfo', 'Disable', 'DiscardUpdates', 'Display',
            'Dither', 'DrawMode', 'DropKey', 'Droplines', 'Duplicates',
            'Dynamic', 'Earth', 'East', 'EditLayerPopup', 'Elevation', 'Else',
            'ElseIf', 'Emf', 'Enable', 'Envinsa', 'ErrorDiffusion', 'Extents',
            'Fallback', 'FastEdit', 'FillFrame', 'Filter', 'First', 'Fit',
            'Fixed', 'FocalPoint', 'Footnote', 'Force', 'FromMapCatalog',
            'Front', 'Gap', 'Geographic', 'Geography', 'Graduated', 'Graphic',
            'Gutter', 'Half', 'Halftone', 'Handles', 'Height', 'Help',
            'HelpMsg', 'Hide', 'Hierarchical', 'HIGHLOW', 'History', 'Icon',
            'ID', 'Ignore', 'Image', 'Inflect', 'Inset', 'Inside',
            'Interactive', 'Internal', 'Interpolate', 'IntersectingStreet',
            'Justify', 'Key', 'Label', 'Labels', 'Landscape', 'Large', 'Last',
            'Layer', 'Left', 'Lib', 'Light', 'LinePen', 'Lines', 'Linestyle',
            'Longitude', 'LOWHIGH', 'Major', 'MajorPolygonOnly',
            'MajorRoadsOnly', 'MapBounds', 'MapMarker', 'MapString', 'Margins',
            'MarkMultiple', 'MaskSize', 'Match', 'MaxOffRoadDistance',
            'Message', 'MICODE', 'Minor', 'MixedCase', 'Mode', 'ModifierKeys',
            'Modify', 'Multiple', 'MultiPolygonRgns', 'Municipality',
            'MunicipalitySubdivision', 'Name', 'NATIVE', 'NearestNeighbor',
            'NoCollision', 'Node', 'Nodes', 'NoIndex', 'None', 'Nonearth',
            'NoRefresh', 'Normalized', 'North', 'Number', 'ObjectType', 'ODBC',
            'Off', 'OK', 'OLE', 'On', 'Options', 'Orientation', 'OtherBdy',
            'Output', 'Outside', 'Overlapped', 'Overwrite', 'Pagebreaks',
            'Pan', 'Papersize', 'Parent', 'PassThrough', 'Password',
            'Patterns', 'Per', 'Percent', 'Percentage', 'Permanent',
            'PersistentCache', 'Pie', 'Pitch', 'Placename', 'PointsOnly',
            'PolyObj', 'Portrait', 'Position', 'PostalCode', 'Prefer',
            'Preferences', 'Prev', 'Printer', 'Projection', 'PushButton',
            'Quantile', 'Query', 'Random', 'Range', 'Raster', 'Read',
            'ReadOnly', 'Rec', 'Redraw', 'Refine', 'Regionstyle', 'RemoveData',
            'Replace', 'Reprojection', 'Resampling', 'Restore', 'ResultCode',
            'ReturnHoles', 'Right', 'Roll', 'ROP', 'Rotated', 'Row', 'Ruler',
            'Scale', 'ScrollBars', 'Seamless', 'SecondaryPostalCode',
            'SelfInt', 'Separator', 'Series', 'Service', 'SetKey',
            'SetTraverse', 'Shades', 'Show', 'Simple', 'SimplificationFactor',
            'Size', 'Small', 'Smart', 'Smooth', 'South', 'Spacing',
            'SPATIALWARE', 'Spherical', 'Square', 'Stacked', 'Step', 'Store',
            'Street', 'StreetName', 'StreetNumber', 'StyleType', 'Subtitle',
            'SysMenuClose', 'Thin', 'Tick', 'Title', 'TitleAxisY',
            'TitleGroup', 'Titles', 'TitleSeries', 'ToggleButton', 'Tolerance',
            'ToolbarPosition', 'ToolButton', 'Toolkit', 'Top', 'Translucency',
            'translucency_percent', 'Transparency', 'Transparent', 'Traverse',
            'TrueColor', 'Uncheck', 'Undo', 'Union', 'Unit', 'Until', 'URL',
            'Use', 'User', 'UserBrowse', 'UserClose', 'UserDisplayMap',
            'UserEdit', 'UserMap', 'UserRemoveMap', 'Value', 'Variable',
            'Vary', 'Vector', 'Versioned', 'View', 'ViewDisplayPopup',
            'VisibleOnly', 'VMDefault', 'VMGrid', 'VMRaster', 'Voronoi',
            'Warnings', 'Wedge', 'West', 'Width', 'With', 'XY', 'XYINDEX',
            'Yaw', 'Zoom'
            )
        ),
    'SYMBOLS' => array(
            //Numeric/String Operators + Comparison Operators
            '(', ')', '[', ']', '+', '-', '*', '/', '\\', '^', '&',
            '=', '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',        //Statements + Clauses + Data Types + Logical Operators, Geographical Operators + SQL
            2 => 'color: #2391af;',        //Special Procedures
            3 => 'color: #2391af;',        //Functions
            4 => 'color: #c635cb;',        //Constants
            5 => 'color: #0000ff;'         //Extended keywords (case sensitive)
            ),
        'COMMENTS' => array(
            1 => 'color: #008000;',
            'MULTI' => 'color: #008000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #a31515;'
            ),
        'NUMBERS' => array(
            0 => 'color: #000000;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000000;'
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            0 => 'color: #12198b;',            //Table Attributes
            1 => 'color: #2391af;'             //Data Types
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
            //Table Attribute
            0 => "[\\.]{1}[a-zA-Z0-9_]+",
            //Data Type
            1 => "(?xi) \\s+ as \\s+ (Alias|Brush|Date|Float|Font|Integer|Logical|Object|Pen|SmallInt|String|Symbol)"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
);

?>geshi/geshi/freebasic.php0000664000175000017500000001406112014173402014616 0ustar  benbebenbe 'FreeBasic',
    'COMMENT_SINGLE' => array(1 => "'", 2 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            "append", "as", "asc", "asin", "asm", "atan2", "atn", "beep", "bin", "binary", "bit",
            "bitreset", "bitset", "bload", "bsave", "byref", "byte", "byval", "call",
            "callocate", "case", "cbyte", "cdbl", "cdecl", "chain", "chdir", "chr", "cint",
            "circle", "clear", "clng", "clngint", "close", "cls", "color", "command",
            "common", "cons", "const", "continue", "cos", "cshort", "csign", "csng",
            "csrlin", "cubyte", "cuint", "culngint", "cunsg", "curdir", "cushort", "custom",
            "cvd", "cvi", "cvl", "cvlongint", "cvs", "cvshort", "data", "date",
            "deallocate", "declare", "defbyte", "defdbl", "defined", "defint", "deflng",
            "deflngint", "defshort", "defsng", "defstr", "defubyte", "defuint",
            "defulngint", "defushort", "dim", "dir", "do", "double", "draw", "dylibload",
            "dylibsymbol", "else", "elseif", "end", "enum", "environ", 'environ$', "eof",
            "eqv", "erase", "err", "error", "exec", "exepath", "exit", "exp", "export",
            "extern", "field", "fix", "flip", "for", "fre", "freefile", "function", "get",
            "getjoystick", "getkey", "getmouse", "gosub", "goto", "hex", "hibyte", "hiword",
            "if", "iif", "imagecreate", "imagedestroy", "imp", "inkey", "inp", "input",
            "instr", "int", "integer", "is", "kill", "lbound", "lcase", "left", "len",
            "let", "lib", "line", "lobyte", "loc", "local", "locate", "lock", "lof", "log",
            "long", "longint", "loop", "loword", "lset", "ltrim", "mid", "mkd", "mkdir",
            "mki", "mkl", "mklongint", "mks", "mkshort", "mod", "multikey", "mutexcreate",
            "mutexdestroy", "mutexlock", "mutexunlock", "name", "next", "not", "oct", "on",
            "once", "open", "option", "or", "out", "output", "overload", "paint", "palette",
            "pascal", "pcopy", "peek", "peeki", "peeks", "pipe", "pmap", "point", "pointer",
            "poke", "pokei", "pokes", "pos", "preserve", "preset", "print", "private",
            "procptr", "pset", "ptr", "public", "put", "random", "randomize", "read",
            "reallocate", "redim", "rem", "reset", "restore", "resume",
            "return", "rgb", "rgba", "right", "rmdir", "rnd", "rset", "rtrim", "run",
            "sadd", "screen", "screencopy", "screeninfo", "screenlock", "screenptr",
            "screenres", "screenset", "screensync", "screenunlock", "seek", "statement",
            "selectcase", "setdate", "setenviron", "setmouse",
            "settime", "sgn", "shared", "shell", "shl", "short", "shr", "sin", "single",
            "sizeof", "sleep", "space", "spc", "sqr", "static", "stdcall", "step", "stop",
            "str", "string", "strptr", "sub", "swap", "system", "tab", "tan",
            "then", "threadcreate", "threadwait", "time", "timer", "to", "trans",
            "trim", "type", "ubound", "ubyte", "ucase", "uinteger", "ulongint", "union",
            "unlock", "unsigned", "until", "ushort", "using", "va_arg", "va_first",
            "va_next", "val", "val64", "valint", "varptr", "view", "viewprint", "wait",
            "wend", "while", "width", "window", "windowtitle", "with", "write", "xor",
            "zstring", "explicit", "escape", "true", "false"
            )
        ),
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;',
            2 => 'color: #339933;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            0 => 'color: #66cc66;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/robots.php0000664000175000017500000000572712014173421014215 0ustar  benbebenbe 'robots.txt',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(1 => "/^Comment:.*?/m"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'Allow', 'Crawl-delay', 'Disallow', 'Request-rate', 'Robot-version',
            'Sitemap', 'User-agent', 'Visit-time'
            )
        ),
    'SYMBOLS' => array(
        ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://www.robotstxt.org/wc/norobots.html'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/html4strict.php0000664000175000017500000001526012014173416015163 0ustar  benbebenbe 'HTML',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        2 => array(
            'a', 'abbr', 'acronym', 'address', 'applet', 'area',
            'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b',
            'caption', 'center', 'cite', 'code', 'colgroup', 'col',
            'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt',
            'em',
            'fieldset', 'font', 'form', 'frame', 'frameset',
            'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html',
            'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i',
            'kbd',
            'label', 'legend', 'link', 'li',
            'map', 'meta',
            'noframes', 'noscript',
            'object', 'ol', 'optgroup', 'option',
            'param', 'pre', 'p',
            'q',
            'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's',
            'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt',
            'ul', 'u',
            'var',
            ),
        3 => array(
            'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis',
            'background', 'bgcolor', 'border',
            'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords',
            'data', 'datetime', 'declare', 'defer', 'dir', 'disabled',
            'enctype',
            'face', 'for', 'frame', 'frameborder',
            'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv',
            'id', 'ismap',
            'label', 'lang', 'language', 'link', 'longdesc',
            'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple',
            'name', 'nohref', 'noresize', 'noshade', 'nowrap',
            'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload',
            'profile', 'prompt',
            'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules',
            'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary',
            'tabindex', 'target', 'text', 'title', 'type',
            'usemap',
            'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace',
            'width'
            )
        ),
    'SYMBOLS' => array(
        '/', '='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            -2 => 'color: #404040;', // CDATA
            -1 => 'color: #808080; font-style: italic;', // comments
            0 => 'color: #00bbdd;',
            1 => 'color: #ddbb00;',
            2 => 'color: #009900;'
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        2 => 'http://december.com/html/4/element/{FNAMEL}.html',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        -2 => array(
            ' ']]>'
            ),
        -1 => array(
            ''
            ),
        0 => array(
            ' '>'
            ),
        1 => array(
            '&' => ';'
            ),
        2 => array(
            '<' => '>'
            )
    ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        -2 => false,
        -1 => false,
        0 => false,
        1 => false,
        2 => true
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            2 => array(
                'DISALLOWED_BEFORE' => '(?<=<|<\/)',
                'DISALLOWED_AFTER' => '(?=\s|\/|>)',
            )
        )
    )
);

?>geshi/geshi/html5.php0000664000175000017500000001744612014173443013743 0ustar  benbebenbe 'HTML5',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        2 => array(
            'a', 'abbr', 'address', 'article', 'area', 'aside', 'audio',

            'base', 'bdo', 'blockquote', 'body', 'br', 'button', 'b',

            'caption', 'cite', 'code', 'colgroup', 'col', 'canvas', 'command', 'datalist', 'details',

            'dd', 'del', 'dfn', 'div', 'dl', 'dt',

            'em', 'embed',

            'fieldset', 'form', 'figcaption', 'figure', 'footer',

            'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', 'header', 'hgroup',

            'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i',

            'kbd', 'keygen',

            'label', 'legend', 'link', 'li',

            'map', 'meta', 'mark', 'meter',

            'noscript', 'nav',

            'object', 'ol', 'optgroup', 'option', 'output',

            'param', 'pre', 'p', 'progress',

            'q',

            'rp', 'rt', 'ruby',

            'samp', 'script', 'select', 'small', 'span', 'strong', 'style', 'sub', 'sup', 's', 'section', 'source', 'summary',

            'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'time',

            'ul',

            'var', 'video',

            'wbr',
            ),
        3 => array(
            'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', 'autocomplete', 'autofocus',
            'background', 'bgcolor', 'border',
            'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', 'contenteditable', 'contextmenu',
            'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', 'draggable', 'dropzone',
            'enctype',
            'face', 'for', 'frame', 'frameborder', 'form', 'formaction', 'formenctype', 'formmethod', 'formnovalidate', 'formtarget',
            'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', 'hidden',
            'id', 'ismap',
            'label', 'lang', 'language', 'link', 'longdesc',
            'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', 'min', 'max',
            'name', 'nohref', 'noresize', 'noshade', 'nowrap', 'novalidate',
            'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onselect', 'onsubmit', 'onunload', 'onafterprint', 'onbeforeprint', 'onbeforeonload', 'onerror', 'onhaschange', 'onmessage', 'onoffline', 'ononline', 'onpagehide', 'onpageshow', 'onpopstate', 'onredo', 'onresize', 'onstorage', 'onundo', 'oncontextmenu', 'onformchange', 'onforminput', 'oninput', 'oninvalid', 'ondrag', 'ondragend', 'ondragenter', 'ondragleave', 'ondragover', 'ondragstart', 'ondrop', 'onmousewheel', 'onscroll', 'oncanplay', 'oncanplaythrough', 'ondurationchange', 'onemptied', 'onended', 'onloadeddata', 'onloadedmetadata', 'onloadstart', 'onpause', 'onplay', 'onplaying', 'onprogress', 'onratechange', 'onreadystatechange', 'onseeked', 'onseeking', 'onstalled', 'onsuspend', 'ontimeupdate', 'onvolumechange', 'onwaiting',
            'profile', 'prompt', 'pattern', 'placeholder',
            'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', 'required',
            'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', 'spellcheck', 'step',
            'tabindex', 'target', 'text', 'title', 'type',
            'usemap',
            'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace',
            'width'
            )
        ),
    'SYMBOLS' => array(
        '/', '='
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            -2 => 'color: #404040;', // CDATA
            -1 => 'color: #808080; font-style: italic;', // comments
            0 => 'color: #00bbdd;',
            1 => 'color: #ddbb00;',
            2 => 'color: #009900;'
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        2 => 'http://december.com/html/4/element/{FNAMEL}.html',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        -2 => array(
            ' ']]>'
            ),
        -1 => array(
            ''
            ),
        0 => array(
            ' '>'
            ),
        1 => array(
            '&' => ';'
            ),
        2 => array(
            '<' => '>'
            )
    ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        -2 => false,
        -1 => false,
        0 => false,
        1 => false,
        2 => true
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            2 => array(
                'DISALLOWED_BEFORE' => '(?<=<|<\/)',
                'DISALLOWED_AFTER' => '(?=\s|\/|>)',
            )
        )
    )
);

?>geshi/geshi/genero.php0000664000175000017500000002536112014173440014161 0ustar  benbebenbe 'genero',
    'COMMENT_SINGLE' => array(1 => '--', 2 => '#'),
    'COMMENT_MULTI' => array('{' => '}'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            "ABSOLUTE",
            "ACCEPT",
            "ACTION",
            "ADD",
            "AFTER",
            "ALL",
            "ALTER",
            "AND",
            "ANY",
            "APPEND",
            "APPLICATION",
            "AS",
            "AT",
            "ATTRIBUTE",
            "ATTRIBUTES",
            "AUDIT",
            "AVG",
            "BEFORE",
            "BEGIN",
            "BETWEEN",
            "BORDER",
            "BOTTOM",
            "BREAKPOINT",
            "BUFFER",
            "BUFFERED",
            "BY",
            "CALL",
            "CANCEL",
            "CASE",
            "CENTURY",
            "CHANGE",
            "CHECK",
            "CLEAR",
            "CLIPPED",
            "CLOSE",
            "CLUSTER",
            "COLUMN",
            "COLUMNS",
            "COMMAND",
            "COMMENT",
            "COMMIT",
            "COMMITTED",
            "CONCURRENT ",
            "CONNECT",
            "CONNECTION",
            "CONSTANT",
            "CONSTRAINED",
            "CONSTRAINT",
            "CONSTRUCT",
            "CONTINUE",
            "CONTROL",
            "COUNT",
            "CREATE",
            "CROSS",
            "CURRENT",
            "DATABASE",
            "DBA",
            "DEC",
            "DECLARE",
            "DEFAULT",
            "DEFAULTS",
            "DEFER",
            "DEFINE",
            "DELETE",
            "DELIMITER",
            "DESCRIBE",
            "DESTINATION",
            "DIM",
            "DIALOG",
            "DIMENSION",
            "DIRTY",
            "DISCONNECT",
            "DISPLAY",
            "DISTINCT",
            "DORMANT",
            "DOWN",
            "DROP",
            "DYNAMIC",
            "ELSE",
            "END",
            "ERROR",
            "ESCAPE",
            "EVERY",
            "EXCLUSIVE",
            "EXECUTE",
            "EXISTS",
            "EXIT",
            "EXPLAIN",
            "EXTEND",
            "EXTENT",
            "EXTERNAL",
            "FETCH",
            "FGL_DRAWBOX",
            "FIELD",
            "FIELD_TOUCHED",
            "FILE",
            "FILL",
            "FINISH",
            "FIRST",
            "FLOAT",
            "FLUSH",
            "FOR",
            "FOREACH",
            "FORM",
            "FORMAT",
            "FOUND",
            "FRACTION",
            "FREE",
            "FROM",
            "FULL",
            "FUNCTION",
            "GET_FLDBUF",
            "GLOBALS",
            "GO",
            "GOTO",
            "GRANT",
            "GROUP",
            "HAVING",
            "HEADER",
            "HELP",
            "HIDE",
            "HOLD",
            "HOUR",
            "IDLE",
            "IF",
            "IMAGE",
            "IMMEDIATE",
            "IN",
            "INDEX",
            "INFIELD",
            "INITIALIZE",
            "INNER",
            "INPUT",
            "INSERT",
            "INTERRUPT",
            "INTERVAL",
            "INTO",
            "INVISIBLE",
            "IS",
            "ISOLATION",
            "JOIN",
            "KEEP",
            "KEY",
            "LABEL",
            "LAST",
            "LEFT",
            "LENGTH",
            "LET",
            "LIKE",
            "LINE",
            "LINENO",
            "LINES",
            "LOAD",
            "LOCATE",
            "LOCK",
            "LOG",
            "LSTR",
            "MAIN",
            "MARGIN",
            "MATCHES",
            "MAX",
            "MAXCOUNT",
            "MDY",
            "MEMORY",
            "MENU",
            "MESSAGE",
            "MIN",
            "MINUTE",
            "MOD",
            "MODE",
            "MODIFY",
            "MONEY",
            "NAME",
            "NEED",
            "NEXT",
            "NO",
            "NORMAL",
            "NOT",
            "NOTFOUND",
            "NULL",
            "NUMERIC",
            "OF",
            "ON",
            "OPEN",
            "OPTION",
            "OPTIONS",
            "OR",
            "ORDER",
            "OTHERWISE",
            "OUTER",
            "OUTPUT",
            "PAGE",
            "PAGENO",
            "PAUSE",
            "PERCENT",
            "PICTURE",
            "PIPE",
            "PRECISION",
            "PREPARE",
            "PREVIOUS",
            "PRINT",
            "PRINTER",
            "PRINTX",
            "PRIOR",
            "PRIVILEGES",
            "PROCEDURE",
            "PROGRAM",
            "PROMPT",
            "PUBLIC",
            "PUT",
            "QUIT",
            "READ",
            "REAL",
            "RECORD",
            "RECOVER",
            "RED ",
            "RELATIVE",
            "RENAME",
            "REOPTIMIZATION",
            "REPEATABLE",
            "REPORT",
            "RESOURCE",
            "RETURN",
            "RETURNING",
            "REVERSE",
            "REVOKE",
            "RIGHT",
            "ROLLBACK",
            "ROLLFORWARD",
            "ROW",
            "ROWS",
            "RUN",
            "SCHEMA",
            "SCREEN",
            "SCROLL",
            "SECOND",
            "SELECT",
            "SERIAL",
            "SET",
            "SFMT",
            "SHARE",
            "SHIFT",
            "SHOW",
            "SIGNAL ",
            "SIZE",
            "SKIP",
            "SLEEP",
            "SOME",
            "SPACE",
            "SPACES",
            "SQL",
            "SQLERRMESSAGE",
            "SQLERROR",
            "SQLSTATE",
            "STABILITY",
            "START",
            "STATISTICS",
            "STEP",
            "STOP",
            "STYLE",
            "SUM",
            "SYNONYM",
            "TABLE",
            "TEMP",
            "TERMINATE",
            "TEXT",
            "THEN",
            "THROUGH",
            "THRU",
            "TO",
            "TODAY",
            "TOP",
            "TRAILER",
            "TRANSACTION ",
            "UNBUFFERED",
            "UNCONSTRAINED",
            "UNDERLINE",
            "UNION",
            "UNIQUE",
            "UNITS",
            "UNLOAD",
            "UNLOCK",
            "UP",
            "UPDATE",
            "USE",
            "USER",
            "USING",
            "VALIDATE",
            "VALUE",
            "VALUES",
            "VARCHAR",
            "VIEW",
            "WAIT",
            "WAITING",
            "WARNING",
            "WHEN",
            "WHENEVER",
            "WHERE",
            "WHILE",
            "WINDOW",
            "WITH",
            "WITHOUT",
            "WORDWRAP",
            "WORK",
            "WRAP"
            ),
        2 => array(
            '&IFDEF', '&ENDIF'
            ),
        3 => array(
            "ARRAY",
            "BYTE",
            "CHAR",
            "CHARACTER",
            "CURSOR",
            "DATE",
            "DATETIME",
            "DECIMAL",
            "DOUBLE",
            "FALSE",
            "INT",
            "INTEGER",
            "SMALLFLOAT",
            "SMALLINT",
            "STRING",
            "TIME",
            "TRUE"
            ),
        4 => array(
            "BLACK",
            "BLINK",
            "BLUE",
            "BOLD",
            "ANSI",
            "ASC",
            "ASCENDING",
            "ASCII",
            "CYAN",
            "DESC",
            "DESCENDING",
            "GREEN",
            "MAGENTA",
            "OFF",
            "WHITE",
            "YELLOW",
            "YEAR",
            "DAY",
            "MONTH",
            "WEEKDAY"
            ),
        ),
    'SYMBOLS' => array(
        '+', '-', '*', '?', '=', '/', '%', '>', '<', '^', '!', '|', ':',
        '(', ')', '[', ']'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0600FF;',
            2 => 'color: #0000FF; font-weight: bold;',
            3 => 'color: #008000;',
            4 => 'color: #FF0000;',
            ),
        'COMMENTS' => array(
            1 => 'color: #008080; font-style: italic;',
            2 => 'color: #008080;',
            'MULTI' => 'color: #008080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008080; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #808080;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;'
            ),
        'METHODS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #0000FF;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/lotusformulas.php0000664000175000017500000004267612014173440015631 0ustar  benbebenbe 'Lotus Notes @Formulas',
    'COMMENT_SINGLE' => array(1 => "'"),
    'COMMENT_MULTI' => array('REM' => ';'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array (
            '[ZoomPreview]', '[WorkspaceStackReplicaIcons]',
            '[WorkspaceProperties]', '[WindowWorkspace]',
            '[WindowTile]', '[WindowRestore]', '[WindowNext]',
            '[WindowMinimizeAll]', '[WindowMinimize]', '[WindowMaximizeAll]',
            '[WindowMaximize]', '[WindowCascade]', '[ViewSwitchForm]',
            '[ViewShowUnread]', '[ViewShowServerNames]', '[ViewShowSearchBar]',
            '[ViewShowRuler]', '[ViewShowPageBreaks]', '[ViewShowOnlyUnread]',
            '[ViewShowOnlySelected]', '[ViewShowOnlySearchResults]',
            '[ViewShowOnlyCategories]', '[ViewShowObject]',
            '[ViewShowFieldHelp]', '[ViewRenamePerson]', '[ViewRefreshUnread]',
            '[ViewRefreshFields]', '[ViewNavigatorsNone]',
            '[ViewNavigatorsFolders]', '[ViewMoveName]', '[ViewHorizScrollbar]',
            '[ViewExpandWithChildren]', '[ViewExpandAll]', '[ViewExpand]',
            '[ViewCollapseAll]', '[ViewCollapse]', '[ViewChange]',
            '[ViewCertify]', '[ViewBesideFolders]', '[ViewBelowFolders]',
            '[ViewArrangeIcons]', '[V3EditPrevField]', '[V3EditNextField]',
            '[UserIDSwitch]', '[UserIDSetPassword]', '[UserIDMergeCopy]',
            '[UserIDInfo]', '[UserIDEncryptionKeys]', '[UserIDCreateSafeCopy]',
            '[UserIDClearPassword]', '[UserIDCertificates]',
            '[ToolsUserLogoff]', '[ToolsSpellCheck]', '[ToolsSmartIcons]',
            '[ToolsSetupUserSetup]', '[ToolsSetupPorts]', '[ToolsSetupMail]',
            '[ToolsSetupLocation]', '[ToolsScanUnreadSelected]',
            '[ToolsScanUnreadPreferred]', '[ToolsScanUnreadChoose]',
            '[ToolsRunMacro]', '[ToolsRunBackgroundMacros]', '[ToolsReplicate]',
            '[ToolsRefreshSelectedDocs]', '[ToolsRefreshAllDocs]',
            '[ToolsMarkSelectedUnread]', '[ToolsMarkSelectedRead]',
            '[ToolsMarkAllUnread]', '[ToolsMarkAllRead]', '[ToolsHangUp]',
            '[ToolsCategorize]', '[ToolsCall]', '[TextUnderline]',
            '[TextSpacingSingle]', '[TextSpacingOneAndaHalf]',
            '[TextSpacingDouble]', '[TextSetFontSize]', '[TextSetFontFace]',
            '[TextSetFontColor]', '[TextReduceFont]', '[TextPermanentPen]',
            '[TextParagraphStyles]', '[TextParagraph]', '[TextOutdent]',
            '[TextNumbers]', '[TextNormal]', '[TextItalic]', '[TextFont]',
            '[TextEnlargeFont]', '[TextCycleSpacing]', '[TextBullet]',
            '[TextBold]', '[TextAlignRight]', '[TextAlignNone]',
            '[TextAlignLeft]', '[TextAlignFull]', '[TextAlignCenter]',
            '[SwitchView]', '[SwitchForm]', '[StyleCycleKey]',
            '[SmartIconsNextSet]', '[SmartIconsFloating]', '[ShowProperties]',
            '[ShowHidePreviewPane]', '[ShowHideParentPreview]',
            '[ShowHideLinkPreview]', '[ShowHideIMContactList]',
            '[SetCurrentLocation]', '[SendInstantMessage]',
            '[SectionRemoveHeader]', '[SectionProperties]',
            '[SectionExpandAll]', '[SectionExpand]', '[SectionDefineEditors]',
            '[SectionCollapseAll]', '[SectionCollapse]', '[RunScheduledAgents]',
            '[RunAgent]', '[ReplicatorStop]', '[ReplicatorStart]',
            '[ReplicatorSendReceiveMail]', '[ReplicatorSendMail]',
            '[ReplicatorReplicateWithServer]', '[ReplicatorReplicateSelected]',
            '[ReplicatorReplicateNext]', '[ReplicatorReplicateHigh]',
            '[Replicator]', '[RenameDatabase]', '[RemoveFromFolder]',
            '[RemoteDebugLotusScript]', '[ReloadWindow]', '[RefreshWindow]',
            '[RefreshParentNote]', '[RefreshHideFormulas]', '[RefreshFrame]',
            '[PublishDatabase]', '[PictureProperties]', '[PasteBitmapAsObject]',
            '[PasteBitmapAsBackground]', '[OpenView]', '[OpenPage]',
            '[OpenNavigator]', '[OpenInNewWindow]', '[OpenHelpDocument]',
            '[OpenFrameset]', '[OpenDocument]', '[OpenCalendar]',
            '[ObjectProperties]', '[ObjectOpen]', '[ObjectDisplayAs]',
            '[NavPrevUnread]', '[NavPrevSelected]', '[NavPrevMain]',
            '[NavPrev]', '[NavNextUnread]', '[NavNextSelected]',
            '[NavNextMain]', '[NavNext]', '[NavigatorTest]',
            '[NavigatorProperties]', '[NavigateToBacklink]',
            '[NavigatePrevUnread]', '[NavigatePrevSelected]',
            '[NavigatePrevMain]', '[NavigatePrevHighlight]', '[NavigatePrev]',
            '[NavigateNextUnread]', '[NavigateNextSelected]',
            '[NavigateNextMain]', '[NavigateNextHighlight]', '[NavigateNext]',
            '[MoveToTrash]', '[MailSendPublicKey]', '[MailSendEncryptionKey]',
            '[MailSendCertificateRequest]', '[MailSend]', '[MailScanUnread]',
            '[MailRequestNewPublicKey]', '[MailRequestNewName]',
            '[MailRequestCrossCert]', '[MailOpen]', '[MailForwardAsAttachment]',
            '[MailForward]', '[MailComposeMemo]', '[MailAddress]',
            '[LayoutProperties]', '[LayoutElementSendToBack]',
            '[LayoutElementProperties]', '[LayoutElementBringToFront]',
            '[LayoutAddText]', '[LayoutAddGraphic]', '[InsertSubform]',
            '[HotspotProperties]', '[HotspotClear]', '[HelpUsingDatabase]',
            '[HelpAboutNotes]', '[HelpAboutDatabase]', '[GoUpLevel]',
            '[FormTestDocument]', '[FormActions]', '[FolderRename]',
            '[FolderProperties]', '[FolderMove]', '[FolderExpandWithChildren]',
            '[FolderExpandAll]', '[FolderExpand]', '[FolderDocuments]',
            '[FolderCustomize]', '[FolderCollapse]', '[Folder]',
            '[FindFreeTimeDialog]', '[FileSaveNewVersion]', '[FileSave]',
            '[FilePrintSetup]', '[FilePrint]', '[FilePageSetup]',
            '[FileOpenDBRepID]', '[FileOpenDatabase]', '[FileNewReplica]',
            '[FileNewDatabase]', '[FileImport]', '[FileFullTextUpdate]',
            '[FileFullTextInfo]', '[FileFullTextDelete]',
            '[FileFullTextCreate]', '[FileExport]', '[FileExit]',
            '[FileDatabaseUseServer]', '[FileDatabaseRemove]',
            '[FileDatabaseInfo]', '[FileDatabaseDelete]', '[FileDatabaseCopy]',
            '[FileDatabaseCompact]', '[FileDatabaseACL]', '[FileCloseWindow]',
            '[ExitNotes]', '[Execute]', '[ExchangeUnreadMarks]', '[EmptyTrash]',
            '[EditUp]', '[EditUntruncate]', '[EditUndo]', '[EditTop]',
            '[EditTableInsertRowColumn]', '[EditTableFormat]',
            '[EditTableDeleteRowColumn]', '[EditShowHideHiddenChars]',
            '[EditSelectByDate]', '[EditSelectAll]', '[EditRight]',
            '[EditRestoreDocument]', '[EditResizePicture]',
            '[EditQuoteSelection]', '[EditProfileDocument]', '[EditProfile]',
            '[EditPrevField]', '[EditPhoneNumbers]', '[EditPasteSpecial]',
            '[EditPaste]', '[EditOpenLink]', '[EditNextField]',
            '[EditMakeDocLink]', '[EditLocations]', '[EditLinks]', '[EditLeft]',
            '[EditInsertText]', '[EditInsertTable]', '[EditInsertPopup]',
            '[EditInsertPageBreak]', '[EditInsertObject]',
            '[EditInsertFileAttachment]', '[EditInsertButton]',
            '[EditIndentFirstLine]', '[EditIndent]', '[EditHorizScrollbar]',
            '[EditHeaderFooter]', '[EditGotoField]', '[EditFindNext]',
            '[EditFindInPreview]', '[EditFind]', '[EditEncryptionKeys]',
            '[EditDown]', '[EditDocument]', '[EditDetach]', '[EditDeselectAll]',
            '[EditCut]', '[EditCopy]', '[EditClear]', '[EditButton]',
            '[EditBottom]', '[DiscoverFolders]', '[Directories]',
            '[DialingRules]', '[DesignViewSelectFormula]', '[DesignViews]',
            '[DesignViewNewColumn]', '[DesignViewFormFormula]',
            '[DesignViewEditActions]', '[DesignViewColumnDef]',
            '[DesignViewAttributes]', '[DesignViewAppendColumn]',
            '[DesignSynopsis]', '[DesignSharedFields]', '[DesignReplace]',
            '[DesignRefresh]', '[DesignMacros]', '[DesignIcon]',
            '[DesignHelpUsingDocument]', '[DesignHelpAboutDocument]',
            '[DesignFormWindowTitle]', '[DesignFormUseField]',
            '[DesignFormShareField]', '[DesignForms]', '[DesignFormNewField]',
            '[DesignFormFieldDef]', '[DesignFormAttributes]',
            '[DesignDocumentInfo]', '[DebugLotusScript]',
            '[DatabaseReplSettings]', '[DatabaseDelete]', '[CreateView]',
            '[CreateTextbox]', '[CreateSubForm]', '[CreateSection]',
            '[CreateRectangularHotspot]', '[CreateRectangle]',
            '[CreatePolyline]', '[CreatePolygon]', '[CreateNavigator]',
            '[CreateLayoutRegion]', '[CreateForm]', '[CreateFolder]',
            '[CreateEllipse]', '[CreateControlledAccessSection]',
            '[CreateAgent]', '[CreateAction]', '[CopySelectedAsTable]',
            '[ComposeWithReference]', '[Compose]', '[CloseWindow]', '[Clear]',
            '[ChooseFolders]', '[CalendarGoTo]', '[CalendarFormat]',
            '[AttachmentView]', '[AttachmentProperties]', '[AttachmentLaunch]',
            '[AttachmentDetachAll]', '[AgentTestRun]', '[AgentSetServerName]',
            '[AgentRun]', '[AgentLog]', '[AgentEnableDisable]', '[AgentEdit]',
            '[AdminTraceConnection]', '[AdminStatisticsConfig]',
            '[AdminSendMailTrace]', '[AdminRemoteConsole]',
            '[AdminRegisterUser]', '[AdminRegisterServer]',
            '[AdminRegisterFromFile]', '[AdminOutgoingMail]',
            '[AdminOpenUsersView]', '[AdminOpenStatistics]',
            '[AdminOpenServersView]', '[AdminOpenServerLog]',
            '[AdminOpenGroupsView]', '[AdminOpenCertLog]', '[AdminOpenCatalog]',
            '[AdminOpenAddressBook]', '[AdminNewOrgUnit]',
            '[AdminNewOrganization]', '[Administration]',
            '[AdminIDFileSetPassword]', '[AdminIDFileExamine]',
            '[AdminIDFileClearPassword]', '[AdminDatabaseQuotas]',
            '[AdminDatabaseAnalysis]', '[AdminCrossCertifyKey]',
            '[AdminCrossCertifyIDFile]', '[AdminCreateGroup]', '[AdminCertify]',
            '[AddToIMContactList]', '[AddDatabaseRepID]', '[AddDatabase]',
            '[AddBookmark]'
            ),
        2 => array(
            'SELECT', 'FIELD', 'ENVIRONMENT', 'DEFAULT', '@Zone ', '@Yesterday',
            '@Yes', '@Year', '@Word', '@Wide', '@While', '@Weekday',
            '@WebDbName', '@ViewTitle', '@ViewShowThisUnread', '@Version',
            '@VerifyPassword', '@ValidateInternetAddress', '@V4UserAccess',
            '@V3UserName', '@V2If', '@UserRoles', '@UserPrivileges',
            '@UserNamesList', '@UserNameLanguage', '@UserName', '@UserAccess',
            '@UrlQueryString', '@URLOpen', '@URLHistory', '@URLGetHeader',
            '@URLEncode', '@URLDecode', '@UpperCase', '@UpdateFormulaContext',
            '@Unique', '@UndeleteDocument', '@Unavailable', '@True', '@Trim',
            '@Transform', '@ToTime', '@ToNumber', '@Tomorrow', '@Today',
            '@TimeZoneToText', '@TimeToTextInZone', '@TimeMerge', '@Time',
            '@ThisValue', '@ThisName', '@TextToTime', '@TextToNumber', '@Text',
            '@TemplateVersion', '@Tan', '@Sum', '@Success', '@Subset',
            '@StatusBar', '@Sqrt', '@Soundex', '@Sort', '@Sin', '@Sign',
            '@SetViewInfo', '@SetTargetFrame', '@SetProfileField',
            '@SetHTTPHeader', '@SetField', '@SetEnvironment', '@SetDocField',
            '@Set', '@ServerName', '@ServerAccess', '@Select', '@Second',
            '@Round', '@RightBack', '@Right', '@Return', '@Responses',
            '@ReplicaID', '@ReplaceSubstring', '@Replace', '@Repeat',
            '@RegQueryValue', '@RefreshECL', '@Random', '@ProperCase',
            '@Prompt', '@Power', '@PostedCommand', '@PolicyIsFieldLocked',
            '@Platform', '@PickList', '@Pi', '@PasswordQuality', '@Password',
            '@OrgDir', '@OptimizeMailAddress', '@OpenInNewWindow', '@Now',
            '@Nothing', '@NoteID', '@No', '@NewLine', '@Narrow', '@NameLookup',
            '@Name', '@Month', '@Modulo', '@Modified', '@Minute', '@Min',
            '@MiddleBack', '@Middle', '@Member', '@Max', '@Matches',
            '@MailSignPreference', '@MailSend', '@MailSavePreference',
            '@MailEncryptSentPreference', '@MailEncryptSavedPreference',
            '@MailDbName', '@LowerCase', '@Log', '@Locale', '@Ln', '@Like',
            '@Length', '@LeftBack', '@Left', '@LDAPServer', '@LaunchApp',
            '@LanguagePreference', '@Keywords', '@IsVirtualizedDirectory',
            '@IsValid', '@IsUsingJavaElement', '@IsUnavailable', '@IsTime',
            '@IsText', '@IsResponseDoc', '@IsNumber', '@IsNull', '@IsNotMember',
            '@IsNewDoc', '@IsModalHelp', '@IsMember', '@IsExpandable',
            '@IsError', '@IsEmbeddedInsideWCT', '@IsDocTruncated',
            '@IsDocBeingSaved', '@IsDocBeingRecalculated', '@IsDocBeingMailed',
            '@IsDocBeingLoaded', '@IsDocBeingEdited', '@IsDB2', '@IsCategory',
            '@IsAvailable', '@IsAppInstalled', '@IsAgentEnabled', '@Integer',
            '@InheritedDocumentUniqueID', '@Implode', '@IfError', '@If',
            '@Hour', '@HashPassword', '@HardDeleteDocument', '@GetViewInfo',
            '@GetProfileField', '@GetPortsList', '@GetIMContactListGroupNames',
            '@GetHTTPHeader', '@GetFocusTable', '@GetField', '@GetDocField',
            '@GetCurrentTimeZone', '@GetAddressBooks', '@FormLanguage', '@For',
            '@FontList', '@FloatEq', '@FileDir', '@False', '@Failure',
            '@Explode', '@Exp', '@Eval', '@Error', '@Environment', '@Ends',
            '@EnableAlarms', '@Elements', '@EditUserECL', '@EditECL',
            '@DoWhile', '@Domain', '@DocumentUniqueID', '@DocSiblings',
            '@DocParentNumber', '@DocOmmittedLength', '@DocNumber', '@DocMark',
            '@DocLock', '@DocLevel', '@DocLength', '@DocFields',
            '@DocDescendants', '@DocChildren', '@Do', '@DialogBox',
            '@DeleteField', '@DeleteDocument', '@DDETerminate', '@DDEPoke',
            '@DDEInitiate', '@DDEExecute', '@DbTitle', '@DbName', '@DbManager',
            '@DbLookup', '@DbExists', '@DbCommand', '@DbColumn', '@DB2Schema',
            '@Day', '@Date', '@Created', '@Count', '@Cos', '@Contains',
            '@ConfigFile', '@Compare', '@Command', '@ClientType',
            '@CheckFormulaSyntax', '@CheckAlarms', '@Char', '@Certificate',
            '@BusinessDays', '@BrowserInfo', '@Begins', '@Author',
            '@Attachments', '@AttachmentNames', '@AttachmentModifiedTimes',
            '@AttachmentLengths', '@ATan2', '@ATan', '@ASin', '@Ascii',
            '@AllDescendants', '@AllChildren', '@All', '@AdminECLIsLocked',
            '@Adjust', '@AddToFolder', '@ACos', '@Accessed', '@AbstractSimple',
            '@Abstract', '@Abs'
            )
        ),
    'SYMBOLS' => array(
        '(', ')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #800000;',
            2 => 'color: #0000FF;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #FF00FF;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF00FF;'
            ),
        'METHODS' => array(
            1 => 'color: #0000AA;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 2
    );

?>
geshi/geshi/xorg_conf.php0000664000175000017500000000756512014173375014703 0ustar  benbebenbe 'Xorg configuration',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        // sections
        1 => array(
            'Section', 'EndSection', 'SubSection', 'EndSubSection'
            ),
        2 => array(
            // see http://www.x.org/archive/X11R6.9.0/doc/html/xorg.conf.5.html
            'BiosBase', 'Black', 'Boardname', 'BusID', 'ChipID', 'ChipRev',
            'Chipset', 'ClockChip', 'Clocks', 'DacSpeed',
            'DefaultDepth', 'DefaultFbBpp', 'Depth', 'Device',
            'DisplaySize', 'Driver', 'FbBpp', 'Gamma',
            'HorizSync', 'IOBase', 'Identifier', 'InputDevice',
            'Load', 'MemBase', 'Mode', 'Modeline', 'Modelname',
            'Modes', 'Monitor', 'Option', 'Ramdac', 'RgbPath',
            'Screen', 'TextClockFreq', 'UseModes', 'VendorName',
            'VertRefresh', 'VideoAdaptor', 'VideoRam',
            'ViewPort', 'Virtual', 'Visual', 'Weight', 'White'
            ),
        3 => array(
            // some sub-keywords
            // screen position
            'Above', 'Absolute', 'Below', 'LeftOf', 'Relative', 'RightOf',
            // modes
            'DotClock', 'Flags', 'HSkew', 'HTimings', 'VScan', 'VTimings'
            ),
        ),
    'REGEXPS' => array(
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #990000;',
            3 => 'color: #550000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #adadad; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;',
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/whois.php0000664000175000017500000001464012014173403014030 0ustar  benbebenbe 'Whois (RPSL format)',
    'COMMENT_SINGLE' => array(1 => '% ', 2 => '%ERROR:'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        //Description
        3 => '/(?:(?<=^remarks:)|(?<=^descr:))(.|\n\s)*$/mi',

        //Contact Details
        4 => '/(?<=^address:)(.|\n\s)*$/mi',
        5 => '/\+\d+(?:(?:\s\(\d+(\s\d+)*\))?(?:\s\d+)+|-\d+-\d+)/',
        6 => '/\b(?!-|\.)[\w\-\.]+(?!-|\.)@((?!-)[\w\-]+\.)+\w+\b/',

        //IP, Networks and AS information\links
        7 => '/\b(? '/\bAS\d+\b/'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array( //Object Types
            'as-block','as-set','aut-num','domain','filter-set','inet-rtr',
            'inet6num','inetnum','irt','key-cert','limerick','mntner',
            'organisation','peering-set','person','poem','role','route-set',
            'route','route6','rtr-set'
            ),
        2 => array( //Field Types
            'abuse-mailbox','address','admin-c','aggr-bndry','aggr-mtd','alias',
            'as-block','as-name','as-set','aut-num','auth','author','certif',
            'changed','components','country','default','descr','dom-net',
            'domain','ds-rdata','e-mail','encryption','export','export-comps',
            'fax-no','filter','filter-set','fingerpr','form','holes','ifaddr',
            'import','inet-rtr','inet6num','inetnum','inject','interface','irt',
            'irt-nfy','key-cert','limerick','local-as','mbrs-by-ref',
            'member-of','members','method','mnt-by','mnt-domains','mnt-irt',
            'mnt-lower','mnt-nfy','mnt-ref','mnt-routes','mntner','mp-default',
            'mp-export','mp-filter','mp-import','mp-members','mp-peer',
            'mp-peering','netname','nic-hdl','notify','nserver','org',
            'org-name','org-type','organisation','origin','owner','peer',
            'peering','peering-set','person','phone','poem','ref-nfy','refer',
            'referral-by','remarks','rev-srv','role','route','route-set',
            'route6','rtr-set','signature','source','status','sub-dom','tech-c',
            'text','upd-to','zone-c'
            ),
        3 => array( //RPSL reserved
            'accept','action','and','announce','any','as-any','at','atomic',
            'except','from','inbound','into','networks','not','or','outbound',
            'peeras','refine','rs-any','to'
            )
        ),
    'SYMBOLS' => array(
        ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF; font-weight: bold;',
            2 => 'color: #000080; font-weight: bold;',
            3 => 'color: #990000; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #666666; font-style: italic;',
            3 => 'color: #404080;',
            4 => 'color: #408040;',
            5 => 'color: #408040;',
            6 => 'color: #408040;',
            7 => 'color: #804040;',
            8 => 'color: #804040;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => '',
            ),
        'NUMBERS' => array(
            0 => 'color: #000080;',
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #0000FF;'
            ),
        'REGEXPS' => array(
            0 => 'color: #000088;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.irr.net/docs/rpsl.html'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        //Variables
        0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*"
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            1 => array(
                'DISALLOWED_BEFORE' => '(?<=\A |\A \n(?m:^)|\n\n(?m:^))'
                ),
            2 => array(
                'DISALLOWED_BEFORE' => '(?m:^)'
                )
            ),
        'ENABLE_FLAGS' => array(
            'BRACKETS' => GESHI_NEVER,
            'SYMBOLS' => GESHI_NEVER,
            'BRACKETS' => GESHI_NEVER,
            'STRINGS' => GESHI_NEVER,
            'ESCAPE_CHAR' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER,
            'METHODS' => GESHI_NEVER,
            'SCRIPT' => GESHI_NEVER
            )
        ),
);

?>geshi/geshi/visualfoxpro.php0000664000175000017500000007237512014173377015463 0ustar  benbebenbe 'Visual Fox Pro',
    'COMMENT_SINGLE' => array(1 => "//", 2 => "\n*"),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'Case', 'Else', '#Else', 'Then',
            'Endcase', 'Enddefine', 'Enddo', 'Endfor', 'Endfunc', 'Endif', 'Endprintjob',
            'Endproc', 'Endscan', 'Endtext', 'Endwith', '#Endif',
            '#Elif','#Define','#If','#Include',
            '#Itsexpression','#Readclauses','#Region','#Section','#Undef','#Wname',
            'Define','Do',
            'For','Function','Hidden',
            'If','Local','Lparameter','Lparameters','Next','Otherwise',
            'Parameters','Printjob','Procedure','Protected','Public','Scan',
            'Text','While','With','Abs','Accept','Access','Aclass','Acopy',
            'Acos','Adatabases','Adbobjects','Addbs','Addrelationtoenv','Addtabletoenv',
            'Adel','Adir','Aelement','Aerror','Afields','Afont',
            'Agetclass','Agetfileversion','Ains','Ainstance','Alen','Align',
            'Alines','Alltrim','Alter','Amembers','Amouseobj','Anetresources',
            'Ansitooem','Append','Aprinters','Ascan','Aselobj','Asin',
            'Asort','Assert','Asserts','Assist','Asubscript','Asynchronous',
            'At_c','Atan','Atc','Atcc','Atcline','Atline',
            'Atn2','Aused','Autoform','Autoreport','Avcxclasses','Average',
            'BarCount','BarPrompt','BatchMode','BatchUpdateCount','Begin','BellSound',
            'BinToC','Bitand','Bitclear','Bitlshift','Bitnot',
            'Bitor','Bitrshift','Bitset','Bittest','Bitxor','Bof',
            'Browse','BrowseRefresh','Buffering','BuilderLock','COMArray','COMReturnError',
            'CToBin','Calculate','Call','Capslock','Cd','Cdow',
            'Ceiling','Central','Change','Char','Chdir','Chr',
            'Chrsaw','Chrtran','Chrtranc','Close','Cmonth','Cntbar',
            'Cntpad','Col','Comclassinfo','CommandTargetQuery','Compile','Completed',
            'Compobj','Compute','Concat','ConnectBusy','ConnectHandle','ConnectName',
            'ConnectString','ConnectTimeOut','ContainerReleaseType','Continue','Copy','Cos',
            'Cot','Count','Coverage','Cpconvert','Cpcurrent','Cpdbf',
            'Cpnotrans','Create','CreateBinary','Createobject','Createobjectex','Createoffline',
            'CrsBuffering','CrsFetchMemo','CrsFetchSize','CrsMaxRows','CrsMethodUsed','CrsNumBatch',
            'CrsShareConnection','CrsUseMemoSize','CrsWhereClause','Ctod','Ctot',
            'Curdate','Curdir','CurrLeft','CurrSymbol','CursorGetProp','CursorSetProp',
            'Curtime','Curval','DBGetProp','DBSetProp','DB_BufLockRow','DB_BufLockTable',
            'DB_BufOff','DB_BufOptRow','DB_BufOptTable','DB_Complette','DB_DeleteInsert','DB_KeyAndModified',
            'DB_KeyAndTimestamp','DB_KeyAndUpdatable','DB_LocalSQL','DB_NoPrompt','DB_Prompt','DB_RemoteSQL',
            'DB_TransAuto','DB_TransManual','DB_TransNone','DB_Update','Datetime','Day',
            'Dayname','Dayofmonth','Dayofweek','Dayofyear','Dbalias','Dbused',
            'Ddeaborttrans','Ddeadvise','Ddeenabled','Ddeexecute','Ddeinitiate','Ddelasterror',
            'Ddepoke','Dderequest','Ddesetoption','Ddesetservice','Ddesettopic','Ddeterminate',
            'Debugout','Declare','DefOLELCid','DefaultValue','Defaultext','Degrees',
            'DeleteTrigger','Desc','Description','Difference','Dimension','Dir',
            'Directory','Diskspace','DispLogin','DispWarnings','Display','Dll',
            'Dmy','DoDefault','DoEvents','Doc','Dow',
            'Drivetype','Drop','Dropoffline','Dtoc','Dtor','Dtos',
            'Dtot','DynamicInputMask','Each','Edit','Eject','Elif',
            'End','Eof','Erase','Evaluate','Event','Eventtracking',
            'Exclude','Exclusive','Exit','Exp','Export','External',
            'FDate','FTime','Fchsize','Fclose','Fcount','Fcreate',
            'Feof','Ferror','FetchMemo','FetchSize','Fflush','Fgets',
            'Filer','Filetostr','Find','Fklabel','Fkmax','Fldlist',
            'Flock','Floor','Flush','Fontmetric','Fopen','Forceext',
            'Forcepath','FormSetClass','FormSetLib','FormsClass','FormsLib','Found',
            'FoxPro','Foxcode','Foxdoc','Foxgen','Foxgraph','Foxview',
            'Fputs','Fread','French','Fseek','Fsize','Fv',
            'Fwrite','Gather','German','GetPem','Getbar','Getcolor',
            'Getcp','Getdir','Getenv','Getexpr','Getfile','Getfldstate',
            'Getfont','Gethost','Getnextmodified','Getobject','Getpad','Getpict',
            'Getprinter','Go','Gomonth','Goto','Graph','GridHorz',
            'GridShow','GridShowPos','GridSnap','GridVert','Help','HelpOn',
            'HelpTo','HighLightRow','Home','Hour','IMEStatus','IdleTimeOut',
            'Idxcollate','Ifdef','Ifndef','Iif','Import','Include',
            'Indbc','Index','Indexseek','Inkey','Inlist','Input',
            'Insert','InsertTrigger','Insmode','IsBlank','IsFLocked','IsLeadByte',
            'IsMouse','IsNull','IsRLocked','Isalpha','Iscolor','Isdigit',
            'IsExclusive','Ishosted','IsLower','IsReadOnly',
            'IsUpper','Italian','Japan','Join','Justdrive','Justext',
            'Justfname','Justpath','Juststem','KeyField','KeyFieldList','Keyboard'
            ),
        2 => array('Keymatch','LastProject','Lastkey','Lcase','Leftc','Len',
            'Lenc','Length','Likec','Lineno','LoadPicture',
            'Locate','Locfile','Log','Log10','Logout','Lookup',
            'Loop','Lower','Ltrim','Lupdate','Mail','MaxRecords',
            'Mcol','Md','Mdown','Mdx','Mdy','Memlines',
            'Menu','Messagebox','Minute','Mkdir','Mline','Modify',
            'Month','Monthname','Mouse','Mrkbar','Mrkpad','Mrow',
            'Mtdll','Mton','Mwindow','Native','Ndx','Network',
            'NoFilter','Nodefault','Normalize','Note','Now','Ntom',
            'NullString','Numlock','Nvl','ODBChdbc','ODBChstmt','OLEDropTextInsertion',
            'OLELCid','Objnum','Objref','Objtoclient','Objvar','Occurs',
            'Oemtoansi','Oldval','OlePublic','Olereturnerror','On','Open',
            'Oracle','Order','Os','Outer','PCount','Pack',
            'PacketSize','Padc','Padl','Padr','Payment','Pcol',
            'PemStatus','Pi','Pivot','Play','Pop','Popup',
            'Power','PrimaryKey','Printstatus','Private','Prmbar','Prmpad',
            'ProjectClick','Proper','Prow','Prtinfo','Push','Putfile',
            'Pv','Qpr','Quater','QueryTimeOut','Quit','Radians',
            'Rand','Rat','Ratc','Ratline','Rd','Rdlevel',
            'Read','Readkey','Recall','Reccount','RecentlyUsedFiles','Recno',
            'Recsize','Regional','Reindex','RelatedChild','RelatedTable','RelatedTag',
            'Remove','Rename','Repeat','Replace','Replicate','Report',
            'ResHeight','ResWidth','ResourceOn','ResourceTo','Resources','Restore',
            'Resume','Retry','Return','Revertoffline','Rgbscheme','Rightc',
            'Rlock','Rmdir','Rollback','Round','Rtod','Rtrim',
            'RuleExpression','RuleText','Run','Runscript','Rview','SQLAsynchronous',
            'SQLBatchMode','SQLCancel','SQLColumns','SQLConnect','SQLConnectTimeOut','SQLDisconnect',
            'SQLDispLogin','SQLDispWarnings','SQLExec','SQLGetProp','SQLIdleTimeOut','SQLMoreResults',
            'SQLPrepare','SQLQueryTimeOut','SQLSetProp','SQLTables','SQLTransactions','SQLWaitTime',
            'Save','SavePicture','ScaleUnits','Scatter','Scols',
            'Scroll','Sec','Second','Seek','Select','SendUpdates',
            'Set','SetDefault','Setfldstate','Setup','ShareConnection','ShowOLEControls',
            'ShowOLEInsertable','ShowVCXs','Sign','Sin','Size','SizeBox',
            'Skpbar','Skppad','Sort','Soundex','SourceName','Sqlcommit',
            'Sqll','Sqlrollback','Sqlstringconnect','Sqrt','Srows','StatusBar',
            'Store','Str','Strconv','Strtofile','Strtran','Stuff',
            'Stuffc','Substr','Substrc','Substring','Sum','Suspend',
            'Sys','Sysmetric','TabOrdering','Table','TableRefresh','Tablerevert',
            'Tableupdate','TagCount','TagNo','Tan','Target','This',
            'Thisform','Thisformset','Timestamp','Timestampdiff','Total','Transactions',
            'Transform','Trim','Truncate','Ttoc','Ttod','Txnlevel',
            'Txtwidth','Type','Ucase','Undefine','Unlock','Unpack',
            'Updatable','UpdatableFieldList','Update','UpdateName','UpdateNameList','UpdateTrigger',
            'UpdateType','Updated','Upper','Upsizing','Usa','Use',
            'UseMemoSize','Used','Val','Validate','Varread','Vartype',
            'Version','VersionLanguage','Wait','WaitTime','Wborder','Wchild',
            'Wcols','Week','Wexist','Wfont','WhereType','Windcmd',
            'Windhelp','Windmemo','Windmenu','Windmodify','Windquery','Windscreen',
            'Windsnip','Windstproc','WizardPrompt','Wlast','Wlcol','Wlrow',
            'Wmaximum','Wminimum','Wontop','Woutput','Wparent','Wread',
            'Wrows','Wtitle','Wvisible','Year','Zap','_Alignment',
            '_Asciicols','_Asciirows','_Assist','_Beautify','_Box','_Browser',
            '_Builder','_Calcmem','_Calcvalue','_Cliptext','_Converter','_Coverage',
            '_Curobj','_Dblclick','_Diarydate','_Dos','_Foxdoc','_Foxgraph',
            '_Gallery','_Gengraph','_Genhtml','_Genmenu','_Genpd','_Genscrn',
            '_Genxtab','_Getexpr','_Include','_Indent','_Lmargin','_Mac',
            '_Mbr_appnd','_Mbr_cpart','_Mbr_delet','_Mbr_font','_Mbr_goto','_Mbr_grid',
            '_Mbr_link','_Mbr_mode','_Mbr_mvfld','_Mbr_mvprt','_Mbr_seek','_Mbr_sp100',
            '_Mbr_sp200','_Mbr_szfld','_Mbrowse','_Mda_appnd','_Mda_avg','_Mda_brow',
            '_Mda_calc','_Mda_copy','_Mda_count','_Mda_label','_Mda_pack','_Mda_reprt',
            '_Mda_rindx','_Mda_setup','_Mda_sort','_Mda_sp100','_Mda_sp200','_Mda_sp300',
            '_Mda_sum','_Mda_total','_Mdata','_Mdiary','_Med_clear','_Med_copy',
            '_Med_cut','_Med_cvtst','_Med_find','_Med_finda','_Med_goto','_Med_insob',
            '_Med_link','_Med_obj','_Med_paste','_Med_pref','_Med_pstlk','_Med_redo',
            '_Med_repl','_Med_repla','_Med_slcta','_Med_sp100','_Med_sp200','_Med_sp300',
            '_Med_sp400','_Med_sp500','_Med_undo','_Medit','_Mfi_clall','_Mfi_close',
            '_Mfi_export','_Mfi_import','_Mfi_new','_Mfi_open','_Mfi_pgset','_Mfi_prevu',
            '_Mfi_print','_Mfi_quit','_Mfi_revrt','_Mfi_savas','_Mfi_save','_Mfi_send',
            '_Mfi_setup','_Mfi_sp100','_Mfi_sp200','_Mfi_sp300','_Mfi_sp400','_Mfile',
            '_Mfiler','_Mfirst','_Mlabel','_Mlast','_Mline','_Mmacro',
            '_Mmbldr','_Mpr_beaut','_Mpr_cancl','_Mpr_compl','_Mpr_do','_Mpr_docum',
            '_Mpr_formwz','_Mpr_gener','_Mpr_graph','_Mpr_resum','_Mpr_sp100','_Mpr_sp200',
            '_Mpr_sp300','_Mpr_suspend','_Mprog','_Mproj','_Mrc_appnd','_Mrc_chnge',
            '_Mrc_cont','_Mrc_delet','_Mrc_goto','_Mrc_locat','_Mrc_recal','_Mrc_repl',
            '_Mrc_seek','_Mrc_sp100','_Mrc_sp200','_Mrecord','_Mreport','_Mrqbe',
            '_Mscreen','_Msm_data','_Msm_edit','_Msm_file','_Msm_format','_Msm_prog',
            '_Msm_recrd','_Msm_systm','_Msm_text','_Msm_tools','_Msm_view','_Msm_windo',
            '_Mst_about','_Mst_ascii','_Mst_calcu','_Mst_captr','_Mst_dbase','_Mst_diary',
            '_Mst_filer','_Mst_help','_Mst_hphow','_Mst_hpsch','_Mst_macro','_Mst_office',
            '_Mst_puzzl','_Mst_sp100','_Mst_sp200','_Mst_sp300','_Mst_specl','_Msysmenu',
            '_Msystem','_Mtable','_Mtb_appnd','_Mtb_cpart','_Mtb_delet','_Mtb_delrc',
            '_Mtb_goto','_Mtb_link','_Mtb_mvfld','_Mtb_mvprt','_Mtb_props','_Mtb_recal',
            '_Mtb_sp100','_Mtb_sp200','_Mtb_sp300','_Mtb_sp400','_Mtb_szfld','_Mwi_arran',
            '_Mwi_clear','_Mwi_cmd','_Mwi_color','_Mwi_debug','_Mwi_hide','_Mwi_hidea',
            '_Mwi_min','_Mwi_move','_Mwi_rotat','_Mwi_showa','_Mwi_size','_Mwi_sp100',
            '_Mwi_sp200','_Mwi_toolb','_Mwi_trace','_Mwi_view','_Mwi_zoom','_Mwindow',
            '_Mwizards','_Mwz_all','_Mwz_form','_Mwz_foxdoc','_Mwz_import','_Mwz_label',
            '_Mwz_mail','_Mwz_pivot','_Mwz_query','_Mwz_reprt','_Mwz_setup','_Mwz_table',
            '_Mwz_upsizing','_Netware','_Oracle','_Padvance','_Pageno','_Pbpage',
            '_Pcolno','_Pcopies','_Pdparms','_Pdriver','_Pdsetup','_Pecode',
            '_Peject','_Pepage','_Pform','_Plength','_Plineno','_Ploffset',
            '_Ppitch','_Pquality','_Pretext','_Pscode','_Pspacing','_Pwait',
            '_Rmargin','_Runactivedoc','_Samples','_Screen','_Shell','_Spellchk',
            '_Sqlserver','_Startup','_Tabs','_Tally','_Text','_Throttle',
            '_Transport','_Triggerlevel','_Unix','_WebDevOnly','_WebMenu','_WebMsftHomePage',
            '_WebVFPHomePage','_WebVfpOnlineSupport','_Windows','_Wizard','_Wrap','_scctext',
            '_vfp','Additive','After','Again','Aindent','Alignright',
            'All','Alt','Alternate','And','Ansi','Any',
            'Aplabout','App','Array','As','Asc','Ascending',
            'Ascii','At','Attributes','Automatic','Autosave','Avg',
            'Bar','Before','Bell','Between','Bitmap','Blank',
            'Blink','Blocksize','Border','Bottom','Brstatus','Bucket',
            'Buffers','By','Candidate','Carry','Cascade','Catalog',
            'Cdx','Center','Century','Cga','Character','Check',
            'Classlib','Clock','Cnt','Codepage','Collate','Color',
            'Com1','Com2','Command','Compact','Compatible','Compress',
            'Confirm','Connection','Connections','Connstring','Console','Copies',
            'Cpcompile','Cpdialog','Csv','Currency','Cycle','Databases',
            'Datasource','Date','Db4','Dbc','Dbf','Dbmemo3',
            'Debug','Decimals','Defaultsource','Deletetables','Delimited','Delimiters',
            'Descending','Design','Development','Device','Dif','Disabled',
            'Distinct','Dlls','Dohistory','Dos','Dosmem','Double',
            'Driver','Duplex','Echo','Editwork','Ega25','Ega43',
            'Ems','Ems64','Encrypt','Encryption','Environment','Escape',
            'Events','Exact','Except','Exe','Exists','Expression',
            'Extended','F','Fdow','Fetch','Field','Fields',
            'File','Files','Fill','Fixed','Float','Foldconst',
            'Font','Footer','Force','Foreign','Fox2x','Foxplus',
            'Free','Freeze','From','Fullpath','Fw2','Fweek',
            'Get','Gets','Global','Group','Grow','Halfheight',
            'Having','Heading','Headings','Helpfilter','History','Hmemory',
            'Hours','Id','In','Indexes','Information','Instruct',
            'Int','Integer','Intensity','Intersect','Into','Is',
            'Isometric','Key','Keycolumns','Keycomp','Keyset','Last',
            'Ledit','Level','Library','Like','Linked','Lock',
            'Logerrors','Long','Lpartition','Mac','Macdesktop','Machelp',
            'Mackey','Macros','Mark','Master','Max','Maxmem',
            'Mdi','Memlimit','Memory','Memos','Memowidth','Memvar',
            'Menus','Messages','Middle','Min','Minimize','Minus',
            'Mod','Modal','Module','Mono43','Movers','Multilocks',
            'Mvarsiz','Mvcount','N','Near','Negotiate','Noalias',
            'Noappend','Noclear','Noclose','Noconsole','Nocptrans','Nodata',
            'Nodebug','Nodelete','Nodup','Noedit','Noeject','Noenvironment',
            'Nofloat','Nofollow','Nogrow','Noinit','Nolgrid','Nolink',
            'Nolock','Nomargin','Nomdi','Nomenu','Nominimize','Nomodify'
            ),
        3 => array('Nomouse','None','Nooptimize','Nooverwrite','Noprojecthook','Noprompt',
            'Noread','Norefresh','Norequery','Norgrid','Norm','Normal',
            'Nosave','Noshadow','Noshow','Nospace','Not','Notab',
            'Notify','Noupdate','Novalidate','Noverify','Nowait','Nowindow',
            'Nowrap','Nozoom','Npv','Null','Number','Objects',
            'Odometer','Of','Off','Oleobjects','Only','Optimize',
            'Or','Orientation','Output','Outshow','Overlay','Overwrite',
            'Pad','Palette','Paperlength','Papersize','Paperwidth','Password',
            'Path','Pattern','Pause','Pdox','Pdsetup','Pen',
            'Pfs','Pixels','Plain','Popups','Precision','Preference',
            'Preview','Primary','Printer','Printquality','Procedures','Production',
            'Program','Progwork','Project','Prompt','Query','Random',
            'Range','Readborder','Readerror','Record','Recover','Redit',
            'Reference','References','Relative','Remote','Reprocess','Resource',
            'Rest','Restrict','Rgb','Right','Row','Rowset',
            'Rpd','Runtime','Safety','Same','Sample','Say',
            'Scale','Scheme','Scoreboard','Screen','Sdf','Seconds',
            'Selection','Shadows','Shared','Sheet','Shell','Shift',
            'Shutdown','Single','Some','Sortwork','Space','Sql',
            'Standalone','Status','Std','Step','Sticky','String',
            'Structure','Subclass','Summary','Sylk','Sysformats','Sysmenus',
            'System','T','Tab','Tables','Talk','Tedit',
            'Textmerge','Time','Timeout','Titles','Tmpfiles','To',
            'Topic','Transaction','Trap','Trbetween','Trigger','Ttoption',
            'Typeahead','Udfparms','Union','Unique','Userid','Users',
            'Values','Var','Verb','Vga25','Vga50','Views',
            'Volume','Where','Windows','Wk1','Wk3','Wks',
            'Workarea','Wp','Wr1','Wrap','Wrk','Xcmdfile',
            'Xl5','Xl8','Xls','Y','Yresolution','Zoom',
            'Activate','ActivateCell','Add','AddColumn','AddItem','AddListItem',
            'AddObject','AddProperty','AddToSCC','AfterBuild','AfterCloseTables','AfterDock',
            'AfterRowColChange','BeforeBuild','BeforeDock','BeforeOpenTables','BeforeRowColChange','Box',
            'Build','CheckIn','CheckOut','Circle','Clear','ClearData',
            'Cleanup','Click','CloneObject','CloseEditor','CloseTables','Cls',
            'CommandTargetExec','CommandTargetQueryStas','ContainerRelease','DataToClip','DblClick','Deactivate',
            'Delete','DeleteColumn','Deleted','Destroy','DoCmd','Dock',
            'DoScroll','DoVerb','DownClick','Drag','DragDrop','DragOver',
            'DropDown','Draw','EnterFocus','Error','ErrorMessage','Eval',
            'ExitFocus','FormatChange','GetData','GetFormat','GetLatestVersion','GoBack',
            'GotFocus','GoForward','GridHitTest','Hide','HideDoc','IndexToItemId',
            'Init','InteractiveChange','Item','ItemIdToIndex','KeyPress','Line',
            'Load','LostFocus','Message','MiddleClick','MouseDown','MouseMove',
            'MouseUp','MouseWheel','Move','Moved','NavigateTo','Newobject',
            'OLECompleteDrag','OLEDrag','OLEDragDrop','OLEDragOver','OLEGiveFeedback','OLESetData',
            'OLEStartDrag','OpenEditor','OpenTables','Paint','Point','Print',
            'ProgrammaticChange','PSet','QueryAddFile','QueryModifyFile','QueryRemoveFile','QueryRunFile',
            'QueryUnload','RangeHigh','RangeLow','ReadActivate','ReadExpression','ReadDeactivate',
            'ReadMethod','ReadShow','ReadValid','ReadWhen','Refresh','Release',
            'RemoveFromSCC','RemoveItem','RemoveListItem','RemoveObject','Requery','RequestData',
            'Reset','ResetToDefault','Resize','RightClick','SaveAs','SaveAsClass',
            'Scrolled','SetAll','SetData','SetFocus','SetFormat','SetMain',
            'SetVar','SetViewPort','ShowDoc','ShowWhatsThis','TextHeight','TextWidth',
            'Timer','UIEnable','UnDock','UndoCheckOut','Unload','UpClick',
            'Valid','WhatsThisMode','When','WriteExpression','WriteMethod','ZOrder',
            'ATGetColors','ATListColors','Accelerate','ActiveColumn','ActiveControl','ActiveForm',
            'ActiveObjectId','ActivePage','ActiveProject','ActiveRow','AddLineFeeds','Alias',
            'Alignment','AllowAddNew','AllowHeaderSizing','AllowResize','AllowRowSizing','AllowTabs',
            'AlwaysOnTop','Application','AutoActivate','AutoCenter','AutoCloseTables','AutoIncrement',
            'AutoOpenTables','AutoRelease','AutoSize','AutoVerbMenu','AutoYield','AvailNum',
            'BackColor','BackStyle','BaseClass','BorderColor','BorderStyle','BorderWidth',
            'Bound','BoundColumn','BoundTo','BrowseAlignment','BrowseCellMarg','BrowseDestWidth',
            'BufferMode','BufferModeOverride','BuildDateTime','ButtonCount','ButtonIndex','Buttons',
            'CLSID','CanAccelerate','CanGetFocus','CanLoseFocus','Cancel','Caption',
            'ChildAlias','ChildOrder','Class','ClassLibrary','ClipControls','ClipRect',
            'Closable','ColorScheme','ColorSource','ColumnCount','ColumnHeaders','ColumnLines',
            'ColumnOrder','ColumnWidths','Columns','Comment','ContinuousScroll','ControlBox',
            'ControlCount','ControlIndex','ControlSource','Controls','CurrentControl','CurrentX',
            'CurrentY','CursorSource','Curvature','DataSession','DataSessionId','DataSourceObj',
            'DataType','Database','DateFormat','DateMark','DefButton','DefButtonOrig',
            'DefHeight','DefLeft','DefTop','DefWidth','Default','DefaultFilePath',
            'DefineWindows','DeleteMark','Desktop','Dirty','DisabledBackColor','DisabledByEOF',
            'DisabledForeColor','DisabledItemBackColor','DisabledItemForeColor','DisabledPicture','DispPageHeight','DispPageWidth',
            'DisplayCount','DisplayValue','DoCreate','DockPosition','Docked','DocumentFile',
            'DownPicture','DragIcon','DragMode','DragState','DrawMode','DrawStyle',
            'DrawWidth','DynamicAlignment','DynamicBackColor','DynamicCurrentControl','DynamicFontBold','DynamicFontItalic',
            'DynamicFontName','DynamicFontOutline','DynamicFontShadow','DynamicFontSize','DynamicFontStrikethru','DynamicFontUnderline',
            'DynamicForeColor','EditFlags','Enabled','EnabledByReadLock','Encrypted','EnvLevel',
            'ErasePage','FileClass','FileClassLibrary','FillColor','FillStyle','Filter',
            'FirstElement','FontBold','FontItalic','FontName','FontOutline','FontShadow',
            'FontSize','FontStrikethru','FontUnderline','ForceFocus','ForeColor','FormCount',
            'FormIndex','FormPageCount','FormPageIndex','Format','Forms','FoxFont',
            'FullName','GoFirst','GoLast','GridLineColor','GridLineWidth','GridLines'
            ),
        4 => array('HPROJ','HWnd','HalfHeightCaption','HasClip','HeaderGap','HeaderHeight',
            'Height','HelpContextID','HideSelection','Highlight','HomeDir','HostName',
            'HotKey','HscrollSmallChange','IMEMode','Icon','IgnoreInsert','InResize',
            'Increment','IncrementalSearch','InitialSelectedAlias','InputMask','Instancing','IntegralHeight',
            'Interval','ItemBackColor','ItemData','ItemForeColor','ItemIDData','ItemTips',
            'JustReadLocked','KeyPreview','KeyboardHighValue','KeyboardLowValue','LastModified','Left',
            'LeftColumn','LineSlant','LinkMaster','List','ListCount','ListIndex',
            'ListItem','ListItemId','LockDataSource','LockScreen','MDIForm','MainClass',
            'MainFile','Margin','MaxButton','MaxHeight','MaxLeft','MaxLength',
            'MaxTop','MaxWidth','MemoWindow','MinButton','MinHeight','MinWidth',
            'MouseIcon','MousePointer','Movable','MoverBars','MultiSelect','Name',
            'NapTime','NewIndex','NewItemId','NoDataOnLoad','NoDefine','NotifyContainer',
            'NullDisplay','NumberOfElements','OLEDragMode','OLEDragPicture','OLEDropEffects','OLEDropHasData',
            'OLEDropMode','OLERequestPendingTimeOut','OLEServerBusyRaiseError','OLEServerBusyTimeOut','OLETypeAllowed','OleClass',
            'OleClassId','OleControlContainer','OleIDispInValue','OleIDispOutValue','OleIDispatchIncoming','OleIDispatchOutgoing',
            'OnResize','OneToMany','OpenViews','OpenWindow','PageCount','PageHeight',
            'PageOrder','PageWidth','Pages','Panel','PanelLink','Parent',
            'ParentAlias','ParentClass','Partition','PasswordChar','Picture','ProcessID',
            'ProgID','ProjectHookClass','ProjectHookLibrary','Projects','ReadColors','ReadCycle',
            'ReadFiller','ReadLock','ReadMouse','ReadOnly','ReadSave','ReadSize',
            'ReadTimeout','RecordMark','RecordSource','RecordSourceType','Rect','RelationalExpr',
            'RelativeColumn','RelativeRow','ReleaseErase','ReleaseType','ReleaseWindows','Resizable',
            'RightToLeft','RowHeight','RowSource','RowSourceType','SCCProvider','SCCStatus',
            'SDIForm','ScaleMode','ScrollBars','SelLength','SelStart','SelText',
            'SelectOnEntry','Selected','SelectedBackColor','SelectedForeColor','SelectedID','SelectedItemBackColor',
            'SelectedItemForeColor','SelfEdit','ServerClass','ServerClassLibrary','ServerHelpFile','ServerName',
            'ServerProject','ShowTips','ShowWindow','Sizable','Size','Size',
            'Size','Skip','SkipForm','Sorted','SourceType','Sparse',
            'SpecialEffect','SpinnerHighValue','SpinnerLowValue','SplitBar','StartMode','StatusBarText',
            'Stretch','StrictDateEntry','Style','SystemRefCount','TabIndex','TabStop',
            'TabStretch','TabStyle','Tabhit','Tabs','Tag','TerminateRead',
            'ThreadID','TitleBar','ToolTipText','Top','TopIndex','TopItemId',
            'TypeLibCLSID','TypeLibDesc','TypeLibName','UnlockDataSource','Value','ValueDirty',
            'VersionComments','VersionCompany','VersionCopyright','VersionDescription','VersionNumber','VersionProduct',
            'VersionTrademarks','View','ViewPortHeight','ViewPortLeft','ViewPortTop','ViewPortWidth',
            'Visible','VscrollSmallChange','WasActive','WasOpen','WhatsThisButton','WhatsThisHelp',
            'WhatsThisHelpID','Width','WindowList','WindowNTIList','WindowState','WindowType',
            'WordWrap','ZOrderSet','ActiveDoc','Checkbox','Column','ComboBox',
            'CommandButton','CommandGroup','Container','Control','Cursor','Custom',
            'DataEnvironment','EditBox','Empty','FontClass','Form','Formset',
            'General','Grid','Header','HyperLink','Image','Label',
            'ListBox','Memo','OleBaseControl','OleBoundControl','OleClassIDispOut','OleControl',
            'OptionButton','OptionGroup','Page','PageFrame','ProjectHook','RectClass',
            'Relation','Session','Shape','Spinner','TextBox' ,'Toolbar'
            ),
        ),
    'SYMBOLS' => array(
        "!", "@", "$", "%",
        "(", ")", "{", "}", "[", "]",
        "-", "+", "*", "/",
        "=", "<", ">",
        ":", ";", ",", ".", "&",
        "?", "??", "???"
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: blue;',
            2 => 'color: blue;',
            3 => 'color: blue;',
            4 => 'color: blue;'
            ),
        'COMMENTS' => array(
            1 => 'color: green; font-style: italic;',
            2 => 'color: green; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: blue;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: blue;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/scala.php0000664000175000017500000001073212014173374013767 0ustar  benbebenbe 'Scala',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(2 => "/\\'(?!\w\\'|\\\\)\w+(?=\s)/"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'",'"'),
    'ESCAPE_CHAR' => '\\',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[nfrtv\$\"\n\\\\]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{1,2}#i",
        //Hexadecimal Char Specs (unicode)
        3 => "#\\\\u[\da-fA-F]{1,4}#",
        //Hexadecimal Char Specs (Extended Unicode)
        4 => "#\\\\U[\da-fA-F]{1,8}#",
        ),
    'KEYWORDS' => array(
        1 => array(
            'abstract', 'case', 'catch', 'class', 'def',
            'do', 'else', 'extends', 'false', 'final',
            'finally', 'for', 'forSome', 'if', 'implicit',
            'import', 'match', 'new', 'null', 'object',
            'override', 'package', 'private', 'protected', 'requires',
            'return', 'sealed', 'super', 'this', 'throw',
            'trait', 'try', 'true', 'type', 'val',
            'var', 'while', 'with', 'yield'
            ),
        2 => array(
            'void', 'double', 'int', 'boolean', 'byte', 'short', 'long', 'char', 'float'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?',
        '_', ':', '=', '=>', '<<:',
        '<%', '>:', '#', '@'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff; font-weight: bold;',
            2 => 'color: #9999cc; font-weight: bold;',
            ),
        'COMMENTS' => array(
            1 => 'color: #008000; font-style: italic;',
            2 => 'color: #CC66FF;',
            'MULTI' => 'color: #00ff00; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #6666ff; font-weight: bold;',
            1 => 'color: #6666ff; font-weight: bold;',
            2 => 'color: #5555ff; font-weight: bold;',
            3 => 'color: #4444ff; font-weight: bold;',
            4 => 'color: #3333ff; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #F78811;'
            ),
        'STRINGS' => array(
            0 => 'color: #6666FF;'
            ),
        'NUMBERS' => array(
            0 => 'color: #F78811;'
            ),
        'METHODS' => array(
            1 => 'color: #000000;',
            2 => 'color: #000000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000080;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://scala-lang.org',
        2 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/teraterm.php0000664000175000017500000002247012014173374014531 0ustar  benbebenbe 'Tera Term Macro',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        /* Commands */
        1 => array(
            'Beep',
            'BplusRecv',
            'BplusSend',
            'Break',
            'Call',
            'CallMenu',
            'ChangeDir',
            'ClearScreen',
            'Clipb2Var',
            'ClosesBox',
            'CloseTT',
            'Code2Str',
            'Connect',
            'CRC32',
            'CRC32File',
            'CygConnect',
            'DelPassword',
            'Disconnect',
            'DispStr',
            'Do',
            'Else',
            'ElseIf',
            'EnableKeyb',
            'End',
            'EndIf',
            'EndUntil',
            'EndWhile',
            'Exec',
            'ExecCmnd',
            'Exit',
            'FileClose',
            'FileConcat',
            'FileCopy',
            'FileCreate',
            'FileDelete',
            'FileMarkPtr',
            'FileNameBox',
            'FileOpen',
            'FileRead',
            'FileReadln',
            'FileRename',
            'FileSearch',
            'FileSeek',
            'FileSeekBack',
            'FileStat',
            'FileStrSeek',
            'FileStrSeek2',
            'FileTruncate',
            'FileWrite',
            'FileWriteLn',
            'FindClose',
            'FindFirst',
            'FindNext',
            'FlushRecv',
            'For',
            'GetDate',
            'GetDir',
            'GetEnv',
            'GetHostname',
            'GetPassword',
            'GetTime',
            'GetTitle',
            'GetTTDir',
            'Getver',
            'GoTo',
            'If',
            'IfDefined',
            'Include',
            'InputBox',
            'Int2Str',
            'KmtFinish',
            'KmtGet',
            'KmtRecv',
            'KmtSend',
            'LoadKeymap',
            'LogClose',
            'LogOpen',
            'LogPause',
            'LogStart',
            'LogWrite',
            'Loop',
            'MakePath',
            'MessageBox',
            'MPause',
            'Next',
            'PasswordBox',
            'Pause',
            'QuickVANRecv',
            'QuickVANSend',
            'Random',
            'RecvLn',
            'RestoreSetup',
            'Return',
            'RotateLeft',
            'RotateRight',
            'ScpRecv',
            'ScpSend',
            'Send',
            'SendBreak',
            'SendBroadcast',
            'SendFile',
            'SendKCode',
            'SendLn',
            'SendLnBroadcast',
            'SendMulticast',
            'SetBaud',
            'SetDate',
            'SetDebug',
            'SetDir',
            'SetDlgPos',
            'SetDTR',
            'SetEcho',
            'SetEnv',
            'SetExitCode',
            'SetMulticastName',
            'SetRTS',
            'SetSync',
            'SetTime',
            'SetTitle',
            'Show',
            'ShowTT',
            'SPrintF',
            'SPrintF2',
            'StatusBox',
            'Str2Code',
            'Str2Int',
            'StrCompare',
            'StrConcat',
            'StrCopy',
            'StrInsert',
            'StrJoin',
            'StrLen',
            'StrMatch',
            'StrRemove',
            'StrReplace',
            'StrScan',
            'StrSpecial',
            'StrSplit',
            'StrTrim',
            'TestLink',
            'Then',
            'ToLower',
            'ToUpper',
            'UnLink',
            'Until',
            'Var2Clipb',
            'Wait',
            'Wait4All',
            'WaitEvent',
            'WaitLn',
            'WaitN',
            'WaitRecv',
            'WaitRegEx',
            'While',
            'XmodemRecv',
            'XmodemSend',
            'YesNoBox',
            'YmodemRecv',
            'YmodemSend',
            'ZmodemRecv',
            'ZmodemSend'
            ),
        /* System Variables */
        2 => array(
            'groupmatchstr1',
            'groupmatchstr2',
            'groupmatchstr3',
            'groupmatchstr4',
            'groupmatchstr5',
            'groupmatchstr6',
            'groupmatchstr7',
            'groupmatchstr8',
            'groupmatchstr9',
            'inputstr',
            'matchstr',
            'mtimeout',
            'param2',
            'param3',
            'param4',
            'param5',
            'param6',
            'param7',
            'param8',
            'param9',
            'result',
            'timeout'
            ),
        /* LogMeTT Key Words */
        3 => array(
            '$[1]',
            '$[2]',
            '$[3]',
            '$[4]',
            '$[5]',
            '$[6]',
            '$[7]',
            '$[8]',
            '$[9]',
            '$branch$',
            '$computername$',
            '$connection$',
            '$email$',
            '$logdir$',
            '$logfilename$',
            '$lttfilename$',
            '$mobile$',
            '$name$',
            '$pager$',
            '$parent$',
            '$phone$',
            '$snippet$',
            '$ttdir$',
            '$user$',
            '$windir$',
        ),
        /* Keyword Symbols */
        4 => array(
            'and',
            'not',
            'or',
            'xor'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}',
        '+', '-', '*', '/', '%',
        '!', '&', '|', '^',
        '<', '>', '=',
        '?', ':', ';',
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000080; font-weight: bold!important;',
            2 => 'color: #808000; font-weight: bold;',  // System Variables
            3 => 'color: #ff0000; font-weight: bold;',  // LogMeTT Key Words
            4 => 'color: #ff00ff; font-weight: bold;'   // Keyword Symbols
            ),
        'COMMENTS' => array(
            1 => 'color: #008000; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(),
        'BRACKETS' => array(
            0 => 'color: #ff00ff; font-weight: bold;'
        ),
        'STRINGS' => array(
            0 => 'color: #800080;'
            ),
        'NUMBERS' => array(
            0 => 'color: #008080;'
            ),
        'SCRIPT' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #ff00ff; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff; font-weight: bold;'
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        0 => array (
            GESHI_SEARCH => '(\:[_a-zA-Z][_a-zA-Z0-9]+)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/mxml.php0000664000175000017500000001007312014173446013657 0ustar  benbebenbe 'MXML',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(''),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            0 => 'color: #00bbdd;',
            1 => 'color: #ddbb00;',
            2 => 'color: #339933;',
            3 => 'color: #000000;'
            ),
        'REGEXPS' => array(
            0 => 'font-weight: bold; color: black;',
            1 => 'color: #7400FF;',
            2 => 'color: #7400FF;'
            )
        ),
    'URLS' => array(
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        // xml declaration
        0 => array(
            GESHI_SEARCH => '(<[\/?|(\?xml)]?[a-z0-9_\-:]*(\?>))',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        // opening tags
        1 => array(
            GESHI_SEARCH => '(<\/?[a-z]+:[a-z]+)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        // closing tags
        2 => array(
            GESHI_SEARCH => '(\/?>)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            ' '>'
            ),
        1 => array(
            '&' => ';'
            ),
        2 => array(
            //' ']]>'
            '' => ''
            ),
        3 => array(
            '<' => '>'
            )
    ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => false,
        1 => false,
        2 => false,
        3 => true
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/oracle11.php0000664000175000017500000003603312014173400014303 0ustar  benbebenbe 'Oracle 11 SQL',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array("'", '"', '`'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
//Put your package names here - e.g. select distinct ''''|| lower(name) || ''',' from user_source;
//        6 => array(
//            ),

//Put your table names here - e.g. select distinct ''''|| lower(table_name) || ''',' from user_tables;
//        5 => array(
//            ),

//Put your view names here - e.g. select distinct ''''|| lower(view_name) || ''',' from user_views;
//        4 => array(
//            ),

//Put your table field names here - e.g. select distinct ''''|| lower(column_name) || ''',' from user_tab_columns;
//        3 => array(
//            ),

        //Put ORACLE reserved keywords here (11i).  I like mine uppercase.
        1 => array(
            'ABS',
            'ACCESS',
            'ACOS',
            'ADD',
            'ADD_MONTHS',
            'ALL',
            'ALTER',
            'ANALYZE',
            'AND',
            'ANY',
            'APPENDCHILDXML',
            'ARRAY',
            'AS',
            'ASC',
            'ASCII',
            'ASCIISTR',
            'ASIN',
            'ASSOCIATE',
            'AT',
            'ATAN',
            'ATAN2',
            'AUDIT',
            'AUTHID',
            'AVG',
            'BEGIN',
            'BETWEEN',
            'BFILENAME',
            'BIN_TO_NUM',
            'BINARY_INTEGER',
            'BITAND',
            'BODY',
            'BOOLEAN',
            'BULK',
            'BY',
            'CALL',
            'CARDINALITY',
            'CASCADE',
            'CASE',
            'CAST',
            'CEIL',
            'CHAR',
            'CHAR_BASE',
            'CHARTOROWID',
            'CHECK',
            'CHR',
            'CLOSE',
            'CLUSTER',
            'CLUSTER_ID',
            'CLUSTER_PROBABILITY',
            'CLUSTER_SET',
            'COALESCE',
            'COLLECT',
            'COLUMN',
            'COMMENT',
            'COMMIT',
            'COMPOSE',
            'COMPRESS',
            'CONCAT',
            'CONNECT',
            'CONSTANT',
            'CONSTRAINT',
            'CONSTRAINTS',
            'CONTEXT',
            'CONTROLFILE',
            'CONVERT',
            'CORR',
            'CORR_K',
            'CORR_S',
            'COS',
            'COSH',
            'COST',
            'COUNT',
            'COVAR_POP',
            'COVAR_SAMP',
            'CREATE',
            'CUBE_TABLE',
            'CUME_DIST',
            'CURRENT',
            'CURRENT_DATE',
            'CURRENT_TIMESTAMP',
            'CURRVAL',
            'CURSOR',
            'CV',
            'DATABASE',
            'DATAOBJ_TO_PARTITION',
            'DATE',
            'DAY',
            'DBTIMEZONE',
            'DECIMAL',
            'DECLARE',
            'DECODE',
            'DECOMPOSE',
            'DEFAULT',
            'DELETE',
            'DELETEXML',
            'DENSE_RANK',
            'DEPTH',
            'DEREF',
            'DESC',
            'DIMENSION',
            'DIRECTORY',
            'DISASSOCIATE',
            'DISTINCT',
            'DO',
            'DROP',
            'DUMP',
            'ELSE',
            'ELSIF',
            'EMPTY_BLOB',
            'EMPTY_CLOB',
            'END',
            'EXCEPTION',
            'EXCLUSIVE',
            'EXEC',
            'EXECUTE',
            'EXISTS',
            'EXISTSNODE',
            'EXIT',
            'EXP',
            'EXPLAIN',
            'EXTENDS',
            'EXTRACT',
            'EXTRACTVALUE',
            'FALSE',
            'FEATURE_ID',
            'FEATURE_SET',
            'FEATURE_VALUE',
            'FETCH',
            'FILE',
            'FIRST',
            'FIRST_VALUE',
            'FLOAT',
            'FLOOR',
            'FOR',
            'FORALL',
            'FROM',
            'FROM_TZ',
            'FUNCTION',
            'GOTO',
            'GRANT',
            'GREATEST',
            'GROUP',
            'GROUP_ID',
            'GROUPING',
            'GROUPING_ID',
            'HAVING',
            'HEAP',
            'HEXTORAW',
            'HOUR',
            'IDENTIFIED',
            'IF',
            'IMMEDIATE',
            'IN',
            'INCREMENT',
            'INDEX',
            'INDEXTYPE',
            'INDICATOR',
            'INITCAP',
            'INITIAL',
            'INSERT',
            'INSERTCHILDXML',
            'INSERTXMLBEFORE',
            'INSTR',
            'INSTRB',
            'INTEGER',
            'INTERFACE',
            'INTERSECT',
            'INTERVAL',
            'INTO',
            'IS',
            'ISOLATION',
            'ITERATION_NUMBER',
            'JAVA',
            'KEY',
            'LAG',
            'LAST',
            'LAST_DAY',
            'LAST_VALUE',
            'LEAD',
            'LEAST',
            'LENGTH',
            'LENGTHB',
            'LEVEL',
            'LIBRARY',
            'LIKE',
            'LIMITED',
            'LINK',
            'LN',
            'LNNVL',
            'LOCALTIMESTAMP',
            'LOCK',
            'LOG',
            'LONG',
            'LOOP',
            'LOWER',
            'LPAD',
            'LTRIM',
            'MAKE_REF',
            'MATERIALIZED',
            'MAX',
            'MAXEXTENTS',
            'MEDIAN',
            'MIN',
            'MINUS',
            'MINUTE',
            'MLSLABEL',
            'MOD',
            'MODE',
            'MODIFY',
            'MONTH',
            'MONTHS_BETWEEN',
            'NANVL',
            'NATURAL',
            'NATURALN',
            'NCHR',
            'NEW',
            'NEW_TIME',
            'NEXT_DAY',
            'NEXTVAL',
            'NLS_CHARSET_DECL_LEN',
            'NLS_CHARSET_ID',
            'NLS_CHARSET_NAME',
            'NLS_INITCAP',
            'NLS_LOWER',
            'NLS_UPPER',
            'NLSSORT',
            'NOAUDIT',
            'NOCOMPRESS',
            'NOCOPY',
            'NOT',
            'NOWAIT',
            'NTILE',
            'NULL',
            'NULLIF',
            'NUMBER',
            'NUMBER_BASE',
            'NUMTODSINTERVAL',
            'NUMTOYMINTERVAL',
            'NVL',
            'NVL2',
            'OCIROWID',
            'OF',
            'OFFLINE',
            'ON',
            'ONLINE',
            'OPAQUE',
            'OPEN',
            'OPERATOR',
            'OPTION',
            'OR',
            'ORA_HASH',
            'ORDER',
            'ORGANIZATION',
            'OTHERS',
            'OUT',
            'OUTLINE',
            'PACKAGE',
            'PARTITION',
            'PATH',
            'PCTFREE',
            'PERCENT_RANK',
            'PERCENTILE_CONT',
            'PERCENTILE_DISC',
            'PLAN',
            'PLS_INTEGER',
            'POSITIVE',
            'POSITIVEN',
            'POWER',
            'POWERMULTISET',
            'POWERMULTISET_BY_CARDINALITY',
            'PRAGMA',
            'PREDICTION',
            'PREDICTION_BOUNDS',
            'PREDICTION_COST',
            'PREDICTION_DETAILS',
            'PREDICTION_PROBABILITY',
            'PREDICTION_SET',
            'PRESENTNNV',
            'PRESENTV',
            'PREVIOUS',
            'PRIMARY',
            'PRIOR',
            'PRIVATE',
            'PRIVILEGES',
            'PROCEDURE',
            'PROFILE',
            'PUBLIC',
            'RAISE',
            'RANGE',
            'RANK',
            'RATIO_TO_REPORT',
            'RAW',
            'RAWTOHEX',
            'RAWTONHEX',
            'REAL',
            'RECORD',
            'REF',
            'REFTOHEX',
            'REGEXP_COUNT',
            'REGEXP_INSTR',
            'REGEXP_REPLACE',
            'REGEXP_SUBSTR',
            'REGR_AVGX',
            'REGR_AVGY',
            'REGR_COUNT',
            'REGR_INTERCEPT',
            'REGR_R2',
            'REGR_SLOPE',
            'REGR_SXX',
            'REGR_SXY',
            'REGR_SYY',
            'RELEASE',
            'REMAINDER',
            'RENAME',
            'REPLACE',
            'RESOURCE',
            'RETURN',
            'RETURNING',
            'REVERSE',
            'REVOKE',
            'ROLE',
            'ROLLBACK',
            'ROUND',
            'ROW',
            'ROW_NUMBER',
            'ROWID',
            'ROWIDTOCHAR',
            'ROWIDTONCHAR',
            'ROWNUM',
            'ROWS',
            'ROWTYPE',
            'RPAD',
            'RTRIM',
            'SAVEPOINT',
            'SCHEMA',
            'SCN_TO_TIMESTAMP',
            'SECOND',
            'SEGMENT',
            'SELECT',
            'SEPERATE',
            'SEQUENCE',
            'SESSION',
            'SESSIONTIMEZONE',
            'SET',
            'SHARE',
            'SIGN',
            'SIN',
            'SINH',
            'SIZE',
            'SMALLINT',
            'SOUNDEX',
            'SPACE',
            'SQL',
            'SQLCODE',
            'SQLERRM',
            'SQRT',
            'START',
            'STATISTICS',
            'STATS_BINOMIAL_TEST',
            'STATS_CROSSTAB',
            'STATS_F_TEST',
            'STATS_KS_TEST',
            'STATS_MODE',
            'STATS_MW_TEST',
            'STATS_ONE_WAY_ANOVA',
            'STATS_T_TEST_INDEP',
            'STATS_T_TEST_INDEPU',
            'STATS_T_TEST_ONE',
            'STATS_T_TEST_PAIRED',
            'STATS_WSR_TEST',
            'STDDEV',
            'STDDEV_POP',
            'STDDEV_SAMP',
            'STOP',
            'SUBSTR',
            'SUBSTRB',
            'SUBTYPE',
            'SUCCESSFUL',
            'SUM',
            'SYNONYM',
            'SYS_CONNECT_BY_PATH',
            'SYS_CONTEXT',
            'SYS_DBURIGEN',
            'SYS_EXTRACT_UTC',
            'SYS_GUID',
            'SYS_TYPEID',
            'SYS_XMLAGG',
            'SYS_XMLGEN',
            'SYSDATE',
            'SYSTEM',
            'SYSTIMESTAMP',
            'TABLE',
            'TABLESPACE',
            'TAN',
            'TANH',
            'TEMPORARY',
            'THEN',
            'TIME',
            'TIMESTAMP',
            'TIMESTAMP_TO_SCN',
            'TIMEZONE_ABBR',
            'TIMEZONE_HOUR',
            'TIMEZONE_MINUTE',
            'TIMEZONE_REGION',
            'TIMING',
            'TO',
            'TO_BINARY_DOUBLE',
            'TO_BINARY_FLOAT',
            'TO_CHAR',
            'TO_CLOB',
            'TO_DATE',
            'TO_DSINTERVAL',
            'TO_LOB',
            'TO_MULTI_BYTE',
            'TO_NCHAR',
            'TO_NCLOB',
            'TO_NUMBER',
            'TO_SINGLE_BYTE',
            'TO_TIMESTAMP',
            'TO_TIMESTAMP_TZ',
            'TO_YMINTERVAL',
            'TRANSACTION',
            'TRANSLATE',
            'TREAT',
            'TRIGGER',
            'TRIM',
            'TRUE',
            'TRUNC',
            'TRUNCATE',
            'TYPE',
            'TZ_OFFSET',
            'UI',
            'UID',
            'UNION',
            'UNIQUE',
            'UNISTR',
            'UPDATE',
            'UPDATEXML',
            'UPPER',
            'USE',
            'USER',
            'USERENV',
            'USING',
            'VALIDATE',
            'VALUE',
            'VALUES',
            'VAR_POP',
            'VAR_SAMP',
            'VARCHAR',
            'VARCHAR2',
            'VARIANCE',
            'VIEW',
            'VSIZE',
            'WHEN',
            'WHENEVER',
            'WHERE',
            'WHILE',
            'WIDTH_BUCKET',
            'WITH',
            'WORK',
            'WRITE',
            'XMLAGG',
            'XMLCAST',
            'XMLCDATA',
            'XMLCOLATTVAL',
            'XMLCOMMENT',
            'XMLCONCAT',
            'XMLDIFF',
            'XMLELEMENT',
            'XMLEXISTS',
            'XMLFOREST',
            'XMLPARSE',
            'XMLPATCH',
            'XMLPI',
            'XMLQUERY',
            'XMLROOT',
            'XMLSEQUENCE',
            'XMLSERIALIZE',
            'XMLTABLE',
            'XMLTRANSFORM',
            'YEAR',
            'ZONE'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '=', '<', '>', '|', '+', '-', '*', '/', ','
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
//        3 => false,
//        4 => false,
//        5 => false,
//        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #993333; font-weight: bold; text-transform: uppercase;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #ff0000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            )
        ),
    'URLS' => array(
        1 => '',
//        3 => '',
//        4 => '',
//        5 => '',
//        6 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/asymptote.php0000664000175000017500000006242112014173442014727 0ustar  benbebenbe 'asymptote',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Multiline-continued single-line comments
        1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Multiline-continued preprocessor define
        2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'ESCAPE_REGEXP' => array(
        //Simple Single Char Escapes
        1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i",
        //Hexadecimal Char Specs
        2 => "#\\\\x[\da-fA-F]{2}#",
        //Hexadecimal Char Specs
        3 => "#\\\\u[\da-fA-F]{4}#",
        //Hexadecimal Char Specs
        4 => "#\\\\U[\da-fA-F]{8}#",
        //Octal Char Specs
        5 => "#\\\\[0-7]{1,3}#"
        ),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
        GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'and','controls','tension','atleast','curl','if','else','while','for','do','return','break','continue','struct','typedef','new','access','import','unravel','from','include','quote','static','public','private','restricted','this','explicit','true','false','null','cycle','newframe','operator'
            ),
        2 => array(
            'Braid','FitResult','Label','Legend','Segment','Solution','TreeNode','abscissa','arc','arrowhead','binarytree','binarytreeNode','block','bool','bool3','bounds','bqe','circle','conic','coord','coordsys','cputime','ellipse','file','filltype','frame','grid3','guide','horner','hsv','hyperbola','indexedTransform','int','inversion','key','light','line','linefit','marginT','marker','mass','object','pair','parabola','path','path3','pen','picture','point','position','projection','real','revolution','scaleT','scientific','segment','side','slice','solution','splitface','string','surface','tensionSpecifier','ticklocate','ticksgridT','tickvalues','transform','transformation','tree','triangle','trilinear','triple','vector','vertex','void'),
        3 => array(
            'AND','Arc','ArcArrow','ArcArrows','Arrow','Arrows','Automatic','AvantGarde','BBox','BWRainbow','BWRainbow2','Bar','Bars','BeginArcArrow','BeginArrow','BeginBar','BeginDotMargin','BeginMargin','BeginPenMargin','Blank','Bookman','Bottom','BottomTop','Bounds','Break','Broken','BrokenLog','CLZ','CTZ','Ceil','Circle','CircleBarIntervalMarker','Cos','Courier','CrossIntervalMarker','DOSendl','DOSnewl','DefaultFormat','DefaultLogFormat','Degrees','Dir','DotMargin','DotMargins','Dotted','Draw','Drawline','Embed','EndArcArrow','EndArrow','EndBar','EndDotMargin','EndMargin','EndPenMargin','Fill','FillDraw','Floor','Format','Full','Gaussian','Gaussrand','Gaussrandpair',
            'Gradient','Grayscale','Helvetica','Hermite','HookHead','InOutTicks','InTicks','Jn','Label','Landscape','Left','LeftRight','LeftTicks','Legend','Linear','Link','Log','LogFormat','Margin','Margins','Mark','MidArcArrow','MidArrow','NOT','NewCenturySchoolBook','NoBox','NoMargin','NoModifier','NoTicks','NoTicks3','NoZero','NoZeroFormat','None','OR','OmitFormat','OmitTick','OmitTickInterval','OmitTickIntervals','OutTicks','Ox','Oy','Palatino','PaletteTicks','Pen','PenMargin','PenMargins','Pentype','Portrait','RadialShade','RadialShadeDraw','Rainbow','Range','Relative','Right','RightTicks','Rotate','Round','SQR','Scale','ScaleX','ScaleY','ScaleZ','Seascape','Segment','Shift','Sin','Slant','Spline','StickIntervalMarker','Straight','Symbol','Tan','TeXify','Ticks','Ticks3','TildeIntervalMarker','TimesRoman','Top','TrueMargin','UnFill','UpsideDown','Wheel','X','XEquals','XOR','XY','XYEquals','XYZero','XYgrid','XZEquals','XZZero','XZero','XZgrid','Y','YEquals','YXgrid','YZ','YZEquals','YZZero','YZero','YZgrid','Yn','Z','ZX','ZXgrid','ZYgrid','ZapfChancery','ZapfDingbats','_begingroup3','_cputime','_draw','_eval','_image','_labelpath','_projection','_strokepath','_texpath','aCos','aSin','aTan','abort','abs','accel','acos','acosh','acot','acsc','activatequote','add',
            'addArrow','addMargins','addSaveFunction','addpenarc','addpenline','adjust','alias','align','all','altitude','angabscissa','angle','angpoint','animate','annotate','anticomplementary','antipedal','apply','approximate','arc','arcarrowsize','arccircle','arcdir','arcfromcenter','arcfromfocus','arclength','arcnodesnumber','arcpoint','arcsubtended','arcsubtendedcenter','arctime','arctopath','array','arrow','arrow2','arrowbase','arrowbasepoints','arrowsize','asec','asin','asinh','ask','assert','asy','asycode','asydir','asyfigure','asyfilecode','asyinclude','asywrite','atan','atan2','atanh','atbreakpoint','atexit','attach','attract','atupdate','autoformat','autoscale','autoscale3','axes','axes3','axialshade','axis','axiscoverage','azimuth','babel','background','bangles','bar','barmarksize','barsize','basealign','baseline','bbox','beep','begin','beginclip','begingroup','beginpoint','between','bevel','bezier','bezierP','bezierPP','bezierPPP','bezulate','bibliography','bibliographystyle','binarytree','binarytreeNode','binomial','binput','bins','bisector','bisectorpoint','bispline','blend','blockconnector','boutput','box','bqe','breakpoint','breakpoints','brick','buildRestoreDefaults','buildRestoreThunk','buildcycle','bulletcolor','byte','calculateScaling','canonical','canonicalcartesiansystem','cartesiansystem','case1','case2','case3','case4','cbrt','cd','ceil','center','centerToFocus',
            'centroid','cevian','change2','changecoordsys','checkSegment','checkconditionlength','checker','checkincreasing','checklengths','checkposition','checktriangle','choose','circle','circlebarframe','circlemarkradius','circlenodesnumber','circumcenter','circumcircle','clamped','clear','clip','clipdraw','close','cmyk','code','colatitude','collect','collinear','color','colorless','colors','colorspace','comma','compassmark','complement','complementary','concat','concurrent','cone','conic','conicnodesnumber','conictype','conj','connect','connected','connectedindex','containmentTree','contains','contour','contour3','contouredges','controlSpecifier','convert','coordinates','coordsys','copy','copyPairOrTriple','cos','cosh','cot','countIntersections','cputime','crop','cropcode','cross',
            'crossframe','crosshatch','crossmarksize','csc','cubicroots','curabscissa','curlSpecifier','curpoint','currentarrow','currentexitfunction','currentmomarrow','currentpolarconicroutine','curve','cut','cutafter','cutbefore','cyclic','cylinder','deactivatequote','debugger','deconstruct','defaultdir','defaultformat','defaultpen','defined','degenerate','degrees','delete','deletepreamble','determinant','diagonal','diamond','diffdiv','dir','dirSpecifier','dirtime','display','distance',
            'divisors','do_overpaint','dot','dotframe','dotsize','downcase','draw','drawAll','drawDoubleLine','drawFermion','drawGhost','drawGluon','drawMomArrow','drawPRCcylinder','drawPRCdisk','drawPRCsphere','drawPRCtube','drawPhoton','drawScalar','drawVertex','drawVertexBox','drawVertexBoxO','drawVertexBoxX','drawVertexO','drawVertexOX','drawVertexTriangle','drawVertexTriangleO','drawVertexX','drawarrow','drawarrow2','drawline','drawpixel','drawtick','duplicate','elle','ellipse','ellipsenodesnumber','embed','embed3','empty','enclose','end','endScript','endclip','endgroup','endgroup3','endl','endpoint','endpoints','eof','eol','equation','equations','erase','erasestep','erf','erfc','error','errorbar','errorbars','eval','excenter','excircle','exit','exitXasyMode','exitfunction','exp','expfactors','expi','expm1','exradius','extend','extension','extouch','fabs','factorial','fermat','fft','fhorner','figure','file','filecode','fill','filldraw','filloutside','fillrule','filltype','find','finite','finiteDifferenceJacobian','firstcut','firstframe','fit','fit2','fixedscaling','floor','flush','fmdefaults','fmod','focusToCenter','font','fontcommand','fontsize','foot','format','frac','frequency','fromCenter','fromFocus','fspline','functionshade','gamma','generate_random_backtrace','generateticks','gergonne','getc','getint','getpair','getreal','getstring','gettriple','gluon','gouraudshade','graph','graphic','gray','grestore','grid','grid3','gsave','halfbox','hatch','hdiffdiv','hermite','hex','histogram','history','hline','hprojection',
            'hsv','hyperbola','hyperbolanodesnumber','hyperlink','hypot','identity','image','incenter','incentral','incircle','increasing','incrementposition','indexedTransform','indexedfigure','initXasyMode','initdefaults','input','inradius','insert','inside','integrate','interactive','interior','interp','interpolate','intersect','intersection','intersectionpoint','intersectionpoints','intersections','intouch','inverse','inversion','invisible','is3D','isCCW','isDuplicate','isogonal','isogonalconjugate','isotomic','isotomicconjugate','isparabola','italic','item','jobname','key','kurtosis','kurtosisexcess','label','labelaxis','labelmargin','labelpath','labels','labeltick','labelx','labelx3','labely','labely3','labelz','labelz3','lastcut','latex','latitude','latticeshade','layer','layout','ldexp','leastsquares','legend','legenditem','length','lexorder','lift','light','limits','line','linear','linecap','lineinversion','linejoin','linemargin','lineskip','linetype','linewidth','link','list','lm_enorm','lm_evaluate_default','lm_lmdif','lm_lmpar','lm_minimize','lm_print_default','lm_print_quiet','lm_qrfac','lm_qrsolv','locale','locate',
            'locatefile','location','log','log10','log1p','logaxiscoverage','longitude','lookup','makeNode','makedraw','makepen','map','margin','markangle','markangleradius','markanglespace','markarc','marker','markinterval','marknodes','markrightangle','markuniform','mass','masscenter','massformat','math','max','max3','maxAfterTransform','maxbezier','maxbound','maxcoords','maxlength','maxratio','maxtimes','mean','medial','median','midpoint','min','min3','minAfterTransform','minbezier','minbound','minipage','minratio','mintimes','miterlimit','mktemp','momArrowPath','momarrowsize','monotonic','multifigure','nativeformat','natural','needshipout','newl','newpage','newslide','newton','newtree','nextframe','nextnormal','nextpage','nib','nodabscissa','none','norm','normalvideo','notaknot','nowarn','numberpage','nurb','object','offset','onpath','opacity','opposite','orientation','origin','orthic','orthocentercenter','outformat','outline','outname','outprefix','output','overloadedMessage','overwrite','pack','pad','pairs','palette','parabola','parabolanodesnumber','parallel','parallelogram','partialsum','path','path3','pattern','pause','pdf','pedal','periodic','perp','perpendicular','perpendicularmark','phantom','phi1','phi2','phi3','photon','piecewisestraight','point','polar','polarconicroutine','polargraph','polygon','postcontrol','postscript','pow10','ppoint','prc','prc0','precision','precontrol','prepend','printBytecode','print_random_addresses','project','projection','purge','pwhermite','quadrant','quadraticroots','quantize','quarticroots','quotient','radialshade','radians','radicalcenter','radicalline','radius','rand','randompath','rd','readline','realmult','realquarticroots','rectangle','rectangular','rectify','reflect','relabscissa','relative','relativedistance','reldir','relpoint','reltime','remainder','remark','removeDuplicates','rename','replace','report','resetdefaultpen','restore','restoredefaults','reverse','reversevideo','rf','rfind','rgb','rgba','rgbint','rms',
            'rotate','rotateO','rotation','round','roundbox','roundedpath','roundrectangle','same','samecoordsys','sameside','sample','save','savedefaults','saveline','scale','scale3','scaleO','scaleT','scaleless','scientific','search','searchindex','searchtree','sec','secondaryX','secondaryY','seconds','section','sector','seek','seekeof','segment','sequence','setcontour','setpens','sgn','sgnd','sharpangle','sharpdegrees','shift','shiftless','shipout','shipout3','show','side','simeq','simpson','sin','sinh','size','size3','skewness','skip','slant','sleep','slope','slopefield','solve','solveBVP','sort','sourceline','sphere','split','sqrt','square','srand','standardizecoordsys','startScript','stdev','step','stickframe','stickmarksize','stickmarkspace','stop','straight','straightness','string','stripdirectory','stripextension','stripfile','stripsuffix','strokepath','subdivide','subitem','subpath','substr','sum','surface','symmedial','symmedian','system',
            'tab','tableau','tan','tangent','tangential','tangents','tanh','tell','tensionSpecifier','tensorshade','tex','texcolor','texify','texpath','texpreamble','texreset','texshipout','texsize','textpath','thick','thin','tick','tickMax','tickMax3','tickMin','tickMin3','ticklabelshift','ticklocate','tildeframe','tildemarksize','tile','tiling','time','times','title','titlepage','topbox','transform','transformation','transpose','trembleFuzz','triangle','triangleAbc','triangleabc','triangulate','tricoef','tridiagonal','trilinear','trim','truepoint','tube','uncycle','unfill','uniform','unique','unit','unitrand','unitsize','unityroot','unstraighten','upcase','updatefunction','uperiodic','upscale','uptodate','usepackage','usersetting','usetypescript','usleep','value','variance','variancebiased','vbox','vector','vectorfield','verbatim','view','vline','vperiodic','vprojection','warn','warning','windingnumber','write','xaxis','xaxis3','xaxis3At','xaxisAt','xequals','xinput','xlimits','xoutput','xpart','xscale','xscaleO','xtick','xtick3','xtrans','yaxis','yaxis3','yaxis3At','yaxisAt','yequals','ylimits','ypart','yscale','yscaleO','ytick','ytick3','ytrans','zaxis3','zaxis3At','zero','zero3','zlimits','zpart','ztick','ztick3','ztrans'
            ),
        4 => array(
            'AliceBlue','Align','Allow','AntiqueWhite','Apricot','Aqua','Aquamarine','Aspect','Azure','BeginPoint','Beige','Bisque','Bittersweet','Black','BlanchedAlmond','Blue','BlueGreen','BlueViolet','Both','Break','BrickRed','Brown','BurlyWood','BurntOrange','CCW','CW','CadetBlue','CarnationPink','Center','Centered','Cerulean','Chartreuse','Chocolate','Coeff','Coral','CornflowerBlue','Cornsilk','Crimson','Crop','Cyan','Dandelion','DarkBlue','DarkCyan','DarkGoldenrod','DarkGray','DarkGreen','DarkKhaki','DarkMagenta','DarkOliveGreen','DarkOrange','DarkOrchid','DarkRed','DarkSalmon','DarkSeaGreen','DarkSlateBlue','DarkSlateGray','DarkTurquoise','DarkViolet','DeepPink','DeepSkyBlue','DefaultHead','DimGray','DodgerBlue','Dotted','Down','Draw','E','ENE','EPS','ESE','E_Euler','E_PC','E_RK2','E_RK3BS','Emerald','EndPoint','Euler','Fill','FillDraw','FireBrick','FloralWhite','ForestGreen','Fuchsia','Gainsboro','GhostWhite','Gold','Goldenrod','Gray','Green','GreenYellow','Honeydew','HookHead','Horizontal','HotPink','I','IgnoreAspect','IndianRed','Indigo','Ivory','JOIN_IN','JOIN_OUT','JungleGreen','Khaki','LM_DWARF','LM_MACHEP','LM_SQRT_DWARF','LM_SQRT_GIANT','LM_USERTOL','Label','Lavender','LavenderBlush','LawnGreen','Left','LeftJustified','LeftSide','LemonChiffon','LightBlue','LightCoral','LightCyan','LightGoldenrodYellow',
            'LightGreen','LightGrey','LightPink','LightSalmon','LightSeaGreen','LightSkyBlue','LightSlateGray','LightSteelBlue','LightYellow','Lime','LimeGreen','Linear','Linen','Log','Logarithmic','Magenta','Mahogany','Mark','MarkFill','Maroon','Max','MediumAquamarine','MediumBlue','MediumOrchid','MediumPurple','MediumSeaGreen','MediumSlateBlue','MediumSpringGreen','MediumTurquoise','MediumVioletRed','Melon','MidPoint','MidnightBlue','Min','MintCream','MistyRose','Moccasin','Move','MoveQuiet','Mulberry','N','NE','NNE','NNW','NW','NavajoWhite','Navy','NavyBlue','NoAlign','NoCrop','NoFill','NoSide','OldLace','Olive','OliveDrab','OliveGreen','Orange','OrangeRed','Orchid','Ox','Oy','PC','PaleGoldenrod','PaleGreen','PaleTurquoise','PaleVioletRed','PapayaWhip','Peach','PeachPuff','Periwinkle','Peru','PineGreen','Pink','Plum','PowderBlue','ProcessBlue','Purple','RK2','RK3','RK3BS','RK4','RK5','RK5DP','RK5F','RawSienna','Red','RedOrange','RedViolet','Rhodamine','Right','RightJustified','RightSide','RosyBrown','RoyalBlue','RoyalPurple','RubineRed','S','SE','SSE','SSW','SW','SaddleBrown','Salmon','SandyBrown','SeaGreen','Seashell','Sepia','Sienna','Silver','SimpleHead','SkyBlue','SlateBlue','SlateGray','Snow','SpringGreen','SteelBlue','Suppress','SuppressQuiet','Tan','TeXHead','Teal','TealBlue','Thistle','Ticksize','Tomato',
            'Turquoise','UnFill','Up','VERSION','Value','Vertical','Violet','VioletRed','W','WNW','WSW','Wheat','White','WhiteSmoke','WildStrawberry','XYAlign','YAlign','Yellow','YellowGreen','YellowOrange','addpenarc','addpenline','align','allowstepping','angularsystem','animationdelay','appendsuffix','arcarrowangle','arcarrowfactor','arrow2sizelimit','arrowangle','arrowbarb','arrowdir','arrowfactor','arrowhookfactor','arrowlength','arrowsizelimit','arrowtexfactor','authorpen','axis','axiscoverage','axislabelfactor','background','backgroundcolor','backgroundpen','barfactor','barmarksizefactor','basealign','baselinetemplate','beveljoin','bigvertexpen','bigvertexsize','black','blue','bm','bottom','bp','brown','bullet','byfoci','byvertices','camerafactor','chartreuse','circlemarkradiusfactor','circlenodesnumberfactor','circleprecision','circlescale','cm','codefile','codepen','codeskip','colorPen','coloredNodes','coloredSegments',
            'conditionlength','conicnodesfactor','count','cputimeformat','crossmarksizefactor','currentcoordsys','currentlight','currentpatterns','currentpen','currentpicture','currentposition','currentprojection','curvilinearsystem','cuttings','cyan','darkblue','darkbrown','darkcyan','darkgray','darkgreen','darkgrey','darkmagenta','darkolive','darkred','dashdotted','dashed','datepen','dateskip','debuggerlines','debugging','deepblue','deepcyan','deepgray','deepgreen','deepgrey','deepmagenta','deepred','default','defaultControl','defaultS','defaultbackpen','defaultcoordsys','defaultexcursion','defaultfilename','defaultformat','defaultmassformat','defaultpen','diagnostics','differentlengths','dot','dotfactor','dotframe','dotted','doublelinepen','doublelinespacing','down','duplicateFuzz','edge','ellipsenodesnumberfactor','eps','epsgeo','epsilon','evenodd','expansionfactor','extendcap','exterior','fermionpen','figureborder','figuremattpen','file3','firstnode','firststep','foregroundcolor','fuchsia','fuzz','gapfactor','ghostpen','gluonamplitude','gluonpen','gluonratio','gray','green','grey','hatchepsilon','havepagenumber','heavyblue','heavycyan','heavygray','heavygreen','heavygrey','heavymagenta','heavyred','hline','hwratio','hyperbola','hyperbolanodesnumberfactor','identity4','ignore','inXasyMode','inch','inches','includegraphicscommand','inf','infinity','institutionpen','intMax','intMin','interior','invert','invisible','itempen','itemskip','itemstep','labelmargin','landscape','lastnode','left','legendhskip','legendlinelength',
            'legendmargin','legendmarkersize','legendmaxrelativewidth','legendvskip','lightblue','lightcyan','lightgray','lightgreen','lightgrey','lightmagenta','lightolive','lightred','lightyellow','line','linemargin','lm_infmsg','lm_shortmsg','longdashdotted','longdashed','magenta','magneticRadius','mantissaBits','markangleradius','markangleradiusfactor','markanglespace','markanglespacefactor','mediumblue','mediumcyan','mediumgray','mediumgreen','mediumgrey','mediummagenta','mediumred','mediumyellow','middle','minDistDefault','minblockheight','minblockwidth','mincirclediameter','minipagemargin','minipagewidth','minvertexangle','miterjoin','mm','momarrowfactor','momarrowlength','momarrowmargin','momarrowoffset','momarrowpen','monoPen','morepoints','nCircle','newbulletcolor','ngraph','nil','nmesh','nobasealign','nodeMarginDefault','nodesystem','nomarker','nopoint','noprimary','nullpath','nullpen','numarray','ocgindex','oldbulletcolor','olive','orange','origin','overpaint','page','pageheight','pagemargin','pagenumberalign','pagenumberpen','pagenumberposition','pagewidth','paleblue','palecyan','palegray','palegreen','palegrey',
            'palemagenta','palered','paleyellow','parabolanodesnumberfactor','perpfactor','phi','photonamplitude','photonpen','photonratio','pi','pink','plain','plain_bounds','plain_scaling','plus','preamblenodes','pt','purple','r3','r4a','r4b','randMax','realDigits','realEpsilon','realMax','realMin','red','relativesystem','reverse','right','roundcap','roundjoin','royalblue','salmon','saveFunctions','scalarpen','sequencereal','settings','shipped','signedtrailingzero','solid','springgreen','sqrtEpsilon','squarecap','squarepen','startposition','stdin','stdout','stepfactor','stepfraction','steppagenumberpen','stepping','stickframe','stickmarksizefactor','stickmarkspacefactor','swap','textpen','ticksize','tildeframe','tildemarksizefactor','tinv','titlealign','titlepagepen','titlepageposition','titlepen','titleskip','top','trailingzero','treeLevelStep','treeMinNodeWidth','treeNodeStep','trembleAngle','trembleFrequency','trembleRandom','undefined','unitcircle','unitsquare','up','urlpen','urlskip','version','vertexpen','vertexsize','viewportmargin','viewportsize','vline','white','wye','xformStack','yellow','ylabelwidth','zerotickfuzz','zerowinding'
            )
        ),
    'SYMBOLS' => array(
        0 => array(
            '(', ')', '{', '}', '[', ']'
            ),
        1 => array('<', '>','='),
        2 => array('+', '-', '*', '/', '%'),
        3 => array('!', '^', '&', '|'),
        4 => array('?', ':', ';'),
        5 => array('..')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #990000;',
            4 => 'color: #009900; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666;',
            2 => 'color: #339900;',
            'MULTI' => 'color: #ff0000; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            1 => 'color: #000099; font-weight: bold;',
            2 => 'color: #660099; font-weight: bold;',
            3 => 'color: #660099; font-weight: bold;',
            4 => 'color: #660099; font-weight: bold;',
            5 => 'color: #006699; font-weight: bold;',
            'HARD' => '',
            ),
        'BRACKETS' => array(
            0 => 'color: #008000;'
            ),
        'STRINGS' => array(
            0 => 'color: #FF0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000dd;',
            GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
            GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
            ),
        'METHODS' => array(
            1 => 'color: #007788;',
            2 => 'color: #007788;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;',
            1 => 'color: #000080;',
            2 => 'color: #000040;',
            3 => 'color: #000040;',
            4 => 'color: #008080;',
            5 => 'color: #009080;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.',
        2 => '::'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(? "(?![a-zA-Z0-9_\|%\\-])"
            )
        )
);

?>
geshi/geshi/blitzbasic.php0000664000175000017500000002650112014173452015030 0ustar  benbebenbe 'BlitzBasic',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'If','EndIf','ElseIf','Else','While','Wend','Return','Next','Include','End Type','End Select','End If','End Function','End','Select',
            'Type','Forever','For','Or','And','AppTitle','Case','Goto','Gosub','Step','Stop','Int','Last','False','Then','To','True','Until','Float',
            'String','Before','Not'
            ),
        2 => array(
            // All Functions - 2D BB and 3D BB
            'Xor','WriteString','WriteShort','WritePixelFast','WritePixel','WriteLine','WriteInt','WriteFloat','WriteFile','WriteBytes',
            'WriteByte','Write','WaitTimer','WaitMouse','WaitKey','WaitJoy','VWait','Viewport',
            'Upper','UpdateGamma','UnlockBuffer','UDPTimeouts','UDPStreamPort','UDPStreamIP','UDPMsgPort','UDPMsgIP',
            'Trim','TotalVidMem','TileImage','TileBlock','TFormImage','TFormFilter','Text',
            'TCPTimeouts','TCPStreamPort','TCPStreamIP','Tan','SystemProperty','StringWidth','StringHeight','Str','StopNetGame',
            'StopChannel','StartNetGame','Sqr','SoundVolume','SoundPitch','SoundPan','Sin','Shr',
            'ShowPointer','Shl','Sgn','SetGfxDriver','SetGamma','SetFont','SetEnv','SetBuffer','SendUDPMsg','SendNetMsg',
            'SeekFile','SeedRnd','ScanLine','ScaleImage','SaveImage','SaveBuffer','Sar','RuntimeError','RSet',
            'RotateImage','RndSeed','Rnd','Right','ResumeChannel','Restore','ResizeImage','ResizeBank','Replace',
            'Repeat','RecvUDPMsg','RecvNetMsg','RectsOverlap','Rect','ReadString','ReadShort','ReadPixelFast','ReadPixel','ReadLine',
            'ReadInt','ReadFloat','ReadFile','ReadDir','ReadBytes','ReadByte','ReadAvail','Read','Rand','Print',
            'PokeShort','PokeInt','PokeFloat','PokeByte','Plot','PlaySound','PlayMusic','PlayCDTrack','Pi','PeekShort',
            'PeekInt','PeekFloat','PeekByte','PauseChannel','Oval','Origin','OpenTCPStream','OpenMovie','OpenFile',
            'Null','NextFile','New','NetPlayerName','NetPlayerLocal','NetMsgType','NetMsgTo','NetMsgFrom',
            'NetMsgData','MovieWidth','MoviePlaying','MovieHeight','MoveMouse','MouseZSpeed','MouseZ','MouseYSpeed','MouseY','MouseXSpeed',
            'MouseX','MouseHit','MouseDown','Mod','Millisecs','MidHandle','Mid','MaskImage','LSet','Lower',
            'LoopSound','Log10','Log','LockBuffer','Locate','Local','LoadSound','LoadImage','LoadFont','LoadBuffer',
            'LoadAnimImage','Line','Len','Left','KeyHit','KeyDown','JoyZDir','JoyZ','JoyYDir',
            'JoyYaw','JoyY','JoyXDir','JoyX','JoyVDir','JoyV','JoyUDir','JoyU','JoyType','JoyRoll',
            'JoyPitch','JoyHit','JoyHat','JoyDown','JoinNetGame','Instr','Insert','Input',
            'ImageYHandle','ImageXHandle','ImageWidth','ImagesOverlap','ImagesCollide','ImageRectOverlap','ImageRectCollide','ImageHeight','ImageBuffer',
            'HostNetGame','HostIP','HidePointer','Hex','HandleImage','GraphicsWidth','GraphicsHeight','GraphicsDepth','GraphicsBuffer','Graphics',
            'GrabImage','Global','GFXModeWidth','GFXModeHeight','GfxModeExists','GFXModeDepth','GfxDriverName','GetMouse',
            'GetKey','GetJoy','GetEnv','GetColor','GammaRed','GammaGreen','GammaBlue','Function','FrontBuffer','FreeTimer',
            'FreeSound','FreeImage','FreeFont','FreeBank','FontWidth','FontHeight','FlushMouse','FlushKeys',
            'FlushJoy','Floor','Flip','First','FileType','FileSize','FilePos','Field',
            'Exp','Exit','ExecFile','Eof','EndGraphics','Each','DrawMovie','DrawImageRect','DrawImage','DrawBlockRect','DrawBlock',
            'DottedIP','Dim','DeleteNetPlayer','DeleteFile','DeleteDir','Delete','Delay','Default','DebugLog','Data',
            'CurrentTime','CurrentDir','CurrentDate','CreateUDPStream','CreateTimer','CreateTCPServer','CreateNetPlayer','CreateImage','CreateDir','CreateBank',
            'CountHostIPs','CountGFXModes','CountGfxDrivers','Cos','CopyStream','CopyRect','CopyPixelFast','CopyPixel','CopyImage','CopyFile',
            'CopyBank','Const','CommandLine','ColorRed','ColorGreen','ColorBlue','Color','ClsColor','Cls','CloseUDPStream',
            'CloseTCPStream','CloseTCPServer','CloseMovie','CloseFile','CloseDir','Chr','ChannelVolume','ChannelPlaying','ChannelPitch','ChannelPan',
            'ChangeDir','Ceil','CallDLL','Bin','BankSize','BackBuffer','AvailVidMem','AutoMidHandle',
            'ATan2','ATan','ASin','Asc','After','ACos','AcceptTCPStream','Abs',
            // 3D Commands
            'Wireframe','Windowed3D','WBuffer','VertexZ','VertexY',
            'VertexX','VertexW','VertexV','VertexU','VertexTexCoords','VertexRed','VertexNZ','VertexNY','VertexNX','VertexNormal',
            'VertexGreen','VertexCoords','VertexColor','VertexBlue','VertexAlpha','VectorYaw','VectorPitch','UpdateWorld','UpdateNormals','TurnEntity',
            'TrisRendered','TriangleVertex','TranslateEntity','TFormVector','TFormPoint','TFormNormal','TFormedZ','TFormedY','TFormedX','TextureWidth',
            'TextureName','TextureHeight','TextureFilter','TextureCoords','TextureBuffer','TextureBlend','TerrainZ','TerrainY','TerrainX','TerrainSize',
            'TerrainShading','TerrainHeight','TerrainDetail','SpriteViewMode','ShowEntity','SetCubeFace','SetAnimTime','SetAnimKey','ScaleTexture','ScaleSprite',
            'ScaleMesh','ScaleEntity','RotateTexture','RotateSprite','RotateMesh','RotateEntity','ResetEntity','RenderWorld','ProjectedZ','ProjectedY',
            'ProjectedX','PositionTexture','PositionMesh','PositionEntity','PointEntity','PickedZ','PickedY','PickedX','PickedTriangle','PickedTime',
            'PickedSurface','PickedNZ','PickedNY','PickedNX','PickedEntity','PaintSurface','PaintMesh','PaintEntity','NameEntity','MoveEntity',
            'ModifyTerrain','MeshWidth','MeshHeight','MeshesIntersect','MeshDepth','MD2AnimTime','MD2AnimLength','MD2Animating','LoadTexture','LoadTerrain',
            'LoadSprite','LoadMesh','LoadMD2','LoaderMatrix','LoadBSP','LoadBrush','LoadAnimTexture','LoadAnimSeq','LoadAnimMesh','Load3DSound',
            'LinePick','LightRange','LightMesh','LightConeAngles','LightColor','HWMultiTex','HideEntity','HandleSprite','Graphics3D','GfxMode3DExists',
            'GfxMode3D','GfxDriverCaps3D','GfxDriver3D','GetSurfaceBrush','GetSurface','GetParent','GetMatElement','GetEntityType','GetEntityBrush','GetChild',
            'GetBrushTexture','FreeTexture','FreeEntity','FreeBrush','FlipMesh','FitMesh','FindSurface','FindChild','ExtractAnimSeq','EntityZ',
            'EntityYaw','EntityY','EntityX','EntityVisible','EntityType','EntityTexture','EntityShininess','EntityRoll','EntityRadius','EntityPitch',
            'EntityPickMode','EntityPick','EntityParent','EntityOrder','EntityName','EntityInView','EntityFX','EntityDistance','EntityColor','EntityCollided',
            'EntityBox','EntityBlend','EntityAutoFade','EntityAlpha','EmitSound','Dither','DeltaYaw','DeltaPitch','CreateTexture','CreateTerrain',
            'CreateSurface','CreateSprite','CreateSphere','CreatePlane','CreatePivot','CreateMirror','CreateMesh','CreateListener','CreateLight','CreateCylinder',
            'CreateCube','CreateCone','CreateCamera','CreateBrush','CountVertices','CountTriangles','CountSurfaces','CountGfxModes3D','CountCollisions','CountChildren',
            'CopyMesh','CopyEntity','CollisionZ','CollisionY','CollisionX','CollisionTriangle','CollisionTime','CollisionSurface','Collisions','CollisionNZ',
            'CollisionNY','CollisionNX','CollisionEntity','ClearWorld','ClearTextureFilters','ClearSurface','ClearCollisions','CaptureWorld','CameraZoom','CameraViewport',
            'CameraRange','CameraProjMode','CameraProject','CameraPick','CameraFogRange','CameraFogMode','CameraFogColor','CameraClsMode','CameraClsColor','BSPLighting',
            'BSPAmbientLight','BrushTexture','BrushShininess','BrushFX','BrushColor','BrushBlend','BrushAlpha','AntiAlias','AnimTime','AnimSeq',
            'AnimLength','Animating','AnimateMD2','Animate','AmbientLight','AlignToVector','AddVertex','AddTriangle','AddMesh','AddAnimSeq',
            )
        ),
    'SYMBOLS' => array(
        '(',')'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000066; font-weight: bold;',
            2 => 'color: #0000ff;'
            ),
        'COMMENTS' => array(
            1 => 'color: #D9D100; font-style: italic;',
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000066;'
            ),
        'STRINGS' => array(
            0 => 'color: #009900;'
            ),
        'NUMBERS' => array(
            0 => 'color: #CC0000;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            )
        ),
    'URLS' => array(
        1 => '',
        2 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => '\\'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => false,
        1 => false
        )
);

?>
geshi/geshi/erlang.php0000664000175000017500000005107612014173404014154 0ustar  benbebenbe'
 *
 *************************************************************************************
 *
 *     This file is part of GeSHi.
 *
 *   GeSHi is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 *   GeSHi is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with GeSHi; if not, write to the Free Software
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 ************************************************************************************/

$language_data = array(
    'LANG_NAME' => 'Erlang',
    'COMMENT_SINGLE' => array(1 => '%'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("'", "\\"),
    'HARDCHAR' => "\\",
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        //Control flow keywrods
        1 => array(
            'after', 'andalso', 'begin', 'case', 'catch', 'end', 'fun', 'if',
            'of', 'orelse', 'receive', 'try', 'when', 'query'
            ),
        //Binary operators
        2 => array(
            'and', 'band', 'bnot', 'bor', 'bsl', 'bsr', 'bxor', 'div', 'not',
            'or', 'rem', 'xor'
            ),
        3 => array(
            'abs', 'alive', 'apply', 'atom_to_list', 'binary_to_list',
            'binary_to_term', 'concat_binary', 'date', 'disconnect_node',
            'element', 'erase', 'exit', 'float', 'float_to_list', 'get',
            'get_keys', 'group_leader', 'halt', 'hd', 'integer_to_list',
            'is_alive', 'length', 'link', 'list_to_atom', 'list_to_binary',
            'list_to_float', 'list_to_integer', 'list_to_pid', 'list_to_tuple',
            'load_module', 'make_ref', 'monitor_node', 'node', 'nodes', 'now',
            'open_port', 'pid_to_list', 'process_flag', 'process_info',
            'process', 'put', 'register', 'registered', 'round', 'self',
            'setelement', 'size', 'spawn', 'spawn_link', 'split_binary',
            'statistics', 'term_to_binary', 'throw', 'time', 'tl', 'trunc',
            'tuple_to_list', 'unlink', 'unregister', 'whereis'
            ),
        // Built-In Functions
        4 => array(
            'atom', 'binary', 'constant', 'function', 'integer', 'is_atom',
            'is_binary', 'is_constant', 'is_function', 'is_integer', 'is_list',
            'is_number', 'is_pid', 'is_reference', 'is_record', 'list',
            'number', 'pid', 'ports', 'port_close', 'port_info', 'reference'
            ),
        // Erlang/OTP internal modules (scary one)
        5 => array(
            'alarm_handler', 'any', 'app', 'application', 'appmon', 'appup',
            'array', 'asn1ct', 'asn1rt', 'auth', 'base64', 'beam_lib', 'c',
            'calendar', 'code', 'common_test_app', 'compile', 'config',
            'corba', 'corba_object', 'cosEventApp', 'CosEventChannelAdmin',
            'CosEventChannelAdmin_ConsumerAdmin',
            'CosEventChannelAdmin_EventChannel',
            'CosEventChannelAdmin_ProxyPullConsumer',
            'CosEventChannelAdmin_ProxyPullSupplier',
            'CosEventChannelAdmin_ProxyPushConsumer',
            'CosEventChannelAdmin_ProxyPushSupplier',
            'CosEventChannelAdmin_SupplierAdmin', 'CosEventDomainAdmin',
            'CosEventDomainAdmin_EventDomain',
            'CosEventDomainAdmin_EventDomainFactory',
            'cosEventDomainApp', 'CosFileTransfer_Directory',
            'CosFileTransfer_File', 'CosFileTransfer_FileIterator',
            'CosFileTransfer_FileTransferSession',
            'CosFileTransfer_VirtualFileSystem',
            'cosFileTransferApp', 'CosNaming', 'CosNaming_BindingIterator',
            'CosNaming_NamingContext', 'CosNaming_NamingContextExt',
            'CosNotification', 'CosNotification_AdminPropertiesAdmin',
            'CosNotification_QoSAdmin', 'cosNotificationApp',
            'CosNotifyChannelAdmin_ConsumerAdmin',
            'CosNotifyChannelAdmin_EventChannel',
            'CosNotifyChannelAdmin_EventChannelFactory',
            'CosNotifyChannelAdmin_ProxyConsumer',
            'CosNotifyChannelAdmin_ProxyPullConsumer',
            'CosNotifyChannelAdmin_ProxyPullSupplier',
            'CosNotifyChannelAdmin_ProxyPushConsumer',
            'CosNotifyChannelAdmin_ProxyPushSupplier',
            'CosNotifyChannelAdmin_ProxySupplier',
            'CosNotifyChannelAdmin_SequenceProxyPullConsumer',
            'CosNotifyChannelAdmin_SequenceProxyPullSupplier',
            'CosNotifyChannelAdmin_SequenceProxyPushConsumer',
            'CosNotifyChannelAdmin_SequenceProxyPushSupplier',
            'CosNotifyChannelAdmin_StructuredProxyPullConsumer',
            'CosNotifyChannelAdmin_StructuredProxyPullSupplier',
            'CosNotifyChannelAdmin_StructuredProxyPushConsumer',
            'CosNotifyChannelAdmin_StructuredProxyPushSupplier',
            'CosNotifyChannelAdmin_SupplierAdmin',
            'CosNotifyComm_NotifyPublish', 'CosNotifyComm_NotifySubscribe',
            'CosNotifyFilter_Filter', 'CosNotifyFilter_FilterAdmin',
            'CosNotifyFilter_FilterFactory', 'CosNotifyFilter_MappingFilter',
            'cosProperty', 'CosPropertyService_PropertiesIterator',
            'CosPropertyService_PropertyNamesIterator',
            'CosPropertyService_PropertySet',
            'CosPropertyService_PropertySetDef',
            'CosPropertyService_PropertySetDefFactory',
            'CosPropertyService_PropertySetFactory', 'cosTime',
            'CosTime_TimeService', 'CosTime_TIO', 'CosTime_UTO',
            'CosTimerEvent_TimerEventHandler',
            'CosTimerEvent_TimerEventService', 'cosTransactions',
            'CosTransactions_Control', 'CosTransactions_Coordinator',
            'CosTransactions_RecoveryCoordinator', 'CosTransactions_Resource',
            'CosTransactions_SubtransactionAwareResource',
            'CosTransactions_Terminator', 'CosTransactions_TransactionFactory',
            'cover', 'cprof', 'cpu_sup', 'crashdump', 'crypto', 'crypto_app',
            'ct', 'ct_cover', 'ct_ftp', 'ct_master', 'ct_rpc', 'ct_snmp',
            'ct_ssh', 'ct_telnet', 'dbg', 'debugger', 'dets', 'dialyzer',
            'dict', 'digraph', 'digraph_utils', 'disk_log', 'disksup',
            'docb_gen', 'docb_transform', 'docb_xml_check', 'docbuilder_app',
            'driver_entry', 'edoc', 'edoc_doclet', 'edoc_extract',
            'edoc_layout', 'edoc_lib', 'edoc_run', 'egd', 'ei', 'ei_connect',
            'epmd', 'epp', 'epp_dodger', 'eprof', 'erl', 'erl_boot_server',
            'erl_call', 'erl_comment_scan', 'erl_connect', 'erl_ddll',
            'erl_driver', 'erl_error', 'erl_eterm', 'erl_eval',
            'erl_expand_records', 'erl_format', 'erl_global', 'erl_id_trans',
            'erl_internal', 'erl_lint', 'erl_malloc', 'erl_marshal',
            'erl_parse', 'erl_pp', 'erl_prettypr', 'erl_prim_loader',
            'erl_prim_loader_stub', 'erl_recomment', 'erl_scan',
            'erl_set_memory_block', 'erl_syntax', 'erl_syntax_lib', 'erl_tar',
            'erl_tidy', 'erlang', 'erlang_mode', 'erlang_stub', 'erlc',
            'erlsrv', 'error_handler', 'error_logger', 'erts_alloc',
            'erts_alloc_config', 'escript', 'et', 'et_collector',
            'et_selector', 'et_viewer', 'etop', 'ets', 'eunit', 'file',
            'file_sorter', 'filelib', 'filename', 'fixed', 'fprof', 'ftp',
            'gb_sets', 'gb_trees', 'gen_event', 'gen_fsm', 'gen_sctp',
            'gen_server', 'gen_tcp', 'gen_udp', 'gl', 'global', 'global_group',
            'glu', 'gs', 'heart', 'http', 'httpd', 'httpd_conf',
            'httpd_socket', 'httpd_util', 'i', 'ic', 'ic_c_protocol',
            'ic_clib', 'igor', 'inet', 'inets', 'init', 'init_stub',
            'instrument', 'int', 'interceptors', 'inviso', 'inviso_as_lib',
            'inviso_lfm', 'inviso_lfm_tpfreader', 'inviso_rt',
            'inviso_rt_meta', 'io', 'io_lib', 'kernel_app', 'lib', 'lists',
            'lname', 'lname_component', 'log_mf_h', 'make', 'math', 'megaco',
            'megaco_codec_meas', 'megaco_codec_transform',
            'megaco_edist_compress', 'megaco_encoder', 'megaco_flex_scanner',
            'megaco_tcp', 'megaco_transport', 'megaco_udp', 'megaco_user',
            'memsup', 'mnesia', 'mnesia_frag_hash', 'mnesia_registry',
            'mod_alias', 'mod_auth', 'mod_esi', 'mod_security',
            'Module_Interface', 'ms_transform', 'net_adm', 'net_kernel',
            'new_ssl', 'nteventlog', 'observer_app', 'odbc', 'orber',
            'orber_acl', 'orber_diagnostics', 'orber_ifr', 'orber_tc',
            'orddict', 'ordsets', 'os', 'os_mon', 'os_mon_mib', 'os_sup',
            'otp_mib', 'overload', 'packages', 'percept', 'percept_profile',
            'pg', 'pg2', 'pman', 'pool', 'prettypr', 'proc_lib', 'proplists',
            'public_key', 'qlc', 'queue', 'random', 'rb', 're', 'regexp',
            'registry', 'rel', 'release_handler', 'reltool', 'relup', 'rpc',
            'run_erl', 'run_test', 'runtime_tools_app', 'sasl_app', 'script',
            'seq_trace', 'sets', 'shell', 'shell_default', 'slave', 'snmp',
            'snmp_app', 'snmp_community_mib', 'snmp_framework_mib',
            'snmp_generic', 'snmp_index', 'snmp_notification_mib', 'snmp_pdus',
            'snmp_standard_mib', 'snmp_target_mib', 'snmp_user_based_sm_mib',
            'snmp_view_based_acm_mib', 'snmpa', 'snmpa_conf', 'snmpa_error',
            'snmpa_error_io', 'snmpa_error_logger', 'snmpa_error_report',
            'snmpa_local_db', 'snmpa_mpd', 'snmpa_network_interface',
            'snmpa_network_interface_filter',
            'snmpa_notification_delivery_info_receiver',
            'snmpa_notification_filter', 'snmpa_supervisor', 'snmpc', 'snmpm',
            'snmpm_conf', 'snmpm_mpd', 'snmpm_network_interface', 'snmpm_user',
            'sofs', 'ssh', 'ssh_channel', 'ssh_connection', 'ssh_sftp',
            'ssh_sftpd', 'ssl', 'ssl_app', 'ssl_pkix', 'start', 'start_erl',
            'start_webtool', 'stdlib_app', 'string', 'supervisor',
            'supervisor_bridge', 'sys', 'systools', 'tags', 'test_server',
            'test_server_app', 'test_server_ctrl', 'tftp', 'timer', 'toolbar',
            'ttb', 'tv', 'unicode', 'unix_telnet', 'user', 'webtool', 'werl',
            'win32reg', 'wrap_log_reader', 'wx', 'wx_misc', 'wx_object',
            'wxAcceleratorEntry', 'wxAcceleratorTable', 'wxArtProvider',
            'wxAuiDockArt', 'wxAuiManager', 'wxAuiNotebook', 'wxAuiPaneInfo',
            'wxAuiTabArt', 'wxBitmap', 'wxBitmapButton', 'wxBitmapDataObject',
            'wxBoxSizer', 'wxBrush', 'wxBufferedDC', 'wxBufferedPaintDC',
            'wxButton', 'wxCalendarCtrl', 'wxCalendarDateAttr',
            'wxCalendarEvent', 'wxCaret', 'wxCheckBox', 'wxCheckListBox',
            'wxChildFocusEvent', 'wxChoice', 'wxClientDC', 'wxClipboard',
            'wxCloseEvent', 'wxColourData', 'wxColourDialog',
            'wxColourPickerCtrl', 'wxColourPickerEvent', 'wxComboBox',
            'wxCommandEvent', 'wxContextMenuEvent', 'wxControl',
            'wxControlWithItems', 'wxCursor', 'wxDataObject', 'wxDateEvent',
            'wxDatePickerCtrl', 'wxDC', 'wxDialog', 'wxDirDialog',
            'wxDirPickerCtrl', 'wxDisplayChangedEvent', 'wxEraseEvent',
            'wxEvent', 'wxEvtHandler', 'wxFileDataObject', 'wxFileDialog',
            'wxFileDirPickerEvent', 'wxFilePickerCtrl', 'wxFindReplaceData',
            'wxFindReplaceDialog', 'wxFlexGridSizer', 'wxFocusEvent', 'wxFont',
            'wxFontData', 'wxFontDialog', 'wxFontPickerCtrl',
            'wxFontPickerEvent', 'wxFrame', 'wxGauge', 'wxGBSizerItem',
            'wxGenericDirCtrl', 'wxGLCanvas', 'wxGraphicsBrush',
            'wxGraphicsContext', 'wxGraphicsFont', 'wxGraphicsMatrix',
            'wxGraphicsObject', 'wxGraphicsPath', 'wxGraphicsPen',
            'wxGraphicsRenderer', 'wxGrid', 'wxGridBagSizer', 'wxGridCellAttr',
            'wxGridCellEditor', 'wxGridCellRenderer', 'wxGridEvent',
            'wxGridSizer', 'wxHelpEvent', 'wxHtmlEasyPrinting', 'wxIcon',
            'wxIconBundle', 'wxIconizeEvent', 'wxIdleEvent', 'wxImage',
            'wxImageList', 'wxJoystickEvent', 'wxKeyEvent',
            'wxLayoutAlgorithm', 'wxListBox', 'wxListCtrl', 'wxListEvent',
            'wxListItem', 'wxListView', 'wxMask', 'wxMaximizeEvent',
            'wxMDIChildFrame', 'wxMDIClientWindow', 'wxMDIParentFrame',
            'wxMemoryDC', 'wxMenu', 'wxMenuBar', 'wxMenuEvent', 'wxMenuItem',
            'wxMessageDialog', 'wxMiniFrame', 'wxMirrorDC',
            'wxMouseCaptureChangedEvent', 'wxMouseEvent', 'wxMoveEvent',
            'wxMultiChoiceDialog', 'wxNavigationKeyEvent', 'wxNcPaintEvent',
            'wxNotebook', 'wxNotebookEvent', 'wxNotifyEvent',
            'wxPageSetupDialog', 'wxPageSetupDialogData', 'wxPaintDC',
            'wxPaintEvent', 'wxPalette', 'wxPaletteChangedEvent', 'wxPanel',
            'wxPasswordEntryDialog', 'wxPen', 'wxPickerBase', 'wxPostScriptDC',
            'wxPreviewCanvas', 'wxPreviewControlBar', 'wxPreviewFrame',
            'wxPrintData', 'wxPrintDialog', 'wxPrintDialogData', 'wxPrinter',
            'wxPrintout', 'wxPrintPreview', 'wxProgressDialog',
            'wxQueryNewPaletteEvent', 'wxRadioBox', 'wxRadioButton',
            'wxRegion', 'wxSashEvent', 'wxSashLayoutWindow', 'wxSashWindow',
            'wxScreenDC', 'wxScrollBar', 'wxScrolledWindow', 'wxScrollEvent',
            'wxScrollWinEvent', 'wxSetCursorEvent', 'wxShowEvent',
            'wxSingleChoiceDialog', 'wxSizeEvent', 'wxSizer', 'wxSizerFlags',
            'wxSizerItem', 'wxSlider', 'wxSpinButton', 'wxSpinCtrl',
            'wxSpinEvent', 'wxSplashScreen', 'wxSplitterEvent',
            'wxSplitterWindow', 'wxStaticBitmap', 'wxStaticBox',
            'wxStaticBoxSizer', 'wxStaticLine', 'wxStaticText', 'wxStatusBar',
            'wxStdDialogButtonSizer', 'wxStyledTextCtrl', 'wxStyledTextEvent',
            'wxSysColourChangedEvent', 'wxTextAttr', 'wxTextCtrl',
            'wxTextDataObject', 'wxTextEntryDialog', 'wxToggleButton',
            'wxToolBar', 'wxToolTip', 'wxTopLevelWindow', 'wxTreeCtrl',
            'wxTreeEvent', 'wxUpdateUIEvent', 'wxWindow', 'wxWindowCreateEvent',
            'wxWindowDC', 'wxWindowDestroyEvent', 'wxXmlResource', 'xmerl',
            'xmerl_eventp', 'xmerl_scan', 'xmerl_xpath', 'xmerl_xs',
            'xmerl_xsd', 'xref', 'yecc', 'zip', 'zlib', 'zlib_stub'
            ),
        // Binary modifiers
        6 => array(
            'big', 'binary', 'float', 'integer', 'little', 'signed', 'unit', 'unsigned'
            )
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '[', ']', '{', '}'),
        1 => array('->', ',', ';', '.'),
        2 => array('<<', '>>'),
        3 => array('=', '||', '-', '+', '*', '/', '++', '--', '!', '<', '>', '>=',
                    '=<', '==', '/=', '=:=', '=/=')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #186895;',
            2 => 'color: #014ea4;',
            3 => 'color: #fa6fff;',
            4 => 'color: #fa6fff;',
            5 => 'color: #ff4e18;',
            6 => 'color: #9d4f37;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #109ab8;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff7800;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff9600;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #004866;',
            1 => 'color: #6bb810;',
            2 => 'color: #ee3800;',
            3 => 'color: #014ea4;'
            ),
        'REGEXPS' => array(
            0 => 'color: #6941fd;',
            1 => 'color: #d400ed;',
            2 => 'color: #5400b3;',
            3 => 'color: #ff3c00;',
            4 => 'color: #6941fd;',
            5 => 'color: #45b3e6;',
            6 => 'color: #ff9600;',
            7 => 'color: #d400ed;',
            8 => 'color: #ff9600;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => 'http://erlang.org/doc/man/{FNAME}.html',
        6 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '->',
        2 => ':'
        ),
    'REGEXPS' => array(
        //�Macro definitions
        0 => array(
            GESHI_SEARCH => '(-define\s*\()([a-zA-Z0-9_]+)(\(|,)',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => '\3'
            ),
        // Record definitions
        1 => array(
            GESHI_SEARCH => '(-record\s*\()([a-zA-Z0-9_]+)(,)',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => '\3'
            ),
        // Precompiler directives
        2 => array(
            GESHI_SEARCH => '(-)([a-z][a-zA-Z0-9_]*)(\()',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => '\3'
            ),
        // Functions
        3 => array(
            GESHI_SEARCH => '([a-z]\w*|\'\w*\')(\s*\()',
            GESHI_REPLACE => '\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '\2'
            ),
        // Macros
        4 => array(
            GESHI_SEARCH => '(\?)([a-zA-Z0-9_]+)',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => ''
            ),
        // Variables - With hack to avoid interfering wish GeSHi internals
        5 => array(
            GESHI_SEARCH => '([([{,<+*-\/=\s!]|<)(?!(?:PIPE|SEMI|DOT|NUM|REG3XP\d*)\W)([A-Z_]\w*)(?!\w)',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => ''
            ),
        // ASCII�codes
        6 => '(\$[a-zA-Z0-9_])',
        // Records
        7 => array(
            GESHI_SEARCH => '(#)([a-z][a-zA-Z0-9_]*)(\.|\{)',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => '\3'
            ),
        // Numbers with a different radix
        8 => '(?<=>)(#[a-zA-Z0-9]*)'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            3 => array(
                'DISALLOWED_BEFORE' => '(? ''//'(?=\s*\()'
            ),
            5 => array(
                'DISALLOWED_BEFORE' => '(?<=\'|)',
                'DISALLOWED_AFTER' => '(?=(\'|):)'
            ),
            6 => array(
                'DISALLOWED_BEFORE' => '(?<=\/|-)',
                'DISALLOWED_AFTER' => ''
            )
        )
    ),
);

?>geshi/geshi/fortran.php0000664000175000017500000001420612014173432014352 0ustar  benbebenbe'Fortran',
    'COMMENT_SINGLE'=> array(1 =>'!',2=>'Cf2py'),
    'COMMENT_MULTI'=> array(),
    //Fortran Comments
    'COMMENT_REGEXP' => array(1 => '/^C.*?$/mi'),
    'CASE_KEYWORDS'=> GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS'=> array("'",'"'),
    'ESCAPE_CHAR'=>'\\',
    'KEYWORDS'=> array(
        1 => array(
            'allocate','block','call','case','contains','continue','cycle','deallocate',
            'default','do','else','elseif','elsewhere','end','enddo','endif','endwhere',
            'entry','exit','function','go','goto','if','interface','module','nullify','only',
            'operator','procedure','program','recursive','return','select','stop',
            'subroutine','then','to','where','while',
            'access','action','advance','blank','blocksize','carriagecontrol',
            'delim','direct','eor','err','exist','file','flen','fmt','form','formatted',
            'iostat','name','named','nextrec','nml','number','opened','pad','position',
            'readwrite','recl','sequential','status','unformatted','unit'
            ),
        2 => array(
            '.AND.','.EQ.','.EQV.','.GE.','.GT.','.LE.','.LT.','.NE.','.NEQV.','.NOT.',
            '.OR.','.TRUE.','.FALSE.'
            ),
        3 => array(
            'allocatable','character','common','complex','data','dimension','double',
            'equivalence','external','implicit','in','inout','integer','intent','intrinsic',
            'kind','logical','namelist','none','optional','out','parameter','pointer',
            'private','public','real','result','save','sequence','target','type','use'
            ),
        4 => array(
            'abs','achar','acos','adjustl','adjustr','aimag','aint','all','allocated',
            'anint','any','asin','atan','atan2','bit_size','break','btest','carg',
            'ceiling','char','cmplx','conjg','cos','cosh','cpu_time','count','cshift',
            'date_and_time','dble','digits','dim','dot_product','dprod dvchk',
            'eoshift','epsilon','error','exp','exponent','floor','flush','fraction',
            'getcl','huge','iachar','iand','ibclr','ibits','ibset','ichar','ieor','index',
            'int','intrup','invalop','ior','iostat_msg','ishft','ishftc','lbound',
            'len','len_trim','lge','lgt','lle','llt','log','log10','matmul','max','maxexponent',
            'maxloc','maxval','merge','min','minexponent','minloc','minval','mod','modulo',
            'mvbits','nbreak','ndperr','ndpexc','nearest','nint','not','offset','ovefl',
            'pack','precfill','precision','present','product','prompt','radix',
            'random_number','random_seed','range','repeat','reshape','rrspacing',
            'scale','scan','segment','selected_int_kind','selected_real_kind',
            'set_exponent','shape','sign','sin','sinh','size','spacing','spread','sqrt',
            'sum system','system_clock','tan','tanh','timer','tiny','transfer','transpose',
            'trim','ubound','undfl','unpack','val','verify'
            ),
        ),
    'SYMBOLS'=> array(
        '(',')','{','}','[',']','=','+','-','*','/','!','%','^','&',':'
        ),
    'CASE_SENSITIVE'=> array(
        GESHI_COMMENTS => true,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'STYLES'=> array(
        'KEYWORDS'=> array(
            1 =>'color: #b1b100;',
            2 =>'color: #000000; font-weight: bold;',
            3 =>'color: #000066;',
            4 =>'color: #993333;'
            ),
        'COMMENTS'=> array(
            1 =>'color: #666666; font-style: italic;',
            2 =>'color: #339933;',
            'MULTI'=>'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR'=> array(
            0 =>'color: #000099; font-weight: bold;'
            ),
        'BRACKETS'=> array(
            0 =>'color: #009900;'
            ),
        'STRINGS'=> array(
            0 =>'color: #ff0000;'
            ),
        'NUMBERS'=> array(
            0 =>'color: #cc66cc;'
            ),
        'METHODS'=> array(
            1 =>'color: #202020;',
            2 =>'color: #202020;'
            ),
        'SYMBOLS'=> array(
            0 =>'color: #339933;'
            ),
        'REGEXPS'=> array(
            ),
        'SCRIPT'=> array(
            )
        ),
    'URLS'=> array(
        1 =>'',
        2 =>'',
        3 =>'',
        4 =>''
        ),
    'OOLANG'=> true,
    'OBJECT_SPLITTERS'=> array(
        1 =>'.',
        2 =>'::'
        ),
    'REGEXPS'=> array(
        ),
    'STRICT_MODE_APPLIES'=> GESHI_NEVER,
    'SCRIPT_DELIMITERS'=> array(
        ),
    'HIGHLIGHT_STRICT_BLOCK'=> array(
        )
);

?>
geshi/geshi/rails.php0000664000175000017500000004747512014173415014030 0ustar  benbebenbe 'Rails',
    'COMMENT_SINGLE' => array(1 => "#"),
    'COMMENT_MULTI' => array("=begin" => "=end"),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', '`','\''),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            'alias', 'and', 'begin', 'break', 'case', 'class',
            'def', 'defined', 'do', 'else', 'elsif', 'end',
            'ensure', 'for', 'if', 'in', 'module', 'while',
            'next', 'not', 'or', 'redo', 'rescue', 'yield',
            'retry', 'super', 'then', 'undef', 'unless',
            'until', 'when', 'BEGIN', 'END', 'include'
            ),
        2 => array(
            '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true',
            'return'
            ),
        3 => array(
            'Array', 'Float', 'Integer', 'String', 'at_exit',
            'autoload', 'binding', 'caller', 'catch', 'chop', 'chop!',
            'chomp', 'chomp!', 'eval', 'exec', 'exit', 'exit!', 'fail',
            'fork', 'format', 'gets', 'global_variables', 'gsub', 'gsub!',
            'iterator?', 'lambda', 'load', 'local_variables', 'loop',
            'open', 'p', 'print', 'printf', 'proc', 'putc', 'puts',
            'raise', 'rand', 'readline', 'readlines', 'require', 'select',
            'sleep', 'split', 'sprintf', 'srand', 'sub', 'sub!', 'syscall',
            'system', 'trace_var', 'trap', 'untrace_var'
            ),
        4 => array(
            'Abbrev', 'ArgumentError', 'Base64', 'Benchmark',
            'Benchmark::Tms', 'Bignum', 'Binding', 'CGI', 'CGI::Cookie',
            'CGI::HtmlExtension', 'CGI::QueryExtension',
            'CGI::Session', 'CGI::Session::FileStore',
            'CGI::Session::MemoryStore', 'Class', 'Comparable', 'Complex',
            'ConditionVariable', 'Continuation', 'Data',
            'Date', 'DateTime', 'Delegator', 'Dir', 'EOFError', 'ERB',
            'ERB::Util', 'Enumerable', 'Enumerable::Enumerator', 'Errno',
            'Exception', 'FalseClass', 'File',
            'File::Constants', 'File::Stat', 'FileTest', 'FileUtils',
            'FileUtils::DryRun', 'FileUtils::NoWrite',
            'FileUtils::StreamUtils_', 'FileUtils::Verbose', 'Find',
            'Fixnum', 'FloatDomainError', 'Forwardable', 'GC', 'Generator',
            'Hash', 'IO', 'IOError', 'Iconv', 'Iconv::BrokenLibrary',
            'Iconv::Failure', 'Iconv::IllegalSequence',
            'Iconv::InvalidCharacter', 'Iconv::InvalidEncoding',
            'Iconv::OutOfRange', 'IndexError', 'Interrupt', 'Kernel',
            'LoadError', 'LocalJumpError', 'Logger', 'Logger::Application',
            'Logger::Error', 'Logger::Formatter', 'Logger::LogDevice',
            'Logger::LogDevice::LogDeviceMutex', 'Logger::Severity',
            'Logger::ShiftingError', 'Marshal', 'MatchData',
            'Math', 'Matrix', 'Method', 'Module', 'Mutex', 'NameError',
            'NameError::message', 'NilClass', 'NoMemoryError',
            'NoMethodError', 'NotImplementedError', 'Numeric', 'Object',
            'ObjectSpace', 'Observable', 'PStore', 'PStore::Error',
            'Pathname', 'Precision', 'Proc', 'Process', 'Process::GID',
            'Process::Status', 'Process::Sys', 'Process::UID', 'Queue',
            'Range', 'RangeError', 'Rational', 'Regexp', 'RegexpError',
            'RuntimeError', 'ScriptError', 'SecurityError', 'Set',
            'Shellwords', 'Signal', 'SignalException', 'SimpleDelegator',
            'SingleForwardable', 'Singleton', 'SingletonClassMethods',
            'SizedQueue', 'SortedSet', 'StandardError', 'StringIO',
            'StringScanner', 'StringScanner::Error', 'Struct', 'Symbol',
            'SyncEnumerator', 'SyntaxError', 'SystemCallError',
            'SystemExit', 'SystemStackError', 'Tempfile',
            'Test::Unit::TestCase', 'Test::Unit', 'Test', 'Thread',
            'ThreadError', 'ThreadGroup',
            'ThreadsWait', 'Time', 'TrueClass', 'TypeError', 'URI',
            'URI::BadURIError', 'URI::Error', 'URI::Escape', 'URI::FTP',
            'URI::Generic', 'URI::HTTP', 'URI::HTTPS',
            'URI::InvalidComponentError', 'URI::InvalidURIError',
            'URI::LDAP', 'URI::MailTo', 'URI::REGEXP',
            'URI::REGEXP::PATTERN', 'UnboundMethod', 'Vector', 'YAML',
            'ZeroDivisionError', 'Zlib',
            'Zlib::BufError', 'Zlib::DataError', 'Zlib::Deflate',
            'Zlib::Error', 'Zlib::GzipFile', 'Zlib::GzipFile::CRCError',
            'Zlib::GzipFile::Error', 'Zlib::GzipFile::LengthError',
            'Zlib::GzipFile::NoFooter', 'Zlib::GzipReader',
            'Zlib::GzipWriter', 'Zlib::Inflate', 'Zlib::MemError',
            'Zlib::NeedDict', 'Zlib::StreamEnd', 'Zlib::StreamError',
            'Zlib::VersionError',
            'Zlib::ZStream',
            'ActionController::AbstractRequest',
            'ActionController::Assertions::DomAssertions',
            'ActionController::Assertions::ModelAssertions',
            'ActionController::Assertions::ResponseAssertions',
            'ActionController::Assertions::RoutingAssertions',
            'ActionController::Assertions::SelectorAssertions',
            'ActionController::Assertions::TagAssertions',
            'ActionController::Base',
            'ActionController::Benchmarking::ClassMethods',
            'ActionController::Caching',
            'ActionController::Caching::Actions',
            'ActionController::Caching::Actions::ActionCachePath',
            'ActionController::Caching::Fragments',
            'ActionController::Caching::Pages',
            'ActionController::Caching::Pages::ClassMethods',
            'ActionController::Caching::Sweeping',
            'ActionController::Components',
            'ActionController::Components::ClassMethods',
            'ActionController::Components::InstanceMethods',
            'ActionController::Cookies',
            'ActionController::Filters::ClassMethods',
            'ActionController::Flash',
            'ActionController::Flash::FlashHash',
            'ActionController::Helpers::ClassMethods',
            'ActionController::Integration::Session',
            'ActionController::IntegrationTest',
            'ActionController::Layout::ClassMethods',
            'ActionController::Macros',
            'ActionController::Macros::AutoComplete::ClassMethods',
            'ActionController::Macros::InPlaceEditing::ClassMethods',
            'ActionController::MimeResponds::InstanceMethods',
            'ActionController::Pagination',
            'ActionController::Pagination::ClassMethods',
            'ActionController::Pagination::Paginator',
            'ActionController::Pagination::Paginator::Page',
            'ActionController::Pagination::Paginator::Window',
            'ActionController::Rescue', 'ActionController::Resources',
            'ActionController::Routing',
            'ActionController::Scaffolding::ClassMethods',
            'ActionController::SessionManagement::ClassMethods',
            'ActionController::Streaming', 'ActionController::TestProcess',
            'ActionController::TestUploadedFile',
            'ActionController::UrlWriter',
            'ActionController::Verification::ClassMethods',
            'ActionMailer::Base', 'ActionView::Base',
            'ActionView::Helpers::ActiveRecordHelper',
            'ActionView::Helpers::AssetTagHelper',
            'ActionView::Helpers::BenchmarkHelper',
            'ActionView::Helpers::CacheHelper',
            'ActionView::Helpers::CaptureHelper',
            'ActionView::Helpers::DateHelper',
            'ActionView::Helpers::DebugHelper',
            'ActionView::Helpers::FormHelper',
            'ActionView::Helpers::FormOptionsHelper',
            'ActionView::Helpers::FormTagHelper',
            'ActionView::Helpers::JavaScriptHelper',
            'ActionView::Helpers::JavaScriptMacrosHelper',
            'ActionView::Helpers::NumberHelper',
            'ActionView::Helpers::PaginationHelper',
            'ActionView::Helpers::PrototypeHelper',
            'ActionView::Helpers::PrototypeHelper::JavaScriptGenerator::GeneratorMethods',
            'ActionView::Helpers::ScriptaculousHelper',
            'ActionView::Helpers::TagHelper',
            'ActionView::Helpers::TextHelper',
            'ActionView::Helpers::UrlHelper', 'ActionView::Partials',
            'ActionWebService::API::Method', 'ActionWebService::Base',
            'ActionWebService::Client::Soap',
            'ActionWebService::Client::XmlRpc',
            'ActionWebService::Container::ActionController::ClassMethods',
            'ActionWebService::Container::Delegated::ClassMethods',
            'ActionWebService::Container::Direct::ClassMethods',
            'ActionWebService::Invocation::ClassMethods',
            'ActionWebService::Scaffolding::ClassMethods',
            'ActionWebService::SignatureTypes', 'ActionWebService::Struct',
            'ActiveRecord::Acts::List::ClassMethods',
            'ActiveRecord::Acts::List::InstanceMethods',
            'ActiveRecord::Acts::NestedSet::ClassMethods',
            'ActiveRecord::Acts::NestedSet::InstanceMethods',
            'ActiveRecord::Acts::Tree::ClassMethods',
            'ActiveRecord::Acts::Tree::InstanceMethods',
            'ActiveRecord::Aggregations::ClassMethods',
            'ActiveRecord::Associations::ClassMethods',
            'ActiveRecord::AttributeMethods::ClassMethods',
            'ActiveRecord::Base',
            'ActiveRecord::Calculations::ClassMethods',
            'ActiveRecord::Callbacks',
            'ActiveRecord::ConnectionAdapters::AbstractAdapter',
            'ActiveRecord::ConnectionAdapters::Column',
            'ActiveRecord::ConnectionAdapters::DB2Adapter',
            'ActiveRecord::ConnectionAdapters::DatabaseStatements',
            'ActiveRecord::ConnectionAdapters::FirebirdAdapter',
            'ActiveRecord::ConnectionAdapters::FrontBaseAdapter',
            'ActiveRecord::ConnectionAdapters::MysqlAdapter',
            'ActiveRecord::ConnectionAdapters::OpenBaseAdapter',
            'ActiveRecord::ConnectionAdapters::OracleAdapter',
            'ActiveRecord::ConnectionAdapters::PostgreSQLAdapter',
            'ActiveRecord::ConnectionAdapters::Quoting',
            'ActiveRecord::ConnectionAdapters::SQLServerAdapter',
            'ActiveRecord::ConnectionAdapters::SQLiteAdapter',
            'ActiveRecord::ConnectionAdapters::SchemaStatements',
            'ActiveRecord::ConnectionAdapters::SybaseAdapter::ColumnWithIdentity',
            'ActiveRecord::ConnectionAdapters::SybaseAdapterContext',
            'ActiveRecord::ConnectionAdapters::TableDefinition',
            'ActiveRecord::Errors', 'ActiveRecord::Locking',
            'ActiveRecord::Locking::Optimistic',
            'ActiveRecord::Locking::Optimistic::ClassMethods',
            'ActiveRecord::Locking::Pessimistic',
            'ActiveRecord::Migration', 'ActiveRecord::Observer',
            'ActiveRecord::Observing::ClassMethods',
            'ActiveRecord::Reflection::ClassMethods',
            'ActiveRecord::Reflection::MacroReflection',
            'ActiveRecord::Schema', 'ActiveRecord::Timestamp',
            'ActiveRecord::Transactions::ClassMethods',
            'ActiveRecord::Validations',
            'ActiveRecord::Validations::ClassMethods',
            'ActiveRecord::XmlSerialization',
            'ActiveSupport::CachingTools::HashCaching',
            'ActiveSupport::CoreExtensions::Array::Conversions',
            'ActiveSupport::CoreExtensions::Array::Grouping',
            'ActiveSupport::CoreExtensions::Date::Conversions',
            'ActiveSupport::CoreExtensions::Hash::Conversions',
            'ActiveSupport::CoreExtensions::Hash::Conversions::ClassMethods',
            'ActiveSupport::CoreExtensions::Hash::Diff',
            'ActiveSupport::CoreExtensions::Hash::Keys',
            'ActiveSupport::CoreExtensions::Hash::ReverseMerge',
            'ActiveSupport::CoreExtensions::Integer::EvenOdd',
            'ActiveSupport::CoreExtensions::Integer::Inflections',
            'ActiveSupport::CoreExtensions::Numeric::Bytes',
            'ActiveSupport::CoreExtensions::Numeric::Time',
            'ActiveSupport::CoreExtensions::Pathname::CleanWithin',
            'ActiveSupport::CoreExtensions::Range::Conversions',
            'ActiveSupport::CoreExtensions::String::Access',
            'ActiveSupport::CoreExtensions::String::Conversions',
            'ActiveSupport::CoreExtensions::String::Inflections',
            'ActiveSupport::CoreExtensions::String::Iterators',
            'ActiveSupport::CoreExtensions::String::StartsEndsWith',
            'ActiveSupport::CoreExtensions::String::Unicode',
            'ActiveSupport::CoreExtensions::Time::Calculations',
            'ActiveSupport::CoreExtensions::Time::Calculations::ClassMethods',
            'ActiveSupport::CoreExtensions::Time::Conversions',
            'ActiveSupport::Multibyte::Chars',
            'ActiveSupport::Multibyte::Handlers::UTF8Handler',
            'Breakpoint', 'Builder::BlankSlate', 'Builder::XmlMarkup',
            'Fixtures',
            'HTML::Selector', 'HashWithIndifferentAccess', 'Inflector',
            'Inflector::Inflections', 'Mime', 'Mime::Type',
            'OCI8AutoRecover', 'TimeZone', 'XmlSimple'
            ),
        5 => array(
            'image_tag', 'link_to', 'link_to_remote', 'javascript_include_tag',
            'assert_equal', 'assert_not_equal', 'before_filter',
            'after_filter', 'render', 'redirect_to', 'hide_action',
            'render_to_string', 'url_for', 'controller_name',
            'controller_class_name', 'controller_path', 'session',
            'render_component', 'render_component_as_string', 'cookie',
            'layout', 'flash', 'auto_complete_for', 'in_place_editor_for',
            'respond_to', 'paginate', 'current_page', 'each', 'first',
            'first_page', 'last_page', 'last', 'length', 'new', 'page_count',
            'previous', 'scaffold', 'send_data',
            'send_file', 'deliver', 'receive', 'error_messages_for',
            'error_message_on', 'form', 'input', 'stylesheet_link_tag',
            'stylesheet_path', 'content_for', 'select_date', 'ago',
            'month', 'day', 'check_box', 'fields_for', 'file_field',
            'form_for', 'hidden_field', 'text_area', 'password_field',
            'collection_select', 'options_for_select',
            'options_from_collection_for_select', 'file_field_tag',
            'form_for_tag', 'hidden_field_tag', 'text_area_tag',
            'password_field_tag', 'link_to_function', 'javascript_tag',
            'human_size', 'number_to_currency', 'pagination_links',
            'form_remote_tag', 'form_remote_for',
            'submit_to_remote', 'remote_function', 'observe_form',
            'observe_field', 'remote_form_for', 'options_for_ajax', 'alert',
            'call', 'assign', 'show', 'hide', 'insert_html', 'sortable',
            'toggle', 'visual_effect', 'replace', 'replace_html', 'remove',
            'save', 'save!', 'draggable', 'drop_receiving', 'literal',
            'draggable_element', 'drop_receiving_element', 'sortable_element',
            'content_tag', 'tag', 'link_to_image', 'link_to_if',
            'link_to_unless', 'mail_to', 'link_image_to', 'button_to',
            'current_page?', 'act_as_list', 'act_as_nested', 'act_as_tree',
            'has_many', 'has_one', 'belongs_to', 'has_many_and_belogns_to',
            'delete', 'destroy', 'destroy_all', 'clone', 'deep_clone', 'copy',
            'update', 'table_name', 'primary_key', 'sum', 'maximun', 'minimum',
            'count', 'size', 'after_save', 'after_create', 'before_save',
            'before_create', 'add_to_base', 'errors', 'add', 'validate',
            'validates_presence_of', 'validates_numericality_of',
            'validates_uniqueness_of', 'validates_length_of',
            'validates_format_of', 'validates_size_of', 'to_a', 'to_s',
            'to_xml', 'to_i'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '%', '&', '*', '|', '/', '<', '>',
        '+', '-', '=>', '<<'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color:#9966CC; font-weight:bold;',
            2 => 'color:#0000FF; font-weight:bold;',
            3 => 'color:#CC0066; font-weight:bold;',
            4 => 'color:#CC00FF; font-weight:bold;',
            5 => 'color:#5A0A0A; font-weight:bold;'
            ),
        'COMMENTS' => array(
            1 => 'color:#008000; font-style:italic;',
                    'MULTI' => 'color:#000080; font-style:italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color:#000099;'
            ),
        'BRACKETS' => array(
            0 => 'color:#006600; font-weight:bold;'
            ),
        'STRINGS' => array(
            0 => 'color:#996600;'
            ),
        'NUMBERS' => array(
            0 => 'color:#006666;'
            ),
        'METHODS' => array(
            1 => 'color:#9900CC;'
            ),
        'SYMBOLS' => array(
            0 => 'color:#006600; font-weight:bold;'
            ),
        'REGEXPS' => array(
            0 => 'color:#ff6633; font-weight:bold;',
            1 => 'color:#0066ff; font-weight:bold;',
            2 => 'color:#6666ff; font-weight:bold;',
            3 => 'color:#ff3333; font-weight:bold;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        0 => array(
            GESHI_SEARCH => "([[:space:]])(\\$[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        1 => array(
            GESHI_SEARCH => "([[:space:]])(@[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        2 => "([A-Z][a-zA-Z0-9_]*::)+[A-Z][a-zA-Z0-9_]*", //Static OOP References
        3 => array(
            GESHI_SEARCH => "([[:space:]]|\[|\()(:[a-zA-Z_][a-zA-Z0-9_]*)",
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            '<%' => '%>'
            )
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        )
);

?>
geshi/geshi/powershell.php0000664000175000017500000003436712014173441015075 0ustar  benbebenbe 'PowerShell',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array('<#' => '#>'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '`',
    'KEYWORDS' => array(
        1 => array(
            // Cmdlets
            'Add-Content', 'Add-History', 'Add-Member', 'Add-PSSnapin', 'Clear-Content', 'Clear-Item',
            'Clear-ItemProperty', 'Clear-Variable', 'Compare-Object', 'ConvertFrom-SecureString',
            'Convert-Path', 'ConvertTo-Html', 'ConvertTo-SecureString', 'Copy-Item', 'Copy-ItemProperty',
            'Export-Alias', 'Export-Clixml', 'Export-Console', 'Export-Csv', 'ForEach-Object',
            'Format-Custom', 'Format-List', 'Format-Table', 'Format-Wide', 'Get-Acl', 'Get-Alias',
            'Get-AuthenticodeSignature', 'Get-ChildItem', 'Get-Command', 'Get-Content', 'Get-Credential',
            'Get-Culture', 'Get-Date', 'Get-EventLog', 'Get-ExecutionPolicy', 'Get-Help', 'Get-History',
            'Get-Host', 'Get-Item', 'Get-ItemProperty', 'Get-Location', 'Get-Member',
            'Get-PfxCertificate', 'Get-Process', 'Get-PSDrive', 'Get-PSProvider', 'Get-PSSnapin',
            'Get-Service', 'Get-TraceSource', 'Get-UICulture', 'Get-Unique', 'Get-Variable',
            'Get-WmiObject', 'Group-Object', 'Import-Alias', 'Import-Clixml', 'Import-Csv',
            'Invoke-Expression', 'Invoke-History', 'Invoke-Item', 'Join-Path', 'Measure-Command',
            'Measure-Object', 'Move-Item', 'Move-ItemProperty', 'New-Alias', 'New-Item',
            'New-ItemProperty', 'New-Object', 'New-PSDrive', 'New-Service', 'New-TimeSpan',
            'New-Variable', 'Out-Default', 'Out-File', 'Out-Host', 'Out-Null', 'Out-Printer',
            'Out-String', 'Pop-Location', 'Push-Location', 'Read-Host', 'Remove-Item',
            'Remove-ItemProperty', 'Remove-PSDrive', 'Remove-PSSnapin', 'Remove-Variable', 'Rename-Item',
            'Rename-ItemProperty', 'Resolve-Path', 'Restart-Service', 'Resume-Service', 'Select-Object',
            'Select-String', 'Set-Acl', 'Set-Alias', 'Set-AuthenticodeSignature', 'Set-Content',
            'Set-Date', 'Set-ExecutionPolicy', 'Set-Item', 'Set-ItemProperty', 'Set-Location',
            'Set-PSDebug', 'Set-Service', 'Set-TraceSource', 'Set-Variable', 'Sort-Object', 'Split-Path',
            'Start-Service', 'Start-Sleep', 'Start-Transcript', 'Stop-Process', 'Stop-Service',
            'Stop-Transcript', 'Suspend-Service', 'Tee-Object', 'Test-Path', 'Trace-Command',
            'Update-FormatData', 'Update-TypeData', 'Where-Object', 'Write-Debug', 'Write-Error',
            'Write-Host', 'Write-Output', 'Write-Progress', 'Write-Verbose', 'Write-Warning'
            ),
        2 => array(
            // Aliases
            'ac', 'asnp', 'clc', 'cli', 'clp', 'clv', 'cpi', 'cpp', 'cvpa', 'diff', 'epal', 'epcsv', 'fc',
            'fl', 'ft', 'fw', 'gal', 'gc', 'gci', 'gcm', 'gdr', 'ghy', 'gi', 'gl', 'gm',
            'gp', 'gps', 'group', 'gsv', 'gsnp', 'gu', 'gv', 'gwmi', 'iex', 'ihy', 'ii', 'ipal', 'ipcsv',
            'mi', 'mp', 'nal', 'ndr', 'ni', 'nv', 'oh', 'rdr', 'ri', 'rni', 'rnp', 'rp', 'rsnp', 'rv',
            'rvpa', 'sal', 'sasv', 'sc', 'select', 'si', 'sl', 'sleep', 'sort', 'sp', 'spps', 'spsv', 'sv',
            'tee', 'write', 'cat', 'cd', 'clear', 'cp', 'h', 'history', 'kill', 'lp', 'ls',
            'mount', 'mv', 'popd', 'ps', 'pushd', 'pwd', 'r', 'rm', 'rmdir', 'echo', 'cls', 'chdir',
            'copy', 'del', 'dir', 'erase', 'move', 'rd', 'ren', 'set', 'type'
            ),
        3 => array(
            // Reserved words
            'break', 'continue', 'do', 'for', 'foreach', 'while', 'if', 'switch', 'until', 'where',
            'function', 'filter', 'else', 'elseif', 'in', 'return', 'param', 'throw', 'trap'
            ),
        4 => array(
            // Operators
            '-eq', '-ne', '-gt', '-ge', '-lt', '-le', '-ieq', '-ine', '-igt', '-ige', '-ilt', '-ile',
            '-ceq', '-cne', '-cgt', '-cge', '-clt', '-cle', '-like', '-notlike', '-match', '-notmatch',
            '-ilike', '-inotlike', '-imatch', '-inotmatch', '-clike', '-cnotlike', '-cmatch', '-cnotmatch',
            '-contains', '-notcontains', '-icontains', '-inotcontains', '-ccontains', '-cnotcontains',
            '-isnot', '-is', '-as', '-replace', '-ireplace', '-creplace', '-and', '-or', '-band', '-bor',
            '-not', '-bnot', '-f', '-casesensitive', '-exact', '-file', '-regex', '-wildcard'
            ),
        5 => array(
            // Options
            '-Year', '-Wrap', '-Word', '-Width', '-WhatIf', '-Wait', '-View', '-Verbose', '-Verb',
            '-Variable', '-ValueOnly', '-Value', '-Unique', '-UFormat', '-TypeName', '-Trace', '-TotalCount',
            '-Title', '-TimestampServer', '-TargetObject', '-Syntax', '-SyncWindow', '-Sum', '-String',
            '-Strict', '-Stream', '-Step', '-Status', '-Static', '-StartupType', '-Start', '-StackName',
            '-Stack', '-SourceId', '-SimpleMatch', '-ShowError', '-Separator', '-SecureString', '-SecureKey',
            '-SecondValue', '-SecondsRemaining', '-Seconds', '-Second', '-Scope', '-Root', '-Role',
            '-Resolve', '-RemoveListener', '-RemoveFileListener', '-Registered', '-ReferenceObject',
            '-Recurse', '-RecommendedAction', '-ReadCount', '-Quiet', '-Query', '-Qualifier', '-PSSnapin',
            '-PSProvider', '-PSHost', '-PSDrive', '-PropertyType', '-Property', '-Prompt', '-Process',
            '-PrependPath', '-PercentComplete', '-Pattern', '-PathType', '-Path', '-PassThru', '-ParentId',
            '-Parent', '-Parameter', '-Paging', '-OutVariable', '-OutBuffer', '-Option', '-OnType', '-Off',
            '-Object', '-Noun', '-NoTypeInformation', '-NoQualifier', '-NoNewline', '-NoElement',
            '-NoClobber', '-NewName', '-Newest', '-Namespace', '-Name', '-Month', '-Minutes', '-Minute',
            '-Minimum', '-Milliseconds', '-Message', '-MemberType', '-Maximum', '-LogName', '-LiteralPath',
            '-LiteralName', '-ListenerOption', '-List', '-Line', '-Leaf', '-Last', '-Key', '-ItemType',
            '-IsValid', '-IsAbsolute', '-InputObject', '-IncludeEqual', '-IncludeChain', '-Include',
            '-IgnoreWhiteSpace', '-Id', '-Hours', '-Hour', '-HideTableHeaders', '-Head', '-GroupBy',
            '-Functionality', '-Full', '-Format', '-ForegroundColor', '-Force', '-First', '-FilterScript',
            '-Filter', '-FilePath', '-Expression', '-ExpandProperty', '-Expand', '-ExecutionPolicy',
            '-ExcludeProperty', '-ExcludeDifferent', '-Exclude', '-Exception', '-Examples', '-ErrorVariable',
            '-ErrorRecord', '-ErrorId', '-ErrorAction', '-End', '-Encoding', '-DisplayName', '-DisplayHint',
            '-DisplayError', '-DifferenceObject', '-Detailed', '-Destination', '-Description', '-Descending',
            '-Depth', '-DependsOn', '-Delimiter', '-Debugger', '-Debug', '-Days', '-Day', '-Date',
            '-CurrentOperation', '-Culture', '-Credential', '-Count', '-Container', '-Confirm',
            '-ComputerName', '-Component', '-Completed', '-ComObject', '-CommandType', '-Command',
            '-Column', '-Class', '-ChildPath', '-Character', '-Certificate', '-CategoryTargetType',
            '-CategoryTargetName', '-CategoryReason', '-CategoryActivity', '-Category', '-CaseSensitive',
            '-Body', '-BinaryPathName', '-Begin', '-BackgroundColor', '-Average', '-AutoSize', '-Audit',
            '-AsString', '-AsSecureString', '-AsPlainText', '-As', '-ArgumentList', '-AppendPath', '-Append',
            '-Adjust', '-Activity', '-AclObject'
            ),
        6 => array(
            '_','args','DebugPreference','Error','ErrorActionPreference',
            'foreach','Home','Host','Input','LASTEXITCODE','MaximumAliasCount',
            'MaximumDriveCount','MaximumFunctionCount','MaximumHistoryCount',
            'MaximumVariableCount','OFS','PsHome',
            'ReportErrorShowExceptionClass','ReportErrorShowInnerException',
            'ReportErrorShowSource','ReportErrorShowStackTrace',
            'ShouldProcessPreference','ShouldProcessReturnPreference',
            'StackTrace','VerbosePreference','WarningPreference','PWD'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '=', '<', '>', '@', '|', '&', ',', '?',
        '+=', '-=', '*=', '/=', '%=', '*', '/', '%', '!', '+', '-', '++', '--'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #008080; font-weight: bold;',
            2 => 'color: #008080; font-weight: bold;',
            3 => 'color: #0000FF;',
            4 => 'color: #FF0000;',
            5 => 'color: #008080; font-style: italic;',
            6 => 'color: #000080;'
            ),
        'COMMENTS' => array(
            1 => 'color: #008000;',
            'MULTI' => 'color: #008000;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008080; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000000;'
            ),
        'STRINGS' => array(
            0 => 'color: #800000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #804000;'
            ),
        'METHODS' => array(
            0 => 'color: pink;'
            ),
        'SYMBOLS' => array(
            0 => 'color: pink;'
            ),
        'REGEXPS' => array(
            0 => 'color: #800080;',
            3 => 'color: #008080;',
            4 => 'color: #008080;',
            5 => 'color: #800000;',
            6 => 'color: #000080;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => 'about:blank',
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        // special after pipe
        3 => array(
            GESHI_SEARCH => '(\[)(int|long|string|char|bool|byte|double|decimal|float|single|regex|array|xml|scriptblock|switch|hashtable|type|ref|psobject|wmi|wmisearcher|wmiclass|object)((\[.*\])?\])',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => 'si',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => '\3'
            ),
        // Classes
        4 => array(
            GESHI_SEARCH => '(\[)(System\.Reflection\.Assembly|System\.Net\.CredentialCache|Microsoft\.SharePoint\.SPFileLevel|Microsoft\.SharePoint\.Publishing\.PublishingWeb|Microsoft\.SharePoint\.Publishing|Microsoft\.SharePoint\.SPWeb)(\])',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => 'i',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => '\3'
            ),
        // Members
        // There's about a hundred million of these, add the ones you need as you need them
        5 => array (
            GESHI_SEARCH => '(::)(ReflectionOnlyLoadFrom|ReflectionOnlyLoad|ReferenceEquals|LoadWithPartialName|LoadFrom|LoadFile|Load|GetExecutingAssembly|GetEntryAssembly|GetCallingAssembly|GetAssembly|Equals|DefaultNetworkCredentials|DefaultCredentials|CreateQualifiedName|Checkout|Draft|Published|IsPublishingWeb)',
            GESHI_REPLACE => '\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\1',
            GESHI_AFTER => ''
            ),
        // Special variables
        6 => array(
            GESHI_SEARCH => '(\$)(\$[_\^]?|\?)(?!\w)',
            GESHI_REPLACE => '\1\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        // variables
        //BenBE: Please note that changes here and in Keyword group 6 have to be synchronized in order to work properly.
        //This Regexp must only match, if keyword group 6 doesn't. If this assumption fails
        //Highlighting of the keywords will be incomplete or incorrect!
        0 => "(?)[\\\$](\w+)(?=[^|\w])",
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            4 => array(
                'DISALLOWED_AFTER' => '(?![a-zA-Z])',
                'DISALLOWED_BEFORE' => ''
                ),
            6 => array(
                'DISALLOWED_BEFORE' => '(?)\$'
                )
            )
        )
);

?>geshi/geshi/smalltalk.php0000664000175000017500000001116112014173442014661 0ustar  benbebenbe 'Smalltalk',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('"' => '"'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'"),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'self','super','true','false','nil'
            )
        ),
    'SYMBOLS' => array(
        '[', ']', '=' , ':=', '(', ')', '#'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #7f007f;'
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #007f00; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => ''
            ),
        'STRINGS' => array(
            0 => 'color: #7f0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #7f0000;'
            ),
        'METHODS' => array(
            0 => ''
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066; font-weight:bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;',
            1 => 'color: #7f0000;',
            2 => 'color: #7f0000;',
            3 => 'color: #00007f;',
            5 => 'color: #00007f;',
            6 => 'color: #00007f;'
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(
        1 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => array(
            GESHI_SEARCH => '([^a-zA-Z0-9_#<])([A-Z]+[a-zA-Z0-9_]*)(?!>)', //class names
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        1 => array(
            GESHI_SEARCH => '(#+)([a-zA-Z0-9_]+)', //symbols
            GESHI_REPLACE => '\\1\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        2 => array(
            GESHI_SEARCH => '(#\s*\([^)]*\))', //array symbols
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        3 => array(
            GESHI_SEARCH => '([a-zA-Z0-9_\s]+)', //temporary variables
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '|',
            GESHI_AFTER => '|'
            ),
        5 => array(
            GESHI_SEARCH => '([:(,=[.*\/+-]\s*(?!\d+\/))([a-zA-Z0-9_]+)', //message parameters, message receivers
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 's',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        6 => array(
            GESHI_SEARCH => '([a-zA-Z0-9_]+)(\s*:=)', //assignment targets
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => '\\2'
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/text.php0000664000175000017500000000472612014173434013673 0ustar  benbebenbe 'Text',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(),
    'SYMBOLS' => array(),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(),
        'COMMENTS' => array(),
        'ESCAPE_CHAR' => array(),
        'BRACKETS' => array(),
        'STRINGS' => array(),
        'NUMBERS' => array(),
        'METHODS' => array(),
        'SYMBOLS' => array(),
        'SCRIPT' => array(),
        'REGEXPS' => array()
        ),
    'URLS' => array(),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'ALL' => GESHI_NEVER
        ),
    )
);

?>
geshi/geshi/modula2.php0000664000175000017500000001050512014173420014235 0ustar  benbebenbe 'Modula-2',
    'COMMENT_MULTI' => array('(*' => '*)'),
    'COMMENT_SINGLE' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("''"),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array( /* reserved words */
            'AND', 'ARRAY', 'BEGIN', 'BY', 'CASE', 'CONST', 'DEFINITION',
            'DIV', 'DO', 'ELSE', 'ELSIF', 'END', 'EXIT', 'EXPORT', 'FOR',
            'FROM', 'IF', 'IMPLEMENTATION', 'IMPORT', 'IN', 'LOOP', 'MOD',
            'MODULE', 'NOT', 'OF', 'OR', 'POINTER', 'PROCEDURE', 'QUALIFIED',
            'RECORD', 'REPEAT', 'RETURN', 'SET', 'THEN', 'TO', 'TYPE',
            'UNTIL', 'VAR', 'WHILE', 'WITH'
            ),
        2 => array( /* pervasive constants */
            'NIL', 'FALSE', 'TRUE',
            ),
        3 => array( /* pervasive types */
            'BITSET', 'CAP', 'CHR', 'DEC', 'DISPOSE', 'EXCL', 'FLOAT',
            'HALT', 'HIGH', 'INC', 'INCL', 'MAX', 'MIN', 'NEW', 'ODD', 'ORD',
            'SIZE', 'TRUNC', 'VAL'
            ),
        4 => array( /* pervasive functions and macros */
            'ABS', 'BOOLEAN', 'CARDINAL', 'CHAR', 'INTEGER',
            'LONGCARD', 'LONGINT', 'LONGREAL', 'PROC', 'REAL'
            ),
        ),
    'SYMBOLS' => array(
        ',', ':', '=', '+', '-', '*', '/', '#', '~'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;',
            4 => 'color: #000066; font-weight: bold;'
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;',
            'HARD' => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #0066ee;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => ''
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/providex.php0000664000175000017500000003372312014173417014547 0ustar  benbebenbe 'ProvideX',
    'COMMENT_SINGLE' => array(1 => '!'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        // Single-Line Comments using REM command
        2 => "/\bREM\b.*?$/i"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            // Directives
            '*break', '*continue', '*end', '*escape', '*next', '*proceed',
            '*retry', '*return', '*same', 'accept', 'add index', 'addr',
            'auto', 'begin', 'break', 'button', 'bye', 'call', 'case',
            'chart', 'check_box', 'class', 'clear', 'clip_board', 'close',
            'continue', 'control', 'create required', 'create table',
            'cwdir', 'data', 'day_format', 'def', 'default', 'defctl',
            'defprt', 'deftty', 'delete required', 'dictionary', 'dim', 'direct',
            'directory', 'disable', 'drop', 'drop_box', 'dump', 'edit',
            'else', 'enable', 'end switch', 'end', 'end_if', 'endtrace',
            'enter', 'erase', 'error_handler', 'escape', 'event', 'execute',
            'exit', 'exitto', 'extract', 'file', 'find', 'floating point',
            'for', 'function', 'get_file_box', 'gosub', 'goto', 'grid',
            'h_scrollbar', 'hide', 'if', 'index', 'indexed', 'input',
            'insert', 'invoke', 'iolist', 'keyed', 'let', 'like',
            'line_switch', 'list', 'list_box', 'load', 'local', 'lock',
            'long_form', 'menu_bar', 'merge', 'message_lib', 'mnemonic',
            'msgbox', 'multi_line', 'multi_media', 'next', 'object', 'obtain',
            'on', 'open', 'password', 'perform', 'pop', 'popup_menu',
            'precision', 'prefix', 'preinput', 'print', 'process', 'program',
            'property', 'purge', 'quit', 'radio_button', 'randomize',
            'read', 'record', 'redim', 'refile', 'release', 'rem', 'remove',
            'rename', 'renumber', 'repeat', 'reset', 'restore', 'retry',
            'return', 'round', 'run', 'save', 'select', 'serial', 'server',
            'set_focus', 'set_nbf', 'set_param', 'setctl', 'setday', 'setdev',
            'setdrive', 'seterr', 'setesc', 'setfid', 'setmouse', 'settime',
            'settrace', 'short_form', 'show', 'sort', 'start', 'static',
            'step', 'stop', 'switch', 'system_help', 'system_jrnl', 'table',
            'then', 'to', 'translate', 'tristate_box', 'unlock', 'until',
            'update', 'user_lex', 'v_scrollbar', 'vardrop_box', 'varlist_box',
            'via', 'video_palette', 'wait', 'wend', 'while', 'winprt_setup',
            'with', 'write'
            ),
        2 => array(
            // System Functions
            '@x', '@y', 'abs', 'acs', 'and', 'arg', 'asc', 'asn', 'ath',
            'atn', 'bin', 'bsz', 'chg', 'chr', 'cmp', 'cos', 'cpl',
            'crc', 'cse', 'ctl', 'cvs', 'dec', 'dir', 'dll', 'dsk',
            'dte', 'env', 'ept', 'err', 'evn', 'evs', 'exp', 'ffn',
            'fib', 'fid', 'fin', 'fpt', 'gap', 'gbl', 'gep', 'hsa',
            'hsh', 'hta', 'hwn', 'i3e', 'ind', 'int', 'iol', 'ior',
            'jul', 'jst', 'kec', 'kef', 'kel', 'ken', 'kep', 'key',
            'kgn', 'lcs', 'len', 'lno', 'log', 'lrc', 'lst', 'max',
            'mem', 'mid', 'min', 'mnm', 'mod', 'msg', 'msk', 'mxc',
            'mxl', 'new', 'not', 'nul', 'num', 'obj', 'opt', 'pad',
            'pck', 'pfx', 'pgm', 'pos', 'prc', 'prm', 'pth', 'pub',
            'rcd', 'rdx', 'rec', 'ref', 'rnd', 'rno', 'sep', 'sgn',
            'sin', 'sqr', 'srt', 'ssz', 'stk', 'stp', 'str', 'sub',
            'swp', 'sys', 'tan', 'tbl', 'tcb', 'tmr', 'trx', 'tsk',
            'txh', 'txw', 'ucp', 'ucs', 'upk', 'vin', 'vis', 'xeq',
            'xfa', 'xor', '_obj'
            ),
        3 => array(
            // System Variables
            // Vars that are duplicates of functions
            // 'ctl', 'err', 'pfx', 'prm', 'rnd', 'sep', 'sys',
            'bkg', 'chn', 'day', 'dlm', 'dsz', 'eom', 'ers', 'esc',
            'gfn', 'gid', 'hfn', 'hlp', 'hwd', 'lfa', 'lfo', 'lip',
            'lpg', 'lwd', 'mse', 'msl', 'nar', 'nid', 'pgn', 'psz',
            'quo', 'ret', 'sid', 'ssn', 'tim', 'tme', 'tms', 'tsm',
            'uid', 'unt', 'who'

            ),
        4 => array(
            // Nomads Variables
            '%Flmaint_Lib$', '%Flmaint_Msg$', '%Nomads_Activation_Ok',
            '%Nomads_Auto_Qry', '%Nomads_Disable_Debug',
            '%Nomads_Disable_Trace', '%Nomads_Fkey_Handler$',
            '%Nomads_Fkey_Tbl$', '%Nomads_Notest', '%Nomads_Onexit$',
            '%Nomads_Post_Display', '%Nomads_Pre_Display$',
            '%Nomads_Process$', '%Nomads_Trace_File$',
            '%Nomad_Actv_Folder_Colors$', '%Nomad_Automation_Enabled',
            '%Nomad_Auto_Close', '%Nomad_Center_Wdw', '%Nomad_Concurrent_Wdw',
            '%Nomad_Custom_Define', '%Nomad_Custom_Dir$',
            '%Nomad_Custom_Genmtc', '%Nomad_Custom_Skip_Definition',
            '%Nomad_Def_Sfx$', '%Nomad_Enter_Tab', '%Nomad_Esc_Sel',
            '%Nomad_Isjavx', '%Nomad_Iswindx', '%Nomad_Iswindx$',
            '%Nomad_Menu$', '%Nomad_Menu_Leftedge_Clr$',
            '%Nomad_Menu_Textbackground_Clr$', '%Nomad_Mln_Sep$',
            '%Nomad_Msgmnt$', '%Nomad_Noplusw', '%Nomad_No_Customize',
            '%Nomad_Object_Persistence', '%Nomad_Object_Resize',
            '%Nomad_Open_Load', '%Nomad_Override_Font$',
            '%Nomad_Palette_Loaded', '%Nomad_Panel_Info_Force',
            '%Nomad_Panel_Info_Prog$', '%Nomad_Pnl_Def_Colour$',
            '%Nomad_Pnl_Def_Font$', '%Nomad_Prg_Cache', '%Nomad_Qry_Attr$',
            '%Nomad_Qry_Btn$', '%Nomad_Qry_Clear_Start', '%Nomad_Qry_Tip$',
            '%Nomad_Qry_Wide', '%Nomad_Query_Clear_Status', '%Nomad_Query_Kno',
            '%Nomad_Query_No_Gray', '%Nomad_Query_Odb_Ignore',
            '%Nomad_Query_Retkno', '%Nomad_Query_Sbar_Max',
            '%Nomad_Relative_Wdw', '%Nomad_Save_Qry_Path', '%Nomad_Script_Fn',
            '%Nomad_Script_Log', '%Nomad_Script_Wdw',
            '%Nomad_Skip_Change_Logic', '%Nomad_Skip_Onselect_Logic',
            '%Nomad_Stk$', '%Nomad_Tab_Dir', '%Nomad_Timeout',
            '%Nomad_Turbo_Off', '%Nomad_Visual_Effect',
            '%Nomad_Visual_Override', '%Nomad_Win_Ver', '%Nomad_Xchar',
            '%Nomad_Xmax', '%Nomad_Ychar', '%Nomad_Ymax', '%Scr_Def_Attr$',
            '%Scr_Def_H_Fl$', '%Scr_Def_H_Id$', '%Scr_Lib', '%Scr_Lib$',
            '%Z__Usr_Sec$', 'Alternate_Panel$', 'Alternate_Panel_Type$',
            'Arg_1$', 'Arg_10$', 'Arg_11$', 'Arg_12$', 'Arg_13$', 'Arg_14$',
            'Arg_15$', 'Arg_16$', 'Arg_17$', 'Arg_18$', 'Arg_19$', 'Arg_2$',
            'Arg_20$', 'Arg_3$', 'Arg_4$', 'Arg_5$', 'Arg_6$', 'Arg_7$',
            'Arg_8$', 'Arg_9$', 'Change_Flg', 'Cmd_Str$', 'Default_Prog$',
            'Disp_Cmd$', 'Entire_Record$', 'Exit_Cmd$', 'Fldr_Default_Prog$',
            'Folder_Id$', 'Id', 'Id$', 'Ignore_Exit', 'Initialize_Flg',
            'Init_Text$', 'Init_Val$', 'Main_Scrn_K$', 'Mnu_Ln$',
            'Next_Folder', 'Next_Id', 'Next_Id$', 'No_Flush', 'Prime_Key$',
            'Prior_Val', 'Prior_Val$', 'Qry_Val$', 'Refresh_Flg',
            'Replacement_Folder$', 'Replacement_Lib$', 'Replacement_Scrn$',
            'Scrn_Id$', 'Scrn_K$', 'Scrn_Lib$', 'Tab_Table$', '_Eom$'
            ),
        5 => array(
            // Mnemonics
            "'!w'", "'*c'", "'*h'", "'*i'", "'*o'", "'*r'", "'*x'",
            "'+b'", "'+d'", "'+e'", "'+f'", "'+i'", "'+n'",
            "'+p'", "'+s'", "'+t'", "'+u'", "'+v'", "'+w'", "'+x'",
            "'+z'", "'-b'", "'-d'", "'-e'", "'-f'", "'-i'",
            "'-n'", "'-p'", "'-s'", "'-t'", "'-u'", "'-v'", "'-w'",
            "'-x'", "'-z'", "'2d'", "'3d'", "'4d'", "'@@'", "'ab'",
            "'arc'", "'at'", "'backgr'", "'bb'", "'be'", "'beep'",
            "'bg'", "'bi'", "'bj'", "'bk'", "'black'", "'blue'",
            "'bm'", "'bo'", "'box'", "'br'", "'bs'", "'bt'", "'bu'",
            "'bw'", "'bx'", "'caption'", "'ce'", "'cf'", "'ch'",
            "'ci'", "'circle'", "'cl'", "'colour'", "'cp'", "'cpi'",
            "'cr'", "'cs'", "'cursor'", "'cyan''_cyan'", "'dc'",
            "'default'", "'df'", "'dialogue'", "'dn'", "'do'",
            "'drop'", "'eb'", "'ee'", "'ef'", "'eg'", "'ei'", "'ej'",
            "'el'", "'em'", "'eo'", "'ep'", "'er'", "'es'", "'et'",
            "'eu'", "'ew'", "'ff'", "'fill'", "'fl'", "'font'",
            "'frame'", "'gd'", "'ge'", "'gf'", "'goto'", "'green'",
            "'gs'", "'hide'", "'ic'", "'image'", "'jc'",
            "'jd'", "'jl'", "'jn'", "'jr'", "'js'", "'l6'", "'l8'",
            "'lc'", "'ld'", "'lf'", "'li'", "'line'", "'lm'",
            "'lpi'", "'lt'", "'magenta'", "'maxsize'", "'me'",
            "'message'", "'minsize'", "'mn'", "'mode'",
            "'move'", "'mp'", "'ms'", "'ni'", "'offset'", "'option'",
            "'pe'", "'pen'", "'picture'", "'pie'", "'pm'", "'polygon'",
            "'pop'", "'ps'", "'push'", "'rb'", "'rc'", "'rectangle'",
            "'red'", "'rl'", "'rm'", "'rp'", "'rs'", "'rt'", "'sb'",
            "'scroll'", "'sd'", "'se'", "'sf'", "'show'", "'size'",
            "'sl'", "'sn'", "'sp'", "'sr'", "'swap'", "'sx'", "'text'",
            "'textwdw'", "'tr'", "'tw'", "'uc'", "'up'", "'vt'", "'wa'",
            "'wc'", "'wd'", "'wg'", "'white'", "'window'", "'wm'",
            "'wp'", "'wr'", "'wrap'", "'ws'", "'wx'", "'xp'", "'yellow'",
            "'zx'", "'_black'", "'_blue'", "'_colour'", "'_green'",
            "'_magenta'", "'_red'", "'_white'", "'_yellow'"
            ),
        ),
    'SYMBOLS' => array(
        0 => array('+', '-', '*', '/', '^', '|'),
        1 => array('++', '--', '+=', '-=', '*=', '/=', '^=', '|='),
        2 => array('<', '>', '='),
        3 => array('(', ')', '[', ']', '{', '}'),
        4 => array(',', '@', ';', '\\')
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: navy;', // Directives
            2 => 'color: blue;', // System Functions
            3 => 'color: blue;', // System Variables
            4 => 'color: #6A5ACD; font-style: italic;', // Nomads Global Variables
            5 => 'color: #BDB76B;', // Mnemonics
            ),
        'COMMENTS' => array(
            1 => 'color: #008080; font-style: italic;',
            2 => 'color: #008080;',
            'MULTI' => 'color: #008080; font-style: italic;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000066;'
            ),
        'STRINGS' => array(
            0 => 'color: green;'
            ),
        'NUMBERS' => array(
            0 => 'color: #00008B;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #008000;',
            1 => 'color: #000099;',
            2 => 'color: #000099;',
            3 => 'color: #0000C9;',
            4 => 'color: #000099;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            1 => 'color: #006400; font-weight: bold',
            2 => 'color: #6A5ACD;'
            )
        ),
    'URLS' => array(
        1 => 'http://www.allbasic.info./wiki/index.php/PX:Directive_{FNAME}',
        2 => 'http://www.allbasic.info./wiki/index.php/PX:System_function_{FNAME}',
        3 => 'http://www.allbasic.info./wiki/index.php/PX:System_variable_{FNAME}',
        4 => 'http://www.allbasic.info./wiki/index.php/PX:Nomads_{FNAME}',
        5 => 'http://www.allbasic.info./wiki/index.php/PX:Mnemonic_{FNAMEU}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => "'"
        ),
    'REGEXPS' => array(
        1 => array(
            // Line Labels
            GESHI_SEARCH => '([[:space:]])([a-zA-Z_][a-zA-Z0-9_]+)(:)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        2 => array(
            // Global String Variables
            GESHI_SEARCH => '(\%)([a-zA-Z_][a-zA-Z0-9_]+)(\$)',
            GESHI_REPLACE => '\\1\\2\\3',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'NUMBERS' => GESHI_NEVER
            )
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/newlisp.php0000664000175000017500000001772212014173450014366 0ustar  benbebenbe 'newlisp',
    'COMMENT_SINGLE' => array(1 => ';', 2 => '#'),
    'COMMENT_MULTI' => array('[text]' => '[/text]', '{' => '}'), // also used for strings
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'NUMBERS' => GESHI_NUMBER_INT_BASIC |  GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_SCI_ZERO,
    'TAB_WIDTH' => 2,
    'KEYWORDS' => array(
        1 => array(
            'NaN?','abort','abs','acos','acosh','add','address','amb','and',
            'append','append-file','apply','args','array','array-list','array?',
            'asin','asinh','assoc','atan','atan2','atanh','atom?','base64-dec',
            'base64-enc','bayes-query','bayes-train','begin','beta','betai',
            'bind','binomial','bits','callback','case','catch','ceil',
            'change-dir','char','chop','clean','close','command-event','cond',
            'cons','constant','context','context?','copy','copy-file','cos',
            'cosh','count','cpymem','crc32','crit-chi2','crit-z','current-line',
            'curry','date','date-value','debug','dec','def-new','default',
            'define','define-macro','delete','delete-file','delete-url',
            'destroy','det','device','difference','directory','directory?',
            'div','do-until','do-while','doargs','dolist','dostring','dotimes',
            'dotree','dump','dup','empty?','encrypt','ends-with','env','erf',
            'error-event','estack','eval','eval-string','exec','exists','exit',
            'exp','expand','explode','factor','fft','file-info','file?',
            'filter','find','find-all','first','flat','float','float?','floor',
            'flt','for','for-all','fork','format','fv','gammai','gammaln','gcd',
            'get-char','get-float','get-int','get-long','get-string','get-url',
            'global','global?','if','if-not','ifft','import','inc','index',
            'inf?','int','integer','integer?','intersect','invert','irr','join',
            'lambda','lambda?','last','last-error','legal?','length','let',
            'letex','letn','list','list?','load','local','log','lookup',
            'lower-case','macro?','main-args','make-dir','map','mat','match',
            'max','member','min','mod','mul','multiply','name','net-accept',
            'net-close','net-connect','net-error','net-eval','net-interface',
            'net-listen','net-local','net-lookup','net-peek','net-peer',
            'net-ping','net-receive','net-receive-from','net-receive-udp',
            'net-select','net-send','net-send-to','net-send-udp','net-service',
            'net-sessions','new','nil','nil?','normal','not','now','nper','npv',
            'nth','null?','number?','open','or','pack','parse','parse-date',
            'peek','pipe','pmt','pop','pop-assoc','post-url','pow',
            'pretty-print','primitive?','print','println','prob-chi2','prob-z',
            'process','prompt-event','protected?','push','put-url','pv','quote',
            'quote?','rand','random','randomize','read-buffer','read-char',
            'read-expr','read-file','read-key','read-line','read-utf8',
            'real-path','receive','ref','ref-all','regex','regex-comp',
            'remove-dir','rename-file','replace','reset','rest','reverse',
            'rotate','round','save','search','seed','seek','select','semaphore',
            'send','sequence','series','set','set-locale','set-ref',
            'set-ref-all','setf','setq','sgn','share','signal','silent','sin',
            'sinh','sleep','slice','sort','source','spawn','sqrt','starts-with',
            'string','string?','sub','swap','sym','symbol?','symbols','sync',
            'sys-error','sys-info','tan','tanh','throw','throw-error','time',
            'time-of-day','timer','title-case','trace','trace-highlight',
            'transpose','trim','true','true?','unicode','unify','unique',
            'unless','unpack','until','upper-case','utf8','utf8len','uuid',
            'wait-pid','when','while','write-buffer','write-char','write-file',
            'write-line','xfer-event','xml-error','xml-parse','xml-type-tags',
            'zero?'
            )
        ),
    'SYMBOLS' => array(
        0 => array(
            '(', ')','\''
            ),
        1 => array(
            '!','!=','$','%','&','*','+','-','/',':',
            '<','<<','<=','=','>','>=','>>','^','|'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000AA;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #00aa00; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #009900;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #009900;'
            ),
        'NUMBERS' => array(
            0 => 'color: #777700;'
            ),
        'METHODS' => array(
            0 => 'color: #000099;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #AA0000;',
            1 => 'color: #0000AA;'
            ),
        'REGEXPS' => array(
            0 => 'color: #00aa00;',
            1 => 'color: #00aa00;',
            2 => 'color: #00aa00;',
            3 => 'color: #00aa00;',
            4 => 'color: #00aa00;',
            5 => 'color: #AA0000;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => 'http://www.newlisp.org/downloads/newlisp_manual.html#{FNAME}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(':'),
    'REGEXPS' => array(
        // tags in newlispdoc
        0 => "\s+@\S*?\s+",
        // dollar sign symbols
        1 => "[\\$]\w*",
        // curly-braced string literals
        2 => "{[^{}]*?}",
        // [text] multi-line strings
        3 => "(?s)\[text\].*\[\/text\](?-s)",
        // [code] multi-line blocks
        4 => "(?s)\[code\].*\[\/code\](?-s)",
        // variable references
        5 => "'[\w\-]+"
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'OOLANG' => array(
            'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*'
            ),
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => '(?<=[^\w\-])',
            )
        ),

);

?>geshi/geshi/algol68.php0000664000175000017500000005047412014173437014167 0ustar  benbebenbe $prebits.$LONGS."(?:".$bl.")".$postbits,
            "INT" => $preint.$LONGS."(?:".$il.")".$postint,
            "REAL" => $prereal.$LONGS."(?:".$rl.")".$postreal,

            "BOLD" => 'color: #b1b100; font-weight: bold;',
            "ITALIC" => 'color: #b1b100;', # procedures traditionally italic #
            "NONSTD" => 'color: #FF0000; font-weight: bold;', # RED #
            "COMMENT" => 'color: #666666; font-style: italic;'
        );
    }
}
$a68=geshi_langfile_algol68_vars();

$language_data = array(
    'LANG_NAME' => 'ALGOL 68',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(
        '¢' => '¢',
        '£' => '£',
        '#' => '#',
        ),
    'COMMENT_REGEXP' => array(
        1 => '/\bCO((?:MMENT)?)\b.*?\bCO\\1\b/i',
        2 => '/\bPR((?:AGMAT)?)\b.*?\bPR\\1\b/i',
        3 => '/\bQUOTE\b.*?\bQUOTE\b/i'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '"',
    'NUMBERS' => GESHI_NUMBER_HEX_SUFFIX,  # Warning: Feature!! #
#                GESHI_NUMBER_HEX_SUFFIX, # Attempt ignore default #
    'KEYWORDS' => array(
# Extensions
        1 => array('KEEP', 'FINISH', 'USE', 'SYSPROCS', 'IOSTATE', 'USING', 'ENVIRON', 'PROGRAM', 'CONTEXT'),
#        2 => array('CASE', 'IN', 'OUSE', 'IN', 'OUT', 'ESAC', '(', '|', '|:', ')', 'FOR', 'FROM', 'TO', 'BY', 'WHILE', 'DO', 'OD', 'IF', 'THEN', 'ELIF', 'THEN', 'ELSE', 'FI', 'PAR', 'BEGIN', 'EXIT', 'END', 'GO', 'GOTO', 'FORALL', 'UPTO', 'DOWNTO', 'FOREACH', 'ASSERT'), #
        2 => array('CASE', 'IN', 'OUSE', /* 'IN',*/ 'OUT', 'ESAC', 'PAR', 'BEGIN', 'EXIT', 'END', 'GO TO', 'GOTO', 'FOR', 'FROM', 'TO', 'BY', 'WHILE', 'DO', 'OD', 'IF', 'THEN', 'ELIF', /* 'THEN',*/ 'ELSE', 'FI' ),
        3 => array('BITS', 'BOOL', 'BYTES', 'CHAR', 'COMPL', 'INT', 'REAL', 'SEMA', 'STRING', 'VOID'),
        4 => array('MODE', 'OP', 'PRIO', 'PROC', 'FLEX', 'HEAP', 'LOC', 'REF', 'LONG', 'SHORT', 'EITHER'),
# Extensions or deprecated keywords
# 'PIPE': keyword somehow interferes with the internal operation of GeSHi
        5 => array('FORALL', 'UPTO', 'DOWNTO', 'FOREACH', 'ASSERT', 'CTB', 'CT', 'CTAB', 'COMPLEX', 'VECTOR', 'SOUND' /*, 'PIPE'*/),
        6 => array('CHANNEL', 'FILE', 'FORMAT', 'STRUCT', 'UNION', 'OF'),
# '(', '|', '|:', ')',  #
#        7 => array('OF', 'AT', '@', 'IS', ':=:', 'ISNT', ':/=:', ':≠:', 'CTB', 'CT', '::', 'CTAB', '::=', 'TRUE', 'FALSE', 'EMPTY', 'NIL', '○', 'SKIP', '~'),
        7 => array('AT', 'IS', 'ISNT', 'TRUE', 'FALSE', 'EMPTY', 'NIL', 'SKIP'),
        8 => array('NOT', 'UP', 'DOWN', 'LWB', 'UPB', /* '-',*/ 'ABS', 'ARG', 'BIN', 'ENTIER', 'LENG', 'LEVEL', 'ODD', 'REPR', 'ROUND', 'SHORTEN', 'CONJ', 'SIGN'),
# OPERATORS ordered roughtly by PRIORITY #
#       9 => array('¬', '↑', '↓', '⌊', '⌈', '~', '⎩', '⎧'),
#        10 => array('+*', 'I', '+×', '⊥', '!', '⏨'),
        10 => array('I'),
#        11 => array('SHL', 'SHR', '**', 'UP', 'DOWN', 'LWB', 'UPB', '↑', '↓', '⌊', '⌈', '⎩', '⎧'),
        11 => array('SHL', 'SHR', /*'UP', 'DOWN', 'LWB', 'UPB'*/),
#        12 => array('*', '/', '%', 'OVER', '%*', 'MOD', 'ELEM', '×', '÷', '÷×', '÷*', '%×', '□', '÷:'),
        12 => array('OVER', 'MOD', 'ELEM'),
#        13 => array('-', '+'),
#        14 => array('<', 'LT', '<=', 'LE', '>=', 'GE', '>', 'GT', '≤', '≥'),
        14 => array('LT', 'LE', 'GE', 'GT'),
#        15 => array('=', 'EQ', '/=', 'NE', '≠', '~='),
        15 => array('EQ', 'NE'),
#        16 => array('&', 'AND', '∧', 'OR', '∨', '/\\', '\\/'),
        16 => array('AND', 'OR'),
        17 => array('MINUSAB', 'PLUSAB', 'TIMESAB', 'DIVAB', 'OVERAB', 'MODAB', 'PLUSTO'),
#        18 => array('-:=', '+:=', '*:=', '/:=', '%:=', '%*:=', '+=:', '×:=', '÷:=', '÷×:=', '÷*:=', '%×:=', '÷::=', 'MINUS', 'PLUS', 'DIV', 'MOD', 'PRUS'),
# Extensions or deprecated keywords
        18 => array('MINUS', 'PLUS', 'DIV', /* 'MOD',*/ 'PRUS', 'IS NOT'),
# Extensions or deprecated keywords
        19 => array('THEF', 'ANDF', 'ORF', 'ANDTH', 'OREL', 'ANDTHEN', 'ORELSE'),
# Built in procedures - from standard prelude #
        20 => array('int lengths', 'intlengths', 'int shorths', 'intshorths', 'max int', 'maxint', 'real lengths', 'reallengths', 'real shorths', 'realshorths', 'bits lengths', 'bitslengths', 'bits shorths', 'bitsshorths', 'bytes lengths', 'byteslengths', 'bytes shorths', 'bytesshorths', 'max abs char', 'maxabschar', 'int width', 'intwidth', 'long int width', 'longintwidth', 'long long int width', 'longlongintwidth', 'real width', 'realwidth', 'long real width', 'longrealwidth', 'long long real width', 'longlongrealwidth', 'exp width', 'expwidth', 'long exp width', 'longexpwidth', 'long long exp width', 'longlongexpwidth', 'bits width', 'bitswidth', 'long bits width', 'longbitswidth', 'long long bits width', 'longlongbitswidth', 'bytes width', 'byteswidth', 'long bytes width', 'longbyteswidth', 'max real', 'maxreal', 'small real', 'smallreal', 'long max int', 'longmaxint', 'long long max int', 'longlongmaxint', 'long max real', 'longmaxreal', 'long small real', 'longsmallreal', 'long long max real', 'longlongmaxreal', 'long long small real', 'longlongsmallreal', 'long max bits', 'longmaxbits', 'long long max bits', 'longlongmaxbits', 'null character', 'nullcharacter', 'blank', 'flip', 'flop', 'error char', 'errorchar', 'exp char', 'expchar', 'newline char', 'newlinechar', 'formfeed char', 'formfeedchar', 'tab char', 'tabchar'),
        21 => array('stand in channel', 'standinchannel', 'stand out channel', 'standoutchannel', 'stand back channel', 'standbackchannel', 'stand draw channel', 'standdrawchannel', 'stand error channel', 'standerrorchannel'),
        22 => array('put possible', 'putpossible', 'get possible', 'getpossible', 'bin possible', 'binpossible', 'set possible', 'setpossible', 'reset possible', 'resetpossible', 'reidf possible', 'reidfpossible', 'draw possible', 'drawpossible', 'compressible', 'on logical file end', 'onlogicalfileend', 'on physical file end', 'onphysicalfileend', 'on line end', 'onlineend', 'on page end', 'onpageend', 'on format end', 'onformatend', 'on value error', 'onvalueerror', 'on open error', 'onopenerror', 'on transput error', 'ontransputerror', 'on format error', 'onformaterror', 'open', 'establish', 'create', 'associate', 'close', 'lock', 'scratch', 'space', 'new line', 'newline', 'print', 'write f', 'writef', 'print f', 'printf', 'write bin', 'writebin', 'print bin', 'printbin', 'read f', 'readf', 'read bin', 'readbin', 'put f', 'putf', 'get f', 'getf', 'make term', 'maketerm', 'make device', 'makedevice', 'idf', 'term', 'read int', 'readint', 'read long int', 'readlongint', 'read long long int', 'readlonglongint', 'read real', 'readreal', 'read long real', 'readlongreal', 'read long long real', 'readlonglongreal', 'read complex', 'readcomplex', 'read long complex', 'readlongcomplex', 'read long long complex', 'readlonglongcomplex', 'read bool', 'readbool', 'read bits', 'readbits', 'read long bits', 'readlongbits', 'read long long bits', 'readlonglongbits', 'read char', 'readchar', 'read string', 'readstring', 'print int', 'printint', 'print long int', 'printlongint', 'print long long int', 'printlonglongint', 'print real', 'printreal', 'print long real', 'printlongreal', 'print long long real', 'printlonglongreal', 'print complex', 'printcomplex', 'print long complex', 'printlongcomplex', 'print long long complex', 'printlonglongcomplex', 'print bool', 'printbool', 'print bits', 'printbits', 'print long bits', 'printlongbits', 'print long long bits', 'printlonglongbits', 'print char', 'printchar', 'print string', 'printstring', 'whole', 'fixed', 'float'),
        23 => array('pi', 'long pi', 'longpi', 'long long pi', 'longlongpi'),
        24 => array('sqrt', 'curt', 'cbrt', 'exp', 'ln', 'log', 'sin', 'arc sin', 'arcsin', 'cos', 'arc cos', 'arccos', 'tan', 'arc tan', 'arctan', 'long sqrt', 'longsqrt', 'long curt', 'longcurt', 'long cbrt', 'longcbrt', 'long exp', 'longexp', 'long ln', 'longln', 'long log', 'longlog', 'long sin', 'longsin', 'long arc sin', 'longarcsin', 'long cos', 'longcos', 'long arc cos', 'longarccos', 'long tan', 'longtan', 'long arc tan', 'longarctan', 'long long sqrt', 'longlongsqrt', 'long long curt', 'longlongcurt', 'long long cbrt', 'longlongcbrt', 'long long exp', 'longlongexp', 'long long ln', 'longlongln', 'long long log', 'longlonglog', 'long long sin', 'longlongsin', 'long long arc sin', 'longlongarcsin', 'long long cos', 'longlongcos', 'long long arc cos', 'longlongarccos', 'long long tan', 'longlongtan', 'long long arc tan', 'longlongarctan'),
        25 => array('first random', 'firstrandom', 'next random', 'nextrandom', 'long next random', 'longnextrandom', 'long long next random', 'longlongnextrandom'),
        26 => array('real', 'bits pack', 'bitspack', 'long bits pack', 'longbitspack', 'long long bits pack', 'longlongbitspack', 'bytes pack', 'bytespack', 'long bytes pack', 'longbytespack', 'char in string', 'charinstring', 'last char in string', 'lastcharinstring', 'string in string', 'stringinstring'),
        27 => array('utc time', 'utctime', 'local time', 'localtime', 'argc', 'argv', 'get env', 'getenv', 'reset errno', 'reseterrno', 'errno', 'strerror'),
        28 => array('sinh', 'long sinh', 'longsinh', 'long long sinh', 'longlongsinh', 'arc sinh', 'arcsinh', 'long arc sinh', 'longarcsinh', 'long long arc sinh', 'longlongarcsinh', 'cosh', 'long cosh', 'longcosh', 'long long cosh', 'longlongcosh', 'arc cosh', 'arccosh', 'long arc cosh', 'longarccosh', 'long long arc cosh', 'longlongarccosh', 'tanh', 'long tanh', 'longtanh', 'long long tanh', 'longlongtanh', 'arc tanh', 'arctanh', 'long arc tanh', 'longarctanh', 'long long arc tanh', 'longlongarctanh', 'arc tan2', 'arctan2', 'long arc tan2', 'longarctan2', 'long long arc tan2', 'longlongarctan2'),
        29 => array('complex sqrt', 'complexsqrt', 'long complex sqrt', 'longcomplexsqrt', 'long long complex sqrt', 'longlongcomplexsqrt', 'complex exp', 'complexexp', 'long complex exp', 'longcomplexexp', 'long long complex exp', 'longlongcomplexexp', 'complex ln', 'complexln', 'long complex ln', 'longcomplexln', 'long long complex ln', 'longlongcomplexln', 'complex sin', 'complexsin', 'long complex sin', 'longcomplexsin', 'long long complex sin', 'longlongcomplexsin', 'complex arc sin', 'complexarcsin', 'long complex arc sin', 'longcomplexarcsin', 'long long complex arc sin', 'longlongcomplexarcsin', 'complex cos', 'complexcos', 'long complex cos', 'longcomplexcos', 'long long complex cos', 'longlongcomplexcos', 'complex arc cos', 'complexarccos', 'long complex arc cos', 'longcomplexarccos', 'long long complex arc cos', 'longlongcomplexarccos', 'complex tan', 'complextan', 'long complex tan', 'longcomplextan', 'long long complex tan', 'longlongcomplextan', 'complex arc tan', 'complexarctan', 'long complex arc tan', 'longcomplexarctan', 'long long complex arc tan', 'longlongcomplexarctan', 'complex sinh', 'complexsinh', 'complex arc sinh', 'complexarcsinh', 'complex cosh', 'complexcosh', 'complex arc cosh', 'complexarccosh', 'complex tanh', 'complextanh', 'complex arc tanh', 'complexarctanh')
        ),
    'SYMBOLS' => array(
        1 => array( /* reverse length sorted... */ '÷×:=', '%×:=', ':≠:', '÷*:=', '÷::=', '%*:=', ':/=:', '×:=', '÷:=', '÷×', '%:=', '%×', '*:=', '+:=', '+=:', '+×', '-:=', '/:=', '::=', ':=:', '÷*', '÷:', '↑', '↓', '∧', '∨', '≠', '≤', '≥', '⊥', '⌈', '⌊', '⎧', '⎩', /* '⏨', */ '□', '○', '%*', '**', '+*', '/=', '::', '/\\', '\\/', '<=', '>=', '|:', '~=', '¬', '×', '÷', '!', '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '?', '@', '[', ']', '^', '{', '|', '}', '~')
    ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
#        9 => true,
        10 => true,
        11 => true,
        12 => true,
#        13 => true,
        14 => true,
        15 => true,
        16 => true,
        17 => true,
        18 => true,
        19 => true,
        20 => true,
        21 => true,
        22 => true,
        23 => true,
        24 => true,
        25 => true,
        26 => true,
        27 => true,
        28 => true,
        29 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => $a68['NONSTD'], 2 => $a68['BOLD'], 3 => $a68['BOLD'], 4 => $a68['BOLD'],
            5 => $a68['NONSTD'], 6 => $a68['BOLD'], 7 => $a68['BOLD'], 8 => $a68['BOLD'],
            /* 9 => $a68['BOLD'],*/ 10 => $a68['BOLD'], 11 => $a68['BOLD'], 12 => $a68['BOLD'],
            /* 13 => $a68['BOLD'],*/ 14 => $a68['BOLD'], 15 => $a68['BOLD'], 16 => $a68['BOLD'], 17 => $a68['BOLD'],
            18 => $a68['NONSTD'], 19 => $a68['NONSTD'],
            20 => $a68['ITALIC'], 21 => $a68['ITALIC'], 22 => $a68['ITALIC'], 23 => $a68['ITALIC'],
            24 => $a68['ITALIC'], 25 => $a68['ITALIC'], 26 => $a68['ITALIC'], 27 => $a68['ITALIC'],
            28 => $a68['ITALIC'], 29 => $a68['ITALIC']
            ),
        'COMMENTS' => array(
            1 => $a68['COMMENT'], 2 => $a68['COMMENT'], 3 => $a68['COMMENT'], /* 4 => $a68['COMMENT'],
            5 => $a68['COMMENT'],*/ 'MULTI' => $a68['COMMENT']
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;',
            1 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(
            0  => 'color: #cc66cc;',   # BITS #
            1  => 'color: #cc66cc;',   # REAL #
            /* 2  => 'color: #cc66cc;',   # INT # */
            ),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
#        9 => '',
        10 => '',
        11 => '',
        12 => '',
#        13 => '',
        14 => '',
        15 => '',
        16 => '',
        17 => '',
        18 => '',
        19 => '',
        20 => '',
        21 => '',
        22 => '',
        23 => '',
        24 => '',
        25 => '',
        26 => '',
        27 => '',
        28 => '',
        29 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        0 => '→',
        1 => 'OF'
        ),
    'REGEXPS' => array(
        0 => $a68['BITS'],
        1 => $a68['REAL']
        # 2 => $a68['INT'], # Breaks formatting for some reason #
        # 2 => $GESHI_NUMBER_INT_BASIC # Also breaks formatting  #
    ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array()
);

unset($a68);
?>geshi/geshi/bnf.php0000664000175000017500000000731112014173377013453 0ustar  benbebenbe 'bnf',
    'COMMENT_SINGLE' => array(';'),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'"),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(),
    'SYMBOLS' => array(
        0 => array('(', ')'),
        1 => array('<', '>'),
        2 => array('[', ']'),
        3 => array('{', '}'),
        4 => array('=', '*', '/', '|', ':'),
    ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false
    ),
    'STYLES' => array(
        'KEYWORDS' => array(),
        'COMMENTS' => array(
            0 => 'color: #666666; font-style: italic;', // Single Line comments
            ),
        'ESCAPE_CHAR' => array(
            0 => ''
            ),
        'BRACKETS' => array(
            0 => ''
            ),
        'STRINGS' => array(
            0 => 'color: #a00;',
            1 => 'color: #a00;'
            ),
        'NUMBERS' => array(
            0 => ''
            ),
        'METHODS' => array(
            0 => ''
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066; font-weight: bold;', // Round brackets
            1 => 'color: #000066; font-weight: bold;', // Angel Brackets
            2 => 'color: #000066; font-weight: bold;', // Square Brackets
            3 => 'color: #000066; font-weight: bold;', // BRaces
            4 => 'color: #006600; font-weight: bold;', // Other operator symbols
        ),
        'REGEXPS' => array(
            0 => 'color: #007;',
            ),
        'SCRIPT' => array(
            0 => ''
            )
        ),
    'URLS' => array(),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(
        //terminal symbols
        0 => array(
            GESHI_SEARCH => '(<)([^&]+?)(>)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => '',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/cuesheet.php0000664000175000017500000001005212014173445014503 0ustar  benbebenbe 'Cuesheet',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        //Single-Line Comments using REM command
        1 => "/(?<=\bREM\b).*?$/im",
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'CATALOG','CDTEXTFILE','FILE','FLAGS','INDEX','ISRC','PERFORMER',
            'POSTGAP','PREGAP','REM','SONGWRITER','TITLE','TRACK'
            ),
        2 => array(
            'AIFF', 'BINARY', 'MOTOROLA', 'MP3', 'WAVE'
            ),
        3 => array(
            '4CH', 'DCP', 'PRE', 'SCMS'
            ),
        4 => array(
            'AUDIO', 'CDG', 'MODE1/2048', 'MODE1/2336', 'MODE2/2336',
            'MODE2/2352', 'CDI/2336', 'CDI/2352'
            )
        ),
    'SYMBOLS' => array(
        ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000066; font-weight: bold;',
            3 => 'color: #000066; font-weight: bold;',
            4 => 'color: #000066; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080;',
            ),
        'BRACKETS' => array(
            0 => 'color: #0000ff;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #006600;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099;'
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            1 => 'color: #000099;',
            2 => 'color: #009900;',
            )
        ),
    'URLS' => array(
        1 => 'http://digitalx.org/cuesheetsyntax.php#{FNAMEL}',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        2 => '\b[A-Za-z0-9]{5}\d{7}\b',
        1 => '(?<=[\s:]|^)\d+(?=[\s:]|$)',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 2,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => '(? '(?![\w\.])',
            )
        )
);

?>geshi/geshi/whitespace.php0000664000175000017500000000663712014173411015041 0ustar  benbebenbe 'Whitespace',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        3 => "/[^\n\x20\x09]+/s"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array(),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            ),
        'COMMENTS' => array(
            3 => 'color: #666666; font-style: italic;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            ),
        'ESCAPE_CHAR' => array(
            ),
        'SCRIPT' => array(
            ),
        'REGEXPS' => array(
            2 => 'background-color: #FF9999;',
            3 => 'background-color: #9999FF;'
            )
        ),
    'URLS' => array(
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        2 => array(
            GESHI_SEARCH => "(? " ",
            GESHI_MODIFIERS => 's',
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            ),
        3 => array(
            GESHI_SEARCH => "\x09",
            GESHI_REPLACE => "	",
            GESHI_MODIFIERS => 's',
            GESHI_BEFORE => "",
            GESHI_AFTER => ""
            ),
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'ENABLE_FLAGS' => array(
            'KEYWORDS' => GESHI_NEVER,
            'SYMBOLS' => GESHI_NEVER,
            'STRINGS' => GESHI_NEVER,
//            'REGEXPS' => GESHI_NEVER,
            'NUMBERS' => GESHI_NEVER
            )
        )
);

?>
geshi/geshi/ocaml.php0000664000175000017500000002033512014173403013770 0ustar  benbebenbe 'OCaml',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('(*' => '*)'),
    'COMMENT_REGEXP' => array(1 => '/\(\*(?:(?R)|.)+?\*\)/s'),
    'CASE_KEYWORDS' => 0,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => "",
    'KEYWORDS' => array(
        /* main OCaml keywords */
        1 => array(
            'and', 'as', 'asr', 'begin', 'class', 'closed', 'constraint', 'do', 'done', 'downto', 'else',
            'end', 'exception', 'external', 'failwith', 'false', 'for', 'fun', 'function', 'functor',
            'if', 'in', 'include', 'inherit',  'incr', 'land', 'let', 'load', 'los', 'lsl', 'lsr', 'lxor',
            'match', 'method', 'mod', 'module', 'mutable', 'new', 'not', 'of', 'open', 'option', 'or', 'parser',
            'private', 'ref', 'rec', 'raise', 'regexp', 'sig', 'struct', 'stdout', 'stdin', 'stderr', 'then',
            'to', 'true', 'try', 'type', 'val', 'virtual', 'when', 'while', 'with'
            ),
        /* define names of main librarys, so we can link to it */
        2 => array(
            'Arg', 'Arith_status', 'Array', //'Array1', 'Array2', 'Array3',
            'ArrayLabels', 'Big_int', 'Bigarray', 'Buffer', 'Callback',
            'CamlinternalLazy', 'CamlinternalMod', 'CamlinternalOO', 'Char',
            'Complex', 'Condition', 'Dbm', 'Digest', 'Dynlink', 'Event',
            'Filename', 'Format', 'Gc', 'Genlex', 'Graphics', 'GraphicsX11',
            'Hashtbl', 'Int32', 'Int64', 'Lazy', 'Lexing', 'List', 'ListLabels',
            'Map', 'Marshal', 'MoreLabels', 'Mutex', 'Nativeint', 'Num', 'Obj',
            'Oo', 'Parsing', 'Pervasives', 'Printexc', 'Printf', 'Queue',
            'Random', 'Scanf', 'Set', 'Sort', 'Stack', 'StdLabels', 'Str',
            'Stream', 'String', 'StringLabels', 'Sys', 'Thread', 'ThreadUnix',
            'Tk', 'Unix', 'UnixLabels', 'Weak'
            ),
        /* just link to the Pervasives functions library, cause it's the default opened library when starting OCaml */
        3 => array(
            'abs', 'abs_float', 'acos', 'asin', 'at_exit', 'atan', 'atan2',
            'bool_of_string', 'ceil', 'char_of_int', 'classify_float',
            'close_in', 'close_in_noerr', 'close_out', 'close_out_noerr',
            'compare', 'cos', 'cosh', 'decr', 'epsilon_float', 'exit', 'exp',
            'float', 'float_of_int', 'float_of_string', 'floor', 'flush',
            'flush_all', 'format_of_string', 'frexp', 'fst', 'ignore',
            'in_channel_length', 'infinity', 'input', 'input_binary_int',
            'input_byte', 'input_char', 'input_line', 'input_value',
            'int_of_char', 'int_of_float', 'int_of_string', 'invalid_arg',
            'ldexp', 'log', 'log10', 'max', 'max_float', 'max_int', 'min',
            'min_float', 'min_int', 'mod_float', 'modf', 'nan', 'open_in',
            'open_in_bin', 'open_in_gen', 'open_out', 'open_out_bin',
            'open_out_gen', 'out_channel_length', 'output', 'output_binary_int',
            'output_byte', 'output_char', 'output_string', 'output_value',
            'pos_in', 'pos_out',  'pred', 'prerr_char', 'prerr_endline',
            'prerr_float', 'prerr_int', 'prerr_newline', 'prerr_string',
            'print_char', 'print_endline', 'print_float', 'print_int',
            'print_newline', 'print_string', 'read_float', 'read_int',
            'read_line', 'really_input', 'seek_in', 'seek_out',
            'set_binary_mode_in', 'set_binary_mode_out', 'sin', 'sinh', 'snd',
            'sqrt', 'string_of_bool', 'string_of_float', 'string_of_format',
            'string_of_int', 'succ', 'tan', 'tanh', 'truncate'
            ),
        /* here Pervasives Types */
        4 => array (
            'array','bool','char','exn','file_descr','format','fpclass',
            'in_channel','int','int32','int64','list','nativeint','open_flag',
            'out_channel','string','Sys_error','unit'
            ),
        /* finally Pervasives Exceptions */
        5 => array (
            'Exit', 'Invalid_Argument', 'Failure', 'Division_by_zero'
            )
        ),
    /* highlighting symbols is really important in OCaml */
    'SYMBOLS' => array(
        '+.', '-.', '*.', '/.', '[<', '>]',
        ';', '!', ':', '.', '=', '%', '^', '*', '-', '/', '+',
        '>', '<', '(', ')', '[', ']', '&', '|', '#', "'",
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => true, /* functions name are case sensitive */
        3 => true, /* types name too */
        4 => true, /* pervasives types */
        5 => true  /* pervasives exceptions */
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #06c; font-weight: bold;', /* nice blue */
            2 => 'color: #06c; font-weight: bold;', /* nice blue */
            3 => 'color: #06c; font-weight: bold;', /* nice blue */
            4 => 'color: #06c; font-weight: bold;', /* nice blue */
            5 => 'color: #06c; font-weight: bold;' /* nice blue */
            ),
        'COMMENTS' => array(
            'MULTI' => 'color: #5d478b; font-style: italic;', /* light purple */
            1 => 'color: #5d478b; font-style: italic;' /* light purple */
            ),
        'ESCAPE_CHAR' => array(
            ),
        'BRACKETS' => array(
            0 => 'color: #a52a2a;'
            ),
        'STRINGS' => array(
            0 => 'color: #3cb371;' /* nice green */
            ),
        'NUMBERS' => array(
            0 => 'color: #c6c;' /* pink */
            ),
        'METHODS' => array(
            1 => 'color: #060;' /* dark green */
            ),
        'REGEXPS' => array(
            1 => 'font-weight:bold; color:#339933;',
            2 => 'font-weight:bold; color:#993399;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #a52a2a;' /* maroon */
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        /* some of keywords are Pervasives functions (land, lxor, asr, ...) */
        1 => '',
        /* link to the wanted library */
        2 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/{FNAME}.html',
        /* link to Pervasives functions */
        3 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#VAL{FNAME}',
        /* link to Pervasives type */
        4 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#TYPE{FNAME}',
        /* link to Pervasives exceptions */
        5 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#EXCEPTION{FNAME}'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        1 => '~\w+',
        2 => '`(?=(?-i:[a-z]))\w*',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/php-brief.php0000664000175000017500000003675612014173415014572 0ustar  benbebenbe 'PHP (brief)',
    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    //Heredoc and Nowdoc syntax
    'COMMENT_REGEXP' => array(3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'HARDQUOTE' => array("'", "'"),
    'HARDESCAPE' => array("\'"),
    'NUMBERS' =>
        GESHI_NUMBER_INT_BASIC |  GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX |
        GESHI_NUMBER_FLT_SCI_ZERO,
    'KEYWORDS' => array(
        1 => array(
            'include', 'require', 'include_once', 'require_once',
            'for', 'as', 'foreach', 'if', 'elseif', 'else', 'while', 'do', 'endwhile', 'endif', 'switch', 'case', 'endswitch',
            'return', 'break'
            ),
        2 => array(
            'null', '__LINE__', '__FILE__',
            'false', '<?php',
            'true', 'var', 'default',
            'function', 'class', 'new', '&new', 'public', 'private', 'interface', 'extends',
            'const', 'self'
            ),
        3 => array(
            'func_num_args', 'func_get_arg', 'func_get_args', 'strlen', 'strcmp', 'strncmp', 'strcasecmp', 'strncasecmp', 'each', 'error_reporting', 'define', 'defined',
            'trigger_error', 'user_error', 'set_error_handler', 'restore_error_handler', 'get_declared_classes', 'get_loaded_extensions',
            'extension_loaded', 'get_extension_funcs', 'debug_backtrace',
            'constant', 'bin2hex', 'sleep', 'usleep', 'time', 'mktime', 'gmmktime', 'strftime', 'gmstrftime', 'strtotime', 'date', 'gmdate', 'getdate', 'localtime', 'checkdate', 'flush', 'wordwrap', 'htmlspecialchars', 'htmlentities', 'html_entity_decode', 'md5', 'md5_file', 'crc32', 'getimagesize', 'image_type_to_mime_type', 'phpinfo', 'phpversion', 'phpcredits', 'strnatcmp', 'strnatcasecmp', 'substr_count', 'strspn', 'strcspn', 'strtok', 'strtoupper', 'strtolower', 'strpos', 'strrpos', 'strrev', 'hebrev', 'hebrevc', 'nl2br', 'basename', 'dirname', 'pathinfo', 'stripslashes', 'stripcslashes', 'strstr', 'stristr', 'strrchr', 'str_shuffle', 'str_word_count', 'strcoll', 'substr', 'substr_replace', 'quotemeta', 'ucfirst', 'ucwords', 'strtr', 'addslashes', 'addcslashes', 'rtrim', 'str_replace', 'str_repeat', 'count_chars', 'chunk_split', 'trim', 'ltrim', 'strip_tags', 'similar_text', 'explode', 'implode', 'setlocale', 'localeconv',
            'parse_str', 'str_pad', 'chop', 'strchr', 'sprintf', 'printf', 'vprintf', 'vsprintf', 'sscanf', 'fscanf', 'parse_url', 'urlencode', 'urldecode', 'rawurlencode', 'rawurldecode', 'readlink', 'linkinfo', 'link', 'unlink', 'exec', 'system', 'escapeshellcmd', 'escapeshellarg', 'passthru', 'shell_exec', 'proc_open', 'proc_close', 'rand', 'srand', 'getrandmax', 'mt_rand', 'mt_srand', 'mt_getrandmax', 'base64_decode', 'base64_encode', 'abs', 'ceil', 'floor', 'round', 'is_finite', 'is_nan', 'is_infinite', 'bindec', 'hexdec', 'octdec', 'decbin', 'decoct', 'dechex', 'base_convert', 'number_format', 'fmod', 'ip2long', 'long2ip', 'getenv', 'putenv', 'getopt', 'microtime', 'gettimeofday', 'getrusage', 'uniqid', 'quoted_printable_decode', 'set_time_limit', 'get_cfg_var', 'magic_quotes_runtime', 'set_magic_quotes_runtime', 'get_magic_quotes_gpc', 'get_magic_quotes_runtime',
            'import_request_variables', 'error_log', 'serialize', 'unserialize', 'memory_get_usage', 'var_dump', 'var_export', 'debug_zval_dump', 'print_r','highlight_file', 'show_source', 'highlight_string', 'ini_get', 'ini_get_all', 'ini_set', 'ini_alter', 'ini_restore', 'get_include_path', 'set_include_path', 'restore_include_path', 'setcookie', 'header', 'headers_sent', 'connection_aborted', 'connection_status', 'ignore_user_abort', 'parse_ini_file', 'is_uploaded_file', 'move_uploaded_file', 'intval', 'floatval', 'doubleval', 'strval', 'gettype', 'settype', 'is_null', 'is_resource', 'is_bool', 'is_long', 'is_float', 'is_int', 'is_integer', 'is_double', 'is_real', 'is_numeric', 'is_string', 'is_array', 'is_object', 'is_scalar',
            'ereg', 'ereg_replace', 'eregi', 'eregi_replace', 'split', 'spliti', 'join', 'sql_regcase', 'dl', 'pclose', 'popen', 'readfile', 'rewind', 'rmdir', 'umask', 'fclose', 'feof', 'fgetc', 'fgets', 'fgetss', 'fread', 'fopen', 'fpassthru', 'ftruncate', 'fstat', 'fseek', 'ftell', 'fflush', 'fwrite', 'fputs', 'mkdir', 'rename', 'copy', 'tempnam', 'tmpfile', 'file', 'file_get_contents', 'stream_select', 'stream_context_create', 'stream_context_set_params', 'stream_context_set_option', 'stream_context_get_options', 'stream_filter_prepend', 'stream_filter_append', 'fgetcsv', 'flock', 'get_meta_tags', 'stream_set_write_buffer', 'set_file_buffer', 'set_socket_blocking', 'stream_set_blocking', 'socket_set_blocking', 'stream_get_meta_data', 'stream_register_wrapper', 'stream_wrapper_register', 'stream_set_timeout', 'socket_set_timeout', 'socket_get_status', 'realpath', 'fnmatch', 'fsockopen', 'pfsockopen', 'pack', 'unpack', 'get_browser', 'crypt', 'opendir', 'closedir', 'chdir', 'getcwd', 'rewinddir', 'readdir', 'dir', 'glob', 'fileatime', 'filectime', 'filegroup', 'fileinode', 'filemtime', 'fileowner', 'fileperms', 'filesize', 'filetype', 'file_exists', 'is_writable', 'is_writeable', 'is_readable', 'is_executable', 'is_file', 'is_dir', 'is_link', 'stat', 'lstat', 'chown',
            'touch', 'clearstatcache', 'mail', 'ob_start', 'ob_flush', 'ob_clean', 'ob_end_flush', 'ob_end_clean', 'ob_get_flush', 'ob_get_clean', 'ob_get_length', 'ob_get_level', 'ob_get_status', 'ob_get_contents', 'ob_implicit_flush', 'ob_list_handlers', 'ksort', 'krsort', 'natsort', 'natcasesort', 'asort', 'arsort', 'sort', 'rsort', 'usort', 'uasort', 'uksort', 'shuffle', 'array_walk', 'count', 'end', 'prev', 'next', 'reset', 'current', 'key', 'min', 'max', 'in_array', 'array_search', 'extract', 'compact', 'array_fill', 'range', 'array_multisort', 'array_push', 'array_pop', 'array_shift', 'array_unshift', 'array_splice', 'array_slice', 'array_merge', 'array_merge_recursive', 'array_keys', 'array_values', 'array_count_values', 'array_reverse', 'array_reduce', 'array_pad', 'array_flip', 'array_change_key_case', 'array_rand', 'array_unique', 'array_intersect', 'array_intersect_assoc', 'array_diff', 'array_diff_assoc', 'array_sum', 'array_filter', 'array_map', 'array_chunk', 'array_key_exists', 'pos', 'sizeof', 'key_exists', 'assert', 'assert_options', 'version_compare', 'ftok', 'str_rot13', 'aggregate',
            'session_name', 'session_module_name', 'session_save_path', 'session_id', 'session_regenerate_id', 'session_decode', 'session_register', 'session_unregister', 'session_is_registered', 'session_encode',
            'session_start', 'session_destroy', 'session_unset', 'session_set_save_handler', 'session_cache_limiter', 'session_cache_expire', 'session_set_cookie_params', 'session_get_cookie_params', 'session_write_close', 'preg_match', 'preg_match_all', 'preg_replace', 'preg_replace_callback', 'preg_split', 'preg_quote', 'preg_grep', 'overload', 'ctype_alnum', 'ctype_alpha', 'ctype_cntrl', 'ctype_digit', 'ctype_lower', 'ctype_graph', 'ctype_print', 'ctype_punct', 'ctype_space', 'ctype_upper', 'ctype_xdigit', 'virtual', 'apache_request_headers', 'apache_note', 'apache_lookup_uri', 'apache_child_terminate', 'apache_setenv', 'apache_response_headers', 'apache_get_version', 'getallheaders', 'mysql_connect', 'mysql_pconnect', 'mysql_close', 'mysql_select_db', 'mysql_create_db', 'mysql_drop_db', 'mysql_query', 'mysql_unbuffered_query', 'mysql_db_query', 'mysql_list_dbs', 'mysql_list_tables', 'mysql_list_fields', 'mysql_list_processes', 'mysql_error', 'mysql_errno', 'mysql_affected_rows', 'mysql_insert_id', 'mysql_result', 'mysql_num_rows', 'mysql_num_fields', 'mysql_fetch_row', 'mysql_fetch_array', 'mysql_fetch_assoc', 'mysql_fetch_object', 'mysql_data_seek', 'mysql_fetch_lengths', 'mysql_fetch_field', 'mysql_field_seek', 'mysql_free_result', 'mysql_field_name', 'mysql_field_table', 'mysql_field_len', 'mysql_field_type', 'mysql_field_flags', 'mysql_escape_string', 'mysql_real_escape_string', 'mysql_stat',
            'mysql_thread_id', 'mysql_client_encoding', 'mysql_get_client_info', 'mysql_get_host_info', 'mysql_get_proto_info', 'mysql_get_server_info', 'mysql_info', 'mysql', 'mysql_fieldname', 'mysql_fieldtable', 'mysql_fieldlen', 'mysql_fieldtype', 'mysql_fieldflags', 'mysql_selectdb', 'mysql_createdb', 'mysql_dropdb', 'mysql_freeresult', 'mysql_numfields', 'mysql_numrows', 'mysql_listdbs', 'mysql_listtables', 'mysql_listfields', 'mysql_db_name', 'mysql_dbname', 'mysql_tablename', 'mysql_table_name', 'pg_connect', 'pg_pconnect', 'pg_close', 'pg_connection_status', 'pg_connection_busy', 'pg_connection_reset', 'pg_host', 'pg_dbname', 'pg_port', 'pg_tty', 'pg_options', 'pg_ping', 'pg_query', 'pg_send_query', 'pg_cancel_query', 'pg_fetch_result', 'pg_fetch_row', 'pg_fetch_assoc', 'pg_fetch_array', 'pg_fetch_object', 'pg_fetch_all', 'pg_affected_rows', 'pg_get_result', 'pg_result_seek', 'pg_result_status', 'pg_free_result', 'pg_last_oid', 'pg_num_rows', 'pg_num_fields', 'pg_field_name', 'pg_field_num', 'pg_field_size', 'pg_field_type', 'pg_field_prtlen', 'pg_field_is_null', 'pg_get_notify', 'pg_get_pid', 'pg_result_error', 'pg_last_error', 'pg_last_notice', 'pg_put_line', 'pg_end_copy', 'pg_copy_to', 'pg_copy_from',
            'pg_trace', 'pg_untrace', 'pg_lo_create', 'pg_lo_unlink', 'pg_lo_open', 'pg_lo_close', 'pg_lo_read', 'pg_lo_write', 'pg_lo_read_all', 'pg_lo_import', 'pg_lo_export', 'pg_lo_seek', 'pg_lo_tell', 'pg_escape_string', 'pg_escape_bytea', 'pg_unescape_bytea', 'pg_client_encoding', 'pg_set_client_encoding', 'pg_meta_data', 'pg_convert', 'pg_insert', 'pg_update', 'pg_delete', 'pg_select', 'pg_exec', 'pg_getlastoid', 'pg_cmdtuples', 'pg_errormessage', 'pg_numrows', 'pg_numfields', 'pg_fieldname', 'pg_fieldsize', 'pg_fieldtype', 'pg_fieldnum', 'pg_fieldprtlen', 'pg_fieldisnull', 'pg_freeresult', 'pg_result', 'pg_loreadall', 'pg_locreate', 'pg_lounlink', 'pg_loopen', 'pg_loclose', 'pg_loread', 'pg_lowrite', 'pg_loimport', 'pg_loexport',
            'echo', 'print', 'global', 'static', 'exit', 'array', 'empty', 'eval', 'isset', 'unset', 'die'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '<%', '<%=', '%>', ''
            ),
        0 => array(
            '(', ')', '[', ']', '{', '}',
            '!', '@', '%', '&', '|', '/',
            '<', '>',
            '=', '-', '+', '*',
            '.', ':', ',', ';'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #990000;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            2 => 'color: #666666; font-style: italic;',
            3 => 'color: #0000cc; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;',
            'HARD' => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #0000ff;',
            'HARD' => 'color: #0000ff;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;',
            GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
            GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
            ),
        'METHODS' => array(
            1 => 'color: #004000;',
            2 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #339933;',
            1 => 'color: #000000; font-weight: bold;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => '',
            4 => '',
            5 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.php.net/{FNAMEL}'
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '->',
        2 => '::'
        ),
    'REGEXPS' => array(
        //Variables
        0 => "[\\$]+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*"
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        0 => array(
            ' '?>'
            ),
        1 => array(
            ' '?>'
            ),
        2 => array(
            '<%' => '%>'
            ),
        3 => array(
            ''
            ),
        4 => "/(?P<\\?(?>php\b)?)(?:".
            "(?>[^\"'?\\/<]+)|".
            "\\?(?!>)|".
            "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
            "(?>\"(?>[^\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|".
            "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|".
            "\\/\\/(?>.*?$)|".
            "\\/(?=[^*\\/])|".
            "<(?!<<)|".
            "<<<(?P\w+)\s.*?\s\k".
            ")*(?P\\?>|\Z)/sm",
        5 => "/(?P<%)(?:".
            "(?>[^\"'%\\/<]+)|".
            "%(?!>)|".
            "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
            "(?>\"(?>[^\\\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|".
            "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|".
            "\\/\\/(?>.*?$)|".
            "\\/(?=[^*\\/])|".
            "<(?!<<)|".
            "<<<(?P\w+)\s.*?\s\k".
            ")*(?P%>)/sm"
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        0 => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true
        ),
    'TAB_WIDTH' => 4
);

?>geshi/geshi/cil.php0000664000175000017500000002044712014173437013457 0ustar  benbebenbe 'CIL',
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'COMMENT_SINGLE' => array('//'),
    'COMMENT_MULTI' => array(),
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(//Dotted
            '.zeroinit', '.vtfixup', '.vtentry', '.vtable', '.ver', '.try', '.subsystem', '.size', '.set', '.removeon',
            '.publickeytoken', '.publickey', '.property', '.permissionset', '.permission', '.pdirect', '.param', '.pack',
            '.override', '.other', '.namespace', '.mresource', '.module', '.method', '.maxstack', '.manifestres', '.locals',
            '.localized', '.locale', '.line', '.language', '.import', '.imagebase', '.hash', '.get', '.fire', '.file', '.field',
            '.export', '.event', '.entrypoint', '.emitbyte', '.data', '.custom', '.culture', '.ctor', '.corflags', '.class',
            '.cctor', '.assembly', '.addon'
            ),
        2 => array(//Attributes
            'wrapper', 'with', 'winapi', 'virtual', 'vector', 'vararg', 'value', 'userdefined', 'unused', 'unmanagedexp',
            'unmanaged', 'unicode', 'to', 'tls', 'thiscall', 'synchronized', 'struct', 'strict', 'storage', 'stdcall',
            'static', 'specialname', 'special', 'serializable', 'sequential', 'sealed', 'runtime', 'rtspecialname', 'request',
            'reqsecobj', 'reqrefuse', 'reqopt', 'reqmin', 'record', 'public', 'privatescope', 'private', 'preservesig',
            'prejitgrant', 'prejitdeny', 'platformapi', 'pinvokeimpl', 'pinned', 'permitonly', 'out', 'optil', 'opt',
            'notserialized', 'notremotable', 'not_in_gc_heap', 'noprocess', 'noncaslinkdemand', 'noncasinheritance',
            'noncasdemand', 'nometadata', 'nomangle', 'nomachine', 'noinlining', 'noappdomain', 'newslot', 'nested', 'native',
            'modreq', 'modopt', 'marshal', 'managed', 'literal', 'linkcheck', 'lcid', 'lasterr', 'internalcall', 'interface',
            'instance', 'initonly', 'init', 'inheritcheck', 'in', 'import', 'implicitres', 'implicitcom', 'implements',
            'illegal', 'il', 'hidebysig', 'handler', 'fromunmanaged', 'forwardref', 'fixed', 'finally', 'final', 'filter',
            'filetime', 'field', 'fault', 'fastcall', 'famorassem', 'family', 'famandassem', 'extern', 'extends', 'explicit',
            'error', 'enum', 'endmac', 'deny', 'demand', 'default', 'custom', 'compilercontrolled', 'clsid', 'class', 'cil',
            'cf', 'cdecl', 'catch', 'beforefieldinit', 'autochar', 'auto', 'at', 'assert', 'assembly', 'as', 'any', 'ansi',
            'alignment', 'algorithm', 'abstract'
            ),
        3 => array(//Types
            'wchar', 'void', 'variant', 'unsigned', 'valuetype', 'typedref', 'tbstr', 'sysstring', 'syschar', 'string',
            'streamed_object', 'stream', 'stored_object', 'safearray', 'objectref', 'object', 'nullref', 'method', 'lpwstr',
            'lpvoid', 'lptstr', 'lpstruct', 'lpstr', 'iunknown', 'int64', 'int32', 'int16', 'int8', 'int', 'idispatch',
            'hresult', 'float64', 'float32', 'float', 'decimal', 'date', 'currency', 'char', 'carray', 'byvalstr',
            'bytearray', 'boxed', 'bool', 'blob_object', 'blob', 'array'
            ),
        4 => array(//Prefix
            'volatile', 'unaligned', 'tail', 'readonly', 'no', 'constrained'
            ),
        5 => array(//Suffix
            'un', 'u8', 'u4', 'u2', 'u1', 'u', 's', 'ref', 'r8', 'r4', 'm1', 'i8', 'i4', 'i2', 'i1', 'i'#, '.8', '.7', '.6', '.5', '.4', '.3', '.2', '.1', '.0'
            ),
        6 => array(//Base
            'xor', 'switch', 'sub', 'stloc',
            'stind', 'starg',
            'shr', 'shl', 'ret', 'rem', 'pop', 'or', 'not', 'nop', 'neg', 'mul',
            'localloc', 'leave', 'ldnull', 'ldloca',
            'ldloc', 'ldind', 'ldftn', 'ldc', 'ldarga',
            'ldarg', 'jmp', 'initblk', 'endfinally', 'endfilter',
            'endfault', 'dup', 'div', 'cpblk', 'conv', 'clt', 'ckfinite', 'cgt', 'ceq', 'calli',
            'call', 'brzero', 'brtrue', 'brnull', 'brinst',
            'brfalse', 'break', 'br', 'bne', 'blt', 'ble', 'bgt', 'bge', 'beq', 'arglist',
            'and', 'add'
            ),
        7 => array(//Object
            'unbox.any', 'unbox', 'throw', 'stsfld', 'stobj', 'stfld', 'stelem', 'sizeof', 'rethrow', 'refanyval', 'refanytype', 'newobj',
            'newarr', 'mkrefany', 'ldvirtftn', 'ldtoken', 'ldstr', 'ldsflda', 'ldsfld', 'ldobj', 'ldlen', 'ldflda', 'ldfld',
            'ldelema', 'ldelem', 'isinst', 'initobj', 'cpobj', 'castclass',
            'callvirt', 'callmostderived', 'box'
            ),
        8 => array(//Other
            'prefixref', 'prefix7', 'prefix6', 'prefix5', 'prefix4', 'prefix3', 'prefix2', 'prefix1', 'prefix0'
            ),
        9 => array(//Literal
            'true', 'null', 'false'
            ),
        10 => array(//Comment-like
            '#line', '^THE_END^'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '!!'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        9 => true,
        10 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color:maroon;font-weight:bold;',
            2 => 'color:blue;font-weight:bold;',
            3 => 'color:purple;font-weight:bold;',
            4 => 'color:teal;',
            5 => 'color:blue;',
            6 => 'color:blue;',
            7 => 'color:blue;',
            8 => 'color:blue;',
            9 => 'color:00008B',
            10 => 'color:gray'
            ),
        'COMMENTS' => array(
            0 => 'color:gray;font-style:italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #008000; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #006400;'
            ),
        'STRINGS' => array(
            0 => 'color: #008000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #00008B;'
            ),
        'METHODS' => array(
            1 => 'color: #000033;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #006400;'
            ),
        'REGEXPS' => array(
            0 => 'color:blue;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        9 => '',
        10 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '::'
        ),
    'REGEXPS' => array(
        0 => '(?<=ldc\\.i4\\.)[0-8]|(?<=(?:ldarg|ldloc|stloc)\\.)[0-3]' # Pickup the opcodes that end with integers
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/rebol.php0000664000175000017500000002042012014173371013777 0ustar  benbebenbe 'REBOL',
    'COMMENT_SINGLE' => array(1 => ';'),
    'COMMENT_MULTI' => array('rebol [' => ']', 'comment [' => ']'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'binary!','block!','char!','date!','decimal!','email!','file!',
            'hash!','integer!','issue!','list!','logic!','money!','none!',
            'object!','paren!','pair!','path!','string!','tag!','time!',
            'tuple!','url!',
            ),
        2 => array(
            'all','any','attempt','break','catch','compose','disarm','dispatch',
            'do','do-events','does','either','else','exit','for','forall',
            'foreach','forever','forskip','func','function','halt','has','if',
            'launch','loop','next','quit','reduce','remove-each','repeat',
            'return','secure','switch','throw','try','until','wait','while',
            ),
        3 => array(
            'about','abs','absolute','add','alert','alias','alter','and',
            'any-block?','any-function?','any-string?','any-type?','any-word?',
            'append','arccosine','arcsine','arctangent','array','as-pair',
            'ask','at','back','binary?','bind','bitset?','block?','brightness?',
            'browse','build-tag','caret-to-offset','center-face','change',
            'change-dir','char?','charset','checksum','choose','clean-path',
            'clear','clear-fields','close','comment','complement','component?',
            'compress','confirm','connected?','construct','context','copy',
            'cosine','datatype?','date?','debase','decimal?','decode-cgi',
            'decompress','dehex','delete','detab','difference','dir?','dirize',
            'divide','dump-face','dump-obj','echo','email?','empty?','enbase',
            'entab','equal?','error?','even?','event?','exclude','exists?',
            'exp','extract','fifth','file?','find','first','flash','focus',
            'form','found?','fourth','free','function?','get','get-modes',
            'get-word?','greater-or-equal?','greater?','hash?','head','head?',
            'help','hide','hide-popup','image?','import-email','in',
            'in-window?','index?','info?','inform','input','input?','insert',
            'integer?','intersect','issue?','join','last','layout','length?',
            'lesser-or-equal?','lesser?','library?','license','link?',
            'list-dir','list?','lit-path?','lit-word?','load','load-image',
            'log-10','log-2','log-e','logic?','lowercase','make','make-dir',
            'make-face','max','maximum','maximum-of','min','minimum',
            'minimum-of','modified?','mold','money?','multiply','native?',
            'negate','negative?','none?','not','not-equal?','now','number?',
            'object?','odd?','offset-to-caret','offset?','op?','open','or',
            'pair?','paren?','parse','parse-xml','path?','pick','poke','port?',
            'positive?','power','prin','print','probe','protect',
            'protect-system','query','random','read','read-io','recycle',
            'refinement?','reform','rejoin','remainder','remold','remove',
            'rename',
            //'repeat',
            'repend','replace','request','request-color','request-date',
            'request-download','request-file','request-list','request-pass',
            'request-text','resend','reverse','routine?','same?','save',
            'script?','second','select','send','series?','set','set-modes',
            'set-net','set-path?','set-word?','show','show-popup','sign?',
            'sine','size-text','size?','skip','sort','source','span?',
            'split-path','square-root','strict-equal?','strict-not-equal?',
            'string?','struct?','stylize','subtract','suffix?','tag?','tail',
            'tail?','tangent','third','time?','to','to-binary','to-bitset',
            'to-block','to-char','to-date','to-decimal','to-email','to-file',
            'to-get-word','to-hash','to-hex','to-idate','to-image','to-integer',
            'to-issue','to-list','to-lit-path','to-lit-word','to-local-file',
            'to-logic','to-money','to-pair','to-paren','to-path',
            'to-rebol-file','to-refinement','to-set-path','to-set-word',
            'to-string','to-tag','to-time','to-tuple','to-url','to-word',
            'trace','trim','tuple?','type?','unfocus','union','unique',
            'unprotect','unset','unset?','unview','update','upgrade',
            'uppercase','url?','usage','use','value?','view','viewed?','what',
            'what-dir','within?','word?','write','write-io','xor','zero?',
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
//            2 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;',
            2 => 'color: #006600;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
//        2 => 'includes/dico_rebol.php?word={FNAME}',
//        3 => 'includes/dico_rebol.php?word={FNAME}'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*",
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/delphi.php0000664000175000017500000003731212014173431014146 0ustar  benbebenbe 'Delphi',
    'COMMENT_SINGLE' => array(1 => '//'),
    'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'),
    //Compiler directives
    'COMMENT_REGEXP' => array(2 => '/\\{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'"),
    'ESCAPE_CHAR' => '',

    'KEYWORDS' => array(
        1 => array(
            'Abstract', 'And', 'Array', 'As', 'Asm', 'At', 'Begin', 'Case',
            'Class', 'Const', 'Constructor', 'Contains', 'Default', 'delayed', 'Destructor',
            'DispInterface', 'Div', 'Do', 'DownTo', 'Else', 'End', 'Except',
            'Export', 'Exports', 'External', 'File', 'Finalization', 'Finally', 'For',
            'Function', 'Generic', 'Goto', 'If', 'Implementation', 'In', 'Inherited',
            'Initialization', 'Inline', 'Interface', 'Is', 'Label', 'Library', 'Message',
            'Mod', 'Nil', 'Not', 'Object', 'Of', 'On', 'Or', 'Overload', 'Override',
            'Package', 'Packed', 'Private', 'Procedure', 'Program', 'Property',
            'Protected', 'Public', 'Published', 'Read', 'Raise', 'Record', 'Register',
            'Repeat', 'Requires', 'Resourcestring', 'Set', 'Shl', 'Shr', 'Specialize', 'Stored',
            'Then', 'ThreadVar', 'To', 'Try', 'Type', 'Unit', 'Until', 'Uses', 'Var',
            'Virtual', 'While', 'With', 'Write', 'Xor', 'assembler', 'far',
            'near', 'pascal', 'cdecl', 'safecall', 'stdcall', 'varargs'
            ),
        2 => array(
            'false', 'self', 'true',
            ),
        3 => array(
            'Abs', 'AcquireExceptionObject', 'Addr', 'AnsiToUtf8', 'Append', 'ArcTan',
            'Assert', 'AssignFile', 'Assigned', 'BeginThread', 'BlockRead',
            'BlockWrite', 'Break', 'ChDir', 'Chr', 'Close', 'CloseFile',
            'CompToCurrency', 'CompToDouble', 'Concat', 'Continue', 'Copy', 'Cos',
            'Dec', 'Delete', 'Dispose', 'DoubleToComp', 'EndThread', 'EnumModules',
            'EnumResourceModules', 'Eof', 'Eoln', 'Erase', 'ExceptAddr',
            'ExceptObject', 'Exclude', 'Exit', 'Exp', 'FilePos', 'FileSize',
            'FillChar', 'Finalize', 'FindClassHInstance', 'FindHInstance',
            'FindResourceHInstance', 'Flush', 'Frac', 'FreeMem', 'Get8087CW',
            'GetDir', 'GetLastError', 'GetMem', 'GetMemoryManager',
            'GetModuleFileName', 'GetVariantManager', 'Halt', 'Hi', 'High',
            'IOResult', 'Inc', 'Include', 'Initialize', 'Insert', 'Int',
            'IsMemoryManagerSet', 'IsVariantManagerSet', 'Length', 'Ln', 'Lo', 'Low',
            'MkDir', 'Move', 'New', 'Odd', 'OleStrToStrVar', 'OleStrToString', 'Ord',
            'PUCS4Chars', 'ParamCount', 'ParamStr', 'Pi', 'Pos', 'Pred', 'Ptr',
            'Random', 'Randomize', 'Read', 'ReadLn', 'ReallocMem',
            'ReleaseExceptionObject', 'Rename', 'Reset', 'Rewrite', 'RmDir', 'Round',
            'RunError', 'Seek', 'SeekEof', 'SeekEoln', 'Set8087CW', 'SetLength',
            'SetLineBreakStyle', 'SetMemoryManager', 'SetString', 'SetTextBuf',
            'SetVariantManager', 'Sin', 'SizeOf', 'Slice', 'Sqr', 'Sqrt', 'Str',
            'StringOfChar', 'StringToOleStr', 'StringToWideChar', 'Succ', 'Swap',
            'Trunc', 'Truncate', 'TypeInfo', 'UCS4StringToWideString', 'UTF8Decode',
            'UTF8Encode', 'UnicodeToUtf8', 'UniqueString', 'UpCase', 'Utf8ToAnsi',
            'Utf8ToUnicode', 'Val', 'VarArrayRedim', 'VarClear',
            'WideCharLenToStrVar', 'WideCharLenToString', 'WideCharToStrVar',
            'WideCharToString', 'WideStringToUCS4String', 'Write', 'WriteLn',

            'Abort', 'AddExitProc', 'AddTerminateProc', 'AdjustLineBreaks', 'AllocMem',
            'AnsiCompareFileName', 'AnsiCompareStr', 'AnsiCompareText',
            'AnsiDequotedStr', 'AnsiExtractQuotedStr', 'AnsiLastChar',
            'AnsiLowerCase', 'AnsiLowerCaseFileName', 'AnsiPos', 'AnsiQuotedStr',
            'AnsiSameStr', 'AnsiSameText', 'AnsiStrComp', 'AnsiStrIComp',
            'AnsiStrLComp', 'AnsiStrLIComp', 'AnsiStrLastChar', 'AnsiStrLower',
            'AnsiStrPos', 'AnsiStrRScan', 'AnsiStrScan', 'AnsiStrUpper',
            'AnsiUpperCase', 'AnsiUpperCaseFileName', 'AppendStr', 'AssignStr',
            'Beep', 'BoolToStr', 'ByteToCharIndex', 'ByteToCharLen', 'ByteType',
            'CallTerminateProcs', 'ChangeFileExt', 'CharLength', 'CharToByteIndex',
            'CharToByteLen', 'CompareMem', 'CompareStr', 'CompareText', 'CreateDir',
            'CreateGUID', 'CurrToStr', 'CurrToStrF', 'CurrentYear', 'Date',
            'DateTimeToFileDate', 'DateTimeToStr', 'DateTimeToString',
            'DateTimeToSystemTime', 'DateTimeToTimeStamp', 'DateToStr', 'DayOfWeek',
            'DecodeDate', 'DecodeDateFully', 'DecodeTime', 'DeleteFile',
            'DirectoryExists', 'DiskFree', 'DiskSize', 'DisposeStr', 'EncodeDate',
            'EncodeTime', 'ExceptionErrorMessage', 'ExcludeTrailingBackslash',
            'ExcludeTrailingPathDelimiter', 'ExpandFileName', 'ExpandFileNameCase',
            'ExpandUNCFileName', 'ExtractFileDir', 'ExtractFileDrive',
            'ExtractFileExt', 'ExtractFileName', 'ExtractFilePath',
            'ExtractRelativePath', 'ExtractShortPathName', 'FileAge', 'FileClose',
            'FileCreate', 'FileDateToDateTime', 'FileExists', 'FileGetAttr',
            'FileGetDate', 'FileIsReadOnly', 'FileOpen', 'FileRead', 'FileSearch',
            'FileSeek', 'FileSetAttr', 'FileSetDate', 'FileSetReadOnly', 'FileWrite',
            'FinalizePackage', 'FindClose', 'FindCmdLineSwitch', 'FindFirst',
            'FindNext', 'FloatToCurr', 'FloatToDateTime', 'FloatToDecimal',
            'FloatToStr', 'FloatToStrF', 'FloatToText', 'FloatToTextFmt',
            'FmtLoadStr', 'FmtStr', 'ForceDirectories', 'Format', 'FormatBuf',
            'FormatCurr', 'FormatDateTime', 'FormatFloat', 'FreeAndNil',
            'GUIDToString', 'GetCurrentDir', 'GetEnvironmentVariable',
            'GetFileVersion', 'GetFormatSettings', 'GetLocaleFormatSettings',
            'GetModuleName', 'GetPackageDescription', 'GetPackageInfo', 'GetTime',
            'IncAMonth', 'IncMonth', 'IncludeTrailingBackslash',
            'IncludeTrailingPathDelimiter', 'InitializePackage', 'IntToHex',
            'IntToStr', 'InterlockedDecrement', 'InterlockedExchange',
            'InterlockedExchangeAdd', 'InterlockedIncrement', 'IsDelimiter',
            'IsEqualGUID', 'IsLeapYear', 'IsPathDelimiter', 'IsValidIdent',
            'Languages', 'LastDelimiter', 'LoadPackage', 'LoadStr', 'LowerCase',
            'MSecsToTimeStamp', 'NewStr', 'NextCharIndex', 'Now', 'OutOfMemoryError',
            'QuotedStr', 'RaiseLastOSError', 'RaiseLastWin32Error', 'RemoveDir',
            'RenameFile', 'ReplaceDate', 'ReplaceTime', 'SafeLoadLibrary',
            'SameFileName', 'SameText', 'SetCurrentDir', 'ShowException', 'Sleep',
            'StrAlloc', 'StrBufSize', 'StrByteType', 'StrCat', 'StrCharLength',
            'StrComp', 'StrCopy', 'StrDispose', 'StrECopy', 'StrEnd', 'StrFmt',
            'StrIComp', 'StrLCat', 'StrLComp', 'StrLCopy', 'StrLFmt', 'StrLIComp',
            'StrLen', 'StrLower', 'StrMove', 'StrNew', 'StrNextChar', 'StrPCopy',
            'StrPLCopy', 'StrPas', 'StrPos', 'StrRScan', 'StrScan', 'StrToBool',
            'StrToBoolDef', 'StrToCurr', 'StrToCurrDef', 'StrToDate', 'StrToDateDef',
            'StrToDateTime', 'StrToDateTimeDef', 'StrToFloat', 'StrToFloatDef',
            'StrToInt', 'StrToInt64', 'StrToInt64Def', 'StrToIntDef', 'StrToTime',
            'StrToTimeDef', 'StrUpper', 'StringReplace', 'StringToGUID', 'Supports',
            'SysErrorMessage', 'SystemTimeToDateTime', 'TextToFloat', 'Time',
            'TimeStampToDateTime', 'TimeStampToMSecs', 'TimeToStr', 'Trim',
            'TrimLeft', 'TrimRight', 'TryEncodeDate', 'TryEncodeTime',
            'TryFloatToCurr', 'TryFloatToDateTime', 'TryStrToBool', 'TryStrToCurr',
            'TryStrToDate', 'TryStrToDateTime', 'TryStrToFloat', 'TryStrToInt',
            'TryStrToInt64', 'TryStrToTime', 'UnloadPackage', 'UpperCase',
            'WideCompareStr', 'WideCompareText', 'WideFmtStr', 'WideFormat',
            'WideFormatBuf', 'WideLowerCase', 'WideSameStr', 'WideSameText',
            'WideUpperCase', 'Win32Check', 'WrapText',

            'ActivateClassGroup', 'AllocateHwnd', 'BinToHex', 'CheckSynchronize',
            'CollectionsEqual', 'CountGenerations', 'DeallocateHwnd', 'EqualRect',
            'ExtractStrings', 'FindClass', 'FindGlobalComponent', 'GetClass',
            'GroupDescendantsWith', 'HexToBin', 'IdentToInt',
            'InitInheritedComponent', 'IntToIdent', 'InvalidPoint',
            'IsUniqueGlobalComponentName', 'LineStart', 'ObjectBinaryToText',
            'ObjectResourceToText', 'ObjectTextToBinary', 'ObjectTextToResource',
            'PointsEqual', 'ReadComponentRes', 'ReadComponentResEx',
            'ReadComponentResFile', 'Rect', 'RegisterClass', 'RegisterClassAlias',
            'RegisterClasses', 'RegisterComponents', 'RegisterIntegerConsts',
            'RegisterNoIcon', 'RegisterNonActiveX', 'SmallPoint', 'StartClassGroup',
            'TestStreamFormat', 'UnregisterClass', 'UnregisterClasses',
            'UnregisterIntegerConsts', 'UnregisterModuleClasses',
            'WriteComponentResFile',

            'ArcCos', 'ArcCosh', 'ArcCot', 'ArcCotH', 'ArcCsc', 'ArcCscH', 'ArcSec',
            'ArcSecH', 'ArcSin', 'ArcSinh', 'ArcTan2', 'ArcTanh', 'Ceil',
            'CompareValue', 'Cosecant', 'Cosh', 'Cot', 'CotH', 'Cotan', 'Csc', 'CscH',
            'CycleToDeg', 'CycleToGrad', 'CycleToRad', 'DegToCycle', 'DegToGrad',
            'DegToRad', 'DivMod', 'DoubleDecliningBalance', 'EnsureRange', 'Floor',
            'Frexp', 'FutureValue', 'GetExceptionMask', 'GetPrecisionMode',
            'GetRoundMode', 'GradToCycle', 'GradToDeg', 'GradToRad', 'Hypot',
            'InRange', 'IntPower', 'InterestPayment', 'InterestRate',
            'InternalRateOfReturn', 'IsInfinite', 'IsNan', 'IsZero', 'Ldexp', 'LnXP1',
            'Log10', 'Log2', 'LogN', 'Max', 'MaxIntValue', 'MaxValue', 'Mean',
            'MeanAndStdDev', 'Min', 'MinIntValue', 'MinValue', 'MomentSkewKurtosis',
            'NetPresentValue', 'Norm', 'NumberOfPeriods', 'Payment', 'PeriodPayment',
            'Poly', 'PopnStdDev', 'PopnVariance', 'Power', 'PresentValue',
            'RadToCycle', 'RadToDeg', 'RadToGrad', 'RandG', 'RandomRange', 'RoundTo',
            'SLNDepreciation', 'SYDDepreciation', 'SameValue', 'Sec', 'SecH',
            'Secant', 'SetExceptionMask', 'SetPrecisionMode', 'SetRoundMode', 'Sign',
            'SimpleRoundTo', 'SinCos', 'Sinh', 'StdDev', 'Sum', 'SumInt',
            'SumOfSquares', 'SumsAndSquares', 'Tan', 'Tanh', 'TotalVariance',
            'Variance'
            ),
        4 => array(
            'AnsiChar', 'AnsiString', 'Bool', 'Boolean', 'Byte', 'ByteBool', 'Cardinal', 'Char',
            'Comp', 'Currency', 'DWORD', 'Double', 'Extended', 'Int64', 'Integer', 'IUnknown',
            'LongBool', 'LongInt', 'LongWord', 'PAnsiChar', 'PAnsiString', 'PBool', 'PBoolean', 'PByte',
            'PByteArray', 'PCardinal', 'PChar', 'PComp', 'PCurrency', 'PDWORD', 'PDate', 'PDateTime',
            'PDouble', 'PExtended', 'PInt64', 'PInteger', 'PLongInt', 'PLongWord', 'Pointer', 'PPointer',
            'PShortInt', 'PShortString', 'PSingle', 'PSmallInt', 'PString', 'PHandle', 'PVariant', 'PWord',
            'PWordArray', 'PWordBool', 'PWideChar', 'PWideString', 'Real', 'Real48', 'ShortInt', 'ShortString',
            'Single', 'SmallInt', 'String', 'TClass', 'TDate', 'TDateTime', 'TextFile', 'THandle',
            'TObject', 'TTime', 'Variant', 'WideChar', 'WideString', 'Word', 'WordBool'
            ),
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        ),
    'SYMBOLS' => array(
        0 => array('(', ')', '[', ']'),
        1 => array('.', ',', ':', ';'),
        2 => array('@', '^'),
        3 => array('=', '+', '-', '*', '/')
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #000000; font-weight: bold;',
            2 => 'color: #000000; font-weight: bold;',
            3 => 'color: #000066;',
            4 => 'color: #000066; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
            2 => 'color: #008000; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #ff0000; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #000066;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #0000ff;'
            ),
        'METHODS' => array(
            1 => 'color: #006600;'
            ),
        'REGEXPS' => array(
            0 => 'color: #0000cc;',
            1 => 'color: #ff0000;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #000066;',
            1 => 'color: #000066;',
            2 => 'color: #000066;',
            3 => 'color: #000066;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        //Hex numbers
        0 => '(? '\#(?:\$[0-9a-fA-F]{1,4}|\d{1,5})'
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 2,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            3 => array(
                'DISALLOWED_AFTER' => '(?=\s*[(;])'
                )
            )
        )
);

?>
geshi/geshi/lb.php0000664000175000017500000001447212014173370013302 0ustar  benbebenbe 'Liberty BASIC',
    'COMMENT_SINGLE' => array(1 => '\''),
    'COMMENT_MULTI' => array(),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'and', 'append', 'as', 'beep', 'bmpbutton', 'bmpsave', 'boolean',
            'button', 'byref', 'call', 'callback', 'calldll', 'callfn', 'case',
            'checkbox', 'close', 'cls', 'colordialog', 'combobox', 'confirm',
            'cursor', 'data', 'dialog', 'dim', 'dll', 'do', 'double', 'dump',
            'dword', 'else', 'end', 'error', 'exit', 'field', 'filedialog',
            'files', 'fontdialog', 'for', 'function', 'get', 'gettrim',
            'global', 'gosub', 'goto', 'graphicbox', 'graphics', 'groupbox',
            'if', 'input', 'kill', 'let', 'line', 'listbox', 'loadbmp',
            'locate', 'long', 'loop', 'lprint', 'mainwin', 'maphandle', 'menu',
            'mod', 'name', 'next', 'nomainwin', 'none', 'notice', 'on',
            'oncomerror', 'or', 'open', 'out', 'output', 'password', 'playmidi',
            'playwave', 'popupmenu', 'print', 'printerdialog', 'prompt', 'ptr',
            'put', 'radiobutton', 'random', 'randomize', 'read', 'readjoystick',
            'redim', 'rem', 'restore', 'resume', 'return', 'run', 'scan',
            'seek', 'select', 'short', 'sort', 'statictext', 'stop', 'stopmidi',
            'struct', 'stylebits', 'sub', 'text', 'textbox', 'texteditor',
            'then', 'timer', 'titlebar', 'to', 'trace', 'ulong', 'unloadbmp',
            'until', 'ushort', 'void', 'wait', 'window', 'wend', 'while',
            'word', 'xor'
            ),
        2 => array(
            'abs', 'acs', 'asc', 'asn', 'atn', 'chr$', 'cos', 'date$',
            'dechex$', 'eof', 'eval', 'eval$', 'exp', 'hbmp', 'hexdec', 'hwnd',
            'inp', 'input$', 'inputto$', 'instr', 'int', 'left$', 'len', 'lof',
            'log', 'lower$', 'max', 'midipos', 'mid$', 'min', 'mkdir', 'not',
            'right$', 'rmdir', 'rnd', 'sin', 'space$', 'sqr', 'str$', 'tab',
            'tan', 'time$', 'trim$', 'txcount', 'upper$', 'using', 'val',
            'winstring', 'word$'
            ),
        3 => array(
            'BackgroundColor$', 'Com', 'ComboboxColor$', 'ComError', 'ComErrorNumber',
            'CommandLine$', 'ComPortNumber', 'DefaultDir$',
            'DisplayHeight', 'DisplayWidth', 'Drives$', 'Err', 'Err$',
            'ForegroundColor$', 'Inkey$', 'Joy1x', 'Joy1y', 'Joy1z',
            'Joy1button1', 'Joy1button2', 'Joy2x', 'Joy2y', 'Joy2z',
            'Joy2button1', 'Joy2button2', 'ListboxColor$', 'MouseX', 'MouseY', 'Platform$',
            'PrintCollate', 'PrintCopies', 'PrinterFont$', 'PrinterName$', 'StartupDir$',
            'TextboxColor$', 'TexteditorColor$', 'Version$', 'WindowHeight',
            'WindowWidth', 'UpperLeftX', 'UpperLeftY'
            )
        ),
    'SYMBOLS' => array(
        1 => array(
            '(', ')', '[', ']', '+', '-', '*', '/', '%', '=', '<', '>', ':', ',', '#'
            )
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000FF;',
            2 => 'color: #AD0080;',
            3 => 'color: #008080;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666; font-style: italic;',
            'MULTI' => 'color: #666666; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #009900;'
            ),
        'STRINGS' => array(
            0 => 'color: #008000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #FF0000;',
            ),
        'METHODS' => array(
            0 => 'color: #004000;'
            ),
        'SYMBOLS' => array(
            1 => 'color: #339933;'
            ),
        'REGEXPS' => array(),
        'SCRIPT' => array()
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(),
    'REGEXPS' => array(),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(),
    'HIGHLIGHT_STRICT_BLOCK' => array(),
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            2 => array(
                //In LB, the second keyword list is a list of built-in functions,
                //and their names should not be highlighted unless being used
                //as a function name.
                'DISALLOWED_AFTER' => '(?=\s*\()'
                )
            )
        )
);

?>geshi/geshi/sas.php0000664000175000017500000002625512014173410013470 0ustar  benbebenbe 'SAS',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('/*' => '*/', '*' => ';'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        1 => array(
            '_ALL_','_CHARACTER_','_INFILE_','_N_','_NULL_','_NUMERIC_',
            '_WEBOUT_'
            ),
        2 => array(
            '%BQUOTE','%CMPRES','%COMPSTOR','%DATATYP','%DISPLAY','%DO','%ELSE',
            '%END','%EVAL','%GLOBAL','%GOTO','%IF','%INDEX','%INPUT','%KEYDEF',
            '%LABEL','%LEFT','%LENGTH','%LET','%LOCAL','%LOWCASE','%MACRO',
            '%MEND','%NRBQUOTE','%NRQUOTE','%NRSTR','%PUT','%QCMPRES','%QLEFT',
            '%QLOWCASE','%QSCAN','%QSUBSTR','%QSYSFUNC','%QTRIM','%QUOTE',
            '%QUPCASE','%SCAN','%STR','%SUBSTR','%SUPERQ','%SYSCALL',
            '%SYSEVALF','%SYSEXEC','%SYSFUNC','%SYSGET','%SYSLPUT','%SYSPROD',
            '%SYSRC','%SYSRPUT','%THEN','%TO','%TRIM','%UNQUOTE','%UNTIL',
            '%UPCASE','%VERIFY','%WHILE','%WINDOW'
            ),
        3 => array(
            'ABS','ADDR','AIRY','ARCOS','ARSIN','ATAN','ATTRC','ATTRN','BAND',
            'BETAINV','BLSHIFT','BNOT','BOR','BRSHIFT','BXOR','BYTE','CDF',
            'CEIL','CEXIST','CINV','CLOSE','CNONCT','COLLATE','COMPBL',
            'COMPOUND','COMPRESS','COSH','COS','CSS','CUROBS','CV','DACCDBSL',
            'DACCDB','DACCSL','DACCSYD','DACCTAB','DAIRY','DATETIME','DATEJUL',
            'DATEPART','DATE','DAY','DCLOSE','DEPDBSL','DEPDB','DEPSL','DEPSYD',
            'DEPTAB','DEQUOTE','DHMS','DIF','DIGAMMA','DIM','DINFO','DNUM',
            'DOPEN','DOPTNAME','DOPTNUM','DREAD','DROPNOTE','DSNAME','ERFC',
            'ERF','EXIST','EXP','FAPPEND','FCLOSE','FCOL','FDELETE','FETCHOBS',
            'FETCH','FEXIST','FGET','FILEEXIST','FILENAME','FILEREF','FINFO',
            'FINV','FIPNAMEL','FIPNAME','FIPSTATE','FLOOR','FNONCT','FNOTE',
            'FOPEN','FOPTNAME','FOPTNUM','FPOINT','FPOS','FPUT','FREAD',
            'FREWIND','FRLEN','FSEP','FUZZ','FWRITE','GAMINV','GAMMA',
            'GETOPTION','GETVARC','GETVARN','HBOUND','HMS','HOSTHELP','HOUR',
            'IBESSEL','INDEXW','INDEXC','INDEX','INPUTN','INPUTC','INPUT',
            'INTRR','INTCK','INTNX','INT','IRR','JBESSEL','JULDATE','KURTOSIS',
            'LAG','LBOUND','LEFT','LENGTH','LGAMMA','LIBNAME','LIBREF','LOG10',
            'LOG2','LOGPDF','LOGPMF','LOGSDF','LOG','LOWCASE','MAX','MDY',
            'MEAN','MINUTE','MIN','MOD','MONTH','MOPEN','MORT','NETPV','NMISS',
            'NORMAL','NPV','N','OPEN','ORDINAL','PATHNAME','PDF','PEEKC','PEEK',
            'PMF','POINT','POISSON','POKE','PROBBETA','PROBBNML','PROBCHI',
            'PROBF','PROBGAM','PROBHYPR','PROBIT','PROBNEGB','PROBNORM','PROBT',
            'PUTN','PUTC','PUT','QTR','QUOTE','RANBIN','RANCAU','RANEXP',
            'RANGAM','RANGE','RANK','RANNOR','RANPOI','RANTBL','RANTRI',
            'RANUNI','REPEAT','RESOLVE','REVERSE','REWIND','RIGHT','ROUND',
            'SAVING','SCAN','SDF','SECOND','SIGN','SINH','SIN','SKEWNESS',
            'SOUNDEX','SPEDIS','SQRT','STDERR','STD','STFIPS','STNAME',
            'STNAMEL','SUBSTR','SUM','SYMGET','SYSGET','SYSMSG','SYSPROD',
            'SYSRC','SYSTEM','TANH','TAN','TIMEPART','TIME','TINV','TNONCT',
            'TODAY','TRANSLATE','TRANWRD','TRIGAMMA','TRIMN','TRIM','TRUNC',
            'UNIFORM','UPCASE','USS','VARFMT','VARINFMT','VARLABEL','VARLEN',
            'VARNAME','VARNUM','VARRAYX','VARRAY','VARTYPE','VAR','VERIFY',
            'VFORMATX','VFORMATDX','VFORMATD','VFORMATNX','VFORMATN',
            'VFORMATWX','VFORMATW','VFORMAT','VINARRAYX','VINARRAY',
            'VINFORMATX','VINFORMATDX','VINFORMATD','VINFORMATNX','VINFORMATN',
            'VINFORMATWX','VINFORMATW','VINFORMAT','VLABELX','VLABEL',
            'VLENGTHX','VLENGTH','VNAMEX','VNAME','VTYPEX','VTYPE','WEEKDAY',
            'YEAR','YYQ','ZIPFIPS','ZIPNAME','ZIPNAMEL','ZIPSTATE'
            ),
        4 => array(
            'ABORT','ADD','ALTER','AND','ARRAY','AS','ATTRIB','BY','CALL',
            'CARDS4','CASCADE','CATNAME','CHECK','CONTINUE','CREATE',
            'DATALINES4','DELETE','DESCRIBE','DISPLAY','DISTINCT','DM','DROP',
            'ENDSAS','FILE','FOOTNOTE','FOREIGN','FORMAT','FROM',
            'GOTO','GROUP','HAVING','IN','INFILE','INFORMAT',
            'INSERT','INTO','KEEP','KEY','LABEL','LEAVE',
            'LIKE','LINK','LIST','LOSTCARD','MERGE','MESSAGE','MISSING',
            'MODIFY','MSGTYPE','NOT','NULL','ON','OPTIONS','OR','ORDER',
            'OUTPUT','PAGE','PRIMARY','REDIRECT','REFERENCES','REMOVE',
            'RENAME','REPLACE','RESET','RESTRICT','RETAIN','RETURN','SELECT',
            'SET','SKIP','STARTSAS','STOP','SYSTASK','TABLE','TITLE','UNIQUE',
            'UPDATE','VALIDATE','VIEW','WAITSAS','WHERE','WINDOW','X'
            ),
        5 => array(
            'DO','ELSE','END','IF','THEN','UNTIL','WHILE'
            ),
        6 => array(
            'RUN','QUIT','DATA'
            ),
        7 => array(
            'ERROR'
            ),
        8 => array(
            'WARNING'
            ),
        9 => array(
            'NOTE'
            )
        ),
    'SYMBOLS' => array(
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false,
        7 => false,
        8 => false,
        9 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #0000ff;',
            2 => 'color: #0000ff;',
            3 => 'color: #0000ff;',
            4 => 'color: #0000ff;',
            5 => 'color: #0000ff;',
            6 => 'color: #000080; font-weight: bold;',
            7 => 'color: #ff0000;',
            8 => 'color: #00ff00;',
            9 => 'color: #0000ff;'
            ),
        'COMMENTS' => array(
//            1 => 'color: #006400; font-style: italic;',
            'MULTI' => 'color: #006400; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #a020f0;'
            ),
        'NUMBERS' => array(
            0 => 'color: #2e8b57; font-weight: bold;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'SCRIPT' => array(
            0 => '',
            1 => '',
            2 => '',
            3 => ''
            ),
        'REGEXPS' => array(
            0 => 'color: #0000ff; font-weight: bold;',
            1 => 'color: #000080; font-weight: bold;',
            2 => 'color: #006400; font-style: italic;',
            3 => 'color: #006400; font-style: italic;',
            4 => 'color: #006400; font-style: italic;',
            5 => 'color: #ff0000; font-weight: bold;',
            6 => 'color: #00ff00; font-style: italic;',
            7 => 'color: #0000ff; font-style: normal;',
            8 => 'color: #b218b2; font-weight: bold;',
            9 => 'color: #b218b2; font-weight: bold;'
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => '',
        7 => '',
        8 => '',
        9 => ''
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        0 => "&[a-zA-Z_][a-zA-Z0-9_]*",
        1 => array(//Procedures
            GESHI_SEARCH => '(^\\s*)(PROC \\w+)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        2 => array(
            GESHI_SEARCH => '(^\\s*)(\\*.*;)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        3 => array(
            GESHI_SEARCH => '(.*;\\s*)(\\*.*;)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        4 => array(
            GESHI_SEARCH => '(^\\s*)(%\\*.*;)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => ''
            ),
        5 => array(//Error messages
            GESHI_SEARCH => '(^ERROR.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        6 => array(//Warning messages
            GESHI_SEARCH => '(^WARNING.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        7 => array(//Notice messages
            GESHI_SEARCH => '(^NOTE.*)',
            GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => 'im',
            GESHI_BEFORE => '',
            GESHI_AFTER => ''
            ),
        8 => array(
            GESHI_SEARCH => '(^\\s*)(CARDS.*)(^\\s*;\\s*$)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'sim',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            ),
        9 => array(
            GESHI_SEARCH => '(^\\s*)(DATALINES.*)(^\\s*;\\s*$)',
            GESHI_REPLACE => '\\2',
            GESHI_MODIFIERS => 'sim',
            GESHI_BEFORE => '\\1',
            GESHI_AFTER => '\\3'
            )
        ),
    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>geshi/geshi/objc.php0000664000175000017500000004457412014173433013630 0ustar  benbebenbe 'Objective-C',
    'COMMENT_SINGLE' => array(
        //Compiler directives
        1 => '#',
        //Single line C-Comments
        2 => '//'
        ),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'COMMENT_REGEXP' => array(
        //Multiline Continuation for single-line comment
        2 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
        //Pseudo-Highlighting of the @-sign before strings
        3 => "/@(?=\")/"
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'"),
    'ESCAPE_CHAR' => '\\',

    'KEYWORDS' => array(
        // Objective-C keywords
        1 => array(
            'while', 'switch', 'return', 'in', 'if', 'goto', 'foreach', 'for',
            'else', 'do', 'default', 'continue', 'case', '@try', '@throw',
            '@synthesize', '@synchronized', '@selector', '@public', '@protocol',
            '@protected', '@property', '@private', '@interface',
            '@implementation', '@finally', '@end', '@encode', '@defs', '@class',
            '@catch'
            ),
        // Macros and constants
        2 => array(
            'YES', 'USHRT_MAX', 'ULONG_MAX', 'UINT_MAX', 'UCHAR_MAX', 'true',
            'TMP_MAX', 'stdout', 'stdin', 'stderr', 'SIGTERM', 'SIGSEGV',
            'SIGINT', 'SIGILL', 'SIG_IGN', 'SIGFPE', 'SIG_ERR', 'SIG_DFL',
            'SIGABRT', 'SHRT_MIN', 'SHRT_MAX', 'SEEK_SET', 'SEEK_END',
            'SEEK_CUR', 'SCHAR_MIN', 'SCHAR_MAX', 'RAND_MAX', 'NULL',
            'NO', 'nil', 'Nil', 'L_tmpnam', 'LONG_MIN', 'LONG_MAX',
            'LDBL_MIN_EXP', 'LDBL_MIN', 'LDBL_MAX_EXP', 'LDBL_MAX',
            'LDBL_MANT_DIG', 'LDBL_EPSILON', 'LDBL_DIG', 'INT_MIN', 'INT_MAX',
            'HUGE_VAL', 'FOPEN_MAX', 'FLT_ROUNDS', 'FLT_RADIX', 'FLT_MIN_EXP',
            'FLT_MIN', 'FLT_MAX_EXP', 'FLT_MAX', 'FLT_MANT_DIG', 'FLT_EPSILON',
            'FLT_DIG', 'FILENAME_MAX', 'false', 'EXIT_SUCCESS', 'EXIT_FAILURE',
            'errno', 'ERANGE', 'EOF', 'enum', 'EDOM', 'DBL_MIN_EXP', 'DBL_MIN',
            'DBL_MAX_EXP', 'DBL_MAX', 'DBL_MANT_DIG', 'DBL_EPSILON', 'DBL_DIG',
            'CLOCKS_PER_SEC', 'CHAR_MIN', 'CHAR_MAX', 'CHAR_BIT', 'BUFSIZ',
            'break'
            ),
        // C standard library functions
        3 => array(
            'vsprintf', 'vprintf', 'vfprintf', 'va_start', 'va_end', 'va_arg',
            'ungetc', 'toupper', 'tolower', 'tmpname', 'tmpfile', 'time',
            'tanh', 'tan', 'system', 'strxfrm', 'strtoul', 'strtol', 'strtok',
            'strtod', 'strstr', 'strspn', 'strrchr', 'strpbrk', 'strncpy',
            'strncmp', 'strncat', 'strlen', 'strftime', 'strerror', 'strcspn',
            'strcpy', 'strcoll', 'strcmp', 'strchr', 'strcat', 'sscanf',
            'srand', 'sqrt', 'sprintf', 'snprintf', 'sizeof', 'sinh', 'sin',
            'setvbuf', 'setjmp', 'setbuf', 'scanf', 'rewind', 'rename',
            'remove', 'realloc', 'rand', 'qsort', 'puts', 'putchar', 'putc',
            'printf', 'pow', 'perror', 'offsetof', 'modf', 'mktime', 'memset',
            'memmove', 'memcpy', 'memcmp', 'memchr', 'malloc', 'longjmp',
            'log10', 'log', 'localtime', 'ldiv', 'ldexp', 'labs', 'isxdigit',
            'isupper', 'isspace', 'ispunct', 'isprint', 'islower',
            'isgraph', 'isdigit', 'iscntrl', 'isalpha', 'isalnum', 'gmtime',
            'gets', 'getenv', 'getchar', 'getc', 'fwrite', 'ftell', 'fsetpos',
            'fseek', 'fscanf', 'frexp', 'freopen', 'free', 'fread', 'fputs',
            'fputc', 'fprintf', 'fopen', 'fmod', 'floor', 'fgets', 'fgetpos',
            'fgetc', 'fflush', 'ferror', 'feof', 'fclose', 'fabs', 'exp',
            'exit', 'div', 'difftime', 'ctime', 'cosh', 'cos', 'clock',
            'clearerr', 'ceil', 'calloc', 'bsearch', 'atol', 'atoi', 'atof',
            'atexit', 'atan2', 'atan', 'assert', 'asin', 'asctime', 'acos',
            'abs', 'abort'
            ),
        // Data types (C, Objective-C, Cocoa)
        4 => array(
            'volatile', 'void', 'va_list', 'unsigned', 'union', 'typedef', 'tm',
            'time_t', 'struct', 'string', 'static', 'size_t',
            'signed', 'signal', 'short', 'SEL', 'register', 'raise',
            'ptrdiff_t', 'NSZone', 'NSRect', 'NSRange', 'NSPoint', 'long',
            'ldiv_t', 'jmp_buf', 'int', 'IMP', 'id', 'fpos_t', 'float', 'FILE',
            'extern', 'double', 'div_t', 'const', 'clock_t', 'Class', 'char',
            'BOOL', 'auto'
            ),
        // Foundation classes
        5 => array(
            'NSXMLParser', 'NSXMLNode', 'NSXMLElement', 'NSXMLDTDNode',
            'NSXMLDTD', 'NSXMLDocument', 'NSWhoseSpecifier',
            'NSValueTransformer', 'NSValue', 'NSUserDefaults', 'NSURLResponse',
            'NSURLRequest', 'NSURLProtocol', 'NSURLProtectionSpace',
            'NSURLHandle', 'NSURLDownload', 'NSURLCredentialStorage',
            'NSURLCredential', 'NSURLConnection', 'NSURLCache',
            'NSURLAuthenticationChallenge', 'NSURL', 'NSUniqueIDSpecifier',
            'NSUndoManager', 'NSUnarchiver', 'NSTimeZone', 'NSTimer',
            'NSThread', 'NSTask', 'NSString', 'NSStream', 'NSSpellServer',
            'NSSpecifierTest', 'NSSortDescriptor', 'NSSocketPortNameServer',
            'NSSocketPort', 'NSSetCommand', 'NSSet', 'NSSerializer',
            'NSScriptWhoseTest', 'NSScriptSuiteRegistry',
            'NSScriptObjectSpecifier', 'NSScriptExecutionContext',
            'NSScriptCommandDescription', 'NSScriptCommand',
            'NSScriptCoercionHandler', 'NSScriptClassDescription', 'NSScanner',
            'NSRunLoop', 'NSRelativeSpecifier', 'NSRecursiveLock',
            'NSRangeSpecifier', 'NSRandomSpecifier', 'NSQuitCommand', 'NSProxy',
            'NSProtocolChecker', 'NSPropertySpecifier',
            'NSPropertyListSerialization', 'NSProcessInfo', 'NSPredicate',
            'NSPositionalSpecifier', 'NSPortNameServer', 'NSPortMessage',
            'NSPortCoder', 'NSPort', 'NSPointerFunctions', 'NSPointerArray',
            'NSPipe', 'NSOutputStream', 'NSOperationQueue', 'NSOperation',
            'NSObject', 'NSNumberFormatter', 'NSNumber', 'NSNull',
            'NSNotificationQueue', 'NSNotificationCenter', 'NSNotification',
            'NSNetServiceBrowser', 'NSNetService', 'NSNameSpecifier',
            'NSMutableURLRequest', 'NSMutableString', 'NSMutableSet',
            'NSMutableIndexSet', 'NSMutableDictionary', 'NSMutableData',
            'NSMutableCharacterSet', 'NSMutableAttributedString',
            'NSMutableArray', 'NSMoveCommand', 'NSMiddleSpecifier',
            'NSMethodSignature', 'NSMetadataQueryResultGroup',
            'NSMetadataQueryAttributeValueTuple', 'NSMetadataQuery',
            'NSMetadataItem', 'NSMessagePortNameServer', 'NSMessagePort',
            'NSMapTable', 'NSMachPort', 'NSMachBootstrapServer',
            'NSLogicalTest', 'NSLock', 'NSLocale', 'NSKeyedUnarchiver',
            'NSKeyedArchiver', 'NSInvocationOperation', 'NSInvocation',
            'NSInputStream', 'NSIndexSpecifier', 'NSIndexSet', 'NSIndexPath',
            'NSHTTPURLResponse', 'NSHTTPCookieStorage', 'NSHTTPCookie',
            'NSHost', 'NSHashTable', 'NSGetCommand', 'NSGarbageCollector',
            'NSFormatter', 'NSFileManager', 'NSFileHandle', 'NSExpression',
            'NSExistsCommand', 'NSException', 'NSError', 'NSEnumerator',
            'NSDistributedNotificationCenter', 'NSDistributedLock',
            'NSDistantObjectRequest', 'NSDistantObject',
            'NSDirectoryEnumerator', 'NSDictionary', 'NSDeserializer',
            'NSDeleteCommand', 'NSDecimalNumberHandler', 'NSDecimalNumber',
            'NSDateFormatter', 'NSDateComponents', 'NSDate', 'NSData',
            'NSCreateCommand', 'NSCountedSet', 'NSCountCommand', 'NSConnection',
            'NSConditionLock', 'NSCondition', 'NSCompoundPredicate',
            'NSComparisonPredicate', 'NSCoder', 'NSCloseCommand',
            'NSCloneCommand', 'NSClassDescription', 'NSCharacterSet',
            'NSCalendarDate', 'NSCalendar', 'NSCachedURLResponse', 'NSBundle',
            'NSAutoreleasePool', 'NSAttributedString', 'NSAssertionHandler',
            'NSArray', 'NSArchiver', 'NSAppleScript', 'NSAppleEventManager',
            'NSAppleEventDescriptor', 'NSAffineTransform'
            ),
        // Foundation protocols
        6 => array(
            'NSURLProtocolClient', 'NSURLHandleClient', 'NSURLClient',
            'NSURLAuthenticationChallengeSender', 'NSScriptObjectSpecifiers',
            'NSScriptKeyValueCoding', 'NSScriptingComparisonMethods',
            'NSObjCTypeSerializationCallBack', 'NSMutableCopying',
            'NSLocking', 'NSKeyValueObserving', 'NSKeyValueCoding',
            'NSFastEnumeration', 'NSErrorRecoveryAttempting',
            'NSDecimalNumberBehaviors', 'NSCopying', 'NSComparisonMethods',
            'NSCoding'
            ),
        // AppKit classes
        7 => array(
            'NSWorkspace', 'NSWindowController', 'NSWindow', 'NSViewController',
            'NSViewAnimation', 'NSView', 'NSUserDefaultsController',
            'NSTypesetter', 'NSTreeNode', 'NSTreeController', 'NSTrackingArea',
            'NSToolbarItemGroup', 'NSToolbarItem', 'NSToolbar',
            'NSTokenFieldCell', 'NSTokenField', 'NSTextView',
            'NSTextTableBlock', 'NSTextTable', 'NSTextTab', 'NSTextStorage',
            'NSTextList', 'NSTextFieldCell', 'NSTextField', 'NSTextContainer',
            'NSTextBlock', 'NSTextAttachmentCell', 'NSTextAttachment', 'NSText',
            'NSTabViewItem', 'NSTabView', 'NSTableView', 'NSTableHeaderView',
            'NSTableHeaderCell', 'NSTableColumn', 'NSStepperCell', 'NSStepper',
            'NSStatusItem', 'NSStatusBar', 'NSSplitView', 'NSSpellChecker',
            'NSSpeechSynthesizer', 'NSSpeechRecognizer', 'NSSound',
            'NSSliderCell', 'NSSlider', 'NSSimpleHorizontalTypesetter',
            'NSShadow', 'NSSegmentedControl', 'NSSegmentedCell',
            'NSSecureTextFieldCell', 'NSSecureTextField', 'NSSearchFieldCell',
            'NSSearchField', 'NSScrollView', 'NSScroller', 'NSScreen',
            'NSSavePanel', 'NSRulerView', 'NSRulerMarker', 'NSRuleEditor',
            'NSResponder', 'NSQuickDrawView', 'NSProgressIndicator',
            'NSPrintPanel', 'NSPrintOperation', 'NSPrintInfo', 'NSPrinter',
            'NSPredicateEditorRowTemplate', 'NSPredicateEditor',
            'NSPopUpButtonCell', 'NSPopUpButton', 'NSPICTImageRep',
            'NSPersistentDocument', 'NSPDFImageRep', 'NSPathControl',
            'NSPathComponentCell', 'NSPathCell', 'NSPasteboard',
            'NSParagraphStyle', 'NSPanel', 'NSPageLayout', 'NSOutlineView',
            'NSOpenPanel', 'NSOpenGLView', 'NSOpenGLPixelFormat',
            'NSOpenGLPixelBuffer', 'NSOpenGLContext', 'NSObjectController',
            'NSNibOutletConnector', 'NSNibControlConnector', 'NSNibConnector',
            'NSNib', 'NSMutableParagraphStyle', 'NSMovieView', 'NSMovie',
            'NSMenuView', 'NSMenuItemCell', 'NSMenuItem', 'NSMenu', 'NSMatrix',
            'NSLevelIndicatorCell', 'NSLevelIndicator', 'NSLayoutManager',
            'NSInputServer', 'NSInputManager', 'NSImageView', 'NSImageRep',
            'NSImageCell', 'NSImage', 'NSHelpManager', 'NSGraphicsContext',
            'NSGradient', 'NSGlyphInfo', 'NSGlyphGenerator', 'NSFormCell',
            'NSForm', 'NSFontPanel', 'NSFontManager', 'NSFontDescriptor',
            'NSFont', 'NSFileWrapper', 'NSEvent', 'NSEPSImageRep', 'NSDrawer',
            'NSDocumentController', 'NSDocument', 'NSDockTile',
            'NSDictionaryController', 'NSDatePickerCell', 'NSDatePicker',
            'NSCustomImageRep', 'NSCursor', 'NSController', 'NSControl',
            'NSComboBoxCell', 'NSComboBox', 'NSColorWell', 'NSColorSpace',
            'NSColorPicker', 'NSColorPanel', 'NSColorList', 'NSColor',
            'NSCollectionViewItem', 'NSCollectionView', 'NSClipView',
            'NSCIImageRep', 'NSCell', 'NSCachedImageRep', 'NSButtonCell',
            'NSButton', 'NSBrowserCell', 'NSBrowser', 'NSBox',
            'NSBitmapImageRep', 'NSBezierPath', 'NSATSTypesetter',
            'NSArrayController', 'NSApplication', 'NSAnimationContext',
            'NSAnimation', 'NSAlert', 'NSActionCell'
            ),
        // AppKit protocols
        8 => array(
            'NSWindowScripting', 'NSValidatedUserInterfaceItem',
            'NSUserInterfaceValidations', 'NSToolTipOwner',
            'NSToolbarItemValidation', 'NSTextInput',
            'NSTableDataSource', 'NSServicesRequests',
            'NSPrintPanelAccessorizing', 'NSPlaceholders',
            'NSPathControlDelegate', 'NSPathCellDelegate',
            'NSOutlineViewDataSource', 'NSNibAwaking', 'NSMenuValidation',
            'NSKeyValueBindingCreation', 'NSInputServiceProvider',
            'NSInputServerMouseTracker', 'NSIgnoreMisspelledWords',
            'NSGlyphStorage', 'NSFontPanelValidation', 'NSEditorRegistration',
            'NSEditor', 'NSDraggingSource', 'NSDraggingInfo',
            'NSDraggingDestination', 'NSDictionaryControllerKeyValuePair',
            'NSComboBoxDataSource', 'NSComboBoxCellDataSource',
            'NSColorPickingDefault', 'NSColorPickingCustom', 'NSChangeSpelling',
            'NSAnimatablePropertyContainer', 'NSAccessibility'
            ),
        // CoreData classes
        9 => array(
            'NSRelationshipDescription', 'NSPropertyMapping',
            'NSPropertyDescription', 'NSPersistentStoreCoordinator',
            'NSPersistentStore', 'NSMigrationManager', 'NSMappingModel',
            'NSManagedObjectModel', 'NSManagedObjectID',
            'NSManagedObjectContext', 'NSManagedObject',
            'NSFetchRequestExpression', 'NSFetchRequest',
            'NSFetchedPropertyDescription', 'NSEntityMigrationPolicy',
            'NSEntityMapping', 'NSEntityDescription', 'NSAttributeDescription',
            'NSAtomicStoreCacheNode', 'NSAtomicStore'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => true,
        2 => true,
        3 => true,
        4 => true,
        5 => true,
        6 => true,
        7 => true,
        8 => true,
        9 => true
        ),
    // Define the colors for the groups listed above
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #a61390;', // Objective-C keywords
            2 => 'color: #a61390;', // Macros and constants
            3 => 'color: #a61390;', // C standard library functions
            4 => 'color: #a61390;', // data types
            5 => 'color: #400080;', // Foundation classes
            6 => 'color: #2a6f76;', // Foundation protocols
            7 => 'color: #400080;', // AppKit classes
            8 => 'color: #2a6f76;', // AppKit protocols
            9 => 'color: #400080;' // CoreData classes
            ),
        'COMMENTS' => array(
            1 => 'color: #6e371a;', // Preprocessor directives
            2 => 'color: #11740a; font-style: italic;', // Normal C single-line comments
            3 => 'color: #bf1d1a;', // Q-sign in front of Strings
            'MULTI' => 'color: #11740a; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #2400d9;'
            ),
        'BRACKETS' => array(
            0 => 'color: #002200;'
            ),
        'STRINGS' => array(
            0 => 'color: #bf1d1a;'
            ),
        'NUMBERS' => array(
            0 => 'color: #2400d9;'
            ),
        'METHODS' => array(
            ),
        'SYMBOLS' => array(
            0 => 'color: #002200;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAME}.html',
        4 => '',
        5 => 'http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/{FNAME}_Class/',
        6 => 'http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Protocols/{FNAME}_Protocol/',
        7 => 'http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/{FNAME}_Class/',
        8 => 'http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Protocols/{FNAME}_Protocol/',
        9 => 'http://developer.apple.com/documentation/Cocoa/Reference/CoreDataFramework/Classes/{FNAME}_Class/'
        ),
    'OOLANG' => false,
    'OBJECT_SPLITTERS' => array(
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        )
);

?>
geshi/geshi/oorexx.php0000664000175000017500000001364512014173434014233 0ustar  benbebenbe 'ooRexx',
    'COMMENT_SINGLE' => array(1 => '--'),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array(
        1 => array(
            'address', 'arg', 'attribute', 'call', 'constant', 'do',
            'drop', 'exit', 'if',
            'interpret', 'iterate', 'leave', 'loop', 'nop', 'numeric',
            'parse', 'procedure', 'pull', 'push', 'queue',
            'raise', 'reply', 'return', 'say', 'select', 'signal',
            'use'
            ),
        2 => array(
            'abstract', 'any', 'arguments', 'array', 'by',
            'continue', 'digits', 'engineering', 'error',
            'expose', 'external', 'failure', 'for', 'forever',
            'forward', 'get', 'guard', 'guarded', 'halt',
            'inherit', 'library', 'lostdigits', 'message',
            'metaclass', 'mixinclass', 'name', 'nomethod', 'nostring',
            'notready', 'novalue', 'off', 'on', 'options', 'over',
            'private', 'protected', 'public', 'scientific', 'set',
            'source', 'subclass', 'syntax', 'to', 'unguarded',
            'unprotected', 'until', 'user',
            'version', 'while', 'with'
            ),
        3 => array(
            'else', 'end', 'otherwise', 'then', 'when'
            ),
        4 => array(
            'rc', 'result', 'self', 'sigl', 'super'
            ),
        5 => array(
            '::attribute', '::class', '::constant', '::method',
            '::optins', '::requires', '::routine'
            ),
        6 => array(
            'abbrev', 'abs', 'beep', 'bitand', 'bitor',
            'bitxor', 'b2x', 'center', 'centre', 'changestr', 'charin',
            'charout', 'chars', 'compare', 'condition', 'copies',
            'countstr', 'c2d', 'c2x', 'datatype', 'date', 'delstr',
            'delword', 'directory', 'd2c', 'd2x', 'endlocal',
            'errortext', 'filespec', 'form', 'format', 'fuzz', 'insert',
            'lastpos', 'left', 'length', 'linein', 'lineout', 'lines',
            'lower', 'max', 'min', 'overlay', 'pos', 'qualify', 'queued',
            'random', 'reverse', 'right', 'rxfuncadd', 'rxfuncdrop',
            'rxfuncquery', 'rxqueue', 'setlocal', 'sign', 'sourceline',
            'space', 'stream', 'strip', 'substr', 'subword', 'symbol',
            'time', 'trace', 'translate', 'trunc', 'upper', 'userid',
            'value', 'var', 'verify', 'word', 'wordindex', 'wordlength',
            'wordpos', 'words', 'xrange', 'x2b', 'x2c', 'x2d'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '<', '>', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':',
        '<', '>'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => true,
        1 => false,
        2 => false,
        3 => false,
        4 => false,
        5 => false,
        6 => false
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #b1b100;',
            2 => 'color: #ff0000; font-weight: bold;',
            3 => 'color: #00ff00; font-weight: bold;',
            4 => 'color: #0000ff; font-weight: bold;',
            5 => 'color: #880088; font-weight: bold;',
            6 => 'color: #888800; font-weight: bold;'
            ),
        'COMMENTS' => array(
            1 => 'color: #666666;',
            'MULTI' => 'color: #808080;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array(
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array(
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array(
            1 => 'color: #202020;',
            2 => 'color: #202020;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => '',
        5 => '',
        6 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '.'
        ),
    'REGEXPS' => array(
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'TAB_WIDTH' => 4
);

?>
geshi/geshi/tcl.php0000664000175000017500000001514212014173441013461 0ustar  benbebenbe 'TCL',
    'COMMENT_SINGLE' => array(1 => '#'),
    'COMMENT_MULTI' => array(),
    'COMMENT_REGEXP' => array(
        1 => '/(? '/{[^}\n]+}/'
        ),
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
    'QUOTEMARKS' => array('"', "'"),
    'ESCAPE_CHAR' => '\\',
    'KEYWORDS' => array(
        /*
         * Set 1: reserved words
         * http://python.org/doc/current/ref/keywords.html
         */
        1 => array(
            'proc', 'global', 'upvar', 'if', 'then', 'else', 'elseif', 'for', 'foreach',
            'break', 'continue', 'while', 'set', 'eval', 'case', 'in', 'switch',
            'default', 'exit', 'error', 'return', 'uplevel', 'loop',
            'for_array_keys', 'for_recursive_glob', 'for_file', 'unwind_protect',
            'expr', 'catch', 'namespace', 'rename', 'variable',
            // itcl
            'method', 'itcl_class', 'public', 'protected'),

        /*
         * Set 2: builtins
         * http://asps.activatestate.com/ASPN/docs/ActiveTcl/8.4/tcl/tcl_2_contents.htm
         */
        2 => array(
            // string handling
            'append', 'binary', 'format', 're_syntax', 'regexp', 'regsub',
            'scan', 'string', 'subst',
            // list handling
            'concat', 'join', 'lappend', 'lindex', 'list', 'llength', 'lrange',
            'lreplace', 'lsearch', 'lset', 'lsort', 'split',
            // procedures and output
            'incr', 'close', 'eof', 'fblocked', 'fconfigure', 'fcopy', 'file',
            'fileevent', 'flush', 'gets', 'open', 'puts', 'read', 'seek',
            'socket', 'tell',
            // packages and source files
            'load', 'loadTk', 'package', 'pgk::create', 'pgk_mkIndex', 'source',
            // interpreter routines
            'bgerror', 'history', 'info', 'interp', 'memory', 'unknown',
            // library routines
            'enconding', 'http', 'msgcat',
            // system related
            'cd', 'clock', 'exec', 'glob', 'pid', 'pwd', 'time',
            // platform specified
            'dde', 'registry', 'resource',
            // special variables
            '$argc', '$argv', '$errorCode', '$errorInfo', '$argv0',
            '$auto_index', '$auto_oldpath', '$auto_path', '$env',
            '$tcl_interactive', '$tcl_libpath', '$tcl_library',
            '$tcl_pkgPath', '$tcl_platform', '$tcl_precision', '$tcl_traceExec',
            ),

        /*
         * Set 3: standard library
         */
        3 => array(
            'comment', 'filename', 'library', 'packagens', 'tcltest', 'tclvars',
            ),

        /*
         * Set 4: special methods
         */
//        4 => array(
//            )

        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}', '$', '*', '&', '%', '!', ';', '<', '>', '?'
        ),
    'CASE_SENSITIVE' => array(
        GESHI_COMMENTS => false,
        1 => true,
        2 => true,
        3 => true,
//        4 => true
        ),
    'STYLES' => array(
        'KEYWORDS' => array(
            1 => 'color: #ff7700;font-weight:bold;',    // Reserved
            2 => 'color: #008000;',                        // Built-ins + self
            3 => 'color: #dc143c;',                        // Standard lib
//            4 => 'color: #0000cd;'                        // Special methods
            ),
        'COMMENTS' => array(
            1 => 'color: #808080; font-style: italic;',
//            2 => 'color: #483d8b;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array(
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array(
            0 => 'color: black;'
            ),
        'STRINGS' => array(
            0 => 'color: #483d8b;'
            ),
        'NUMBERS' => array(
            0 => 'color: #ff4500;'
            ),
        'METHODS' => array(
            1 => 'color: black;'
            ),
        'SYMBOLS' => array(
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array(
            0 => 'color: #ff3333;'
            ),
        'SCRIPT' => array(
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
//        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        1 => '::'
        ),
    'REGEXPS' => array(
        //Special variables
        0 => '[\\$]+[a-zA-Z_][a-zA-Z0-9_]*',
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array(
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array(
        ),
    'PARSER_CONTROL' => array(
        'COMMENTS' => array(
            'DISALLOWED_BEFORE' => '\\'
        )
    )
);

?>geshi/geshi/pycon.php0000664000175000017500000000442012014173410014020 0ustar  benbebenbe>>).*?$(?:\n\.\.\..*?$)*($)/m';
$language_data['HIGHLIGHT_STRICT_BLOCK'][-1] = true;

$language_data['STYLES']['SCRIPT'][-1] = 'color: #222222;';

if(!isset($language_data['COMMENT_REGEXP'])) {
    $language_data['COMMENT_REGEXP'] = array();
}

$language_data['COMMENT_REGEXP'][-1] = '/(?:^|\A\s)(?:>>>|\.\.\.)/m';
$language_data['STYLES']['COMMENTS'][-1] = 'color: #444444;';

?>geshi/geshi/progress.php0000664000175000017500000007076612014173413014557 0ustar  benbebenbe 'Progress',
    'COMMENT_SINGLE' => array(),
    'COMMENT_MULTI' => array('/*' => '*/'),
    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
    'QUOTEMARKS' => array("'", '"'),
    'ESCAPE_CHAR' => '',
    'KEYWORDS' => array (
        1 => array(
            'ACCUMULATE','APPLY','ASSIGN','BELL','QUERY',
            'BUFFER-COMPARE','BUFFER-COPY','CALL','CASE',
            'CHOOSE','CLASS','CLOSE QUERY','each','WHERE',
            'CLOSE STORED-PROCEDURE','COLOR','COMPILE','CONNECT',
            'CONSTRUCTOR','COPY-LOB','CREATE','CREATE ALIAS',
            'CREATE BROWSE','CREATE BUFFER','CREATE CALL','CREATE CLIENT-PRINCIPAL',
            'CREATE DATABASE','CREATE DATASET','CREATE DATA-SOURCE','CREATE QUERY',
            'CREATE SAX-attributeS','CREATE SAX-READER','CREATE SAX-WRITER','CREATE SERVER',
            'CREATE SERVER-SOCKET','CREATE SOAP-HEADER','CREATE SOAP-HEADER-ENTRYREF','CREATE SOCKET',
            'CREATE TEMP-TABLE','CREATE WIDGET','CREATE widget-POOL','CREATE X-DOCUMENT',
            'CREATE X-NODEREF','CURRENT-LANGUAGE','CURRENT-VALUE','DDE ADVISE',
            'DDE EXECUTE','DDE GET','DDE INITIATE','DDE REQUEST',
            'DDE SEND','DDE TERMINATE','DEFINE BROWSE','DEFINE BUFFER','DEFINE',
            'DEFINE BUTTON','DEFINE DATASET','DEFINE DATA-SOURCE','DEFINE FRAME','DEF','VAR',
            'DEFINE IMAGE','DEFINE MENU','DEFINE PARAMETER','DEFINE property','PARAM',
            'DEFINE QUERY','DEFINE RECTANGLE','DEFINE STREAM','DEFINE SUB-MENU',
            'DEFINE TEMP-TABLE','DEFINE WORKFILE','DEFINE WORK-TABLE',
            'DELETE','DELETE ALIAS','DELETE object','DELETE PROCEDURE',
            'DELETE widget','DELETE widget-POOL','DESTRUCTOR','DICTIONARY',
            'DISABLE','DISABLE TRIGGERS','DISCONNECT','DISPLAY',
            'DO','DOS','DOWN','DYNAMIC-CURRENT-VALUE',
            'ELSE','EMPTY TEMP-TABLE','ENABLE','END',
            'ENTRY','FIND','AND',
            'FIX-CODEPAGE','FOR','FORM','FRAME-VALUE',
            'GET','GET-KEY-VALUE','HIDE','IF',
            'IMPORT','INPUT CLEAR','INPUT CLOSE','INPUT FROM','input',
            'INPUT THROUGH','INPUT-OUTPUT CLOSE','INPUT-OUTPUT THROUGH',
            'INTERFACE','LEAVE','BREAK',
            'LOAD-PICTURE','MESSAGE','method','NEXT','prev',
            'NEXT-PROMPT','ON','OPEN QUERY','OS-APPEND',
            'OS-COMMAND','OS-COPY','OS-CREATE-DIR','OS-DELETE',
            'OS-RENAME','OUTPUT CLOSE','OUTPUT THROUGH','OUTPUT TO',
            'OVERLAY','PAGE','PAUSE','PROCEDURE',
            'PROCESS EVENTS','PROMPT-FOR','PROMSGS','PROPATH',
            'PUBLISH','PUT','PUT CURSOR','PUT SCREEN',
            'PUT-BITS','PUT-BYTE','PUT-BYTES','PUT-DOUBLE',
            'PUT-FLOAT','PUT-INT64','PUT-KEY-VALUE','PUT-LONG',
            'PUT-SHORT','PUT-STRING','PUT-UNSIGNED-LONG','PUT-UNSIGNED-SHORT',
            'QUIT','RAW-TRANSFER','READKEY','RELEASE',
            'RELEASE EXTERNAL','RELEASE object','REPEAT','REPOSITION',
            'RUN','RUN STORED-PROCEDURE','RUN SUPER',
            'SAVE CACHE','SCROLL','SEEK','SET',
            'SET-BYTE-ORDER','SET-POINTER-VALUE','SET-SIZE','SHOW-STATS',
            'STATUS','STOP','SUBSCRIBE','SUBSTRING',
            'system-DIALOG COLOR','system-DIALOG FONT','system-DIALOG GET-DIR','system-DIALOG GET-FILE',
            'system-DIALOG PRINTER-SETUP','system-HELP','THEN','THIS-object',
            'TRANSACTION-MODE AUTOMATIC','TRIGGER PROCEDURE','UNDERLINE','UNDO',
            'UNIX','UNLOAD','UNSUBSCRIBE','UP','STRING',
            'UPDATE','USE','USING','substr','SKIP','CLOSE',
            'VIEW','WAIT-FOR','MODULO','NE','AVAIL',
            'NOT','OR','&GLOBAL-DEFINE','&IF','UNFORMATTED','NO-PAUSE',
            '&THEN','&ELSEIF','&ELSE','&ENDIF','OPEN','NO-WAIT',
            '&MESSAGE','&SCOPED-DEFINE','&UNDEFINE','DEFINED',
            'BROWSE','BUTTON','COMBO-BOX','CONTROL-FRAME',
            'DIALOG-BOX','EDITOR','FIELD-GROUP','FILL-IN',
            'FRAME','IMAGE','LITERAL','MENU',
            'MENU-ITEM','RADIO-SET','RECTANGLE','SELECTION-LIST',
            'SLIDER','SUB-MENU','TEXT','TOGGLE-BOX',
            'WINDOW','WITH','AT','OF','EDITING','ON ENDKEY','output',
            'ON ERROR','ON QUIT','ON STOP','PRESELECT',
            'QUERY-TUNING','SIZE','Trigger','VIEW-AS','ALERT-BOX',
            'Buffer','Data-relation','ProDataSet','SAX-attributes',
            'SAX-reader','SAX-writer','Server socket','SOAP-fault',
            'SOAP-header','SOAP-header-entryref','Socket','Temp-table',
            'X-noderef','Height','Left','Top','TO',
            'Width','ACTIVE-WINDOW','AUDIT-CONTROL','FIRST','LAST',
            'AUDIT-POLICY','CLIPBOARD','CODEBASE-LOCATOR','COLOR-TABLE',
            'COMPILER','COM-SELF','DEBUGGER','DEFAULT-WINDOW',
            'ERROR-STATUS','FILE-INFO','FOCUS','FONT-TABLE',
            'LAST-EVENT','LOG-MANAGER','RCODE-INFO','SECURITY-POLICY',
            'SELF','SESSION','SOURCE-PROCEDURE','TARGET-PROCEDURE','NO-LOCK','NO-error',
            'THIS-PROCEDURE','WEB-CONTEXT','FUNCTION','RETURNS','NO-UNDO'
            ),
        2 => array(
            'ACCEPT-CHANGES','ACCEPT-ROW-CHANGES','ADD-BUFFER','ADD-CALC-COLUMN',
            'ADD-COLUMNS-FROM','ADD-EVENTS-PROCEDURE','ADD-FIELDS-FROM','ADD-FIRST',
            'ADD-HEADER-ENTRY','ADD-INDEX-FIELD','ADD-LAST','ADD-LIKE-COLUMN',
            'ADD-LIKE-FIELD','ADD-LIKE-INDEX','ADD-NEW-FIELD','ADD-NEW-INDEX',
            'ADD-RELATION','ADD-SCHEMA-LOCATION','ADD-SOURCE-BUFFER','ADD-SUPER-PROCEDURE',
            'APPEND-CHILD','APPLY-CALLBACK','ATTACH-DATA-SOURCE','AUTHENTICATION-FAILED',
            'BEGIN-EVENT-GROUP','BUFFER-CREATE',
            'BUFFER-DELETE','BUFFER-RELEASE','BUFFER-VALIDATE',
            'CANCEL-BREAK','CANCEL-REQUESTS','CLEAR','CLEAR-APPL-CONTEXT',
            'CLEAR-LOG','CLEAR-SELECTION','CLEAR-SORT-ARROWS','CLONE-NODE',
            'CLOSE-LOG','CONNECTED','CONVERT-TO-OFFSET',
            'COPY-DATASET','COPY-SAX-attributeS','COPY-TEMP-TABLE','CREATE-LIKE',
            'CREATE-NODE','CREATE-NODE-NAMESPACE','CREATE-RESULT-LIST-ENTRY','DEBUG',
            'DECLARE-NAMESPACE','DELETE-CHAR','DELETE-CURRENT-ROW',
            'DELETE-HEADER-ENTRY','DELETE-LINE','DELETE-NODE','DELETE-RESULT-LIST-ENTRY',
            'DELETE-SELECTED-ROW','DELETE-SELECTED-ROWS','DESELECT-FOCUSED-ROW','DESELECT-ROWS',
            'DESELECT-SELECTED-ROW','DETACH-DATA-SOURCE','DISABLE-CONNECTIONS',
            'DISABLE-DUMP-TRIGGERS','DISABLE-LOAD-TRIGGERS','DISPLAY-MESSAGE',
            'DUMP-LOGGING-NOW','EDIT-CLEAR','EDIT-COPY','EDIT-CUT',
            'EDIT-PASTE','EDIT-UNDO','EMPTY-DATASET','EMPTY-TEMP-TABLE',
            'ENABLE-CONNECTIONS','ENABLE-EVENTS','ENCRYPT-AUDIT-MAC-KEY',
            'END-DOCUMENT','END-ELEMENT','END-EVENT-GROUP','END-FILE-DROP',
            'EXPORT','EXPORT-PRINCIPAL','FETCH-SELECTED-ROW',
            'FILL','FIND-BY-ROWID','FIND-CURRENT','FIND-FIRST',
            'FIND-LAST','FIND-UNIQUE','GET-attribute','GET-attribute-NODE',
            'GET-BINARY-DATA','GET-BLUE-VALUE','GET-BROWSE-COLUMN','GET-BUFFER-HANDLE',
            'GET-BYTES-AVAILABLE','GET-CALLBACK-PROC-CONTEXT','GET-CALLBACK-PROC-NAME','GET-CGI-LIST',
            'GET-CGI-LONG-VALUE','GET-CGI-VALUE','GET-CHANGES','GET-CHILD',
            'GET-CHILD-RELATION','GET-CONFIG-VALUE','GET-CURRENT','GET-DATASET-BUFFER',
            'GET-DOCUMENT-ELEMENT','GET-DROPPED-FILE','GET-DYNAMIC','GET-ERROR-COLUMN ',
            'GET-ERROR-ROW ','GET-FILE-NAME ','GET-FILE-OFFSET ','GET-FIRST',
            'GET-GREEN-VALUE','GET-HEADER-ENTRY','GET-INDEX-BY-NAMESPACE-NAME','GET-INDEX-BY-QNAME',
            'GET-ITERATION','GET-LAST','GET-LOCALNAME-BY-INDEX','GET-MESSAGE',
            'GET-NEXT','GET-NODE','GET-NUMBER','GET-PARENT',
            'GET-PREV','GET-PRINTERS','GET-property','GET-QNAME-BY-INDEX',
            'GET-RED-VALUE','GET-RELATION','GET-REPOSITIONED-ROW','GET-RGB-VALUE',
            'GET-SELECTED-widget','GET-SERIALIZED','GET-SIGNATURE','GET-SOCKET-OPTION',
            'GET-SOURCE-BUFFER','GET-TAB-ITEM','GET-TEXT-HEIGHT-CHARS','GET-TEXT-HEIGHT-PIXELS',
            'GET-TEXT-WIDTH-CHARS','GET-TEXT-WIDTH-PIXELS','GET-TOP-BUFFER','GET-TYPE-BY-INDEX',
            'GET-TYPE-BY-NAMESPACE-NAME','GET-TYPE-BY-QNAME','GET-URI-BY-INDEX','GET-VALUE-BY-INDEX',
            'GET-VALUE-BY-NAMESPACE-NAME','GET-VALUE-BY-QNAME','GET-WAIT-STATE','IMPORT-NODE',
            'IMPORT-PRINCIPAL','INCREMENT-EXCLUSIVE-ID','INITIALIZE-DOCUMENT-TYPE',
            'INITIATE','INSERT','INSERT-attribute','INSERT-BACKTAB',
            'INSERT-BEFORE','INSERT-FILE','INSERT-ROW','INSERT-STRING',
            'INSERT-TAB','INVOKE','IS-ROW-SELECTED','IS-SELECTED',
            'LIST-property-NAMES','LOAD','LoadControls','LOAD-DOMAINS',
            'LOAD-ICON','LOAD-IMAGE','LOAD-IMAGE-DOWN','LOAD-IMAGE-INSENSITIVE',
            'LOAD-IMAGE-UP','LOAD-MOUSE-POINTER','LOAD-SMALL-ICON','LOCK-REGISTRATION',
            'LOG-AUDIT-EVENT','LOGOUT','LONGCHAR-TO-NODE-VALUE','LOOKUP',
            'MEMPTR-TO-NODE-VALUE','MERGE-CHANGES','MERGE-ROW-CHANGES','MOVE-AFTER-TAB-ITEM',
            'MOVE-BEFORE-TAB-ITEM','MOVE-COLUMN','MOVE-TO-BOTTOM','MOVE-TO-EOF',
            'MOVE-TO-TOP','NODE-VALUE-TO-LONGCHAR','NODE-VALUE-TO-MEMPTR','NORMALIZE',
            'QUERY-CLOSE','QUERY-OPEN','QUERY-PREPARE',
            'READ','READ-FILE','READ-XML','READ-XMLSCHEMA',
            'REFRESH','REFRESH-AUDIT-POLICY','REGISTER-DOMAIN','REJECT-CHANGES',
            'REJECT-ROW-CHANGES','REMOVE-attribute','REMOVE-CHILD','REMOVE-EVENTS-PROCEDURE',
            'REMOVE-SUPER-PROCEDURE','REPLACE','REPLACE-CHILD','REPLACE-SELECTION-TEXT',
            'REPOSITION-BACKWARD','REPOSITION-FORWARD','REPOSITION-TO-ROW','REPOSITION-TO-ROWID',
            'RESET','SAVE','SAVE-FILE','SAVE-ROW-CHANGES',
            'SAX-PARSE','SAX-PARSE-FIRST','SAX-PARSE-NEXT','SCROLL-TO-CURRENT-ROW',
            'SCROLL-TO-ITEM','SCROLL-TO-SELECTED-ROW','SEAL','SEARCH',
            'SELECT-ALL','SELECT-FOCUSED-ROW','SELECT-NEXT-ROW','SELECT-PREV-ROW',
            'SELECT-ROW','SET-ACTOR','SET-APPL-CONTEXT','SET-attribute',
            'SET-attribute-NODE','SET-BLUE-VALUE','SET-BREAK','SET-BUFFERS',
            'SET-CALLBACK','SET-CALLBACK-PROCEDURE','SET-CLIENT','SET-COMMIT',
            'SET-CONNECT-PROCEDURE','SET-DYNAMIC','SET-GREEN-VALUE','SET-INPUT-SOURCE',
            'SET-MUST-UNDERSTAND','SET-NODE','SET-NUMERIC-FORMAT','SET-OUTPUT-DESTINATION',
            'SET-PARAMETER','SET-property','SET-READ-RESPONSE-PROCEDURE','SET-RED-VALUE',
            'SET-REPOSITIONED-ROW','SET-RGB-VALUE','SET-ROLLBACK','SET-SELECTION',
            'SET-SERIALIZED','SET-SOCKET-OPTION','SET-SORT-ARROW','SET-WAIT-STATE',
            'START-DOCUMENT','START-ELEMENT','STOP-PARSING','SYNCHRONIZE',
            'TEMP-TABLE-PREPARE','UPDATE-attribute','URL-DECODE','URL-ENCODE',
            'VALIDATE','VALIDATE-SEAL','WRITE','WRITE-CDATA','USE-INDEX',
            'WRITE-CHARACTERS','WRITE-COMMENT','WRITE-DATA-ELEMENT','WRITE-EMPTY-ELEMENT',
            'WRITE-ENTITY-REF','WRITE-EXTERNAL-DTD','WRITE-FRAGMENT','WRITE-MESSAGE',
            'WRITE-PROCESSING-INSTRUCTION','WRITE-XML','WRITE-XMLSCHEMA','FALSE','true'
            ),
        3 => array(
            'ABSOLUTE','ACCUM','ADD-INTERVAL','ALIAS','mod',
            'AMBIGUOUS','ASC','AUDIT-ENABLED','AVAILABLE',
            'BASE64-DECODE','BASE64-ENCODE','CAN-DO','CAN-FIND',
            'CAN-QUERY','CAN-SET','CAPS','CAST','OS-DIR',
            'CHR','CODEPAGE-CONVERT','COMPARE',
            'COUNT-OF','CURRENT-CHANGED','CURRENT-RESULT-ROW','DATASERVERS',
            'DATA-SOURCE-MODIFIED','DATETIME','DATETIME-TZ',
            'DAY','DBCODEPAGE','DBCOLLATION','DBNAME',
            'DBPARAM','DBRESTRICTIONS','DBTASKID','DBTYPE',
            'DBVERSION','DECIMAL','DECRYPT','DYNAMIC-function',
            'DYNAMIC-NEXT-VALUE','ENCODE','ENCRYPT','ENTERED',
            'ERROR','ETIME','EXP','ENDKEY','END-error',
            'FIRST-OF','FRAME-DB','FRAME-DOWN',
            'FRAME-FIELD','FRAME-FILE','FRAME-INDEX','FRAME-LINE',
            'GATEWAYS','GENERATE-PBE-KEY','GENERATE-PBE-SALT','GENERATE-RANDOM-KEY',
            'GENERATE-UUID','GET-BITS','GET-BYTE','GET-BYTE-ORDER',
            'GET-BYTES','GET-CODEPAGE','GET-CODEPAGES','GET-COLLATION',
            'GET-COLLATIONS','GET-DOUBLE','GET-FLOAT','GET-INT64',
            'GET-LONG','GET-POINTER-VALUE','GET-SHORT','GET-SIZE',
            'GET-STRING','GET-UNSIGNED-LONG','GET-UNSIGNED-SHORT','GO-PENDING',
            'GUID','HEX-DECODE','INDEX',
            'INT64','INTEGER','INTERVAL','IS-ATTR-SPACE',
            'IS-CODEPAGE-FIXED','IS-COLUMN-CODEPAGE','IS-LEAD-BYTE','ISO-DATE',
            'KBLABEL','KEYCODE','KEYFUNCTION','KEYLABEL',
            'KEYWORD','KEYWORD-ALL','LASTKEY',
            'LAST-OF','LC','LDBNAME','LEFT-TRIM',
            'LIBRARY','LINE-COUNTER','LIST-EVENTS','LIST-QUERY-ATTRS',
            'LIST-SET-ATTRS','LIST-widgetS','LOCKED',
            'LOGICAL','MAXIMUM','MD5-DIGEST',
            'MEMBER','MESSAGE-LINES','MINIMUM','MONTH',
            'MTIME','NEW','NEXT-VALUE','SHARED',
            'NOT ENTERED','NOW','NUM-ALIASES','NUM-DBS',
            'NUM-ENTRIES','NUM-RESULTS','OPSYS','OS-DRIVES',
            'OS-ERROR','OS-GETENV','PAGE-NUMBER','PAGE-SIZE',
            'PDBNAME','PROC-HANDLE','PROC-STATUS','PROGRAM-NAME',
            'PROGRESS','PROVERSION','QUERY-OFF-END','QUOTER',
            'RANDOM','RAW','RECID','REJECTED',
            'RETRY','RETURN-VALUE','RGB-VALUE',
            'RIGHT-TRIM','R-INDEX','ROUND','ROWID','LENGTH',
            'SDBNAME','SET-DB-CLIENT','SETUSERID',
            'SHA1-DIGEST','SQRT','SUBSTITUTE','VARIABLE',
            'SUPER','TERMINAL','TIME','TIMEZONE','external',
            'TODAY','TO-ROWID','TRIM','TRUNCATE','return',
            'TYPE-OF','USERID','VALID-EVENT','VALID-HANDLE',
            'VALID-object','WEEKDAY','YEAR','BEGINS','VALUE',
            'EQ','GE','GT','LE','LT','MATCHES','AS','BY','LIKE'
            ),
        4 => array(
            'ACCELERATOR','ACTIVE','ACTOR','ADM-DATA',
            'AFTER-BUFFER','AFTER-ROWID','AFTER-TABLE','ALLOW-COLUMN-SEARCHING',
            'ALWAYS-ON-TOP','APPL-ALERT-BOXES','APPL-CONTEXT-ID','APPSERVER-INFO',
            'APPSERVER-PASSWORD','APPSERVER-USERID','ASYNCHRONOUS','ASYNC-REQUEST-COUNT',
            'ASYNC-REQUEST-HANDLE','ATTACHED-PAIRLIST','attribute-NAMES','ATTR-SPACE',
            'AUDIT-EVENT-CONTEXT','AUTO-COMPLETION','AUTO-DELETE','AUTO-DELETE-XML',
            'AUTO-END-KEY','AUTO-GO','AUTO-INDENT','AUTO-RESIZE',
            'AUTO-RETURN','AUTO-SYNCHRONIZE','AUTO-VALIDATE','AUTO-ZAP',
            'AVAILABLE-FORMATS','BACKGROUND','BASE-ADE','BASIC-LOGGING',
            'BATCH-MODE','BATCH-SIZE','BEFORE-BUFFER','BEFORE-ROWID',
            'BEFORE-TABLE','BGCOLOR','BLANK','BLOCK-ITERATION-DISPLAY',
            'BORDER-BOTTOM-CHARS','BORDER-BOTTOM-PIXELS','BORDER-LEFT-CHARS','BORDER-LEFT-PIXELS',
            'BORDER-RIGHT-CHARS','BORDER-RIGHT-PIXELS','BORDER-TOP-CHARS','BORDER-TOP-PIXELS',
            'BOX','BOX-SELECTABLE','BUFFER-CHARS','BUFFER-FIELD',
            'BUFFER-HANDLE','BUFFER-LINES','BUFFER-NAME','BUFFER-VALUE',
            'BYTES-READ','BYTES-WRITTEN','CACHE','CALL-NAME',
            'CALL-TYPE','CANCEL-BUTTON','CANCELLED','CAN-CREATE',
            'CAN-DELETE','CAN-READ','CAN-WRITE','CAREFUL-PAINT',
            'CASE-SENSITIVE','CENTERED','CHARSET','CHECKED',
            'CHILD-BUFFER','CHILD-NUM','CLASS-TYPE','CLIENT-CONNECTION-ID',
            'CLIENT-TTY','CLIENT-TYPE','CLIENT-WORKSTATION','CODE',
            'CODEPAGE','COLUMN','COLUMN-BGCOLOR','COLUMN-DCOLOR',
            'COLUMN-FGCOLOR','COLUMN-FONT','COLUMN-LABEL','COLUMN-MOVABLE',
            'COLUMN-PFCOLOR','COLUMN-READ-ONLY','COLUMN-RESIZABLE','COLUMN-SCROLLING',
            'COM-HANDLE','COMPLETE','CONFIG-NAME','CONTEXT-HELP',
            'CONTEXT-HELP-FILE','CONTEXT-HELP-ID','CONTROL-BOX','CONVERT-3D-COLORS',
            'CPCASE','CPCOLL','CPINTERNAL','CPLOG',
            'CPPRINT','CPRCODEIN','CPRCODEOUT','CPSTREAM',
            'CPTERM','CRC-VALUE','CURRENT-COLUMN','CURRENT-ENVIRONMENT',
            'CURRENT-ITERATION','CURRENT-ROW-MODIFIED','CURRENT-WINDOW','CURSOR-CHAR',
            'CURSOR-LINE','CURSOR-OFFSET','DATA-ENTRY-RETURN','DATASET',
            'DATA-SOURCE','DATA-SOURCE-COMPLETE-MAP','DATA-TYPE','DATE-FORMAT',
            'DB-REFERENCES','DCOLOR','DDE-ERROR','DDE-ID',
            'DDE-ITEM','DDE-NAME','DDE-TOPIC','DEBLANK',
            'DEBUG-ALERT','DECIMALS','DEFAULT','DEFAULT-BUFFER-HANDLE',
            'DEFAULT-BUTTON','DEFAULT-COMMIT','DELIMITER','DISABLE-AUTO-ZAP',
            'DISPLAY-TIMEZONE','DISPLAY-TYPE','DOMAIN-DESCRIPTION','DOMAIN-NAME',
            'DOMAIN-TYPE','DRAG-ENABLED','DROP-TARGET','DYNAMIC',
            'EDGE-CHARS','EDGE-PIXELS','EDIT-CAN-PASTE','EDIT-CAN-UNDO',
            'EMPTY','ENCODING','ENCRYPTION-SALT','END-USER-PROMPT',
            'ENTRY-TYPES-LIST','ERROR-COLUMN','ERROR-object-DETAIL','ERROR-ROW',
            'ERROR-STRING','EVENT-GROUP-ID','EVENT-PROCEDURE','EVENT-PROCEDURE-CONTEXT',
            'EVENT-TYPE','EXCLUSIVE-ID','EXECUTION-LOG','EXPAND',
            'EXPANDABLE','FGCOLOR','FILE-CREATE-DATE','FILE-CREATE-TIME',
            'FILE-MOD-DATE','FILE-MOD-TIME','FILE-NAME','FILE-OFFSET',
            'FILE-SIZE','FILE-TYPE','FILLED','FILL-MODE',
            'FILL-WHERE-STRING','FIRST-ASYNC-REQUEST','FIRST-BUFFER','FIRST-CHILD',
            'FIRST-COLUMN','FIRST-DATASET','FIRST-DATA-SOURCE','FIRST-object',
            'FIRST-PROCEDURE','FIRST-QUERY','FIRST-SERVER','FIRST-SERVER-SOCKET',
            'FIRST-SOCKET','FIRST-TAB-ITEM','FIT-LAST-COLUMN','FLAT-BUTTON',
            'FOCUSED-ROW','FOCUSED-ROW-SELECTED','FONT','FOREGROUND',
            'FORMAT','FORMATTED','FORM-INPUT','FORM-LONG-INPUT',
            'FORWARD-ONLY','FRAGMENT','FRAME-COL','FRAME-NAME',
            'FRAME-ROW','FRAME-SPACING','FRAME-X','FRAME-Y',
            'FREQUENCY','FULL-HEIGHT-CHARS','FULL-HEIGHT-PIXELS','FULL-PATHNAME',
            'FULL-WIDTH-CHARS','FULL-WIDTH-PIXELS','GRAPHIC-EDGE',
            'GRID-FACTOR-HORIZONTAL','GRID-FACTOR-VERTICAL','GRID-SNAP','GRID-UNIT-HEIGHT-CHARS',
            'GRID-UNIT-HEIGHT-PIXELS','GRID-UNIT-WIDTH-CHARS','GRID-UNIT-WIDTH-PIXELS','GRID-VISIBLE',
            'GROUP-BOX','HANDLE','HANDLER','HAS-LOBS',
            'HAS-RECORDS','HEIGHT-CHARS','HEIGHT-PIXELS','HELP',
            'HIDDEN','HORIZONTAL','HTML-CHARSET','HTML-END-OF-LINE',
            'HTML-END-OF-PAGE','HTML-FRAME-BEGIN','HTML-FRAME-END','HTML-HEADER-BEGIN',
            'HTML-HEADER-END','HTML-TITLE-BEGIN','HTML-TITLE-END','HWND',
            'ICFPARAMETER','ICON','IGNORE-CURRENT-MODIFIED','IMAGE-DOWN',
            'IMAGE-INSENSITIVE','IMAGE-UP','IMMEDIATE-DISPLAY','INDEX-INFORMATION',
            'IN-HANDLE','INHERIT-BGCOLOR','INHERIT-FGCOLOR','INITIAL','INIT',
            'INNER-CHARS','INNER-LINES','INPUT-VALUE','INSTANTIATING-PROCEDURE',
            'INTERNAL-ENTRIES','IS-CLASS','IS-OPEN','IS-PARAMETER-SET',
            'IS-XML','ITEMS-PER-ROW','KEEP-CONNECTION-OPEN','KEEP-FRAME-Z-ORDER',
            'KEEP-SECURITY-CACHE','KEY','KEYS','LABEL',
            'LABEL-BGCOLOR','LABEL-DCOLOR','LABEL-FGCOLOR','LABEL-FONT',
            'LABELS','LANGUAGES','LARGE','LARGE-TO-SMALL',
            'LAST-ASYNC-REQUEST','LAST-BATCH','LAST-CHILD','LAST-object',
            'LAST-PROCEDURE','LAST-SERVER','LAST-SERVER-SOCKET','LAST-SOCKET',
            'LAST-TAB-ITEM','LINE','LIST-ITEM-PAIRS','LIST-ITEMS',
            'LITERAL-QUESTION','LOCAL-HOST','LOCAL-NAME','LOCAL-PORT',
            'LOCATOR-COLUMN-NUMBER','LOCATOR-LINE-NUMBER','LOCATOR-PUBLIC-ID','LOCATOR-system-ID',
            'LOCATOR-TYPE','LOG-ENTRY-TYPES','LOGFILE-NAME','LOGGING-LEVEL',
            'LOGIN-EXPIRATION-TIMESTAMP','LOGIN-HOST','LOGIN-STATE','LOG-THRESHOLD',
            'MANDATORY','MANUAL-HIGHLIGHT','MAX-BUTTON','MAX-CHARS',
            'MAX-DATA-GUESS','MAX-HEIGHT-CHARS','MAX-HEIGHT-PIXELS','MAX-VALUE',
            'MAX-WIDTH-CHARS','MAX-WIDTH-PIXELS','MD5-VALUE','MENU-BAR',
            'MENU-KEY','MENU-MOUSE','MERGE-BY-FIELD','MESSAGE-AREA',
            'MESSAGE-AREA-FONT','MIN-BUTTON','MIN-COLUMN-WIDTH-CHARS','MIN-COLUMN-WIDTH-PIXELS',
            'MIN-HEIGHT-CHARS','MIN-HEIGHT-PIXELS','MIN-SCHEMA-MARSHAL','MIN-VALUE',
            'MIN-WIDTH-CHARS','MIN-WIDTH-PIXELS','MODIFIED','MOUSE-POINTER',
            'MOVABLE','MULTI-COMPILE','MULTIPLE','MULTITASKING-INTERVAL',
            'MUST-UNDERSTAND','NAME','NAMESPACE-PREFIX','NAMESPACE-URI',
            'NEEDS-APPSERVER-PROMPT','NEEDS-PROMPT','NESTED','NEW-ROW',
            'NEXT-COLUMN','NEXT-ROWID','NEXT-SIBLING','NEXT-TAB-ITEM', 'NO-BOX',
            'NO-CURRENT-VALUE','NODE-VALUE','NO-EMPTY-SPACE','NO-FOCUS',
            'NONAMESPACE-SCHEMA-LOCATION','NO-SCHEMA-MARSHAL','NO-VALIDATE','NUM-BUFFERS',
            'NUM-BUTTONS','NUM-CHILD-RELATIONS','NUM-CHILDREN','NUM-COLUMNS',
            'NUM-DROPPED-FILES','NUMERIC-DECIMAL-POINT','NUMERIC-FORMAT','NUMERIC-SEPARATOR',
            'NUM-FIELDS','NUM-FORMATS','NUM-HEADER-ENTRIES','NUM-ITEMS',
            'NUM-ITERATIONS','NUM-LINES','NUM-LOCKED-COLUMNS','NUM-LOG-FILES',
            'NUM-MESSAGES','NUM-PARAMETERS','NUM-REFERENCES','NUM-RELATIONS',
            'NUM-REPLACED','NUM-SELECTED-ROWS','NUM-SELECTED-WIDGETS','NUM-SOURCE-BUFFERS',
            'NUM-TABS','NUM-TOP-BUFFERS','NUM-TO-RETAIN','NUM-VISIBLE-COLUMNS',
            'ON-FRAME-BORDER','ORIGIN-HANDLE','ORIGIN-ROWID','OWNER',
            'OWNER-DOCUMENT','PAGE-BOTTOM','PAGE-TOP','PARAMETER',
            'PARENT','PARENT-BUFFER','PARENT-RELATION','PARSE-STATUS',
            'PASSWORD-FIELD','PATHNAME','PBE-HASH-ALGORITHM','PBE-KEY-ROUNDS',
            'PERSISTENT','PERSISTENT-CACHE-DISABLED','PERSISTENT-PROCEDURE','PFCOLOR',
            'PIXELS-PER-COLUMN','PIXELS-PER-ROW','POPUP-MENU','POPUP-ONLY',
            'POSITION','PREFER-DATASET','PREPARED','PREPARE-STRING',
            'PREV-COLUMN','PREV-SIBLING','PREV-TAB-ITEM','PRIMARY',
            'PRINTER-CONTROL-HANDLE','PRINTER-HDC','PRINTER-NAME','PRINTER-PORT',
            'PRIVATE-DATA','PROCEDURE-NAME','PROGRESS-SOURCE','PROXY',
            'PROXY-PASSWORD','PROXY-USERID','PUBLIC-ID','PUBLISHED-EVENTS',
            'RADIO-BUTTONS','READ-ONLY','RECORD-LENGTH',
            'REFRESHABLE','RELATION-FIELDS','RELATIONS-ACTIVE','REMOTE',
            'REMOTE-HOST','REMOTE-PORT','RESIZABLE','RESIZE',
            'RESTART-ROWID','RETAIN-SHAPE','RETURN-INSERTED','RETURN-VALUE-DATA-TYPE',
            'ROLES','ROUNDED','COL','ROW','ROW-HEIGHT-CHARS',
            'ROW-HEIGHT-PIXELS','ROW-MARKERS','ROW-RESIZABLE','ROW-STATE',
            'SAVE-WHERE-STRING','SCHEMA-CHANGE','SCHEMA-LOCATION','SCHEMA-MARSHAL',
            'SCHEMA-PATH','SCREEN-LINES','SCREEN-VALUE','SCROLLABLE',
            'SCROLLBAR-HORIZONTAL','SCROLL-BARS','SCROLLBAR-VERTICAL','SEAL-TIMESTAMP',
            'SELECTABLE','SELECTED','SELECTION-END','SELECTION-START',
            'SELECTION-TEXT','SENSITIVE','SEPARATOR-FGCOLOR','SEPARATORS',
            'SERVER','SERVER-CONNECTION-BOUND','SERVER-CONNECTION-BOUND-REQUEST','SERVER-CONNECTION-CONTEXT',
            'SERVER-CONNECTION-ID','SERVER-OPERATING-MODE','SESSION-END','SESSION-ID',
            'SHOW-IN-TASKBAR','SIDE-LABEL-HANDLE','SIDE-LABELS','SKIP-DELETED-RECORD',
            'SMALL-ICON','SMALL-TITLE','SOAP-FAULT-ACTOR','SOAP-FAULT-CODE',
            'SOAP-FAULT-DETAIL','SOAP-FAULT-STRING','SORT','SORT-ASCENDING',
            'SORT-NUMBER','SSL-SERVER-NAME','STANDALONE','STARTUP-PARAMETERS',
            'STATE-DETAIL','STATUS-AREA','STATUS-AREA-FONT','STOPPED',
            'STREAM','STRETCH-TO-FIT','STRICT','STRING-VALUE',
            'SUBTYPE','SUPER-PROCEDURES','SUPPRESS-NAMESPACE-PROCESSING','SUPPRESS-WARNINGS',
            'SYMMETRIC-ENCRYPTION-ALGORITHM','SYMMETRIC-ENCRYPTION-IV','SYMMETRIC-ENCRYPTION-KEY','SYMMETRIC-SUPPORT',
            'system-ALERT-BOXES','system-ID','TABLE','TABLE-CRC-LIST',
            'TABLE-HANDLE','TABLE-LIST','TABLE-NUMBER','TAB-POSITION',
            'TAB-STOP','TEMP-DIRECTORY','TEXT-SELECTED','THREE-D',
            'TIC-MARKS','TIME-SOURCE','TITLE','TITLE-BGCOLOR','FIELD',
            'TITLE-DCOLOR','TITLE-FGCOLOR','TITLE-FONT','TOOLTIP',
            'TOOLTIPS','TOP-ONLY','TRACKING-CHANGES','TRANSACTION',
            'TRANS-INIT-PROCEDURE','TRANSPARENT','TYPE','UNIQUE-ID',
            'UNIQUE-MATCH','URL','URL-PASSWORD','URL-USERID','EXTENT',
            'USER-ID','V6DISPLAY','VALIDATE-EXPRESSION','VALIDATE-MESSAGE',
            'VALIDATE-XML','VALIDATION-ENABLED','VIEW-FIRST-COLUMN-ON-REOPEN',
            'VIRTUAL-HEIGHT-CHARS','VIRTUAL-HEIGHT-PIXELS','VIRTUAL-WIDTH-CHARS','VIRTUAL-WIDTH-PIXELS',
            'VISIBLE','WARNING','WHERE-STRING','widget-ENTER','DATE',
            'widget-LEAVE','WIDTH-CHARS','WIDTH-PIXELS','WINDOW-STATE',
            'WINDOW-system','WORD-WRAP','WORK-AREA-HEIGHT-PIXELS','WORK-AREA-WIDTH-PIXELS',
            'WORK-AREA-X','WORK-AREA-Y','WRITE-STATUS','X','widget-Handle',
            'X-DOCUMENT','XML-DATA-TYPE','XML-NODE-TYPE','XML-SCHEMA-PATH',
            'XML-SUPPRESS-NAMESPACE-PROCESSING','Y','YEAR-OFFSET','CHARACTER',
            'LONGCHAR','MEMPTR','CHAR','DEC','INT','LOG','DECI','INTE','LOGI','long'
            )
        ),
    'SYMBOLS' => array(
        '(', ')', '[', ']', '{', '}',
        '<', '>', '=',
        '+', '-', '*', '/',
        '!', '@', '%', '|', '$',
        ':', '.', ';', ',',
        '?', '<=','<>','>=', '\\'
        ),
    'CASE_SENSITIVE' => array (
        GESHI_COMMENTS => false,
        1 => false,
        2 => false,
        3 => false,
        4 => false
        ),
    'STYLES' => array (
        'KEYWORDS' => array (
            1 => 'color: #0000ff; font-weight: bold;',
            2 => 'color: #1D16B2;',
            3 => 'color: #993333;',
            4 => 'color: #0000ff;'
            ),
        'COMMENTS' => array (
//            1 => 'color: #808080; font-style: italic;',
//            2 => 'color: #808080; font-style: italic;',
            'MULTI' => 'color: #808080; font-style: italic;'
            ),
        'ESCAPE_CHAR' => array (
            0 => 'color: #000099; font-weight: bold;'
            ),
        'BRACKETS' => array (
            0 => 'color: #66cc66;'
            ),
        'STRINGS' => array (
            0 => 'color: #ff0000;'
            ),
        'NUMBERS' => array (
            0 => 'color: #cc66cc;'
            ),
        'METHODS' => array (
            0 => 'color: #006600;'
            ),
        'SYMBOLS' => array (
            0 => 'color: #66cc66;'
            ),
        'REGEXPS' => array (
            ),
        'SCRIPT' => array (
            )
        ),
    'URLS' => array(
        1 => '',
        2 => '',
        3 => '',
        4 => ''
        ),
    'OOLANG' => true,
    'OBJECT_SPLITTERS' => array(
        0 => ':'
        ),
    'REGEXPS' => array (
        ),
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
    'SCRIPT_DELIMITERS' => array (
        ),
    'HIGHLIGHT_STRICT_BLOCK' => array (
        ),
    'TAB_WIDTH' => 4,
    'PARSER_CONTROL' => array(
        'KEYWORDS' => array(
            'DISALLOWED_BEFORE' => "(?  "(?![\-a-zA-Z0-9_%])",
            1 => array(
                'SPACE_AS_WHITESPACE' => true
                ),
            2 => array(
                'SPACE_AS_WHITESPACE' => true
                )
            )
        )
);

?>geshi/geshi.php0000664000175000017500000061744012014173561012713 0ustar  benbebenbe, Benny Baumann 
 * @copyright  (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann
 * @license    http://gnu.org/copyleft/gpl.html GNU GPL
 *
 */

//
// GeSHi Constants
// You should use these constant names in your programs instead of
// their values - you never know when a value may change in a future
// version
//

/** The version of this GeSHi file */
define('GESHI_VERSION', '1.0.8.11');

// Define the root directory for the GeSHi code tree
if (!defined('GESHI_ROOT')) {
    /** The root directory for GeSHi */
    define('GESHI_ROOT', dirname(__FILE__) . DIRECTORY_SEPARATOR);
}
/** The language file directory for GeSHi
    @access private */
define('GESHI_LANG_ROOT', GESHI_ROOT . 'geshi' . DIRECTORY_SEPARATOR);

// Define if GeSHi should be paranoid about security
if (!defined('GESHI_SECURITY_PARANOID')) {
    /** Tells GeSHi to be paranoid about security settings */
    define('GESHI_SECURITY_PARANOID', false);
}

// Line numbers - use with enable_line_numbers()
/** Use no line numbers when building the result */
define('GESHI_NO_LINE_NUMBERS', 0);
/** Use normal line numbers when building the result */
define('GESHI_NORMAL_LINE_NUMBERS', 1);
/** Use fancy line numbers when building the result */
define('GESHI_FANCY_LINE_NUMBERS', 2);

// Container HTML type
/** Use nothing to surround the source */
define('GESHI_HEADER_NONE', 0);
/** Use a "div" to surround the source */
define('GESHI_HEADER_DIV', 1);
/** Use a "pre" to surround the source */
define('GESHI_HEADER_PRE', 2);
/** Use a pre to wrap lines when line numbers are enabled or to wrap the whole code. */
define('GESHI_HEADER_PRE_VALID', 3);
/**
 * Use a "table" to surround the source:
 *
 *  
 *    
 *    
 *    
 *  
$header
$linenumbers
$code>
$footer
* * this is essentially only a workaround for Firefox, see sf#1651996 or take a look at * https://bugzilla.mozilla.org/show_bug.cgi?id=365805 * @note when linenumbers are disabled this is essentially the same as GESHI_HEADER_PRE */ define('GESHI_HEADER_PRE_TABLE', 4); // Capatalisation constants /** Lowercase keywords found */ define('GESHI_CAPS_NO_CHANGE', 0); /** Uppercase keywords found */ define('GESHI_CAPS_UPPER', 1); /** Leave keywords found as the case that they are */ define('GESHI_CAPS_LOWER', 2); // Link style constants /** Links in the source in the :link state */ define('GESHI_LINK', 0); /** Links in the source in the :hover state */ define('GESHI_HOVER', 1); /** Links in the source in the :active state */ define('GESHI_ACTIVE', 2); /** Links in the source in the :visited state */ define('GESHI_VISITED', 3); // Important string starter/finisher // Note that if you change these, they should be as-is: i.e., don't // write them as if they had been run through htmlentities() /** The starter for important parts of the source */ define('GESHI_START_IMPORTANT', ''); /** The ender for important parts of the source */ define('GESHI_END_IMPORTANT', ''); /**#@+ * @access private */ // When strict mode applies for a language /** Strict mode never applies (this is the most common) */ define('GESHI_NEVER', 0); /** Strict mode *might* apply, and can be enabled or disabled by {@link GeSHi->enable_strict_mode()} */ define('GESHI_MAYBE', 1); /** Strict mode always applies */ define('GESHI_ALWAYS', 2); // Advanced regexp handling constants, used in language files /** The key of the regex array defining what to search for */ define('GESHI_SEARCH', 0); /** The key of the regex array defining what bracket group in a matched search to use as a replacement */ define('GESHI_REPLACE', 1); /** The key of the regex array defining any modifiers to the regular expression */ define('GESHI_MODIFIERS', 2); /** The key of the regex array defining what bracket group in a matched search to put before the replacement */ define('GESHI_BEFORE', 3); /** The key of the regex array defining what bracket group in a matched search to put after the replacement */ define('GESHI_AFTER', 4); /** The key of the regex array defining a custom keyword to use for this regexp's html tag class */ define('GESHI_CLASS', 5); /** Used in language files to mark comments */ define('GESHI_COMMENTS', 0); /** Used to work around missing PHP features **/ define('GESHI_PHP_PRE_433', !(version_compare(PHP_VERSION, '4.3.3') === 1)); /** make sure we can call stripos **/ if (!function_exists('stripos')) { // the offset param of preg_match is not supported below PHP 4.3.3 if (GESHI_PHP_PRE_433) { /** * @ignore */ function stripos($haystack, $needle, $offset = null) { if (!is_null($offset)) { $haystack = substr($haystack, $offset); } if (preg_match('/'. preg_quote($needle, '/') . '/', $haystack, $match, PREG_OFFSET_CAPTURE)) { return $match[0][1]; } return false; } } else { /** * @ignore */ function stripos($haystack, $needle, $offset = null) { if (preg_match('/'. preg_quote($needle, '/') . '/', $haystack, $match, PREG_OFFSET_CAPTURE, $offset)) { return $match[0][1]; } return false; } } } /** some old PHP / PCRE subpatterns only support up to xxx subpatterns in regular expressions. Set this to false if your PCRE lib is up to date @see GeSHi->optimize_regexp_list() **/ define('GESHI_MAX_PCRE_SUBPATTERNS', 500); /** it's also important not to generate too long regular expressions be generous here... but keep in mind, that when reaching this limit we still have to close open patterns. 12k should do just fine on a 16k limit. @see GeSHi->optimize_regexp_list() **/ define('GESHI_MAX_PCRE_LENGTH', 12288); //Number format specification /** Basic number format for integers */ define('GESHI_NUMBER_INT_BASIC', 1); //Default integers \d+ /** Enhanced number format for integers like seen in C */ define('GESHI_NUMBER_INT_CSTYLE', 2); //Default C-Style \d+[lL]? /** Number format to highlight binary numbers with a suffix "b" */ define('GESHI_NUMBER_BIN_SUFFIX', 16); //[01]+[bB] /** Number format to highlight binary numbers with a prefix % */ define('GESHI_NUMBER_BIN_PREFIX_PERCENT', 32); //%[01]+ /** Number format to highlight binary numbers with a prefix 0b (C) */ define('GESHI_NUMBER_BIN_PREFIX_0B', 64); //0b[01]+ /** Number format to highlight octal numbers with a leading zero */ define('GESHI_NUMBER_OCT_PREFIX', 256); //0[0-7]+ /** Number format to highlight octal numbers with a prefix 0o (logtalk) */ define('GESHI_NUMBER_OCT_PREFIX_0O', 512); //0[0-7]+ /** Number format to highlight octal numbers with a leading @ (Used in HiSofts Devpac series). */ define('GESHI_NUMBER_OCT_PREFIX_AT', 1024); //@[0-7]+ /** Number format to highlight octal numbers with a suffix of o */ define('GESHI_NUMBER_OCT_SUFFIX', 2048); //[0-7]+[oO] /** Number format to highlight hex numbers with a prefix 0x */ define('GESHI_NUMBER_HEX_PREFIX', 4096); //0x[0-9a-fA-F]+ /** Number format to highlight hex numbers with a prefix $ */ define('GESHI_NUMBER_HEX_PREFIX_DOLLAR', 8192); //$[0-9a-fA-F]+ /** Number format to highlight hex numbers with a suffix of h */ define('GESHI_NUMBER_HEX_SUFFIX', 16384); //[0-9][0-9a-fA-F]*h /** Number format to highlight floating-point numbers without support for scientific notation */ define('GESHI_NUMBER_FLT_NONSCI', 65536); //\d+\.\d+ /** Number format to highlight floating-point numbers without support for scientific notation */ define('GESHI_NUMBER_FLT_NONSCI_F', 131072); //\d+(\.\d+)?f /** Number format to highlight floating-point numbers with support for scientific notation (E) and optional leading zero */ define('GESHI_NUMBER_FLT_SCI_SHORT', 262144); //\.\d+e\d+ /** Number format to highlight floating-point numbers with support for scientific notation (E) and required leading digit */ define('GESHI_NUMBER_FLT_SCI_ZERO', 524288); //\d+(\.\d+)?e\d+ //Custom formats are passed by RX array // Error detection - use these to analyse faults /** No sourcecode to highlight was specified * @deprecated */ define('GESHI_ERROR_NO_INPUT', 1); /** The language specified does not exist */ define('GESHI_ERROR_NO_SUCH_LANG', 2); /** GeSHi could not open a file for reading (generally a language file) */ define('GESHI_ERROR_FILE_NOT_READABLE', 3); /** The header type passed to {@link GeSHi->set_header_type()} was invalid */ define('GESHI_ERROR_INVALID_HEADER_TYPE', 4); /** The line number type passed to {@link GeSHi->enable_line_numbers()} was invalid */ define('GESHI_ERROR_INVALID_LINE_NUMBER_TYPE', 5); /**#@-*/ /** * The GeSHi Class. * * Please refer to the documentation for GeSHi 1.0.X that is available * at http://qbnz.com/highlighter/documentation.php for more information * about how to use this class. * * @package geshi * @author Nigel McNie , Benny Baumann * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann */ class GeSHi { /**#@+ * @access private */ /** * The source code to highlight * @var string */ var $source = ''; /** * The language to use when highlighting * @var string */ var $language = ''; /** * The data for the language used * @var array */ var $language_data = array(); /** * The path to the language files * @var string */ var $language_path = GESHI_LANG_ROOT; /** * The error message associated with an error * @var string * @todo check err reporting works */ var $error = false; /** * Possible error messages * @var array */ var $error_messages = array( GESHI_ERROR_NO_SUCH_LANG => 'GeSHi could not find the language {LANGUAGE} (using path {PATH})', GESHI_ERROR_FILE_NOT_READABLE => 'The file specified for load_from_file was not readable', GESHI_ERROR_INVALID_HEADER_TYPE => 'The header type specified is invalid', GESHI_ERROR_INVALID_LINE_NUMBER_TYPE => 'The line number type specified is invalid' ); /** * Whether highlighting is strict or not * @var boolean */ var $strict_mode = false; /** * Whether to use CSS classes in output * @var boolean */ var $use_classes = false; /** * The type of header to use. Can be one of the following * values: * * - GESHI_HEADER_PRE: Source is outputted in a "pre" HTML element. * - GESHI_HEADER_DIV: Source is outputted in a "div" HTML element. * - GESHI_HEADER_NONE: No header is outputted. * * @var int */ var $header_type = GESHI_HEADER_PRE; /** * Array of permissions for which lexics should be highlighted * @var array */ var $lexic_permissions = array( 'KEYWORDS' => array(), 'COMMENTS' => array('MULTI' => true), 'REGEXPS' => array(), 'ESCAPE_CHAR' => true, 'BRACKETS' => true, 'SYMBOLS' => false, 'STRINGS' => true, 'NUMBERS' => true, 'METHODS' => true, 'SCRIPT' => true ); /** * The time it took to parse the code * @var double */ var $time = 0; /** * The content of the header block * @var string */ var $header_content = ''; /** * The content of the footer block * @var string */ var $footer_content = ''; /** * The style of the header block * @var string */ var $header_content_style = ''; /** * The style of the footer block * @var string */ var $footer_content_style = ''; /** * Tells if a block around the highlighted source should be forced * if not using line numbering * @var boolean */ var $force_code_block = false; /** * The styles for hyperlinks in the code * @var array */ var $link_styles = array(); /** * Whether important blocks should be recognised or not * @var boolean * @deprecated * @todo REMOVE THIS FUNCTIONALITY! */ var $enable_important_blocks = false; /** * Styles for important parts of the code * @var string * @deprecated * @todo As above - rethink the whole idea of important blocks as it is buggy and * will be hard to implement in 1.2 */ var $important_styles = 'font-weight: bold; color: red;'; // Styles for important parts of the code /** * Whether CSS IDs should be added to the code * @var boolean */ var $add_ids = false; /** * Lines that should be highlighted extra * @var array */ var $highlight_extra_lines = array(); /** * Styles of lines that should be highlighted extra * @var array */ var $highlight_extra_lines_styles = array(); /** * Styles of extra-highlighted lines * @var string */ var $highlight_extra_lines_style = 'background-color: #ffc;'; /** * The line ending * If null, nl2br() will be used on the result string. * Otherwise, all instances of \n will be replaced with $line_ending * @var string */ var $line_ending = null; /** * Number at which line numbers should start at * @var int */ var $line_numbers_start = 1; /** * The overall style for this code block * @var string */ var $overall_style = 'font-family:monospace;'; /** * The style for the actual code * @var string */ var $code_style = 'font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;'; /** * The overall class for this code block * @var string */ var $overall_class = ''; /** * The overall ID for this code block * @var string */ var $overall_id = ''; /** * Line number styles * @var string */ var $line_style1 = 'font-weight: normal; vertical-align:top;'; /** * Line number styles for fancy lines * @var string */ var $line_style2 = 'font-weight: bold; vertical-align:top;'; /** * Style for line numbers when GESHI_HEADER_PRE_TABLE is chosen * @var string */ var $table_linenumber_style = 'width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;'; /** * Flag for how line numbers are displayed * @var boolean */ var $line_numbers = GESHI_NO_LINE_NUMBERS; /** * Flag to decide if multi line spans are allowed. Set it to false to make sure * each tag is closed before and reopened after each linefeed. * @var boolean */ var $allow_multiline_span = true; /** * The "nth" value for fancy line highlighting * @var int */ var $line_nth_row = 0; /** * The size of tab stops * @var int */ var $tab_width = 8; /** * Should we use language-defined tab stop widths? * @var int */ var $use_language_tab_width = false; /** * Default target for keyword links * @var string */ var $link_target = ''; /** * The encoding to use for entity encoding * NOTE: Used with Escape Char Sequences to fix UTF-8 handling (cf. SF#2037598) * @var string */ var $encoding = 'utf-8'; /** * Should keywords be linked? * @var boolean */ var $keyword_links = true; /** * Currently loaded language file * @var string * @since 1.0.7.22 */ var $loaded_language = ''; /** * Wether the caches needed for parsing are built or not * * @var bool * @since 1.0.8 */ var $parse_cache_built = false; /** * Work around for Suhosin Patch with disabled /e modifier * * Note from suhosins author in config file: *
* The /e modifier inside preg_replace() allows code execution. * Often it is the cause for remote code execution exploits. It is wise to * deactivate this feature and test where in the application it is used. * The developer using the /e modifier should be made aware that he should * use preg_replace_callback() instead *
* * @var array * @since 1.0.8 */ var $_kw_replace_group = 0; var $_rx_key = 0; /** * some "callback parameters" for handle_multiline_regexps * * @since 1.0.8 * @access private * @var string */ var $_hmr_before = ''; var $_hmr_replace = ''; var $_hmr_after = ''; var $_hmr_key = 0; /**#@-*/ /** * Creates a new GeSHi object, with source and language * * @param string The source code to highlight * @param string The language to highlight the source with * @param string The path to the language file directory. This * is deprecated! I've backported the auto path * detection from the 1.1.X dev branch, so now it * should be automatically set correctly. If you have * renamed the language directory however, you will * still need to set the path using this parameter or * {@link GeSHi->set_language_path()} * @since 1.0.0 */ function GeSHi($source = '', $language = '', $path = '') { if (!empty($source)) { $this->set_source($source); } if (!empty($language)) { $this->set_language($language); } $this->set_language_path($path); } /** * Returns the version of GeSHi * * @return string * @since 1 0.8.11 */ function get_version() { return GESHI_VERSION; } /** * Returns an error message associated with the last GeSHi operation, * or false if no error has occured * * @return string|false An error message if there has been an error, else false * @since 1.0.0 */ function error() { if ($this->error) { //Put some template variables for debugging here ... $debug_tpl_vars = array( '{LANGUAGE}' => $this->language, '{PATH}' => $this->language_path ); $msg = str_replace( array_keys($debug_tpl_vars), array_values($debug_tpl_vars), $this->error_messages[$this->error]); return "
GeSHi Error: $msg (code {$this->error})
"; } return false; } /** * Gets a human-readable language name (thanks to Simon Patterson * for the idea :)) * * @return string The name for the current language * @since 1.0.2 */ function get_language_name() { if (GESHI_ERROR_NO_SUCH_LANG == $this->error) { return $this->language_data['LANG_NAME'] . ' (Unknown Language)'; } return $this->language_data['LANG_NAME']; } /** * Sets the source code for this object * * @param string The source code to highlight * @since 1.0.0 */ function set_source($source) { $this->source = $source; $this->highlight_extra_lines = array(); } /** * Sets the language for this object * * @note since 1.0.8 this function won't reset language-settings by default anymore! * if you need this set $force_reset = true * * @param string The name of the language to use * @since 1.0.0 */ function set_language($language, $force_reset = false) { if ($force_reset) { $this->loaded_language = false; } //Clean up the language name to prevent malicious code injection $language = preg_replace('#[^a-zA-Z0-9\-_]#', '', $language); $language = strtolower($language); //Retreive the full filename $file_name = $this->language_path . $language . '.php'; if ($file_name == $this->loaded_language) { // this language is already loaded! return; } $this->language = $language; $this->error = false; $this->strict_mode = GESHI_NEVER; //Check if we can read the desired file if (!is_readable($file_name)) { $this->error = GESHI_ERROR_NO_SUCH_LANG; return; } // Load the language for parsing $this->load_language($file_name); } /** * Sets the path to the directory containing the language files. Note * that this path is relative to the directory of the script that included * geshi.php, NOT geshi.php itself. * * @param string The path to the language directory * @since 1.0.0 * @deprecated The path to the language files should now be automatically * detected, so this method should no longer be needed. The * 1.1.X branch handles manual setting of the path differently * so this method will disappear in 1.2.0. */ function set_language_path($path) { if(strpos($path,':')) { //Security Fix to prevent external directories using fopen wrappers. if(DIRECTORY_SEPARATOR == "\\") { if(!preg_match('#^[a-zA-Z]:#', $path) || false !== strpos($path, ':', 2)) { return; } } else { return; } } if(preg_match('#[^/a-zA-Z0-9_\.\-\\\s:]#', $path)) { //Security Fix to prevent external directories using fopen wrappers. return; } if(GESHI_SECURITY_PARANOID && false !== strpos($path, '/.')) { //Security Fix to prevent external directories using fopen wrappers. return; } if(GESHI_SECURITY_PARANOID && false !== strpos($path, '..')) { //Security Fix to prevent external directories using fopen wrappers. return; } if ($path) { $this->language_path = ('/' == $path[strlen($path) - 1]) ? $path : $path . '/'; $this->set_language($this->language); // otherwise set_language_path has no effect } } /** * Get supported langs or an associative array lang=>full_name. * @param boolean $longnames * @return array */ function get_supported_languages($full_names=false) { // return array $back = array(); // we walk the lang root $dir = dir($this->language_path); // foreach entry while (false !== ($entry = $dir->read())) { $full_path = $this->language_path.$entry; // Skip all dirs if (is_dir($full_path)) { continue; } // we only want lang.php files if (!preg_match('/^([^.]+)\.php$/', $entry, $matches)) { continue; } // Raw lang name is here $langname = $matches[1]; // We want the fullname too? if ($full_names === true) { if (false !== ($fullname = $this->get_language_fullname($langname))) { $back[$langname] = $fullname; // we go associative } } else { // just store raw langname $back[] = $langname; } } $dir->close(); return $back; } /** * Get full_name for a lang or false. * @param string $language short langname (html4strict for example) * @return mixed */ function get_language_fullname($language) { //Clean up the language name to prevent malicious code injection $language = preg_replace('#[^a-zA-Z0-9\-_]#', '', $language); $language = strtolower($language); // get fullpath-filename for a langname $fullpath = $this->language_path.$language.'.php'; // we need to get contents :S if (false === ($data = file_get_contents($fullpath))) { $this->error = sprintf('Geshi::get_lang_fullname() Unknown Language: %s', $language); return false; } // match the langname if (!preg_match('/\'LANG_NAME\'\s*=>\s*\'((?:[^\']|\\\')+?)\'/', $data, $matches)) { $this->error = sprintf('Geshi::get_lang_fullname(%s): Regex can not detect language', $language); return false; } // return fullname for langname return stripcslashes($matches[1]); } /** * Sets the type of header to be used. * * If GESHI_HEADER_DIV is used, the code is surrounded in a "div".This * means more source code but more control over tab width and line-wrapping. * GESHI_HEADER_PRE means that a "pre" is used - less source, but less * control. Default is GESHI_HEADER_PRE. * * From 1.0.7.2, you can use GESHI_HEADER_NONE to specify that no header code * should be outputted. * * @param int The type of header to be used * @since 1.0.0 */ function set_header_type($type) { //Check if we got a valid header type if (!in_array($type, array(GESHI_HEADER_NONE, GESHI_HEADER_DIV, GESHI_HEADER_PRE, GESHI_HEADER_PRE_VALID, GESHI_HEADER_PRE_TABLE))) { $this->error = GESHI_ERROR_INVALID_HEADER_TYPE; return; } //Set that new header type $this->header_type = $type; } /** * Sets the styles for the code that will be outputted * when this object is parsed. The style should be a * string of valid stylesheet declarations * * @param string The overall style for the outputted code block * @param boolean Whether to merge the styles with the current styles or not * @since 1.0.0 */ function set_overall_style($style, $preserve_defaults = false) { if (!$preserve_defaults) { $this->overall_style = $style; } else { $this->overall_style .= $style; } } /** * Sets the overall classname for this block of code. This * class can then be used in a stylesheet to style this object's * output * * @param string The class name to use for this block of code * @since 1.0.0 */ function set_overall_class($class) { $this->overall_class = $class; } /** * Sets the overall id for this block of code. This id can then * be used in a stylesheet to style this object's output * * @param string The ID to use for this block of code * @since 1.0.0 */ function set_overall_id($id) { $this->overall_id = $id; } /** * Sets whether CSS classes should be used to highlight the source. Default * is off, calling this method with no arguments will turn it on * * @param boolean Whether to turn classes on or not * @since 1.0.0 */ function enable_classes($flag = true) { $this->use_classes = ($flag) ? true : false; } /** * Sets the style for the actual code. This should be a string * containing valid stylesheet declarations. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * Note: Use this method to override any style changes you made to * the line numbers if you are using line numbers, else the line of * code will have the same style as the line number! Consult the * GeSHi documentation for more information about this. * * @param string The style to use for actual code * @param boolean Whether to merge the current styles with the new styles * @since 1.0.2 */ function set_code_style($style, $preserve_defaults = false) { if (!$preserve_defaults) { $this->code_style = $style; } else { $this->code_style .= $style; } } /** * Sets the styles for the line numbers. * * @param string The style for the line numbers that are "normal" * @param string|boolean If a string, this is the style of the line * numbers that are "fancy", otherwise if boolean then this * defines whether the normal styles should be merged with the * new normal styles or not * @param boolean If set, is the flag for whether to merge the "fancy" * styles with the current styles or not * @since 1.0.2 */ function set_line_style($style1, $style2 = '', $preserve_defaults = false) { //Check if we got 2 or three parameters if (is_bool($style2)) { $preserve_defaults = $style2; $style2 = ''; } //Actually set the new styles if (!$preserve_defaults) { $this->line_style1 = $style1; $this->line_style2 = $style2; } else { $this->line_style1 .= $style1; $this->line_style2 .= $style2; } } /** * Sets whether line numbers should be displayed. * * Valid values for the first parameter are: * * - GESHI_NO_LINE_NUMBERS: Line numbers will not be displayed * - GESHI_NORMAL_LINE_NUMBERS: Line numbers will be displayed * - GESHI_FANCY_LINE_NUMBERS: Fancy line numbers will be displayed * * For fancy line numbers, the second parameter is used to signal which lines * are to be fancy. For example, if the value of this parameter is 5 then every * 5th line will be fancy. * * @param int How line numbers should be displayed * @param int Defines which lines are fancy * @since 1.0.0 */ function enable_line_numbers($flag, $nth_row = 5) { if (GESHI_NO_LINE_NUMBERS != $flag && GESHI_NORMAL_LINE_NUMBERS != $flag && GESHI_FANCY_LINE_NUMBERS != $flag) { $this->error = GESHI_ERROR_INVALID_LINE_NUMBER_TYPE; } $this->line_numbers = $flag; $this->line_nth_row = $nth_row; } /** * Sets wether spans and other HTML markup generated by GeSHi can * span over multiple lines or not. Defaults to true to reduce overhead. * Set it to false if you want to manipulate the output or manually display * the code in an ordered list. * * @param boolean Wether multiline spans are allowed or not * @since 1.0.7.22 */ function enable_multiline_span($flag) { $this->allow_multiline_span = (bool) $flag; } /** * Get current setting for multiline spans, see GeSHi->enable_multiline_span(). * * @see enable_multiline_span * @return bool */ function get_multiline_span() { return $this->allow_multiline_span; } /** * Sets the style for a keyword group. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param int The key of the keyword group to change the styles of * @param string The style to make the keywords * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @since 1.0.0 */ function set_keyword_group_style($key, $style, $preserve_defaults = false) { //Set the style for this keyword group if (!$preserve_defaults) { $this->language_data['STYLES']['KEYWORDS'][$key] = $style; } else { $this->language_data['STYLES']['KEYWORDS'][$key] .= $style; } //Update the lexic permissions if (!isset($this->lexic_permissions['KEYWORDS'][$key])) { $this->lexic_permissions['KEYWORDS'][$key] = true; } } /** * Turns highlighting on/off for a keyword group * * @param int The key of the keyword group to turn on or off * @param boolean Whether to turn highlighting for that group on or off * @since 1.0.0 */ function set_keyword_group_highlighting($key, $flag = true) { $this->lexic_permissions['KEYWORDS'][$key] = ($flag) ? true : false; } /** * Sets the styles for comment groups. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param int The key of the comment group to change the styles of * @param string The style to make the comments * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @since 1.0.0 */ function set_comments_style($key, $style, $preserve_defaults = false) { if (!$preserve_defaults) { $this->language_data['STYLES']['COMMENTS'][$key] = $style; } else { $this->language_data['STYLES']['COMMENTS'][$key] .= $style; } } /** * Turns highlighting on/off for comment groups * * @param int The key of the comment group to turn on or off * @param boolean Whether to turn highlighting for that group on or off * @since 1.0.0 */ function set_comments_highlighting($key, $flag = true) { $this->lexic_permissions['COMMENTS'][$key] = ($flag) ? true : false; } /** * Sets the styles for escaped characters. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param string The style to make the escape characters * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @since 1.0.0 */ function set_escape_characters_style($style, $preserve_defaults = false, $group = 0) { if (!$preserve_defaults) { $this->language_data['STYLES']['ESCAPE_CHAR'][$group] = $style; } else { $this->language_data['STYLES']['ESCAPE_CHAR'][$group] .= $style; } } /** * Turns highlighting on/off for escaped characters * * @param boolean Whether to turn highlighting for escape characters on or off * @since 1.0.0 */ function set_escape_characters_highlighting($flag = true) { $this->lexic_permissions['ESCAPE_CHAR'] = ($flag) ? true : false; } /** * Sets the styles for brackets. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * This method is DEPRECATED: use set_symbols_style instead. * This method will be removed in 1.2.X * * @param string The style to make the brackets * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @since 1.0.0 * @deprecated In favour of set_symbols_style */ function set_brackets_style($style, $preserve_defaults = false) { if (!$preserve_defaults) { $this->language_data['STYLES']['BRACKETS'][0] = $style; } else { $this->language_data['STYLES']['BRACKETS'][0] .= $style; } } /** * Turns highlighting on/off for brackets * * This method is DEPRECATED: use set_symbols_highlighting instead. * This method will be remove in 1.2.X * * @param boolean Whether to turn highlighting for brackets on or off * @since 1.0.0 * @deprecated In favour of set_symbols_highlighting */ function set_brackets_highlighting($flag) { $this->lexic_permissions['BRACKETS'] = ($flag) ? true : false; } /** * Sets the styles for symbols. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param string The style to make the symbols * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @param int Tells the group of symbols for which style should be set. * @since 1.0.1 */ function set_symbols_style($style, $preserve_defaults = false, $group = 0) { // Update the style of symbols if (!$preserve_defaults) { $this->language_data['STYLES']['SYMBOLS'][$group] = $style; } else { $this->language_data['STYLES']['SYMBOLS'][$group] .= $style; } // For backward compatibility if (0 == $group) { $this->set_brackets_style ($style, $preserve_defaults); } } /** * Turns highlighting on/off for symbols * * @param boolean Whether to turn highlighting for symbols on or off * @since 1.0.0 */ function set_symbols_highlighting($flag) { // Update lexic permissions for this symbol group $this->lexic_permissions['SYMBOLS'] = ($flag) ? true : false; // For backward compatibility $this->set_brackets_highlighting ($flag); } /** * Sets the styles for strings. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param string The style to make the escape characters * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @param int Tells the group of strings for which style should be set. * @since 1.0.0 */ function set_strings_style($style, $preserve_defaults = false, $group = 0) { if (!$preserve_defaults) { $this->language_data['STYLES']['STRINGS'][$group] = $style; } else { $this->language_data['STYLES']['STRINGS'][$group] .= $style; } } /** * Turns highlighting on/off for strings * * @param boolean Whether to turn highlighting for strings on or off * @since 1.0.0 */ function set_strings_highlighting($flag) { $this->lexic_permissions['STRINGS'] = ($flag) ? true : false; } /** * Sets the styles for strict code blocks. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param string The style to make the script blocks * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @param int Tells the group of script blocks for which style should be set. * @since 1.0.8.4 */ function set_script_style($style, $preserve_defaults = false, $group = 0) { // Update the style of symbols if (!$preserve_defaults) { $this->language_data['STYLES']['SCRIPT'][$group] = $style; } else { $this->language_data['STYLES']['SCRIPT'][$group] .= $style; } } /** * Sets the styles for numbers. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param string The style to make the numbers * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @param int Tells the group of numbers for which style should be set. * @since 1.0.0 */ function set_numbers_style($style, $preserve_defaults = false, $group = 0) { if (!$preserve_defaults) { $this->language_data['STYLES']['NUMBERS'][$group] = $style; } else { $this->language_data['STYLES']['NUMBERS'][$group] .= $style; } } /** * Turns highlighting on/off for numbers * * @param boolean Whether to turn highlighting for numbers on or off * @since 1.0.0 */ function set_numbers_highlighting($flag) { $this->lexic_permissions['NUMBERS'] = ($flag) ? true : false; } /** * Sets the styles for methods. $key is a number that references the * appropriate "object splitter" - see the language file for the language * you are highlighting to get this number. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param int The key of the object splitter to change the styles of * @param string The style to make the methods * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @since 1.0.0 */ function set_methods_style($key, $style, $preserve_defaults = false) { if (!$preserve_defaults) { $this->language_data['STYLES']['METHODS'][$key] = $style; } else { $this->language_data['STYLES']['METHODS'][$key] .= $style; } } /** * Turns highlighting on/off for methods * * @param boolean Whether to turn highlighting for methods on or off * @since 1.0.0 */ function set_methods_highlighting($flag) { $this->lexic_permissions['METHODS'] = ($flag) ? true : false; } /** * Sets the styles for regexps. If $preserve_defaults is * true, then styles are merged with the default styles, with the * user defined styles having priority * * @param string The style to make the regular expression matches * @param boolean Whether to merge the new styles with the old or just * to overwrite them * @since 1.0.0 */ function set_regexps_style($key, $style, $preserve_defaults = false) { if (!$preserve_defaults) { $this->language_data['STYLES']['REGEXPS'][$key] = $style; } else { $this->language_data['STYLES']['REGEXPS'][$key] .= $style; } } /** * Turns highlighting on/off for regexps * * @param int The key of the regular expression group to turn on or off * @param boolean Whether to turn highlighting for the regular expression group on or off * @since 1.0.0 */ function set_regexps_highlighting($key, $flag) { $this->lexic_permissions['REGEXPS'][$key] = ($flag) ? true : false; } /** * Sets whether a set of keywords are checked for in a case sensitive manner * * @param int The key of the keyword group to change the case sensitivity of * @param boolean Whether to check in a case sensitive manner or not * @since 1.0.0 */ function set_case_sensitivity($key, $case) { $this->language_data['CASE_SENSITIVE'][$key] = ($case) ? true : false; } /** * Sets the case that keywords should use when found. Use the constants: * * - GESHI_CAPS_NO_CHANGE: leave keywords as-is * - GESHI_CAPS_UPPER: convert all keywords to uppercase where found * - GESHI_CAPS_LOWER: convert all keywords to lowercase where found * * @param int A constant specifying what to do with matched keywords * @since 1.0.1 */ function set_case_keywords($case) { if (in_array($case, array( GESHI_CAPS_NO_CHANGE, GESHI_CAPS_UPPER, GESHI_CAPS_LOWER))) { $this->language_data['CASE_KEYWORDS'] = $case; } } /** * Sets how many spaces a tab is substituted for * * Widths below zero are ignored * * @param int The tab width * @since 1.0.0 */ function set_tab_width($width) { $this->tab_width = intval($width); //Check if it fit's the constraints: if ($this->tab_width < 1) { //Return it to the default $this->tab_width = 8; } } /** * Sets whether or not to use tab-stop width specifed by language * * @param boolean Whether to use language-specific tab-stop widths * @since 1.0.7.20 */ function set_use_language_tab_width($use) { $this->use_language_tab_width = (bool) $use; } /** * Returns the tab width to use, based on the current language and user * preference * * @return int Tab width * @since 1.0.7.20 */ function get_real_tab_width() { if (!$this->use_language_tab_width || !isset($this->language_data['TAB_WIDTH'])) { return $this->tab_width; } else { return $this->language_data['TAB_WIDTH']; } } /** * Enables/disables strict highlighting. Default is off, calling this * method without parameters will turn it on. See documentation * for more details on strict mode and where to use it. * * @param boolean Whether to enable strict mode or not * @since 1.0.0 */ function enable_strict_mode($mode = true) { if (GESHI_MAYBE == $this->language_data['STRICT_MODE_APPLIES']) { $this->strict_mode = ($mode) ? GESHI_ALWAYS : GESHI_NEVER; } } /** * Disables all highlighting * * @since 1.0.0 * @todo Rewrite with array traversal * @deprecated In favour of enable_highlighting */ function disable_highlighting() { $this->enable_highlighting(false); } /** * Enables all highlighting * * The optional flag parameter was added in version 1.0.7.21 and can be used * to enable (true) or disable (false) all highlighting. * * @since 1.0.0 * @param boolean A flag specifying whether to enable or disable all highlighting * @todo Rewrite with array traversal */ function enable_highlighting($flag = true) { $flag = $flag ? true : false; foreach ($this->lexic_permissions as $key => $value) { if (is_array($value)) { foreach ($value as $k => $v) { $this->lexic_permissions[$key][$k] = $flag; } } else { $this->lexic_permissions[$key] = $flag; } } // Context blocks $this->enable_important_blocks = $flag; } /** * Given a file extension, this method returns either a valid geshi language * name, or the empty string if it couldn't be found * * @param string The extension to get a language name for * @param array A lookup array to use instead of the default one * @since 1.0.5 * @todo Re-think about how this method works (maybe make it private and/or make it * a extension->lang lookup?) * @todo static? */ function get_language_name_from_extension( $extension, $lookup = array() ) { $extension = strtolower($extension); if ( !is_array($lookup) || empty($lookup)) { $lookup = array( '6502acme' => array( 'a', 's', 'asm', 'inc' ), '6502tasm' => array( 'a', 's', 'asm', 'inc' ), '6502kickass' => array( 'a', 's', 'asm', 'inc' ), '68000devpac' => array( 'a', 's', 'asm', 'inc' ), 'abap' => array('abap'), 'actionscript' => array('as'), 'ada' => array('a', 'ada', 'adb', 'ads'), 'apache' => array('conf'), 'asm' => array('ash', 'asm', 'inc'), 'asp' => array('asp'), 'bash' => array('sh'), 'bf' => array('bf'), 'c' => array('c', 'h'), 'c_mac' => array('c', 'h'), 'caddcl' => array(), 'cadlisp' => array(), 'cdfg' => array('cdfg'), 'cobol' => array('cbl'), 'cpp' => array('cpp', 'hpp', 'C', 'H', 'CPP', 'HPP'), 'csharp' => array('cs'), 'css' => array('css'), 'd' => array('d'), 'delphi' => array('dpk', 'dpr', 'pp', 'pas'), 'diff' => array('diff', 'patch'), 'dos' => array('bat', 'cmd'), 'gdb' => array('kcrash', 'crash', 'bt'), 'gettext' => array('po', 'pot'), 'gml' => array('gml'), 'gnuplot' => array('plt'), 'groovy' => array('groovy'), 'haskell' => array('hs'), 'haxe' => array('hx'), 'html4strict' => array('html', 'htm'), 'ini' => array('ini', 'desktop'), 'java' => array('java'), 'javascript' => array('js'), 'klonec' => array('kl1'), 'klonecpp' => array('klx'), 'latex' => array('tex'), 'lisp' => array('lisp'), 'lua' => array('lua'), 'matlab' => array('m'), 'mpasm' => array(), 'mysql' => array('sql'), 'nsis' => array(), 'objc' => array(), 'oobas' => array(), 'oracle8' => array(), 'oracle10' => array(), 'pascal' => array('pas'), 'perl' => array('pl', 'pm'), 'php' => array('php', 'php5', 'phtml', 'phps'), 'povray' => array('pov'), 'providex' => array('pvc', 'pvx'), 'prolog' => array('pl'), 'python' => array('py'), 'qbasic' => array('bi'), 'reg' => array('reg'), 'ruby' => array('rb'), 'sas' => array('sas'), 'scala' => array('scala'), 'scheme' => array('scm'), 'scilab' => array('sci'), 'smalltalk' => array('st'), 'smarty' => array(), 'tcl' => array('tcl'), 'text' => array('txt'), 'vb' => array('bas'), 'vbnet' => array(), 'visualfoxpro' => array(), 'whitespace' => array('ws'), 'xml' => array('xml', 'svg', 'xrc'), 'z80' => array('z80', 'asm', 'inc') ); } foreach ($lookup as $lang => $extensions) { if (in_array($extension, $extensions)) { return $lang; } } return 'text'; } /** * Given a file name, this method loads its contents in, and attempts * to set the language automatically. An optional lookup table can be * passed for looking up the language name. If not specified a default * table is used * * The language table is in the form *
array(
     *   'lang_name' => array('extension', 'extension', ...),
     *   'lang_name' ...
     * );
* * @param string The filename to load the source from * @param array A lookup array to use instead of the default one * @todo Complete rethink of this and above method * @since 1.0.5 */ function load_from_file($file_name, $lookup = array()) { if (is_readable($file_name)) { $this->set_source(file_get_contents($file_name)); $this->set_language($this->get_language_name_from_extension(substr(strrchr($file_name, '.'), 1), $lookup)); } else { $this->error = GESHI_ERROR_FILE_NOT_READABLE; } } /** * Adds a keyword to a keyword group for highlighting * * @param int The key of the keyword group to add the keyword to * @param string The word to add to the keyword group * @since 1.0.0 */ function add_keyword($key, $word) { if (!is_array($this->language_data['KEYWORDS'][$key])) { $this->language_data['KEYWORDS'][$key] = array(); } if (!in_array($word, $this->language_data['KEYWORDS'][$key])) { $this->language_data['KEYWORDS'][$key][] = $word; //NEW in 1.0.8 don't recompile the whole optimized regexp, simply append it if ($this->parse_cache_built) { $subkey = count($this->language_data['CACHED_KEYWORD_LISTS'][$key]) - 1; $this->language_data['CACHED_KEYWORD_LISTS'][$key][$subkey] .= '|' . preg_quote($word, '/'); } } } /** * Removes a keyword from a keyword group * * @param int The key of the keyword group to remove the keyword from * @param string The word to remove from the keyword group * @param bool Wether to automatically recompile the optimized regexp list or not. * Note: if you set this to false and @see GeSHi->parse_code() was already called once, * for the current language, you have to manually call @see GeSHi->optimize_keyword_group() * or the removed keyword will stay in cache and still be highlighted! On the other hand * it might be too expensive to recompile the regexp list for every removal if you want to * remove a lot of keywords. * @since 1.0.0 */ function remove_keyword($key, $word, $recompile = true) { $key_to_remove = array_search($word, $this->language_data['KEYWORDS'][$key]); if ($key_to_remove !== false) { unset($this->language_data['KEYWORDS'][$key][$key_to_remove]); //NEW in 1.0.8, optionally recompile keyword group if ($recompile && $this->parse_cache_built) { $this->optimize_keyword_group($key); } } } /** * Creates a new keyword group * * @param int The key of the keyword group to create * @param string The styles for the keyword group * @param boolean Whether the keyword group is case sensitive ornot * @param array The words to use for the keyword group * @since 1.0.0 */ function add_keyword_group($key, $styles, $case_sensitive = true, $words = array()) { $words = (array) $words; if (empty($words)) { // empty word lists mess up highlighting return false; } //Add the new keyword group internally $this->language_data['KEYWORDS'][$key] = $words; $this->lexic_permissions['KEYWORDS'][$key] = true; $this->language_data['CASE_SENSITIVE'][$key] = $case_sensitive; $this->language_data['STYLES']['KEYWORDS'][$key] = $styles; //NEW in 1.0.8, cache keyword regexp if ($this->parse_cache_built) { $this->optimize_keyword_group($key); } } /** * Removes a keyword group * * @param int The key of the keyword group to remove * @since 1.0.0 */ function remove_keyword_group ($key) { //Remove the keyword group internally unset($this->language_data['KEYWORDS'][$key]); unset($this->lexic_permissions['KEYWORDS'][$key]); unset($this->language_data['CASE_SENSITIVE'][$key]); unset($this->language_data['STYLES']['KEYWORDS'][$key]); //NEW in 1.0.8 unset($this->language_data['CACHED_KEYWORD_LISTS'][$key]); } /** * compile optimized regexp list for keyword group * * @param int The key of the keyword group to compile & optimize * @since 1.0.8 */ function optimize_keyword_group($key) { $this->language_data['CACHED_KEYWORD_LISTS'][$key] = $this->optimize_regexp_list($this->language_data['KEYWORDS'][$key]); $space_as_whitespace = false; if(isset($this->language_data['PARSER_CONTROL'])) { if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS'])) { if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['SPACE_AS_WHITESPACE'])) { $space_as_whitespace = $this->language_data['PARSER_CONTROL']['KEYWORDS']['SPACE_AS_WHITESPACE']; } if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$key]['SPACE_AS_WHITESPACE'])) { if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$key]['SPACE_AS_WHITESPACE'])) { $space_as_whitespace = $this->language_data['PARSER_CONTROL']['KEYWORDS'][$key]['SPACE_AS_WHITESPACE']; } } } } if($space_as_whitespace) { foreach($this->language_data['CACHED_KEYWORD_LISTS'][$key] as $rxk => $rxv) { $this->language_data['CACHED_KEYWORD_LISTS'][$key][$rxk] = str_replace(" ", "\\s+", $rxv); } } } /** * Sets the content of the header block * * @param string The content of the header block * @since 1.0.2 */ function set_header_content($content) { $this->header_content = $content; } /** * Sets the content of the footer block * * @param string The content of the footer block * @since 1.0.2 */ function set_footer_content($content) { $this->footer_content = $content; } /** * Sets the style for the header content * * @param string The style for the header content * @since 1.0.2 */ function set_header_content_style($style) { $this->header_content_style = $style; } /** * Sets the style for the footer content * * @param string The style for the footer content * @since 1.0.2 */ function set_footer_content_style($style) { $this->footer_content_style = $style; } /** * Sets whether to force a surrounding block around * the highlighted code or not * * @param boolean Tells whether to enable or disable this feature * @since 1.0.7.20 */ function enable_inner_code_block($flag) { $this->force_code_block = (bool)$flag; } /** * Sets the base URL to be used for keywords * * @param int The key of the keyword group to set the URL for * @param string The URL to set for the group. If {FNAME} is in * the url somewhere, it is replaced by the keyword * that the URL is being made for * @since 1.0.2 */ function set_url_for_keyword_group($group, $url) { $this->language_data['URLS'][$group] = $url; } /** * Sets styles for links in code * * @param int A constant that specifies what state the style is being * set for - e.g. :hover or :visited * @param string The styles to use for that state * @since 1.0.2 */ function set_link_styles($type, $styles) { $this->link_styles[$type] = $styles; } /** * Sets the target for links in code * * @param string The target for links in the code, e.g. _blank * @since 1.0.3 */ function set_link_target($target) { if (!$target) { $this->link_target = ''; } else { $this->link_target = ' target="' . $target . '"'; } } /** * Sets styles for important parts of the code * * @param string The styles to use on important parts of the code * @since 1.0.2 */ function set_important_styles($styles) { $this->important_styles = $styles; } /** * Sets whether context-important blocks are highlighted * * @param boolean Tells whether to enable or disable highlighting of important blocks * @todo REMOVE THIS SHIZ FROM GESHI! * @deprecated * @since 1.0.2 */ function enable_important_blocks($flag) { $this->enable_important_blocks = ( $flag ) ? true : false; } /** * Whether CSS IDs should be added to each line * * @param boolean If true, IDs will be added to each line. * @since 1.0.2 */ function enable_ids($flag = true) { $this->add_ids = ($flag) ? true : false; } /** * Specifies which lines to highlight extra * * The extra style parameter was added in 1.0.7.21. * * @param mixed An array of line numbers to highlight, or just a line * number on its own. * @param string A string specifying the style to use for this line. * If null is specified, the default style is used. * If false is specified, the line will be removed from * special highlighting * @since 1.0.2 * @todo Some data replication here that could be cut down on */ function highlight_lines_extra($lines, $style = null) { if (is_array($lines)) { //Split up the job using single lines at a time foreach ($lines as $line) { $this->highlight_lines_extra($line, $style); } } else { //Mark the line as being highlighted specially $lines = intval($lines); $this->highlight_extra_lines[$lines] = $lines; //Decide on which style to use if ($style === null) { //Check if we should use default style unset($this->highlight_extra_lines_styles[$lines]); } elseif ($style === false) { //Check if to remove this line unset($this->highlight_extra_lines[$lines]); unset($this->highlight_extra_lines_styles[$lines]); } else { $this->highlight_extra_lines_styles[$lines] = $style; } } } /** * Sets the style for extra-highlighted lines * * @param string The style for extra-highlighted lines * @since 1.0.2 */ function set_highlight_lines_extra_style($styles) { $this->highlight_extra_lines_style = $styles; } /** * Sets the line-ending * * @param string The new line-ending * @since 1.0.2 */ function set_line_ending($line_ending) { $this->line_ending = (string)$line_ending; } /** * Sets what number line numbers should start at. Should * be a positive integer, and will be converted to one. * * Warning: Using this method will add the "start" * attribute to the <ol> that is used for line numbering. * This is not valid XHTML strict, so if that's what you * care about then don't use this method. Firefox is getting * support for the CSS method of doing this in 1.1 and Opera * has support for the CSS method, but (of course) IE doesn't * so it's not worth doing it the CSS way yet. * * @param int The number to start line numbers at * @since 1.0.2 */ function start_line_numbers_at($number) { $this->line_numbers_start = abs(intval($number)); } /** * Sets the encoding used for htmlspecialchars(), for international * support. * * NOTE: This is not needed for now because htmlspecialchars() is not * being used (it has a security hole in PHP4 that has not been patched). * Maybe in a future version it may make a return for speed reasons, but * I doubt it. * * @param string The encoding to use for the source * @since 1.0.3 */ function set_encoding($encoding) { if ($encoding) { $this->encoding = strtolower($encoding); } } /** * Turns linking of keywords on or off. * * @param boolean If true, links will be added to keywords * @since 1.0.2 */ function enable_keyword_links($enable = true) { $this->keyword_links = (bool) $enable; } /** * Setup caches needed for styling. This is automatically called in * parse_code() and get_stylesheet() when appropriate. This function helps * stylesheet generators as they rely on some style information being * preprocessed * * @since 1.0.8 * @access private */ function build_style_cache() { //Build the style cache needed to highlight numbers appropriate if($this->lexic_permissions['NUMBERS']) { //First check what way highlighting information for numbers are given if(!isset($this->language_data['NUMBERS'])) { $this->language_data['NUMBERS'] = 0; } if(is_array($this->language_data['NUMBERS'])) { $this->language_data['NUMBERS_CACHE'] = $this->language_data['NUMBERS']; } else { $this->language_data['NUMBERS_CACHE'] = array(); if(!$this->language_data['NUMBERS']) { $this->language_data['NUMBERS'] = GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_NONSCI; } for($i = 0, $j = $this->language_data['NUMBERS']; $j > 0; ++$i, $j>>=1) { //Rearrange style indices if required ... if(isset($this->language_data['STYLES']['NUMBERS'][1<<$i])) { $this->language_data['STYLES']['NUMBERS'][$i] = $this->language_data['STYLES']['NUMBERS'][1<<$i]; unset($this->language_data['STYLES']['NUMBERS'][1<<$i]); } //Check if this bit is set for highlighting if($j&1) { //So this bit is set ... //Check if it belongs to group 0 or the actual stylegroup if(isset($this->language_data['STYLES']['NUMBERS'][$i])) { $this->language_data['NUMBERS_CACHE'][$i] = 1 << $i; } else { if(!isset($this->language_data['NUMBERS_CACHE'][0])) { $this->language_data['NUMBERS_CACHE'][0] = 0; } $this->language_data['NUMBERS_CACHE'][0] |= 1 << $i; } } } } } } /** * Setup caches needed for parsing. This is automatically called in parse_code() when appropriate. * This function makes stylesheet generators much faster as they do not need these caches. * * @since 1.0.8 * @access private */ function build_parse_cache() { // cache symbol regexp //As this is a costy operation, we avoid doing it for multiple groups ... //Instead we perform it for all symbols at once. // //For this to work, we need to reorganize the data arrays. if ($this->lexic_permissions['SYMBOLS'] && !empty($this->language_data['SYMBOLS'])) { $this->language_data['MULTIPLE_SYMBOL_GROUPS'] = count($this->language_data['STYLES']['SYMBOLS']) > 1; $this->language_data['SYMBOL_DATA'] = array(); $symbol_preg_multi = array(); // multi char symbols $symbol_preg_single = array(); // single char symbols foreach ($this->language_data['SYMBOLS'] as $key => $symbols) { if (is_array($symbols)) { foreach ($symbols as $sym) { $sym = $this->hsc($sym); if (!isset($this->language_data['SYMBOL_DATA'][$sym])) { $this->language_data['SYMBOL_DATA'][$sym] = $key; if (isset($sym[1])) { // multiple chars $symbol_preg_multi[] = preg_quote($sym, '/'); } else { // single char if ($sym == '-') { // don't trigger range out of order error $symbol_preg_single[] = '\-'; } else { $symbol_preg_single[] = preg_quote($sym, '/'); } } } } } else { $symbols = $this->hsc($symbols); if (!isset($this->language_data['SYMBOL_DATA'][$symbols])) { $this->language_data['SYMBOL_DATA'][$symbols] = 0; if (isset($symbols[1])) { // multiple chars $symbol_preg_multi[] = preg_quote($symbols, '/'); } elseif ($symbols == '-') { // don't trigger range out of order error $symbol_preg_single[] = '\-'; } else { // single char $symbol_preg_single[] = preg_quote($symbols, '/'); } } } } //Now we have an array with each possible symbol as the key and the style as the actual data. //This way we can set the correct style just the moment we highlight ... // //Now we need to rewrite our array to get a search string that $symbol_preg = array(); if (!empty($symbol_preg_multi)) { rsort($symbol_preg_multi); $symbol_preg[] = implode('|', $symbol_preg_multi); } if (!empty($symbol_preg_single)) { rsort($symbol_preg_single); $symbol_preg[] = '[' . implode('', $symbol_preg_single) . ']'; } $this->language_data['SYMBOL_SEARCH'] = implode("|", $symbol_preg); } // cache optimized regexp for keyword matching // remove old cache $this->language_data['CACHED_KEYWORD_LISTS'] = array(); foreach (array_keys($this->language_data['KEYWORDS']) as $key) { if (!isset($this->lexic_permissions['KEYWORDS'][$key]) || $this->lexic_permissions['KEYWORDS'][$key]) { $this->optimize_keyword_group($key); } } // brackets if ($this->lexic_permissions['BRACKETS']) { $this->language_data['CACHE_BRACKET_MATCH'] = array('[', ']', '(', ')', '{', '}'); if (!$this->use_classes && isset($this->language_data['STYLES']['BRACKETS'][0])) { $this->language_data['CACHE_BRACKET_REPLACE'] = array( '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">[|>', '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">]|>', '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">(|>', '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">)|>', '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">{|>', '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">}|>', ); } else { $this->language_data['CACHE_BRACKET_REPLACE'] = array( '<| class="br0">[|>', '<| class="br0">]|>', '<| class="br0">(|>', '<| class="br0">)|>', '<| class="br0">{|>', '<| class="br0">}|>', ); } } //Build the parse cache needed to highlight numbers appropriate if($this->lexic_permissions['NUMBERS']) { //Check if the style rearrangements have been processed ... //This also does some preprocessing to check which style groups are useable ... if(!isset($this->language_data['NUMBERS_CACHE'])) { $this->build_style_cache(); } //Number format specification //All this formats are matched case-insensitively! static $numbers_format = array( GESHI_NUMBER_INT_BASIC => '(?:(? '(? '(? '(? '(? '(? '(? '(? '(? '(? '(? '(? '(? '(? '(? '(?language_data['NUMBERS_RXCACHE'] = array(); foreach($this->language_data['NUMBERS_CACHE'] as $key => $rxdata) { if(is_string($rxdata)) { $regexp = $rxdata; } else { //This is a bitfield of number flags to highlight: //Build an array, implode them together and make this the actual RX $rxuse = array(); for($i = 1; $i <= $rxdata; $i<<=1) { if($rxdata & $i) { $rxuse[] = $numbers_format[$i]; } } $regexp = implode("|", $rxuse); } $this->language_data['NUMBERS_RXCACHE'][$key] = "/(?)($regexp)(?!(?:|(?>[^\<]))+>)(?![^<]*>)(?!\|>)(?!\/>)/i"; // } if(!isset($this->language_data['PARSER_CONTROL']['NUMBERS']['PRECHECK_RX'])) { $this->language_data['PARSER_CONTROL']['NUMBERS']['PRECHECK_RX'] = '#\d#'; } } $this->parse_cache_built = true; } /** * Returns the code in $this->source, highlighted and surrounded by the * nessecary HTML. * * This should only be called ONCE, cos it's SLOW! If you want to highlight * the same source multiple times, you're better off doing a whole lot of * str_replaces to replace the <span>s * * @since 1.0.0 */ function parse_code () { // Start the timer $start_time = microtime(); // Replace all newlines to a common form. $code = str_replace("\r\n", "\n", $this->source); $code = str_replace("\r", "\n", $code); // Firstly, if there is an error, we won't highlight if ($this->error) { //Escape the source for output $result = $this->hsc($this->source); //This fix is related to SF#1923020, but has to be applied regardless of //actually highlighting symbols. $result = str_replace(array('', ''), array(';', '|'), $result); // Timing is irrelevant $this->set_time($start_time, $start_time); $this->finalise($result); return $result; } // make sure the parse cache is up2date if (!$this->parse_cache_built) { $this->build_parse_cache(); } // Initialise various stuff $length = strlen($code); $COMMENT_MATCHED = false; $stuff_to_parse = ''; $endresult = ''; // "Important" selections are handled like multiline comments // @todo GET RID OF THIS SHIZ if ($this->enable_important_blocks) { $this->language_data['COMMENT_MULTI'][GESHI_START_IMPORTANT] = GESHI_END_IMPORTANT; } if ($this->strict_mode) { // Break the source into bits. Each bit will be a portion of the code // within script delimiters - for example, HTML between < and > $k = 0; $parts = array(); $matches = array(); $next_match_pointer = null; // we use a copy to unset delimiters on demand (when they are not found) $delim_copy = $this->language_data['SCRIPT_DELIMITERS']; $i = 0; while ($i < $length) { $next_match_pos = $length + 1; // never true foreach ($delim_copy as $dk => $delimiters) { if(is_array($delimiters)) { foreach ($delimiters as $open => $close) { // make sure the cache is setup properly if (!isset($matches[$dk][$open])) { $matches[$dk][$open] = array( 'next_match' => -1, 'dk' => $dk, 'open' => $open, // needed for grouping of adjacent code blocks (see below) 'open_strlen' => strlen($open), 'close' => $close, 'close_strlen' => strlen($close), ); } // Get the next little bit for this opening string if ($matches[$dk][$open]['next_match'] < $i) { // only find the next pos if it was not already cached $open_pos = strpos($code, $open, $i); if ($open_pos === false) { // no match for this delimiter ever unset($delim_copy[$dk][$open]); continue; } $matches[$dk][$open]['next_match'] = $open_pos; } if ($matches[$dk][$open]['next_match'] < $next_match_pos) { //So we got a new match, update the close_pos $matches[$dk][$open]['close_pos'] = strpos($code, $close, $matches[$dk][$open]['next_match']+1); $next_match_pointer =& $matches[$dk][$open]; $next_match_pos = $matches[$dk][$open]['next_match']; } } } else { //So we should match an RegExp as Strict Block ... /** * The value in $delimiters is expected to be an RegExp * containing exactly 2 matching groups: * - Group 1 is the opener * - Group 2 is the closer */ if(!GESHI_PHP_PRE_433 && //Needs proper rewrite to work with PHP >=4.3.0; 4.3.3 is guaranteed to work. preg_match($delimiters, $code, $matches_rx, PREG_OFFSET_CAPTURE, $i)) { //We got a match ... if(isset($matches_rx['start']) && isset($matches_rx['end'])) { $matches[$dk] = array( 'next_match' => $matches_rx['start'][1], 'dk' => $dk, 'close_strlen' => strlen($matches_rx['end'][0]), 'close_pos' => $matches_rx['end'][1], ); } else { $matches[$dk] = array( 'next_match' => $matches_rx[1][1], 'dk' => $dk, 'close_strlen' => strlen($matches_rx[2][0]), 'close_pos' => $matches_rx[2][1], ); } } else { // no match for this delimiter ever unset($delim_copy[$dk]); continue; } if ($matches[$dk]['next_match'] <= $next_match_pos) { $next_match_pointer =& $matches[$dk]; $next_match_pos = $matches[$dk]['next_match']; } } } // non-highlightable text $parts[$k] = array( 1 => substr($code, $i, $next_match_pos - $i) ); ++$k; if ($next_match_pos > $length) { // out of bounds means no next match was found break; } // highlightable code $parts[$k][0] = $next_match_pointer['dk']; //Only combine for non-rx script blocks if(is_array($delim_copy[$next_match_pointer['dk']])) { // group adjacent script blocks, e.g. should be one block, not three! $i = $next_match_pos + $next_match_pointer['open_strlen']; while (true) { $close_pos = strpos($code, $next_match_pointer['close'], $i); if ($close_pos == false) { break; } $i = $close_pos + $next_match_pointer['close_strlen']; if ($i == $length) { break; } if ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 || substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])) { // merge adjacent but make sure we don't merge things like foreach ($matches as $submatches) { foreach ($submatches as $match) { if ($match['next_match'] == $i) { // a different block already matches here! break 3; } } } } else { break; } } } else { $close_pos = $next_match_pointer['close_pos'] + $next_match_pointer['close_strlen']; $i = $close_pos; } if ($close_pos === false) { // no closing delimiter found! $parts[$k][1] = substr($code, $next_match_pos); ++$k; break; } else { $parts[$k][1] = substr($code, $next_match_pos, $i - $next_match_pos); ++$k; } } unset($delim_copy, $next_match_pointer, $next_match_pos, $matches); $num_parts = $k; if ($num_parts == 1 && $this->strict_mode == GESHI_MAYBE) { // when we have only one part, we don't have anything to highlight at all. // if we have a "maybe" strict language, this should be handled as highlightable code $parts = array( 0 => array( 0 => '', 1 => '' ), 1 => array( 0 => null, 1 => $parts[0][1] ) ); $num_parts = 2; } } else { // Not strict mode - simply dump the source into // the array at index 1 (the first highlightable block) $parts = array( 0 => array( 0 => '', 1 => '' ), 1 => array( 0 => null, 1 => $code ) ); $num_parts = 2; } //Unset variables we won't need any longer unset($code); //Preload some repeatedly used values regarding hardquotes ... $hq = isset($this->language_data['HARDQUOTE']) ? $this->language_data['HARDQUOTE'][0] : false; $hq_strlen = strlen($hq); //Preload if line numbers are to be generated afterwards //Added a check if line breaks should be forced even without line numbers, fixes SF#1727398 $check_linenumbers = $this->line_numbers != GESHI_NO_LINE_NUMBERS || !empty($this->highlight_extra_lines) || !$this->allow_multiline_span; //preload the escape char for faster checking ... $escaped_escape_char = $this->hsc($this->language_data['ESCAPE_CHAR']); // this is used for single-line comments $sc_disallowed_before = ""; $sc_disallowed_after = ""; if (isset($this->language_data['PARSER_CONTROL'])) { if (isset($this->language_data['PARSER_CONTROL']['COMMENTS'])) { if (isset($this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_BEFORE'])) { $sc_disallowed_before = $this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_BEFORE']; } if (isset($this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_AFTER'])) { $sc_disallowed_after = $this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_AFTER']; } } } //Fix for SF#1932083: Multichar Quotemarks unsupported $is_string_starter = array(); if ($this->lexic_permissions['STRINGS']) { foreach ($this->language_data['QUOTEMARKS'] as $quotemark) { if (!isset($is_string_starter[$quotemark[0]])) { $is_string_starter[$quotemark[0]] = (string)$quotemark; } elseif (is_string($is_string_starter[$quotemark[0]])) { $is_string_starter[$quotemark[0]] = array( $is_string_starter[$quotemark[0]], $quotemark); } else { $is_string_starter[$quotemark[0]][] = $quotemark; } } } // Now we go through each part. We know that even-indexed parts are // code that shouldn't be highlighted, and odd-indexed parts should // be highlighted for ($key = 0; $key < $num_parts; ++$key) { $STRICTATTRS = ''; // If this block should be highlighted... if (!($key & 1)) { // Else not a block to highlight $endresult .= $this->hsc($parts[$key][1]); unset($parts[$key]); continue; } $result = ''; $part = $parts[$key][1]; $highlight_part = true; if ($this->strict_mode && !is_null($parts[$key][0])) { // get the class key for this block of code $script_key = $parts[$key][0]; $highlight_part = $this->language_data['HIGHLIGHT_STRICT_BLOCK'][$script_key]; if ($this->language_data['STYLES']['SCRIPT'][$script_key] != '' && $this->lexic_permissions['SCRIPT']) { // Add a span element around the source to // highlight the overall source block if (!$this->use_classes && $this->language_data['STYLES']['SCRIPT'][$script_key] != '') { $attributes = ' style="' . $this->language_data['STYLES']['SCRIPT'][$script_key] . '"'; } else { $attributes = ' class="sc' . $script_key . '"'; } $result .= ""; $STRICTATTRS = $attributes; } } if ($highlight_part) { // Now, highlight the code in this block. This code // is really the engine of GeSHi (along with the method // parse_non_string_part). // cache comment regexps incrementally $next_comment_regexp_key = ''; $next_comment_regexp_pos = -1; $next_comment_multi_pos = -1; $next_comment_single_pos = -1; $comment_regexp_cache_per_key = array(); $comment_multi_cache_per_key = array(); $comment_single_cache_per_key = array(); $next_open_comment_multi = ''; $next_comment_single_key = ''; $escape_regexp_cache_per_key = array(); $next_escape_regexp_key = ''; $next_escape_regexp_pos = -1; $length = strlen($part); for ($i = 0; $i < $length; ++$i) { // Get the next char $char = $part[$i]; $char_len = 1; // update regexp comment cache if needed if (isset($this->language_data['COMMENT_REGEXP']) && $next_comment_regexp_pos < $i) { $next_comment_regexp_pos = $length; foreach ($this->language_data['COMMENT_REGEXP'] as $comment_key => $regexp) { $match_i = false; if (isset($comment_regexp_cache_per_key[$comment_key]) && ($comment_regexp_cache_per_key[$comment_key]['pos'] >= $i || $comment_regexp_cache_per_key[$comment_key]['pos'] === false)) { // we have already matched something if ($comment_regexp_cache_per_key[$comment_key]['pos'] === false) { // this comment is never matched continue; } $match_i = $comment_regexp_cache_per_key[$comment_key]['pos']; } elseif ( //This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible (GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $i), $match, PREG_OFFSET_CAPTURE)) || (!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $i)) ) { $match_i = $match[0][1]; if (GESHI_PHP_PRE_433) { $match_i += $i; } $comment_regexp_cache_per_key[$comment_key] = array( 'key' => $comment_key, 'length' => strlen($match[0][0]), 'pos' => $match_i ); } else { $comment_regexp_cache_per_key[$comment_key]['pos'] = false; continue; } if ($match_i !== false && $match_i < $next_comment_regexp_pos) { $next_comment_regexp_pos = $match_i; $next_comment_regexp_key = $comment_key; if ($match_i === $i) { break; } } } } $string_started = false; if (isset($is_string_starter[$char])) { // Possibly the start of a new string ... //Check which starter it was ... //Fix for SF#1932083: Multichar Quotemarks unsupported if (is_array($is_string_starter[$char])) { $char_new = ''; foreach ($is_string_starter[$char] as $testchar) { if ($testchar === substr($part, $i, strlen($testchar)) && strlen($testchar) > strlen($char_new)) { $char_new = $testchar; $string_started = true; } } if ($string_started) { $char = $char_new; } } else { $testchar = $is_string_starter[$char]; if ($testchar === substr($part, $i, strlen($testchar))) { $char = $testchar; $string_started = true; } } $char_len = strlen($char); } if ($string_started && ($i != $next_comment_regexp_pos)) { // Hand out the correct style information for this string $string_key = array_search($char, $this->language_data['QUOTEMARKS']); if (!isset($this->language_data['STYLES']['STRINGS'][$string_key]) || !isset($this->language_data['STYLES']['ESCAPE_CHAR'][$string_key])) { $string_key = 0; } // parse the stuff before this $result .= $this->parse_non_string_part($stuff_to_parse); $stuff_to_parse = ''; if (!$this->use_classes) { $string_attributes = ' style="' . $this->language_data['STYLES']['STRINGS'][$string_key] . '"'; } else { $string_attributes = ' class="st'.$string_key.'"'; } // now handle the string $string = "" . GeSHi::hsc($char); $start = $i + $char_len; $string_open = true; if(empty($this->language_data['ESCAPE_REGEXP'])) { $next_escape_regexp_pos = $length; } do { //Get the regular ending pos ... $close_pos = strpos($part, $char, $start); if(false === $close_pos) { $close_pos = $length; } if($this->lexic_permissions['ESCAPE_CHAR']) { // update escape regexp cache if needed if (isset($this->language_data['ESCAPE_REGEXP']) && $next_escape_regexp_pos < $start) { $next_escape_regexp_pos = $length; foreach ($this->language_data['ESCAPE_REGEXP'] as $escape_key => $regexp) { $match_i = false; if (isset($escape_regexp_cache_per_key[$escape_key]) && ($escape_regexp_cache_per_key[$escape_key]['pos'] >= $start || $escape_regexp_cache_per_key[$escape_key]['pos'] === false)) { // we have already matched something if ($escape_regexp_cache_per_key[$escape_key]['pos'] === false) { // this comment is never matched continue; } $match_i = $escape_regexp_cache_per_key[$escape_key]['pos']; } elseif ( //This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible (GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $start), $match, PREG_OFFSET_CAPTURE)) || (!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $start)) ) { $match_i = $match[0][1]; if (GESHI_PHP_PRE_433) { $match_i += $start; } $escape_regexp_cache_per_key[$escape_key] = array( 'key' => $escape_key, 'length' => strlen($match[0][0]), 'pos' => $match_i ); } else { $escape_regexp_cache_per_key[$escape_key]['pos'] = false; continue; } if ($match_i !== false && $match_i < $next_escape_regexp_pos) { $next_escape_regexp_pos = $match_i; $next_escape_regexp_key = $escape_key; if ($match_i === $start) { break; } } } } //Find the next simple escape position if('' != $this->language_data['ESCAPE_CHAR']) { $simple_escape = strpos($part, $this->language_data['ESCAPE_CHAR'], $start); if(false === $simple_escape) { $simple_escape = $length; } } else { $simple_escape = $length; } } else { $next_escape_regexp_pos = $length; $simple_escape = $length; } if($simple_escape < $next_escape_regexp_pos && $simple_escape < $length && $simple_escape < $close_pos) { //The nexxt escape sequence is a simple one ... $es_pos = $simple_escape; //Add the stuff not in the string yet ... $string .= $this->hsc(substr($part, $start, $es_pos - $start)); //Get the style for this escaped char ... if (!$this->use_classes) { $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR'][0] . '"'; } else { $escape_char_attributes = ' class="es0"'; } //Add the style for the escape char ... $string .= "" . GeSHi::hsc($this->language_data['ESCAPE_CHAR']); //Get the byte AFTER the ESCAPE_CHAR we just found $es_char = $part[$es_pos + 1]; if ($es_char == "\n") { // don't put a newline around newlines $string .= "
\n"; $start = $es_pos + 2; } elseif (ord($es_char) >= 128) { //This is an non-ASCII char (UTF8 or single byte) //This code tries to work around SF#2037598 ... if(function_exists('mb_substr')) { $es_char_m = mb_substr(substr($part, $es_pos+1, 16), 0, 1, $this->encoding); $string .= $es_char_m . '
'; } elseif (!GESHI_PHP_PRE_433 && 'utf-8' == $this->encoding) { if(preg_match("/[\xC2-\xDF][\x80-\xBF]". "|\xE0[\xA0-\xBF][\x80-\xBF]". "|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}". "|\xED[\x80-\x9F][\x80-\xBF]". "|\xF0[\x90-\xBF][\x80-\xBF]{2}". "|[\xF1-\xF3][\x80-\xBF]{3}". "|\xF4[\x80-\x8F][\x80-\xBF]{2}/s", $part, $es_char_m, null, $es_pos + 1)) { $es_char_m = $es_char_m[0]; } else { $es_char_m = $es_char; } $string .= $this->hsc($es_char_m) . ''; } else { $es_char_m = $this->hsc($es_char); } $start = $es_pos + strlen($es_char_m) + 1; } else { $string .= $this->hsc($es_char) . ''; $start = $es_pos + 2; } } elseif ($next_escape_regexp_pos < $length && $next_escape_regexp_pos < $close_pos) { $es_pos = $next_escape_regexp_pos; //Add the stuff not in the string yet ... $string .= $this->hsc(substr($part, $start, $es_pos - $start)); //Get the key and length of this match ... $escape = $escape_regexp_cache_per_key[$next_escape_regexp_key]; $escape_str = substr($part, $es_pos, $escape['length']); $escape_key = $escape['key']; //Get the style for this escaped char ... if (!$this->use_classes) { $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR'][$escape_key] . '"'; } else { $escape_char_attributes = ' class="es' . $escape_key . '"'; } //Add the style for the escape char ... $string .= "" . $this->hsc($escape_str) . ''; $start = $es_pos + $escape['length']; } else { //Copy the remainder of the string ... $string .= $this->hsc(substr($part, $start, $close_pos - $start + $char_len)) . ''; $start = $close_pos + $char_len; $string_open = false; } } while($string_open); if ($check_linenumbers) { // Are line numbers used? If, we should end the string before // the newline and begin it again (so when
  • s are put in the source // remains XHTML compliant) // note to self: This opens up possibility of config files specifying // that languages can/cannot have multiline strings??? $string = str_replace("\n", "\n", $string); } $result .= $string; $string = ''; $i = $start - 1; continue; } elseif ($this->lexic_permissions['STRINGS'] && $hq && $hq[0] == $char && substr($part, $i, $hq_strlen) == $hq && ($i != $next_comment_regexp_pos)) { // The start of a hard quoted string if (!$this->use_classes) { $string_attributes = ' style="' . $this->language_data['STYLES']['STRINGS']['HARD'] . '"'; $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR']['HARD'] . '"'; } else { $string_attributes = ' class="st_h"'; $escape_char_attributes = ' class="es_h"'; } // parse the stuff before this $result .= $this->parse_non_string_part($stuff_to_parse); $stuff_to_parse = ''; // now handle the string $string = ''; // look for closing quote $start = $i + $hq_strlen; while ($close_pos = strpos($part, $this->language_data['HARDQUOTE'][1], $start)) { $start = $close_pos + 1; if ($this->lexic_permissions['ESCAPE_CHAR'] && $part[$close_pos - 1] == $this->language_data['HARDCHAR'] && (($i + $hq_strlen) != ($close_pos))) { //Support empty string for HQ escapes if Starter = Escape // make sure this quote is not escaped foreach ($this->language_data['HARDESCAPE'] as $hardescape) { if (substr($part, $close_pos - 1, strlen($hardescape)) == $hardescape) { // check wether this quote is escaped or if it is something like '\\' $escape_char_pos = $close_pos - 1; while ($escape_char_pos > 0 && $part[$escape_char_pos - 1] == $this->language_data['HARDCHAR']) { --$escape_char_pos; } if (($close_pos - $escape_char_pos) & 1) { // uneven number of escape chars => this quote is escaped continue 2; } } } } // found closing quote break; } //Found the closing delimiter? if (!$close_pos) { // span till the end of this $part when no closing delimiter is found $close_pos = $length; } //Get the actual string $string = substr($part, $i, $close_pos - $i + 1); $i = $close_pos; // handle escape chars and encode html chars // (special because when we have escape chars within our string they may not be escaped) if ($this->lexic_permissions['ESCAPE_CHAR'] && $this->language_data['ESCAPE_CHAR']) { $start = 0; $new_string = ''; while ($es_pos = strpos($string, $this->language_data['ESCAPE_CHAR'], $start)) { // hmtl escape stuff before $new_string .= $this->hsc(substr($string, $start, $es_pos - $start)); // check if this is a hard escape foreach ($this->language_data['HARDESCAPE'] as $hardescape) { if (substr($string, $es_pos, strlen($hardescape)) == $hardescape) { // indeed, this is a hardescape $new_string .= "" . $this->hsc($hardescape) . ''; $start = $es_pos + strlen($hardescape); continue 2; } } // not a hard escape, but a normal escape // they come in pairs of two $c = 0; while (isset($string[$es_pos + $c]) && isset($string[$es_pos + $c + 1]) && $string[$es_pos + $c] == $this->language_data['ESCAPE_CHAR'] && $string[$es_pos + $c + 1] == $this->language_data['ESCAPE_CHAR']) { $c += 2; } if ($c) { $new_string .= "" . str_repeat($escaped_escape_char, $c) . ''; $start = $es_pos + $c; } else { // this is just a single lonely escape char... $new_string .= $escaped_escape_char; $start = $es_pos + 1; } } $string = $new_string . $this->hsc(substr($string, $start)); } else { $string = $this->hsc($string); } if ($check_linenumbers) { // Are line numbers used? If, we should end the string before // the newline and begin it again (so when
  • s are put in the source // remains XHTML compliant) // note to self: This opens up possibility of config files specifying // that languages can/cannot have multiline strings??? $string = str_replace("\n", "\n", $string); } $result .= "" . $string . ''; $string = ''; continue; } else { //Have a look for regexp comments if ($i == $next_comment_regexp_pos) { $COMMENT_MATCHED = true; $comment = $comment_regexp_cache_per_key[$next_comment_regexp_key]; $test_str = $this->hsc(substr($part, $i, $comment['length'])); //@todo If remove important do remove here if ($this->lexic_permissions['COMMENTS']['MULTI']) { if (!$this->use_classes) { $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS'][$comment['key']] . '"'; } else { $attributes = ' class="co' . $comment['key'] . '"'; } $test_str = "" . $test_str . ""; // Short-cut through all the multiline code if ($check_linenumbers) { // strreplace to put close span and open span around multiline newlines $test_str = str_replace( "\n", "\n", str_replace("\n ", "\n ", $test_str) ); } } $i += $comment['length'] - 1; // parse the rest $result .= $this->parse_non_string_part($stuff_to_parse); $stuff_to_parse = ''; } // If we haven't matched a regexp comment, try multi-line comments if (!$COMMENT_MATCHED) { // Is this a multiline comment? if (!empty($this->language_data['COMMENT_MULTI']) && $next_comment_multi_pos < $i) { $next_comment_multi_pos = $length; foreach ($this->language_data['COMMENT_MULTI'] as $open => $close) { $match_i = false; if (isset($comment_multi_cache_per_key[$open]) && ($comment_multi_cache_per_key[$open] >= $i || $comment_multi_cache_per_key[$open] === false)) { // we have already matched something if ($comment_multi_cache_per_key[$open] === false) { // this comment is never matched continue; } $match_i = $comment_multi_cache_per_key[$open]; } elseif (($match_i = stripos($part, $open, $i)) !== false) { $comment_multi_cache_per_key[$open] = $match_i; } else { $comment_multi_cache_per_key[$open] = false; continue; } if ($match_i !== false && $match_i < $next_comment_multi_pos) { $next_comment_multi_pos = $match_i; $next_open_comment_multi = $open; if ($match_i === $i) { break; } } } } if ($i == $next_comment_multi_pos) { $open = $next_open_comment_multi; $close = $this->language_data['COMMENT_MULTI'][$open]; $open_strlen = strlen($open); $close_strlen = strlen($close); $COMMENT_MATCHED = true; $test_str_match = $open; //@todo If remove important do remove here if ($this->lexic_permissions['COMMENTS']['MULTI'] || $open == GESHI_START_IMPORTANT) { if ($open != GESHI_START_IMPORTANT) { if (!$this->use_classes) { $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS']['MULTI'] . '"'; } else { $attributes = ' class="coMULTI"'; } $test_str = "" . $this->hsc($open); } else { if (!$this->use_classes) { $attributes = ' style="' . $this->important_styles . '"'; } else { $attributes = ' class="imp"'; } // We don't include the start of the comment if it's an // "important" part $test_str = ""; } } else { $test_str = $this->hsc($open); } $close_pos = strpos( $part, $close, $i + $open_strlen ); if ($close_pos === false) { $close_pos = $length; } // Short-cut through all the multiline code $rest_of_comment = $this->hsc(substr($part, $i + $open_strlen, $close_pos - $i - $open_strlen + $close_strlen)); if (($this->lexic_permissions['COMMENTS']['MULTI'] || $test_str_match == GESHI_START_IMPORTANT) && $check_linenumbers) { // strreplace to put close span and open span around multiline newlines $test_str .= str_replace( "\n", "\n", str_replace("\n ", "\n ", $rest_of_comment) ); } else { $test_str .= $rest_of_comment; } if ($this->lexic_permissions['COMMENTS']['MULTI'] || $test_str_match == GESHI_START_IMPORTANT) { $test_str .= ''; } $i = $close_pos + $close_strlen - 1; // parse the rest $result .= $this->parse_non_string_part($stuff_to_parse); $stuff_to_parse = ''; } } // If we haven't matched a multiline comment, try single-line comments if (!$COMMENT_MATCHED) { // cache potential single line comment occurances if (!empty($this->language_data['COMMENT_SINGLE']) && $next_comment_single_pos < $i) { $next_comment_single_pos = $length; foreach ($this->language_data['COMMENT_SINGLE'] as $comment_key => $comment_mark) { $match_i = false; if (isset($comment_single_cache_per_key[$comment_key]) && ($comment_single_cache_per_key[$comment_key] >= $i || $comment_single_cache_per_key[$comment_key] === false)) { // we have already matched something if ($comment_single_cache_per_key[$comment_key] === false) { // this comment is never matched continue; } $match_i = $comment_single_cache_per_key[$comment_key]; } elseif ( // case sensitive comments ($this->language_data['CASE_SENSITIVE'][GESHI_COMMENTS] && ($match_i = stripos($part, $comment_mark, $i)) !== false) || // non case sensitive (!$this->language_data['CASE_SENSITIVE'][GESHI_COMMENTS] && (($match_i = strpos($part, $comment_mark, $i)) !== false))) { $comment_single_cache_per_key[$comment_key] = $match_i; } else { $comment_single_cache_per_key[$comment_key] = false; continue; } if ($match_i !== false && $match_i < $next_comment_single_pos) { $next_comment_single_pos = $match_i; $next_comment_single_key = $comment_key; if ($match_i === $i) { break; } } } } if ($next_comment_single_pos == $i) { $comment_key = $next_comment_single_key; $comment_mark = $this->language_data['COMMENT_SINGLE'][$comment_key]; $com_len = strlen($comment_mark); // This check will find special variables like $# in bash // or compiler directives of Delphi beginning {$ if ((empty($sc_disallowed_before) || ($i == 0) || (false === strpos($sc_disallowed_before, $part[$i-1]))) && (empty($sc_disallowed_after) || ($length <= $i + $com_len) || (false === strpos($sc_disallowed_after, $part[$i + $com_len])))) { // this is a valid comment $COMMENT_MATCHED = true; if ($this->lexic_permissions['COMMENTS'][$comment_key]) { if (!$this->use_classes) { $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS'][$comment_key] . '"'; } else { $attributes = ' class="co' . $comment_key . '"'; } $test_str = "" . $this->hsc($this->change_case($comment_mark)); } else { $test_str = $this->hsc($comment_mark); } //Check if this comment is the last in the source $close_pos = strpos($part, "\n", $i); $oops = false; if ($close_pos === false) { $close_pos = $length; $oops = true; } $test_str .= $this->hsc(substr($part, $i + $com_len, $close_pos - $i - $com_len)); if ($this->lexic_permissions['COMMENTS'][$comment_key]) { $test_str .= ""; } // Take into account that the comment might be the last in the source if (!$oops) { $test_str .= "\n"; } $i = $close_pos; // parse the rest $result .= $this->parse_non_string_part($stuff_to_parse); $stuff_to_parse = ''; } } } } // Where are we adding this char? if (!$COMMENT_MATCHED) { $stuff_to_parse .= $char; } else { $result .= $test_str; unset($test_str); $COMMENT_MATCHED = false; } } // Parse the last bit $result .= $this->parse_non_string_part($stuff_to_parse); $stuff_to_parse = ''; } else { $result .= $this->hsc($part); } // Close the that surrounds the block if ($STRICTATTRS != '') { $result = str_replace("\n", "\n", $result); $result .= ''; } $endresult .= $result; unset($part, $parts[$key], $result); } //This fix is related to SF#1923020, but has to be applied regardless of //actually highlighting symbols. /** NOTE: memorypeak #3 */ $endresult = str_replace(array('', ''), array(';', '|'), $endresult); // // Parse the last stuff (redundant?) // $result .= $this->parse_non_string_part($stuff_to_parse); // Lop off the very first and last spaces // $result = substr($result, 1, -1); // We're finished: stop timing $this->set_time($start_time, microtime()); $this->finalise($endresult); return $endresult; } /** * Swaps out spaces and tabs for HTML indentation. Not needed if * the code is in a pre block... * * @param string The source to indent (reference!) * @since 1.0.0 * @access private */ function indent(&$result) { /// Replace tabs with the correct number of spaces if (false !== strpos($result, "\t")) { $lines = explode("\n", $result); $result = null;//Save memory while we process the lines individually $tab_width = $this->get_real_tab_width(); $tab_string = ' ' . str_repeat(' ', $tab_width); for ($key = 0, $n = count($lines); $key < $n; $key++) { $line = $lines[$key]; if (false === strpos($line, "\t")) { continue; } $pos = 0; $length = strlen($line); $lines[$key] = ''; // reduce memory $IN_TAG = false; for ($i = 0; $i < $length; ++$i) { $char = $line[$i]; // Simple engine to work out whether we're in a tag. // If we are we modify $pos. This is so we ignore HTML // in the line and only workout the tab replacement // via the actual content of the string // This test could be improved to include strings in the // html so that < or > would be allowed in user's styles // (e.g. quotes: '<' '>'; or similar) if ($IN_TAG) { if ('>' == $char) { $IN_TAG = false; } $lines[$key] .= $char; } elseif ('<' == $char) { $IN_TAG = true; $lines[$key] .= '<'; } elseif ('&' == $char) { $substr = substr($line, $i + 3, 5); $posi = strpos($substr, ';'); if (false === $posi) { ++$pos; } else { $pos -= $posi+2; } $lines[$key] .= $char; } elseif ("\t" == $char) { $str = ''; // OPTIMISE - move $strs out. Make an array: // $tabs = array( // 1 => ' ', // 2 => '  ', // 3 => '   ' etc etc // to use instead of building a string every time $tab_end_width = $tab_width - ($pos % $tab_width); //Moved out of the look as it doesn't change within the loop if (($pos & 1) || 1 == $tab_end_width) { $str .= substr($tab_string, 6, $tab_end_width); } else { $str .= substr($tab_string, 0, $tab_end_width+5); } $lines[$key] .= $str; $pos += $tab_end_width; if (false === strpos($line, "\t", $i + 1)) { $lines[$key] .= substr($line, $i + 1); break; } } elseif (0 == $pos && ' ' == $char) { $lines[$key] .= ' '; ++$pos; } else { $lines[$key] .= $char; ++$pos; } } } $result = implode("\n", $lines); unset($lines);//We don't need the lines separated beyond this --- free them! } // Other whitespace // BenBE: Fix to reduce the number of replacements to be done $result = preg_replace('/^ /m', ' ', $result); $result = str_replace(' ', '  ', $result); if ($this->line_numbers == GESHI_NO_LINE_NUMBERS && $this->header_type != GESHI_HEADER_PRE_TABLE) { if ($this->line_ending === null) { $result = nl2br($result); } else { $result = str_replace("\n", $this->line_ending, $result); } } } /** * Changes the case of a keyword for those languages where a change is asked for * * @param string The keyword to change the case of * @return string The keyword with its case changed * @since 1.0.0 * @access private */ function change_case($instr) { switch ($this->language_data['CASE_KEYWORDS']) { case GESHI_CAPS_UPPER: return strtoupper($instr); case GESHI_CAPS_LOWER: return strtolower($instr); default: return $instr; } } /** * Handles replacements of keywords to include markup and links if requested * * @param string The keyword to add the Markup to * @return The HTML for the match found * @since 1.0.8 * @access private * * @todo Get rid of ender in keyword links */ function handle_keyword_replace($match) { $k = $this->_kw_replace_group; $keyword = $match[0]; $keyword_match = $match[1]; $before = ''; $after = ''; if ($this->keyword_links) { // Keyword links have been ebabled if (isset($this->language_data['URLS'][$k]) && $this->language_data['URLS'][$k] != '') { // There is a base group for this keyword // Old system: strtolower //$keyword = ( $this->language_data['CASE_SENSITIVE'][$group] ) ? $keyword : strtolower($keyword); // New system: get keyword from language file to get correct case if (!$this->language_data['CASE_SENSITIVE'][$k] && strpos($this->language_data['URLS'][$k], '{FNAME}') !== false) { foreach ($this->language_data['KEYWORDS'][$k] as $word) { if (strcasecmp($word, $keyword_match) == 0) { break; } } } else { $word = $keyword_match; } $before = '<|UR1|"' . str_replace( array( '{FNAME}', '{FNAMEL}', '{FNAMEU}', '.'), array( str_replace('+', '%20', urlencode($this->hsc($word))), str_replace('+', '%20', urlencode($this->hsc(strtolower($word)))), str_replace('+', '%20', urlencode($this->hsc(strtoupper($word)))), ''), $this->language_data['URLS'][$k] ) . '">'; $after = ''; } } return $before . '<|/'. $k .'/>' . $this->change_case($keyword) . '|>' . $after; } /** * handles regular expressions highlighting-definitions with callback functions * * @note this is a callback, don't use it directly * * @param array the matches array * @return The highlighted string * @since 1.0.8 * @access private */ function handle_regexps_callback($matches) { // before: "' style=\"' . call_user_func(\"$func\", '\\1') . '\"\\1|>'", return ' style="' . call_user_func($this->language_data['STYLES']['REGEXPS'][$this->_rx_key], $matches[1]) . '"'. $matches[1] . '|>'; } /** * handles newlines in REGEXPS matches. Set the _hmr_* vars before calling this * * @note this is a callback, don't use it directly * * @param array the matches array * @return string * @since 1.0.8 * @access private */ function handle_multiline_regexps($matches) { $before = $this->_hmr_before; $after = $this->_hmr_after; if ($this->_hmr_replace) { $replace = $this->_hmr_replace; $search = array(); foreach (array_keys($matches) as $k) { $search[] = '\\' . $k; } $before = str_replace($search, $matches, $before); $after = str_replace($search, $matches, $after); $replace = str_replace($search, $matches, $replace); } else { $replace = $matches[0]; } return $before . '<|!REG3XP' . $this->_hmr_key .'!>' . str_replace("\n", "|>\n<|!REG3XP" . $this->_hmr_key . '!>', $replace) . '|>' . $after; } /** * Takes a string that has no strings or comments in it, and highlights * stuff like keywords, numbers and methods. * * @param string The string to parse for keyword, numbers etc. * @since 1.0.0 * @access private * @todo BUGGY! Why? Why not build string and return? */ function parse_non_string_part($stuff_to_parse) { $stuff_to_parse = ' ' . $this->hsc($stuff_to_parse); // Highlight keywords $disallowed_before = "(?lexic_permissions['STRINGS']) { $quotemarks = preg_quote(implode($this->language_data['QUOTEMARKS']), '/'); $disallowed_before .= $quotemarks; $disallowed_after .= $quotemarks; } $disallowed_before .= "])"; $disallowed_after .= "])"; $parser_control_pergroup = false; if (isset($this->language_data['PARSER_CONTROL'])) { if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'])) { $x = 0; // check wether per-keyword-group parser_control is enabled if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'])) { $disallowed_before = $this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE']; ++$x; } if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'])) { $disallowed_after = $this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER']; ++$x; } $parser_control_pergroup = (count($this->language_data['PARSER_CONTROL']['KEYWORDS']) - $x) > 0; } } foreach (array_keys($this->language_data['KEYWORDS']) as $k) { if (!isset($this->lexic_permissions['KEYWORDS'][$k]) || $this->lexic_permissions['KEYWORDS'][$k]) { $case_sensitive = $this->language_data['CASE_SENSITIVE'][$k]; $modifiers = $case_sensitive ? '' : 'i'; // NEW in 1.0.8 - per-keyword-group parser control $disallowed_before_local = $disallowed_before; $disallowed_after_local = $disallowed_after; if ($parser_control_pergroup && isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k])) { if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE'])) { $disallowed_before_local = $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE']; } if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER'])) { $disallowed_after_local = $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER']; } } $this->_kw_replace_group = $k; //NEW in 1.0.8, the cached regexp list // since we don't want PHP / PCRE to crash due to too large patterns we split them into smaller chunks for ($set = 0, $set_length = count($this->language_data['CACHED_KEYWORD_LISTS'][$k]); $set < $set_length; ++$set) { $keywordset =& $this->language_data['CACHED_KEYWORD_LISTS'][$k][$set]; // Might make a more unique string for putting the number in soon // Basically, we don't put the styles in yet because then the styles themselves will // get highlighted if the language has a CSS keyword in it (like CSS, for example ;)) $stuff_to_parse = preg_replace_callback( "/$disallowed_before_local({$keywordset})(?!\(?:htm|php|aspx?))$disallowed_after_local/$modifiers", array($this, 'handle_keyword_replace'), $stuff_to_parse ); } } } // Regular expressions foreach ($this->language_data['REGEXPS'] as $key => $regexp) { if ($this->lexic_permissions['REGEXPS'][$key]) { if (is_array($regexp)) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { // produce valid HTML when we match multiple lines $this->_hmr_replace = $regexp[GESHI_REPLACE]; $this->_hmr_before = $regexp[GESHI_BEFORE]; $this->_hmr_key = $key; $this->_hmr_after = $regexp[GESHI_AFTER]; $stuff_to_parse = preg_replace_callback( "/" . $regexp[GESHI_SEARCH] . "/{$regexp[GESHI_MODIFIERS]}", array($this, 'handle_multiline_regexps'), $stuff_to_parse); $this->_hmr_replace = false; $this->_hmr_before = ''; $this->_hmr_after = ''; } else { $stuff_to_parse = preg_replace( '/' . $regexp[GESHI_SEARCH] . '/' . $regexp[GESHI_MODIFIERS], $regexp[GESHI_BEFORE] . '<|!REG3XP'. $key .'!>' . $regexp[GESHI_REPLACE] . '|>' . $regexp[GESHI_AFTER], $stuff_to_parse); } } else { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { // produce valid HTML when we match multiple lines $this->_hmr_key = $key; $stuff_to_parse = preg_replace_callback( "/(" . $regexp . ")/", array($this, 'handle_multiline_regexps'), $stuff_to_parse); $this->_hmr_key = ''; } else { $stuff_to_parse = preg_replace( "/(" . $regexp . ")/", "<|!REG3XP$key!>\\1|>", $stuff_to_parse); } } } } // Highlight numbers. As of 1.0.8 we support different types of numbers $numbers_found = false; if ($this->lexic_permissions['NUMBERS'] && preg_match($this->language_data['PARSER_CONTROL']['NUMBERS']['PRECHECK_RX'], $stuff_to_parse )) { $numbers_found = true; //For each of the formats ... foreach($this->language_data['NUMBERS_RXCACHE'] as $id => $regexp) { //Check if it should be highlighted ... $stuff_to_parse = preg_replace($regexp, "<|/NUM!$id/>\\1|>", $stuff_to_parse); } } // // Now that's all done, replace /[number]/ with the correct styles // foreach (array_keys($this->language_data['KEYWORDS']) as $k) { if (!$this->use_classes) { $attributes = ' style="' . (isset($this->language_data['STYLES']['KEYWORDS'][$k]) ? $this->language_data['STYLES']['KEYWORDS'][$k] : "") . '"'; } else { $attributes = ' class="kw' . $k . '"'; } $stuff_to_parse = str_replace("<|/$k/>", "<|$attributes>", $stuff_to_parse); } if ($numbers_found) { // Put number styles in foreach($this->language_data['NUMBERS_RXCACHE'] as $id => $regexp) { //Commented out for now, as this needs some review ... // if ($numbers_permissions & $id) { //Get the appropriate style ... //Checking for unset styles is done by the style cache builder ... if (!$this->use_classes) { $attributes = ' style="' . $this->language_data['STYLES']['NUMBERS'][$id] . '"'; } else { $attributes = ' class="nu'.$id.'"'; } //Set in the correct styles ... $stuff_to_parse = str_replace("/NUM!$id/", $attributes, $stuff_to_parse); // } } } // Highlight methods and fields in objects if ($this->lexic_permissions['METHODS'] && $this->language_data['OOLANG']) { $oolang_spaces = "[\s]*"; $oolang_before = ""; $oolang_after = "[a-zA-Z][a-zA-Z0-9_]*"; if (isset($this->language_data['PARSER_CONTROL'])) { if (isset($this->language_data['PARSER_CONTROL']['OOLANG'])) { if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_BEFORE'])) { $oolang_before = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_BEFORE']; } if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_AFTER'])) { $oolang_after = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_AFTER']; } if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_SPACES'])) { $oolang_spaces = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_SPACES']; } } } foreach ($this->language_data['OBJECT_SPLITTERS'] as $key => $splitter) { if (false !== strpos($stuff_to_parse, $splitter)) { if (!$this->use_classes) { $attributes = ' style="' . $this->language_data['STYLES']['METHODS'][$key] . '"'; } else { $attributes = ' class="me' . $key . '"'; } $stuff_to_parse = preg_replace("/($oolang_before)(" . preg_quote($this->language_data['OBJECT_SPLITTERS'][$key], '/') . ")($oolang_spaces)($oolang_after)/", "\\1\\2\\3<|$attributes>\\4|>", $stuff_to_parse); } } } // // Highlight brackets. Yes, I've tried adding a semi-colon to this list. // You try it, and see what happens ;) // TODO: Fix lexic permissions not converting entities if shouldn't // be highlighting regardless // if ($this->lexic_permissions['BRACKETS']) { $stuff_to_parse = str_replace( $this->language_data['CACHE_BRACKET_MATCH'], $this->language_data['CACHE_BRACKET_REPLACE'], $stuff_to_parse ); } //FIX for symbol highlighting ... if ($this->lexic_permissions['SYMBOLS'] && !empty($this->language_data['SYMBOLS'])) { //Get all matches and throw away those witin a block that is already highlighted... (i.e. matched by a regexp) $n_symbols = preg_match_all("/<\|(?:|[^>])+>(?:(?!\|>).*?)\|>|<\/a>|(?:" . $this->language_data['SYMBOL_SEARCH'] . ")+(?![^<]+?>)/", $stuff_to_parse, $pot_symbols, PREG_OFFSET_CAPTURE | PREG_SET_ORDER); $global_offset = 0; for ($s_id = 0; $s_id < $n_symbols; ++$s_id) { $symbol_match = $pot_symbols[$s_id][0][0]; if (strpos($symbol_match, '<') !== false || strpos($symbol_match, '>') !== false) { // already highlighted blocks _must_ include either < or > // so if this conditional applies, we have to skip this match // BenBE: UNLESS the block contains or if(strpos($symbol_match, '') === false && strpos($symbol_match, '') === false) { continue; } } // if we reach this point, we have a valid match which needs to be highlighted $symbol_length = strlen($symbol_match); $symbol_offset = $pot_symbols[$s_id][0][1]; unset($pot_symbols[$s_id]); $symbol_end = $symbol_length + $symbol_offset; $symbol_hl = ""; // if we have multiple styles, we have to handle them properly if ($this->language_data['MULTIPLE_SYMBOL_GROUPS']) { $old_sym = -1; // Split the current stuff to replace into its atomic symbols ... preg_match_all("/" . $this->language_data['SYMBOL_SEARCH'] . "/", $symbol_match, $sym_match_syms, PREG_PATTERN_ORDER); foreach ($sym_match_syms[0] as $sym_ms) { //Check if consequtive symbols belong to the same group to save output ... if (isset($this->language_data['SYMBOL_DATA'][$sym_ms]) && ($this->language_data['SYMBOL_DATA'][$sym_ms] != $old_sym)) { if (-1 != $old_sym) { $symbol_hl .= "|>"; } $old_sym = $this->language_data['SYMBOL_DATA'][$sym_ms]; if (!$this->use_classes) { $symbol_hl .= '<| style="' . $this->language_data['STYLES']['SYMBOLS'][$old_sym] . '">'; } else { $symbol_hl .= '<| class="sy' . $old_sym . '">'; } } $symbol_hl .= $sym_ms; } unset($sym_match_syms); //Close remaining tags and insert the replacement at the right position ... //Take caution if symbol_hl is empty to avoid doubled closing spans. if (-1 != $old_sym) { $symbol_hl .= "|>"; } } else { if (!$this->use_classes) { $symbol_hl = '<| style="' . $this->language_data['STYLES']['SYMBOLS'][0] . '">'; } else { $symbol_hl = '<| class="sy0">'; } $symbol_hl .= $symbol_match . '|>'; } $stuff_to_parse = substr_replace($stuff_to_parse, $symbol_hl, $symbol_offset + $global_offset, $symbol_length); // since we replace old text with something of different size, // we'll have to keep track of the differences $global_offset += strlen($symbol_hl) - $symbol_length; } } //FIX for symbol highlighting ... // Add class/style for regexps foreach (array_keys($this->language_data['REGEXPS']) as $key) { if ($this->lexic_permissions['REGEXPS'][$key]) { if (is_callable($this->language_data['STYLES']['REGEXPS'][$key])) { $this->_rx_key = $key; $stuff_to_parse = preg_replace_callback("/!REG3XP$key!(.*)\|>/U", array($this, 'handle_regexps_callback'), $stuff_to_parse); } else { if (!$this->use_classes) { $attributes = ' style="' . $this->language_data['STYLES']['REGEXPS'][$key] . '"'; } else { if (is_array($this->language_data['REGEXPS'][$key]) && array_key_exists(GESHI_CLASS, $this->language_data['REGEXPS'][$key])) { $attributes = ' class="' . $this->language_data['REGEXPS'][$key][GESHI_CLASS] . '"'; } else { $attributes = ' class="re' . $key . '"'; } } $stuff_to_parse = str_replace("!REG3XP$key!", "$attributes", $stuff_to_parse); } } } // Replace with . for urls $stuff_to_parse = str_replace('', '.', $stuff_to_parse); // Replace <|UR1| with link_styles[GESHI_LINK])) { if ($this->use_classes) { $stuff_to_parse = str_replace('<|UR1|', 'link_target . ' href=', $stuff_to_parse); } else { $stuff_to_parse = str_replace('<|UR1|', 'link_target . ' style="' . $this->link_styles[GESHI_LINK] . '" href=', $stuff_to_parse); } } else { $stuff_to_parse = str_replace('<|UR1|', 'link_target . ' href=', $stuff_to_parse); } // // NOW we add the span thingy ;) // $stuff_to_parse = str_replace('<|', '', '', $stuff_to_parse ); return substr($stuff_to_parse, 1); } /** * Sets the time taken to parse the code * * @param microtime The time when parsing started * @param microtime The time when parsing ended * @since 1.0.2 * @access private */ function set_time($start_time, $end_time) { $start = explode(' ', $start_time); $end = explode(' ', $end_time); $this->time = $end[0] + $end[1] - $start[0] - $start[1]; } /** * Gets the time taken to parse the code * * @return double The time taken to parse the code * @since 1.0.2 */ function get_time() { return $this->time; } /** * Merges arrays recursively, overwriting values of the first array with values of later arrays * * @since 1.0.8 * @access private */ function merge_arrays() { $arrays = func_get_args(); $narrays = count($arrays); // check arguments // comment out if more performance is necessary (in this case the foreach loop will trigger a warning if the argument is not an array) for ($i = 0; $i < $narrays; $i ++) { if (!is_array($arrays[$i])) { // also array_merge_recursive returns nothing in this case trigger_error('Argument #' . ($i+1) . ' is not an array - trying to merge array with scalar! Returning false!', E_USER_WARNING); return false; } } // the first array is in the output set in every case $ret = $arrays[0]; // merege $ret with the remaining arrays for ($i = 1; $i < $narrays; $i ++) { foreach ($arrays[$i] as $key => $value) { if (is_array($value) && isset($ret[$key])) { // if $ret[$key] is not an array you try to merge an scalar value with an array - the result is not defined (incompatible arrays) // in this case the call will trigger an E_USER_WARNING and the $ret[$key] will be false. $ret[$key] = $this->merge_arrays($ret[$key], $value); } else { $ret[$key] = $value; } } } return $ret; } /** * Gets language information and stores it for later use * * @param string The filename of the language file you want to load * @since 1.0.0 * @access private * @todo Needs to load keys for lexic permissions for keywords, regexps etc */ function load_language($file_name) { if ($file_name == $this->loaded_language) { // this file is already loaded! return; } //Prepare some stuff before actually loading the language file $this->loaded_language = $file_name; $this->parse_cache_built = false; $this->enable_highlighting(); $language_data = array(); //Load the language file require $file_name; // Perhaps some checking might be added here later to check that // $language data is a valid thing but maybe not $this->language_data = $language_data; // Set strict mode if should be set $this->strict_mode = $this->language_data['STRICT_MODE_APPLIES']; // Set permissions for all lexics to true // so they'll be highlighted by default foreach (array_keys($this->language_data['KEYWORDS']) as $key) { if (!empty($this->language_data['KEYWORDS'][$key])) { $this->lexic_permissions['KEYWORDS'][$key] = true; } else { $this->lexic_permissions['KEYWORDS'][$key] = false; } } foreach (array_keys($this->language_data['COMMENT_SINGLE']) as $key) { $this->lexic_permissions['COMMENTS'][$key] = true; } foreach (array_keys($this->language_data['REGEXPS']) as $key) { $this->lexic_permissions['REGEXPS'][$key] = true; } // for BenBE and future code reviews: // we can use empty here since we only check for existance and emptiness of an array // if it is not an array at all but rather false or null this will work as intended as well // even if $this->language_data['PARSER_CONTROL'] is undefined this won't trigger a notice if (!empty($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS'])) { foreach ($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS'] as $flag => $value) { // it's either true or false and maybe is true as well $perm = $value !== GESHI_NEVER; if ($flag == 'ALL') { $this->enable_highlighting($perm); continue; } if (!isset($this->lexic_permissions[$flag])) { // unknown lexic permission continue; } if (is_array($this->lexic_permissions[$flag])) { foreach ($this->lexic_permissions[$flag] as $key => $val) { $this->lexic_permissions[$flag][$key] = $perm; } } else { $this->lexic_permissions[$flag] = $perm; } } unset($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS']); } //Fix: Problem where hardescapes weren't handled if no ESCAPE_CHAR was given //You need to set one for HARDESCAPES only in this case. if(!isset($this->language_data['HARDCHAR'])) { $this->language_data['HARDCHAR'] = $this->language_data['ESCAPE_CHAR']; } //NEW in 1.0.8: Allow styles to be loaded from a separate file to override defaults $style_filename = substr($file_name, 0, -4) . '.style.php'; if (is_readable($style_filename)) { //Clear any style_data that could have been set before ... if (isset($style_data)) { unset($style_data); } //Read the Style Information from the style file include $style_filename; //Apply the new styles to our current language styles if (isset($style_data) && is_array($style_data)) { $this->language_data['STYLES'] = $this->merge_arrays($this->language_data['STYLES'], $style_data); } } } /** * Takes the parsed code and various options, and creates the HTML * surrounding it to make it look nice. * * @param string The code already parsed (reference!) * @since 1.0.0 * @access private */ function finalise(&$parsed_code) { // Remove end parts of important declarations // This is BUGGY!! My fault for bad code: fix coming in 1.2 // @todo Remove this crap if ($this->enable_important_blocks && (strpos($parsed_code, $this->hsc(GESHI_START_IMPORTANT)) === false)) { $parsed_code = str_replace($this->hsc(GESHI_END_IMPORTANT), '', $parsed_code); } // Add HTML whitespace stuff if we're using the
    header if ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) { $this->indent($parsed_code); } // purge some unnecessary stuff /** NOTE: memorypeak #1 */ $parsed_code = preg_replace('#]+>(\s*)#', '\\1', $parsed_code); // If we are using IDs for line numbers, there needs to be an overall // ID set to prevent collisions. if ($this->add_ids && !$this->overall_id) { $this->overall_id = 'geshi-' . substr(md5(microtime()), 0, 4); } // Get code into lines /** NOTE: memorypeak #2 */ $code = explode("\n", $parsed_code); $parsed_code = $this->header(); // If we're using line numbers, we insert
  • s and appropriate // markup to style them (otherwise we don't need to do anything) if ($this->line_numbers != GESHI_NO_LINE_NUMBERS && $this->header_type != GESHI_HEADER_PRE_TABLE) { // If we're using the
     header, we shouldn't add newlines because
                // the 
     will line-break them (and the 
  • s already do this for us) $ls = ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) ? "\n" : ''; // Set vars to defaults for following loop $i = 0; // Foreach line... for ($i = 0, $n = count($code); $i < $n;) { //Reset the attributes for a new line ... $attrs = array(); // Make lines have at least one space in them if they're empty // BenBE: Checking emptiness using trim instead of relying on blanks if ('' == trim($code[$i])) { $code[$i] = ' '; } // If this is a "special line"... if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && $i % $this->line_nth_row == ($this->line_nth_row - 1)) { // Set the attributes to style the line if ($this->use_classes) { //$attr = ' class="li2"'; $attrs['class'][] = 'li2'; $def_attr = ' class="de2"'; } else { //$attr = ' style="' . $this->line_style2 . '"'; $attrs['style'][] = $this->line_style2; // This style "covers up" the special styles set for special lines // so that styles applied to special lines don't apply to the actual // code on that line $def_attr = ' style="' . $this->code_style . '"'; } } else { if ($this->use_classes) { //$attr = ' class="li1"'; $attrs['class'][] = 'li1'; $def_attr = ' class="de1"'; } else { //$attr = ' style="' . $this->line_style1 . '"'; $attrs['style'][] = $this->line_style1; $def_attr = ' style="' . $this->code_style . '"'; } } //Check which type of tag to insert for this line if ($this->header_type == GESHI_HEADER_PRE_VALID) { $start = ""; $end = '
  • '; } else { // Span or div? $start = ""; $end = ''; } ++$i; // Are we supposed to use ids? If so, add them if ($this->add_ids) { $attrs['id'][] = "$this->overall_id-$i"; } //Is this some line with extra styles??? if (in_array($i, $this->highlight_extra_lines)) { if ($this->use_classes) { if (isset($this->highlight_extra_lines_styles[$i])) { $attrs['class'][] = "lx$i"; } else { $attrs['class'][] = "ln-xtra"; } } else { array_push($attrs['style'], $this->get_line_style($i)); } } // Add in the line surrounded by appropriate list HTML $attr_string = ''; foreach ($attrs as $key => $attr) { $attr_string .= ' ' . $key . '="' . implode(' ', $attr) . '"'; } $parsed_code .= "$start{$code[$i-1]}$end
  • $ls"; unset($code[$i - 1]); } } else { $n = count($code); if ($this->use_classes) { $attributes = ' class="de1"'; } else { $attributes = ' style="'. $this->code_style .'"'; } if ($this->header_type == GESHI_HEADER_PRE_VALID) { $parsed_code .= ''; } elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { if ($this->use_classes) { $attrs = ' class="ln"'; } else { $attrs = ' style="'. $this->table_linenumber_style .'"'; } $parsed_code .= ''; // get linenumbers // we don't merge it with the for below, since it should be better for // memory consumption this way // @todo: but... actually it would still be somewhat nice to merge the two loops // the mem peaks are at different positions for ($i = 0; $i < $n; ++$i) { $close = 0; // fancy lines if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && $i % $this->line_nth_row == ($this->line_nth_row - 1)) { // Set the attributes to style the line if ($this->use_classes) { $parsed_code .= ''; } else { // This style "covers up" the special styles set for special lines // so that styles applied to special lines don't apply to the actual // code on that line $parsed_code .= '' .''; } $close += 2; } //Is this some line with extra styles??? if (in_array($i + 1, $this->highlight_extra_lines)) { if ($this->use_classes) { if (isset($this->highlight_extra_lines_styles[$i])) { $parsed_code .= ""; } else { $parsed_code .= ""; } } else { $parsed_code .= "get_line_style($i) . "\">"; } ++$close; } $parsed_code .= $this->line_numbers_start + $i; if ($close) { $parsed_code .= str_repeat('', $close); } elseif ($i != $n) { $parsed_code .= "\n"; } } $parsed_code .= '
    '; } $parsed_code .= ''; } // No line numbers, but still need to handle highlighting lines extra. // Have to use divs so the full width of the code is highlighted $close = 0; for ($i = 0; $i < $n; ++$i) { // Make lines have at least one space in them if they're empty // BenBE: Checking emptiness using trim instead of relying on blanks if ('' == trim($code[$i])) { $code[$i] = ' '; } // fancy lines if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && $i % $this->line_nth_row == ($this->line_nth_row - 1)) { // Set the attributes to style the line if ($this->use_classes) { $parsed_code .= ''; } else { // This style "covers up" the special styles set for special lines // so that styles applied to special lines don't apply to the actual // code on that line $parsed_code .= '' .''; } $close += 2; } //Is this some line with extra styles??? if (in_array($i + 1, $this->highlight_extra_lines)) { if ($this->use_classes) { if (isset($this->highlight_extra_lines_styles[$i])) { $parsed_code .= ""; } else { $parsed_code .= ""; } } else { $parsed_code .= "get_line_style($i) . "\">"; } ++$close; } $parsed_code .= $code[$i]; if ($close) { $parsed_code .= str_repeat('', $close); $close = 0; } elseif ($i + 1 < $n) { $parsed_code .= "\n"; } unset($code[$i]); } if ($this->header_type == GESHI_HEADER_PRE_VALID || $this->header_type == GESHI_HEADER_PRE_TABLE) { $parsed_code .= ''; } if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { $parsed_code .= ''; } } $parsed_code .= $this->footer(); } /** * Creates the header for the code block (with correct attributes) * * @return string The header for the code block * @since 1.0.0 * @access private */ function header() { // Get attributes needed /** * @todo Document behaviour change - class is outputted regardless of whether * we're using classes or not. Same with style */ $attributes = ' class="' . $this->_genCSSName($this->language); if ($this->overall_class != '') { $attributes .= " ".$this->_genCSSName($this->overall_class); } $attributes .= '"'; if ($this->overall_id != '') { $attributes .= " id=\"{$this->overall_id}\""; } if ($this->overall_style != '' && !$this->use_classes) { $attributes .= ' style="' . $this->overall_style . '"'; } $ol_attributes = ''; if ($this->line_numbers_start != 1) { $ol_attributes .= ' start="' . $this->line_numbers_start . '"'; } // Get the header HTML $header = $this->header_content; if ($header) { if ($this->header_type == GESHI_HEADER_PRE || $this->header_type == GESHI_HEADER_PRE_VALID) { $header = str_replace("\n", '', $header); } $header = $this->replace_keywords($header); if ($this->use_classes) { $attr = ' class="head"'; } else { $attr = " style=\"{$this->header_content_style}\""; } if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { $header = "$header"; } else { $header = "$header"; } } if (GESHI_HEADER_NONE == $this->header_type) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { return "$header"; } return $header . ($this->force_code_block ? '
    ' : ''); } // Work out what to return and do it if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { if ($this->header_type == GESHI_HEADER_PRE) { return "$header"; } elseif ($this->header_type == GESHI_HEADER_DIV || $this->header_type == GESHI_HEADER_PRE_VALID) { return "$header"; } elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { return "$header"; } } else { if ($this->header_type == GESHI_HEADER_PRE) { return "$header" . ($this->force_code_block ? '
    ' : ''); } else { return "$header" . ($this->force_code_block ? '
    ' : ''); } } } /** * Returns the footer for the code block. * * @return string The footer for the code block * @since 1.0.0 * @access private */ function footer() { $footer = $this->footer_content; if ($footer) { if ($this->header_type == GESHI_HEADER_PRE) { $footer = str_replace("\n", '', $footer);; } $footer = $this->replace_keywords($footer); if ($this->use_classes) { $attr = ' class="foot"'; } else { $attr = " style=\"{$this->footer_content_style}\""; } if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { $footer = "$footer"; } else { $footer = "$footer
    "; } } if (GESHI_HEADER_NONE == $this->header_type) { return ($this->line_numbers != GESHI_NO_LINE_NUMBERS) ? '' . $footer : $footer; } if ($this->header_type == GESHI_HEADER_DIV || $this->header_type == GESHI_HEADER_PRE_VALID) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { return "$footer
    "; } return ($this->force_code_block ? '
    ' : '') . "$footer"; } elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { return "$footer"; } return ($this->force_code_block ? '' : '') . "$footer"; } else { if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { return "$footer"; } return ($this->force_code_block ? '' : '') . "$footer"; } } /** * Replaces certain keywords in the header and footer with * certain configuration values * * @param string The header or footer content to do replacement on * @return string The header or footer with replaced keywords * @since 1.0.2 * @access private */ function replace_keywords($instr) { $keywords = $replacements = array(); $keywords[] = '
      to have no effect at all if there are line numbers // (
        s have margins that should be destroyed so all layout is // controlled by the set_overall_style method, which works on the //
         or 
        container). Additionally, set default styles for lines if (!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) { //$stylesheet .= "$selector, {$selector}ol, {$selector}ol li {margin: 0;}\n"; $stylesheet .= "$selector.de1, $selector.de2 {{$this->code_style}}\n"; } // Add overall styles // note: neglect economy_mode, empty styles are meaningless if ($this->overall_style != '') { $stylesheet .= "$selector {{$this->overall_style}}\n"; } // Add styles for links // note: economy mode does not make _any_ sense here // either the style is empty and thus no selector is needed // or the appropriate key is given. foreach ($this->link_styles as $key => $style) { if ($style != '') { switch ($key) { case GESHI_LINK: $stylesheet .= "{$selector}a:link {{$style}}\n"; break; case GESHI_HOVER: $stylesheet .= "{$selector}a:hover {{$style}}\n"; break; case GESHI_ACTIVE: $stylesheet .= "{$selector}a:active {{$style}}\n"; break; case GESHI_VISITED: $stylesheet .= "{$selector}a:visited {{$style}}\n"; break; } } } // Header and footer // note: neglect economy_mode, empty styles are meaningless if ($this->header_content_style != '') { $stylesheet .= "$selector.head {{$this->header_content_style}}\n"; } if ($this->footer_content_style != '') { $stylesheet .= "$selector.foot {{$this->footer_content_style}}\n"; } // Styles for important stuff // note: neglect economy_mode, empty styles are meaningless if ($this->important_styles != '') { $stylesheet .= "$selector.imp {{$this->important_styles}}\n"; } // Simple line number styles if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->line_style1 != '') { $stylesheet .= "{$selector}li, {$selector}.li1 {{$this->line_style1}}\n"; } if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->table_linenumber_style != '') { $stylesheet .= "{$selector}.ln {{$this->table_linenumber_style}}\n"; } // If there is a style set for fancy line numbers, echo it out if ((!$economy_mode || $this->line_numbers == GESHI_FANCY_LINE_NUMBERS) && $this->line_style2 != '') { $stylesheet .= "{$selector}.li2 {{$this->line_style2}}\n"; } // note: empty styles are meaningless foreach ($this->language_data['STYLES']['KEYWORDS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || (isset($this->lexic_permissions['KEYWORDS'][$group]) && $this->lexic_permissions['KEYWORDS'][$group]))) { $stylesheet .= "$selector.kw$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['COMMENTS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || (isset($this->lexic_permissions['COMMENTS'][$group]) && $this->lexic_permissions['COMMENTS'][$group]) || (!empty($this->language_data['COMMENT_REGEXP']) && !empty($this->language_data['COMMENT_REGEXP'][$group])))) { $stylesheet .= "$selector.co$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['ESCAPE_CHAR'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['ESCAPE_CHAR'])) { // NEW: since 1.0.8 we have to handle hardescapes if ($group === 'HARD') { $group = '_h'; } $stylesheet .= "$selector.es$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['BRACKETS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['BRACKETS'])) { $stylesheet .= "$selector.br$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['SYMBOLS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['SYMBOLS'])) { $stylesheet .= "$selector.sy$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['STRINGS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['STRINGS'])) { // NEW: since 1.0.8 we have to handle hardquotes if ($group === 'HARD') { $group = '_h'; } $stylesheet .= "$selector.st$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['NUMBERS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['NUMBERS'])) { $stylesheet .= "$selector.nu$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['METHODS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || $this->lexic_permissions['METHODS'])) { $stylesheet .= "$selector.me$group {{$styles}}\n"; } } // note: neglect economy_mode, empty styles are meaningless foreach ($this->language_data['STYLES']['SCRIPT'] as $group => $styles) { if ($styles != '') { $stylesheet .= "$selector.sc$group {{$styles}}\n"; } } foreach ($this->language_data['STYLES']['REGEXPS'] as $group => $styles) { if ($styles != '' && (!$economy_mode || (isset($this->lexic_permissions['REGEXPS'][$group]) && $this->lexic_permissions['REGEXPS'][$group]))) { if (is_array($this->language_data['REGEXPS'][$group]) && array_key_exists(GESHI_CLASS, $this->language_data['REGEXPS'][$group])) { $stylesheet .= "$selector."; $stylesheet .= $this->language_data['REGEXPS'][$group][GESHI_CLASS]; $stylesheet .= " {{$styles}}\n"; } else { $stylesheet .= "$selector.re$group {{$styles}}\n"; } } } // Styles for lines being highlighted extra if (!$economy_mode || (count($this->highlight_extra_lines)!=count($this->highlight_extra_lines_styles))) { $stylesheet .= "{$selector}.ln-xtra, {$selector}li.ln-xtra, {$selector}div.ln-xtra {{$this->highlight_extra_lines_style}}\n"; } $stylesheet .= "{$selector}span.xtra { display:block; }\n"; foreach ($this->highlight_extra_lines_styles as $lineid => $linestyle) { $stylesheet .= "{$selector}.lx$lineid, {$selector}li.lx$lineid, {$selector}div.lx$lineid {{$linestyle}}\n"; } return $stylesheet; } /** * Get's the style that is used for the specified line * * @param int The line number information is requested for * @access private * @since 1.0.7.21 */ function get_line_style($line) { //$style = null; $style = null; if (isset($this->highlight_extra_lines_styles[$line])) { $style = $this->highlight_extra_lines_styles[$line]; } else { // if no "extra" style assigned $style = $this->highlight_extra_lines_style; } return $style; } /** * this functions creates an optimized regular expression list * of an array of strings. * * Example: * $list = array('faa', 'foo', 'foobar'); * => string 'f(aa|oo(bar)?)' * * @param $list array of (unquoted) strings * @param $regexp_delimiter your regular expression delimiter, @see preg_quote() * @return string for regular expression * @author Milian Wolff * @since 1.0.8 * @access private */ function optimize_regexp_list($list, $regexp_delimiter = '/') { $regex_chars = array('.', '\\', '+', '-', '*', '?', '[', '^', ']', '$', '(', ')', '{', '}', '=', '!', '<', '>', '|', ':', $regexp_delimiter); sort($list); $regexp_list = array(''); $num_subpatterns = 0; $list_key = 0; // the tokens which we will use to generate the regexp list $tokens = array(); $prev_keys = array(); // go through all entries of the list and generate the token list $cur_len = 0; for ($i = 0, $i_max = count($list); $i < $i_max; ++$i) { if ($cur_len > GESHI_MAX_PCRE_LENGTH) { // seems like the length of this pcre is growing exorbitantly $regexp_list[++$list_key] = $this->_optimize_regexp_list_tokens_to_string($tokens); $num_subpatterns = substr_count($regexp_list[$list_key], '(?:'); $tokens = array(); $cur_len = 0; } $level = 0; $entry = preg_quote((string) $list[$i], $regexp_delimiter); $pointer = &$tokens; // properly assign the new entry to the correct position in the token array // possibly generate smaller common denominator keys while (true) { // get the common denominator if (isset($prev_keys[$level])) { if ($prev_keys[$level] == $entry) { // this is a duplicate entry, skip it continue 2; } $char = 0; while (isset($entry[$char]) && isset($prev_keys[$level][$char]) && $entry[$char] == $prev_keys[$level][$char]) { ++$char; } if ($char > 0) { // this entry has at least some chars in common with the current key if ($char == strlen($prev_keys[$level])) { // current key is totally matched, i.e. this entry has just some bits appended $pointer = &$pointer[$prev_keys[$level]]; } else { // only part of the keys match $new_key_part1 = substr($prev_keys[$level], 0, $char); $new_key_part2 = substr($prev_keys[$level], $char); if (in_array($new_key_part1[0], $regex_chars) || in_array($new_key_part2[0], $regex_chars)) { // this is bad, a regex char as first character $pointer[$entry] = array('' => true); array_splice($prev_keys, $level, count($prev_keys), $entry); $cur_len += strlen($entry); continue; } else { // relocate previous tokens $pointer[$new_key_part1] = array($new_key_part2 => $pointer[$prev_keys[$level]]); unset($pointer[$prev_keys[$level]]); $pointer = &$pointer[$new_key_part1]; // recreate key index array_splice($prev_keys, $level, count($prev_keys), array($new_key_part1, $new_key_part2)); $cur_len += strlen($new_key_part2); } } ++$level; $entry = substr($entry, $char); continue; } // else: fall trough, i.e. no common denominator was found } if ($level == 0 && !empty($tokens)) { // we can dump current tokens into the string and throw them away afterwards $new_entry = $this->_optimize_regexp_list_tokens_to_string($tokens); $new_subpatterns = substr_count($new_entry, '(?:'); if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns + $new_subpatterns > GESHI_MAX_PCRE_SUBPATTERNS) { $regexp_list[++$list_key] = $new_entry; $num_subpatterns = $new_subpatterns; } else { if (!empty($regexp_list[$list_key])) { $new_entry = '|' . $new_entry; } $regexp_list[$list_key] .= $new_entry; $num_subpatterns += $new_subpatterns; } $tokens = array(); $cur_len = 0; } // no further common denominator found $pointer[$entry] = array('' => true); array_splice($prev_keys, $level, count($prev_keys), $entry); $cur_len += strlen($entry); break; } unset($list[$i]); } // make sure the last tokens get converted as well $new_entry = $this->_optimize_regexp_list_tokens_to_string($tokens); if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns + substr_count($new_entry, '(?:') > GESHI_MAX_PCRE_SUBPATTERNS) { if ( !empty($regexp_list[$list_key]) ) { ++$list_key; } $regexp_list[$list_key] = $new_entry; } else { if (!empty($regexp_list[$list_key])) { $new_entry = '|' . $new_entry; } $regexp_list[$list_key] .= $new_entry; } return $regexp_list; } /** * this function creates the appropriate regexp string of an token array * you should not call this function directly, @see $this->optimize_regexp_list(). * * @param &$tokens array of tokens * @param $recursed bool to know wether we recursed or not * @return string * @author Milian Wolff * @since 1.0.8 * @access private */ function _optimize_regexp_list_tokens_to_string(&$tokens, $recursed = false) { $list = ''; foreach ($tokens as $token => $sub_tokens) { $list .= $token; $close_entry = isset($sub_tokens['']); unset($sub_tokens['']); if (!empty($sub_tokens)) { $list .= '(?:' . $this->_optimize_regexp_list_tokens_to_string($sub_tokens, true) . ')'; if ($close_entry) { // make sub_tokens optional $list .= '?'; } } $list .= '|'; } if (!$recursed) { // do some optimizations // common trailing strings // BUGGY! //$list = preg_replace_callback('#(?<=^|\:|\|)\w+?(\w+)(?:\|.+\1)+(?=\|)#', create_function( // '$matches', 'return "(?:" . preg_replace("#" . preg_quote($matches[1], "#") . "(?=\||$)#", "", $matches[0]) . ")" . $matches[1];'), $list); // (?:p)? => p? $list = preg_replace('#\(\?\:(.)\)\?#', '\1?', $list); // (?:a|b|c|d|...)? => [abcd...]? // TODO: a|bb|c => [ac]|bb static $callback_2; if (!isset($callback_2)) { $callback_2 = create_function('$matches', 'return "[" . str_replace("|", "", $matches[1]) . "]";'); } $list = preg_replace_callback('#\(\?\:((?:.\|)+.)\)#', $callback_2, $list); } // return $list without trailing pipe return substr($list, 0, -1); } } // End Class GeSHi if (!function_exists('geshi_highlight')) { /** * Easy way to highlight stuff. Behaves just like highlight_string * * @param string The code to highlight * @param string The language to highlight the code in * @param string The path to the language files. You can leave this blank if you need * as from version 1.0.7 the path should be automatically detected * @param boolean Whether to return the result or to echo * @return string The code highlighted (if $return is true) * @since 1.0.2 */ function geshi_highlight($string, $language, $path = null, $return = false) { $geshi = new GeSHi($string, $language, $path); $geshi->set_header_type(GESHI_HEADER_NONE); if ($return) { return '' . $geshi->parse_code() . ''; } echo '' . $geshi->parse_code() . ''; if ($geshi->error()) { return false; } return true; } } ?>geshi/docs/COPYING0000664000175000017500000004313111702144555013060 0ustar benbebenbe GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. geshi/docs/README0000664000175000017500000000265711702144555012715 0ustar benbebenbe GeSHi - GEneric Syntax HIghlighter ---------------------------------- Version 1.0.8 Author: Benny Baumann, Nigel McNie Email: BenBE@geshi.org, nigel@geshi.org GeSHi Website: http://qbnz.com/highlighter GeSHi is a generic syntax highlighter, written in PHP. You simply input the source code you wish to highlight with the language you wish to use, and the output will be a file syntax highlighted to XHTML standards. For more information on how to use GeSHi, please consult the documentation. If you got this readme from a GeSHi package, then the documentation is available in the docs/ directory. Documentation is also available at http://qbnz.com/highlighter/documentation.php If you think you've found a bug in GeSHi, contact me with a bug report at BenBE@omorphia.de, or submit it to the bug tracker at http://sourceforge.net/tracker/?group_id=114997&atid=670231. Be aware that minor highlighting errors may well just be incorrect language files, but if you do find something major please contact me. And if you're using GeSHi as a plugin/mod for some other software, please tell me about it! It's worth a link to you, and I can give you specialist help if you need it. GeSHi is free software, released under the GNU GPL. Please see the COPYING file for more information. If you do modify this program, please tell me about it! Perhaps you've made a good improvement that I can learn from :)geshi/docs/api/media/banner.css0000664000175000017500000000063712014173551015633 0ustar benbebenbebody { background-color: #EEEEEE; margin: 0px; padding: 0px; } /* Banner (top bar) classes */ .banner { } .banner-menu { text-align: right; clear: both; padding: .5em; border-top: 2px solid #AAAAAA; } .banner-title { text-align: right; font-size: 20pt; font-weight: bold; margin: .2em; } .package-selector { background-color: #DDDDDD; border: 1px solid #AAAAAA; color: #000090; } geshi/docs/api/media/stylesheet.css0000664000175000017500000001307712014173551016561 0ustar benbebenbea { color: #000090; text-decoration: none; } a:hover, a:active, a:focus { color: highlighttext; background-color: highlight; text-decoration: none; } body { background: #FFFFFF; } body, table { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; } a img { border: 0px; } /* Page layout/boxes */ .info-box { } .info-box-title { margin: 1em 0em 0em 0em; font-weight: normal; font-size: 14pt; color: #999999; border-bottom: 2px solid #999999; } .info-box-body { border: 1px solid #999999; padding: .5em; } .nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; } .oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em} .evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em} .page-body { max-width: 800px; margin: auto; } .tree { white-space: nowrap; font: icon } .tree dd { margin-left: 19px } .tree dl { margin: 0px } .tree-icon { vertical-align: middle; border: 0px; margin-right: 3px } /* Index formatting classes */ .index-item-body { margin-top: .5em; margin-bottom: .5em} .index-item-description { margin-top: .25em } .index-item-details { font-weight: normal; font-style: italic; font-size: 8pt } .index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em} .index-letter-title { font-size: 12pt; font-weight: bold } .index-letter-menu { text-align: center; margin: 1em } .index-letter { font-size: 12pt } /* Docbook classes */ .description {} .short-description { font-weight: bold; color: #666666; } .tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; } .parameters { padding-left: 0em; margin-left: 3em; color: #014fbe; list-style-type: square; } .redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; } .package { font-weight: bold; } .package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black } .package-details { font-size: 85%; } .sub-package { font-weight: bold; } .tutorial { border-width: thin; border-color: #0066ff; } .tutorial-nav-box { width: 100%; border: 1px solid #999999; background-color: #F8F8F8; } .folder-title { font-style: italic; font-family: Verdana, Arial, Helvetica, sans-serif } /* Generic formatting */ .field { font-weight: bold; } .detail { font-size: 8pt; } .notes { font-style: italic; font-size: 8pt; } .separator { background-color: #999999; height: 2px; } .warning { color: #FF6600; } .disabled { font-style: italic; color: #999999; } /* Code elements */ .line-number { } .class-table { width: 100%; } .class-table-header { border-bottom: 1px dotted #666666; text-align: left} .class-name { color: #0000AA; font-weight: bold; } .method-summary { color: #009000; padding-left: 1em; font-size: 8pt; } .method-header { } .method-definition { margin-bottom: .2em } .method-title { color: #009000; font-weight: bold; } .method-name { font-weight: bold; } .method-signature { font-size: 85%; color: #666666; margin: .5em 0em } .method-result { font-style: italic; } .var-summary { padding-left: 1em; font-size: 8pt; } .var-header { } .var-title { color: #014fbe; margin-bottom: .3em } .var-type { font-style: italic; } .var-name { font-weight: bold; } .var-default {} .var-description { font-weight: normal; color: #000000; } .include-title { color: #014fbe;} .include-type { font-style: italic; } .include-name { font-weight: bold; } .const-title { color: #FF6600; } .const-name { font-weight: bold; } /* Syntax highlighting */ .src-code { font-family: 'Courier New', Courier, monospace; font-weight: normal; } .src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; } .src-code a:link { padding: 1px; text-decoration: underline; color: #0000DD; } .src-code a:visited { text-decoration: underline; color: #0000DD; } .src-code a:active { background-color: #FFFF66; color: #008000; } .src-code a:hover { background-color: #FFFF66; text-decoration: overline underline; color: #008000; } .src-comm { color: #666666; } .src-id { color: #FF6600; font-style: italic; } .src-inc { color: #0000AA; font-weight: bold; } .src-key { color: #0000AA; font-weight: bold; } .src-num { color: #CC0000; } .src-str { color: #CC0000; } .src-sym { } .src-var { } .src-php { font-weight: bold; } .src-doc { color: #666666; } .src-doc-close-template { color: #666666 } .src-doc-coretag { color: #008000; } .src-doc-inlinetag {} .src-doc-internal {} .src-doc-tag { color: #0080CC; } .src-doc-template { color: #666666 } .src-doc-type { font-style: italic; color: #444444 } .src-doc-var { color: #444444 } .tute-tag { color: #009999 } .tute-attribute-name { color: #0000FF } .tute-attribute-value { color: #0099FF } .tute-entity { font-weight: bold; } .tute-comment { font-style: italic } .tute-inline-tag { color: #636311; font-weight: bold } /* tutorial */ .authors { } .author { font-style: italic; font-weight: bold } .author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal } .example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; } *[class="example"] { line-height : 1.0em; } .listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; } *[class="listing"] { line-height : 1.0em; } .release-info { font-size: 85%; font-style: italic; margin: 1em 0em } .ref-title-box { } .ref-title { } .ref-purpose { font-style: italic; color: #666666 } .ref-synopsis { } .title { font-weight: bold; border-bottom: 1px solid #999999; color: #999999; } .cmd-synopsis { margin: 1em 0em } .cmd-title { font-weight: bold } .toc { margin-left: 2em; padding-left: 0em } geshi/docs/api/media/images/next_button.png0000664000175000017500000000077512014173546020207 0ustar benbebenbePNG  IHDR%leIPLTEQQQ̽ŵsssfff3f?n΍d胃\\\Jw{{{{۔঺oyWӃٵAPT4IDATx^׎0@Qϸ7:m{['# >#$=,d q!nA d@q2T!PL@Hvi`B9R01T^'#u\w!-qdtsO>QݿJ~ ؏!59{0RHѼv/!Lv䆐uz3Ri5T4fYD aݡMYWh-POi.\S2HJ:+R:ōu-y;h,G%MJMCwVL*miiSu󌏹_ #ξIENDB`geshi/docs/api/media/images/tutorial.png0000664000175000017500000000045512014173541017467 0ustar benbebenbePNG  IHDR(-SQPLTERRR愄{{{sssfffYYY@fo3p`0}IDATx^]GNA˶TH._?`<&{9 ڌ 8nO-AA 8AζW_*5z)fqv5S[ IܥZcu9avoIENDB`geshi/docs/api/media/images/AbstractPrivateClass_logo.png0000664000175000017500000000246312014173546022736 0ustar benbebenbePNG  IHDR DPLTEx::: BBB333 ))) ZZJJ00ysKBBTT**''!!|||ZZ99ZR:::fK;fffZZZfsss**00)))̻{sZRlPP::RRR!!!!44ZII}}JJJXEE¬**BBB'' :::ll|||``ddyttXX޽ZZTT<לU:'?ݷ jZ/]lnnډi@t]?䕕ޝP Bu3^M̮f2*~teiށT>)eaKaMYo1\h ~{2ԪnZ MY[2t[f;98`}c({; Ҡ@m"(?1@ܾp<p֋4B!z@grˋo B4k@?{^KNc "c }c:0Nc9IT¹gdWK@XG9AA .#HT.R#@ `4G %^e% 1WM$F$xb{{kKJ\|@> @s!iO T)\OcE94hn[Oj"=5p"<q<"| E#DHЇ$ ER8$}o".x6^&qsdcz`(ޤh"Dej;lV)۸57wJyyr`RR=egi0LQi3`I x?IENDB`geshi/docs/api/media/images/Tplus.png0000664000175000017500000000021412014173546016731 0ustar benbebenbePNG  IHDR PLTE{YtRNS@f1IDATx^e 0 oс)d,!9[է&v{GIENDB`geshi/docs/api/media/images/previous_button.png0000664000175000017500000000077112014173542021075 0ustar benbebenbePNG  IHDR%leIPLTEQQQ浵fffŭ{{{3fssslփJwzڝ\\\?nΒKx{馺c֭XԠ3-IDATx^ Q-^U%vgz4jmo,+k]6>[(# w}Fw'LWS}Y e30(Zp TАo65f)eyDT"oTp^(̥*T)UOp,¨RmhnsU|h{\(',U}Q~>SS*|n 9ǜO%M IpV %srvD1UQs4g _f+r'yz1ԆCuiW(8^,IENDB`geshi/docs/api/media/images/folder.png0000664000175000017500000000055712014173542017103 0ustar benbebenbePNG  IHDR(-SPLTES9Ω+?WmI̯6Cή1_ϳ2[|S]6@9}62mI+ Zs b {ٛ;s fSO)'K8QfYsݲ֛[ȕ؟P{%@2O~3@IENDB`geshi/docs/api/media/images/Class.png0000664000175000017500000000066612014173541016675 0ustar benbebenbePNG  IHDR(-SPLTE1fH-}(k3A};z-љ!H3f@(c'YX$F+`'R ?&N'[333-q33LN3!/S~3-+x3K~6k4DiE5d5g3]/5DEUi(R3Xت_/.2 IIDATx^MUr@D!13TIS,`bf97X4אRߜ2ݺJB~\5ge^-Z /WXN"w4-qPROјo"X? ̷IENDB`geshi/docs/api/media/images/private_class_logo.png0000664000175000017500000000274712014173542021512 0ustar benbebenbePNG  IHDR DPLTE8rJJJ|ؔsqmfXʞHJJJ:::333"""|||)))8tDž怨yrlfaZTMCz3h*d'Z(WBBB:::2kfffsssZZZ:z10)*{R*p'Z$I"B932k)))*j$l@W<421JI;/-u1H|||0.WN%-|@)tޕ,(l q!@Tal*d*b>btE(`M)X$ZRRR(TKQ['Q$R!QJJJQ!JBBB!Bk:::DJ8p7s-d:)U"""-srd`%K#M93}Bl_tZfu8m]憜3h9e]mJ`rhی^h"cOXdU@Ze%T\yHEIMUUd/|TmEIRr+1W-ZjfM`333z-rbq;98t#}1yfKۛXPPu5[l`LT`kcDtAx4tRNS"3DUUfffwwwwwwwwwwwwuIDATx^mccK`Z3'Ƕm6׶m$s'37I[&UqK.[bѭ^v"M{t}ϙ׋Eyme K!6JDLp~_]|)$2gT"`+Y'$67Dj+eH xu(??rS~zJE[=x(y`-M{{Uͨq[.[uy(tw`1=Y r1~Xܑ*ņ}o4-^?wT-/-ʏ_/t xʾ}^yȊִwLں>vh/߼AK>o5FѪyƦџ}_p$`<_=Q3" ɜ.ANHXsr~i_4? qe9YW:ڗtow`q6^pz3T`6-%Io28}A^#3O~,l ߹D"מz ](*.((DG /Pk<2PitU*(~EFIENDB`geshi/docs/api/media/images/Interface_logo.png0000664000175000017500000000243212014173543020543 0ustar benbebenbePNG  IHDR ?OPLTE5Sr唾ہ|qmf̪HX*[Cs5\ '(F#@: 2 . '8tfހyrlߊbZTMCy1n'[$Y0*c!BIBW=ESvl1u܊3iUx1nrt76|~٥G;6?˅{.V|{ƟĚ|rq*, 74fxݕ-a4* hPT |2tET*(X2\.W(MQO! k~bq8|H$Hʮ9嵷48Ϊ>[W'J8!2\Pvu/09\Pt`q?sSv.gP?@S39ȂWD  E;4K)W識{<ڛmbrT魑,X> se1XP(z0ѓ^[B5VϕiF<1 { . ٌa>'O/;bӓM&p8N ?jltfq\Fr7lra2K_n-[۞ڎS54zшw @L!/ ٔcIENDB`geshi/docs/api/media/images/Tminus.png0000664000175000017500000000020712014173547017104 0ustar benbebenbePNG  IHDR PLTE{ڦtRNS@f,IDATx^e1 @NLA\@tU`zIqIENDB`geshi/docs/api/media/images/PrivateVariable.png0000664000175000017500000000120112014173543020674 0ustar benbebenbePNG  IHDR6ePLTE333ffffzzzttt]zykԍEEEߟ;/UsdeXXXH`]WW/2\[ue2YЉ~{hVOㄲc5tews^KxܼkгEyO@.ᥐfrCooײRkH?ƢJIᗍYridTm(mf̅u};Xmm1DvQ~===οjYBQQQ`[QΨNzBZkrѻB6cַG~L޲Y[R+݇l1@wŤWΫJѹIDATx^-vDAjضm۶O$wݎ-}seOI,D*z!u H28ގm{AS V]wm %A>C f{> 8G3d7kK/'lw*ZJY/+?~X۟wt-+?G ƄjOtae&DdwIENDB`geshi/docs/api/media/images/previous_button_disabled.png0000664000175000017500000000062512014173545022725 0ustar benbebenbePNG  IHDR%leIG=MM`U~SlB~)M2k+pz؊4 UmfH(&Cy#s.J/ՍX%>U`V,JzrT;̳nWYMޏ;bUēL=rY➂T_#K-~z#&Ҧ *nG<& vuLŞi)k_Eq#%`<IENDB`geshi/docs/api/media/images/Interface.png0000664000175000017500000000071112014173540017516 0ustar benbebenbePNG  IHDR(-SPLTE1f-H33A};z3ݙ33f@(c'Y333+`'R ?-}'[(k/5-qL_i3X$F(R!/S~X&N-+x336kĪDE5d5g3]!HNDEUi/.4K~կzlIDATx^MՖP @kuwE]f-[J-w-JۡXn[cl9QSQ=y(\,V!V.^>0O> \O8pzkKga\MA`>IR7AOwe+u' 'Hۣ'h@ZZJE'([yIENDB`geshi/docs/api/media/images/up_button.png0000664000175000017500000000101712014173547017644 0ustar benbebenbePNG  IHDR%leIPLTEQQQ潽fffޙsssc֍3f{{{?n{ڃ\\\ܩ뫾KwVnס㧺pWKx6qOCIDATx^}׎ @Q^};`5NQ$<Ȑ~[kE0 W)煜aFEyN%e6kEkPYթcF`v'^b޺BA:vÿT#.v(boR3HVȾ;z[4 v!~~dE/'TMLxT'T{TB)Q'`GT焬rS+Ќ5Ms7g+햒^K`hd˫J 9;eR 7o9sڤtNŨn%t M)pZE8䛦ݐ8rc n0@,ay9IENDB`geshi/docs/api/media/images/class_folder.png0000664000175000017500000000076112014173546020271 0ustar benbebenbePNG  IHDR(-SPLTE^3f3Cp23<3z3v \OC8_X'Nl|F̮/3?[ϴ3TLrxU#Gַ7#:3KU3zї_֝?waHHܹ5EXп:;3ft2pkF&Jt3c,X޽1EUּ<ɭ/(P3޵OfssJŨ,83s׿+ɮYzqB`IDATx^mEr@133-Vr96``~7Aj=@yȕizmYҴ4kj'λmmFB# 'u[wFVB{1[Y@LS+_)P52 @.:t!vtIENDB`geshi/docs/api/media/images/AbstractPrivateClass.png0000664000175000017500000000120612014173544021706 0ustar benbebenbePNG  IHDR(-S2PLTEˢ@ff{{}}YYPPKK@@>>@@0033HHH** *3vVV333̋{{{sssfffaZZQQQ11PLLCCC))ZZZ S00''88[[hZZPPf""((;;@@ff333n""[SSkkĞPPUU::'''3300BB,,oozraalCtRNS""3DDUffwww? IDATx^-V@ᓦM[[]pw ސXXZ^OmFwrd^ZC˲*`W w:hn^w:,CvzLYsoPx=ڍksG1|L+?`#7/O*$)~?sJՂ4#]Jo5vajFaQ&YcCHnLVeEEQ鰪&fog!Sq<W'jAZIENDB`geshi/docs/api/media/images/AbstractPrivateMethod.png0000664000175000017500000000124012014173540022053 0ustar benbebenbePNG  IHDR(-SePLTEXtU yGR )_df8 )^I4}1̂ABBjjHH}<A<33fffZZZOQO̙tttD3GuD^K?+=2_d^HH??||_OsC+2<1%h(I3##$_(ff\EVHH##:3 "E"%1A<'''U4UID/"tRNS""33DUUUffwIDATx^]SsPoQ*^^mo3y<08nl=ƶ>+/ڙi6\S xbB WO;mۍ[6Bp+]-#tW6 IV|=-&KN1>p~:< k<(QDx't<e%ffIENDB`geshi/docs/api/media/images/Constructor.png0000664000175000017500000000123212014173544020146 0ustar benbebenbePNG  IHDR(-SePLTELL<Y**.O|>E􊨊|i.sN8lItI)kU=B33\,X,!A!vI7-./jUrmw(/aU|g0g+'d.(S_$U%ObKaG/|P975-yUtRNSDffffffffffffwwww7IDATx^UcsQ Q7h޵b۶䶻3}?>gjuzѱkn8D8}sioA.@D+s yV!D6zs$E[bdj;1F,B\û~7xru^5 #>z|A*4E,\p?ϟ nS"UoNIENDB`geshi/docs/api/media/images/Global.png0000664000175000017500000000110412014173545017020 0ustar benbebenbePNG  IHDR(-S)PLTEVSJtcEZlΥRkq[yߒwwwRcuoy;ڊ֯Slh^JǡOv:RZVLӴDxͲDTY\ea^Yխu>uaˁ~zfˮ@ܺUǷ܆ザ|oکzc.ßJ?Ņu|bCԀ>WOSuXIDATx^-öA3m m϶mXe91:° _GbXt/3\)19M5Abo@J>; u Yߪ2kY0)\GU,KuK6ȽC-nf_ Cx'-eR'tZxHqHvNu1zU5 wJ㨺;mƹGkN IENDB`geshi/docs/api/media/images/AbstractMethod.png0000664000175000017500000000106612014173546020534 0ustar benbebenbePNG  IHDR(-S5PLTEC ?3NL(M*<=D3H{E=211o ػ=s<"K###+2J3DfG:l:??orZUHHTP%5W5ffhh%1̾YY--?q@JJ\EI3O8§P3##66:>\A sCѷee'*33$_(ɀ*1:3a[fftr%h(C>#, 33|tgxq;"\ƫu }B&La8 `_M "`fdV"y.3~v*vⶖ(ȸY|cg,:Jkp/Gv!0"Q%I)29V#{IENDB`geshi/docs/api/media/images/AbstractClass_logo.png0000664000175000017500000000176212014173542021400 0ustar benbebenbePNG  IHDR DPLTEȑ@{!!uqqllcc[[TTOOKKBB::33$$TqqKeeA:*3!ZZQQJJ :11))""t;;DDfZRK)) {fZdd**<<JJ33AA tR;;!!ZZ1100::,,<<++ll ));; BBFF QQ))ffff``ssTTAA"" ^^WWJJii UUCC33OOTTHH5?3tRNS"33DDUUffwI)IDATx^mew0@mgu̘m0630df{2TJzX\y(tzddta#٥ԟr^01[04uaWܜIx{(PG/}J|{sE ulx7֬$?d%@DQlt~06&Ւdh{BNH9E5qS~LZ|N.ix"@|<0Ɋx ÌZ5nRlz4q@|8~01 D=A7`f@ʲx:nŹƎ \5 _~ r\?UoV{qniYv;8=wPaٲv"{' }WIR7%L,<=@4 Lb i? ۮIENDB`geshi/docs/api/media/images/package_folder.png0000664000175000017500000000064312014173544020554 0ustar benbebenbePNG  IHDR ePLTE`Bf`[ϴ32TsQX v _uPߗ?}̮/Oƣ'<׻fٓ:B^O?=ȁɭ/&*HG.iC:gnxƝ!ٵ.ͣ#/(׾jCww!{TЍ?y$}+ ۵1X!߼3lOIDATx^UE1tgqww" O;,-I `%IFbENgY@m:(v î'@oizFnāP,P\g5sDW@Q/h86!UUeq,`eɬ6=pMIENDB`geshi/docs/api/media/images/StaticVariable.png0000664000175000017500000000106412014173540020515 0ustar benbebenbePNG  IHDR(-S)PLTEl1fyDzcޚpU]ԍ3ܼk،5tͮ(mmtҿyŤնKZr;/kHײRurWꓴP򔥅@B޲YנЉeOLeCޯ@w26aƢJOH֓zB6cгEovQmvoem/ܭVΨNk1𵫏ڻQ_.ݕLyI݇a"Ew?fWΫJrRIDATx^]50 @H xC4;=%[d>OIsy5}g硩l f%aD"ߪ,I!ɕMxrwGBoZuݥ/@c=-2(8h_̌ˡr J6P{Mߦ~ZR,irR_6y6۲:IENDB`geshi/docs/api/media/images/Index.png0000664000175000017500000000070112014173541016665 0ustar benbebenbePNG  IHDR } PLTEIfff滻:zإ9rۈxuWuߡ//V>a#F}Oi֨nPwȾ}ڔѬۜ._摧6nz1*[a}Oi̬rЗّȧ5n֕ը*[/V1Pw<#F._Ӫ}TnIDATx^=E qw׺w %14E:fB2 8@!Bжuw.Wu}``P2-L|w)_Ô7K};(5WOXWխdP6GLYDZ0Z_AJ `xЌ]$IENDB`geshi/docs/api/media/images/PrivateClass_logo.png0000664000175000017500000000274712014173543021254 0ustar benbebenbePNG  IHDR DPLTE8rJJJ|ؔsqmfXʞHJJJ:::333"""|||)))8tDž怨yrlfaZTMCz3h*d'Z(WBBB:::2kfffsssZZZ:z10)*{R*p'Z$I"B932k)))*j$l@W<421JI;/-u1H|||0.WN%-|@)tޕ,(l q!@Tal*d*b>btE(`M)X$ZRRR(TKQ['Q$R!QJJJQ!JBBB!Bk:::DJ8p7s-d:)U"""-srd`%K#M93}Bl_tZfu8m]憜3h9e]mJ`rhی^h"cOXdU@Ze%T\yHEIMUUd/|TmEIRr+1W-ZjfM`333z-rbq;98t#}1yfKۛXPPu5[l`LT`kcDtAx4tRNS"3DUUfffwwwwwwwwwwwwuIDATx^mccK`Z3'Ƕm6׶m$s'37I[&UqK.[bѭ^v"M{t}ϙ׋Eyme K!6JDLp~_]|)$2gT"`+Y'$67Dj+eH xu(??rS~zJE[=x(y`-M{{UͨqpMcFmq+US*IENDB`geshi/docs/api/media/images/L.png0000664000175000017500000000016612014173550016016 0ustar benbebenbePNG  IHDR !PLTE{I`ztRNS@fIDATx^}1 ^)Q! LK3QIENDB`geshi/docs/api/media/images/next_button_disabled.png0000664000175000017500000000062512014173541022023 0ustar benbebenbePNG  IHDR%leINw%%!@7MJwĭY6d %톸 x T}(}@b(xS3%hW葼ʑ By%@#*B9}Ӌ2]E:*PR먔ex^˟o@$Λ ,Fi5.wg_V@H@74-"rԎgyJUEy4#=_I6rd&Mz[.Mk!ҭ,%@ IENDB`geshi/docs/api/media/images/Destructor.png0000664000175000017500000000136112014173540017756 0ustar benbebenbePNG  IHDR(-SPLTEL|GK0{V81sY֮,}fO|7\\Tdf \3R>GBB<ٯ%u1// nf ((''A&w)gIvaI[.sČ";"3Wd Z  X%GNaUP/axNsIlA8{6~tI*tRNSDffff+IDATx^=S{`D*Yͪ4bmm6u.9a4-*䈢^^'䬟 qZ2sdhWVYmKXSC<=>IwI[CR|3s%!Tbv˃Сx ig(\0=R~9} c}4)"T"(JPgIENDB`geshi/docs/api/media/images/package.png0000664000175000017500000000100312014173545017211 0ustar benbebenbePNG  IHDR(-SPLTEE/Z֌`ߗÄZ>K{;g濤jόU:Q~fnߤ)mqM/cDŌsݞ9ޡ!Q{(2p2ySgGUxɨlɾ̖j Ր?y˶t!@¿9ışM` J6w&!ȶmn+^"1IDATx^]ErPљ$f1?LXJoP/"M^vFl늁yen1h7_y(lwG0J%癔J)Ϭy;dLT4ތZI"}t-I,#} # ý`T͑#6|~rIENDB`geshi/docs/api/media/images/I.png0000664000175000017500000000015712014173550016013 0ustar benbebenbePNG  IHDR !PLTE{I`ztRNS@fIDATx^1 `z@ٷIENDB`geshi/docs/api/media/images/Method.png0000664000175000017500000000102012014173543017033 0ustar benbebenbePNG  IHDR(-SPLTEC 33f̻ػ3TP11=2B}<=(M*3rD3?3EOLH{E"K#+2=s<3;Ar36ۂ`;󮸯1v:>EtrDfG䤽3^g='*^bKyIwIJ3%h(P31}*ʇ[ȟNqsS,;58(in^0(  !_# ! E{VOF,\=y(dOIENDB`geshi/docs/api/media/images/Lminus.png0000664000175000017500000000020512014173546017071 0ustar benbebenbePNG  IHDR PLTE{YtRNS@f*IDATx^e zuW PB(b.qߌ*w_< sbiIENDB`geshi/docs/api/media/images/empty.png0000664000175000017500000000013211702144553016756 0ustar benbebenbePNG  IHDRwS pHYs  Z IDATxc? FIENDB`geshi/docs/api/media/images/function_folder.png0000664000175000017500000000073412014173547021012 0ustar benbebenbePNG  IHDR ePLTE*l f9CX>=<,A)|O?=_Cv CLϴ3A=:BLH(^T[R#Jȭ0my rJ2G4 }¡9&T)==3RB֝N!94̮/׻:޵3c84k9:*X0D2š%*};72=@̯XC/0 cїAP0^8kn"^IDATx^=U0DQ=<̳DV*}Cä8Sx5GppJx4h& ^E"mG,\yҨ d9췋uaR8ku_S9ߘWg!@]F*}(J;gd }l31UR xt3B$IENDB`geshi/docs/api/media/images/Variable.png0000664000175000017500000000106412014173547017354 0ustar benbebenbePNG  IHDR(-S)PLTEl1fyDzcޚpU]ԍ3ܼk،5tͮ(mmtҿyŤնKZr;/kHײRurWꓴP򔥅@B޲YנЉeOLeCޯ@w26aƢJOH֓zB6cгEovQmvoem/ܭVΨNk1𵫏ڻQ_.ݕLyI݇a"Ew?fWΫJrRIDATx^]50 @H xC4;=%[d>OIsy5}g硩l f%aD"ߪ,I!ɕMxrwGBoZuݥ/@c=-2(8h_̌ˡr J6P{Mߦ~ZR,irR_6y6۲:IENDB`geshi/docs/api/media/images/StaticMethod.png0000664000175000017500000000102012014173544020204 0ustar benbebenbePNG  IHDR(-SPLTEC 33f̻ػ3TP11=2B}<=(M*3rD3?3EOLH{E"K#+2=s<3;Ar36ۂ`;󮸯1v:>EtrDfG䤽3^g='*^bKyIwIJ3%h(P31}*ʇ[ȟNqsS,;58(in^0(  !_# ! E{VOF,\=y(dOIENDB`geshi/docs/api/media/images/Class_logo.png0000664000175000017500000000243212014173547017714 0ustar benbebenbePNG  IHDR ?OPLTE5Sr唾ہ|qmf̪HX*[Cs5\ '(F#@: 2 . '8tfހyrlߊbZTMCy1n'[$Y0*c!BIBW=ESvl1u܊3iUx1nrt76|~٥G;6?˅{.V|{ƟĚ|rq*, 74fxݕ-a4* hPT |2tET*(X2\.W(MQO! k~bq8|H$Hʮ9嵷48Ϊ>[W'J8!2\Pvu/09\Pt`q?sSv.gP?@S39ȂWD  E;4K)W識{<ڛmbrT魑,X> se1XP(z0ѓ^[B5VϕiF<1 { . ٌa>'O/;bӓM&p8N ?jltfq\Fr7lra2K_n-[۞ڎS54zшw @L!/ ٔcIENDB`geshi/docs/api/geshi/core/_geshi.php.html0000664000175000017500000004260412014173471017537 0ustar benbebenbe Docs for page geshi.php

        File/geshi.php

        Description

        GeSHi - Generic Syntax Highlighter

        The GeSHi class for Generic Syntax Highlighting. Please refer to the documentation at http://qbnz.com/highlighter/documentation.php for more information about how to use this class.

        For changes, release notes, TODOs etc, see the relevant files in the docs/ directory.

        This file is part of GeSHi.

        GeSHi is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

        GeSHi is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

        You should have received a copy of the GNU General Public License along with GeSHi; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

        Classes
        Class Description
         class GeSHi The GeSHi Class.
        Constants
        GESHI_ACTIVE = 2 (line 107)

        Links in the source in the :active state

        GESHI_CAPS_LOWER = 2 (line 99)

        Leave keywords found as the case that they are

        GESHI_CAPS_NO_CHANGE = 0 (line 95)

        Lowercase keywords found

        GESHI_CAPS_UPPER = 1 (line 97)

        Uppercase keywords found

        GESHI_END_IMPORTANT = '<END GeSHi>' (line 117)

        The ender for important parts of the source

        GESHI_FANCY_LINE_NUMBERS = 2 (line 67)

        Use fancy line numbers when building the result

        GESHI_HEADER_DIV = 1 (line 73)

        Use a "div" to surround the source

        GESHI_HEADER_NONE = 0 (line 71)

        Use nothing to surround the source

        GESHI_HEADER_PRE = 2 (line 75)

        Use a "pre" to surround the source

        GESHI_HEADER_PRE_TABLE = 4 (line 91)

        Use a "table" to surround the source:

        <table> <thead><tr><td colspan="2">$header</td></tr></thead> <tbody><tr><td>

        $linenumbers
        </td><td>
        $code>
        </td></tr></tbody> <tfooter><tr><td colspan="2">$footer</td></tr></tfoot> </table>

        this is essentially only a workaround for Firefox, see sf#1651996 or take a look at https://bugzilla.mozilla.org/show_bug.cgi?id=365805

        • note: when linenumbers are disabled this is essentially the same as GESHI_HEADER_PRE
        GESHI_HEADER_PRE_VALID = 3 (line 77)

        Use a pre to wrap lines when line numbers are enabled or to wrap the whole code.

        GESHI_HOVER = 1 (line 105)

        Links in the source in the :hover state

        GESHI_LANG_ROOT = GESHI_ROOT.'geshi'.DIRECTORY_SEPARATOR (line 53)

        The language file directory for GeSHi

        GESHI_LINK = 0 (line 103)

        Links in the source in the :link state

        GESHI_NORMAL_LINE_NUMBERS = 1 (line 65)

        Use normal line numbers when building the result

        GESHI_NO_LINE_NUMBERS = 0 (line 63)

        Use no line numbers when building the result

        GESHI_ROOT = dirname(__FILE__).DIRECTORY_SEPARATOR (line 49)

        The root directory for GeSHi

        GESHI_SECURITY_PARANOID = false (line 58)

        Tells GeSHi to be paranoid about security settings

        GESHI_START_IMPORTANT = '<BEGIN GeSHi>' (line 115)

        The starter for important parts of the source

        GESHI_VERSION = '1.0.8.2', (line 44)

        The version of this GeSHi file

        GESHI_VISITED = 3 (line 109)

        Links in the source in the :visited state

        Functions
        geshi_highlight (line 4577)

        Easy way to highlight stuff. Behaves just like highlight_string

        • return: The code highlighted (if $return is true)
        • since: 1.0.2
        string geshi_highlight (string $string, string $language, [string $path = null], [boolean $return = false])
        • string $string: The code to highlight
        • string $language: The language to highlight the code in
        • string $path: The path to the language files. You can leave this blank if you need as from version 1.0.7 the path should be automatically detected
        • boolean $return: Whether to return the result or to echo

        Documentation generated on Thu, 25 Dec 2008 14:34:34 +0100 by phpDocumentor 1.4.2

        geshi/docs/api/geshi/core/GeSHi.html0000664000175000017500000035775312014173471016470 0ustar benbebenbe Docs For Class GeSHi

         Class GeSHi

        Description

        The GeSHi Class.

        Please refer to the documentation for GeSHi 1.0.X that is available at http://qbnz.com/highlighter/documentation.php for more information about how to use this class.

        • author: Nigel McNie <nigel@geshi.org>, Benny Baumann <BenBE@omorphia.de>
        • copyright: (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann

        Located in /geshi.php (line 253)

        
        	
        			
        Method Summary
         GeSHi GeSHi ([string $source = ''], [string $language = ''], [string $path = ''])
         void add_keyword (int $key, string $word)
         void add_keyword_group (int $key, string $styles, [boolean $case_sensitive = true], [array $words = array()])
         void enable_classes ([boolean $flag = true])
         void enable_highlighting ([boolean $flag = true])
         void enable_ids ([boolean $flag = true])
         void enable_important_blocks (boolean $flag)
         void enable_inner_code_block (boolean $flag)
         void enable_keyword_links ([boolean $enable = true])
         void enable_line_numbers (int $flag, [int $nth_row = 5])
         void enable_multiline_span (boolean $flag)
         void enable_strict_mode ([boolean $mode = true])
         string|false error ()
         string get_language_name ()
         void get_language_name_from_extension (string $extension, [array $lookup = array()])
         string get_stylesheet ([boolean $economy_mode = true])
         double get_time ()
         void highlight_lines_extra (mixed $lines, [string $style = null])
         void load_from_file (string $file_name, [array $lookup = array()])
         void optimize_keyword_group (int $key)
         void parse_code ()
         void remove_keyword (int $key, string $word, [bool $recompile = true])
         void remove_keyword_group (int $key)
         void set_brackets_highlighting (boolean $flag)
         void set_brackets_style (string $style, [boolean $preserve_defaults = false])
         void set_case_keywords (int $case)
         void set_case_sensitivity (int $key, boolean $case)
         void set_code_style (string $style, [boolean $preserve_defaults = false])
         void set_comments_highlighting (int $key, [boolean $flag = true])
         void set_comments_style (int $key, string $style, [boolean $preserve_defaults = false])
         void set_encoding (string $encoding)
         void set_escape_characters_highlighting ([boolean $flag = true])
         void set_escape_characters_style (string $style, [boolean $preserve_defaults = false])
         void set_footer_content (string $content)
         void set_footer_content_style (string $style)
         void set_header_content (string $content)
         void set_header_content_style (string $style)
         void set_header_type (int $type)
         void set_highlight_lines_extra_style (string $styles)
         void set_important_styles (string $styles)
         void set_keyword_group_highlighting (int $key, [boolean $flag = true])
         void set_keyword_group_style (int $key, string $style, [boolean $preserve_defaults = false])
         void set_language (string $language, [ $force_reset = false])
         void set_language_path (string $path)
         void set_line_ending (string $line_ending)
         void set_line_style (string $style1, [string|boolean $style2 = ''], [boolean $preserve_defaults = false])
         void set_link_styles (int $type, string $styles)
         void set_link_target (string $target)
         void set_methods_highlighting (boolean $flag)
         void set_methods_style (int $key, string $style, [boolean $preserve_defaults = false])
         void set_numbers_highlighting (boolean $flag)
         void set_numbers_style (string $style, [boolean $preserve_defaults = false])
         void set_overall_class (string $class)
         void set_overall_id (string $id)
         void set_overall_style (string $style, [boolean $preserve_defaults = false])
         void set_regexps_highlighting (int $key, boolean $flag)
         void set_regexps_style (string $key, boolean $style, [ $preserve_defaults = false])
         void set_source (string $source)
         void set_strings_highlighting (boolean $flag)
         void set_strings_style (string $style, [boolean $preserve_defaults = false])
         void set_symbols_highlighting (boolean $flag)
         void set_symbols_style (string $style, [boolean $preserve_defaults = false], [int $group = 0])
         void set_tab_width (int $width)
         void set_url_for_keyword_group (int $group, string $url)
         void set_use_language_tab_width (boolean $use)
         void start_line_numbers_at (int $number)
        Methods
        Constructor GeSHi (line 591)

        Creates a new GeSHi object, with source and language

        • since: 1.0.0
        GeSHi GeSHi ([string $source = ''], [string $language = ''], [string $path = ''])
        • string $source: The source code to highlight
        • string $language: The language to highlight the source with
        • string $path: The path to the language file directory. This is deprecated! I've backported the auto path detection from the 1.1.X dev branch, so now it should be automatically set correctly. If you have renamed the language directory however, you will still need to set the path using this parameter or GeSHi->set_language_path()
        add_keyword (line 1441)

        Adds a keyword to a keyword group for highlighting

        • since: 1.0.0
        void add_keyword (int $key, string $word)
        • int $key: The key of the keyword group to add the keyword to
        • string $word: The word to add to the keyword group
        add_keyword_group (line 1487)

        Creates a new keyword group

        • since: 1.0.0
        void add_keyword_group (int $key, string $styles, [boolean $case_sensitive = true], [array $words = array()])
        • int $key: The key of the keyword group to create
        • string $styles: The styles for the keyword group
        • boolean $case_sensitive: Whether the keyword group is case sensitive ornot
        • array $words: The words to use for the keyword group
        disable_highlighting (line 1288)

        Disables all highlighting

        • deprecated: In favour of enable_highlighting
        • todo: Rewrite with array traversal
        • since: 1.0.0
        void disable_highlighting ()
        enable_classes (line 805)

        Sets whether CSS classes should be used to highlight the source. Default is off, calling this method with no arguments will turn it on

        • since: 1.0.0
        void enable_classes ([boolean $flag = true])
        • boolean $flag: Whether to turn classes on or not
        enable_highlighting (line 1302)

        Enables all highlighting

        The optional flag parameter was added in version 1.0.7.21 and can be used to enable (true) or disable (false) all highlighting.

        • todo: Rewrite with array traversal
        • since: 1.0.0
        void enable_highlighting ([boolean $flag = true])
        • boolean $flag: A flag specifying whether to enable or disable all highlighting
        enable_ids (line 1652)

        Whether CSS IDs should be added to each line

        • since: 1.0.2
        void enable_ids ([boolean $flag = true])
        • boolean $flag: If true, IDs will be added to each line.
        enable_important_blocks (line 1642)

        Sets whether context-important blocks are highlighted

        • deprecated:
        • todo: REMOVE THIS SHIZ FROM GESHI!
        • since: 1.0.2
        void enable_important_blocks (boolean $flag)
        • boolean $flag: Tells whether to enable or disable highlighting of important blocks
        enable_inner_code_block (line 1581)

        Sets whether to force a surrounding block around the highlighted code or not

        • since: 1.0.7.20
        void enable_inner_code_block (boolean $flag)
        • boolean $flag: Tells whether to enable or disable this feature
        enable_keyword_links (line 1756)

        Turns linking of keywords on or off.

        • since: 1.0.2
        void enable_keyword_links ([boolean $enable = true])
        • boolean $enable: If true, links will be added to keywords
        enable_line_numbers (line 878)

        Sets whether line numbers should be displayed.

        Valid values for the first parameter are:

        • GESHI_NO_LINE_NUMBERS: Line numbers will not be displayed
        • GESHI_NORMAL_LINE_NUMBERS: Line numbers will be displayed
        • GESHI_FANCY_LINE_NUMBERS: Fancy line numbers will be displayed
        For fancy line numbers, the second parameter is used to signal which lines are to be fancy. For example, if the value of this parameter is 5 then every 5th line will be fancy.

        • since: 1.0.0
        void enable_line_numbers (int $flag, [int $nth_row = 5])
        • int $flag: How line numbers should be displayed
        • int $nth_row: Defines which lines are fancy
        enable_multiline_span (line 896)

        Sets wether spans and other HTML markup generated by GeSHi can span over multiple lines or not. Defaults to true to reduce overhead.

        Set it to false if you want to manipulate the output or manually display the code in an ordered list.

        • since: 1.0.7.22
        void enable_multiline_span (boolean $flag)
        • boolean $flag: Wether multiline spans are allowed or not
        enable_strict_mode (line 1275)

        Enables/disables strict highlighting. Default is off, calling this method without parameters will turn it on. See documentation for more details on strict mode and where to use it.

        • since: 1.0.0
        void enable_strict_mode ([boolean $mode = true])
        • boolean $mode: Whether to enable strict mode or not
        error (line 608)

        Returns an error message associated with the last GeSHi operation, or false if no error has occured

        • return: An error message if there has been an error, else false
        • since: 1.0.0
        string|false error ()
        get_language_name (line 632)

        Gets a human-readable language name (thanks to Simon Patterson for the idea :))

        • return: The name for the current language
        • since: 1.0.2
        string get_language_name ()
        get_language_name_from_extension (line 1329)

        Given a file extension, this method returns either a valid geshi language name, or the empty string if it couldn't be found

        • todo: Re-think about how this method works (maybe make it private and/or make it a extension->lang lookup?)
        • todo: static?
        • since: 1.0.5
        void get_language_name_from_extension (string $extension, [array $lookup = array()])
        • string $extension: The extension to get a language name for
        • array $lookup: A lookup array to use instead of the default one
        get_multiline_span (line 906)

        Get current setting for multiline spans, see GeSHi->enable_multiline_span().

        bool get_multiline_span ()
        get_real_tab_width (line 1258)

        Returns the tab width to use, based on the current language and user preference

        • return: Tab width
        • since: 1.0.7.20
        int get_real_tab_width ()
        get_stylesheet (line 4177)

        Returns a stylesheet for the highlighted code. If $economy mode is true, we only return the stylesheet declarations that matter for this code block instead of the whole thing

        • return: A stylesheet built on the data for the current language
        • since: 1.0.0
        string get_stylesheet ([boolean $economy_mode = true])
        • boolean $economy_mode: Whether to use economy mode or not
        get_time (line 3524)

        Gets the time taken to parse the code

        • return: The time taken to parse the code
        • since: 1.0.2
        double get_time ()
        highlight_lines_extra (line 1670)

        Specifies which lines to highlight extra

        The extra style parameter was added in 1.0.7.21.

        • todo: Some data replication here that could be cut down on
        • since: 1.0.2
        void highlight_lines_extra (mixed $lines, [string $style = null])
        • mixed $lines: An array of line numbers to highlight, or just a line number on its own.
        • string $style: A string specifying the style to use for this line. If null is specified, the default style is used. If false is specified, the line will be removed from special highlighting
        load_from_file (line 1425)

        Given a file name, this method loads its contents in, and attempts

        to set the language automatically. An optional lookup table can be passed for looking up the language name. If not specified a default table is used

        The language table is in the form

        array(
           'lang_name' => array('extension', 'extension', ...),
           'lang_name' ...
         );

        • todo: Complete rethink of this and above method
        • since: 1.0.5
        void load_from_file (string $file_name, [array $lookup = array()])
        • string $file_name: The filename to load the source from
        • array $lookup: A lookup array to use instead of the default one
        optimize_keyword_group (line 1529)

        compile optimized regexp list for keyword group

        • since: 1.0.8
        void optimize_keyword_group (int $key)
        • int $key: The key of the keyword group to compile & optimize
        parse_code (line 1992)

        Returns the code in $this->source, highlighted and surrounded by the nessecary HTML.

        This should only be called ONCE, cos it's SLOW! If you want to highlight the same source multiple times, you're better off doing a whole lot of str_replaces to replace the &lt;span&gt;s

        • since: 1.0.0
        void parse_code ()
        remove_keyword (line 1466)

        Removes a keyword from a keyword group

        • since: 1.0.0
        void remove_keyword (int $key, string $word, [bool $recompile = true])
        • int $key: The key of the keyword group to remove the keyword from
        • string $word: The word to remove from the keyword group
        • bool $recompile: Wether to automatically recompile the optimized regexp list or not. Note: if you set this to false and @see GeSHi->parse_code() was already called once, for the current language, you have to manually call @see GeSHi->optimize_keyword_group() or the removed keyword will stay in cache and still be highlighted! On the other hand it might be too expensive to recompile the regexp list for every removal if you want to remove a lot of keywords.
        remove_keyword_group (line 1512)

        Removes a keyword group

        • since: 1.0.0
        void remove_keyword_group (int $key)
        • int $key: The key of the keyword group to remove
        set_brackets_highlighting (line 1036)

        Turns highlighting on/off for brackets

        This method is DEPRECATED: use set_symbols_highlighting instead. This method will be remove in 1.2.X

        • deprecated: In favour of set_symbols_highlighting
        • since: 1.0.0
        void set_brackets_highlighting (boolean $flag)
        • boolean $flag: Whether to turn highlighting for brackets on or off
        set_brackets_style (line 1018)

        Sets the styles for brackets. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        This method is DEPRECATED: use set_symbols_style instead. This method will be removed in 1.2.X

        • deprecated: In favour of set_symbols_style
        • since: 1.0.0
        void set_brackets_style (string $style, [boolean $preserve_defaults = false])
        • string $style: The style to make the brackets
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        set_case_keywords (line 1216)

        Sets the case that keywords should use when found. Use the constants:

        • GESHI_CAPS_NO_CHANGE: leave keywords as-is
        • GESHI_CAPS_UPPER: convert all keywords to uppercase where found
        • GESHI_CAPS_LOWER: convert all keywords to lowercase where found

        • since: 1.0.1
        void set_case_keywords (int $case)
        • int $case: A constant specifying what to do with matched keywords
        set_case_sensitivity (line 1202)

        Sets whether a set of keywords are checked for in a case sensitive manner

        • since: 1.0.0
        void set_case_sensitivity (int $key, boolean $case)
        • int $key: The key of the keyword group to change the case sensitivity of
        • boolean $case: Whether to check in a case sensitive manner or not
        set_code_style (line 824)

        Sets the style for the actual code. This should be a string

        containing valid stylesheet declarations. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        Note: Use this method to override any style changes you made to the line numbers if you are using line numbers, else the line of code will have the same style as the line number! Consult the GeSHi documentation for more information about this.

        • since: 1.0.2
        void set_code_style (string $style, [boolean $preserve_defaults = false])
        • string $style: The style to use for actual code
        • boolean $preserve_defaults: Whether to merge the current styles with the new styles
        set_comments_highlighting (line 972)

        Turns highlighting on/off for comment groups

        • since: 1.0.0
        void set_comments_highlighting (int $key, [boolean $flag = true])
        • int $key: The key of the comment group to turn on or off
        • boolean $flag: Whether to turn highlighting for that group on or off
        set_comments_style (line 957)

        Sets the styles for comment groups. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.0
        void set_comments_style (int $key, string $style, [boolean $preserve_defaults = false])
        • int $key: The key of the comment group to change the styles of
        • string $style: The style to make the comments
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        set_encoding (line 1744)

        Sets the encoding used for htmlspecialchars(), for international support.

        NOTE: This is not needed for now because htmlspecialchars() is not being used (it has a security hole in PHP4 that has not been patched). Maybe in a future version it may make a return for speed reasons, but I doubt it.

        • since: 1.0.3
        void set_encoding (string $encoding)
        • string $encoding: The encoding to use for the source
        set_escape_characters_highlighting (line 1000)

        Turns highlighting on/off for escaped characters

        • since: 1.0.0
        void set_escape_characters_highlighting ([boolean $flag = true])
        • boolean $flag: Whether to turn highlighting for escape characters on or off
        set_escape_characters_style (line 986)

        Sets the styles for escaped characters. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.0
        void set_escape_characters_style (string $style, [boolean $preserve_defaults = false])
        • string $style: The style to make the escape characters
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        set_footer_content (line 1550)

        Sets the content of the footer block

        • since: 1.0.2
        void set_footer_content (string $content)
        • string $content: The content of the footer block
        set_footer_content_style (line 1570)

        Sets the style for the footer content

        • since: 1.0.2
        void set_footer_content_style (string $style)
        • string $style: The style for the footer content
        set_header_content (line 1540)

        Sets the content of the header block

        • since: 1.0.2
        void set_header_content (string $content)
        • string $content: The content of the header block
        set_header_content_style (line 1560)

        Sets the style for the header content

        • since: 1.0.2
        void set_header_content_style (string $style)
        • string $style: The style for the header content
        set_header_type (line 746)

        Sets the type of header to be used.

        If GESHI_HEADER_DIV is used, the code is surrounded in a "div".This means more source code but more control over tab width and line-wrapping. GESHI_HEADER_PRE means that a "pre" is used - less source, but less control. Default is GESHI_HEADER_PRE.

        From 1.0.7.2, you can use GESHI_HEADER_NONE to specify that no header code should be outputted.

        • since: 1.0.0
        void set_header_type (int $type)
        • int $type: The type of header to be used
        set_highlight_lines_extra_style (line 1699)

        Sets the style for extra-highlighted lines

        • since: 1.0.2
        void set_highlight_lines_extra_style (string $styles)
        • string $styles: The style for extra-highlighted lines
        set_important_styles (line 1630)

        Sets styles for important parts of the code

        • since: 1.0.2
        void set_important_styles (string $styles)
        • string $styles: The styles to use on important parts of the code
        set_keyword_group_highlighting (line 942)

        Turns highlighting on/off for a keyword group

        • since: 1.0.0
        void set_keyword_group_highlighting (int $key, [boolean $flag = true])
        • int $key: The key of the keyword group to turn on or off
        • boolean $flag: Whether to turn highlighting for that group on or off
        set_keyword_group_style (line 921)

        Sets the style for a keyword group. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.0
        void set_keyword_group_style (int $key, string $style, [boolean $preserve_defaults = false])
        • int $key: The key of the keyword group to change the styles of
        • string $style: The style to make the keywords
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        set_language (line 659)

        Sets the language for this object

        • since: 1.0.0
        • note: since 1.0.8 this function won't reset language-settings by default anymore! if you need this set $force_reset = true
        void set_language (string $language, [ $force_reset = false])
        • string $language: The name of the language to use
        • $force_reset
        set_language_path (line 703)

        Sets the path to the directory containing the language files. Note that this path is relative to the directory of the script that included geshi.php, NOT geshi.php itself.

        • deprecated: The path to the language files should now be automatically detected, so this method should no longer be needed. The 1.1.X branch handles manual setting of the path differently so this method will disappear in 1.2.0.
        • since: 1.0.0
        void set_language_path (string $path)
        • string $path: The path to the language directory
        set_line_ending (line 1709)

        Sets the line-ending

        • since: 1.0.2
        void set_line_ending (string $line_ending)
        • string $line_ending: The new line-ending
        set_line_style (line 844)

        Sets the styles for the line numbers.

        • since: 1.0.2
        void set_line_style (string $style1, [string|boolean $style2 = ''], [boolean $preserve_defaults = false])
        • string $style1: The style for the line numbers that are "normal"
        • string|boolean $style2: If a string, this is the style of the line numbers that are "fancy", otherwise if boolean then this defines whether the normal styles should be merged with the new normal styles or not
        • boolean $preserve_defaults: If set, is the flag for whether to merge the "fancy" styles with the current styles or not
        set_link_styles (line 1606)

        Sets styles for links in code

        • since: 1.0.2
        void set_link_styles (int $type, string $styles)
        • int $type: A constant that specifies what state the style is being set for - e.g. :hover or :visited
        • string $styles: The styles to use for that state
        set_link_target (line 1616)

        Sets the target for links in code

        • since: 1.0.3
        void set_link_target (string $target)
        • string $target: The target for links in the code, e.g. _blank
        set_methods_highlighting (line 1162)

        Turns highlighting on/off for methods

        • since: 1.0.0
        void set_methods_highlighting (boolean $flag)
        • boolean $flag: Whether to turn highlighting for methods on or off
        set_methods_style (line 1148)

        Sets the styles for methods. $key is a number that references the

        appropriate "object splitter" - see the language file for the language you are highlighting to get this number. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.0
        void set_methods_style (int $key, string $style, [boolean $preserve_defaults = false])
        • int $key: The key of the object splitter to change the styles of
        • string $style: The style to make the methods
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        set_numbers_highlighting (line 1131)

        Turns highlighting on/off for numbers

        • since: 1.0.0
        void set_numbers_highlighting (boolean $flag)
        • boolean $flag: Whether to turn highlighting for numbers on or off
        set_numbers_style (line 1117)

        Sets the styles for numbers. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.0
        void set_numbers_style (string $style, [boolean $preserve_defaults = false])
        • string $style: The style to make the numbers
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        set_overall_class (line 783)

        Sets the overall classname for this block of code. This class can then be used in a stylesheet to style this object's output

        • since: 1.0.0
        void set_overall_class (string $class)
        • string $class: The class name to use for this block of code
        set_overall_id (line 794)

        Sets the overall id for this block of code. This id can then be used in a stylesheet to style this object's output

        • since: 1.0.0
        void set_overall_id (string $id)
        • string $id: The ID to use for this block of code
        set_overall_style (line 767)

        Sets the styles for the code that will be outputted when this object is parsed. The style should be a string of valid stylesheet declarations

        • since: 1.0.0
        void set_overall_style (string $style, [boolean $preserve_defaults = false])
        • string $style: The overall style for the outputted code block
        • boolean $preserve_defaults: Whether to merge the styles with the current styles or not
        set_regexps_highlighting (line 1191)

        Turns highlighting on/off for regexps

        • since: 1.0.0
        void set_regexps_highlighting (int $key, boolean $flag)
        • int $key: The key of the regular expression group to turn on or off
        • boolean $flag: Whether to turn highlighting for the regular expression group on or off
        set_regexps_style (line 1176)

        Sets the styles for regexps. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.0
        void set_regexps_style (string $key, boolean $style, [ $preserve_defaults = false])
        • string $key: The style to make the regular expression matches
        • boolean $style: Whether to merge the new styles with the old or just to overwrite them
        • $preserve_defaults
        set_source (line 645)

        Sets the source code for this object

        • since: 1.0.0
        void set_source (string $source)
        • string $source: The source code to highlight
        set_strings_highlighting (line 1103)

        Turns highlighting on/off for strings

        • since: 1.0.0
        void set_strings_highlighting (boolean $flag)
        • boolean $flag: Whether to turn highlighting for strings on or off
        set_strings_style (line 1089)

        Sets the styles for strings. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.0
        void set_strings_style (string $style, [boolean $preserve_defaults = false])
        • string $style: The style to make the escape characters
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        set_symbols_highlighting (line 1071)

        Turns highlighting on/off for symbols

        • since: 1.0.0
        void set_symbols_highlighting (boolean $flag)
        • boolean $flag: Whether to turn highlighting for symbols on or off
        set_symbols_style (line 1051)

        Sets the styles for symbols. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority

        • since: 1.0.1
        void set_symbols_style (string $style, [boolean $preserve_defaults = false], [int $group = 0])
        • string $style: The style to make the symbols
        • boolean $preserve_defaults: Whether to merge the new styles with the old or just to overwrite them
        • int $group: Tells the group of symbols for which style should be set.
        set_tab_width (line 1231)

        Sets how many spaces a tab is substituted for

        Widths below zero are ignored

        • since: 1.0.0
        void set_tab_width (int $width)
        • int $width: The tab width
        set_url_for_keyword_group (line 1594)

        Sets the base URL to be used for keywords

        • since: 1.0.2
        void set_url_for_keyword_group (int $group, string $url)
        • int $group: The key of the keyword group to set the URL for
        • string $url: The URL to set for the group. If {FNAME} is in the url somewhere, it is replaced by the keyword that the URL is being made for
        set_use_language_tab_width (line 1247)

        Sets whether or not to use tab-stop width specifed by language

        • since: 1.0.7.20
        void set_use_language_tab_width (boolean $use)
        • boolean $use: Whether to use language-specific tab-stop widths
        start_line_numbers_at (line 1728)

        Sets what number line numbers should start at. Should be a positive integer, and will be converted to one.

        Warning: Using this method will add the "start" attribute to the &lt;ol&gt; that is used for line numbering. This is not valid XHTML strict, so if that's what you care about then don't use this method. Firefox is getting support for the CSS method of doing this in 1.1 and Opera has support for the CSS method, but (of course) IE doesn't so it's not worth doing it the CSS way yet.

        • since: 1.0.2
        void start_line_numbers_at (int $number)
        • int $number: The number to start line numbers at

        Documentation generated on Thu, 25 Dec 2008 14:34:52 +0100 by phpDocumentor 1.4.2

        geshi/docs/api/index.html0000664000175000017500000000165212014173557014576 0ustar benbebenbe GeSHi 1.0.8 <H2>Frame Alert</H2> <P>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.</P> geshi/docs/api/packages.html0000664000175000017500000000161112014173556015237 0ustar benbebenbe geshi/docs/api/errors.html0000664000175000017500000000161412014173556015000 0ustar benbebenbe phpDocumentor Parser Errors and Warnings Post-parsing

        geshi.php

        Errors:


        Error on line 569 - DocBlock has multiple @access tags, illegal. ignoring additional tag "@access private"

        Documentation generated on Thu, 25 Dec 2008 14:34:53 +0100 by phpDocumentor 1.4.2

        geshi/docs/api/classtrees_geshi.html0000664000175000017500000000140312014173557017010 0ustar benbebenbe

        Root class GeSHi

        Documentation generated on Thu, 25 Dec 2008 14:34:34 +0100 by phpDocumentor 1.4.2

        geshi/docs/api/blank.html0000664000175000017500000000060612014173556014553 0ustar benbebenbe GeSHi 1.0.8

        GeSHi 1.0.8

        Welcome to geshi!

        This documentation was generated by phpDocumentor v1.4.2
        geshi/docs/api/todolist.html0000664000175000017500000000340612014173556015326 0ustar benbebenbe Todo List

        Todo List

        geshi

        GeSHi::disable_highlighting()

        • Rewrite with array traversal

        GeSHi::enable_highlighting()

        • Rewrite with array traversal

        GeSHi::enable_important_blocks()

        • REMOVE THIS SHIZ FROM GESHI!

        GeSHi::get_language_name_from_extension()

        • Re-think about how this method works (maybe make it private and/or make it a extension->lang lookup?)
        • static?

        GeSHi::highlight_lines_extra()

        • Some data replication here that could be cut down on

        GeSHi::load_from_file()

        • Complete rethink of this and above method

        Documentation generated on Thu, 25 Dec 2008 14:34:53 +0100 by phpDocumentor 1.4.2

        geshi/docs/api/__filesource/fsource_geshi_core_geshi.php.html0000664000175000017500000546161211702144555023741 0ustar benbebenbe File Source for geshi.php

        Source for file geshi.php

        Documentation is available at geshi.php

        1. <?php
        2. /**
        3.  * GeSHi - Generic Syntax Highlighter
        4.  *
        5.  * The GeSHi class for Generic Syntax Highlighting. Please refer to the
        6.  * documentation at http://qbnz.com/highlighter/documentation.php for more
        7.  * information about how to use this class.
        8.  *
        9.  * For changes, release notes, TODOs etc, see the relevant files in the docs/
        10.  * directory.
        11.  *
        12.  *   This file is part of GeSHi.
        13.  *
        14.  *  GeSHi is free software; you can redistribute it and/or modify
        15.  *  it under the terms of the GNU General Public License as published by
        16.  *  the Free Software Foundation; either version 2 of the License, or
        17.  *  (at your option) any later version.
        18.  *
        19.  *  GeSHi is distributed in the hope that it will be useful,
        20.  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
        21.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        22.  *  GNU General Public License for more details.
        23.  *
        24.  *  You should have received a copy of the GNU General Public License
        25.  *  along with GeSHi; if not, write to the Free Software
        26.  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
        27.  *
        28.  * @package    geshi
        29.  * @subpackage core
        30.  * @author     Nigel McNie <nigel@geshi.org>, Benny Baumann <BenBE@omorphia.de>
        31.  * @copyright  (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann
        32.  * @license    http://gnu.org/copyleft/gpl.html GNU GPL
        33.  *
        34.  */
        35.  
        36. //
        37. // GeSHi Constants
        38. // You should use these constant names in your programs instead of
        39. // their values - you never know when a value may change in a future
        40. // version
        41. //
        42.  
        43. /** The version of this GeSHi file */
        44. define('GESHI_VERSION''1.0.8.2',);
        45.  
        46. // Define the root directory for the GeSHi code tree
        47. if (!defined('GESHI_ROOT')) {
        48.     /** The root directory for GeSHi */
        49.     define('GESHI_ROOT'dirname(__FILE__DIRECTORY_SEPARATOR);
        50. }
        51. /** The language file directory for GeSHi
        52.     @access private */
        53. define('GESHI_LANG_ROOT'GESHI_ROOT 'geshi' DIRECTORY_SEPARATOR);
        54.  
        55. // Define if GeSHi should be paranoid about security
        56. if (!defined('GESHI_SECURITY_PARANOID')) {
        57.     /** Tells GeSHi to be paranoid about security settings */
        58.     define('GESHI_SECURITY_PARANOID'false);
        59. }
        60.  
        61. // Line numbers - use with enable_line_numbers()
        62. /** Use no line numbers when building the result */
        63. define('GESHI_NO_LINE_NUMBERS'0);
        64. /** Use normal line numbers when building the result */
        65. define('GESHI_NORMAL_LINE_NUMBERS'1);
        66. /** Use fancy line numbers when building the result */
        67. define('GESHI_FANCY_LINE_NUMBERS'2);
        68.  
        69. // Container HTML type
        70. /** Use nothing to surround the source */
        71. define('GESHI_HEADER_NONE'0);
        72. /** Use a "div" to surround the source */
        73. define('GESHI_HEADER_DIV'1);
        74. /** Use a "pre" to surround the source */
        75. define('GESHI_HEADER_PRE'2);
        76. /** Use a pre to wrap lines when line numbers are enabled or to wrap the whole code. */
        77. define('GESHI_HEADER_PRE_VALID'3);
        78. /**
        79.  * Use a "table" to surround the source:
        80.  *
        81.  *  <table>
        82.  *    <thead><tr><td colspan="2">$header</td></tr></thead>
        83.  *    <tbody><tr><td><pre>$linenumbers</pre></td><td><pre>$code></pre></td></tr></tbody>
        84.  *    <tfooter><tr><td colspan="2">$footer</td></tr></tfoot>
        85.  *  </table>
        86.  *
        87.  * this is essentially only a workaround for Firefox, see sf#1651996 or take a look at
        88.  * https://bugzilla.mozilla.org/show_bug.cgi?id=365805
        89.  * @note when linenumbers are disabled this is essentially the same as GESHI_HEADER_PRE
        90.  */
        91. define('GESHI_HEADER_PRE_TABLE'4);
        92.  
        93. // Capatalisation constants
        94. /** Lowercase keywords found */
        95. define('GESHI_CAPS_NO_CHANGE'0);
        96. /** Uppercase keywords found */
        97. define('GESHI_CAPS_UPPER'1);
        98. /** Leave keywords found as the case that they are */
        99. define('GESHI_CAPS_LOWER'2);
        100.  
        101. // Link style constants
        102. /** Links in the source in the :link state */
        103. define('GESHI_LINK'0);
        104. /** Links in the source in the :hover state */
        105. define('GESHI_HOVER'1);
        106. /** Links in the source in the :active state */
        107. define('GESHI_ACTIVE'2);
        108. /** Links in the source in the :visited state */
        109. define('GESHI_VISITED'3);
        110.  
        111. // Important string starter/finisher
        112. // Note that if you change these, they should be as-is: i.e., don't
        113. // write them as if they had been run through htmlentities()
        114. /** The starter for important parts of the source */
        115. define('GESHI_START_IMPORTANT''<BEGIN GeSHi>');
        116. /** The ender for important parts of the source */
        117. define('GESHI_END_IMPORTANT''<END GeSHi>');
        118.  
        119. /**#@+
        120.  *  @access private
        121.  */
        122. // When strict mode applies for a language
        123. /** Strict mode never applies (this is the most common) */
        124. define('GESHI_NEVER'0);
        125. /** Strict mode *might* apply, and can be enabled or
        126.     disabled by {@link GeSHi->enable_strict_mode()} */
        127. define('GESHI_MAYBE'1);
        128. /** Strict mode always applies */
        129. define('GESHI_ALWAYS'2);
        130.  
        131. // Advanced regexp handling constants, used in language files
        132. /** The key of the regex array defining what to search for */
        133. define('GESHI_SEARCH'0);
        134. /** The key of the regex array defining what bracket group in a
        135.     matched search to use as a replacement */
        136. define('GESHI_REPLACE'1);
        137. /** The key of the regex array defining any modifiers to the regular expression */
        138. define('GESHI_MODIFIERS'2);
        139. /** The key of the regex array defining what bracket group in a
        140.     matched search to put before the replacement */
        141. define('GESHI_BEFORE'3);
        142. /** The key of the regex array defining what bracket group in a
        143.     matched search to put after the replacement */
        144. define('GESHI_AFTER'4);
        145. /** The key of the regex array defining a custom keyword to use
        146.     for this regexp's html tag class */
        147. define('GESHI_CLASS'5);
        148.  
        149. /** Used in language files to mark comments */
        150. define('GESHI_COMMENTS'0);
        151.  
        152. /** Used to work around missing PHP features **/
        153. define('GESHI_PHP_PRE_433'!(version_compare(PHP_VERSION'4.3.3'=== 1));
        154.  
        155. /** make sure we can call stripos **/
        156. if (!function_exists('stripos')) {
        157.     // the offset param of preg_match is not supported below PHP 4.3.3
        158.     if (GESHI_PHP_PRE_433{
        159.         /**
        160.          * @ignore
        161.          */
        162.         function stripos($haystack$needle$offset null{
        163.             if (!is_null($offset)) {
        164.                 $haystack substr($haystack$offset);
        165.             }
        166.             if (preg_match('/'preg_quote($needle'/''/'$haystack$matchPREG_OFFSET_CAPTURE)) {
        167.                 return $match[0][1];
        168.             }
        169.             return false;
        170.         }
        171.     }
        172.     else {
        173.         /**
        174.          * @ignore
        175.          */
        176.         function stripos($haystack$needle$offset null{
        177.             if (preg_match('/'preg_quote($needle'/''/'$haystack$matchPREG_OFFSET_CAPTURE$offset)) {
        178.                 return $match[0][1];
        179.             }
        180.             return false;
        181.         }
        182.     }
        183. }
        184.  
        185. /** some old PHP / PCRE subpatterns only support up to xxx subpatterns in
        186.     regular expressions. Set this to false if your PCRE lib is up to date
        187.     @see GeSHi->optimize_regexp_list()
        188.     **/
        189.  
        190. define('GESHI_MAX_PCRE_SUBPATTERNS'500);
        191. /** it's also important not to generate too long regular expressions
        192.     be generous here... but keep in mind, that when reaching this limit we
        193.     still have to close open patterns. 12k should do just fine on a 16k limit.
        194.     @see GeSHi->optimize_regexp_list()
        195.     **/
        196.  
        197. define('GESHI_MAX_PCRE_LENGTH'12288);
        198.  
        199. //Number format specification
        200. /** Basic number format for integers */
        201. define('GESHI_NUMBER_INT_BASIC'1);        //Default integers \d+
        202. /** Enhanced number format for integers like seen in C */
        203. define('GESHI_NUMBER_INT_CSTYLE'2);       //Default C-Style \d+[lL]?
        204. /** Number format to highlight binary numbers with a suffix "b" */
        205. define('GESHI_NUMBER_BIN_SUFFIX'16);           //[01]+[bB]
        206. /** Number format to highlight binary numbers with a prefix % */
        207. define('GESHI_NUMBER_BIN_PREFIX_PERCENT'32);   //%[01]+
        208. /** Number format to highlight binary numbers with a prefix 0b (C) */
        209. define('GESHI_NUMBER_BIN_PREFIX_0B'64);        //0b[01]+
        210. /** Number format to highlight octal numbers with a leading zero */
        211. define('GESHI_NUMBER_OCT_PREFIX'256);           //0[0-7]+
        212. /** Number format to highlight octal numbers with a suffix of o */
        213. define('GESHI_NUMBER_OCT_SUFFIX'512);           //[0-7]+[oO]
        214. /** Number format to highlight hex numbers with a prefix 0x */
        215. define('GESHI_NUMBER_HEX_PREFIX'4096);           //0x[0-9a-fA-F]+
        216. /** Number format to highlight hex numbers with a suffix of h */
        217. define('GESHI_NUMBER_HEX_SUFFIX'8192);           //[0-9][0-9a-fA-F]*h
        218. /** Number format to highlight floating-point numbers without support for scientific notation */
        219. define('GESHI_NUMBER_FLT_NONSCI'65536);          //\d+\.\d+
        220. /** Number format to highlight floating-point numbers without support for scientific notation */
        221. define('GESHI_NUMBER_FLT_NONSCI_F'131072);       //\d+(\.\d+)?f
        222. /** Number format to highlight floating-point numbers with support for scientific notation (E) and optional leading zero */
        223. define('GESHI_NUMBER_FLT_SCI_SHORT'262144);      //\.\d+e\d+
        224. /** Number format to highlight floating-point numbers with support for scientific notation (E) and required leading digit */
        225. define('GESHI_NUMBER_FLT_SCI_ZERO'524288);       //\d+(\.\d+)?e\d+
        226. //Custom formats are passed by RX array
        227.  
        228. // Error detection - use these to analyse faults
        229. /** No sourcecode to highlight was specified
        230.  * @deprecated
        231.  */
        232. define('GESHI_ERROR_NO_INPUT'1);
        233. /** The language specified does not exist */
        234. define('GESHI_ERROR_NO_SUCH_LANG'2);
        235. /** GeSHi could not open a file for reading (generally a language file) */
        236. define('GESHI_ERROR_FILE_NOT_READABLE'3);
        237. /** The header type passed to {@link GeSHi->set_header_type()} was invalid */
        238. define('GESHI_ERROR_INVALID_HEADER_TYPE'4);
        239. /** The line number type passed to {@link GeSHi->enable_line_numbers()} was invalid */
        240. define('GESHI_ERROR_INVALID_LINE_NUMBER_TYPE'5);
        241. /**#@-*/
        242.  
        243.  
        244. /**
        245.  * The GeSHi Class.
        246.  *
        247.  * Please refer to the documentation for GeSHi 1.0.X that is available
        248.  * at http://qbnz.com/highlighter/documentation.php for more information
        249.  * about how to use this class.
        250.  *
        251.  * @package   geshi
        252.  * @author    Nigel McNie <nigel@geshi.org>, Benny Baumann <BenBE@omorphia.de>
        253.  * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann
        254.  */
        255. class GeSHi {
        256.     /**#@+
        257.      * @access private
        258.      */
        259.     /**
        260.      * The source code to highlight
        261.      * @var string 
        262.      */
        263.     var $source '';
        264.  
        265.     /**
        266.      * The language to use when highlighting
        267.      * @var string 
        268.      */
        269.     var $language '';
        270.  
        271.     /**
        272.      * The data for the language used
        273.      * @var array 
        274.      */
        275.     var $language_data array();
        276.  
        277.     /**
        278.      * The path to the language files
        279.      * @var string 
        280.      */
        281.     var $language_path GESHI_LANG_ROOT;
        282.  
        283.     /**
        284.      * The error message associated with an error
        285.      * @var string 
        286.      * @todo check err reporting works
        287.      */
        288.     var $error false;
        289.  
        290.     /**
        291.      * Possible error messages
        292.      * @var array 
        293.      */
        294.     var $error_messages array(
        295.         GESHI_ERROR_NO_SUCH_LANG => 'GeSHi could not find the language {LANGUAGE} (using path {PATH})',
        296.         GESHI_ERROR_FILE_NOT_READABLE => 'The file specified for load_from_file was not readable',
        297.         GESHI_ERROR_INVALID_HEADER_TYPE => 'The header type specified is invalid',
        298.         GESHI_ERROR_INVALID_LINE_NUMBER_TYPE => 'The line number type specified is invalid'
        299.     );
        300.  
        301.     /**
        302.      * Whether highlighting is strict or not
        303.      * @var boolean 
        304.      */
        305.     var $strict_mode false;
        306.  
        307.     /**
        308.      * Whether to use CSS classes in output
        309.      * @var boolean 
        310.      */
        311.     var $use_classes false;
        312.  
        313.     /**
        314.      * The type of header to use. Can be one of the following
        315.      * values:
        316.      *
        317.      * - GESHI_HEADER_PRE: Source is outputted in a "pre" HTML element.
        318.      * - GESHI_HEADER_DIV: Source is outputted in a "div" HTML element.
        319.      * - GESHI_HEADER_NONE: No header is outputted.
        320.      *
        321.      * @var int 
        322.      */
        323.     var $header_type GESHI_HEADER_PRE;
        324.  
        325.     /**
        326.      * Array of permissions for which lexics should be highlighted
        327.      * @var array 
        328.      */
        329.     var $lexic_permissions array(
        330.         'KEYWORDS' =>    array(),
        331.         'COMMENTS' =>    array('MULTI' => true),
        332.         'REGEXPS' =>     array(),
        333.         'ESCAPE_CHAR' => true,
        334.         'BRACKETS' =>    true,
        335.         'SYMBOLS' =>     false,
        336.         'STRINGS' =>     true,
        337.         'NUMBERS' =>     true,
        338.         'METHODS' =>     true,
        339.         'SCRIPT' =>      true
        340.     );
        341.  
        342.     /**
        343.      * The time it took to parse the code
        344.      * @var double 
        345.      */
        346.     var $time 0;
        347.  
        348.     /**
        349.      * The content of the header block
        350.      * @var string 
        351.      */
        352.     var $header_content '';
        353.  
        354.     /**
        355.      * The content of the footer block
        356.      * @var string 
        357.      */
        358.     var $footer_content '';
        359.  
        360.     /**
        361.      * The style of the header block
        362.      * @var string 
        363.      */
        364.     var $header_content_style '';
        365.  
        366.     /**
        367.      * The style of the footer block
        368.      * @var string 
        369.      */
        370.     var $footer_content_style '';
        371.  
        372.     /**
        373.      * Tells if a block around the highlighted source should be forced
        374.      * if not using line numbering
        375.      * @var boolean 
        376.      */
        377.     var $force_code_block false;
        378.  
        379.     /**
        380.      * The styles for hyperlinks in the code
        381.      * @var array 
        382.      */
        383.     var $link_styles array();
        384.  
        385.     /**
        386.      * Whether important blocks should be recognised or not
        387.      * @var boolean 
        388.      * @deprecated
        389.      * @todo REMOVE THIS FUNCTIONALITY!
        390.      */
        391.     var $enable_important_blocks false;
        392.  
        393.     /**
        394.      * Styles for important parts of the code
        395.      * @var string 
        396.      * @deprecated
        397.      * @todo As above - rethink the whole idea of important blocks as it is buggy and
        398.      *  will be hard to implement in 1.2
        399.      */
        400.     var $important_styles 'font-weight: bold; color: red;'// Styles for important parts of the code
        401.  
        402.     /**
        403.      * Whether CSS IDs should be added to the code
        404.      * @var boolean 
        405.      */
        406.     var $add_ids false;
        407.  
        408.     /**
        409.      * Lines that should be highlighted extra
        410.      * @var array 
        411.      */
        412.     var $highlight_extra_lines array();
        413.  
        414.     /**
        415.      * Styles of lines that should be highlighted extra
        416.      * @var array 
        417.      */
        418.     var $highlight_extra_lines_styles array();
        419.  
        420.     /**
        421.      * Styles of extra-highlighted lines
        422.      * @var string 
        423.      */
        424.     var $highlight_extra_lines_style 'background-color: #ffc;';
        425.  
        426.     /**
        427.      * The line ending
        428.      * If null, nl2br() will be used on the result string.
        429.      * Otherwise, all instances of \n will be replaced with $line_ending
        430.      * @var string 
        431.      */
        432.     var $line_ending null;
        433.  
        434.     /**
        435.      * Number at which line numbers should start at
        436.      * @var int 
        437.      */
        438.     var $line_numbers_start 1;
        439.  
        440.     /**
        441.      * The overall style for this code block
        442.      * @var string 
        443.      */
        444.     var $overall_style 'font-family:monospace;';
        445.  
        446.     /**
        447.      *  The style for the actual code
        448.      * @var string 
        449.      */
        450.     var $code_style 'font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;';
        451.  
        452.     /**
        453.      * The overall class for this code block
        454.      * @var string 
        455.      */
        456.     var $overall_class '';
        457.  
        458.     /**
        459.      * The overall ID for this code block
        460.      * @var string 
        461.      */
        462.     var $overall_id '';
        463.  
        464.     /**
        465.      * Line number styles
        466.      * @var string 
        467.      */
        468.     var $line_style1 'font-weight: normal; vertical-align:top;';
        469.  
        470.     /**
        471.      * Line number styles for fancy lines
        472.      * @var string 
        473.      */
        474.     var $line_style2 'font-weight: bold; vertical-align:top;';
        475.  
        476.     /**
        477.      * Style for line numbers when GESHI_HEADER_PRE_TABLE is chosen
        478.      * @var string 
        479.      */
        480.     var $table_linenumber_style 'width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;';
        481.  
        482.     /**
        483.      * Flag for how line numbers are displayed
        484.      * @var boolean 
        485.      */
        486.     var $line_numbers GESHI_NO_LINE_NUMBERS;
        487.  
        488.     /**
        489.      * Flag to decide if multi line spans are allowed. Set it to false to make sure
        490.      * each tag is closed before and reopened after each linefeed.
        491.      * @var boolean 
        492.      */
        493.     var $allow_multiline_span true;
        494.  
        495.     /**
        496.      * The "nth" value for fancy line highlighting
        497.      * @var int 
        498.      */
        499.     var $line_nth_row 0;
        500.  
        501.     /**
        502.      * The size of tab stops
        503.      * @var int 
        504.      */
        505.     var $tab_width 8;
        506.  
        507.     /**
        508.      * Should we use language-defined tab stop widths?
        509.      * @var int 
        510.      */
        511.     var $use_language_tab_width false;
        512.  
        513.     /**
        514.      * Default target for keyword links
        515.      * @var string 
        516.      */
        517.     var $link_target '';
        518.  
        519.     /**
        520.      * The encoding to use for entity encoding
        521.      * NOTE: Used with Escape Char Sequences to fix UTF-8 handling (cf. SF#2037598)
        522.      * @var string 
        523.      */
        524.     var $encoding 'utf-8';
        525.  
        526.     /**
        527.      * Should keywords be linked?
        528.      * @var boolean 
        529.      */
        530.     var $keyword_links true;
        531.  
        532.     /**
        533.      * Currently loaded language file
        534.      * @var string 
        535.      * @since 1.0.7.22
        536.      */
        537.     var $loaded_language '';
        538.  
        539.     /**
        540.      * Wether the caches needed for parsing are built or not
        541.      *
        542.      * @var bool 
        543.      * @since 1.0.8
        544.      */
        545.     var $parse_cache_built false;
        546.  
        547.     /**
        548.      * Work around for Suhosin Patch with disabled /e modifier
        549.      *
        550.      * Note from suhosins author in config file:
        551.      * <blockquote>
        552.      *   The /e modifier inside <code>preg_replace()</code> allows code execution.
        553.      *   Often it is the cause for remote code execution exploits. It is wise to
        554.      *   deactivate this feature and test where in the application it is used.
        555.      *   The developer using the /e modifier should be made aware that he should
        556.      *   use <code>preg_replace_callback()</code> instead
        557.      * </blockquote>
        558.      *
        559.      * @var array 
        560.      * @since 1.0.8
        561.      */
        562.     var $_kw_replace_group 0;
        563.     var $_rx_key 0;
        564.  
        565.     /**
        566.      * some "callback parameters" for handle_multiline_regexps
        567.      *
        568.      * @since 1.0.8
        569.      * @access private
        570.      * @var string 
        571.      */
        572.     var $_hmr_before '';
        573.     var $_hmr_replace '';
        574.     var $_hmr_after '';
        575.     var $_hmr_key 0;
        576.  
        577.     /**#@-*/
        578.  
        579.     /**
        580.      * Creates a new GeSHi object, with source and language
        581.      *
        582.      * @param string The source code to highlight
        583.      * @param string The language to highlight the source with
        584.      * @param string The path to the language file directory. <b>This
        585.      *                is deprecated!</b> I've backported the auto path
        586.      *                detection from the 1.1.X dev branch, so now it
        587.      *                should be automatically set correctly. If you have
        588.      *                renamed the language directory however, you will
        589.      *                still need to set the path using this parameter or
        590.      *                {@link GeSHi->set_language_path()}
        591.      * @since 1.0.0
        592.      */
        593.     function GeSHi($source ''$language ''$path ''{
        594.         if (!empty($source)) {
        595.             $this->set_source($source);
        596.         }
        597.         if (!empty($language)) {
        598.             $this->set_language($language);
        599.         }
        600.         $this->set_language_path($path);
        601.     }
        602.  
        603.     /**
        604.      * Returns an error message associated with the last GeSHi operation,
        605.      * or false if no error has occured
        606.      *
        607.      * @return string|falseAn error message if there has been an error, else false
        608.      * @since  1.0.0
        609.      */
        610.     function error({
        611.         if ($this->error{
        612.             //Put some template variables for debugging here ...
        613.             $debug_tpl_vars array(
        614.                 '{LANGUAGE}' => $this->language,
        615.                 '{PATH}' => $this->language_path
        616.             );
        617.             $msg str_replace(
        618.                 array_keys($debug_tpl_vars),
        619.                 array_values($debug_tpl_vars),
        620.                 $this->error_messages[$this->error]);
        621.  
        622.             return "<br /><strong>GeSHi Error:</strong> $msg (code {$this->error})<br />";
        623.         }
        624.         return false;
        625.     }
        626.  
        627.     /**
        628.      * Gets a human-readable language name (thanks to Simon Patterson
        629.      * for the idea :))
        630.      *
        631.      * @return string The name for the current language
        632.      * @since  1.0.2
        633.      */
        634.     function get_language_name() {
        635.         if (GESHI_ERROR_NO_SUCH_LANG == $this->error) {
        636.             return $this->language_data['LANG_NAME'] . ' (Unknown Language)';
        637.         }
        638.         return $this->language_data['LANG_NAME'];
        639.     }
        640.  
        641. /**    
        642.      * Sets the source code for this object
        643.      *
        644.      * @param string The source code to highlight
        645.      * @since 1.0.0
        646.      */
        647.     function set_source($source) {
        648.         $this->source = $source;
        649.         $this->highlight_extra_lines = array();
        650.     }
        651.  
        652. /**    
        653.      * Sets the language for this object
        654.      *
        655.      * @note since 1.0.8 this function won't reset language-settings by default anymore!
        656.      *        if you need this set $force_reset = true
        657.      *
        658.      * @param string The name of the language to use
        659.      * @since 1.0.0
        660.      */
        661.     function set_language($language, $force_reset = false) {
        662.         if ($force_reset) {
        663.             $this->loaded_language = false;
        664.         }
        665.  
        666.         //Clean up the language name to prevent malicious code injection
        667.         $language = preg_replace('#[^a-zA-Z0-9\-_]#', '', $language);
        668.  
        669.         $language = strtolower($language);
        670.  
        671.         //Retreive the full filename
        672.         $file_name = $this->language_path . $language . '.php';
        673.         if ($file_name == $this->loaded_language) {
        674.             // this language is already loaded!
        675.             return;
        676.         }
        677.  
        678.         $this->language = $language;
        679.  
        680.         $this->error = false;
        681.         $this->strict_mode = GESHI_NEVER;
        682.  
        683.         //Check if we can read the desired file
        684.         if (!is_readable($file_name)) {
        685.             $this->error = GESHI_ERROR_NO_SUCH_LANG;
        686.             return;
        687.         }
        688.  
        689.         // Load the language for parsing
        690.         $this->load_language($file_name);
        691.     }
        692.  
        693. /**    
        694.      * Sets the path to the directory containing the language files. Note
        695.      * that this path is relative to the directory of the script that included
        696.      * geshi.php, NOT geshi.php itself.
        697.      *
        698.      * @param string The path to the language directory
        699.      * @since 1.0.0
        700.      * @deprecated The path to the language files should now be automatically
        701.      *              detected, so this method should no longer be needed. The
        702.      *              1.1.X branch handles manual setting of the path differently
        703.      *              so this method will disappear in 1.2.0.
        704.      */
        705.     function set_language_path($path) {
        706.         if(strpos($path,':')) {
        707.             //Security Fix to prevent external directories using fopen wrappers.
        708.             if(DIRECTORY_SEPARATOR == "\\") {
        709.                 if(!preg_match('#^[a-zA-Z]:#', $path) || false !== strpos($path, ':', 2)) {
        710.                     return;
        711.                 }
        712.             } else {
        713.                 return;
        714.             }
        715.         }
        716.         if(preg_match('#[^/a-zA-Z0-9_\.\-\\\s:]#', $path)) {
        717.             //Security Fix to prevent external directories using fopen wrappers.
        718.             return;
        719.         }
        720.         if(<a href="../geshi/core/_geshi.php.html#defineGESHI_SECURITY_PARANOID">GESHI_SECURITY_PARANOID</a> && false !== strpos($path, '/.')) {
        721.             //Security Fix to prevent external directories using fopen wrappers.
        722.             return;
        723.         }
        724.         if(<a href="../geshi/core/_geshi.php.html#defineGESHI_SECURITY_PARANOID">GESHI_SECURITY_PARANOID</a> && false !== strpos($path, '..')) {
        725.             //Security Fix to prevent external directories using fopen wrappers.
        726.             return;
        727.         }
        728.         if ($path) {
        729.             $this->language_path = ('/' == $path[strlen($path) - 1]) ? $path : $path . '/';
        730.             $this->set_language($this->language); // otherwise set_language_path has no effect
        731.         }
        732.     }
        733.  
        734. /**    
        735.      * Sets the type of header to be used.
        736.      *
        737.      * If GESHI_HEADER_DIV is used, the code is surrounded in a "div".This
        738.      * means more source code but more control over tab width and line-wrapping.
        739.      * GESHI_HEADER_PRE means that a "pre" is used - less source, but less
        740.      * control. Default is GESHI_HEADER_PRE.
        741.      *
        742.      * From 1.0.7.2, you can use GESHI_HEADER_NONE to specify that no header code
        743.      * should be outputted.
        744.      *
        745.      * @param int The type of header to be used
        746.      * @since 1.0.0
        747.      */
        748.     function set_header_type($type) {
        749.         //Check if we got a valid header type
        750.         if (!in_array($type, array(<a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_NONE">GESHI_HEADER_NONE</a>, <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_DIV">GESHI_HEADER_DIV</a>,
        751.             <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a>, <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a>, <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_TABLE">GESHI_HEADER_PRE_TABLE</a>))) {
        752.             $this->error = GESHI_ERROR_INVALID_HEADER_TYPE;
        753.             return;
        754.         }
        755.  
        756.         //Set that new header type
        757.         $this->header_type = $type;
        758.     }
        759.  
        760. /**    
        761.      * Sets the styles for the code that will be outputted
        762.      * when this object is parsed. The style should be a
        763.      * string of valid stylesheet declarations
        764.      *
        765.      * @param string  The overall style for the outputted code block
        766.      * @param boolean Whether to merge the styles with the current styles or not
        767.      * @since 1.0.0
        768.      */
        769.     function set_overall_style($style, $preserve_defaults = false) {
        770.         if (!$preserve_defaults) {
        771.             $this->overall_style = $style;
        772.         } else {
        773.             $this->overall_style .= $style;
        774.         }
        775.     }
        776.  
        777. /**    
        778.      * Sets the overall classname for this block of code. This
        779.      * class can then be used in a stylesheet to style this object's
        780.      * output
        781.      *
        782.      * @param string The class name to use for this block of code
        783.      * @since 1.0.0
        784.      */
        785.     function set_overall_class($class) {
        786.         $this->overall_class = $class;
        787.     }
        788.  
        789. /**    
        790.      * Sets the overall id for this block of code. This id can then
        791.      * be used in a stylesheet to style this object's output
        792.      *
        793.      * @param string The ID to use for this block of code
        794.      * @since 1.0.0
        795.      */
        796.     function set_overall_id($id) {
        797.         $this->overall_id = $id;
        798.     }
        799.  
        800. /**    
        801.      * Sets whether CSS classes should be used to highlight the source. Default
        802.      * is off, calling this method with no arguments will turn it on
        803.      *
        804.      * @param boolean Whether to turn classes on or not
        805.      * @since 1.0.0
        806.      */
        807.     function enable_classes($flag = true) {
        808.         $this->use_classes = ($flag) ? true : false;
        809.     }
        810.  
        811. /**    
        812.      * Sets the style for the actual code. This should be a string
        813.      * containing valid stylesheet declarations. If $preserve_defaults is
        814.      * true, then styles are merged with the default styles, with the
        815.      * user defined styles having priority
        816.      *
        817.      * Note: Use this method to override any style changes you made to
        818.      * the line numbers if you are using line numbers, else the line of
        819.      * code will have the same style as the line number! Consult the
        820.      * GeSHi documentation for more information about this.
        821.      *
        822.      * @param string  The style to use for actual code
        823.      * @param boolean Whether to merge the current styles with the new styles
        824.      * @since 1.0.2
        825.      */
        826.     function set_code_style($style, $preserve_defaults = false) {
        827.         if (!$preserve_defaults) {
        828.             $this->code_style = $style;
        829.         } else {
        830.             $this->code_style .= $style;
        831.         }
        832.     }
        833.  
        834. /**    
        835.      * Sets the styles for the line numbers.
        836.      *
        837.      * @param string The style for the line numbers that are "normal"
        838.      * @param string|booleanIf a string, this is the style of the line
        839.      *         numbers that are "fancy", otherwise if boolean then this
        840.      *         defines whether the normal styles should be merged with the
        841.      *         new normal styles or not
        842.      * @param boolean If set, is the flag for whether to merge the "fancy"
        843.      *         styles with the current styles or not
        844.      * @since 1.0.2
        845.      */
        846.     function set_line_style($style1, $style2 = '', $preserve_defaults = false) {
        847.         //Check if we got 2 or three parameters
        848.         if (is_bool($style2)) {
        849.             $preserve_defaults = $style2;
        850.             $style2 = '';
        851.         }
        852.  
        853.         //Actually set the new styles
        854.         if (!$preserve_defaults) {
        855.             $this->line_style1 = $style1;
        856.             $this->line_style2 = $style2;
        857.         } else {
        858.             $this->line_style1 .= $style1;
        859.             $this->line_style2 .= $style2;
        860.         }
        861.     }
        862.  
        863. /**    
        864.      * Sets whether line numbers should be displayed.
        865.      *
        866.      * Valid values for the first parameter are:
        867.      *
        868.      *  - GESHI_NO_LINE_NUMBERS: Line numbers will not be displayed
        869.      *  - GESHI_NORMAL_LINE_NUMBERS: Line numbers will be displayed
        870.      *  - GESHI_FANCY_LINE_NUMBERS: Fancy line numbers will be displayed
        871.      *
        872.      * For fancy line numbers, the second parameter is used to signal which lines
        873.      * are to be fancy. For example, if the value of this parameter is 5 then every
        874.      * 5th line will be fancy.
        875.      *
        876.      * @param int How line numbers should be displayed
        877.      * @param int Defines which lines are fancy
        878.      * @since 1.0.0
        879.      */
        880.     function enable_line_numbers($flag, $nth_row = 5) {
        881.         if (<a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a> != $flag && <a href="../geshi/core/_geshi.php.html#defineGESHI_NORMAL_LINE_NUMBERS">GESHI_NORMAL_LINE_NUMBERS</a> != $flag
        882.             && <a href="../geshi/core/_geshi.php.html#defineGESHI_FANCY_LINE_NUMBERS">GESHI_FANCY_LINE_NUMBERS</a> != $flag) {
        883.             $this->error = GESHI_ERROR_INVALID_LINE_NUMBER_TYPE;
        884.         }
        885.         $this->line_numbers = $flag;
        886.         $this->line_nth_row = $nth_row;
        887.     }
        888.  
        889. /**    
        890.      * Sets wether spans and other HTML markup generated by GeSHi can
        891.      * span over multiple lines or not. Defaults to true to reduce overhead.
        892.      * Set it to false if you want to manipulate the output or manually display
        893.      * the code in an ordered list.
        894.      *
        895.      * @param boolean Wether multiline spans are allowed or not
        896.      * @since 1.0.7.22
        897.      */
        898.     function enable_multiline_span($flag) {
        899.         $this->allow_multiline_span = (bool) $flag;
        900.     }
        901.  
        902. /**    
        903.      * Get current setting for multiline spans, see GeSHi->enable_multiline_span().
        904.      *
        905.      * @see enable_multiline_span
        906.      * @return bool 
        907.      */
        908.     function get_multiline_span() {
        909.         return $this->allow_multiline_span;
        910.     }
        911.  
        912. /**    
        913.      * Sets the style for a keyword group. If $preserve_defaults is
        914.      * true, then styles are merged with the default styles, with the
        915.      * user defined styles having priority
        916.      *
        917.      * @param int     The key of the keyword group to change the styles of
        918.      * @param string  The style to make the keywords
        919.      * @param boolean Whether to merge the new styles with the old or just
        920.      *                 to overwrite them
        921.      * @since 1.0.0
        922.      */
        923.     function set_keyword_group_style($key, $style, $preserve_defaults = false) {
        924.         //Set the style for this keyword group
        925.         if (!$preserve_defaults) {
        926.             $this->language_data['STYLES']['KEYWORDS'][$key] = $style;
        927.         } else {
        928.             $this->language_data['STYLES']['KEYWORDS'][$key] .= $style;
        929.         }
        930.  
        931.         //Update the lexic permissions
        932.         if (!isset($this->lexic_permissions['KEYWORDS'][$key])) {
        933.             $this->lexic_permissions['KEYWORDS'][$key] = true;
        934.         }
        935.     }
        936.  
        937. /**    
        938.      * Turns highlighting on/off for a keyword group
        939.      *
        940.      * @param int     The key of the keyword group to turn on or off
        941.      * @param boolean Whether to turn highlighting for that group on or off
        942.      * @since 1.0.0
        943.      */
        944.     function set_keyword_group_highlighting($key, $flag = true) {
        945.         $this->lexic_permissions['KEYWORDS'][$key] = ($flag) ? true : false;
        946.     }
        947.  
        948. /**    
        949.      * Sets the styles for comment groups.  If $preserve_defaults is
        950.      * true, then styles are merged with the default styles, with the
        951.      * user defined styles having priority
        952.      *
        953.      * @param int     The key of the comment group to change the styles of
        954.      * @param string  The style to make the comments
        955.      * @param boolean Whether to merge the new styles with the old or just
        956.      *                 to overwrite them
        957.      * @since 1.0.0
        958.      */
        959.     function set_comments_style($key, $style, $preserve_defaults = false) {
        960.         if (!$preserve_defaults) {
        961.             $this->language_data['STYLES']['COMMENTS'][$key] = $style;
        962.         } else {
        963.             $this->language_data['STYLES']['COMMENTS'][$key] .= $style;
        964.         }
        965.     }
        966.  
        967. /**    
        968.      * Turns highlighting on/off for comment groups
        969.      *
        970.      * @param int     The key of the comment group to turn on or off
        971.      * @param boolean Whether to turn highlighting for that group on or off
        972.      * @since 1.0.0
        973.      */
        974.     function set_comments_highlighting($key, $flag = true) {
        975.         $this->lexic_permissions['COMMENTS'][$key] = ($flag) ? true : false;
        976.     }
        977.  
        978. /**    
        979.      * Sets the styles for escaped characters. If $preserve_defaults is
        980.      * true, then styles are merged with the default styles, with the
        981.      * user defined styles having priority
        982.      *
        983.      * @param string  The style to make the escape characters
        984.      * @param boolean Whether to merge the new styles with the old or just
        985.      *                 to overwrite them
        986.      * @since 1.0.0
        987.      */
        988.     function set_escape_characters_style($style, $preserve_defaults = false) {
        989.         if (!$preserve_defaults) {
        990.             $this->language_data['STYLES']['ESCAPE_CHAR'][0] = $style;
        991.         } else {
        992.             $this->language_data['STYLES']['ESCAPE_CHAR'][0] .= $style;
        993.         }
        994.     }
        995.  
        996. /**    
        997.      * Turns highlighting on/off for escaped characters
        998.      *
        999.      * @param boolean Whether to turn highlighting for escape characters on or off
        1000.      * @since 1.0.0
        1001.      */
        1002.     function set_escape_characters_highlighting($flag = true) {
        1003.         $this->lexic_permissions['ESCAPE_CHAR'] = ($flag) ? true : false;
        1004.     }
        1005.  
        1006. /**    
        1007.      * Sets the styles for brackets. If $preserve_defaults is
        1008.      * true, then styles are merged with the default styles, with the
        1009.      * user defined styles having priority
        1010.      *
        1011.      * This method is DEPRECATED: use set_symbols_style instead.
        1012.      * This method will be removed in 1.2.X
        1013.      *
        1014.      * @param string  The style to make the brackets
        1015.      * @param boolean Whether to merge the new styles with the old or just
        1016.      *                 to overwrite them
        1017.      * @since 1.0.0
        1018.      * @deprecated In favour of set_symbols_style
        1019.      */
        1020.     function set_brackets_style($style, $preserve_defaults = false) {
        1021.         if (!$preserve_defaults) {
        1022.             $this->language_data['STYLES']['BRACKETS'][0] = $style;
        1023.         } else {
        1024.             $this->language_data['STYLES']['BRACKETS'][0] .= $style;
        1025.         }
        1026.     }
        1027.  
        1028. /**    
        1029.      * Turns highlighting on/off for brackets
        1030.      *
        1031.      * This method is DEPRECATED: use set_symbols_highlighting instead.
        1032.      * This method will be remove in 1.2.X
        1033.      *
        1034.      * @param boolean Whether to turn highlighting for brackets on or off
        1035.      * @since 1.0.0
        1036.      * @deprecated In favour of set_symbols_highlighting
        1037.      */
        1038.     function set_brackets_highlighting($flag) {
        1039.         $this->lexic_permissions['BRACKETS'] = ($flag) ? true : false;
        1040.     }
        1041.  
        1042. /**    
        1043.      * Sets the styles for symbols. If $preserve_defaults is
        1044.      * true, then styles are merged with the default styles, with the
        1045.      * user defined styles having priority
        1046.      *
        1047.      * @param string  The style to make the symbols
        1048.      * @param boolean Whether to merge the new styles with the old or just
        1049.      *                 to overwrite them
        1050.      * @param int     Tells the group of symbols for which style should be set.
        1051.      * @since 1.0.1
        1052.      */
        1053.     function set_symbols_style($style, $preserve_defaults = false, $group = 0) {
        1054.         // Update the style of symbols
        1055.         if (!$preserve_defaults) {
        1056.             $this->language_data['STYLES']['SYMBOLS'][$group] = $style;
        1057.         } else {
        1058.             $this->language_data['STYLES']['SYMBOLS'][$group] .= $style;
        1059.         }
        1060.  
        1061.         // For backward compatibility
        1062.         if (0 == $group) {
        1063.             $this->set_brackets_style ($style, $preserve_defaults);
        1064.         }
        1065.     }
        1066.  
        1067. /**    
        1068.      * Turns highlighting on/off for symbols
        1069.      *
        1070.      * @param boolean Whether to turn highlighting for symbols on or off
        1071.      * @since 1.0.0
        1072.      */
        1073.     function set_symbols_highlighting($flag) {
        1074.         // Update lexic permissions for this symbol group
        1075.         $this->lexic_permissions['SYMBOLS'] = ($flag) ? true : false;
        1076.  
        1077.         // For backward compatibility
        1078.         $this->set_brackets_highlighting ($flag);
        1079.     }
        1080.  
        1081. /**    
        1082.      * Sets the styles for strings. If $preserve_defaults is
        1083.      * true, then styles are merged with the default styles, with the
        1084.      * user defined styles having priority
        1085.      *
        1086.      * @param string  The style to make the escape characters
        1087.      * @param boolean Whether to merge the new styles with the old or just
        1088.      *                 to overwrite them
        1089.      * @since 1.0.0
        1090.      */
        1091.     function set_strings_style($style, $preserve_defaults = false) {
        1092.         if (!$preserve_defaults) {
        1093.             $this->language_data['STYLES']['STRINGS'][0] = $style;
        1094.         } else {
        1095.             $this->language_data['STYLES']['STRINGS'][0] .= $style;
        1096.         }
        1097.     }
        1098.  
        1099. /**    
        1100.      * Turns highlighting on/off for strings
        1101.      *
        1102.      * @param boolean Whether to turn highlighting for strings on or off
        1103.      * @since 1.0.0
        1104.      */
        1105.     function set_strings_highlighting($flag) {
        1106.         $this->lexic_permissions['STRINGS'] = ($flag) ? true : false;
        1107.     }
        1108.  
        1109. /**    
        1110.      * Sets the styles for numbers. If $preserve_defaults is
        1111.      * true, then styles are merged with the default styles, with the
        1112.      * user defined styles having priority
        1113.      *
        1114.      * @param string  The style to make the numbers
        1115.      * @param boolean Whether to merge the new styles with the old or just
        1116.      *                 to overwrite them
        1117.      * @since 1.0.0
        1118.      */
        1119.     function set_numbers_style($style, $preserve_defaults = false) {
        1120.         if (!$preserve_defaults) {
        1121.             $this->language_data['STYLES']['NUMBERS'][0] = $style;
        1122.         } else {
        1123.             $this->language_data['STYLES']['NUMBERS'][0] .= $style;
        1124.         }
        1125.     }
        1126.  
        1127. /**    
        1128.      * Turns highlighting on/off for numbers
        1129.      *
        1130.      * @param boolean Whether to turn highlighting for numbers on or off
        1131.      * @since 1.0.0
        1132.      */
        1133.     function set_numbers_highlighting($flag) {
        1134.         $this->lexic_permissions['NUMBERS'] = ($flag) ? true : false;
        1135.     }
        1136.  
        1137. /**    
        1138.      * Sets the styles for methods. $key is a number that references the
        1139.      * appropriate "object splitter" - see the language file for the language
        1140.      * you are highlighting to get this number. If $preserve_defaults is
        1141.      * true, then styles are merged with the default styles, with the
        1142.      * user defined styles having priority
        1143.      *
        1144.      * @param int     The key of the object splitter to change the styles of
        1145.      * @param string  The style to make the methods
        1146.      * @param boolean Whether to merge the new styles with the old or just
        1147.      *                 to overwrite them
        1148.      * @since 1.0.0
        1149.      */
        1150.     function set_methods_style($key, $style, $preserve_defaults = false) {
        1151.         if (!$preserve_defaults) {
        1152.             $this->language_data['STYLES']['METHODS'][$key] = $style;
        1153.         } else {
        1154.             $this->language_data['STYLES']['METHODS'][$key] .= $style;
        1155.         }
        1156.     }
        1157.  
        1158. /**    
        1159.      * Turns highlighting on/off for methods
        1160.      *
        1161.      * @param boolean Whether to turn highlighting for methods on or off
        1162.      * @since 1.0.0
        1163.      */
        1164.     function set_methods_highlighting($flag) {
        1165.         $this->lexic_permissions['METHODS'] = ($flag) ? true : false;
        1166.     }
        1167.  
        1168. /**    
        1169.      * Sets the styles for regexps. If $preserve_defaults is
        1170.      * true, then styles are merged with the default styles, with the
        1171.      * user defined styles having priority
        1172.      *
        1173.      * @param string  The style to make the regular expression matches
        1174.      * @param boolean Whether to merge the new styles with the old or just
        1175.      *                 to overwrite them
        1176.      * @since 1.0.0
        1177.      */
        1178.     function set_regexps_style($key, $style, $preserve_defaults = false) {
        1179.         if (!$preserve_defaults) {
        1180.             $this->language_data['STYLES']['REGEXPS'][$key] = $style;
        1181.         } else {
        1182.             $this->language_data['STYLES']['REGEXPS'][$key] .= $style;
        1183.         }
        1184.     }
        1185.  
        1186. /**    
        1187.      * Turns highlighting on/off for regexps
        1188.      *
        1189.      * @param int     The key of the regular expression group to turn on or off
        1190.      * @param boolean Whether to turn highlighting for the regular expression group on or off
        1191.      * @since 1.0.0
        1192.      */
        1193.     function set_regexps_highlighting($key, $flag) {
        1194.         $this->lexic_permissions['REGEXPS'][$key] = ($flag) ? true : false;
        1195.     }
        1196.  
        1197. /**    
        1198.      * Sets whether a set of keywords are checked for in a case sensitive manner
        1199.      *
        1200.      * @param int The key of the keyword group to change the case sensitivity of
        1201.      * @param boolean Whether to check in a case sensitive manner or not
        1202.      * @since 1.0.0
        1203.      */
        1204.     function set_case_sensitivity($key, $case) {
        1205.         $this->language_data['CASE_SENSITIVE'][$key] = ($case) ? true : false;
        1206.     }
        1207.  
        1208. /**    
        1209.      * Sets the case that keywords should use when found. Use the constants:
        1210.      *
        1211.      *  - GESHI_CAPS_NO_CHANGE: leave keywords as-is
        1212.      *  - GESHI_CAPS_UPPER: convert all keywords to uppercase where found
        1213.      *  - GESHI_CAPS_LOWER: convert all keywords to lowercase where found
        1214.      *
        1215.      * @param int A constant specifying what to do with matched keywords
        1216.      * @since 1.0.1
        1217.      */
        1218.     function set_case_keywords($case) {
        1219.         if (in_array($case, array(
        1220.             <a href="../geshi/core/_geshi.php.html#defineGESHI_CAPS_NO_CHANGE">GESHI_CAPS_NO_CHANGE</a>, <a href="../geshi/core/_geshi.php.html#defineGESHI_CAPS_UPPER">GESHI_CAPS_UPPER</a>, <a href="../geshi/core/_geshi.php.html#defineGESHI_CAPS_LOWER">GESHI_CAPS_LOWER</a>))) {
        1221.             $this->language_data['CASE_KEYWORDS'] = $case;
        1222.         }
        1223.     }
        1224.  
        1225. /**    
        1226.      * Sets how many spaces a tab is substituted for
        1227.      *
        1228.      * Widths below zero are ignored
        1229.      *
        1230.      * @param int The tab width
        1231.      * @since 1.0.0
        1232.      */
        1233.     function set_tab_width($width) {
        1234.         $this->tab_width = intval($width);
        1235.  
        1236.         //Check if it fit's the constraints:
        1237.         if ($this->tab_width < 1) {
        1238.             //Return it to the default
        1239.             $this->tab_width = 8;
        1240.         }
        1241.     }
        1242.  
        1243. /**    
        1244.      * Sets whether or not to use tab-stop width specifed by language
        1245.      *
        1246.      * @param boolean Whether to use language-specific tab-stop widths
        1247.      * @since 1.0.7.20
        1248.      */
        1249.     function set_use_language_tab_width($use) {
        1250.         $this->use_language_tab_width = (bool) $use;
        1251.     }
        1252.  
        1253. /**    
        1254.      * Returns the tab width to use, based on the current language and user
        1255.      * preference
        1256.      *
        1257.      * @return int Tab width
        1258.      * @since 1.0.7.20
        1259.      */
        1260.     function get_real_tab_width() {
        1261.         if (!$this->use_language_tab_width ||
        1262.             !isset($this->language_data['TAB_WIDTH'])) {
        1263.             return $this->tab_width;
        1264.         } else {
        1265.             return $this->language_data['TAB_WIDTH'];
        1266.         }
        1267.     }
        1268.  
        1269. /**    
        1270.      * Enables/disables strict highlighting. Default is off, calling this
        1271.      * method without parameters will turn it on. See documentation
        1272.      * for more details on strict mode and where to use it.
        1273.      *
        1274.      * @param boolean Whether to enable strict mode or not
        1275.      * @since 1.0.0
        1276.      */
        1277.     function enable_strict_mode($mode = true) {
        1278.         if (GESHI_MAYBE == $this->language_data['STRICT_MODE_APPLIES']) {
        1279.             $this->strict_mode = ($mode) ? GESHI_ALWAYS : GESHI_NEVER;
        1280.         }
        1281.     }
        1282.  
        1283. /**    
        1284.      * Disables all highlighting
        1285.      *
        1286.      * @since 1.0.0
        1287.      * @todo  Rewrite with array traversal
        1288.      * @deprecated In favour of enable_highlighting
        1289.      */
        1290.     function disable_highlighting() {
        1291.         $this->enable_highlighting(false);
        1292.     }
        1293.  
        1294. /**    
        1295.      * Enables all highlighting
        1296.      *
        1297.      * The optional flag parameter was added in version 1.0.7.21 and can be used
        1298.      * to enable (true) or disable (false) all highlighting.
        1299.      *
        1300.      * @since 1.0.0
        1301.      * @param boolean A flag specifying whether to enable or disable all highlighting
        1302.      * @todo  Rewrite with array traversal
        1303.      */
        1304.     function enable_highlighting($flag = true) {
        1305.         $flag = $flag ? true : false;
        1306.         foreach ($this->lexic_permissions as $key => $value) {
        1307.             if (is_array($value)) {
        1308.                 foreach ($value as $k => $v) {
        1309.                     $this->lexic_permissions[$key][$k] = $flag;
        1310.                 }
        1311.             } else {
        1312.                 $this->lexic_permissions[$key] = $flag;
        1313.             }
        1314.         }
        1315.  
        1316.         // Context blocks
        1317.         $this->enable_important_blocks = $flag;
        1318.     }
        1319.  
        1320. /**    
        1321.      * Given a file extension, this method returns either a valid geshi language
        1322.      * name, or the empty string if it couldn't be found
        1323.      *
        1324.      * @param string The extension to get a language name for
        1325.      * @param array  A lookup array to use instead of the default one
        1326.      * @since 1.0.5
        1327.      * @todo Re-think about how this method works (maybe make it private and/or make it
        1328.      *        a extension->lang lookup?)
        1329.      * @todo static?
        1330.      */
        1331.     function get_language_name_from_extension( $extension, $lookup = array() ) {
        1332.         if ( !is_array($lookup) || empty($lookup)) {
        1333.             $lookup = array(
        1334.                 'actionscript' => array('as'),
        1335.                 'ada' => array('a', 'ada', 'adb', 'ads'),
        1336.                 'apache' => array('conf'),
        1337.                 'asm' => array('ash', 'asm', 'inc'),
        1338.                 'asp' => array('asp'),
        1339.                 'bash' => array('sh'),
        1340.                 'bf' => array('bf'),
        1341.                 'c' => array('c', 'h'),
        1342.                 'c_mac' => array('c', 'h'),
        1343.                 'caddcl' => array(),
        1344.                 'cadlisp' => array(),
        1345.                 'cdfg' => array('cdfg'),
        1346.                 'cobol' => array('cbl'),
        1347.                 'cpp' => array('cpp', 'hpp', 'C', 'H', 'CPP', 'HPP'),
        1348.                 'csharp' => array('cs'),
        1349.                 'css' => array('css'),
        1350.                 'd' => array('d'),
        1351.                 'delphi' => array('dpk', 'dpr', 'pp', 'pas'),
        1352.                 'diff' => array('diff', 'patch'),
        1353.                 'dos' => array('bat', 'cmd'),
        1354.                 'gettext' => array('po', 'pot'),
        1355.                 'gml' => array('gml'),
        1356.                 'gnuplot' => array('plt'),
        1357.                 'groovy' => array('groovy'),
        1358.                 'haskell' => array('hs'),
        1359.                 'html4strict' => array('html', 'htm'),
        1360.                 'ini' => array('ini', 'desktop'),
        1361.                 'java' => array('java'),
        1362.                 'javascript' => array('js'),
        1363.                 'klonec' => array('kl1'),
        1364.                 'klonecpp' => array('klx'),
        1365.                 'latex' => array('tex'),
        1366.                 'lisp' => array('lisp'),
        1367.                 'lua' => array('lua'),
        1368.                 'matlab' => array('m'),
        1369.                 'mpasm' => array(),
        1370.                 'mysql' => array('sql'),
        1371.                 'nsis' => array(),
        1372.                 'objc' => array(),
        1373.                 'oobas' => array(),
        1374.                 'oracle8' => array(),
        1375.                 'oracle10' => array(),
        1376.                 'pascal' => array('pas'),
        1377.                 'perl' => array('pl', 'pm'),
        1378.                 'php' => array('php', 'php5', 'phtml', 'phps'),
        1379.                 'povray' => array('pov'),
        1380.                 'providex' => array('pvc', 'pvx'),
        1381.                 'prolog' => array('pl'),
        1382.                 'python' => array('py'),
        1383.                 'qbasic' => array('bi'),
        1384.                 'reg' => array('reg'),
        1385.                 'ruby' => array('rb'),
        1386.                 'sas' => array('sas'),
        1387.                 'scala' => array('scala'),
        1388.                 'scheme' => array('scm'),
        1389.                 'scilab' => array('sci'),
        1390.                 'smalltalk' => array('st'),
        1391.                 'smarty' => array(),
        1392.                 'tcl' => array('tcl'),
        1393.                 'vb' => array('bas'),
        1394.                 'vbnet' => array(),
        1395.                 'visualfoxpro' => array(),
        1396.                 'whitespace' => array('ws'),
        1397.                 'xml' => array('xml', 'svg'),
        1398.                 'z80' => array('z80', 'asm', 'inc')
        1399.             );
        1400.         }
        1401.  
        1402.         foreach ($lookup as $lang => $extensions) {
        1403.             if (in_array($extension, $extensions)) {
        1404.                 return $lang;
        1405.             }
        1406.         }
        1407.         return '';
        1408.     }
        1409.  
        1410. /**    
        1411.      * Given a file name, this method loads its contents in, and attempts
        1412.      * to set the language automatically. An optional lookup table can be
        1413.      * passed for looking up the language name. If not specified a default
        1414.      * table is used
        1415.      *
        1416.      * The language table is in the form
        1417.      * <pre>array(
        1418.      *   'lang_name' => array('extension', 'extension', ...),
        1419.      *   'lang_name' ...
        1420.      * );</pre>
        1421.      *
        1422.      * @param string The filename to load the source from
        1423.      * @param array  A lookup array to use instead of the default one
        1424.      * @todo Complete rethink of this and above method
        1425.      * @since 1.0.5
        1426.      */
        1427.     function load_from_file($file_name, $lookup = array()) {
        1428.         if (is_readable($file_name)) {
        1429.             $this->set_source(file_get_contents($file_name));
        1430.             $this->set_language($this->get_language_name_from_extension(substr(strrchr($file_name, '.'), 1), $lookup));
        1431.         } else {
        1432.             $this->error = GESHI_ERROR_FILE_NOT_READABLE;
        1433.         }
        1434.     }
        1435.  
        1436. /**    
        1437.      * Adds a keyword to a keyword group for highlighting
        1438.      *
        1439.      * @param int    The key of the keyword group to add the keyword to
        1440.      * @param string The word to add to the keyword group
        1441.      * @since 1.0.0
        1442.      */
        1443.     function add_keyword($key, $word) {
        1444.         if (!in_array($word, $this->language_data['KEYWORDS'][$key])) {
        1445.             $this->language_data['KEYWORDS'][$key][] = $word;
        1446.  
        1447.             //NEW in 1.0.8 don't recompile the whole optimized regexp, simply append it
        1448.             if ($this->parse_cache_built) {
        1449.                 $subkey = count($this->language_data['CACHED_KEYWORD_LISTS'][$key]) - 1;
        1450.                 $this->language_data['CACHED_KEYWORD_LISTS'][$key][$subkey] .= '|' . preg_quote($word, '/');
        1451.             }
        1452.         }
        1453.     }
        1454.  
        1455. /**    
        1456.      * Removes a keyword from a keyword group
        1457.      *
        1458.      * @param int    The key of the keyword group to remove the keyword from
        1459.      * @param string The word to remove from the keyword group
        1460.      * @param bool   Wether to automatically recompile the optimized regexp list or not.
        1461.      *                Note: if you set this to false and @see GeSHi->parse_code() was already called once,
        1462.      *                for the current language, you have to manually call @see GeSHi->optimize_keyword_group()
        1463.      *                or the removed keyword will stay in cache and still be highlighted! On the other hand
        1464.      *                it might be too expensive to recompile the regexp list for every removal if you want to
        1465.      *                remove a lot of keywords.
        1466.      * @since 1.0.0
        1467.      */
        1468.     function remove_keyword($key, $word, $recompile = true) {
        1469.         $key_to_remove = array_search($word, $this->language_data['KEYWORDS'][$key]);
        1470.         if ($key_to_remove !== false) {
        1471.             unset($this->language_data['KEYWORDS'][$key][$key_to_remove]);
        1472.  
        1473.             //NEW in 1.0.8, optionally recompile keyword group
        1474.             if ($recompile && $this->parse_cache_built) {
        1475.                 $this->optimize_keyword_group($key);
        1476.             }
        1477.         }
        1478.     }
        1479.  
        1480. /**    
        1481.      * Creates a new keyword group
        1482.      *
        1483.      * @param int    The key of the keyword group to create
        1484.      * @param string The styles for the keyword group
        1485.      * @param boolean Whether the keyword group is case sensitive ornot
        1486.      * @param array  The words to use for the keyword group
        1487.      * @since 1.0.0
        1488.      */
        1489.     function add_keyword_group($key, $styles, $case_sensitive = true, $words = array()) {
        1490.         $words = (array) $words;
        1491.         if  (empty($words)) {
        1492.             // empty word lists mess up highlighting
        1493.             return false;
        1494.         }
        1495.  
        1496.         //Add the new keyword group internally
        1497.         $this->language_data['KEYWORDS'][$key] = $words;
        1498.         $this->lexic_permissions['KEYWORDS'][$key] = true;
        1499.         $this->language_data['CASE_SENSITIVE'][$key] = $case_sensitive;
        1500.         $this->language_data['STYLES']['KEYWORDS'][$key] = $styles;
        1501.  
        1502.         //NEW in 1.0.8, cache keyword regexp
        1503.         if ($this->parse_cache_built) {
        1504.             $this->optimize_keyword_group($key);
        1505.         }
        1506.     }
        1507.  
        1508. /**    
        1509.      * Removes a keyword group
        1510.      *
        1511.      * @param int    The key of the keyword group to remove
        1512.      * @since 1.0.0
        1513.      */
        1514.     function remove_keyword_group ($key) {
        1515.         //Remove the keyword group internally
        1516.         unset($this->language_data['KEYWORDS'][$key]);
        1517.         unset($this->lexic_permissions['KEYWORDS'][$key]);
        1518.         unset($this->language_data['CASE_SENSITIVE'][$key]);
        1519.         unset($this->language_data['STYLES']['KEYWORDS'][$key]);
        1520.  
        1521.         //NEW in 1.0.8
        1522.         unset($this->language_data['CACHED_KEYWORD_LISTS'][$key]);
        1523.     }
        1524.  
        1525. /**    
        1526.      * compile optimized regexp list for keyword group
        1527.      *
        1528.      * @param int   The key of the keyword group to compile & optimize
        1529.      * @since 1.0.8
        1530.      */
        1531.     function optimize_keyword_group($key) {
        1532.         $this->language_data['CACHED_KEYWORD_LISTS'][$key] =
        1533.             $this->optimize_regexp_list($this->language_data['KEYWORDS'][$key]);
        1534.     }
        1535.  
        1536. /**    
        1537.      * Sets the content of the header block
        1538.      *
        1539.      * @param string The content of the header block
        1540.      * @since 1.0.2
        1541.      */
        1542.     function set_header_content($content) {
        1543.         $this->header_content = $content;
        1544.     }
        1545.  
        1546. /**    
        1547.      * Sets the content of the footer block
        1548.      *
        1549.      * @param string The content of the footer block
        1550.      * @since 1.0.2
        1551.      */
        1552.     function set_footer_content($content) {
        1553.         $this->footer_content = $content;
        1554.     }
        1555.  
        1556. /**    
        1557.      * Sets the style for the header content
        1558.      *
        1559.      * @param string The style for the header content
        1560.      * @since 1.0.2
        1561.      */
        1562.     function set_header_content_style($style) {
        1563.         $this->header_content_style = $style;
        1564.     }
        1565.  
        1566. /**    
        1567.      * Sets the style for the footer content
        1568.      *
        1569.      * @param string The style for the footer content
        1570.      * @since 1.0.2
        1571.      */
        1572.     function set_footer_content_style($style) {
        1573.         $this->footer_content_style = $style;
        1574.     }
        1575.  
        1576. /**    
        1577.      * Sets whether to force a surrounding block around
        1578.      * the highlighted code or not
        1579.      *
        1580.      * @param boolean Tells whether to enable or disable this feature
        1581.      * @since 1.0.7.20
        1582.      */
        1583.     function enable_inner_code_block($flag) {
        1584.         $this->force_code_block = (bool)$flag;
        1585.     }
        1586.  
        1587. /**    
        1588.      * Sets the base URL to be used for keywords
        1589.      *
        1590.      * @param int The key of the keyword group to set the URL for
        1591.      * @param string The URL to set for the group. If {FNAME} is in
        1592.      *                the url somewhere, it is replaced by the keyword
        1593.      *                that the URL is being made for
        1594.      * @since 1.0.2
        1595.      */
        1596.     function set_url_for_keyword_group($group, $url) {
        1597.         $this->language_data['URLS'][$group] = $url;
        1598.     }
        1599.  
        1600. /**    
        1601.      * Sets styles for links in code
        1602.      *
        1603.      * @param int A constant that specifies what state the style is being
        1604.      *             set for - e.g. :hover or :visited
        1605.      * @param string The styles to use for that state
        1606.      * @since 1.0.2
        1607.      */
        1608.     function set_link_styles($type, $styles) {
        1609.         $this->link_styles[$type] = $styles;
        1610.     }
        1611.  
        1612. /**    
        1613.      * Sets the target for links in code
        1614.      *
        1615.      * @param string The target for links in the code, e.g. _blank
        1616.      * @since 1.0.3
        1617.      */
        1618.     function set_link_target($target) {
        1619.         if (!$target) {
        1620.             $this->link_target = '';
        1621.         } else {
        1622.             $this->link_target = ' target="' . $target . '" ';
        1623.         }
        1624.     }
        1625.  
        1626. /**    
        1627.      * Sets styles for important parts of the code
        1628.      *
        1629.      * @param string The styles to use on important parts of the code
        1630.      * @since 1.0.2
        1631.      */
        1632.     function set_important_styles($styles) {
        1633.         $this->important_styles = $styles;
        1634.     }
        1635.  
        1636. /**    
        1637.      * Sets whether context-important blocks are highlighted
        1638.      *
        1639.      * @param boolean Tells whether to enable or disable highlighting of important blocks
        1640.      * @todo REMOVE THIS SHIZ FROM GESHI!
        1641.      * @deprecated
        1642.      * @since 1.0.2
        1643.      */
        1644.     function enable_important_blocks($flag) {
        1645.         $this->enable_important_blocks = ( $flag ) ? true : false;
        1646.     }
        1647.  
        1648. /**    
        1649.      * Whether CSS IDs should be added to each line
        1650.      *
        1651.      * @param boolean If true, IDs will be added to each line.
        1652.      * @since 1.0.2
        1653.      */
        1654.     function enable_ids($flag = true) {
        1655.         $this->add_ids = ($flag) ? true : false;
        1656.     }
        1657.  
        1658. /**    
        1659.      * Specifies which lines to highlight extra
        1660.      *
        1661.      * The extra style parameter was added in 1.0.7.21.
        1662.      *
        1663.      * @param mixed An array of line numbers to highlight, or just a line
        1664.      *               number on its own.
        1665.      * @param string A string specifying the style to use for this line.
        1666.      *               If null is specified, the default style is used.
        1667.      *               If false is specified, the line will be removed from
        1668.      *               special highlighting
        1669.      * @since 1.0.2
        1670.      * @todo  Some data replication here that could be cut down on
        1671.      */
        1672.     function highlight_lines_extra($lines, $style = null) {
        1673.         if (is_array($lines)) {
        1674.             //Split up the job using single lines at a time
        1675.             foreach ($lines as $line) {
        1676.                 $this->highlight_lines_extra($line, $style);
        1677.             }
        1678.         } else {
        1679.             //Mark the line as being highlighted specially
        1680.             $lines = intval($lines);
        1681.             $this->highlight_extra_lines[$lines] = $lines;
        1682.  
        1683.             //Decide on which style to use
        1684.             if ($style === null) { //Check if we should use default style
        1685.                 unset($this->highlight_extra_lines_styles[$lines]);
        1686.             } else if ($style === false) { //Check if to remove this line
        1687.                 unset($this->highlight_extra_lines[$lines]);
        1688.                 unset($this->highlight_extra_lines_styles[$lines]);
        1689.             } else {
        1690.                 $this->highlight_extra_lines_styles[$lines] = $style;
        1691.             }
        1692.         }
        1693.     }
        1694.  
        1695. /**    
        1696.      * Sets the style for extra-highlighted lines
        1697.      *
        1698.      * @param string The style for extra-highlighted lines
        1699.      * @since 1.0.2
        1700.      */
        1701.     function set_highlight_lines_extra_style($styles) {
        1702.         $this->highlight_extra_lines_style = $styles;
        1703.     }
        1704.  
        1705. /**    
        1706.      * Sets the line-ending
        1707.      *
        1708.      * @param string The new line-ending
        1709.      * @since 1.0.2
        1710.      */
        1711.     function set_line_ending($line_ending) {
        1712.         $this->line_ending = (string)$line_ending;
        1713.     }
        1714.  
        1715. /**    
        1716.      * Sets what number line numbers should start at. Should
        1717.      * be a positive integer, and will be converted to one.
        1718.      *
        1719.      * <b>Warning:</b> Using this method will add the "start"
        1720.      * attribute to the &lt;ol&gt; that is used for line numbering.
        1721.      * This is <b>not</b> valid XHTML strict, so if that's what you
        1722.      * care about then don't use this method. Firefox is getting
        1723.      * support for the CSS method of doing this in 1.1 and Opera
        1724.      * has support for the CSS method, but (of course) IE doesn't
        1725.      * so it's not worth doing it the CSS way yet.
        1726.      *
        1727.      * @param int The number to start line numbers at
        1728.      * @since 1.0.2
        1729.      */
        1730.     function start_line_numbers_at($number) {
        1731.         $this->line_numbers_start = abs(intval($number));
        1732.     }
        1733.  
        1734. /**    
        1735.      * Sets the encoding used for htmlspecialchars(), for international
        1736.      * support.
        1737.      *
        1738.      * NOTE: This is not needed for now because htmlspecialchars() is not
        1739.      * being used (it has a security hole in PHP4 that has not been patched).
        1740.      * Maybe in a future version it may make a return for speed reasons, but
        1741.      * I doubt it.
        1742.      *
        1743.      * @param string The encoding to use for the source
        1744.      * @since 1.0.3
        1745.      */
        1746.     function set_encoding($encoding) {
        1747.         if ($encoding) {
        1748.           $this->encoding = strtolower($encoding);
        1749.         }
        1750.     }
        1751.  
        1752. /**    
        1753.      * Turns linking of keywords on or off.
        1754.      *
        1755.      * @param boolean If true, links will be added to keywords
        1756.      * @since 1.0.2
        1757.      */
        1758.     function enable_keyword_links($enable = true) {
        1759.         $this->keyword_links = (bool) $enable;
        1760.     }
        1761.  
        1762. /**    
        1763.      * Setup caches needed for styling. This is automatically called in
        1764.      * parse_code() and get_stylesheet() when appropriate. This function helps
        1765.      * stylesheet generators as they rely on some style information being
        1766.      * preprocessed
        1767.      *
        1768.      * @since 1.0.8
        1769.      * @access private
        1770.      */
        1771.     function build_style_cache() {
        1772.         //Build the style cache needed to highlight numbers appropriate
        1773.         if($this->lexic_permissions['NUMBERS']) {
        1774.             //First check what way highlighting information for numbers are given
        1775.             if(!isset($this->language_data['NUMBERS'])) {
        1776.                 $this->language_data['NUMBERS'] = 0;
        1777.             }
        1778.  
        1779.             if(is_array($this->language_data['NUMBERS'])) {
        1780.                 $this->language_data['NUMBERS_CACHE'] = $this->language_data['NUMBERS'];
        1781.             } else {
        1782.                 $this->language_data['NUMBERS_CACHE'] = array();
        1783.                 if(!$this->language_data['NUMBERS']) {
        1784.                     $this->language_data['NUMBERS'] =
        1785.                         GESHI_NUMBER_INT_BASIC |
        1786.                         GESHI_NUMBER_FLT_NONSCI;
        1787.                 }
        1788.  
        1789.                 for($i = 0, $j = $this->language_data['NUMBERS']; $j > 0; ++$i, $j>>=1) {
        1790.                     //Rearrange style indices if required ...
        1791.                     if(isset($this->language_data['STYLES']['NUMBERS'][1<<$i])) {
        1792.                         $this->language_data['STYLES']['NUMBERS'][$i] =
        1793.                             $this->language_data['STYLES']['NUMBERS'][1<<$i];
        1794.                         unset($this->language_data['STYLES']['NUMBERS'][1<<$i]);
        1795.                     }
        1796.  
        1797.                     //Check if this bit is set for highlighting
        1798.                     if($j&1) {
        1799.                         //So this bit is set ...
        1800.                         //Check if it belongs to group 0 or the actual stylegroup
        1801.                         if(isset($this->language_data['STYLES']['NUMBERS'][$i])) {
        1802.                             $this->language_data['NUMBERS_CACHE'][$i] = 1 << $i;
        1803.                         } else {
        1804.                             if(!isset($this->language_data['NUMBERS_CACHE'][0])) {
        1805.                                 $this->language_data['NUMBERS_CACHE'][0] = 0;
        1806.                             }
        1807.                             $this->language_data['NUMBERS_CACHE'][0] |= 1 << $i;
        1808.                         }
        1809.                     }
        1810.                 }
        1811.             }
        1812.         }
        1813.     }
        1814.  
        1815. /**    
        1816.      * Setup caches needed for parsing. This is automatically called in parse_code() when appropriate.
        1817.      * This function makes stylesheet generators much faster as they do not need these caches.
        1818.      *
        1819.      * @since 1.0.8
        1820.      * @access private
        1821.      */
        1822.     function build_parse_cache() {
        1823.         // cache symbol regexp
        1824.         //As this is a costy operation, we avoid doing it for multiple groups ...
        1825.         //Instead we perform it for all symbols at once.
        1826.         //
        1827.         //For this to work, we need to reorganize the data arrays.
        1828.         if ($this->lexic_permissions['SYMBOLS'] && !empty($this->language_data['SYMBOLS'])) {
        1829.             $this->language_data['MULTIPLE_SYMBOL_GROUPS'] = count($this->language_data['STYLES']['SYMBOLS']) > 1;
        1830.  
        1831.             $this->language_data['SYMBOL_DATA'] = array();
        1832.             $symbol_preg_multi = array(); // multi char symbols
        1833.             $symbol_preg_single = array(); // single char symbols
        1834.             foreach ($this->language_data['SYMBOLS'] as $key => $symbols) {
        1835.                 if (is_array($symbols)) {
        1836.                     foreach ($symbols as $sym) {
        1837.                         $sym = $this->hsc($sym);
        1838.                         if (!isset($this->language_data['SYMBOL_DATA'][$sym])) {
        1839.                             $this->language_data['SYMBOL_DATA'][$sym] = $key;
        1840.                             if (isset($sym[1])) { // multiple chars
        1841.                                 $symbol_preg_multi[] = preg_quote($sym, '/');
        1842.                             } else { // single char
        1843.                                 if ($sym == '-') {
        1844.                                     // don't trigger range out of order error
        1845.                                     $symbol_preg_single[] = '\-';
        1846.                                 } else {
        1847.                                     $symbol_preg_single[] = preg_quote($sym, '/');
        1848.                                 }
        1849.                             }
        1850.                         }
        1851.                     }
        1852.                 } else {
        1853.                     $symbols = $this->hsc($symbols);
        1854.                     if (!isset($this->language_data['SYMBOL_DATA'][$symbols])) {
        1855.                         $this->language_data['SYMBOL_DATA'][$symbols] = 0;
        1856.                         if (isset($symbols[1])) { // multiple chars
        1857.                             $symbol_preg_multi[] = preg_quote($symbols, '/');
        1858.                         } else if ($symbols == '-') {
        1859.                             // don't trigger range out of order error
        1860.                             $symbol_preg_single[] = '\-';
        1861.                         } else { // single char
        1862.                             $symbol_preg_single[] = preg_quote($symbols, '/');
        1863.                         }
        1864.                     }
        1865.                 }
        1866.             }
        1867.  
        1868.             //Now we have an array with each possible symbol as the key and the style as the actual data.
        1869.             //This way we can set the correct style just the moment we highlight ...
        1870.             //
        1871.             //Now we need to rewrite our array to get a search string that
        1872.             $symbol_preg = array();
        1873.             if (!empty($symbol_preg_multi)) {
        1874.                 rsort($symbol_preg_multi);
        1875.                 $symbol_preg[] = implode('|', $symbol_preg_multi);
        1876.             }
        1877.             if (!empty($symbol_preg_single)) {
        1878.                 rsort($symbol_preg_single);
        1879.                 $symbol_preg[] = '[' . implode('', $symbol_preg_single) . ']';
        1880.             }
        1881.             $this->language_data['SYMBOL_SEARCH'] = implode("|", $symbol_preg);
        1882.         }
        1883.  
        1884.         // cache optimized regexp for keyword matching
        1885.         // remove old cache
        1886.         $this->language_data['CACHED_KEYWORD_LISTS'] = array();
        1887.         foreach (array_keys($this->language_data['KEYWORDS']) as $key) {
        1888.             if (!isset($this->lexic_permissions['KEYWORDS'][$key]) ||
        1889.                     $this->lexic_permissions['KEYWORDS'][$key]) {
        1890.                 $this->optimize_keyword_group($key);
        1891.             }
        1892.         }
        1893.  
        1894.         // brackets
        1895.         if ($this->lexic_permissions['BRACKETS']) {
        1896.             $this->language_data['CACHE_BRACKET_MATCH'] = array('[', ']', '(', ')', '{', '}');
        1897.             if (!$this->use_classes && isset($this->language_data['STYLES']['BRACKETS'][0])) {
        1898.                 $this->language_data['CACHE_BRACKET_REPLACE'] = array(
        1899.                     '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">&#91;|>',
        1900.                     '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">&#93;|>',
        1901.                     '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">&#40;|>',
        1902.                     '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">&#41;|>',
        1903.                     '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">&#123;|>',
        1904.                     '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">&#125;|>',
        1905.                 );
        1906.             }
        1907.             else {
        1908.                 $this->language_data['CACHE_BRACKET_REPLACE'] = array(
        1909.                     '<| class="br0">&#91;|>',
        1910.                     '<| class="br0">&#93;|>',
        1911.                     '<| class="br0">&#40;|>',
        1912.                     '<| class="br0">&#41;|>',
        1913.                     '<| class="br0">&#123;|>',
        1914.                     '<| class="br0">&#125;|>',
        1915.                 );
        1916.             }
        1917.         }
        1918.  
        1919.         //Build the parse cache needed to highlight numbers appropriate
        1920.         if($this->lexic_permissions['NUMBERS']) {
        1921.             //Check if the style rearrangements have been processed ...
        1922.             //This also does some preprocessing to check which style groups are useable ...
        1923.             if(!isset($this->language_data['NUMBERS_CACHE'])) {
        1924.                 $this->build_style_cache();
        1925.             }
        1926.  
        1927.             //Number format specification
        1928.             //All this formats are matched case-insensitively!
        1929.             static $numbers_format = array(
        1930.                 GESHI_NUMBER_INT_BASIC =>
        1931.                     '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)(?![0-9a-z\.])',
        1932.                 GESHI_NUMBER_INT_CSTYLE =>
        1933.                     '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)l(?![0-9a-z\.])',
        1934.                 GESHI_NUMBER_BIN_SUFFIX =>
        1935.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[01]+?b(?![0-9a-z\.])',
        1936.                 GESHI_NUMBER_BIN_PREFIX_PERCENT =>
        1937.                     '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])%[01]+?(?![0-9a-z\.])',
        1938.                 GESHI_NUMBER_BIN_PREFIX_0B =>
        1939.                     '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])0b[01]+?(?![0-9a-z\.])',
        1940.                 GESHI_NUMBER_OCT_PREFIX =>
        1941.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0[0-7]+?(?![0-9a-z\.])',
        1942.                 GESHI_NUMBER_OCT_SUFFIX =>
        1943.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[0-7]+?o(?![0-9a-z\.])',
        1944.                 GESHI_NUMBER_HEX_PREFIX =>
        1945.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0x[0-9a-f]+?(?![0-9a-z\.])',
        1946.                 GESHI_NUMBER_HEX_SUFFIX =>
        1947.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d[0-9a-f]*?h(?![0-9a-z\.])',
        1948.                 GESHI_NUMBER_FLT_NONSCI =>
        1949.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d+?\.\d+?(?![0-9a-z\.])',
        1950.                 GESHI_NUMBER_FLT_NONSCI_F =>
        1951.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)f(?![0-9a-z\.])',
        1952.                 GESHI_NUMBER_FLT_SCI_SHORT =>
        1953.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\.\d+?(?:e[+\-]?\d+?)?(?![0-9a-z\.])',
        1954.                 GESHI_NUMBER_FLT_SCI_ZERO =>
        1955.                     '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)(?:e[+\-]?\d+?)?(?![0-9a-z\.])'
        1956.                 );
        1957.  
        1958.             //At this step we have an associative array with flag groups for a
        1959.             //specific style or an string denoting a regexp given its index.
        1960.             $this->language_data['NUMBERS_RXCACHE'] = array();
        1961.             foreach($this->language_data['NUMBERS_CACHE'] as $key => $rxdata) {
        1962.                 if(is_string($rxdata)) {
        1963.                     $regexp = $rxdata;
        1964.                 } else {
        1965.                     //This is a bitfield of number flags to highlight:
        1966.                     //Build an array, implode them together and make this the actual RX
        1967.                     $rxuse = array();
        1968.                     for($i = 1; $i <= $rxdata; $i<<=1) {
        1969.                         if($rxdata & $i) {
        1970.                             $rxuse[] = $numbers_format[$i];
        1971.                         }
        1972.                     }
        1973.                     $regexp = implode("|", $rxuse);
        1974.                 }
        1975.  
        1976.                 $this->language_data['NUMBERS_RXCACHE'][$key] =
        1977.                     "/(?<!<\|\/NUM!)(?<!\d\/>)($regexp)(?!\|>)/i";
        1978.             }
        1979.         }
        1980.  
        1981.         $this->parse_cache_built = true;
        1982.     }
        1983.  
        1984.     /**
        1985.      * Returns the code in $this->source, highlighted and surrounded by the
        1986.      * nessecary HTML.
        1987.      *
        1988.      * This should only be called ONCE, cos it's SLOW! If you want to highlight
        1989.      * the same source multiple times, you're better off doing a whole lot of
        1990.      * str_replaces to replace the &lt;span&gt;s
        1991.      *
        1992.      * @since 1.0.0
        1993.      */
        1994.     function parse_code () {
        1995.         // Start the timer
        1996.         $start_time = microtime();
        1997.  
        1998.         // Firstly, if there is an error, we won't highlight
        1999.         if ($this->error) {
        2000.             //Escape the source for output
        2001.             $result = $this->hsc($this->source);
        2002.  
        2003.             //This fix is related to SF#1923020, but has to be applied regardless of
        2004.             //actually highlighting symbols.
        2005.             $result = str_replace(array('<SEMI>', '<PIPE>'), array(';', '|'), $result);
        2006.  
        2007.             // Timing is irrelevant
        2008.             $this->set_time($start_time, $start_time);
        2009.             $this->finalise($result);
        2010.             return $result;
        2011.         }
        2012.  
        2013.         // make sure the parse cache is up2date
        2014.         if (!$this->parse_cache_built) {
        2015.             $this->build_parse_cache();
        2016.         }
        2017.  
        2018.         // Replace all newlines to a common form.
        2019.         $code = str_replace("\r\n", "\n", $this->source);
        2020.         $code = str_replace("\r", "\n", $code);
        2021.  
        2022.         // Add spaces for regular expression matching and line numbers
        2023. //        $code = "\n" . $code . "\n";
        2024.         // Initialise various stuff
        2025.         $length           = strlen($code);
        2026.         $COMMENT_MATCHED  = false;
        2027.         $stuff_to_parse   = '';
        2028.         $endresult        = '';
        2029.  
        2030.         // "Important" selections are handled like multiline comments
        2031.         // @todo GET RID OF THIS SHIZ
        2032.         if ($this->enable_important_blocks) {
        2033.             $this->language_data['COMMENT_MULTI'][<a href="../geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a>] = <a href="../geshi/core/_geshi.php.html#defineGESHI_END_IMPORTANT">GESHI_END_IMPORTANT</a>;
        2034.         }
        2035.  
        2036.         if ($this->strict_mode) {
        2037.             // Break the source into bits. Each bit will be a portion of the code
        2038.             // within script delimiters - for example, HTML between < and >
        2039.             $k = 0;
        2040.             $parts = array();
        2041.             $matches = array();
        2042.             $next_match_pointer = null;
        2043.             // we use a copy to unset delimiters on demand (when they are not found)
        2044.             $delim_copy = $this->language_data['SCRIPT_DELIMITERS'];
        2045.             $i = 0;
        2046.             while ($i < $length) {
        2047.                 $next_match_pos = $length + 1; // never true
        2048.                 foreach ($delim_copy as $dk => $delimiters) {
        2049.                     if(is_array($delimiters)) {
        2050.                         foreach ($delimiters as $open => $close) {
        2051.                             // make sure the cache is setup properly
        2052.                             if (!isset($matches[$dk][$open])) {
        2053.                                 $matches[$dk][$open] = array(
        2054.                                     'next_match' => -1,
        2055.                                     'dk' => $dk,
        2056.  
        2057.                                     'open' => $open, // needed for grouping of adjacent code blocks (see below)
        2058.                                     'open_strlen' => strlen($open),
        2059.  
        2060.                                     'close' => $close,
        2061.                                     'close_strlen' => strlen($close),
        2062.                                 );
        2063.                             }
        2064.                             // Get the next little bit for this opening string
        2065.                             if ($matches[$dk][$open]['next_match'] < $i) {
        2066.                                 // only find the next pos if it was not already cached
        2067.                                 $open_pos = strpos($code, $open, $i);
        2068.                                 if ($open_pos === false) {
        2069.                                     // no match for this delimiter ever
        2070.                                     unset($delim_copy[$dk][$open]);
        2071.                                     continue;
        2072.                                 }
        2073.                                 $matches[$dk][$open]['next_match'] = $open_pos;
        2074.                             }
        2075.                             if ($matches[$dk][$open]['next_match'] < $next_match_pos) {
        2076.                                 //So we got a new match, update the close_pos
        2077.                                 $matches[$dk][$open]['close_pos'] =
        2078.                                     strpos($code, $close, $matches[$dk][$open]['next_match']+1);
        2079.  
        2080.                                 $next_match_pointer =& $matches[$dk][$open];
        2081.                                 $next_match_pos = $matches[$dk][$open]['next_match'];
        2082.                             }
        2083.                         }
        2084.                     } else {
        2085.                         //So we should match an RegExp as Strict Block ...
        2086. /**                        
        2087.                          * The value in $delimiters is expected to be an RegExp
        2088.                          * containing exactly 2 matching groups:
        2089.                          *  - Group 1 is the opener
        2090.                          *  - Group 2 is the closer
        2091.                          */
        2092.                         if(!GESHI_PHP_PRE_433 && //Needs proper rewrite to work with PHP >=4.3.0; 4.3.3 is guaranteed to work.
        2093.                             preg_match($delimiters, $code, $matches_rx, PREG_OFFSET_CAPTURE, $i)) {
        2094.                             //We got a match ...
        2095.                             $matches[$dk] = array(
        2096.                                 'next_match' => $matches_rx[1][1],
        2097.                                 'dk' => $dk,
        2098.  
        2099.                                 'close_strlen' => strlen($matches_rx[2][0]),
        2100.                                 'close_pos' => $matches_rx[2][1],
        2101.                                 );
        2102.                         } else {
        2103.                             // no match for this delimiter ever
        2104.                             unset($delim_copy[$dk]);
        2105.                             continue;
        2106.                         }
        2107.  
        2108.                         if ($matches[$dk]['next_match'] <= $next_match_pos) {
        2109.                             $next_match_pointer =& $matches[$dk];
        2110.                             $next_match_pos = $matches[$dk]['next_match'];
        2111.                         }
        2112.                     }
        2113.                 }
        2114.                 // non-highlightable text
        2115.                 $parts[$k] = array(
        2116.                     1 => substr($code, $i, $next_match_pos - $i)
        2117.                 );
        2118.                 ++$k;
        2119.  
        2120.                 if ($next_match_pos > $length) {
        2121.                     // out of bounds means no next match was found
        2122.                     break;
        2123.                 }
        2124.  
        2125.                 // highlightable code
        2126.                 $parts[$k][0] = $next_match_pointer['dk'];
        2127.  
        2128.                 //Only combine for non-rx script blocks
        2129.                 if(is_array($delim_copy[$next_match_pointer['dk']])) {
        2130.                     // group adjacent script blocks, e.g. <foobar><asdf> should be one block, not three!
        2131.                     $i = $next_match_pos + $next_match_pointer['open_strlen'];
        2132.                     while (true) {
        2133.                         $close_pos = strpos($code, $next_match_pointer['close'], $i);
        2134.                         if ($close_pos == false) {
        2135.                             break;
        2136.                         }
        2137.                         $i = $close_pos + $next_match_pointer['close_strlen'];
        2138.                         if ($i == $length) {
        2139.                             break;
        2140.                         }
        2141.                         if ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 ||
        2142.                             substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])) {
        2143.                             // merge adjacent but make sure we don't merge things like <tag><!-- comment -->
        2144.                             foreach ($matches as $submatches) {
        2145.                                 foreach ($submatches as $match) {
        2146.                                     if ($match['next_match'] == $i) {
        2147.                                         // a different block already matches here!
        2148.                                         break 3;
        2149.                                     }
        2150.                                 }
        2151.                             }
        2152.                         } else {
        2153.                             break;
        2154.                         }
        2155.                     }
        2156.                 } else {
        2157.                     $close_pos = $next_match_pointer['close_pos'] + $next_match_pointer['close_strlen'];
        2158.                     $i = $close_pos;
        2159.                 }
        2160.  
        2161.                 if ($close_pos === false) {
        2162.                     // no closing delimiter found!
        2163.                     $parts[$k][1] = substr($code, $next_match_pos);
        2164.                     ++$k;
        2165.                     break;
        2166.                 } else {
        2167.                     $parts[$k][1] = substr($code, $next_match_pos, $i - $next_match_pos);
        2168.                     ++$k;
        2169.                 }
        2170.             }
        2171.             unset($delim_copy, $next_match_pointer, $next_match_pos, $matches);
        2172.             $num_parts = $k;
        2173.  
        2174.             if ($num_parts == 1 && $this->strict_mode == GESHI_MAYBE) {
        2175.                 // when we have only one part, we don't have anything to highlight at all.
        2176.                 // if we have a "maybe" strict language, this should be handled as highlightable code
        2177.                 $parts = array(
        2178.                     0 => array(
        2179.                         0 => '',
        2180.                         1 => ''
        2181.                     ),
        2182.                     1 => array(
        2183.                         0 => null,
        2184.                         1 => $parts[0][1]
        2185.                     )
        2186.                 );
        2187.                 $num_parts = 2;
        2188.             }
        2189.  
        2190.         } else {
        2191.             // Not strict mode - simply dump the source into
        2192.             // the array at index 1 (the first highlightable block)
        2193.             $parts = array(
        2194.                 0 => array(
        2195.                     0 => '',
        2196.                     1 => ''
        2197.                 ),
        2198.                 1 => array(
        2199.                     0 => null,
        2200.                     1 => $code
        2201.                 )
        2202.             );
        2203.             $num_parts = 2;
        2204.         }
        2205.  
        2206.         //Unset variables we won't need any longer
        2207.         unset($code);
        2208.  
        2209.         //Preload some repeatedly used values regarding hardquotes ...
        2210.         $hq = isset($this->language_data['HARDQUOTE']) ? $this->language_data['HARDQUOTE'][0] : false;
        2211.         $hq_strlen = strlen($hq);
        2212.  
        2213.         //Preload if line numbers are to be generated afterwards
        2214.         //Added a check if line breaks should be forced even without line numbers, fixes SF#1727398
        2215.         $check_linenumbers = $this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a> ||
        2216.             !empty($this->highlight_extra_lines) || !$this->allow_multiline_span;
        2217.  
        2218.         //preload the escape char for faster checking ...
        2219.         $escaped_escape_char = $this->hsc($this->language_data['ESCAPE_CHAR']);
        2220.  
        2221.         // this is used for single-line comments
        2222.         $sc_disallowed_before = "";
        2223.         $sc_disallowed_after = "";
        2224.  
        2225.         if (isset($this->language_data['PARSER_CONTROL'])) {
        2226.             if (isset($this->language_data['PARSER_CONTROL']['COMMENTS'])) {
        2227.                 if (isset($this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_BEFORE'])) {
        2228.                     $sc_disallowed_before = $this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_BEFORE'];
        2229.                 }
        2230.                 if (isset($this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_AFTER'])) {
        2231.                     $sc_disallowed_after = $this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_AFTER'];
        2232.                 }
        2233.             }
        2234.         }
        2235.  
        2236.         //Fix for SF#1932083: Multichar Quotemarks unsupported
        2237.         $is_string_starter = array();
        2238.         if ($this->lexic_permissions['STRINGS']) {
        2239.             foreach ($this->language_data['QUOTEMARKS'] as $quotemark) {
        2240.                 if (!isset($is_string_starter[$quotemark[0]])) {
        2241.                     $is_string_starter[$quotemark[0]] = (string)$quotemark;
        2242.                 } else if (is_string($is_string_starter[$quotemark[0]])) {
        2243.                     $is_string_starter[$quotemark[0]] = array(
        2244.                         $is_string_starter[$quotemark[0]],
        2245.                         $quotemark);
        2246.                 } else {
        2247.                     $is_string_starter[$quotemark[0]][] = $quotemark;
        2248.                 }
        2249.             }
        2250.         }
        2251.  
        2252.         // Now we go through each part. We know that even-indexed parts are
        2253.         // code that shouldn't be highlighted, and odd-indexed parts should
        2254.         // be highlighted
        2255.         for ($key = 0; $key < $num_parts; ++$key) {
        2256.             $STRICTATTRS = '';
        2257.  
        2258.             // If this block should be highlighted...
        2259.             if (!($key & 1)) {
        2260.                 // Else not a block to highlight
        2261.                 $endresult .= $this->hsc($parts[$key][1]);
        2262.                 unset($parts[$key]);
        2263.                 continue;
        2264.             }
        2265.  
        2266.             $result = '';
        2267.             $part = $parts[$key][1];
        2268.  
        2269.             $highlight_part = true;
        2270.             if ($this->strict_mode && !is_null($parts[$key][0])) {
        2271.                 // get the class key for this block of code
        2272.                 $script_key = $parts[$key][0];
        2273.                 $highlight_part = $this->language_data['HIGHLIGHT_STRICT_BLOCK'][$script_key];
        2274.                 if ($this->language_data['STYLES']['SCRIPT'][$script_key] != '' &&
        2275.                     $this->lexic_permissions['SCRIPT']) {
        2276.                     // Add a span element around the source to
        2277.                     // highlight the overall source block
        2278.                     if (!$this->use_classes &&
        2279.                         $this->language_data['STYLES']['SCRIPT'][$script_key] != '') {
        2280.                         $attributes = ' style="' . $this->language_data['STYLES']['SCRIPT'][$script_key] . '"';
        2281.                     } else {
        2282.                         $attributes = ' class="sc' . $script_key . '"';
        2283.                     }
        2284.                     $result .= "<span$attributes>";
        2285.                     $STRICTATTRS = $attributes;
        2286.                 }
        2287.             }
        2288.  
        2289.             if ($highlight_part) {
        2290.                 // Now, highlight the code in this block. This code
        2291.                 // is really the engine of GeSHi (along with the method
        2292.                 // parse_non_string_part).
        2293.                 // cache comment regexps incrementally
        2294.                 $next_comment_regexp_key = '';
        2295.                 $next_comment_regexp_pos = -1;
        2296.                 $next_comment_multi_pos = -1;
        2297.                 $next_comment_single_pos = -1;
        2298.                 $comment_regexp_cache_per_key = array();
        2299.                 $comment_multi_cache_per_key = array();
        2300.                 $comment_single_cache_per_key = array();
        2301.                 $next_open_comment_multi = '';
        2302.                 $next_comment_single_key = '';
        2303.                 $escape_regexp_cache_per_key = array();
        2304.                 $next_escape_regexp_key = '';
        2305.                 $next_escape_regexp_pos = -1;
        2306.  
        2307.                 $length = strlen($part);
        2308.                 for ($i = 0; $i < $length; ++$i) {
        2309.                     // Get the next char
        2310.                     $char = $part[$i];
        2311.                     $char_len = 1;
        2312.  
        2313.                     // update regexp comment cache if needed
        2314.                     if (isset($this->language_data['COMMENT_REGEXP']) && $next_comment_regexp_pos < $i) {
        2315.                         $next_comment_regexp_pos = $length;
        2316.                         foreach ($this->language_data['COMMENT_REGEXP'] as $comment_key => $regexp) {
        2317.                             $match_i = false;
        2318.                             if (isset($comment_regexp_cache_per_key[$comment_key]) &&
        2319.                                 ($comment_regexp_cache_per_key[$comment_key]['pos'] >= $i ||
        2320.                                  $comment_regexp_cache_per_key[$comment_key]['pos'] === false)) {
        2321.                                 // we have already matched something
        2322.                                 if ($comment_regexp_cache_per_key[$comment_key]['pos'] === false) {
        2323.                                     // this comment is never matched
        2324.                                     continue;
        2325.                                 }
        2326.                                 $match_i = $comment_regexp_cache_per_key[$comment_key]['pos'];
        2327.                             } else if (
        2328.                                 //This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible
        2329.                                 (GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $i), $match, PREG_OFFSET_CAPTURE)) ||
        2330.                                 (!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $i))
        2331.                                 ) {
        2332.                                 $match_i = $match[0][1];
        2333.                                 if (GESHI_PHP_PRE_433) {
        2334.                                     $match_i += $i;
        2335.                                 }
        2336.  
        2337.                                 $comment_regexp_cache_per_key[$comment_key] = array(
        2338.                                     'key' => $comment_key,
        2339.                                     'length' => strlen($match[0][0]),
        2340.                                     'pos' => $match_i
        2341.                                 );
        2342.                             } else {
        2343.                                 $comment_regexp_cache_per_key[$comment_key]['pos'] = false;
        2344.                                 continue;
        2345.                             }
        2346.  
        2347.                             if ($match_i !== false && $match_i < $next_comment_regexp_pos) {
        2348.                                 $next_comment_regexp_pos = $match_i;
        2349.                                 $next_comment_regexp_key = $comment_key;
        2350.                                 if ($match_i === $i) {
        2351.                                     break;
        2352.                                 }
        2353.                             }
        2354.                         }
        2355.                     }
        2356.  
        2357.                     $string_started = false;
        2358.  
        2359.                     if (isset($is_string_starter[$char])) {
        2360.                         // Possibly the start of a new string ...
        2361.                         //Check which starter it was ...
        2362.                         //Fix for SF#1932083: Multichar Quotemarks unsupported
        2363.                         if (is_array($is_string_starter[$char])) {
        2364.                             $char_new = '';
        2365.                             foreach ($is_string_starter[$char] as $testchar) {
        2366.                                 if ($testchar === substr($part, $i, strlen($testchar)) &&
        2367.                                     strlen($testchar) > strlen($char_new)) {
        2368.                                     $char_new = $testchar;
        2369.                                     $string_started = true;
        2370.                                 }
        2371.                             }
        2372.                             if ($string_started) {
        2373.                                 $char = $char_new;
        2374.                             }
        2375.                         } else {
        2376.                             $testchar = $is_string_starter[$char];
        2377.                             if ($testchar === substr($part, $i, strlen($testchar))) {
        2378.                                 $char = $testchar;
        2379.                                 $string_started = true;
        2380.                             }
        2381.                         }
        2382.                         $char_len = strlen($char);
        2383.                     }
        2384.  
        2385.                     if ($string_started && $i != $next_comment_regexp_pos) {
        2386.                         // Hand out the correct style information for this string
        2387.                         $string_key = array_search($char, $this->language_data['QUOTEMARKS']);
        2388.                         if (!isset($this->language_data['STYLES']['STRINGS'][$string_key]) ||
        2389.                             !isset($this->language_data['STYLES']['ESCAPE_CHAR'][$string_key])) {
        2390.                             $string_key = 0;
        2391.                         }
        2392.  
        2393.                         // parse the stuff before this
        2394.                         $result .= $this->parse_non_string_part($stuff_to_parse);
        2395.                         $stuff_to_parse = '';
        2396.  
        2397.                         if (!$this->use_classes) {
        2398.                             $string_attributes = ' style="' . $this->language_data['STYLES']['STRINGS'][$string_key] . '"';
        2399.                         } else {
        2400.                             $string_attributes = ' class="st'.$string_key.'"';
        2401.                         }
        2402.  
        2403.                         // now handle the string
        2404.                         $string = "<span$string_attributes>GeSHi::hsc($char);
        2405.                         $start = $i + $char_len;
        2406.                         $string_open = true;
        2407.  
        2408.                         if(empty($this->language_data['ESCAPE_REGEXP'])) {
        2409.                             $next_escape_regexp_pos = $length;
        2410.                         }
        2411.  
        2412.                         do {
        2413.                             //Get the regular ending pos ...
        2414.                             $close_pos = strpos($part, $char, $start);
        2415.                             if(false === $close_pos) {
        2416.                                 $close_pos = $length;
        2417.                             }
        2418.  
        2419.                             if($this->lexic_permissions['ESCAPE_CHAR']) {
        2420.                                 // update escape regexp cache if needed
        2421.                                 if (isset($this->language_data['ESCAPE_REGEXP']) && $next_escape_regexp_pos < $start) {
        2422.                                     $next_escape_regexp_pos = $length;
        2423.                                     foreach ($this->language_data['ESCAPE_REGEXP'] as $escape_key => $regexp) {
        2424.                                         $match_i = false;
        2425.                                         if (isset($escape_regexp_cache_per_key[$escape_key]) &&
        2426.                                             ($escape_regexp_cache_per_key[$escape_key]['pos'] >= $start ||
        2427.                                              $escape_regexp_cache_per_key[$escape_key]['pos'] === false)) {
        2428.                                             // we have already matched something
        2429.                                             if ($escape_regexp_cache_per_key[$escape_key]['pos'] === false) {
        2430.                                                 // this comment is never matched
        2431.                                                 continue;
        2432.                                             }
        2433.                                             $match_i = $escape_regexp_cache_per_key[$escape_key]['pos'];
        2434.                                         } else if (
        2435.                                             //This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible
        2436.                                             (GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $start), $match, PREG_OFFSET_CAPTURE)) ||
        2437.                                             (!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $start))
        2438.                                             ) {
        2439.                                             $match_i = $match[0][1];
        2440.                                             if (GESHI_PHP_PRE_433) {
        2441.                                                 $match_i += $start;
        2442.                                             }
        2443.  
        2444.                                             $escape_regexp_cache_per_key[$escape_key] = array(
        2445.                                                 'key' => $escape_key,
        2446.                                                 'length' => strlen($match[0][0]),
        2447.                                                 'pos' => $match_i
        2448.                                             );
        2449.                                         } else {
        2450.                                             $escape_regexp_cache_per_key[$escape_key]['pos'] = false;
        2451.                                             continue;
        2452.                                         }
        2453.  
        2454.                                         if ($match_i !== false && $match_i < $next_escape_regexp_pos) {
        2455.                                             $next_escape_regexp_pos = $match_i;
        2456.                                             $next_escape_regexp_key = $escape_key;
        2457.                                             if ($match_i === $start) {
        2458.                                                 break;
        2459.                                             }
        2460.                                         }
        2461.                                     }
        2462.                                 }
        2463.  
        2464.                                 //Find the next simple escape position
        2465.                                 if('' != $this->language_data['ESCAPE_CHAR']) {
        2466.                                     $simple_escape = strpos($part, $this->language_data['ESCAPE_CHAR'], $start);
        2467.                                     if(false === $simple_escape) {
        2468.                                         $simple_escape = $length;
        2469.                                     }
        2470.                                 } else {
        2471.                                     $simple_escape = $length;
        2472.                                 }
        2473.                             } else {
        2474.                                 $next_escape_regexp_pos = $length;
        2475.                                 $simple_escape = $length;
        2476.                             }
        2477.  
        2478.                             if($simple_escape < $next_escape_regexp_pos &&
        2479.                                 $simple_escape < $length &&
        2480.                                 $simple_escape < $close_pos) {
        2481.                                 //The nexxt escape sequence is a simple one ...
        2482.                                 $es_pos = $simple_escape;
        2483.  
        2484.                                 //Add the stuff not in the string yet ...
        2485.                                 $string .= $this->hsc(substr($part, $start, $es_pos - $start));
        2486.  
        2487.                                 //Get the style for this escaped char ...
        2488.                                 if (!$this->use_classes) {
        2489.                                     $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR'][0] . '"';
        2490.                                 } else {
        2491.                                     $escape_char_attributes = ' class="es0"';
        2492.                                 }
        2493.  
        2494.                                 //Add the style for the escape char ...
        2495.                                 $string .= "<span$escape_char_attributes>.
        2496.                                     GeSHi::hsc($this->language_data['ESCAPE_CHAR']);
        2497.  
        2498.                                 //Get the byte AFTER the ESCAPE_CHAR we just found
        2499.                                 $es_char = $part[$es_pos + 1];
        2500.                                 if ($es_char == "\n") {
        2501.                                     // don't put a newline around newlines
        2502.                                     $string .= "</span>\n";
        2503.                                     $start = $es_pos + 2;
        2504.                                 } else if (ord($es_char) >= 128) {
        2505.                                     //This is an non-ASCII char (UTF8 or single byte)
        2506.                                     //This code tries to work around SF#2037598 ...
        2507.                                     if(function_exists('mb_substr')) {
        2508.                                         $es_char_m = mb_substr(substr($part, $es_pos+1, 16), 0, 1, $this->encoding);
        2509.                                         $string .= $es_char_m . '</span>';
        2510.                                     } else if (!GESHI_PHP_PRE_433 && 'utf-8' == $this->encoding) {
        2511.                                         if(preg_match("/[\xC2-\xDF][\x80-\xBF]".
        2512.                                             "|\xE0[\xA0-\xBF][\x80-\xBF]".
        2513.                                             "|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}".
        2514.                                             "|\xED[\x80-\x9F][\x80-\xBF]".
        2515.                                             "|\xF0[\x90-\xBF][\x80-\xBF]{2}".
        2516.                                             "|[\xF1-\xF3][\x80-\xBF]{3}".
        2517.                                             "|\xF4[\x80-\x8F][\x80-\xBF]{2}/s",
        2518.                                             $part, $es_char_m, null, $es_pos + 1)) {
        2519.                                             $es_char_m = $es_char_m[0];
        2520.                                         } else {
        2521.                                             $es_char_m = $es_char;
        2522.                                         }
        2523.                                         $string .= $this->hsc($es_char_m) . '</span>';
        2524.                                     } else {
        2525.                                         $es_char_m = $this->hsc($es_char);
        2526.                                     }
        2527.                                     $start = $es_pos + strlen($es_char_m) + 1;
        2528.                                 } else {
        2529.                                     $string .= $this->hsc($es_char) . '</span>';
        2530.                                     $start = $es_pos + 2;
        2531.                                 }
        2532.                             } else if ($next_escape_regexp_pos < $length &&
        2533.                                 $next_escape_regexp_pos < $close_pos) {
        2534.                                 $es_pos = $next_escape_regexp_pos;
        2535.                                 //Add the stuff not in the string yet ...
        2536.                                 $string .= $this->hsc(substr($part, $start, $es_pos - $start));
        2537.  
        2538.                                 //Get the key and length of this match ...
        2539.                                 $escape = $escape_regexp_cache_per_key[$next_escape_regexp_key];
        2540.                                 $escape_str = substr($part, $es_pos, $escape['length']);
        2541.                                 $escape_key = $escape['key'];
        2542.  
        2543.                                 //Get the style for this escaped char ...
        2544.                                 if (!$this->use_classes) {
        2545.                                     $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR'][$escape_key] . '"';
        2546.                                 } else {
        2547.                                     $escape_char_attributes = ' class="es' . $escape_key . '"';
        2548.                                 }
        2549.  
        2550.                                 //Add the style for the escape char ...
        2551.                                 $string .= "<span$escape_char_attributes>.
        2552.                                     $this->hsc($escape_str) . '</span>';
        2553.  
        2554.                                 $start = $es_pos + $escape['length'];
        2555.                             } else {
        2556.                                 //Copy the remainder of the string ...
        2557.                                 $string .= $this->hsc(substr($part, $start, $close_pos - $start + $char_len)) . '</span>';
        2558.                                 $start = $close_pos + $char_len;
        2559.                                 $string_open = false;
        2560.                             }
        2561.                         } while($string_open);
        2562.  
        2563.                         if ($check_linenumbers) {
        2564.                             // Are line numbers used? If, we should end the string before
        2565.                             // the newline and begin it again (so when <li>s are put in the source
        2566.                             // remains XHTML compliant)
        2567.                             // note to self: This opens up possibility of config files specifying
        2568.                             // that languages can/cannot have multiline strings???
        2569.                             $string = str_replace("\n", "</span>\n<span$string_attributes>", $string);
        2570.                         }
        2571.  
        2572.                         $result .= $string;
        2573.                         $string = '';
        2574.                         $i = $start - 1;
        2575.                         continue;
        2576.                     } else if ($this->lexic_permissions['STRINGS'] && $hq && $hq[0] == $char &&
        2577.                         substr($part, $i, $hq_strlen) == $hq) {
        2578.                         // The start of a hard quoted string
        2579.                         if (!$this->use_classes) {
        2580.                             $string_attributes = ' style="' . $this->language_data['STYLES']['STRINGS']['HARD'] . '"';
        2581.                             $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR']['HARD'] . '"';
        2582.                         } else {
        2583.                             $string_attributes = ' class="st_h"';
        2584.                             $escape_char_attributes = ' class="es_h"';
        2585.                         }
        2586.                         // parse the stuff before this
        2587.                         $result .= $this->parse_non_string_part($stuff_to_parse);
        2588.                         $stuff_to_parse = '';
        2589.  
        2590.                         // now handle the string
        2591.                         $string = '';
        2592.  
        2593.                         // look for closing quote
        2594.                         $start = $i + $hq_strlen;
        2595.                         while ($close_pos = strpos($part, $this->language_data['HARDQUOTE'][1], $start)) {
        2596.                             $start = $close_pos + 1;
        2597.                             if ($this->lexic_permissions['ESCAPE_CHAR'] && $part[$close_pos - 1] == $this->language_data['ESCAPE_CHAR']) {
        2598.                                 // make sure this quote is not escaped
        2599.                                 foreach ($this->language_data['HARDESCAPE'] as $hardescape) {
        2600.                                     if (substr($part, $close_pos - 1, strlen($hardescape)) == $hardescape) {
        2601.                                         // check wether this quote is escaped or if it is something like '\\'
        2602.                                         $escape_char_pos = $close_pos - 1;
        2603.                                         while ($escape_char_pos > 0
        2604.                                                 && $part[$escape_char_pos - 1] == $this->language_data['ESCAPE_CHAR']) {
        2605.                                             --$escape_char_pos;
        2606.                                         }
        2607.                                         if (($close_pos - $escape_char_pos) & 1) {
        2608.                                             // uneven number of escape chars => this quote is escaped
        2609.                                             continue 2;
        2610.                                         }
        2611.                                     }
        2612.                                 }
        2613.                             }
        2614.  
        2615.                             // found closing quote
        2616.                             break;
        2617.                         }
        2618.  
        2619.                         //Found the closing delimiter?
        2620.                         if (!$close_pos) {
        2621.                             // span till the end of this $part when no closing delimiter is found
        2622.                             $close_pos = $length;
        2623.                         }
        2624.  
        2625.                         //Get the actual string
        2626.                         $string = substr($part, $i, $close_pos - $i + 1);
        2627.                         $i = $close_pos;
        2628.  
        2629.                         // handle escape chars and encode html chars
        2630.                         // (special because when we have escape chars within our string they may not be escaped)
        2631.                         if ($this->lexic_permissions['ESCAPE_CHAR'] && $this->language_data['ESCAPE_CHAR']) {
        2632.                             $start = 0;
        2633.                             $new_string = '';
        2634.                             while ($es_pos = strpos($string, $this->language_data['ESCAPE_CHAR'], $start)) {
        2635.                                 // hmtl escape stuff before
        2636.                                 $new_string .= $this->hsc(substr($string, $start, $es_pos - $start));
        2637.                                 // check if this is a hard escape
        2638.                                 foreach ($this->language_data['HARDESCAPE'] as $hardescape) {
        2639.                                     if (substr($string, $es_pos, strlen($hardescape)) == $hardescape) {
        2640.                                         // indeed, this is a hardescape
        2641.                                         $new_string .= "<span$escape_char_attributes>.
        2642.                                             $this->hsc($hardescape) . '</span>';
        2643.                                         $start = $es_pos + strlen($hardescape);
        2644.                                         continue 2;
        2645.                                     }
        2646.                                 }
        2647.                                 // not a hard escape, but a normal escape
        2648.                                 // they come in pairs of two
        2649.                                 $c = 0;
        2650.                                 while (isset($string[$es_pos + $c]) && isset($string[$es_pos + $c + 1])
        2651.                                     && $string[$es_pos + $c] == $this->language_data['ESCAPE_CHAR']
        2652.                                     && $string[$es_pos + $c + 1] == $this->language_data['ESCAPE_CHAR']) {
        2653.                                     $c += 2;
        2654.                                 }
        2655.                                 if ($c) {
        2656.                                     $new_string .= "<span$escape_char_attributes>.
        2657.                                         str_repeat($escaped_escape_char, $c) .
        2658.                                         '</span>';
        2659.                                     $start = $es_pos + $c;
        2660.                                 } else {
        2661.                                     // this is just a single lonely escape char...
        2662.                                     $new_string .= $escaped_escape_char;
        2663.                                     $start = $es_pos + 1;
        2664.                                 }
        2665.                             }
        2666.                             $string = $new_string . $this->hsc(substr($string, $start));
        2667.                         } else {
        2668.                             $string = $this->hsc($string);
        2669.                         }
        2670.  
        2671.                         if ($check_linenumbers) {
        2672.                             // Are line numbers used? If, we should end the string before
        2673.                             // the newline and begin it again (so when <li>s are put in the source
        2674.                             // remains XHTML compliant)
        2675.                             // note to self: This opens up possibility of config files specifying
        2676.                             // that languages can/cannot have multiline strings???
        2677.                             $string = str_replace("\n", "</span>\n<span$string_attributes>", $string);
        2678.                         }
        2679.  
        2680.                         $result .= "<span$string_attributes>$string . '</span>';
        2681.                         $string = '';
        2682.                         continue;
        2683.                     } else {
        2684.                         //Have a look for regexp comments
        2685.                         if ($i == $next_comment_regexp_pos) {
        2686.                             $COMMENT_MATCHED = true;
        2687.                             $comment = $comment_regexp_cache_per_key[$next_comment_regexp_key];
        2688.                             $test_str = $this->hsc(substr($part, $i, $comment['length']));
        2689.  
        2690.                             //@todo If remove important do remove here
        2691.                             if ($this->lexic_permissions['COMMENTS']['MULTI']) {
        2692.                                 if (!$this->use_classes) {
        2693.                                     $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS'][$comment['key']] . '"';
        2694.                                 } else {
        2695.                                     $attributes = ' class="co' . $comment['key'] . '"';
        2696.                                 }
        2697.  
        2698.                                 $test_str = "<span$attributes>$test_str . "</span>";
        2699.  
        2700.                                 // Short-cut through all the multiline code
        2701.                                 if ($check_linenumbers) {
        2702.                                     // strreplace to put close span and open span around multiline newlines
        2703.                                     $test_str = str_replace(
        2704.                                         "\n", "</span>\n<span$attributes>",
        2705.                                         str_replace("\n ", "\n&nbsp;", $test_str)
        2706.                                     );
        2707.                                 }
        2708.                             }
        2709.  
        2710.                             $i += $comment['length'] - 1;
        2711.  
        2712.                             // parse the rest
        2713.                             $result .= $this->parse_non_string_part($stuff_to_parse);
        2714.                             $stuff_to_parse = '';
        2715.                         }
        2716.  
        2717.                         // If we haven't matched a regexp comment, try multi-line comments
        2718.                         if (!$COMMENT_MATCHED) {
        2719.                             // Is this a multiline comment?
        2720.                             if (!empty($this->language_data['COMMENT_MULTI']) && $next_comment_multi_pos < $i) {
        2721.                                 $next_comment_multi_pos = $length;
        2722.                                 foreach ($this->language_data['COMMENT_MULTI'] as $open => $close) {
        2723.                                     $match_i = false;
        2724.                                     if (isset($comment_multi_cache_per_key[$open]) &&
        2725.                                         ($comment_multi_cache_per_key[$open] >= $i ||
        2726.                                          $comment_multi_cache_per_key[$open] === false)) {
        2727.                                         // we have already matched something
        2728.                                         if ($comment_multi_cache_per_key[$open] === false) {
        2729.                                             // this comment is never matched
        2730.                                             continue;
        2731.                                         }
        2732.                                         $match_i = $comment_multi_cache_per_key[$open];
        2733.                                     } else if (($match_i = stripos($part, $open, $i)) !== false) {
        2734.                                         $comment_multi_cache_per_key[$open] = $match_i;
        2735.                                     } else {
        2736.                                         $comment_multi_cache_per_key[$open] = false;
        2737.                                         continue;
        2738.                                     }
        2739.                                     if ($match_i !== false && $match_i < $next_comment_multi_pos) {
        2740.                                         $next_comment_multi_pos = $match_i;
        2741.                                         $next_open_comment_multi = $open;
        2742.                                         if ($match_i === $i) {
        2743.                                             break;
        2744.                                         }
        2745.                                     }
        2746.                                 }
        2747.                             }
        2748.                             if ($i == $next_comment_multi_pos) {
        2749.                                 $open = $next_open_comment_multi;
        2750.                                 $close = $this->language_data['COMMENT_MULTI'][$open];
        2751.                                 $open_strlen = strlen($open);
        2752.                                 $close_strlen = strlen($close);
        2753.                                 $COMMENT_MATCHED = true;
        2754.                                 $test_str_match = $open;
        2755.                                 //@todo If remove important do remove here
        2756.                                 if ($this->lexic_permissions['COMMENTS']['MULTI'] ||
        2757.                                     $open == <a href="../geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a>) {
        2758.                                     if ($open != <a href="../geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a>) {
        2759.                                         if (!$this->use_classes) {
        2760.                                             $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS']['MULTI'] . '"';
        2761.                                         } else {
        2762.                                             $attributes = ' class="coMULTI"';
        2763.                                         }
        2764.                                         $test_str = "<span$attributes>$this->hsc($open);
        2765.                                     } else {
        2766.                                         if (!$this->use_classes) {
        2767.                                             $attributes = ' style="' . $this->important_styles . '"';
        2768.                                         } else {
        2769.                                             $attributes = ' class="imp"';
        2770.                                         }
        2771.  
        2772.                                         // We don't include the start of the comment if it's an
        2773.                                         // "important" part
        2774.                                         $test_str = "<span$attributes>";
        2775.                                     }
        2776.                                 } else {
        2777.                                     $test_str = $this->hsc($open);
        2778.                                 }
        2779.  
        2780.                                 $close_pos = strpos( $part, $close, $i + $open_strlen );
        2781.  
        2782.                                 if ($close_pos === false) {
        2783.                                     $close_pos = $length;
        2784.                                 }
        2785.  
        2786.                                 // Short-cut through all the multiline code
        2787.                                 $rest_of_comment = $this->hsc(substr($part, $i + $open_strlen, $close_pos - $i - $open_strlen + $close_strlen));
        2788.                                 if (($this->lexic_permissions['COMMENTS']['MULTI'] ||
        2789.                                     $test_str_match == <a href="../geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a>) &&
        2790.                                     $check_linenumbers) {
        2791.  
        2792.                                     // strreplace to put close span and open span around multiline newlines
        2793.                                     $test_str .= str_replace(
        2794.                                         "\n", "</span>\n<span$attributes>",
        2795.                                         str_replace("\n ", "\n&nbsp;", $rest_of_comment)
        2796.                                     );
        2797.                                 } else {
        2798.                                     $test_str .= $rest_of_comment;
        2799.                                 }
        2800.  
        2801.                                 if ($this->lexic_permissions['COMMENTS']['MULTI'] ||
        2802.                                     $test_str_match == <a href="../geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a>) {
        2803.                                     $test_str .= '</span>';
        2804.                                 }
        2805.  
        2806.                                 $i = $close_pos + $close_strlen - 1;
        2807.  
        2808.                                 // parse the rest
        2809.                                 $result .= $this->parse_non_string_part($stuff_to_parse);
        2810.                                 $stuff_to_parse = '';
        2811.                             }
        2812.                         }
        2813.  
        2814.                         // If we haven't matched a multiline comment, try single-line comments
        2815.                         if (!$COMMENT_MATCHED) {
        2816.                             // cache potential single line comment occurances
        2817.                             if (!empty($this->language_data['COMMENT_SINGLE']) && $next_comment_single_pos < $i) {
        2818.                                 $next_comment_single_pos = $length;
        2819.                                 foreach ($this->language_data['COMMENT_SINGLE'] as $comment_key => $comment_mark) {
        2820.                                     $match_i = false;
        2821.                                     if (isset($comment_single_cache_per_key[$comment_key]) &&
        2822.                                         ($comment_single_cache_per_key[$comment_key] >= $i ||
        2823.                                          $comment_single_cache_per_key[$comment_key] === false)) {
        2824.                                         // we have already matched something
        2825.                                         if ($comment_single_cache_per_key[$comment_key] === false) {
        2826.                                             // this comment is never matched
        2827.                                             continue;
        2828.                                         }
        2829.                                         $match_i = $comment_single_cache_per_key[$comment_key];
        2830.                                     } else if (
        2831.                                         // case sensitive comments
        2832.                                         ($this->language_data['CASE_SENSITIVE'][GESHI_COMMENTS] &&
        2833.                                         ($match_i = stripos($part, $comment_mark, $i)) !== false) ||
        2834.                                         // non case sensitive
        2835.                                         (!$this->language_data['CASE_SENSITIVE'][GESHI_COMMENTS] &&
        2836.                                           (($match_i = strpos($part, $comment_mark, $i)) !== false))) {
        2837.                                         $comment_single_cache_per_key[$comment_key] = $match_i;
        2838.                                     } else {
        2839.                                         $comment_single_cache_per_key[$comment_key] = false;
        2840.                                         continue;
        2841.                                     }
        2842.                                     if ($match_i !== false && $match_i < $next_comment_single_pos) {
        2843.                                         $next_comment_single_pos = $match_i;
        2844.                                         $next_comment_single_key = $comment_key;
        2845.                                         if ($match_i === $i) {
        2846.                                             break;
        2847.                                         }
        2848.                                     }
        2849.                                 }
        2850.                             }
        2851.                             if ($next_comment_single_pos == $i) {
        2852.                                 $comment_key = $next_comment_single_key;
        2853.                                 $comment_mark = $this->language_data['COMMENT_SINGLE'][$comment_key];
        2854.                                 $com_len = strlen($comment_mark);
        2855.  
        2856.                                 // This check will find special variables like $# in bash
        2857.                                 // or compiler directives of Delphi beginning {$
        2858.                                 if ((empty($sc_disallowed_before) || ($i == 0) ||
        2859.                                     (false === strpos($sc_disallowed_before, $part[$i-1]))) &&
        2860.                                     (empty($sc_disallowed_after) || ($length <= $i + $com_len) ||
        2861.                                     (false === strpos($sc_disallowed_after, $part[$i + $com_len]))))
        2862.                                 {
        2863.                                     // this is a valid comment
        2864.                                     $COMMENT_MATCHED = true;
        2865.                                     if ($this->lexic_permissions['COMMENTS'][$comment_key]) {
        2866.                                         if (!$this->use_classes) {
        2867.                                             $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS'][$comment_key] . '"';
        2868.                                         } else {
        2869.                                             $attributes = ' class="co' . $comment_key . '"';
        2870.                                         }
        2871.                                         $test_str = "<span$attributes>$this->hsc($this->change_case($comment_mark));
        2872.                                     } else {
        2873.                                         $test_str = $this->hsc($comment_mark);
        2874.                                     }
        2875.  
        2876.                                     //Check if this comment is the last in the source
        2877.                                     $close_pos = strpos($part, "\n", $i);
        2878.                                     $oops = false;
        2879.                                     if ($close_pos === false) {
        2880.                                         $close_pos = $length;
        2881.                                         $oops = true;
        2882.                                     }
        2883.                                     $test_str .= $this->hsc(substr($part, $i + $com_len, $close_pos - $i - $com_len));
        2884.                                     if ($this->lexic_permissions['COMMENTS'][$comment_key]) {
        2885.                                         $test_str .= "</span>";
        2886.                                     }
        2887.  
        2888.                                     // Take into account that the comment might be the last in the source
        2889.                                     if (!$oops) {
        2890.                                       $test_str .= "\n";
        2891.                                     }
        2892.  
        2893.                                     $i = $close_pos;
        2894.  
        2895.                                     // parse the rest
        2896.                                     $result .= $this->parse_non_string_part($stuff_to_parse);
        2897.                                     $stuff_to_parse = '';
        2898.                                 }
        2899.                             }
        2900.                         }
        2901.                     }
        2902.  
        2903.                     // Where are we adding this char?
        2904.                     if (!$COMMENT_MATCHED) {
        2905.                         $stuff_to_parse .= $char;
        2906.                     } else {
        2907.                         $result .= $test_str;
        2908.                         unset($test_str);
        2909.                         $COMMENT_MATCHED = false;
        2910.                     }
        2911.                 }
        2912.                 // Parse the last bit
        2913.                 $result .= $this->parse_non_string_part($stuff_to_parse);
        2914.                 $stuff_to_parse = '';
        2915.             } else {
        2916.                 $result .= $this->hsc($part);
        2917.             }
        2918.             // Close the <span> that surrounds the block
        2919.             if ($STRICTATTRS != '') {
        2920.                 $result = str_replace("\n", "</span>\n<span$STRICTATTRS>", $result);
        2921.                 $result .= '</span>';
        2922.             }
        2923.  
        2924.             $endresult .= $result;
        2925.             unset($part, $parts[$key], $result);
        2926.         }
        2927.  
        2928.         //This fix is related to SF#1923020, but has to be applied regardless of
        2929.         //actually highlighting symbols.
        2930. /** NOTE: memorypeak #3 */        
        2931.         $endresult = str_replace(array('<SEMI>', '<PIPE>'), array(';', '|'), $endresult);
        2932.  
        2933. //        // Parse the last stuff (redundant?)
        2934. //        $result .= $this->parse_non_string_part($stuff_to_parse);
        2935.         // Lop off the very first and last spaces
        2936. //        $result = substr($result, 1, -1);
        2937.         // We're finished: stop timing
        2938.         $this->set_time($start_time, microtime());
        2939.  
        2940.         $this->finalise($endresult);
        2941.         return $endresult;
        2942.     }
        2943.  
        2944. /**    
        2945.      * Swaps out spaces and tabs for HTML indentation. Not needed if
        2946.      * the code is in a pre block...
        2947.      *
        2948.      * @param  string The source to indent (reference!)
        2949.      * @since  1.0.0
        2950.      * @access private
        2951.      */
        2952.     function indent(&$result) {
        2953.         /// Replace tabs with the correct number of spaces
        2954.         if (false !== strpos($result, "\t")) {
        2955.             $lines = explode("\n", $result);
        2956.             $result = null;//Save memory while we process the lines individually
        2957.             $tab_width = $this->get_real_tab_width();
        2958.             $tab_string = '&nbsp;' . str_repeat(' ', $tab_width);
        2959.  
        2960.             for ($key = 0, $n = count($lines); $key < $n; $key++) {
        2961.                 $line = $lines[$key];
        2962.                 if (false === strpos($line, "\t")) {
        2963.                     continue;
        2964.                 }
        2965.  
        2966.                 $pos = 0;
        2967.                 $length = strlen($line);
        2968.                 $lines[$key] = ''; // reduce memory
        2969.                 $IN_TAG = false;
        2970.                 for ($i = 0; $i < $length; ++$i) {
        2971.                     $char = $line[$i];
        2972.                     // Simple engine to work out whether we're in a tag.
        2973.                     // If we are we modify $pos. This is so we ignore HTML
        2974.                     // in the line and only workout the tab replacement
        2975.                     // via the actual content of the string
        2976.                     // This test could be improved to include strings in the
        2977.                     // html so that < or > would be allowed in user's styles
        2978.                     // (e.g. quotes: '<' '>'; or similar)
        2979.                     if ($IN_TAG) {
        2980.                         if ('>' == $char) {
        2981.                             $IN_TAG = false;
        2982.                         }
        2983.                         $lines[$key] .= $char;
        2984.                     } else if ('<' == $char) {
        2985.                         $IN_TAG = true;
        2986.                         $lines[$key] .= '<';
        2987.                     } else if ('&' == $char) {
        2988.                         $substr = substr($line, $i + 3, 5);
        2989.                         $posi = strpos($substr, ';');
        2990.                         if (false === $posi) {
        2991.                             ++$pos;
        2992.                         } else {
        2993.                             $pos -= $posi+2;
        2994.                         }
        2995.                         $lines[$key] .= $char;
        2996.                     } else if ("\t" == $char) {
        2997.                         $str = '';
        2998.                         // OPTIMISE - move $strs out. Make an array:
        2999.                         // $tabs = array(
        3000.                         //  1 => '&nbsp;',
        3001.                         //  2 => '&nbsp; ',
        3002.                         //  3 => '&nbsp; &nbsp;' etc etc
        3003.                         // to use instead of building a string every time
        3004.                         $tab_end_width = $tab_width - ($pos % $tab_width); //Moved out of the look as it doesn't change within the loop
        3005.                         if (($pos & 1) || 1 == $tab_end_width) {
        3006.                             $str .= substr($tab_string, 6, $tab_end_width);
        3007.                         } else {
        3008.                             $str .= substr($tab_string, 0, $tab_end_width+5);
        3009.                         }
        3010.                         $lines[$key] .= $str;
        3011.                         $pos += $tab_end_width;
        3012.  
        3013.                         if (false === strpos($line, "\t", $i + 1)) {
        3014.                             $lines[$key] .= substr($line, $i + 1);
        3015.                             break;
        3016.                         }
        3017.                     } else if (0 == $pos && ' ' == $char) {
        3018.                         $lines[$key] .= '&nbsp;';
        3019.                         ++$pos;
        3020.                     } else {
        3021.                         $lines[$key] .= $char;
        3022.                         ++$pos;
        3023.                     }
        3024.                 }
        3025.             }
        3026.             $result = implode("\n", $lines);
        3027.             unset($lines);//We don't need the lines separated beyond this --- free them!
        3028.         }
        3029.         // Other whitespace
        3030.         // BenBE: Fix to reduce the number of replacements to be done
        3031.         $result = preg_replace('/^ /m', '&nbsp;', $result);
        3032.         $result = str_replace('  ', ' &nbsp;', $result);
        3033.  
        3034.         if ($this->line_numbers == <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        3035.             if ($this->line_ending === null) {
        3036.                 $result = nl2br($result);
        3037.             } else {
        3038.                 $result = str_replace("\n", $this->line_ending, $result);
        3039.             }
        3040.         }
        3041.     }
        3042.  
        3043. /**    
        3044.      * Changes the case of a keyword for those languages where a change is asked for
        3045.      *
        3046.      * @param  string The keyword to change the case of
        3047.      * @return string The keyword with its case changed
        3048.      * @since  1.0.0
        3049.      * @access private
        3050.      */
        3051.     function change_case($instr) {
        3052.         switch ($this->language_data['CASE_KEYWORDS']) {
        3053.             case <a href="../geshi/core/_geshi.php.html#defineGESHI_CAPS_UPPER">GESHI_CAPS_UPPER</a>:
        3054.                 return strtoupper($instr);
        3055.             case <a href="../geshi/core/_geshi.php.html#defineGESHI_CAPS_LOWER">GESHI_CAPS_LOWER</a>:
        3056.                 return strtolower($instr);
        3057.             default:
        3058.                 return $instr;
        3059.         }
        3060.     }
        3061.  
        3062. /**    
        3063.      * Handles replacements of keywords to include markup and links if requested
        3064.      *
        3065.      * @param  string The keyword to add the Markup to
        3066.      * @return The HTML for the match found
        3067.      * @since  1.0.8
        3068.      * @access private
        3069.      *
        3070.      * @todo   Get rid of ender in keyword links
        3071.      */
        3072.     function handle_keyword_replace($match) {
        3073.         $k = $this->_kw_replace_group;
        3074.         $keyword = $match[0];
        3075.  
        3076.         $before = '';
        3077.         $after = '';
        3078.  
        3079.         if ($this->keyword_links) {
        3080.             // Keyword links have been ebabled
        3081.             if (isset($this->language_data['URLS'][$k]) &&
        3082.                 $this->language_data['URLS'][$k] != '') {
        3083.                 // There is a base group for this keyword
        3084.                 // Old system: strtolower
        3085.                 //$keyword = ( $this->language_data['CASE_SENSITIVE'][$group] ) ? $keyword : strtolower($keyword);
        3086.                 // New system: get keyword from language file to get correct case
        3087.                 if (!$this->language_data['CASE_SENSITIVE'][$k] &&
        3088.                     strpos($this->language_data['URLS'][$k], '{FNAME}') !== false) {
        3089.                     foreach ($this->language_data['KEYWORDS'][$k] as $word) {
        3090.                         if (strcasecmp($word, $keyword) == 0) {
        3091.                             break;
        3092.                         }
        3093.                     }
        3094.                 } else {
        3095.                     $word = $keyword;
        3096.                 }
        3097.  
        3098.                 $before = '<|UR1|"' .
        3099.                     str_replace(
        3100.                         array(
        3101.                             '{FNAME}',
        3102.                             '{FNAMEL}',
        3103.                             '{FNAMEU}',
        3104.                             '.'),
        3105.                         array(
        3106.                             str_replace('+', '%20', urlencode($this->hsc($word))),
        3107.                             str_replace('+', '%20', urlencode($this->hsc(strtolower($word)))),
        3108.                             str_replace('+', '%20', urlencode($this->hsc(strtoupper($word)))),
        3109.                             '<DOT>'),
        3110.                         $this->language_data['URLS'][$k]
        3111.                     ) . '">';
        3112.                 $after = '</a>';
        3113.             }
        3114.         }
        3115.  
        3116.         return $before . '<|/'$k .'/>' . $this->change_case($keyword) . '|>' . $after;
        3117.     }
        3118.  
        3119. /**    
        3120.      * handles regular expressions highlighting-definitions with callback functions
        3121.      *
        3122.      * @note this is a callback, don't use it directly
        3123.      *
        3124.      * @param array the matches array
        3125.      * @return The highlighted string
        3126.      * @since 1.0.8
        3127.      * @access private
        3128.      */
        3129.     function handle_regexps_callback($matches) {
        3130.         // before: "' style=\"' . call_user_func(\"$func\", '\\1') . '\"\\1|>'",
        3131.         return  ' style="' . call_user_func($this->language_data['STYLES']['REGEXPS'][$this->_rx_key], $matches[1]) . '"'$matches[1] . '|>';
        3132.     }
        3133.  
        3134. /**    
        3135.      * handles newlines in REGEXPS matches. Set the _hmr_* vars before calling this
        3136.      *
        3137.      * @note this is a callback, don't use it directly
        3138.      *
        3139.      * @param array the matches array
        3140.      * @return string 
        3141.      * @since 1.0.8
        3142.      * @access private
        3143.      */
        3144.     function handle_multiline_regexps($matches) {
        3145.         $before = $this->_hmr_before;
        3146.         $after = $this->_hmr_after;
        3147.         if ($this->_hmr_replace) {
        3148.             $replace = $this->_hmr_replace;
        3149.             $search = array();
        3150.  
        3151.             foreach (array_keys($matches) as $k) {
        3152.                 $search[] = '\\' . $k;
        3153.             }
        3154.  
        3155.             $before = str_replace($search, $matches, $before);
        3156.             $after = str_replace($search, $matches, $after);
        3157.             $replace = str_replace($search, $matches, $replace);
        3158.         } else {
        3159.             $replace = $matches[0];
        3160.         }
        3161.         return $before
        3162.                     . '<|!REG3XP' . $this->_hmr_key .'!>'
        3163.                         . str_replace("\n", "|>\n<|!REG3XP" . $this->_hmr_key . '!>', $replace)
        3164.                     . '|>'
        3165.               . $after;
        3166.     }
        3167.  
        3168. /**    
        3169.      * Takes a string that has no strings or comments in it, and highlights
        3170.      * stuff like keywords, numbers and methods.
        3171.      *
        3172.      * @param string The string to parse for keyword, numbers etc.
        3173.      * @since 1.0.0
        3174.      * @access private
        3175.      * @todo BUGGY! Why? Why not build string and return?
        3176.      */
        3177.     function parse_non_string_part($stuff_to_parse) {
        3178.         $stuff_to_parse = ' ' . $this->hsc($stuff_to_parse);
        3179.  
        3180.         // Regular expressions
        3181.         foreach ($this->language_data['REGEXPS'] as $key => $regexp) {
        3182.             if ($this->lexic_permissions['REGEXPS'][$key]) {
        3183.                 if (is_array($regexp)) {
        3184.                     if ($this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        3185.                         // produce valid HTML when we match multiple lines
        3186.                         $this->_hmr_replace = $regexp[GESHI_REPLACE];
        3187.                         $this->_hmr_before = $regexp[GESHI_BEFORE];
        3188.                         $this->_hmr_key = $key;
        3189.                         $this->_hmr_after = $regexp[GESHI_AFTER];
        3190.                         $stuff_to_parse = preg_replace_callback(
        3191.                             "/" . $regexp[GESHI_SEARCH] . "/{$regexp[GESHI_MODIFIERS]}",
        3192.                             array($this, 'handle_multiline_regexps'),
        3193.                             $stuff_to_parse);
        3194.                         $this->_hmr_replace = false;
        3195.                         $this->_hmr_before = '';
        3196.                         $this->_hmr_after = '';
        3197.                     } else {
        3198.                         $stuff_to_parse = preg_replace(
        3199.                             '/' . $regexp[GESHI_SEARCH] . '/' . $regexp[GESHI_MODIFIERS],
        3200.                             $regexp[GESHI_BEFORE] . '<|!REG3XP'$key .'!>' . $regexp[GESHI_REPLACE] . '|>' . $regexp[GESHI_AFTER],
        3201.                             $stuff_to_parse);
        3202.                     }
        3203.                 } else {
        3204.                     if ($this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        3205.                         // produce valid HTML when we match multiple lines
        3206.                         $this->_hmr_key = $key;
        3207.                         $stuff_to_parse = preg_replace_callback( "/(" . $regexp . ")/",
        3208.                                               array($this, 'handle_multiline_regexps'), $stuff_to_parse);
        3209.                         $this->_hmr_key = '';
        3210.                     } else {
        3211.                         $stuff_to_parse = preg_replace( "/(" . $regexp . ")/", "<|!REG3XP$key!>\\1|>", $stuff_to_parse);
        3212.                     }
        3213.                 }
        3214.             }
        3215.         }
        3216.  
        3217.         // Highlight numbers. As of 1.0.8 we support diffent types of numbers
        3218.         $numbers_found = false;
        3219.         if ($this->lexic_permissions['NUMBERS'] && preg_match('#\d#', $stuff_to_parse )) {
        3220.             $numbers_found = true;
        3221.  
        3222.             //For each of the formats ...
        3223.             foreach($this->language_data['NUMBERS_RXCACHE'] as $id => $regexp) {
        3224.                 //Check if it should be highlighted ...
        3225.                 $stuff_to_parse = preg_replace($regexp, "<|/NUM!$id/>\\1|>", $stuff_to_parse);
        3226.             }
        3227.         }
        3228.  
        3229.         // Highlight keywords
        3230.         $disallowed_before = "(?<![a-zA-Z0-9\$_\|\#;>|^&";
        3231.         $disallowed_after = "(?![a-zA-Z0-9_\|%\\-&;";
        3232.         if ($this->lexic_permissions['STRINGS']) {
        3233.             $quotemarks = preg_quote(implode($this->language_data['QUOTEMARKS']), '/');
        3234.             $disallowed_before .= $quotemarks;
        3235.             $disallowed_after .= $quotemarks;
        3236.         }
        3237.         $disallowed_before .= "])";
        3238.         $disallowed_after .= "])";
        3239.  
        3240.         $parser_control_pergroup = false;
        3241.         if (isset($this->language_data['PARSER_CONTROL'])) {
        3242.             if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'])) {
        3243.                 $x = 0; // check wether per-keyword-group parser_control is enabled
        3244.                 if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'])) {
        3245.                     $disallowed_before = $this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'];
        3246.                     ++$x;
        3247.                 }
        3248.                 if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'])) {
        3249.                     $disallowed_after = $this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'];
        3250.                     ++$x;
        3251.                 }
        3252.                 $parser_control_pergroup = (count($this->language_data['PARSER_CONTROL']['KEYWORDS']) - $x) > 0;
        3253.             }
        3254.         }
        3255.  
        3256.         // if this is changed, don't forget to change it below
        3257. //        if (!empty($disallowed_before)) {
        3258. //            $disallowed_before = "(?<![$disallowed_before])";
        3259. //        }
        3260. //        if (!empty($disallowed_after)) {
        3261. //            $disallowed_after = "(?![$disallowed_after])";
        3262. //        }
        3263.         foreach (array_keys($this->language_data['KEYWORDS']) as $k) {
        3264.             if (!isset($this->lexic_permissions['KEYWORDS'][$k]) ||
        3265.                 $this->lexic_permissions['KEYWORDS'][$k]) {
        3266.  
        3267.                 $case_sensitive = $this->language_data['CASE_SENSITIVE'][$k];
        3268.                 $modifiers = $case_sensitive ? '' : 'i';
        3269.  
        3270.                 // NEW in 1.0.8 - per-keyword-group parser control
        3271.                 $disallowed_before_local = $disallowed_before;
        3272.                 $disallowed_after_local = $disallowed_after;
        3273.                 if ($parser_control_pergroup && isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k])) {
        3274.                     if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE'])) {
        3275.                         $disallowed_before_local =
        3276.                             $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE'];
        3277.                     }
        3278.  
        3279.                     if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER'])) {
        3280.                         $disallowed_after_local =
        3281.                             $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER'];
        3282.                     }
        3283.                 }
        3284.  
        3285.                 $this->_kw_replace_group = $k;
        3286.  
        3287.                 //NEW in 1.0.8, the cached regexp list
        3288.                 // since we don't want PHP / PCRE to crash due to too large patterns we split them into smaller chunks
        3289.                 for ($set = 0, $set_length = count($this->language_data['CACHED_KEYWORD_LISTS'][$k]); $set <  $set_length; ++$set) {
        3290.                     $keywordset =& $this->language_data['CACHED_KEYWORD_LISTS'][$k][$set];
        3291.                     // Might make a more unique string for putting the number in soon
        3292.                     // Basically, we don't put the styles in yet because then the styles themselves will
        3293.                     // get highlighted if the language has a CSS keyword in it (like CSS, for example ;))
        3294.                     $stuff_to_parse = preg_replace_callback(
        3295.                         "/$disallowed_before_local({$keywordset})(?!\<DOT\>(?:htm|php))$disallowed_after_local/$modifiers",
        3296.                         array($this, 'handle_keyword_replace'),
        3297.                         $stuff_to_parse
        3298.                         );
        3299.                 }
        3300.             }
        3301.         }
        3302.  
        3303.         //
        3304.         // Now that's all done, replace /[number]/ with the correct styles
        3305.         //
        3306.         foreach (array_keys($this->language_data['KEYWORDS']) as $k) {
        3307.             if (!$this->use_classes) {
        3308.                 $attributes = ' style="' .
        3309.                     (isset($this->language_data['STYLES']['KEYWORDS'][$k]) ?
        3310.                     $this->language_data['STYLES']['KEYWORDS'][$k] : "") . '"';
        3311.             } else {
        3312.                 $attributes = ' class="kw' . $k . '"';
        3313.             }
        3314.             $stuff_to_parse = str_replace("<|/$k/>", "<|$attributes>", $stuff_to_parse);
        3315.         }
        3316.  
        3317.         if ($numbers_found) {
        3318.             // Put number styles in
        3319.             foreach($this->language_data['NUMBERS_RXCACHE'] as $id => $regexp) {
        3320. //Commented out for now, as this needs some review ...
        3321. //                if ($numbers_permissions & $id) {
        3322.                     //Get the appropriate style ...
        3323.                         //Checking for unset styles is done by the style cache builder ...
        3324.                     if (!$this->use_classes) {
        3325.                         $attributes = ' style="' . $this->language_data['STYLES']['NUMBERS'][$id] . '"';
        3326.                     } else {
        3327.                         $attributes = ' class="nu'.$id.'"';
        3328.                     }
        3329.  
        3330.                     //Set in the correct styles ...
        3331.                     $stuff_to_parse = str_replace("/NUM!$id/", $attributes, $stuff_to_parse);
        3332. //                }
        3333.             }
        3334.         }
        3335.  
        3336.         // Highlight methods and fields in objects
        3337.         if ($this->lexic_permissions['METHODS'] && $this->language_data['OOLANG']) {
        3338.             $oolang_spaces = "[\s]*";
        3339.             $oolang_before = "";
        3340.             $oolang_after = "[a-zA-Z][a-zA-Z0-9_]*";
        3341.             if (isset($this->language_data['PARSER_CONTROL'])) {
        3342.                 if (isset($this->language_data['PARSER_CONTROL']['OOLANG'])) {
        3343.                     if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_BEFORE'])) {
        3344.                         $oolang_before = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_BEFORE'];
        3345.                     }
        3346.                     if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_AFTER'])) {
        3347.                         $oolang_after = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_AFTER'];
        3348.                     }
        3349.                     if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_SPACES'])) {
        3350.                         $oolang_spaces = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_SPACES'];
        3351.                     }
        3352.                 }
        3353.             }
        3354.  
        3355.             foreach ($this->language_data['OBJECT_SPLITTERS'] as $key => $splitter) {
        3356.                 if (false !== strpos($stuff_to_parse, $splitter)) {
        3357.                     if (!$this->use_classes) {
        3358.                         $attributes = ' style="' . $this->language_data['STYLES']['METHODS'][$key] . '"';
        3359.                     } else {
        3360.                         $attributes = ' class="me' . $key . '"';
        3361.                     }
        3362.                     $stuff_to_parse = preg_replace("/($oolang_before)(preg_quote($this->language_data['OBJECT_SPLITTERS'][$key], '/') . ")($oolang_spaces)($oolang_after)/", "\\1\\2\\3<|$attributes>\\4|>", $stuff_to_parse);
        3363.                 }
        3364.             }
        3365.         }
        3366.  
        3367.         //
        3368.         // Highlight brackets. Yes, I've tried adding a semi-colon to this list.
        3369.         // You try it, and see what happens ;)
        3370.         // TODO: Fix lexic permissions not converting entities if shouldn't
        3371.         // be highlighting regardless
        3372.         //
        3373.         if ($this->lexic_permissions['BRACKETS']) {
        3374.             $stuff_to_parse = str_replace( $this->language_data['CACHE_BRACKET_MATCH'],
        3375.                               $this->language_data['CACHE_BRACKET_REPLACE'], $stuff_to_parse );
        3376.         }
        3377.  
        3378.  
        3379.         //FIX for symbol highlighting ...
        3380.         if ($this->lexic_permissions['SYMBOLS'] && !empty($this->language_data['SYMBOLS'])) {
        3381.             //Get all matches and throw away those witin a block that is already highlighted... (i.e. matched by a regexp)
        3382.             $n_symbols = preg_match_all("/<\|(?:<DOT>|[^>])+>(?:(?!\|>).*?)\|>|<\/a>|(?:" . $this->language_data['SYMBOL_SEARCH'] . ")+/", $stuff_to_parse, $pot_symbols, PREG_OFFSET_CAPTURE | PREG_SET_ORDER);
        3383.             $global_offset = 0;
        3384.             for ($s_id = 0; $s_id < $n_symbols; ++$s_id) {
        3385.                 $symbol_match = $pot_symbols[$s_id][0][0];
        3386.                 if (strpos($symbol_match, '<') !== false || strpos($symbol_match, '>') !== false) {
        3387.                     // already highlighted blocks _must_ include either < or >
        3388.                     // so if this conditional applies, we have to skip this match
        3389.                     // BenBE: UNLESS the block contains <SEMI> or <PIPE>
        3390.                     if(strpos($symbol_match, '<SEMI>') === false &&
        3391.                         strpos($symbol_match, '<PIPE>') === false) {
        3392.                         continue;
        3393.                     }
        3394.                 }
        3395.  
        3396.                 // if we reach this point, we have a valid match which needs to be highlighted
        3397.                 $symbol_length = strlen($symbol_match);
        3398.                 $symbol_offset = $pot_symbols[$s_id][0][1];
        3399.                 unset($pot_symbols[$s_id]);
        3400.                 $symbol_end = $symbol_length + $symbol_offset;
        3401.                 $symbol_hl = "";
        3402.  
        3403.                 // if we have multiple styles, we have to handle them properly
        3404.                 if ($this->language_data['MULTIPLE_SYMBOL_GROUPS']) {
        3405.                     $old_sym = -1;
        3406.                     // Split the current stuff to replace into its atomic symbols ...
        3407.                     preg_match_all("/" . $this->language_data['SYMBOL_SEARCH'] . "/", $symbol_match, $sym_match_syms, PREG_PATTERN_ORDER);
        3408.                     foreach ($sym_match_syms[0] as $sym_ms) {
        3409.                         //Check if consequtive symbols belong to the same group to save output ...
        3410.                         if (isset($this->language_data['SYMBOL_DATA'][$sym_ms])
        3411.                             && ($this->language_data['SYMBOL_DATA'][$sym_ms] != $old_sym)) {
        3412.                             if (-1 != $old_sym) {
        3413.                                 $symbol_hl .= "|>";
        3414.                             }
        3415.                             $old_sym = $this->language_data['SYMBOL_DATA'][$sym_ms];
        3416.                             if (!$this->use_classes) {
        3417.                                 $symbol_hl .= '<| style="' . $this->language_data['STYLES']['SYMBOLS'][$old_sym] . '">';
        3418.                             } else {
        3419.                                 $symbol_hl .= '<| class="sy' . $old_sym . '">';
        3420.                             }
        3421.                         }
        3422.                         $symbol_hl .= $sym_ms;
        3423.                     }
        3424.                     unset($sym_match_syms);
        3425.  
        3426.                     //Close remaining tags and insert the replacement at the right position ...
        3427.                     //Take caution if symbol_hl is empty to avoid doubled closing spans.
        3428.                     if (-1 != $old_sym) {
        3429.                         $symbol_hl .= "|>";
        3430.                     }
        3431.                 } else {
        3432.                     if (!$this->use_classes) {
        3433.                         $symbol_hl = '<| style="' . $this->language_data['STYLES']['SYMBOLS'][0] . '">';
        3434.                     } else {
        3435.                         $symbol_hl = '<| class="sy0">';
        3436.                     }
        3437.                     $symbol_hl .= $symbol_match . '|>';
        3438.                 }
        3439.  
        3440.                 $stuff_to_parse = substr_replace($stuff_to_parse, $symbol_hl, $symbol_offset + $global_offset, $symbol_length);
        3441.  
        3442.                 // since we replace old text with something of different size,
        3443.                 // we'll have to keep track of the differences
        3444.                 $global_offset += strlen($symbol_hl) - $symbol_length;
        3445.             }
        3446.         }
        3447.         //FIX for symbol highlighting ...
        3448.         // Add class/style for regexps
        3449.         foreach (array_keys($this->language_data['REGEXPS']) as $key) {
        3450.             if ($this->lexic_permissions['REGEXPS'][$key]) {
        3451.                 if (is_callable($this->language_data['STYLES']['REGEXPS'][$key])) {
        3452.                     $this->_rx_key = $key;
        3453.                     $stuff_to_parse = preg_replace_callback("/!REG3XP$key!(.*)\|>/U",
        3454.                         array($this, 'handle_regexps_callback'),
        3455.                         $stuff_to_parse);
        3456.                 } else {
        3457.                     if (!$this->use_classes) {
        3458.                         $attributes = ' style="' . $this->language_data['STYLES']['REGEXPS'][$key] . '"';
        3459.                     } else {
        3460.                         if (is_array($this->language_data['REGEXPS'][$key]) &&
        3461.                             array_key_exists(GESHI_CLASS, $this->language_data['REGEXPS'][$key])) {
        3462.                             $attributes = ' class="' .
        3463.                                 $this->language_data['REGEXPS'][$key][GESHI_CLASS] . '"';
        3464.                         } else {
        3465.                            $attributes = ' class="re' . $key . '"';
        3466.                         }
        3467.                     }
        3468.                     $stuff_to_parse = str_replace("!REG3XP$key!", "$attributes", $stuff_to_parse);
        3469.                 }
        3470.             }
        3471.         }
        3472.  
        3473.         // Replace <DOT> with . for urls
        3474.         $stuff_to_parse = str_replace('<DOT>', '.', $stuff_to_parse);
        3475.         // Replace <|UR1| with <a href= for urls also
        3476.         if (isset($this->link_styles[<a href="../geshi/core/_geshi.php.html#defineGESHI_LINK">GESHI_LINK</a>])) {
        3477.             if ($this->use_classes) {
        3478.                 $stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' href=', $stuff_to_parse);
        3479.             } else {
        3480.                 $stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' style="' . $this->link_styles[<a href="../geshi/core/_geshi.php.html#defineGESHI_LINK">GESHI_LINK</a>] . '" href=', $stuff_to_parse);
        3481.             }
        3482.         } else {
        3483.             $stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' href=', $stuff_to_parse);
        3484.         }
        3485.  
        3486.         //
        3487.         // NOW we add the span thingy ;)
        3488.         //
        3489.         $stuff_to_parse = str_replace('<|', '<span', $stuff_to_parse);
        3490.         $stuff_to_parse = str_replace ( '|>', '</span>', $stuff_to_parse );
        3491.         return substr($stuff_to_parse, 1);
        3492.     }
        3493.  
        3494.     /**
        3495.      * Sets the time taken to parse the code
        3496.      *
        3497.      * @param microtime The time when parsing started
        3498.      * @param microtime The time when parsing ended
        3499.      * @since 1.0.2
        3500.      * @access private
        3501.      */
        3502.     function set_time($start_time, $end_time) {
        3503.         $start = explode(' ', $start_time);
        3504.         $end = explode(' ', $end_time);
        3505.         $this->time = $end[0] + $end[1] - $start[0] - $start[1];
        3506.     }
        3507.  
        3508.     /**
        3509.      * Gets the time taken to parse the code
        3510.      *
        3511.      * @return double The time taken to parse the code
        3512.      * @since  1.0.2
        3513.      */
        3514.     function get_time() {
        3515.         return $this->time;
        3516.     }
        3517.  
        3518.     /**
        3519.      * Merges arrays recursively, overwriting values of the first array with values of later arrays
        3520.      *
        3521.      * @since 1.0.8
        3522.      * @access private
        3523.      */
        3524.     function merge_arrays() {
        3525.         $arrays = func_get_args();
        3526.         $narrays = count($arrays);
        3527.  
        3528.         // check arguments
        3529.         // comment out if more performance is necessary (in this case the foreach loop will trigger a warning if the argument is not an array)
        3530.         for ($i = 0; $i < $narrays; $i ++) {
        3531.             if (!is_array($arrays[$i])) {
        3532.                 // also array_merge_recursive returns nothing in this case
        3533.                 trigger_error('Argument #' . ($i+1) . ' is not an array - trying to merge array with scalar! Returning false!', E_USER_WARNING);
        3534.                 return false;
        3535.             }
        3536.         }
        3537.  
        3538.         // the first array is in the output set in every case
        3539.         $ret = $arrays[0];
        3540.  
        3541.         // merege $ret with the remaining arrays
        3542.         for ($i = 1; $i < $narrays; $i ++) {
        3543.             foreach ($arrays[$i] as $key => $value) {
        3544.                 if (is_array($value) && isset($ret[$key])) {
        3545.                     // if $ret[$key] is not an array you try to merge an scalar value with an array - the result is not defined (incompatible arrays)
        3546.                     // in this case the call will trigger an E_USER_WARNING and the $ret[$key] will be false.
        3547.                     $ret[$key] = $this->merge_arrays($ret[$key], $value);
        3548.                 } else {
        3549.                     $ret[$key] = $value;
        3550.                 }
        3551.             }
        3552.         }
        3553.  
        3554.         return $ret;
        3555.     }
        3556.  
        3557.     /**
        3558.      * Gets language information and stores it for later use
        3559.      *
        3560.      * @param string The filename of the language file you want to load
        3561.      * @since 1.0.0
        3562.      * @access private
        3563.      * @todo Needs to load keys for lexic permissions for keywords, regexps etc
        3564.      */
        3565.     function load_language($file_name) {
        3566.         if ($file_name == $this->loaded_language) {
        3567.             // this file is already loaded!
        3568.             return;
        3569.         }
        3570.  
        3571.         //Prepare some stuff before actually loading the language file
        3572.         $this->loaded_language = $file_name;
        3573.         $this->parse_cache_built = false;
        3574.         $this->enable_highlighting();
        3575.         $language_data = array();
        3576.  
        3577.         //Load the language file
        3578.         require $file_name;
        3579.  
        3580.         // Perhaps some checking might be added here later to check that
        3581.         // $language data is a valid thing but maybe not
        3582.         $this->language_data = $language_data;
        3583.  
        3584.         // Set strict mode if should be set
        3585.         $this->strict_mode = $this->language_data['STRICT_MODE_APPLIES'];
        3586.  
        3587.         // Set permissions for all lexics to true
        3588.         // so they'll be highlighted by default
        3589.         foreach (array_keys($this->language_data['KEYWORDS']) as $key) {
        3590.             if (!empty($this->language_data['KEYWORDS'][$key])) {
        3591.                 $this->lexic_permissions['KEYWORDS'][$key] = true;
        3592.             } else {
        3593.                 $this->lexic_permissions['KEYWORDS'][$key] = false;
        3594.             }
        3595.         }
        3596.  
        3597.         foreach (array_keys($this->language_data['COMMENT_SINGLE']) as $key) {
        3598.             $this->lexic_permissions['COMMENTS'][$key] = true;
        3599.         }
        3600.         foreach (array_keys($this->language_data['REGEXPS']) as $key) {
        3601.             $this->lexic_permissions['REGEXPS'][$key] = true;
        3602.         }
        3603.  
        3604.         // for BenBE and future code reviews:
        3605.         // we can use empty here since we only check for existance and emptiness of an array
        3606.         // if it is not an array at all but rather false or null this will work as intended as well
        3607.         // even if $this->language_data['PARSER_CONTROL'] is undefined this won't trigger a notice
        3608.         if (!empty($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS'])) {
        3609.             foreach ($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS'] as $flag => $value) {
        3610.                 // it's either true or false and maybe is true as well
        3611.                 $perm = $value !== GESHI_NEVER;
        3612.                 if ($flag == 'ALL') {
        3613.                     $this->enable_highlighting($perm);
        3614.                     continue;
        3615.                 }
        3616.                 if (!isset($this->lexic_permissions[$flag])) {
        3617.                     // unknown lexic permission
        3618.                     continue;
        3619.                 }
        3620.                 if (is_array($this->lexic_permissions[$flag])) {
        3621.                     foreach ($this->lexic_permissions[$flag] as $key => $val) {
        3622.                         $this->lexic_permissions[$flag][$key] = $perm;
        3623.                     }
        3624.                 } else {
        3625.                     $this->lexic_permissions[$flag] = $perm;
        3626.                 }
        3627.             }
        3628.             unset($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS']);
        3629.         }
        3630.  
        3631.         //NEW in 1.0.8: Allow styles to be loaded from a separate file to override defaults
        3632.         $style_filename = substr($file_name, 0, -4) . '.style.php';
        3633.         if (is_readable($style_filename)) {
        3634.             //Clear any style_data that could have been set before ...
        3635.             if (isset($style_data)) {
        3636.                 unset($style_data);
        3637.             }
        3638.  
        3639.             //Read the Style Information from the style file
        3640.             include $style_filename;
        3641.  
        3642.             //Apply the new styles to our current language styles
        3643.             if (isset($style_data) && is_array($style_data)) {
        3644.                 $this->language_data['STYLES'] =
        3645.                     $this->merge_arrays($this->language_data['STYLES'], $style_data);
        3646.             }
        3647.         }
        3648.     }
        3649.  
        3650.     /**
        3651.      * Takes the parsed code and various options, and creates the HTML
        3652.      * surrounding it to make it look nice.
        3653.      *
        3654.      * @param  string The code already parsed (reference!)
        3655.      * @since  1.0.0
        3656.      * @access private
        3657.      */
        3658.     function finalise(&$parsed_code) {
        3659.         // Remove end parts of important declarations
        3660.         // This is BUGGY!! My fault for bad code: fix coming in 1.2
        3661.         // @todo Remove this crap
        3662.         if ($this->enable_important_blocks &&
        3663.             (strpos($parsed_code, $this->hsc(<a href="../geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a>)) === false)) {
        3664.             $parsed_code = str_replace($this->hsc(<a href="../geshi/core/_geshi.php.html#defineGESHI_END_IMPORTANT">GESHI_END_IMPORTANT</a>), '', $parsed_code);
        3665.         }
        3666.  
        3667.         // Add HTML whitespace stuff if we're using the <div> header
        3668.         if ($this->header_type != <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a> && $this->header_type != <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a>) {
        3669.             $this->indent($parsed_code);
        3670.         }
        3671.  
        3672.         // purge some unnecessary stuff
        3673.         /** NOTE: memorypeak #1 */
        3674.         $parsed_code = preg_replace('#<span[^>]+>(\s*)</span>#', '\\1', $parsed_code);
        3675.  
        3676.         // If we are using IDs for line numbers, there needs to be an overall
        3677.         // ID set to prevent collisions.
        3678.         if ($this->add_ids && !$this->overall_id) {
        3679.             $this->overall_id = 'geshi-' . substr(md5(microtime()), 0, 4);
        3680.         }
        3681.  
        3682.         // Get code into lines
        3683.         /** NOTE: memorypeak #2 */
        3684.         $code = explode("\n", $parsed_code);
        3685.         $parsed_code = $this->header();
        3686.  
        3687.         // If we're using line numbers, we insert <li>s and appropriate
        3688.         // markup to style them (otherwise we don't need to do anything)
        3689.         if ($this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a> && $this->header_type != <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_TABLE">GESHI_HEADER_PRE_TABLE</a>) {
        3690.             // If we're using the <pre> header, we shouldn't add newlines because
        3691.             // the <pre> will line-break them (and the <li>s already do this for us)
        3692.             $ls = ($this->header_type != <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a> && $this->header_type != <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a>) ? "\n" : '';
        3693.  
        3694.             // Set vars to defaults for following loop
        3695.             $i = 0;
        3696.  
        3697.             // Foreach line...
        3698.             for ($i = 0, $n = count($code); $i < $n;) {
        3699.                 //Reset the attributes for a new line ...
        3700.                 $attrs = array();
        3701.  
        3702.                 // Make lines have at least one space in them if they're empty
        3703.                 // BenBE: Checking emptiness using trim instead of relying on blanks
        3704.                 if ('' == trim($code[$i])) {
        3705.                     $code[$i] = '&nbsp;';
        3706.                 }
        3707.  
        3708.                 // If this is a "special line"...
        3709.                 if ($this->line_numbers == <a href="../geshi/core/_geshi.php.html#defineGESHI_FANCY_LINE_NUMBERS">GESHI_FANCY_LINE_NUMBERS</a> &&
        3710.                     $i % $this->line_nth_row == ($this->line_nth_row - 1)) {
        3711.                     // Set the attributes to style the line
        3712.                     if ($this->use_classes) {
        3713.                         //$attr = ' class="li2"';
        3714.                         $attrs['class'][] = 'li2';
        3715.                         $def_attr = ' class="de2"';
        3716.                     } else {
        3717.                         //$attr = ' style="' . $this->line_style2 . '"';
        3718.                         $attrs['style'][] = $this->line_style2;
        3719.                         // This style "covers up" the special styles set for special lines
        3720.                         // so that styles applied to special lines don't apply to the actual
        3721.                         // code on that line
        3722.                         $def_attr = ' style="' . $this->code_style . '"';
        3723.                     }
        3724.                 } else {
        3725.                     if ($this->use_classes) {
        3726.                         //$attr = ' class="li1"';
        3727.                         $attrs['class'][] = 'li1';
        3728.                         $def_attr = ' class="de1"';
        3729.                     } else {
        3730.                         //$attr = ' style="' . $this->line_style1 . '"';
        3731.                         $attrs['style'][] = $this->line_style1;
        3732.                         $def_attr = ' style="' . $this->code_style . '"';
        3733.                     }
        3734.                 }
        3735.  
        3736.                 //Check which type of tag to insert for this line
        3737.                 if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a>) {
        3738.                     $start = "<pre$def_attr>";
        3739.                     $end = '</pre>';
        3740.                 } else {
        3741.                     // Span or div?
        3742.                     $start = "<div$def_attr>";
        3743.                     $end = '</div>';
        3744.                 }
        3745.  
        3746.                 ++$i;
        3747.  
        3748.                 // Are we supposed to use ids? If so, add them
        3749.                 if ($this->add_ids) {
        3750.                     $attrs['id'][] = "$this->overall_id-$i";
        3751.                 }
        3752.  
        3753.                 //Is this some line with extra styles???
        3754.                 if (in_array($i, $this->highlight_extra_lines)) {
        3755.                     if ($this->use_classes) {
        3756.                         if (isset($this->highlight_extra_lines_styles[$i])) {
        3757.                             $attrs['class'][] = "lx$i";
        3758.                         } else {
        3759.                             $attrs['class'][] = "ln-xtra";
        3760.                         }
        3761.                     } else {
        3762.                         array_push($attrs['style'], $this->get_line_style($i));
        3763.                     }
        3764.                 }
        3765.  
        3766.                 // Add in the line surrounded by appropriate list HTML
        3767.                 $attr_string = '';
        3768.                 foreach ($attrs as $key => $attr) {
        3769.                     $attr_string .= ' ' . $key . '="' . implode(' ', $attr) . '"';
        3770.                 }
        3771.  
        3772.                 $parsed_code .= "<li$attr_string>$start{$code[$i-1]}$end</li>$ls";
        3773.                 unset($code[$i - 1]);
        3774.             }
        3775.         } else {
        3776.             $n = count($code);
        3777.             if ($this->use_classes) {
        3778.                 $attributes = ' class="de1"';
        3779.             } else {
        3780.                 $attributes = ' style="'$this->code_style .'"';
        3781.             }
        3782.             if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a>) {
        3783.                 $parsed_code .= '<pre'$attributes .'>';
        3784.             } elseif ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_TABLE">GESHI_HEADER_PRE_TABLE</a>) {
        3785.                 if ($this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        3786.                     if ($this->use_classes) {
        3787.                         $attrs = ' class="ln"';
        3788.                     } else {
        3789.                         $attrs = ' style="'$this->table_linenumber_style .'"';
        3790.                     }
        3791.                     $parsed_code .= '<td'.$attrs.'><pre'.$attributes.'>';
        3792.                     // get linenumbers
        3793.                     // we don't merge it with the for below, since it should be better for
        3794.                     // memory consumption this way
        3795.                     // @todo: but... actually it would still be somewhat nice to merge the two loops
        3796.                     //        the mem peaks are at different positions
        3797.                     for ($i = 0; $i < $n; ++$i) {
        3798.                         $close = 0;
        3799.                         // fancy lines
        3800.                         if ($this->line_numbers == <a href="../geshi/core/_geshi.php.html#defineGESHI_FANCY_LINE_NUMBERS">GESHI_FANCY_LINE_NUMBERS</a> &&
        3801.                             $i % $this->line_nth_row == ($this->line_nth_row - 1)) {
        3802.                             // Set the attributes to style the line
        3803.                             if ($this->use_classes) {
        3804.                                 $parsed_code .= '<span class="xtra li2"><span class="de2">';
        3805.                             } else {
        3806.                                 // This style "covers up" the special styles set for special lines
        3807.                                 // so that styles applied to special lines don't apply to the actual
        3808.                                 // code on that line
        3809.                                 $parsed_code .= '<span style="display:block;' . $this->line_style2 . '">'
        3810.                                                   .'<span style="' . $this->code_style .'">';
        3811.                             }
        3812.                             $close += 2;
        3813.                         }
        3814.                         //Is this some line with extra styles???
        3815.                         if (in_array($i + 1, $this->highlight_extra_lines)) {
        3816.                             if ($this->use_classes) {
        3817.                                 if (isset($this->highlight_extra_lines_styles[$i])) {
        3818.                                     $parsed_code .= "<span class=\"xtra lx$i\">";
        3819.                                 } else {
        3820.                                     $parsed_code .= "<span class=\"xtra ln-xtra\">";
        3821.                                 }
        3822.                             } else {
        3823.                                 $parsed_code .= "<span style=\"display:block;" . $this->get_line_style($i) . "\">";
        3824.                             }
        3825.                             ++$close;
        3826.                         }
        3827.                         $parsed_code .= $this->line_numbers_start + $i;
        3828.                         if ($close) {
        3829.                             $parsed_code .= str_repeat('</span>', $close);
        3830.                         } else if ($i != $n) {
        3831.                             $parsed_code .= "\n";
        3832.                         }
        3833.                     }
        3834.                     $parsed_code .= '</pre></td><td'.$attributes.'>';
        3835.                 }
        3836.                 $parsed_code .= '<pre'$attributes .'>';
        3837.             }
        3838.             // No line numbers, but still need to handle highlighting lines extra.
        3839.             // Have to use divs so the full width of the code is highlighted
        3840.             $close = 0;
        3841.             for ($i = 0; $i < $n; ++$i) {
        3842.                 // Make lines have at least one space in them if they're empty
        3843.                 // BenBE: Checking emptiness using trim instead of relying on blanks
        3844.                 if ('' == trim($code[$i])) {
        3845.                     $code[$i] = '&nbsp;';
        3846.                 }
        3847.                 // fancy lines
        3848.                 if ($this->line_numbers == <a href="../geshi/core/_geshi.php.html#defineGESHI_FANCY_LINE_NUMBERS">GESHI_FANCY_LINE_NUMBERS</a> &&
        3849.                     $i % $this->line_nth_row == ($this->line_nth_row - 1)) {
        3850.                     // Set the attributes to style the line
        3851.                     if ($this->use_classes) {
        3852.                         $parsed_code .= '<span class="xtra li2"><span class="de2">';
        3853.                     } else {
        3854.                         // This style "covers up" the special styles set for special lines
        3855.                         // so that styles applied to special lines don't apply to the actual
        3856.                         // code on that line
        3857.                         $parsed_code .= '<span style="display:block;' . $this->line_style2 . '">'
        3858.                                           .'<span style="' . $this->code_style .'">';
        3859.                     }
        3860.                     $close += 2;
        3861.                 }
        3862.                 //Is this some line with extra styles???
        3863.                 if (in_array($i + 1, $this->highlight_extra_lines)) {
        3864.                     if ($this->use_classes) {
        3865.                         if (isset($this->highlight_extra_lines_styles[$i])) {
        3866.                             $parsed_code .= "<span class=\"xtra lx$i\">";
        3867.                         } else {
        3868.                             $parsed_code .= "<span class=\"xtra ln-xtra\">";
        3869.                         }
        3870.                     } else {
        3871.                         $parsed_code .= "<span style=\"display:block;" . $this->get_line_style($i) . "\">";
        3872.                     }
        3873.                     ++$close;
        3874.                 }
        3875.  
        3876.                 $parsed_code .= $code[$i];
        3877.  
        3878.                 if ($close) {
        3879.                   $parsed_code .= str_repeat('</span>', $close);
        3880.                   $close = 0;
        3881.                 }
        3882.                 elseif ($i + 1 < $n) {
        3883.                     $parsed_code .= "\n";
        3884.                 }
        3885.                 unset($code[$i]);
        3886.             }
        3887.  
        3888.             if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a> || $this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_TABLE">GESHI_HEADER_PRE_TABLE</a>) {
        3889.                 $parsed_code .= '</pre>';
        3890.             }
        3891.             if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_TABLE">GESHI_HEADER_PRE_TABLE</a> && $this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        3892.                 $parsed_code .= '</td>';
        3893.             }
        3894.         }
        3895.  
        3896.         $parsed_code .= $this->footer();
        3897.     }
        3898.  
        3899.     /**
        3900.      * Creates the header for the code block (with correct attributes)
        3901.      *
        3902.      * @return string The header for the code block
        3903.      * @since  1.0.0
        3904.      * @access private
        3905.      */
        3906.     function header() {
        3907.         // Get attributes needed
        3908.         /**
        3909.          * @todo   Document behaviour change - class is outputted regardless of whether
        3910.          *         we're using classes or not. Same with style
        3911.          */
        3912.         $attributes = ' class="' . $this->language;
        3913.         if ($this->overall_class != '') {
        3914.             $attributes .= " ".$this->overall_class;
        3915.         }
        3916.         $attributes .= '"';
        3917.  
        3918.         if ($this->overall_id != '') {
        3919.             $attributes .= " id=\"{$this->overall_id}\"";
        3920.         }
        3921.         if ($this->overall_style != '') {
        3922.             $attributes .= ' style="' . $this->overall_style . '"';
        3923.         }
        3924.  
        3925.         $ol_attributes = '';
        3926.  
        3927.         if ($this->line_numbers_start != 1) {
        3928.             $ol_attributes .= ' start="' . $this->line_numbers_start . '"';
        3929.         }
        3930.  
        3931.         // Get the header HTML
        3932.         $header = $this->header_content;
        3933.         if ($header) {
        3934.             if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a> || $this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a>) {
        3935.                 $header = str_replace("\n", '', $header);
        3936.             }
        3937.             $header = $this->replace_keywords($header);
        3938.  
        3939.             if ($this->use_classes) {
        3940.                 $attr = ' class="head"';
        3941.             } else {
        3942.                 $attr = " style=\"{$this->header_content_style}\"";
        3943.             }
        3944.             if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) {
        3945.                 $header = "<thead><tr><td colspan=\"2\" $attr>$header</td></tr></thead>";
        3946.             } else {
        3947.                 $header = "<div$attr>$header</div>";
        3948.             }
        3949.         }
        3950.  
        3951.         if (GESHI_HEADER_NONE == $this->header_type) {
        3952.             if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) {
        3953.                 return "$header<ol$attributes$ol_attributes>";
        3954.             }
        3955.             return $header . ($this->force_code_block ? '<div>' : '');
        3956.         }
        3957.  
        3958.         // Work out what to return and do it
        3959.         if ($this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        3960.             if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a>) {
        3961.                 return "<pre$attributes>$header<ol$ol_attributes>";
        3962.             } else if ($this->header_type == GESHI_HEADER_DIV ||
        3963.                 $this->header_type == GESHI_HEADER_PRE_VALID) {
        3964.                 return "<div$attributes>$header<ol$ol_attributes>";
        3965.             } else if ($this->header_type == GESHI_HEADER_PRE_TABLE) {
        3966.                 return "<table$attributes>$header<tbody><tr class=\"li1\">";
        3967.             }
        3968.         } else {
        3969.             if ($this->header_type == GESHI_HEADER_PRE) {
        3970.                 return "<pre$attributes>$header"  .
        3971.                     ($this->force_code_block ? '<div>' : '');
        3972.             } else {
        3973.                 return "<div$attributes>$header.
        3974.                     ($this->force_code_block ? '<div>' : '');
        3975.             }
        3976.         }
        3977.     }
        3978.  
        3979.     /**
        3980.      * Returns the footer for the code block.
        3981.      *
        3982.      * @return string The footer for the code block
        3983.      * @since  1.0.0
        3984.      * @access private
        3985.      */
        3986.     function footer() {
        3987.         $footer = $this->footer_content;
        3988.         if ($footer) {
        3989.             if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a>) {
        3990.                 $footer = str_replace("\n", '', $footer);;
        3991.             }
        3992.             $footer = $this->replace_keywords($footer);
        3993.  
        3994.             if ($this->use_classes) {
        3995.                 $attr = ' class="foot"';
        3996.             } else {
        3997.                 $attr = " style=\"{$this->footer_content_style}\"";
        3998.             }
        3999.             if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->linenumbers != GESHI_NO_LINE_NUMBERS) {
        4000.                 $footer = "<tfoot><tr><td colspan=\"2\">$footer</td></tr></tfoot>";
        4001.             } else {
        4002.                 $footer = "<div$attr>$footer</div>";
        4003.             }
        4004.         }
        4005.  
        4006.         if (GESHI_HEADER_NONE == $this->header_type) {
        4007.             return ($this->line_numbers != GESHI_NO_LINE_NUMBERS) ? '</ol>' . $footer : $footer;
        4008.         }
        4009.  
        4010.         if ($this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_DIV">GESHI_HEADER_DIV</a> || $this->header_type == <a href="../geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE_VALID">GESHI_HEADER_PRE_VALID</a>) {
        4011.             if ($this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        4012.                 return "</ol>$footer</div>";
        4013.             }
        4014.             return ($this->force_code_block ? '</div>' : '') .
        4015.                 "$footer</div>";
        4016.         }
        4017.         elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) {
        4018.             if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) {
        4019.                 return "</tr></tbody>$footer</table>";
        4020.             }
        4021.             return ($this->force_code_block ? '</div>' : '') .
        4022.                 "$footer</div>";
        4023.         }
        4024.         else {
        4025.             if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) {
        4026.                 return "</ol>$footer</pre>";
        4027.             }
        4028.             return ($this->force_code_block ? '</div>' : '') .
        4029.                 "$footer</pre>";
        4030.         }
        4031.     }
        4032.  
        4033.     /**
        4034.      * Replaces certain keywords in the header and footer with
        4035.      * certain configuration values
        4036.      *
        4037.      * @param  string The header or footer content to do replacement on
        4038.      * @return string The header or footer with replaced keywords
        4039.      * @since  1.0.2
        4040.      * @access private
        4041.      */
        4042.     function replace_keywords($instr) {
        4043.         $keywords = $replacements = array();
        4044.  
        4045.         $keywords[] = '<TIME>';
        4046.         $keywords[] = '{TIME}';
        4047.         $replacements[] = $replacements[] = number_format($time = $this->get_time(), 3);
        4048.  
        4049.         $keywords[] = '<LANGUAGE>';
        4050.         $keywords[] = '{LANGUAGE}';
        4051.         $replacements[] = $replacements[] = $this->language_data['LANG_NAME'];
        4052.  
        4053.         $keywords[] = '<VERSION>';
        4054.         $keywords[] = '{VERSION}';
        4055.         $replacements[] = $replacements[] = <a href="../geshi/core/_geshi.php.html#defineGESHI_VERSION">GESHI_VERSION</a>;
        4056.  
        4057.         $keywords[] = '<SPEED>';
        4058.         $keywords[] = '{SPEED}';
        4059.         if ($time <= 0) {
        4060.             $speed = 'N/A';
        4061.         } else {
        4062.             $speed = strlen($this->source) / $time;
        4063.             if ($speed >= 1024) {
        4064.                 $speed = sprintf("%.2f KB/s", $speed / 1024.0);
        4065.             } else {
        4066.                 $speed = sprintf("%.0f B/s", $speed);
        4067.             }
        4068.         }
        4069.         $replacements[] = $replacements[] = $speed;
        4070.  
        4071.         return str_replace($keywords, $replacements, $instr);
        4072.     }
        4073.  
        4074.     /**
        4075.      * Secure replacement for PHP built-in function htmlspecialchars().
        4076.      *
        4077.      * See ticket #427 (http://wush.net/trac/wikka/ticket/427) for the rationale
        4078.      * for this replacement function.
        4079.      *
        4080.      * The INTERFACE for this function is almost the same as that for
        4081.      * htmlspecialchars(), with the same default for quote style; however, there
        4082.      * is no 'charset' parameter. The reason for this is as follows:
        4083.      *
        4084.      * The PHP docs say:
        4085.      *      "The third argument charset defines character set used in conversion."
        4086.      *
        4087.      * I suspect PHP's htmlspecialchars() is working at the byte-value level and
        4088.      * thus _needs_ to know (or asssume) a character set because the special
        4089.      * characters to be replaced could exist at different code points in
        4090.      * different character sets. (If indeed htmlspecialchars() works at
        4091.      * byte-value level that goes some  way towards explaining why the
        4092.      * vulnerability would exist in this function, too, and not only in
        4093.      * htmlentities() which certainly is working at byte-value level.)
        4094.      *
        4095.      * This replacement function however works at character level and should
        4096.      * therefore be "immune" to character set differences - so no charset
        4097.      * parameter is needed or provided. If a third parameter is passed, it will
        4098.      * be silently ignored.
        4099.      *
        4100.      * In the OUTPUT there is a minor difference in that we use '&#39;' instead
        4101.      * of PHP's '&#039;' for a single quote: this provides compatibility with
        4102.      *      get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES)
        4103.      * (see comment by mikiwoz at yahoo dot co dot uk on
        4104.      * http://php.net/htmlspecialchars); it also matches the entity definition
        4105.      * for XML 1.0
        4106.      * (http://www.w3.org/TR/xhtml1/dtds.html#a_dtd_Special_characters).
        4107.      * Like PHP we use a numeric character reference instead of '&apos;' for the
        4108.      * single quote. For the other special characters we use the named entity
        4109.      * references, as PHP is doing.
        4110.      *
        4111.      * @author      {@link http://wikkawiki.org/JavaWoman Marjolein Katsma}
        4112.      *
        4113.      * @license     http://www.gnu.org/copyleft/lgpl.html
        4114.      *              GNU Lesser General Public License
        4115.      * @copyright   Copyright 2007, {@link http://wikkawiki.org/CreditsPage
        4116.      *              Wikka Development Team}
        4117.      *
        4118.      * @access      private
        4119.      * @param       string  $string string to be converted
        4120.      * @param       integer $quote_style
        4121.      *                      - ENT_COMPAT:   escapes &, <, > and double quote (default)
        4122.      *                      - ENT_NOQUOTES: escapes only &, < and >
        4123.      *                      - ENT_QUOTES:   escapes &, <, >, double and single quotes
        4124.      * @return      string  converted string
        4125.      * @since       1.0.7.18
        4126.      */
        4127.     function hsc($string, $quote_style = ENT_COMPAT) {
        4128.         // init
        4129.         static $aTransSpecchar = array(
        4130.             '&' => '&amp;',
        4131.             '"' => '&quot;',
        4132.             '<' => '&lt;',
        4133.             '>' => '&gt;',
        4134.  
        4135.             //This fix is related to SF#1923020, but has to be applied
        4136.             //regardless of actually highlighting symbols.
        4137.             //Circumvent a bug with symbol highlighting
        4138.             //This is required as ; would produce undesirable side-effects if it
        4139.             //was not to be processed as an entity.
        4140.             ';' => '<SEMI>', // Force ; to be processed as entity
        4141.             '|' => '<PIPE>' // Force | to be processed as entity
        4142.             );                      // ENT_COMPAT set
        4143.         switch ($quote_style) {
        4144.             case ENT_NOQUOTES// don't convert double quotes
        4145.                 unset($aTransSpecchar['"']);
        4146.                 break;
        4147.             case ENT_QUOTES// convert single quotes as well
        4148.                 $aTransSpecchar["'"] = '&#39;'; // (apos) htmlspecialchars() uses '&#039;'
        4149.                 break;
        4150.         }
        4151.  
        4152.         // return translated string
        4153.         return strtr($string, $aTransSpecchar);
        4154.     }
        4155.  
        4156.     /**
        4157.      * Returns a stylesheet for the highlighted code. If $economy mode
        4158.      * is true, we only return the stylesheet declarations that matter for
        4159.      * this code block instead of the whole thing
        4160.      *
        4161.      * @param  boolean Whether to use economy mode or not
        4162.      * @return string A stylesheet built on the data for the current language
        4163.      * @since  1.0.0
        4164.      */
        4165.     function get_stylesheet($economy_mode = true) {
        4166.         // If there's an error, chances are that the language file
        4167.         // won't have populated the language data file, so we can't
        4168.         // risk getting a stylesheet...
        4169.         if ($this->error) {
        4170.             return '';
        4171.         }
        4172.  
        4173.         //Check if the style rearrangements have been processed ...
        4174.         //This also does some preprocessing to check which style groups are useable ...
        4175.         if(!isset($this->language_data['NUMBERS_CACHE'])) {
        4176.             $this->build_style_cache();
        4177.         }
        4178.  
        4179.         // First, work out what the selector should be. If there's an ID,
        4180.         // that should be used, the same for a class. Otherwise, a selector
        4181.         // of '' means that these styles will be applied anywhere
        4182.         if ($this->overall_id) {
        4183.             $selector = '#' . $this->overall_id;
        4184.         } else {
        4185.             $selector = '.' . $this->language;
        4186.             if ($this->overall_class) {
        4187.                 $selector .= '.' . $this->overall_class;
        4188.             }
        4189.         }
        4190.         $selector .= ' ';
        4191.  
        4192.         // Header of the stylesheet
        4193.         if (!$economy_mode) {
        4194.             $stylesheet = "/**\n".
        4195.                 " * GeSHi Dynamically Generated Stylesheet\n".
        4196.                 " * --------------------------------------\n".
        4197.                 " * Dynamically generated stylesheet for {$this->language}\n".
        4198.                 " * CSS class: {$this->overall_class}, CSS id: {$this->overall_id}\n".
        4199.                 " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" .
        4200.                 " * (http://qbnz.com/highlighter/ and http://geshi.org/)\n".
        4201.                 " * --------------------------------------\n".
        4202.                 " */\n";
        4203.         } else {
        4204.             $stylesheet = "/**\n".
        4205.                 " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" .
        4206.                 " * (http://qbnz.com/highlighter/ and http://geshi.org/)\n".
        4207.                 " */\n";
        4208.         }
        4209.  
        4210.         // Set the <ol> to have no effect at all if there are line numbers
        4211.         // (<ol>s have margins that should be destroyed so all layout is
        4212.         // controlled by the set_overall_style method, which works on the
        4213.         // <pre> or <div> container). Additionally, set default styles for lines
        4214.         if (!$economy_mode || $this->line_numbers != <a href="../geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a>) {
        4215.             //$stylesheet .= "$selector, {$selector}ol, {$selector}ol li {margin: 0;}\n";
        4216.             $stylesheet .= "$selector.de1, $selector.de2 {{$this->code_style}}\n";
        4217.         }
        4218.  
        4219.         // Add overall styles
        4220.         // note: neglect economy_mode, empty styles are meaningless
        4221.         if ($this->overall_style != '') {
        4222.             $stylesheet .= "$selector {{$this->overall_style}}\n";
        4223.         }
        4224.  
        4225.         // Add styles for links
        4226.         // note: economy mode does not make _any_ sense here
        4227.         //       either the style is empty and thus no selector is needed
        4228.         //       or the appropriate key is given.
        4229.         foreach ($this->link_styles as $key => $style) {
        4230.             if ($style != '') {
        4231.                 switch ($key) {
        4232.                     case <a href="../geshi/core/_geshi.php.html#defineGESHI_LINK">GESHI_LINK</a>:
        4233.                         $stylesheet .= "{$selector}a:link {{$style}}\n";
        4234.                         break;
        4235.                     case GESHI_HOVER:
        4236.                         $stylesheet .= "{$selector}a:hover {{$style}}\n";
        4237.                         break;
        4238.                     case GESHI_ACTIVE:
        4239.                         $stylesheet .= "{$selector}a:active {{$style}}\n";
        4240.                         break;
        4241.                     case GESHI_VISITED:
        4242.                         $stylesheet .= "{$selector}a:visited {{$style}}\n";
        4243.                         break;
        4244.                 }
        4245.             }
        4246.         }
        4247.  
        4248.         // Header and footer
        4249.         // note: neglect economy_mode, empty styles are meaningless
        4250.         if ($this->header_content_style != ''{
        4251.             $stylesheet .= "$selector.head {{$this->header_content_style}}\n";
        4252.         }
        4253.         if ($this->footer_content_style != ''{
        4254.             $stylesheet .= "$selector.foot {{$this->footer_content_style}}\n";
        4255.         }
        4256.  
        4257.         // Styles for important stuff
        4258.         // note: neglect economy_mode, empty styles are meaningless
        4259.         if ($this->important_styles != ''{
        4260.             $stylesheet .= "$selector.imp {{$this->important_styles}}\n";
        4261.         }
        4262.  
        4263.         // Simple line number styles
        4264.         if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS&& $this->line_style1 != ''{
        4265.             $stylesheet .= "{$selector}li, {$selector}.li1 {{$this->line_style1}}\n";
        4266.         }
        4267.         if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS&& $this->table_linenumber_style != ''{
        4268.             $stylesheet .= "{$selector}.ln {{$this->table_linenumber_style}}\n";
        4269.         }
        4270.         // If there is a style set for fancy line numbers, echo it out
        4271.         if ((!$economy_mode || $this->line_numbers == GESHI_FANCY_LINE_NUMBERS&& $this->line_style2 != ''{
        4272.             $stylesheet .= "{$selector}.li2 {{$this->line_style2}}\n";
        4273.         }
        4274.  
        4275.         // note: empty styles are meaningless
        4276.         foreach ($this->language_data['STYLES']['KEYWORDS'as $group => $styles{
        4277.             if ($styles != '' && (!$economy_mode ||
        4278.                 (isset($this->lexic_permissions['KEYWORDS'][$group]&&
        4279.                 $this->lexic_permissions['KEYWORDS'][$group]))) {
        4280.                 $stylesheet .= "$selector.kw$group {{$styles}}\n";
        4281.             }
        4282.         }
        4283.         foreach ($this->language_data['STYLES']['COMMENTS'as $group => $styles{
        4284.             if ($styles != '' && (!$economy_mode ||
        4285.                 (isset($this->lexic_permissions['COMMENTS'][$group]&&
        4286.                 $this->lexic_permissions['COMMENTS'][$group]||
        4287.                 (!empty($this->language_data['COMMENT_REGEXP']&&
        4288.                 !empty($this->language_data['COMMENT_REGEXP'][$group])))) {
        4289.                 $stylesheet .= "$selector.co$group {{$styles}}\n";
        4290.             }
        4291.         }
        4292.         foreach ($this->language_data['STYLES']['ESCAPE_CHAR'as $group => $styles{
        4293.             if ($styles != '' && (!$economy_mode || $this->lexic_permissions['ESCAPE_CHAR'])) {
        4294.                 // NEW: since 1.0.8 we have to handle hardescapes
        4295.                 if ($group === 'HARD'{
        4296.                     $group '_h';
        4297.                 }
        4298.                 $stylesheet .= "$selector.es$group {{$styles}}\n";
        4299.             }
        4300.         }
        4301.         foreach ($this->language_data['STYLES']['BRACKETS'as $group => $styles{
        4302.             if ($styles != '' && (!$economy_mode || $this->lexic_permissions['BRACKETS'])) {
        4303.                 $stylesheet .= "$selector.br$group {{$styles}}\n";
        4304.             }
        4305.         }
        4306.         foreach ($this->language_data['STYLES']['SYMBOLS'as $group => $styles{
        4307.             if ($styles != '' && (!$economy_mode || $this->lexic_permissions['SYMBOLS'])) {
        4308.                 $stylesheet .= "$selector.sy$group {{$styles}}\n";
        4309.             }
        4310.         }
        4311.         foreach ($this->language_data['STYLES']['STRINGS'as $group => $styles{
        4312.             if ($styles != '' && (!$economy_mode || $this->lexic_permissions['STRINGS'])) {
        4313.                 // NEW: since 1.0.8 we have to handle hardquotes
        4314.                 if ($group === 'HARD'{
        4315.                     $group '_h';
        4316.                 }
        4317.                 $stylesheet .= "$selector.st$group {{$styles}}\n";
        4318.             }
        4319.         }
        4320.         foreach ($this->language_data['STYLES']['NUMBERS'as $group => $styles{
        4321.             if ($styles != '' && (!$economy_mode || $this->lexic_permissions['NUMBERS'])) {
        4322.                 $stylesheet .= "$selector.nu$group {{$styles}}\n";
        4323.             }
        4324.         }
        4325.         foreach ($this->language_data['STYLES']['METHODS'as $group => $styles{
        4326.             if ($styles != '' && (!$economy_mode || $this->lexic_permissions['METHODS'])) {
        4327.                 $stylesheet .= "$selector.me$group {{$styles}}\n";
        4328.             }
        4329.         }
        4330.         // note: neglect economy_mode, empty styles are meaningless
        4331.         foreach ($this->language_data['STYLES']['SCRIPT'as $group => $styles{
        4332.             if ($styles != ''{
        4333.                 $stylesheet .= "$selector.sc$group {{$styles}}\n";
        4334.             }
        4335.         }
        4336.         foreach ($this->language_data['STYLES']['REGEXPS'as $group => $styles{
        4337.             if ($styles != '' && (!$economy_mode ||
        4338.                 (isset($this->lexic_permissions['REGEXPS'][$group]&&
        4339.                 $this->lexic_permissions['REGEXPS'][$group]))) {
        4340.                 if (is_array($this->language_data['REGEXPS'][$group]&&
        4341.                     array_key_exists(GESHI_CLASS$this->language_data['REGEXPS'][$group])) {
        4342.                     $stylesheet .= "$selector.";
        4343.                     $stylesheet .= $this->language_data['REGEXPS'][$group][GESHI_CLASS];
        4344.                     $stylesheet .= " {{$styles}}\n";
        4345.                 else {
        4346.                     $stylesheet .= "$selector.re$group {{$styles}}\n";
        4347.                 }
        4348.             }
        4349.         }
        4350.         // Styles for lines being highlighted extra
        4351.         if (!$economy_mode || (count($this->highlight_extra_lines)!=count($this->highlight_extra_lines_styles))) {
        4352.             $stylesheet .= "{$selector}.ln-xtra, {$selector}li.ln-xtra, {$selector}div.ln-xtra {{$this->highlight_extra_lines_style}}\n";
        4353.         }
        4354.         $stylesheet .= "{$selector}span.xtra { display:block; }\n";
        4355.         foreach ($this->highlight_extra_lines_styles as $lineid => $linestyle{
        4356.             $stylesheet .= "{$selector}.lx$lineid, {$selector}li.lx$lineid, {$selector}div.lx$lineid {{$linestyle}}\n";
        4357.         }
        4358.  
        4359.         return $stylesheet;
        4360.     }
        4361.  
        4362.     /**
        4363.      * Get's the style that is used for the specified line
        4364.      *
        4365.      * @param int The line number information is requested for
        4366.      * @access private
        4367.      * @since 1.0.7.21
        4368.      */
        4369.     function get_line_style($line{
        4370.         //$style = null;
        4371.         $style null;
        4372.         if (isset($this->highlight_extra_lines_styles[$line])) {
        4373.             $style $this->highlight_extra_lines_styles[$line];
        4374.         else // if no "extra" style assigned
        4375.             $style $this->highlight_extra_lines_style;
        4376.         }
        4377.  
        4378.         return $style;
        4379.     }
        4380.  
        4381.     /**
        4382.     * this functions creates an optimized regular expression list
        4383.     * of an array of strings.
        4384.     *
        4385.     * Example:
        4386.     * <code>$list = array('faa', 'foo', 'foobar');
        4387.     *          => string 'f(aa|oo(bar)?)'</code>
        4388.     *
        4389.     * @param $list array of (unquoted) strings
        4390.     * @param $regexp_delimiter your regular expression delimiter, @see preg_quote()
        4391.     * @return string for regular expression
        4392.     * @author Milian Wolff <mail@milianw.de>
        4393.     * @since 1.0.8
        4394.     * @access private
        4395.     */
        4396.     function optimize_regexp_list($list$regexp_delimiter '/'{
        4397.         $regex_chars array('.''\\''+''*''?''[''^'']''$',
        4398.             '('')''{''}''=''!''<''>''|'':'$regexp_delimiter);
        4399.         sort($list);
        4400.         $regexp_list array('');
        4401.         $num_subpatterns 0;
        4402.         $list_key 0;
        4403.  
        4404.         // the tokens which we will use to generate the regexp list
        4405.         $tokens array();
        4406.         $prev_keys array();
        4407.         // go through all entries of the list and generate the token list
        4408.         $cur_len 0;
        4409.         for ($i 0$i_max count($list)$i $i_max++$i{
        4410.             if ($cur_len GESHI_MAX_PCRE_LENGTH{
        4411.                 // seems like the length of this pcre is growing exorbitantly
        4412.                 $regexp_list[++$list_key$this->_optimize_regexp_list_tokens_to_string($tokens);
        4413.                 $num_subpatterns substr_count($regexp_list[$list_key]'(?:');
        4414.                 $tokens array();
        4415.                 $cur_len 0;
        4416.             }
        4417.             $level 0;
        4418.             $entry preg_quote((string) $list[$i]$regexp_delimiter);
        4419.             $pointer &$tokens;
        4420.             // properly assign the new entry to the correct position in the token array
        4421.             // possibly generate smaller common denominator keys
        4422.             while (true{
        4423.                 // get the common denominator
        4424.                 if (isset($prev_keys[$level])) {
        4425.                     if ($prev_keys[$level== $entry{
        4426.                         // this is a duplicate entry, skip it
        4427.                         continue 2;
        4428.                     }
        4429.                     $char 0;
        4430.                     while (isset($entry[$char]&& isset($prev_keys[$level][$char])
        4431.                             && $entry[$char== $prev_keys[$level][$char]{
        4432.                         ++$char;
        4433.                     }
        4434.                     if ($char 0{
        4435.                         // this entry has at least some chars in common with the current key
        4436.                         if ($char == strlen($prev_keys[$level])) {
        4437.                             // current key is totally matched, i.e. this entry has just some bits appended
        4438.                             $pointer &$pointer[$prev_keys[$level]];
        4439.                         else {
        4440.                             // only part of the keys match
        4441.                             $new_key_part1 substr($prev_keys[$level]0$char);
        4442.                             $new_key_part2 substr($prev_keys[$level]$char);
        4443.  
        4444.                             if (in_array($new_key_part1[0]$regex_chars)
        4445.                                 || in_array($new_key_part2[0]$regex_chars)) {
        4446.                                 // this is bad, a regex char as first character
        4447.                                 $pointer[$entryarray('' => true);
        4448.                                 array_splice($prev_keys$levelcount($prev_keys)$entry);
        4449.                                 $cur_len += strlen($entry);
        4450.                                 continue;
        4451.                             else {
        4452.                                 // relocate previous tokens
        4453.                                 $pointer[$new_key_part1array($new_key_part2 => $pointer[$prev_keys[$level]]);
        4454.                                 unset($pointer[$prev_keys[$level]]);
        4455.                                 $pointer &$pointer[$new_key_part1];
        4456.                                 // recreate key index
        4457.                                 array_splice($prev_keys$levelcount($prev_keys)array($new_key_part1$new_key_part2));
        4458.                                 $cur_len += strlen($new_key_part2);
        4459.                             }
        4460.                         }
        4461.                         ++$level;
        4462.                         $entry substr($entry$char);
        4463.                         continue;
        4464.                     }
        4465.                     // else: fall trough, i.e. no common denominator was found
        4466.                 }
        4467.                 if ($level == && !empty($tokens)) {
        4468.                     // we can dump current tokens into the string and throw them away afterwards
        4469.                     $new_entry $this->_optimize_regexp_list_tokens_to_string($tokens);
        4470.                     $new_subpatterns substr_count($new_entry'(?:');
        4471.                     if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns $new_subpatterns GESHI_MAX_PCRE_SUBPATTERNS{
        4472.                         $regexp_list[++$list_key$new_entry;
        4473.                         $num_subpatterns $new_subpatterns;
        4474.                     else {
        4475.                         if (!empty($regexp_list[$list_key])) {
        4476.                             $new_entry '|' $new_entry;
        4477.                         }
        4478.                         $regexp_list[$list_key.= $new_entry;
        4479.                         $num_subpatterns += $new_subpatterns;
        4480.                     }
        4481.                     $tokens array();
        4482.                     $cur_len 0;
        4483.                 }
        4484.                 // no further common denominator found
        4485.                 $pointer[$entryarray('' => true);
        4486.                 array_splice($prev_keys$levelcount($prev_keys)$entry);
        4487.  
        4488.                 $cur_len += strlen($entry);
        4489.                 break;
        4490.             }
        4491.             unset($list[$i]);
        4492.         }
        4493.         // make sure the last tokens get converted as well
        4494.         $new_entry $this->_optimize_regexp_list_tokens_to_string($tokens);
        4495.         if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns substr_count($new_entry'(?:'GESHI_MAX_PCRE_SUBPATTERNS{
        4496.             $regexp_list[++$list_key$new_entry;
        4497.         else {
        4498.             if (!empty($regexp_list[$list_key])) {
        4499.                 $new_entry '|' $new_entry;
        4500.             }
        4501.             $regexp_list[$list_key.= $new_entry;
        4502.         }
        4503.         return $regexp_list;
        4504.     }
        4505.     /**
        4506.     * this function creates the appropriate regexp string of an token array
        4507.     * you should not call this function directly, @see $this->optimize_regexp_list().
        4508.     *
        4509.     * @param &$tokens array of tokens
        4510.     * @param $recursed bool to know wether we recursed or not
        4511.     * @return string
        4512.     * @author Milian Wolff <mail@milianw.de>
        4513.     * @since 1.0.8
        4514.     * @access private
        4515.     */
        4516.     function _optimize_regexp_list_tokens_to_string(&$tokens$recursed false{
        4517.         $list '';
        4518.         foreach ($tokens as $token => $sub_tokens{
        4519.             $list .= $token;
        4520.             $close_entry = isset($sub_tokens['']);
        4521.             unset($sub_tokens['']);
        4522.             if (!empty($sub_tokens)) {
        4523.                 $list .= '(?:' $this->_optimize_regexp_list_tokens_to_string($sub_tokenstrue')';
        4524.                 if ($close_entry{
        4525.                     // make sub_tokens optional
        4526.                     $list .= '?';
        4527.                 }
        4528.             }
        4529.             $list .= '|';
        4530.         }
        4531.         if (!$recursed{
        4532.             // do some optimizations
        4533.             // common trailing strings
        4534.             // BUGGY!
        4535.             //$list = preg_replace_callback('#(?<=^|\:|\|)\w+?(\w+)(?:\|.+\1)+(?=\|)#', create_function(
        4536.             //    '$matches', 'return "(?:" . preg_replace("#" . preg_quote($matches[1], "#") . "(?=\||$)#", "", $matches[0]) . ")" . $matches[1];'), $list);
        4537.             // (?:p)? => p?
        4538.             $list preg_replace('#\(\?\:(.)\)\?#''\1?'$list);
        4539.             // (?:a|b|c|d|...)? => [abcd...]?
        4540.             // TODO: a|bb|c => [ac]|bb
        4541.             static $callback_2;
        4542.             if (!isset($callback_2)) {
        4543.                 $callback_2 create_function('$matches''return "[" . str_replace("|", "", $matches[1]) . "]";');
        4544.             }
        4545.             $list preg_replace_callback('#\(\?\:((?:.\|)+.)\)#'$callback_2$list);
        4546.         }
        4547.         // return $list without trailing pipe
        4548.         return substr($list0-1);
        4549.     }
        4550. // End Class GeSHi
        4551.  
        4552.  
        4553. if (!function_exists('geshi_highlight')) {
        4554.     /**
        4555.      * Easy way to highlight stuff. Behaves just like highlight_string
        4556.      *
        4557.      * @param string The code to highlight
        4558.      * @param string The language to highlight the code in
        4559.      * @param string The path to the language files. You can leave this blank if you need
        4560.      *               as from version 1.0.7 the path should be automatically detected
        4561.      * @param boolean Whether to return the result or to echo
        4562.      * @return string The code highlighted (if $return is true)
        4563.      * @since 1.0.2
        4564.      */
        4565.     function geshi_highlight($string$language$path null$return false{
        4566.         $geshi new GeSHi($string$language$path);
        4567.         $geshi->set_header_type(GESHI_HEADER_NONE);
        4568.  
        4569.         if ($return{
        4570.             return '<code>' $geshi->parse_code('</code>';
        4571.         }
        4572.  
        4573.         echo '<code>' $geshi->parse_code('</code>';
        4574.  
        4575.         if ($geshi->error()) {
        4576.             return false;
        4577.         }
        4578.         return true;
        4579.     }
        4580. }
        4581.  
        4582. ?>

        Documentation generated on Thu, 25 Dec 2008 14:34:52 +0100 by phpDocumentor 1.4.2

        geshi/docs/api/elementindex_geshi.html0000664000175000017500000013515512014173556017334 0ustar benbebenbe

        [geshi] element index

        All elements
        a d e g h l o p r s
        a
        Method add_keyword
        Adds a keyword to a keyword group for highlighting
        Method add_keyword_group
        Creates a new keyword group
        d
        Method disable_highlighting
        Disables all highlighting
        e
        Method enable_classes
        Sets whether CSS classes should be used to highlight the source. Default is off, calling this method with no arguments will turn it on
        Method enable_highlighting
        Enables all highlighting
        Method enable_ids
        GeSHi::enable_ids() in geshi.php
        Whether CSS IDs should be added to each line
        Method enable_important_blocks
        Sets whether context-important blocks are highlighted
        Method enable_inner_code_block
        Sets whether to force a surrounding block around the highlighted code or not
        Method enable_keyword_links
        Turns linking of keywords on or off.
        Method enable_line_numbers
        Sets whether line numbers should be displayed.
        Method enable_multiline_span
        Sets wether spans and other HTML markup generated by GeSHi can span over multiple lines or not. Defaults to true to reduce overhead.
        Method enable_strict_mode
        Enables/disables strict highlighting. Default is off, calling this method without parameters will turn it on. See documentation for more details on strict mode and where to use it.
        Method error
        GeSHi::error() in geshi.php
        Returns an error message associated with the last GeSHi operation, or false if no error has occured
        g
        Method GeSHi
        GeSHi::GeSHi() in geshi.php
        Creates a new GeSHi object, with source and language
        Class GeSHi
        GeSHi in geshi.php
        The GeSHi Class.
        Page geshi.php
        geshi.php in geshi.php
        Constant GESHI_ACTIVE
        GESHI_ACTIVE in geshi.php
        Links in the source in the :active state
        Constant GESHI_CAPS_LOWER
        GESHI_CAPS_LOWER in geshi.php
        Leave keywords found as the case that they are
        Constant GESHI_CAPS_NO_CHANGE
        Lowercase keywords found
        Constant GESHI_CAPS_UPPER
        GESHI_CAPS_UPPER in geshi.php
        Uppercase keywords found
        Constant GESHI_END_IMPORTANT
        GESHI_END_IMPORTANT in geshi.php
        The ender for important parts of the source
        Constant GESHI_FANCY_LINE_NUMBERS
        Use fancy line numbers when building the result
        Constant GESHI_HEADER_DIV
        GESHI_HEADER_DIV in geshi.php
        Use a "div" to surround the source
        Constant GESHI_HEADER_NONE
        GESHI_HEADER_NONE in geshi.php
        Use nothing to surround the source
        Constant GESHI_HEADER_PRE
        GESHI_HEADER_PRE in geshi.php
        Use a "pre" to surround the source
        Constant GESHI_HEADER_PRE_TABLE
        Use a "table" to surround the source:
        Constant GESHI_HEADER_PRE_VALID
        Use a pre to wrap lines when line numbers are enabled or to wrap the whole code.
        Function geshi_highlight
        geshi_highlight() in geshi.php
        Easy way to highlight stuff. Behaves just like highlight_string
        Constant GESHI_HOVER
        GESHI_HOVER in geshi.php
        Links in the source in the :hover state
        Constant GESHI_LANG_ROOT
        GESHI_LANG_ROOT in geshi.php
        The language file directory for GeSHi
        Constant GESHI_LINK
        GESHI_LINK in geshi.php
        Links in the source in the :link state
        Constant GESHI_NORMAL_LINE_NUMBERS
        Use normal line numbers when building the result
        Constant GESHI_NO_LINE_NUMBERS
        Use no line numbers when building the result
        Constant GESHI_ROOT
        GESHI_ROOT in geshi.php
        The root directory for GeSHi
        Constant GESHI_SECURITY_PARANOID
        Tells GeSHi to be paranoid about security settings
        Constant GESHI_START_IMPORTANT
        The starter for important parts of the source
        Constant GESHI_VERSION
        GESHI_VERSION in geshi.php
        The version of this GeSHi file
        Constant GESHI_VISITED
        GESHI_VISITED in geshi.php
        Links in the source in the :visited state
        Method get_language_name
        Gets a human-readable language name (thanks to Simon Patterson for the idea :))
        Method get_language_name_from_extension
        Given a file extension, this method returns either a valid geshi language name, or the empty string if it couldn't be found
        Method get_multiline_span
        Get current setting for multiline spans, see GeSHi->enable_multiline_span().
        Method get_real_tab_width
        Returns the tab width to use, based on the current language and user preference
        Method get_stylesheet
        Returns a stylesheet for the highlighted code. If $economy mode is true, we only return the stylesheet declarations that matter for this code block instead of the whole thing
        Method get_time
        GeSHi::get_time() in geshi.php
        Gets the time taken to parse the code
        h
        Method highlight_lines_extra
        Specifies which lines to highlight extra
        l
        Method load_from_file
        Given a file name, this method loads its contents in, and attempts
        o
        Method optimize_keyword_group
        compile optimized regexp list for keyword group
        p
        Method parse_code
        GeSHi::parse_code() in geshi.php
        Returns the code in $this->source, highlighted and surrounded by the nessecary HTML.
        r
        Method remove_keyword
        Removes a keyword from a keyword group
        Method remove_keyword_group
        Removes a keyword group
        s
        Method set_brackets_highlighting
        Turns highlighting on/off for brackets
        Method set_brackets_style
        Sets the styles for brackets. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_case_keywords
        Sets the case that keywords should use when found. Use the constants:
        Method set_case_sensitivity
        Sets whether a set of keywords are checked for in a case sensitive manner
        Method set_code_style
        Sets the style for the actual code. This should be a string
        Method set_comments_highlighting
        Turns highlighting on/off for comment groups
        Method set_comments_style
        Sets the styles for comment groups. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_encoding
        Sets the encoding used for htmlspecialchars(), for international support.
        Method set_escape_characters_highlighting
        Turns highlighting on/off for escaped characters
        Method set_escape_characters_style
        Sets the styles for escaped characters. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_footer_content
        Sets the content of the footer block
        Method set_footer_content_style
        Sets the style for the footer content
        Method set_header_content
        Sets the content of the header block
        Method set_header_content_style
        Sets the style for the header content
        Method set_header_type
        Sets the type of header to be used.
        Method set_highlight_lines_extra_style
        Sets the style for extra-highlighted lines
        Method set_important_styles
        Sets styles for important parts of the code
        Method set_keyword_group_highlighting
        Turns highlighting on/off for a keyword group
        Method set_keyword_group_style
        Sets the style for a keyword group. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_language
        Sets the language for this object
        Method set_language_path
        Sets the path to the directory containing the language files. Note that this path is relative to the directory of the script that included geshi.php, NOT geshi.php itself.
        Method set_line_ending
        Sets the line-ending
        Method set_line_style
        Sets the styles for the line numbers.
        Method set_link_styles
        Sets styles for links in code
        Method set_link_target
        Sets the target for links in code
        Method set_methods_highlighting
        Turns highlighting on/off for methods
        Method set_methods_style
        Sets the styles for methods. $key is a number that references the
        Method set_numbers_highlighting
        Turns highlighting on/off for numbers
        Method set_numbers_style
        Sets the styles for numbers. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_overall_class
        Sets the overall classname for this block of code. This class can then be used in a stylesheet to style this object's output
        Method set_overall_id
        Sets the overall id for this block of code. This id can then be used in a stylesheet to style this object's output
        Method set_overall_style
        Sets the styles for the code that will be outputted when this object is parsed. The style should be a string of valid stylesheet declarations
        Method set_regexps_highlighting
        Turns highlighting on/off for regexps
        Method set_regexps_style
        Sets the styles for regexps. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_source
        GeSHi::set_source() in geshi.php
        Sets the source code for this object
        Method set_strings_highlighting
        Turns highlighting on/off for strings
        Method set_strings_style
        Sets the styles for strings. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_symbols_highlighting
        Turns highlighting on/off for symbols
        Method set_symbols_style
        Sets the styles for symbols. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_tab_width
        Sets how many spaces a tab is substituted for
        Method set_url_for_keyword_group
        Sets the base URL to be used for keywords
        Method set_use_language_tab_width
        Sets whether or not to use tab-stop width specifed by language
        Method start_line_numbers_at
        Sets what number line numbers should start at. Should be a positive integer, and will be converted to one.
        a d e g h l o p r s
        geshi/docs/api/elementindex.html0000664000175000017500000013502712014173556016153 0ustar benbebenbe

        Full index

        Package indexes


        a d e g h l o p r s
        a
        Method add_keyword
        Adds a keyword to a keyword group for highlighting
        Method add_keyword_group
        Creates a new keyword group
        d
        Method disable_highlighting
        Disables all highlighting
        e
        Method enable_classes
        Sets whether CSS classes should be used to highlight the source. Default is off, calling this method with no arguments will turn it on
        Method enable_highlighting
        Enables all highlighting
        Method enable_ids
        GeSHi::enable_ids() in geshi.php
        Whether CSS IDs should be added to each line
        Method enable_important_blocks
        Sets whether context-important blocks are highlighted
        Method enable_inner_code_block
        Sets whether to force a surrounding block around the highlighted code or not
        Method enable_keyword_links
        Turns linking of keywords on or off.
        Method enable_line_numbers
        Sets whether line numbers should be displayed.
        Method enable_multiline_span
        Sets wether spans and other HTML markup generated by GeSHi can span over multiple lines or not. Defaults to true to reduce overhead.
        Method enable_strict_mode
        Enables/disables strict highlighting. Default is off, calling this method without parameters will turn it on. See documentation for more details on strict mode and where to use it.
        Method error
        GeSHi::error() in geshi.php
        Returns an error message associated with the last GeSHi operation, or false if no error has occured
        g
        Method GeSHi
        GeSHi::GeSHi() in geshi.php
        Creates a new GeSHi object, with source and language
        Class GeSHi
        GeSHi in geshi.php
        The GeSHi Class.
        Page geshi.php
        geshi.php in geshi.php
        Constant GESHI_ACTIVE
        GESHI_ACTIVE in geshi.php
        Links in the source in the :active state
        Constant GESHI_CAPS_LOWER
        GESHI_CAPS_LOWER in geshi.php
        Leave keywords found as the case that they are
        Constant GESHI_CAPS_NO_CHANGE
        Lowercase keywords found
        Constant GESHI_CAPS_UPPER
        GESHI_CAPS_UPPER in geshi.php
        Uppercase keywords found
        Constant GESHI_END_IMPORTANT
        GESHI_END_IMPORTANT in geshi.php
        The ender for important parts of the source
        Constant GESHI_FANCY_LINE_NUMBERS
        Use fancy line numbers when building the result
        Constant GESHI_HEADER_DIV
        GESHI_HEADER_DIV in geshi.php
        Use a "div" to surround the source
        Constant GESHI_HEADER_NONE
        GESHI_HEADER_NONE in geshi.php
        Use nothing to surround the source
        Constant GESHI_HEADER_PRE
        GESHI_HEADER_PRE in geshi.php
        Use a "pre" to surround the source
        Constant GESHI_HEADER_PRE_TABLE
        Use a "table" to surround the source:
        Constant GESHI_HEADER_PRE_VALID
        Use a pre to wrap lines when line numbers are enabled or to wrap the whole code.
        Function geshi_highlight
        geshi_highlight() in geshi.php
        Easy way to highlight stuff. Behaves just like highlight_string
        Constant GESHI_HOVER
        GESHI_HOVER in geshi.php
        Links in the source in the :hover state
        Constant GESHI_LANG_ROOT
        GESHI_LANG_ROOT in geshi.php
        The language file directory for GeSHi
        Constant GESHI_LINK
        GESHI_LINK in geshi.php
        Links in the source in the :link state
        Constant GESHI_NORMAL_LINE_NUMBERS
        Use normal line numbers when building the result
        Constant GESHI_NO_LINE_NUMBERS
        Use no line numbers when building the result
        Constant GESHI_ROOT
        GESHI_ROOT in geshi.php
        The root directory for GeSHi
        Constant GESHI_SECURITY_PARANOID
        Tells GeSHi to be paranoid about security settings
        Constant GESHI_START_IMPORTANT
        The starter for important parts of the source
        Constant GESHI_VERSION
        GESHI_VERSION in geshi.php
        The version of this GeSHi file
        Constant GESHI_VISITED
        GESHI_VISITED in geshi.php
        Links in the source in the :visited state
        Method get_language_name
        Gets a human-readable language name (thanks to Simon Patterson for the idea :))
        Method get_language_name_from_extension
        Given a file extension, this method returns either a valid geshi language name, or the empty string if it couldn't be found
        Method get_multiline_span
        Get current setting for multiline spans, see GeSHi->enable_multiline_span().
        Method get_real_tab_width
        Returns the tab width to use, based on the current language and user preference
        Method get_stylesheet
        Returns a stylesheet for the highlighted code. If $economy mode is true, we only return the stylesheet declarations that matter for this code block instead of the whole thing
        Method get_time
        GeSHi::get_time() in geshi.php
        Gets the time taken to parse the code
        h
        Method highlight_lines_extra
        Specifies which lines to highlight extra
        l
        Method load_from_file
        Given a file name, this method loads its contents in, and attempts
        o
        Method optimize_keyword_group
        compile optimized regexp list for keyword group
        p
        Method parse_code
        GeSHi::parse_code() in geshi.php
        Returns the code in $this->source, highlighted and surrounded by the nessecary HTML.
        r
        Method remove_keyword
        Removes a keyword from a keyword group
        Method remove_keyword_group
        Removes a keyword group
        s
        Method set_brackets_highlighting
        Turns highlighting on/off for brackets
        Method set_brackets_style
        Sets the styles for brackets. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_case_keywords
        Sets the case that keywords should use when found. Use the constants:
        Method set_case_sensitivity
        Sets whether a set of keywords are checked for in a case sensitive manner
        Method set_code_style
        Sets the style for the actual code. This should be a string
        Method set_comments_highlighting
        Turns highlighting on/off for comment groups
        Method set_comments_style
        Sets the styles for comment groups. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_encoding
        Sets the encoding used for htmlspecialchars(), for international support.
        Method set_escape_characters_highlighting
        Turns highlighting on/off for escaped characters
        Method set_escape_characters_style
        Sets the styles for escaped characters. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_footer_content
        Sets the content of the footer block
        Method set_footer_content_style
        Sets the style for the footer content
        Method set_header_content
        Sets the content of the header block
        Method set_header_content_style
        Sets the style for the header content
        Method set_header_type
        Sets the type of header to be used.
        Method set_highlight_lines_extra_style
        Sets the style for extra-highlighted lines
        Method set_important_styles
        Sets styles for important parts of the code
        Method set_keyword_group_highlighting
        Turns highlighting on/off for a keyword group
        Method set_keyword_group_style
        Sets the style for a keyword group. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_language
        Sets the language for this object
        Method set_language_path
        Sets the path to the directory containing the language files. Note that this path is relative to the directory of the script that included geshi.php, NOT geshi.php itself.
        Method set_line_ending
        Sets the line-ending
        Method set_line_style
        Sets the styles for the line numbers.
        Method set_link_styles
        Sets styles for links in code
        Method set_link_target
        Sets the target for links in code
        Method set_methods_highlighting
        Turns highlighting on/off for methods
        Method set_methods_style
        Sets the styles for methods. $key is a number that references the
        Method set_numbers_highlighting
        Turns highlighting on/off for numbers
        Method set_numbers_style
        Sets the styles for numbers. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_overall_class
        Sets the overall classname for this block of code. This class can then be used in a stylesheet to style this object's output
        Method set_overall_id
        Sets the overall id for this block of code. This id can then be used in a stylesheet to style this object's output
        Method set_overall_style
        Sets the styles for the code that will be outputted when this object is parsed. The style should be a string of valid stylesheet declarations
        Method set_regexps_highlighting
        Turns highlighting on/off for regexps
        Method set_regexps_style
        Sets the styles for regexps. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_source
        GeSHi::set_source() in geshi.php
        Sets the source code for this object
        Method set_strings_highlighting
        Turns highlighting on/off for strings
        Method set_strings_style
        Sets the styles for strings. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_symbols_highlighting
        Turns highlighting on/off for symbols
        Method set_symbols_style
        Sets the styles for symbols. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority
        Method set_tab_width
        Sets how many spaces a tab is substituted for
        Method set_url_for_keyword_group
        Sets the base URL to be used for keywords
        Method set_use_language_tab_width
        Sets whether or not to use tab-stop width specifed by language
        Method start_line_numbers_at
        Sets what number line numbers should start at. Should be a positive integer, and will be converted to one.
        a d e g h l o p r s
        geshi/docs/api/li_geshi.html0000664000175000017500000000410312014173556015243 0ustar benbebenbe
        geshi
        Description
        Class trees
        Index of elements
        Todo List
        Sub-packagecore
         Classes
        ClassGeSHi
         Functions
        Functiongeshi_highlight
         Files
        Filegeshi.php

        phpDocumentor v 1.4.2

        geshi/docs/BUGS0000664000175000017500000000353411702144555012513 0ustar benbebenbe BUGS - list of known bugs in GeSHi Version 1.0.8 - Number highlighting is quite poor [possibly better now] - I'm not happy with URLS - there still could be extra bugs, and it's rather unflexible (see TODO for a possible fix) - "Important" sections for some reason seem to have their spans added after every newline up until the next lexic, instead of stopping at the part. In fact, context sensitiveness is quite poor... - Using the extra line number highlighting feature without actually using line numbers will result in malformed XHTML (not sure about this one though...) - Slow!!! Especially for source with lots of strings in it. GeSHi will work acceptably for sourcecode under 5K (for simple language files like SQL, a 100K file can be highlighted in just 6 seconds), but above about 25K things get a little slow... If you're using this as part of some larger software, you may want to think about making some sort of "cache" effect to speed things up and reduce server load. - The result is built by string replacement instead of by building another string based on the source, that would be much safer. The focus of releases beyond 1.0.7 will be on changing this behaviour, which may well fix some of the other bugs mentioned above. - As of 1.0.7.1, dots (.) are allowed before keywords. This may change highlighting of some things slightly, if you notice anything odd about the highlighting then please report it to me. - Perl/Javascript /.../ regex syntax is only supported basically and there's no guarantee it is working all the time. - The
         header output is not XHTML compliant. Please use the 
        header instead. Send any bug reports to BenBE@omorphia.de, or submit them via the bug tracker at sourceforge (http://sourceforge.net/tracker/?group_id=114997&atid=670231) geshi/docs/geshi-doc.html0000664000175000017500000227256212014173560014566 0ustar benbebenbe GeSHi Documentation 1.0.8.11

        GeSHi Documentation

        Version 1.0.8.11

        The GeSHi Logo

        Authors:
        © 2004 - 2007 Nigel McNie
        © 2007 - 2012 Benny Baumann
        © 2008 - 2009 Milian Wolff
        GeSHi Website:
        http://qbnz.com/highlighter

        This is the documentation for GeSHi - Generic Syntax Highlighter.

        The most modern version of this document is available on the web - go to http://qbnz.com/highlighter/documentation.php to view it.

        Any comments, questions, confusing points? Please get in contact with the developers! We need all the information we can get to make the use of GeSHi and everything related to it (including this documentation) a breeze.

        Contents

        1 Introduction

        GeSHi is exactly what the acronym stands for: a Generic Syntax Highlighter. As long as you have a language file for almost any computer language - whether it be a scripting language, object orientated, markup or anything in between - GeSHi can highlight it! GeSHi is extremely customisable - the same source can be highlighted multiple times in multiple ways - the same source even with a different language. GeSHi outputs XHTML strict compliant code1, and can make use of CSS to save on the amount of output. And what is the cost for all of this? You need PHP. That’s all!

        1.1 Features

        Here are some of the standout features of GeSHi:

        Programmed in PHP:
        GeSHi is coded entirely in PHP. This means that where ever you have PHP, you can have GeSHi! Almost any free webhost supports PHP, and GeSHi works fine with PHP > 4.3.02.
        Support for many languages:
        GeSHi comes with more than 100 languages, including PHP, HTML, CSS, Java, C, Lisp, XML, Perl, Python, ASM and many more!
        XHTML compliant output:
        GeSHi produces XHTML compliant output, using stylesheets, so you need not worry about GeSHi ruining your claims to perfection in the standards department ;)
        Highly customisable:
        GeSHi allows you to change the style of the output on the fly, use CSS classes or not, use an external stylesheet or not, use line numbering, change the case of output keywords… the list goes on and on!
        Flexible:
        Unfortunately, GeSHi is quite load/time intensive for large blocks of code. However, you want speed? Turn off any features you don’t like, pre-make a stylesheet and use CSS classes to reduce the amount of output and more - it’s easy to strike a balance that suits you.

        This is just a taste of what you get with GeSHi - the best syntax highlighter for the web in the world!

        1.2 About GeSHi

        GeSHi started as a mod for the phpBB forum system, to enable highlighting of more languages than the available (which can be roughly estimated to exactly 0 ;)). However, it quickly spawned into an entire project on its own. But now it has been released, work continues on a mod for phpBB3 - and hopefully for many forum systems, blogs and other web-based systems.

        Several systems are using GeSHi now, including:

        GeSHi is the original work of Nigel McNie. The project was later handed over to Benny Baumann. Others have helped with aspects of GeSHi also, they’re mentioned in the THANKS file.

        1.3 Credits

        Many people have helped out with GeSHi, whether by creating language files, submitting bug reports, suggesting new ideas or simply pointing out a new idea or something I’d missed. All of these people have helped to build a better GeSHi, you can see them in the THANKS file.

        Do you want your name on this list? Why not make a language file, or submit a valid bug? Or perhaps help me with an added feature I can’t get my head around, or suggest a new feature, or even port GeSHi to anothe language? There’s lots you can do to help out, and I need it all :)

        1.4 Feedback

        I need your feedback! ANYthing you have to say is fine, whether it be a query, congratulations, a bug report or complaint, I don’t care! I want to make this software the best it can be, and I need your help! You can contact me in the following ways:

        Remember, any help I am grateful for :)

        2 The Basics

        In this section, you’ll learn a bit about GeSHi, how it works and what it uses, how to install it and how to use it to perform basic highlighting.

        2.1 Getting GeSHi work

        If you’re reading this and don’t have GeSHi, that’s a problem ;). So, how do you get your hands on it?

        2.1.1 Requirements

        GeSHi requires the following to be installable:

        • PHP. It’s untested with anything other below 4.4.X. I hope to extend this range soon. I see no reason why it won’t work with any version of PHP above 4.3.0.
        • Approximately 2 megabytes of space. The actual script is small - around 150K - but most of the size comes from the large number of language files (over 100!). If you’re pushed for space, make sure you don’t upload to your server the docs/ or contrib/ directory, and you may want to leave out any language files that don’t take your fancy either.

        As you can see, the requirements are very small. If GeSHi does NOT work for you in a particular version of PHP, let me know why and I’ll fix it.

        2.1.2 Downloading GeSHi

        There are several ways to get a copy of GeSHi. The first and easiest way of all is visiting http://qbnz.com/highlighter/downloads.php to obtain the latest version. This is suitable especially when you plan on using GeSHi on an production website or otherwise need a stable copy for flawless operation.

        If you are somewhat more sophisticated or need a feature just recently implemented you might consider getting GeSHi by downloading via SVN. There are multiple ways for doing so and each one has its own advantages and disadvantages. Let’s cover the various locations in the SVN you might download from:

        • https://geshi.svn.sourceforge.net/svnroot/geshi/tags/:
          This directory holds all previous releases of GeSHi each as a subdirectory. By downloading from here you can test your code with various old versions in case something has been broken recently.
        • https://geshi.svn.sourceforge.net/svnroot/geshi/branches/RELEASE_1_0_X_STABLE/geshi-1.0.X/src/:
          This directory is the right place for you if you want to have reasonably current versions of GeSHi but need something that is stable. This directory is updated once in a while between updates whenever there’s something new but which is already reasonably stable. This branch is used to form the actual release once the work is done.
        • https://geshi.svn.sourceforge.net/svnroot/geshi/trunk/geshi-1.0.X/src/:
          This directory is the working directory where every new feature, patch or improvement is committed to. This directory is updated regularly, but is not guaranteed to be tested and stable at all times. With this version you’ll always get the latest version of GeSHi out there, but beware of bugs! There will be loads of them here! So this is absolutely not recommended for productive use!

        If you have choosen the right SVN directory for you do a quick svn co $SVNPATH geshi where $SVNPATH is one of the above paths and your desired version of GeSHi will be downloaded into an subdirectory called “geshi”. If you got a version of GeSHi you can go on installing as shown below.

        2.1.3 Extracting GeSHi

        Packages come in .zip, .tar.gz and .tar.bz2 format, so there’s no complaining about whether it’s available for you. *nix users probably want .tar.gz or .tar.bz2 and windows users probably want .zip. And those lucky to download it directly from SVN don’t even need to bother extracting GeSHi.

        To extract GeSHi in Linux (.tar.gz):

        1. Open a shell
        2. cd to the directory where the archive lies
        3. Type tar -xzvf [filename] where [filename] is the name of the archive (typically GeSHi-1.X.X.tar.gz)
        4. GeSHi will be extracted to its own directory

        To extract GeSHi in Windows (.zip):

        1. Open Explorer
        2. Navigate to the directory where the archive lies
        3. Extract the archive. The method you use will depend on your configuration. Some people can right-click upon the archive and select “Extract” from there, others may have to drag the archive and drop it upon an extraction program.

        To extract from .zip you’ll need an unzipping program - unzip in Linux, or 7-Zip, WinZip, WinRAR or similar for Windows.

        2.1.4 Installing GeSHi

        Installing GeSHi is a snap, even for those most new to PHP. There’s no tricks involved. Honest!

        GeSHi is nothing more than a PHP class with related language support files. Those of you familiar with PHP can then guess how easy the installation will be: simply copy it into your include path somewhere. You can put it wherever you like in this include path. I recommend that you put the language files in a subdirectory of your include path too - perhaps the same subdirectory that geshi.php is in. Remember this path for later.

        If you don’t know what an include path is, don’t worry. Simply copy GeSHi to your webserver. So for example, say your site is at http://mysite.com/myfolder, you can copy GeSHi to your site so the directory structure is like this:

        http://mysite.com/myfolder/geshi/[language files]
        http://mysite.com/myfolder/geshi.php
        

        Or you can put it in any subdirectory you like:

        http://mysite.com/myfolder/includes/geshi/[language files]
        http://mysite.com/myfolder/includes/geshi.php
        
        Caution:

        When using GeSHi on a live site, the only directory required is the geshi/ subdirectory. Both contrib/ and docs/ are worthless, and furthermore, as some people discovered, one of the files in contrib had a security hole (fixed as of 1.0.7.3). I suggest you delete these directories from any live site they are on.

        2.2 Basic Usage

        Use of GeSHi is very easy. Here’s a simple example:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        2223
        2425
        2627
        28
        //
        // Include the GeSHi library//
        include_once 'geshi.php'; 
        //// Define some source to highlight, a language to use
        // and the path to the language files//
         $source = '$foo = 45;
        for ( $i = 1; $i < $foo; $i++ ){
          echo "$foo\n";  --$foo;
        }';$language = 'php';
         //
        // Create a GeSHi object//
         $geshi = new GeSHi($source, $language);
         //
        // And echo the result!//
        echo $geshi->parse_code();

        As you can see, there’s only three really important lines:

        include_once('geshi.php')

        This line includes the GeSHi class for use

        $geshi = new GeSHi($source, $language);

        This line creates a new GeSHi object, holding the source and the language you want to use for highlighting.

        echo $geshi->parse_code();

        This line spits out the result :)

        So as you can see, simple usage of GeSHi is really easy. Just create a new GeSHi object and get the code!

        Since version 1.0.2, there is a function included with GeSHi called geshi_highlight. This behaves exactly as the php function highlight_string() behaves - all you do is pass it the language you want to use to highlight and the path to the language files as well as the source. Here are some examples:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        
        // Simply echo the highlighted code
        geshi_highlight($source, 'php', $path); 
        // Get the code back, for use later$code = geshi_highlight($source, 'java', $path, true);
         // Check if there is an error with parsing this code
         ob_start();
        $result = geshi_highlight($source, 'perl', $path);$code = ob_get_contents();
         ob_end_clean();
        if ( !$result ){
            // There was an error with highlighting...}
        else{
            // All OK :)}

        However, these are really simple examples and doesn’t even begin to cover all the advanced features of GeSHi. If you want to learn more, continue on to section 3: Advanced Features.

        3 Advanced Features

        This section documents the advanced features of GeSHi - strict mode, using CSS classes, changing styles on the fly, disabling highlighting of some things and more.

        In this section there are many code snippets. For all of these, you should assume that the GeSHi library has been included, and a GeSHi object has been created and is referenced by the variable $geshi. Normally, the source, language and path used are arbitary.

        3.1 The Code Container

        The Code Container has a fundamental effect on the layout of your code before you even begin to style. What is the Code Container? It’s the bit of markup that goes around your code to contain it. By default your code is surrounded by a <pre>, but you can also specify a <div>.

        The <pre> header is the default. If you’re familiar with HTML you’ll know that whitespace is rendered “as is” by a <pre> element. The advantage for you is that if you use <pre> the whitespace you use will appear pretty much exactly how it is in the source, and what’s more GeSHi won’t have to add a whole lot of <br />’s and non-breaking spaces (&nbsp;) to your code to indent it. This saves you source code (and your valuable visitors waiting time and your bandwidth).

        But if you don’t like <pre> or it looks stupid in your browser no matter what styles you try to apply to it or something similar, you might want to use a <div> instead. A <div> will result in more source - GeSHi will have to insert whitespace markup - but in return you can wrap long lines of code that would otherwise have your browser’s horizontal scrollbar appear. Of course with <div> you can not wrap lines if you please. The highlighter demo at the GeSHi home page uses the <div> approach for this reason.

        At this stage there isn’t an option to wrap the code in <code> tags (unless you use the function geshi_highlight), partly because of the inconsistent and unexpected ways stuff in <code> tags is highlighted. Besides, <code> is an inline element. But this may become an option in future versions.

        As of GeSHi 1.0.7.2 there is a new header type, that specifies that the code should not be wrapped in anything at all.

        Another requested addition has been made in GeSHi 1.0.7.20 to force GeSHi to create a block around the highlighted source even if this wasn’t necessary, thus styles that are applied to the output of GeSHi can directly influence the code only even if headers and footers are present.

        To change/set the header to use, you call the set_header_type() method. It has one required argument which defines the container type. Available are:

        $geshi->set_header_type(GESHI_HEADER_DIV);

        Puts a <div> around both, code and linenumbers. Whitespace is converted to &nbsp; sequences (i.e. one whitespace and the html entity of a non-breaking whitespace) to keep your indendation level in tact. Tabs are converted as well and you can manually define the tab-width. Lines are automatically wrapped. Linenumbers are created using an ordered list.

        $geshi->set_header_type(GESHI_HEADER_PRE);

        Wraps code and linenumbers in a <pre> container. This way whitespace is kept as-is and thus this header produces less overhead then the GESHI_HEADER_DIV header type. Since linenumbers are still created using an ordered list this header type produces invalid HTML.

        $geshi->set_header_type(GESHI_HEADER_PRE_VALID);
        Available since 1.0.8

        When linenumbers are disabled, this behaves just like GESHI_HEADER_PRE. In the other case though, a <div> is used to wrap the code and linenumbers and the <pre> is put inside the list items (<li>). This means slightly larger HTML output compared to GESHI_HEADER_PRE, but the output is valid HTML.

        $geshi->set_header_type(GESHI_HEADER_PRE_TABLE);
        Available since 1.0.8

        Once again a <div> tag wraps the output. This time though no ordered list is used to create an ordered list, but instead we use a table with two cells in a single row. The left cell contains a <pre> tag which holds all linenumbers. The second cell holds the highlighted code, also wrapped in a <pre> tag, just like with GESHI_HEADER_PRE.

        This produces valid HTML and works around the nasty selection behaviour of Firefox and other Gecko based browsers, see SF#1651996 for more information.

        $geshi->set_header_type(GESHI_HEADER_NONE);
        Available since 1.0.7.2

        No wrapper is added.

        Those are the only arguments you should pass to set_header_type. Passing anything else may cause inconsistencies in what is used as the Code Container (although it should simply use a <pre>). Better not to risk it.

        Note:

        GESHI_HEADER_DIV, GESHI_HEADER_PRE, etc. are constants, so don’t put them in strings!

        Caution:

        The default styles for the <pre> and <div> will be different, especially if you use line numbers!

        I have found that a <pre> results in code that is smaller than for that of a <div>, you should rectify this difference by using set_overall_style() if you need to. But be aware of this difference for if you are changing the header type!

        3.2 Line Numbers

        GeSHi has the ability to add line numbers to your code (see the demo available at http://qbnz.com/highlighter/demo.php to see what can be achieved). Line numbers are a great way to make your code look professional, especially if you use the fancy line numbers feature.

        There are multiple methods for highlighting line numbers, but none of them is perfect. Of the various ways to highlight line numbers GeSHi itself implements 2 different approaches, but allows you by the way it generates the code to do the line numbers yourself if necessary - but more on this case later.

        The easiest approach is using the <ol>-tag for generating the line numbers, but even though this is the easiest one there’s a big drawback with this one when using Gecko-engine based browsers like Firefox or Konqueror. In these browsers this approach will select the line numbers along with the code or will include extra markup in the selection.

        The other approach has been implemented in the 1.0.8 release of GeSHi with the GESHI_HEADER_PRE_TABLE header type. When using this header type the line numbers are rendered apart from the source in a table cell while the actual source is formatted as if the GESHI_HEADER_PRE header had been used. This approach works with Firefox and other Gecko-based browsers so far although extreme care has to be taken when applying styles to your source as Windows has some fonts where bold font is of different height than normal or italic text of the same fontface.

        3.2.1 Enabling Line Numbers

        To highlight a source with line numbers, you call the enable_line_numbers() method:

        $geshi->enable_line_numbers($flag); Where $flag is one of the following:

        • GESHI_NORMAL_LINE_NUMBERS - Use normal line numbering
        • GESHI_FANCY_LINE_NUMBERS - Use fancy line numbering
        • GESHI_NO_LINE_NUMBERS - Disable line numbers (default)

        Normal line numbers means you specify a style for them, and that style gets applied to all of them. Fancy line numbers means that you can specify a different style for each nth line number. You change the value of n (default 5):

        $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 37);

        The second parameter is not used in any other mode. Setting it to 0 is the same as simply using normal line numbers. Setting it to 1 applies the fancy style to every line number.

        Note:

        The values above are CONSTANTS - so don’t put them in strings!

        3.2.2 Styling Line Numbers

        As of GeSHi 1.0.2, line numbers are added by the use of ordered lists. This solves the old issues of line number styles inheriting from styles meant for the code. Also, this solves an important issue about selecting code. For example, line numbers look nice, but when you go to select the code in your browser to copy it? You got the line numbers too! Not such a good thing, but thankfully this issue is now solved. What is the price? Unfortunately the whole way that styles are inherited/used has changed for those of you who were familiar with 1.0.1, and there is quite a bit more HTML involved. So think carefully about these things before you enable line numbers.

        Now, onto how to style line numbers:

        Styles are set for line numbers using the set_line_style() method:

        $geshi->set_line_style('background: #fcfcfc;');

        If you’re using Fancy Line Numbers mode, you pass a second string for the style of the nth line number:

        $geshi->set_line_style('background: #fcfcfc;', 'background: #f0f0f0;');

        The second style will have no effect if you’re not using Fancy Line Numbers mode.

        By default, the styles you pass overwrite the current styles. Add a boolean “true” after the styles you specify to combine them with the current styles:

        PHP code
        1
        23
        4
        $geshi->set_line_style('background: red;', true);
         // or, for fancy line numbers
        $geshi->set_line_style('background: red;', 'background: blue;', true);
        Note:

        Due to a bug with Firefox the issue that should have been fixed with 1.0.2 has reappeared in another form as Firefox includes extra text\markup into plaintext versions of webpage copies. This can sometimes be useful (actually it’s used to get the plaintext version of this documentation), but more often is quite annoying. Best practice so far is to either not use line numbers, or offer the visitor of your page a plaintext version of your source. To learn more have a look at the SF.net BugTracker Issue #1651996. This will hopefully be fixed in GeSHi version 1.2 or as soon as Firefox provides webdevelopers with adequate ways to control this feature - whichever comes first!

        Caution:

        When you set line number styles, the code will inherit those styles! This is the main issue to come out of the 1.0.2 release. If you want your code to be styled in a predictable manner, you’ll have to call the set_code_style() method to rectify this problem.

        Note also that you cannot apply background colours to line numbers unless you use set_overall_style(). Here’s how you’d style:

        1. Use set_overall_style() to style the overall code block. For example, you can set the border style/colour, any margins and padding etc. using this method. In addition: set the background colour for all the line numbers using this method.

        2. Use set_line_style() to style the foreground of the line numbers. For example, you can set the colour, weight, font, padding etc. of the line numbers using this method.

        3. Use set_code_style() to explicitly override the styles you set for line numbers using set_line_style. For example, if you’d set the line numbers to be bold (or even if you’d only set the fancy line number style to be bold), and you didn’t actually want your code to be bold, you’d make sure that font-weight: normal; was in the stylesheet rule you passed to set_code_style().

          This is the one major change from GeSHi 1.0.1 - make sure you become familiar with this, and make sure that you check any code you have already styled with 1.0.1 when you upgrade to make sure nothing bad happens to it.

        3.2.3 Choosing a Start Number

        As of GeSHi 1.0.2, you can now make the line numbers start at any number, rather than just 1. This feature is useful if you’re highlighting code from a file from around a certain line number in that file, as an additional guide to those who will view the code. You set the line numbers by calling the start_line_numbers_at() method:

        $geshi->start_line_numbers_at($number);

        $number must be a positive integer (or zero). If it is not, GeSHi will convert it anyway.

        If you have not enabled line numbers, this will have no effect.

        Caution:

        Although I’d like GeSHi to have XHTML strict compliance, this feature will break compliancy (however transitional compliancy remains). This is because the only widely supported way to change the start value for line numbers is by using the start=”number” attribute of the <ol> tag. Although CSS does provide a mechanism for doing this, it is only supported in Opera versions 7.5 and above (not even Firefox supports this).

        3.3 Using CSS Classes

        Using CSS to highlight your code instead of in-lining the styles is a definate bonus. Not only is it more compliant (the w3c is deprecating the style attribute in XHTML 2.0) but it results in far less outputted code - up to a whopping 90% saving - which makes a *huge* difference to those unlucky of us on modems!

        3.3.1 Enabling CSS Classes

        By default, GeSHi doesn’t use the classes, so it’s easy just to whack out some highlighted code if you need without worrying about stylesheets. However, if you’re a bit more organised about it, you should use the classes ;). To turn the use of classes on, you call the enable_classes() method:

        $geshi->enable_classes();

        If you want to turn classes OFF for some reason later:

        $geshi->enable_classes(false);

        If classes are enabled when parse_code() is called, then the resultant source will use CSS classes in the output, otherwise it will in-line the styles. The advantages of using classes are great - the reduction in source will be very noticeable, and what’s more you can use one stylesheet for several different highlights on the same page. In fact, you can even use an external stylesheet and link to that, saving even more time and source (because stylesheets are cached by browsers).

        Note:

        There have been problems with inline styles and the Symbol Highlighting added in 1.0.7.21. If you can you should therefore turn CSS classes ON to avoid those issues. Although latest reworks in 1.0.8 should fix most of those issues.

        Caution:

        This should be the very first method you call after creating a new GeSHi object! That way, various other methods can act upon your choice to use classes correctly. In theory, you could call this method just before parsing the code, but this may result in unexpected behaviour.

        3.3.2 Setting the CSS class and ID

        You can set an overall CSS class and id for the code. This is a good feature that allows you to use the same stylesheet for many different snippets of code. You call set_overall_class() and set_overall_id to accomplish this:

        PHP code
        1
        2
        $geshi->set_overall_class('mycode');
        $geshi->set_overall_id('dk48ck');

        The default classname is the name of the language being used. This means you can use just the one stylesheet for all sources that use the same language, and incidentally means that you probably won’t have to call these methods too often.

        CSS IDs are supposed to be unique, and you should use them as such. Basically, you can specify an ID for your code and then use that ID to highlight that code in a unique way. You’d do this for a block of code that you expressly wanted to be highlighted in a different way (see the section below on gettting the stylesheet for your code for an example).

        Note:

        As of GeSHi 1.0.8 the class name will always include the language name used for highlighting.

        3.3.3 Getting the stylesheet for your code

        The other half of using CSS classes is getting the stylesheet for use with the classes. GeSHi makes it very easy to get a stylesheet for your code, with one easy method call:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        
        $geshi->enable_classes();
         // Here we have code that will spit out a header for
        // a stylesheet. For example: 
        echo '<html><head><title>Code</title>
        <style type="text/css"><!--';
        // Echo out the stylesheet for this code blockecho $geshi->get_stylesheet();
         // And continue echoing the page
         echo '-->
        </style></head><body>';

        The get_stylesheet() method gets the stylesheet for your code in one easy call. All you need to do is output it in the correct place. As you can also see, you don’t even have to enable class usage to get the stylesheet nessecary either - however not enabling classes but using the stylesheet may result in problems later.

        By default, get_stylesheet() tries to echo the least amount of code possible. Although currently it doesn’t check to see if a certain lexic is even in the source, you can expect this feature in the future. At least for the present however, if you explicitly disable the highlighting of a certain lexic, or disable line numbers, the related CSS will not be outputted. This may be a bad thing for you perhaps you’re going to use the stylesheet for many blocks of code, some with line numbers, others with some lexic enabled where this source has it disabled. Or perhaps you’re building an external stylesheet and want all lexics included. So to get around this problem, you do this:

        $geshi->get_stylesheet(false);

        This turns economy mode off, and all of the stylesheet will be outputted regardless.

        Now lets say you have several snippets of code, using the same language. In most of them you don’t mind if they’re highlighted the same way (in fact, that’s exactly what you want) but in one of them you’d like the source to be highlighted differently. Here’s how you can do that:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        2223
        2425
        2627
        2829
        3031
        3233
        3435
        3637
        3839
        4041
        4243
        4445
        4647
        48
        // assume path is the default "geshi/" relative to the current directory
         $geshi1 = new GeSHi($source1, $lang);
        $geshi2 = new GeSHi($source2, $lang); 
        $geshi3 = new GeSHi($source3, $lang); 
        // Turn classes on for all sources$geshi1->enable_classes();
         $geshi2->enable_classes();
        $geshi3->enable_classes(); 
        // Make $geshi3 unique$geshi3->set_overall_id('different');
          
        //// Methods are called on $geshi3 to change styles...
        // 
        echo '<html><head><title>Code</title>
         <style type="text/css">
        <!--';
         // Get the nessecary stylesheets
        echo $geshi1->get_stylesheet(); 
        echo $geshi3->get_stylesheet(); 
        echo '--></style></head>
        <body>'; 
         echo 'Code snippet 1:';
        echo $geshi1->parse_code();echo 'Code snippet 2 (same highlighting as 1):';
         echo $geshi2->parse_code();
        echo 'Code snippet 3 (DIFFERENT highlighting):';echo $geshi3->parse_code();
          
        echo '</body></html>';

        Before version 1.0.2, you needed to set the class of the code you wanted to be unique to the empty string. This limitation has been removed in version 1.0.2 - if you set the ID of a block of code, all styling will be done based on that ID alone.

        3.3.4 Using an External Stylesheet

        An external stylesheet can reduce even more the amount of code needed to highlight some source. However there are some drawbacks with this. To use an external stylesheet, it’s up to you to link it in to your document, normally with the following HTML:

        HTML code
        1
        23
        
        <html>
        <head><link rel="stylesheet" type="text/css" href="url_to_stylesheet.css" />

        In your external stylesheet you put CSS declarations for your code. Then just make sure you’re using the correct class (use set_overall_class() to ensure this) and this should work fine.

        This method is great if you don’t mind the source always being highlighted the same (in particular, if you’re making a plugin for a forum/wiki/other system, using an external stylesheet is a good idea!). It saves a small amount of code and your bandwidth, and it’s relatively easy to just change the stylesheet should you need to. However, using this will render the methods that change the styles of the code useless, because of course the stylesheet is no longer being dynamically generated. You can still disable highlighting of certain lexics dynamically, however.

        Note:

        As of version 1.0.2, GeSHi comes with a contrib/ directory, which in it contains a “wizard” script for creating a stylesheet. Although this script is by no means a complete solution, it will create the necessary rules for the basic lexics - comments, strings for example. Things not included in the wizard include regular expressions for any language that uses them (PHP and XML are two languages that use them), and keyword-link styles. However, this script should take some of the tedium out of the job of making an external stylesheet. Expect a much better version of this script in version 1.2!

        3.4 Changing Styles

        One of the more powerful features of GeSHi is the ability to change the style of the output dynamically. Why be chained to the boring styles the language authors make up? You can change almost every single aspect of highlighted code - and can even say whether something is to be highlighted at all.

        If you’re confused about “styles”, you probably want to have a quick tutorial in them so you know what you can do with them. Checkout the homepage of CSS at http://www.w3.org/Style/CSS.

        3.4.1 The Overall Styles

        The code outputted by GeSHi is either in a <div> or a <pre> (see the section entitled “The Code Container”), and this can be styled.

        $geshi->set_overall_style('... styles ...'); Where styles is a string containing valid CSS declarations. By default, these styles overwrite the current styles, but you can change this by adding a second parameter:

        $geshi->set_overall_style('color: blue;', true); The default styles “shine through” wherever anything isn’t highlighted. Also, you can apply more advanced styles, like position: (fixed|relative) etc, because a <div>/<pre> is a block level element.

        Note:

        Remember that a <div> will by default have a larger font size than a <pre>, as discussed in the section “The Code Container”.

        3.4.2 Line Number Styles

        You may wish to refer to the section [Styling Line Numbers][1] before reading this section.

        As of version 1.0.2, the way line numbers are generated is different, so therefore the way that they are styled is different. In particular, now you cannot set the background style of the fancy line numbers to be different from that of the normal line numbers.

        Line number styles are set by using the method set_line_style:

        $geshi->set_line_style($style1, $style2);

        $style1 is the style of the line numbers by default, and $style2 is the style of the fancy line numbers.

        Caution:

        Things have changed since 1.0.1! This note is very important - please make sure you check this twice before complaining about line numbers!

        Because of the way that ordered lists are done in HTML, there really isn’t normally a way to style the actual numbers in the list. I’ve cheated somewhat with GeSHi - I’ve made it possible to use CSS to style the foreground of the line numbers. So therefore, you can change the color, font size and type, and padding on them. If you want to have a pretty background, you must use set_overall_style() to do this, and use set_code_style() to style the actual code! This is explained in the section above: Styling Line Numbers.

        In addition, the styles for fancy line numbers is now the difference between the normal styles and the styles you want to achieve. For example, in GeSHi prior to 1.0.2 you may have done this to style line numbers:

        $geshi->set_line_style('color: red; font-weight: bold;', 'color: green; font-weight: bold');

        Now you instead can do this:

        $geshi->set_line_style('color: red; font-weight: bold;', 'color: green;');

        The font-weight: bold; will automatically carry through to the fancy styles. This is actually a small saving in code - but the difference may be confusing for anyone using 1.0.1 at first.

        3.4.3 Setting Keyword Styles

        Perhaps the most regular change you will make will be to the styles of a keyword set. In order to change the styles for a particular set, you’ll have to know what the set is called first. Sets are numbered from 1 up. Typically, set 1 contains keywords like if, while, do, for, switch etc, set 2 contains null, false, true etc, set 3 contains function inbuilt into the language (echo, htmlspecialchars etc. in PHP) and set 4 contains data types and similar variable modifiers: int, double, real, static etc. However these things are not fixed, and you should check the language file to see what key you want. Having a familiarity with a language file is definately a plus for using it.

        To change the styles for a keyword set, call the set_keyword_group_style() method:

        $geshi->set_keyword_group_style($group, $styles);

        Where $group is the group to change the styles for and $styles is a string containing the styles to apply to that group.

        By default, the styles you pass overwrite the current styles. Add a boolean true after the styles you specify to combine them with the current styles:

        $geshi->set_keyword_group_style(3, 'color: white;', true);

        3.4.4 Setting Comment Styles

        To change the styles for a comment group, call the set_comments_style() method:

        $geshi->set_comments_style($group, $styles);

        Where $group is either a number corresponding to a single-line comment, or the string 'MULTI' to specify multiline comments:

        PHP code
        1
        2
        $geshi->set_comments_style(1, 'font-style: italic;');
        $geshi->set_comments_style('MULTI', 'display: hidden;');

        By default, the styles you pass overwrite the current styles. Add a boolean true after the styles you specify to combine them with the current styles:

        $geshi->set_comments_style(1, 'font-weight: 100;', true);

        Note:

        In 1.0.7.22 a new kind of Comments called “COMMENT_REGEXP” has been added. Those are handled by setting single line comment styles.

        3.4.5 Setting Other Styles

        GeSHi can highlight many other aspects of your source other than just keywords and comments. Strings, Numbers, Methods and Brackets among other things can all also be highlighted. Here are the related methods:

        PHP code
        1
        23
        45
        67
        
        $geshi->set_escape_characters_style($styles[, $preserve_defaults]);
        $geshi->set_symbols_style($styles[, $preserve_defaults]); 
        $geshi->set_strings_style($styles[, $preserve_defaults]);$geshi->set_numbers_style($styles[, $preserve_defaults]);
        $geshi->set_methods_style($key, $styles[, $preserve_defaults]);$geshi->set_regexps_style($key, $styles[, $preserve_defaults]);

        $styles is a string containing valid stylesheet declarations, while $preserve_defaults should be set to true if you want your styles to be merged with the previous styles. In the case of set_methods_style(), you should select a group to set the styles of, check the language files for the number used for each “object splitter”.

        Like this was possible for set_method_style a new parameter has been introduced for set_symbols_style too which allows you to select the group of symbols for which you’d like to change your style. $geshi->set_symbols_style($styles[, $preserve_defaults[, $group]]); If the third parameter is not given, group 0 is assumed. Furthermore you should note that any changes to group 0 are also reflected in the bracket style, i.e. a pass-through call to set_bracket_style is made.

        Note:

        Since GeSHi 1.0.8 multiple styles for strings and numbers are supported, though the API doesn’t provide full access yet.

        3.5 Case Sensitivity and Auto Casing

        Controlling the case of the outputted source is an easy job with GeSHi. You can control which keywords are converted in case, and also control whether keywords are checked in a case sensitive manner.

        3.5.1 Auto-Caps/NoCaps

        Auto-Caps/NoCaps is a nifty little feature that capitalises or lowercases automatically certain lexics when they are styled. I dabble in QuickBASIC, a dialect of BASIC which is well known for it’s capatalisation, and SQL is another language well known for using caps for readability.

        To change what case lexics are rendered in, you call the set_case_keywords() method:

        $geshi->set_case_keywords($caps_modifier);

        The valid values to pass to this method are:

        • GESHI_CAPS_NO_CHANGE - Don’t change the case of any lexics, leave as they are found
        • GESHI_CAPS_UPPER - Uppercase all lexics found
        • GESHI_CAPS_LOWER - Lowercase all lexics found
        Caution:

        When I say “lexic”, I mean “keywords”. Any keyword in any keyword array will be modified using this option! This is one small area of inflexibility I hope to fix in 1.2.X.

        I suspect this will only be used to specify GESHI_CAPS_NO_CHANGE to turn off autocaps for languages like SQL and BASIC variants, like so:

        PHP code
        1
        2
        $geshi = new GeSHi($source, 'sql');
        $geshi->set_case_keywords(GESHI_CAPS_NO_CHANGE); // don't want keywords capatalised

        All the same, it can be used for some interesting effects:

        PHP code
        1
        23
        4
        $geshi = new GeSHi($source, 'java');
        // Anyone who's used java knows how picky it is about CapitalLetters...$geshi->set_case_keywords(GESHI_CAPS_LOWER);
        // No *way* the source will look right now ;)

        3.5.2 Setting Case Sensitivity

        Some languages, like PHP, don’t mind what case function names and keywords are in, while others, like Java, depend on such pickiness to maintain their bad reputations ;). In any event, you can use the set_case_sensitivity() to change the case sensitiveness of a particular keyword group from the default:

        $geshi->set_case_sensitivity($key, $sensitivity);

        Where $key is the key of the group for which you wish to change case sensitivness for (see the language file for that language), and $sensitivity is a boolean value - true if the keyword is case sensitive, and false if not.

        3.6 Changing the Source, Language, Config Options

        What happens if you want to change the source to be highlighted on the fly, or the language. Or if you want to specify any of those basic fields after you’ve created a GeSHi object? Well, that’s where these methods come in.

        3.6.1 Changing the Source Code

        To change the source code, you call the set_source() method:

        $geshi->set_source($newsource);

        Example:

        PHP code
        1
        23
        45
        67
        8
        $geshi = new GeSHi($source1, 'php');
         // Method calls to specify various options...
         $code1 = $geshi->parse_code();
         $geshi->set_source($source2);
        $code2 = $geshi->parse_code();

        3.6.2 Changing the Language

        What happens if you want to change the language used for highlighting? Just call set_language():

        $geshi->set_language('newlanguage');

        Example:

        PHP code
        1
        23
        45
        67
        89
        10
        $geshi = new GeSHi($source, 'php');
         $code = $geshi->parse_code();
         // Highlight GeSHi's output
        $geshi->set_source($code); 
        $geshi->set_language('html4strict');$geshi->enable_classes(false);
        echo $geshi->parse_code();

        As of GeSHi 1.0.5, you can use the method load_from_file() to load the source code and language from a file. Simply pass this method a file name and it will attempt to load the source and set the language.

        $geshi->load_from_file($file_name, $lookup);

        $file_name is the file name to use, and $lookup is an optional parameter that contains a lookup array to use for deciding which language to choose. You can use this to override GeSHi’s default lookup array, which may not contain the extension of the file you’re after, or perhaps does have your extension but under a different language. The lookup array is of the form:

        PHP code
        1
        23
        4
        array(
           'lang_name' => array('extension', 'extension', ...),   'lang_name' ...
        );

        Also, you can use the method get_language_name_from_extension() if you need to convert a file extension to a valid language name. This method will return the empty string if it could not find a match in the lookup, and like load_from_file it accepts an optional second parameter that contains a lookup array.

        Note:

        Names are case-insensitive - they will be converted to lower case to match a language file however. So if you’re making a language file, remember it should have a name in lower case.

        Note:

        What you pass to this method is the name of a language file, minus the .php extension. If you’re writing a plugin for a particular application, it’s up to you to somehow convert user input into a valid language name.

        Note:

        Since GeSHi 1.0.8 this function does not reset language settings for an already loaded language. If you want to highlight code in the same language with different settings add the optional $force_reset parameter:

        $geshi->set_language('language', true);

        Caution:

        GeSHi include()s the language file, so be careful to make sure that users can’t pass some wierd language name to include any old script! GeSHi tries to strip non-valid characters out of a language name, but you should always do this your self anyway. In particular, language files are always lower-case, with either alphanumeric characters, dashes or underscores in their name.

        At the very least, strip “/” characters out of a language name.

        3.6.3 Changing the Language Path

        What happens if all of a sudden you want to use language files from a different directory from the current language file location? You call the set_language_path() method:

        $geshi->set_language_path($newpath);

        It doesn’t matter whether the path has a trailing slash after it or not - only that it points to a valid folder. If it doesn’t, that’s your tough luck ;)

        3.6.4 Changing the Character Set

        Note:

        Although GeSHi itself does not require to know the exact charset of your source you will need to set this option when processing sources where multi-byte characters can occur. As of GeSHi 1.0.7.18 internally a rewrite of htmlspecialchars is used due to a security flaw in that function that is unpatched in even the most recent PHP4 versions and in PHP5 < 5.2. Although this does no longer explicitely require the charset it is required again as of GeSHi 1.0.8 to properly handle multi-byte characters (e.g. after an escape char).

        Note:

        As of GeSHi 1.0.8 the default charset has been changed to UTF-8.

        As of version 1.0.3, you can use the method set_encoding() to specify the character set that your source is in. Valid names are those names that are valid for the PHP mbstring library:

        $geshi->set_encoding($encoding);

        There is a table of valid strings for $encoding at the php.net manual linked to above. If you do not specify an encoding, or specify an invalid encoding, the character set used is ISO-8859-1.

        3.7 Error Handling

        What happens if you try to highlight using a language that doesn’t exist? Or if GeSHi can’t read a required file? The results you get may be confusing. You may check your code over and over, and never find anything wrong. GeSHi provides ways of finding out if GeSHi itself found anything wrong with what you tried to do. After highlighting, you can call the error() method:

        $geshi = new GeSHi('hi', 'thisLangIsNotSupported');

        echo $geshi->error(); // echoes error message

        The error message you will get will look like this:

        GeSHi Error: GeSHi could not find the language thisLangIsNotSupported (using path geshi/) (code 2)

        The error outputted will be the last error GeSHi came across, just like how mysql_error() works.

        3.8 Disabling styling of some Lexics

        One disadvantage of GeSHi is that for large source files using complex languages, it can be quite slow with every option turned on. Although future releases will concentrate on the speed/resource side of highlighting, you can gain speed by disabling some of the highlighting options. This is done by using a series of set_*_highlighting methods:

        set_keyword_group_highlighting($group, $flag):
        Sets whether a particular $group of keywords is to be highlighted or not. Consult the necessary language file(s) to see what $group should be for each group (typically a positive integer). $flag is false if you want to disable highlighting of this group, and true if you want to re-enable higlighting of this group. If you disable a keyword group then even if the keyword group has a related URL one will not be generated for that keyword.
        set_comments_highlighting($group, $flag):
        Sets whether a particular $group of comments is to be highlighted or not. Consult the necessary language file(s) to see what $group should be for each group (typically a positive integer, or th string 'MULTI' for multiline comments. $flag is false if you want to disable highlighting of this group, and true if you want to re-enable highlighting of this group.
        set_regexps_highlighting($regexp, $flag):
        Sets whether a particular $regexp is to be highlighted or not. Consult the necessary language file(s) to see what $regexp should be for each regexp (typically a positive integer, or the string 'MULTI' for multiline comments. $flag is false if you want to disable highlighting of this group, and true if you want to re-enable highlighting of this group.

        The following methods:

        • set_escape_characters_highlighting($flag)
        • set_symbols_highlighting($flag)
        • set_strings_highlighting($flag)
        • set_numbers_highlighting($flag)
        • set_methods_highlighting($flag)

        Work on their respective lexics (e.g. set_methods_highlighting() will disable/enable highlighting of methods). For each method, if $flag is false then the related lexics will not be highlighted at all (this means no HTML will surround the lexic like usual, saving on time and bandwidth.

        In case all highlighting should be disabled or reenabled GeSHi provides two methods called disable_highlighting() and enable_highlighting($flag). The optional paramter $flag has been added in 1.0.7.21 and specifies the desired state, i.e. true (default) to turn all highlighting on, or false to turn all highlighting off. Since 1.0.7.21 the method disnable_highlighting() has become deprecated.

        3.9 Setting the Tab Width

        If you’re using the <pre> header, tabs are handled automatically by your browser, and in general you can count on good results. However, if you’re using the <div> header, you may want to specify a tab width explicitly.

        Note that tabs created in this fashion won’t be like normal tabs - there won’t be “tab-stops” as such, instead tabs will be replaced with the specified number of spaces - just like most editors do.

        To change the tab width, you call the set_tab_width() method:

        $geshi->set_tab_width($width);

        Where $width is the width in spaces that you’d like tabs to be.

        3.10 Using Strict Mode

        Some languages like to get tricky, and jump in and out of the file that they’re in. For example, the vast majority of you reading this will have used a PHP file. And you know that PHP code is only executed if it’s within delimiters like <?php and ?> (there are others of course…). So what happens if you do the following in a php file?

        <img src="<?php echo rand(1, 100) ?>" />

        When using GeSHi without strict mode, or using a bad highlighter, you’ll end up with scrambled crap, especially if you’re being slack about where you’re putting your quotes, you could end up with the rest of your file as bright blue. Fortunately, you can tell GeSHi to be “strict” about just when it highlights and when it does not, using the enable_strict_mode() method:

        $geshi->enable_strict_mode($mode);

        Where $mode is true or not specified to enable strict mode, or false to disable strict mode if you’ve already turned it and don’t want it now.

        Note:

        As of GeSHi 1.0.8 there is a new way to tell GeSHi when to use Strict Mode which is somewhat more intelligent than in previous releases. GeSHi now also allows GESHI_MAYBE, GESHI_NEVER and GESHI_ALWAYS instead of true and false. Basically GESHI_ALWAYS (true) always enables strict mode, whereas GESHI_NEVER (false) completely disables strict mode. The new thing is GESHI_MAYBE which enables strict mode if it finds any sequences of code that look like strict block delimiters.

        By the way: That’s why this section had to be changed, as the new documentation tool we now use, applies this feature and thus auto-detects when strict mode has to be used…

        3.11 Adding/Removing Keywords

        Lets say that you’re working on a large project, with many files, many classes and many functions. Perhaps also you have the source code on the web and highlighted by GeSHi, perhaps as a front end to CVS, as a learning tool, something to refer to, whatever. Well, why not highlight the names of the functions and classes your project uses, as well as the standard functions and classes? Or perhaps you’re not interested in highlighting certain functions, and would like to remove them? Or maybe you don’t mind if an entire function group goes west in the interest of speed? GeSHi can handle all of this!

        3.11.1 Adding a Keyword

        If you want to add a keyword to an existing keyword group, you use the add_keyword method:

        $geshi->add_keyword($key, $word);

        Where $key is the index of the group of keywords you want to add this keyword to, and $word is the word to add.

        This implies knowledge of the language file to know the correct index.

        3.11.2 Removing a Keyword

        Perhaps you want to remove a keyword from an existing group. Maybe you don’t use it and want to save yourself some time. Whatever the reason, you can remove it using the remove_keyword method:

        $geshi->remove_keyword($key, $word);

        Where $key is the index of the group of keywords that you want to remove this keyword from, and $word is the word to remove.

        This implies knowledge of the language file to know the correct index - most of the time the keywords you’ll want to remove will be in group 3, but this is not guaranteed and you should check the language file first.

        This function is silent - if the keyword is not in the group you specified, nothing awful will happen ;)

        3.11.3 Adding a Keyword Group

        Lets say for your big project you have several main functions and classes that you’d like highlighted. Why not add them as their own group instead of having them highlighted the same way as other keywords? Then you can make them stand out, and people can instantly see which functions and classes are user defined or inbuilt. Furthermore, you could set the URL for this group to point at the API documentation of your project.

        You add a keyword group by using the add_keyword_group method:

        $geshi->add_keyword_group($key, $styles, $case_sensitive, $words);

        Where $key is the key that you want to use to refer to this group, $styles is the styles that you want to use to style this group, $case_sensitive is true or false depending on whether you want this group of keywords to be case sensitive or not and $words is an array of words (or a string) of which words to add to this group. For example:

        $geshi->add_keyword_group(10, 'color: #600000;', false, array('myfunc_1', 'myfunc_2', 'myfunc_3'));

        Adds a keyword group referenced by index 10, of which all keywords in the group will be dark red, each keyword can be in any case and which contains the keywords “myfunc_1”, “myfunc_2” and “myfunc_3”.

        After creating such a keyword group, you may call other GeSHi methods on it, just as you would for any other keyword group.

        Caution:

        If you specify a $key for which there is already a keyword group, the old keyword group will be overwritten! Most language files don’t use numbers larger than 5, so I recommend you play it safe and use a number like 10 or 42.

        3.11.4 Removing a Keyword Group

        Perhaps you really need speed? Why not just remove an entire keyword group? GeSHi won’t have to loop through each keyword checking for its existance, saving much time. You remove a keyword group by using the remove_keyword_group method:

        $geshi->remove_keyword_group($key);

        Where $key is the key of the group you wish to remove. This implies knowleged of the language file.

        3.12 Headers and Footers for Your Code

        So you want to add some special information to the highlighted source? GeSHi can do that too! You can specify headers and footers for your code, style them, and insert information from the highlighted source into your header or footer.

        3.12.1 Keyword Substitution

        In your header and footer, you can put special keywords that will be replaced with actual configuration values for this GeSHi object. The keywords you can use are:

        • <TIME> or {TIME}: Is replaced by the time it took for the parse_code() method - i.e., how long it took for your code to be highlighted. The time is returned to three decimal places.
        • <LANGUAGE> or {LANGUAGE}: Is replaced by a nice, friendly version of the language name used to highlight this code.
        • <SPEED> or {SPEED}: Is replaced by the speed at which your source has been processed.
        • <VERSION> or {VERSION}: The GeSHi version used to highlight the code.

        3.12.2 Setting Header Content

        The header for your code is a <div>, which is inside the containing block. Therefore, it is affected by the method set_overall_style, and should contain the sort of HTML that belongs in a <div>. You may use any HTML you like, and format it as an HTML document. You should use valid HTML - convert to entities any quotemarks or angle brackets you want displayed. You set the header content using the method set_header_content():

        $geshi->set_header_content($content);

        Where $content is the HTML you want to use for the header.

        The footer for your code is a <div>, which is inside the containing block. Therefore, it is affected by the method set_overall_style, and should contain the sort of HTML that belongs in a <div>. You may use any HTML you like, and format it as an HTML document. You should use valid HTML - convert to entities any quotemarks or angle brackets you want displayed. You set the footer content using the method set_footer_content():

        $geshi->set_footer_content($content);

        Where $content is the HTML you want to use for the footer.

        3.12.4 Styling Header Content

        You can apply styles to the header content you have set with the set_header_content_style:

        $geshi->set_header_content_style($styles);

        Where $styles is the stylesheet declarations you want to use to style the header content.

        You can apply styles to the footer content you have set with the set_footer_content_style:

        $geshi->set_footer_content_style($styles);

        Where $styles is the stylesheet declarations you want to use to style the footer content.

        3.13 Keyword URLs

        As of version 1.0.2, GeSHi allows you to specify a URL for keyword groups. This URL is used by GeSHi to convert the keywords in that group into URLs to appropriate documentation. And using add_keyword_group you can add functions and classes from your own projects and use the URL functionality to provide a link to your own API documentation.

        3.13.1 Setting a URL for a Keyword Group

        To set the URL to be used for a keyword group, you use the set_url_for_keyword_group() method:

        $geshi->set_url_for_keyword_group($group, $url);

        Where $group is the keyword group you want to assign the URL for, and $url is the URL for this group of keywords.

        You may be wondering how to make each keyword in the group point to the correct URL. You do this by putting {FNAME} in the URL at the correct place. For example, PHP makes it easy by linking www.php.net/function-name to the documentation for that function, so the URL used is http://www.php.net/{FNAME}.

        Of course, when you get to a language like Java, that puts its class documentation in related folders, it gets a little trickier to work out an appropriate URL (see the Java language file!). I hope to provide some kind of redirection service at the GeSHi website in the future.

        Note:

        As of Version 1.0.7.21 there have been added two more symbols you can use to link to functions. {FNAMEL} will generate the lowercase version of the keyword, {FNAMEU} will generate the uppercase version. {FNAME} will provide the keyword as specified in the language file. Use one of these more specific placeholders if possible, as they result in less overhead while linking for case insensitive languages.

        3.13.2 Disabling a URL for a Keyword Group

        It’s easy to disable a URL for a keyword group: Simply use the method set_url_for_keyword_group() to pass an empty string as the URL:

        $geshi->set_url_for_keyword_group($group, '');

        3.13.3 Disabling all URLs for Keywords

        As of GeSHi 1.0.7.18, you can disable all URL linking for keywords:

        $geshi->enable_keyword_links(false);

        You can also style the function links. You can style their default status, hovered, active and visited status. All of this is controlled by one method, set_link_styles():

        $geshi->set_link_styles($mode, $styles);

        Where $mode is one of four values:

        • GESHI_LINK: The default style of the links.
        • GESHI_HOVER: The style of the links when they have focus (the mouse is hovering over them).
        • GESHI_ACTIVE: The style of the links when they are being clicked.
        • GESHI_VISITED: The style of links that the user has already visited.

        And $styles is the stylesheet declarations to apply to the links.

        Note:

        The names GESHI_LINK, GESHI_HOVER … are constants. Don’t put them in quotes!

        3.13.5 Setting the Link Target

        Perhaps you want to set the target of link attributes, so the manual pages open in a new window? Use the set_link_target() method:

        $geshi->set_link_target($target, $styles);

        Where $target is any valid (X)HTML target value - _blank or _top for example.

        3.14 Using Contextual Importance

        Caution:

        This functionality is not only buggy, but is proving very hard to implement in 1.1.X. Therefore, this functionality may well be removed in 1.2.0. You are hereby warned!

        This feature allows you to mark a part of your source as important. But as the implementation its use is deprecated and you should consider using the “Highlight Lines Extra” feature described below.

        3.15 Highlighting Special Lines “Extra”

        An alternative (and more stable) method of highlighting code that is important is to use extra highlighting by line. Although you may not know what line numbers contain the important lines, if you do this method is a much more flexible way of making important lines stand out.

        3.15.1 Specifying the Lines to Highlight Extra

        To specify which lines to highlight extra, you pass an array containing the line numbers to highlight_lines_extra():

        $geshi->highlight_lines_extra($array);

        The array could be in the form array(2, 3, 4, 7, 12, 344, 4242), made from a DB query, generated from looking through the source for certain important things and working out what line those things are… However you get the line numbers, the array should simply be an array of integers.

        Here’s an example, using the same source as before:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        
        //
        // Here we go again! This time we'll simply highlight the 8th line//
        $source = 'public int[][] product ( n, m ){
          int [][] ans = new int[n][m];  for ( int i = 0; i < n; i++ )
          {    for ( int j = 0; i < m; j++ )
            {      ans[i][j] = i * j;
            }  }
          return ans;}';
         $geshi = new GeSHi($source, 'java');
         $geshi->highlight_lines_extra(array(8));
         echo $geshi->parse_code();

        Which produces:

        Java code
        1
        23
        45
        67
        89
        1011
        12
        public int[][] product ( n, m )
        {  int [][] ans = new int[n][m];
          for ( int i = 0; i < n; i++ )  {
            for ( int j = 0; i < m; j++ )    {
              ans[i][j] = i * j;    }
          }  return ans;
        }

        What’s more, as you can see the code on a highlighted line is still actually highlighted itself.

        3.15.2 Styles for the Highlighted Lines

        Again as with contextual importance, you’re not chained to the yellow theme that is the default. You can use the set_highlight_lines_extra_style method:

        $geshi->set_highlight_lines_extra_style($styles);

        Where $styles is the stylesheet declarations that you want to apply to highlighted lines.

        3.16 Adding IDs to Each Line

        Perhaps you’re a javascript junkie? GeSHi provides a way to give each line an ID so you can access that line with javascript, or perhaps just by plain CSS (though if you want to access lines by CSS you should use the method in the previous section). To enable IDs you call the enable_ids() method:

        $geshi->enable_ids($flag);

        Where $flag is true or not present to enable IDs, and false to disable them again if you need.

        The ID generated is in the form {overall-css-id}-{line-number}. So for example, if you set the overall CSS id to be “mycode”, then the IDs for each line would by “mycode-1”, “mycode-2” etc. If there is no CSS ID set, then one is made up in the form geshi-[4 random characters], but this is not so useful for if you want to do javascript manipulation.

        3.17 Getting the Time of Styling

        Once you’ve called parse_code(), you can get the time it took to run the highlighting by calling the get_time() method:

        PHP code
        1
        23
        45
        67
        
        $geshi = new GeSHi($source, $language, $path);
         $code = mysql_real_escape_string($geshi->parse_code());
        $time = $geshi->get_time(); 
        // do something with itmysql_query("INSERT INTO code VALUES ('$code', '$time')");

        4 Language Files

        So now you know what features GeSHi offers, and perhaps you’ve even meddled with the source. Or perhaps you’d like a language file for language X but it doesn’t seem to be supported? Rubbish! GeSHi will highlight anything, what do you think I coded this for? ^_^ You’ll just have to learn how to make a language file yourself. And I promise it’s not too hard - and if you’re here you’re in the right place!

        4.1 An Example Language File

        Let’s begin by looking at an example language file - the language file for the first language ever supported, PHP:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        2223
        2425
        2627
        2829
        3031
        3233
        3435
        3637
        3839
        4041
        4243
        4445
        4647
        4849
        5051
        5253
        5455
        5657
        5859
        6061
        6263
        6465
        6667
        6869
        7071
        7273
        7475
        7677
        7879
        8081
        8283
        8485
        8687
        8889
        9091
        9293
        9495
        9697
        9899
        100101
        102103
        104105
        106107
        108109
        110111
        112113
        114115
        116117
        118119
        120121
        122123
        124125
        126127
        128129
        130131
        132133
        134135
        136137
        138139
        140141
        142143
        144145
        146147
        148149
        150151
        152153
        154155
        156157
        158159
        160161
        162163
        164165
        166167
        168169
        170171
        172173
        174175
        176177
        178179
        180181
        182183
        184185
        186187
        188189
        190191
        192193
        194195
        196197
        198199
        200201
        202203
        204205
        206207
        208209
        210211
        212213
        214215
        216217
        218219
        220221
        222223
        224225
        226227
        228229
        230231
        232233
        234235
        236237
        238239
        240241
        242243
        244245
        246247
        248249
        250251
        252253
        254255
        256257
        258259
        260261
        262263
        264265
        266267
        268269
        270271
        272273
        274275
        276277
        278279
        280281
        282283
        284285
        286287
        288289
        290291
        292293
        294295
        296297
        298299
        300301
        302303
        304305
        306307
        308309
        310311
        312313
        314315
        316317
        318319
        320321
        322323
        324325
        326327
        328329
        330331
        332333
        334335
        336337
        338339
        340341
        342343
        344345
        346347
        348349
        350351
        352353
        354355
        356357
        358359
        360361
        362363
        364365
        366367
        368369
        370371
        372373
        374375
        376377
        378379
        380381
        382383
        384385
        386387
        388389
        390391
        392393
        394395
        396397
        398399
        400401
        402403
        404405
        406407
        408409
        410411
        412413
        414415
        416417
        418419
        420421
        422423
        424425
        426427
        428429
        430431
        432433
        434435
        436437
        438439
        440441
        442443
        444445
        446447
        448449
        450451
        452453
        454455
        456457
        458459
        460461
        462463
        464465
        466467
        468469
        470471
        472473
        474475
        476477
        478479
        480481
        482483
        484485
        486487
        488489
        490491
        492493
        494495
        496497
        498499
        500501
        502503
        504505
        506507
        508509
        510511
        512513
        514515
        516517
        518519
        520521
        522523
        524525
        526527
        528529
        530531
        532533
        534535
        536537
        538539
        540541
        542543
        544545
        546547
        548549
        550551
        552553
        554555
        556557
        558559
        560561
        562563
        564565
        566567
        568569
        570571
        572573
        574575
        576577
        578579
        580581
        582583
        584585
        586587
        588589
        590591
        592593
        594595
        596597
        598599
        600601
        602603
        604605
        606607
        608609
        610611
        612613
        614615
        616617
        618619
        620621
        622623
        624625
        626627
        628629
        630631
        632633
        634635
        636637
        638639
        640641
        642643
        644645
        646647
        648649
        650651
        652653
        654655
        656657
        658659
        660661
        662663
        664665
        666667
        668669
        670671
        672673
        674675
        676677
        678679
        680681
        682683
        684685
        686687
        688689
        690691
        692693
        694695
        696697
        698699
        700701
        702703
        704705
        706707
        708709
        710711
        712713
        714715
        716717
        718719
        720721
        722723
        724725
        726727
        728729
        730731
        732733
        734735
        736737
        738739
        740741
        742743
        744745
        746747
        748749
        750751
        752753
        754755
        756757
        758759
        760761
        762763
        764765
        766767
        768769
        770771
        772773
        774775
        776777
        778779
        780781
        782783
        784785
        786787
        788789
        790791
        792793
        794795
        796797
        798799
        800801
        802803
        804805
        806807
        808809
        810811
        812813
        814815
        816817
        818819
        820821
        822823
        824825
        826827
        828829
        830831
        832833
        834835
        836837
        838839
        840841
        842843
        844845
        846847
        848849
        850851
        852853
        854855
        856857
        858859
        860861
        862863
        864865
        866867
        868869
        870871
        872873
        874875
        876877
        878879
        880881
        882883
        884885
        886887
        888889
        890891
        892893
        894895
        896897
        898899
        900901
        902903
        904905
        906907
        908909
        910911
        912913
        914915
        916917
        918919
        920921
        922923
        924925
        926927
        928929
        930931
        932933
        934935
        936937
        938939
        940941
        942943
        944945
        946947
        948949
        950951
        952953
        954955
        956957
        958959
        960961
        962963
        964965
        966967
        968969
        970971
        972973
        974975
        976977
        978979
        980981
        982983
        984985
        986987
        988989
        990991
        992993
        994995
        996997
        998999
        10001001
        10021003
        10041005
        10061007
        10081009
        10101011
        10121013
        10141015
        10161017
        10181019
        10201021
        10221023
        10241025
        10261027
        10281029
        10301031
        10321033
        10341035
        10361037
        10381039
        10401041
        10421043
        10441045
        10461047
        10481049
        10501051
        10521053
        10541055
        10561057
        10581059
        10601061
        10621063
        10641065
        10661067
        10681069
        10701071
        10721073
        10741075
        10761077
        10781079
        10801081
        10821083
        10841085
        10861087
        10881089
        10901091
        10921093
        10941095
        10961097
        10981099
        11001101
        11021103
        11041105
        11061107
        11081109
        11101111
        11121113
        11141115
        11161117
        
        <?php
        /************************************************************************************* * php.php
         * -------- * Author: Nigel McNie (nigel@geshi.org)
         * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) * Release Version: 1.0.8.10
         * Date Started: 2004/06/20 *
         * PHP language file for GeSHi. *
         * CHANGES * -------
         * 2008/05/23 (1.0.7.22) *  -  Added description of extra language features (SF#1970248)
         * 2004/11/25 (1.0.3) *  -  Added support for multiple object splitters
         *  -  Fixed &new problem * 2004/10/27 (1.0.2)
         *  -  Added URL support *  -  Added extra constants
         * 2004/08/05 (1.0.1) *  -  Added support for symbols
         * 2004/07/14 (1.0.0) *  -  First Release
         * * TODO (updated 2004/07/14)
         * ------------------------- * * Make sure the last few function I may have missed
         *   (like eval()) are included for highlighting * * Split to several files - php4, php5 etc
         * *************************************************************************************
         * *     This file is part of GeSHi.
         * *   GeSHi is free software; you can redistribute it and/or modify
         *   it under the terms of the GNU General Public License as published by *   the Free Software Foundation; either version 2 of the License, or
         *   (at your option) any later version. *
         *   GeSHi is distributed in the hope that it will be useful, *   but WITHOUT ANY WARRANTY; without even the implied warranty of
         *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *   GNU General Public License for more details.
         * *   You should have received a copy of the GNU General Public License
         *   along with GeSHi; if not, write to the Free Software *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
         * ************************************************************************************/
         $language_data = array(
            'LANG_NAME' => 'PHP',    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
            'COMMENT_MULTI' => array('/*' => '*/'),    'COMMENT_REGEXP' => array(
                //Heredoc and Nowdoc syntax        3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+?)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU',
                // phpdoc comments        4 => '#/\*\*(?![\*\/]).*\*/#sU',
                // Advanced # handling        2 => "/#.*?(?:(?=\?\>)|^)/smi"
                ),    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
            'QUOTEMARKS' => array('"'),    'ESCAPE_CHAR' => '',
            'ESCAPE_REGEXP' => array(        //Simple Single Char Escapes
                1 => "#\\\\[nfrtv\$\"\n\\\\]#i",        //Hexadecimal Char Specs
                2 => "#\\\\x[\da-fA-F]{1,2}#i",        //Octal Char Specs
                3 => "#\\\\[0-7]{1,3}#",        //String Parsing of Variable Names
                4 => "#\\$[a-z0-9_]+(?:\\[[a-z0-9_]+\\]|->[a-z0-9_]+)?|(?:\\{\\$|\\$\\{)[a-z0-9_]+(?:\\[('?)[a-z0-9_]*\\1\\]|->[a-z0-9_]+)*\\}#i",        //Experimental extension supporting cascaded {${$var}} syntax
                5 => "#\$[a-z0-9_]+(?:\[[a-z0-9_]+\]|->[a-z0-9_]+)?|(?:\{\$|\$\{)[a-z0-9_]+(?:\[('?)[a-z0-9_]*\\1\]|->[a-z0-9_]+)*\}|\{\$(?R)\}#i",        //Format String support in ""-Strings
                6 => "#%(?:%|(?:\d+\\\\\\\$)?\\+?(?:\x20|0|'.)?-?(?:\d+|\\*)?(?:\.\d+)?[bcdefFosuxX])#"        ),
            'HARDQUOTE' => array("'", "'"),    'HARDESCAPE' => array("'", "\\"),
            'HARDCHAR' => "\\",    'NUMBERS' =>
                GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX |        GESHI_NUMBER_FLT_SCI_ZERO,
            'KEYWORDS' => array(        1 => array(
                    'as','break','case','continue','default','do','else','elseif',            'endfor','endforeach','endif','endswitch','endwhile','for',
                    'foreach','if','include','include_once','require','require_once',            'return','switch','throw','while',
                     'echo','print'
                    ),        2 => array(
                    '&amp;new','&lt;/script&gt;','&lt;?php','&lt;script language',            'abstract','class','const','declare','extends','function','global',
                    'interface','namespace','new','private','protected','public','self',            'use','var'
                    ),        3 => array(
                    'abs','acos','acosh','addcslashes','addslashes','aggregate',            'aggregate_methods','aggregate_methods_by_list',
                    'aggregate_methods_by_regexp','aggregate_properties',            'aggregate_properties_by_list','aggregate_properties_by_regexp',
                    'aggregation_info','apache_child_terminate','apache_get_modules',            'apache_get_version','apache_getenv','apache_lookup_uri',
                    'apache_note','apache_request_headers','apache_response_headers',            'apache_setenv','array','array_change_key_case','array_chunk',
                    'array_combine','array_count_values','array_diff',            'array_diff_assoc','array_diff_key','array_diff_uassoc',
                    'array_diff_ukey','array_fill','array_fill_keys','array_filter',            'array_flip','array_intersect','array_intersect_assoc',
                    'array_intersect_key','array_intersect_uassoc',            'array_intersect_ukey','array_key_exists','array_keys','array_map',
                    'array_merge','array_merge_recursive','array_multisort','array_pad',            'array_pop','array_product','array_push','array_rand',
                    'array_reduce','array_reverse','array_search','array_shift',            'array_slice','array_splice','array_sum','array_udiff',
                    'array_udiff_assoc','array_udiff_uassoc','array_uintersect',            'array_uintersect_assoc','array_uintersect_uassoc','array_unique',
                    'array_unshift','array_values','array_walk','array_walk_recursive',            'arsort','asin','asinh','asort','assert','assert_options','atan',
                    'atan2','atanh','base_convert','base64_decode','base64_encode',            'basename','bcadd','bccomp','bcdiv','bcmod','bcmul',
                    'bcompiler_load','bcompiler_load_exe','bcompiler_parse_class',            'bcompiler_read','bcompiler_write_class','bcompiler_write_constant',
                    'bcompiler_write_exe_footer','bcompiler_write_file',            'bcompiler_write_footer','bcompiler_write_function',
                    'bcompiler_write_functions_from_file','bcompiler_write_header',            'bcompiler_write_included_filename','bcpow','bcpowmod','bcscale',
                    'bcsqrt','bcsub','bin2hex','bindec','bindtextdomain',            'bind_textdomain_codeset','bitset_empty','bitset_equal',
                    'bitset_excl','bitset_fill','bitset_from_array','bitset_from_hash',            'bitset_from_string','bitset_in','bitset_incl',
                    'bitset_intersection','bitset_invert','bitset_is_empty',            'bitset_subset','bitset_to_array','bitset_to_hash',
                    'bitset_to_string','bitset_union','blenc_encrypt','bzclose',            'bzcompress','bzdecompress','bzerrno','bzerror','bzerrstr',
                    'bzflush','bzopen','bzread','bzwrite','cal_days_in_month',            'cal_from_jd','cal_info','cal_to_jd','call_user_func',
                    'call_user_func_array','call_user_method','call_user_method_array',            'ceil','chdir','checkdate','checkdnsrr','chgrp','chmod','chop',
                    'chown','chr','chunk_split','class_exists','class_implements',            'class_parents','classkit_aggregate_methods',
                    'classkit_doc_comments','classkit_import','classkit_method_add',            'classkit_method_copy','classkit_method_redefine',
                    'classkit_method_remove','classkit_method_rename','clearstatcache',            'closedir','closelog','com_create_guid','com_event_sink',
                    'com_get_active_object','com_load_typelib','com_message_pump',            'com_print_typeinfo','compact','confirm_phpdoc_compiled',
                    'connection_aborted','connection_status','constant',            'convert_cyr_string','convert_uudecode','convert_uuencode','copy',
                    'cos','cosh','count','count_chars','cpdf_add_annotation',            'cpdf_add_outline','cpdf_arc','cpdf_begin_text','cpdf_circle',
                    'cpdf_clip','cpdf_close','cpdf_closepath',            'cpdf_closepath_fill_stroke','cpdf_closepath_stroke',
                    'cpdf_continue_text','cpdf_curveto','cpdf_end_text','cpdf_fill',            'cpdf_fill_stroke','cpdf_finalize','cpdf_finalize_page',
                    'cpdf_global_set_document_limits','cpdf_import_jpeg','cpdf_lineto',            'cpdf_moveto','cpdf_newpath','cpdf_open','cpdf_output_buffer',
                    'cpdf_page_init','cpdf_rect','cpdf_restore','cpdf_rlineto',            'cpdf_rmoveto','cpdf_rotate','cpdf_rotate_text','cpdf_save',
                    'cpdf_save_to_file','cpdf_scale','cpdf_set_action_url',            'cpdf_set_char_spacing','cpdf_set_creator','cpdf_set_current_page',
                    'cpdf_set_font','cpdf_set_font_directories',            'cpdf_set_font_map_file','cpdf_set_horiz_scaling',
                    'cpdf_set_keywords','cpdf_set_leading','cpdf_set_page_animation',            'cpdf_set_subject','cpdf_set_text_matrix','cpdf_set_text_pos',
                    'cpdf_set_text_rendering','cpdf_set_text_rise','cpdf_set_title',            'cpdf_set_viewer_preferences','cpdf_set_word_spacing',
                    'cpdf_setdash','cpdf_setflat','cpdf_setgray','cpdf_setgray_fill',            'cpdf_setgray_stroke','cpdf_setlinecap','cpdf_setlinejoin',
                    'cpdf_setlinewidth','cpdf_setmiterlimit','cpdf_setrgbcolor',            'cpdf_setrgbcolor_fill','cpdf_setrgbcolor_stroke','cpdf_show',
                    'cpdf_show_xy','cpdf_stringwidth','cpdf_stroke','cpdf_text',            'cpdf_translate','crack_check','crack_closedict',
                    'crack_getlastmessage','crack_opendict','crc32','create_function',            'crypt','ctype_alnum','ctype_alpha','ctype_cntrl','ctype_digit',
                    'ctype_graph','ctype_lower','ctype_print','ctype_punct',            'ctype_space','ctype_upper','ctype_xdigit','curl_close',
                    'curl_copy_handle','curl_errno','curl_error','curl_exec',            'curl_getinfo','curl_init','curl_multi_add_handle',
                    'curl_multi_close','curl_multi_exec','curl_multi_getcontent',            'curl_multi_info_read','curl_multi_init','curl_multi_remove_handle',
                    'curl_multi_select','curl_setopt','curl_setopt_array',            'curl_version','current','cvsclient_connect','cvsclient_log',
                    'cvsclient_login','cvsclient_retrieve','date','date_create',            'date_date_set','date_default_timezone_get',
                    'date_default_timezone_set','date_format','date_isodate_set',            'date_modify','date_offset_get','date_parse','date_sun_info',
                    'date_sunrise','date_sunset','date_time_set','date_timezone_get',            'date_timezone_set','db_id_list','dba_close','dba_delete',
                    'dba_exists','dba_fetch','dba_firstkey','dba_handlers','dba_insert',            'dba_key_split','dba_list','dba_nextkey','dba_open','dba_optimize',
                    'dba_popen','dba_replace','dba_sync','dbase_add_record',            'dbase_close','dbase_create','dbase_delete_record',
                    'dbase_get_header_info','dbase_get_record',            'dbase_get_record_with_names','dbase_numfields','dbase_numrecords',
                    'dbase_open','dbase_pack','dbase_replace_record',            'dbg_get_all_contexts','dbg_get_all_module_names',
                    'dbg_get_all_source_lines','dbg_get_context_name',            'dbg_get_module_name','dbg_get_profiler_results',
                    'dbg_get_source_context','dblist','dbmclose','dbmdelete',            'dbmexists','dbmfetch','dbmfirstkey','dbminsert','dbmnextkey',
                    'dbmopen','dbmreplace','dbx_close','dbx_compare','dbx_connect',            'dbx_error','dbx_escape_string','dbx_fetch_row','dbx_query',
                    'dbx_sort','dcgettext','dcngettext','deaggregate','debug_backtrace',            'debug_zval_dump','debugbreak','decbin','dechex','decoct','define',
                    'defined','define_syslog_variables','deg2rad','dgettext','die',            'dio_close','dio_open','dio_read','dio_seek','dio_stat','dio_write',
                    'dir','dirname','disk_free_space','disk_total_space',            'diskfreespace','dl','dngettext','docblock_token_name',
                    'docblock_tokenize','dom_import_simplexml','domxml_add_root',            'domxml_attributes','domxml_children','domxml_doc_add_root',
                    'domxml_doc_document_element','domxml_doc_get_element_by_id',            'domxml_doc_get_elements_by_tagname','domxml_doc_get_root',
                    'domxml_doc_set_root','domxml_doc_validate','domxml_doc_xinclude',            'domxml_dump_mem','domxml_dump_mem_file','domxml_dump_node',
                    'domxml_dumpmem','domxml_elem_get_attribute',            'domxml_elem_set_attribute','domxml_get_attribute','domxml_getattr',
                    'domxml_html_dump_mem','domxml_new_child','domxml_new_doc',            'domxml_new_xmldoc','domxml_node','domxml_node_add_namespace',
                    'domxml_node_attributes','domxml_node_children',            'domxml_node_get_content','domxml_node_has_attributes',
                    'domxml_node_new_child','domxml_node_set_content',            'domxml_node_set_namespace','domxml_node_unlink_node',
                    'domxml_open_file','domxml_open_mem','domxml_parser',            'domxml_parser_add_chunk','domxml_parser_cdata_section',
                    'domxml_parser_characters','domxml_parser_comment',            'domxml_parser_end','domxml_parser_end_document',
                    'domxml_parser_end_element','domxml_parser_entity_reference',            'domxml_parser_get_document','domxml_parser_namespace_decl',
                    'domxml_parser_processing_instruction',            'domxml_parser_start_document','domxml_parser_start_element',
                    'domxml_root','domxml_set_attribute','domxml_setattr',            'domxml_substitute_entities_default','domxml_unlink_node',
                    'domxml_version','domxml_xmltree','doubleval','each','easter_date',            'easter_days','empty','end','ereg','ereg_replace','eregi',
                    'eregi_replace','error_get_last','error_log','error_reporting',            'escapeshellarg','escapeshellcmd','eval','event_deschedule',
                    'event_dispatch','event_free','event_handle_signal',            'event_have_events','event_init','event_new','event_pending',
                    'event_priority_set','event_schedule','event_set','event_timeout',            'exec','exif_imagetype','exif_read_data','exif_tagname',
                    'exif_thumbnail','exit','exp','explode','expm1','extension_loaded',            'extract','ezmlm_hash','fbird_add_user','fbird_affected_rows',
                    'fbird_backup','fbird_blob_add','fbird_blob_cancel',            'fbird_blob_close','fbird_blob_create','fbird_blob_echo',
                    'fbird_blob_get','fbird_blob_import','fbird_blob_info',            'fbird_blob_open','fbird_close','fbird_commit','fbird_commit_ret',
                    'fbird_connect','fbird_db_info','fbird_delete_user','fbird_drop_db',            'fbird_errcode','fbird_errmsg','fbird_execute','fbird_fetch_assoc',
                    'fbird_fetch_object','fbird_fetch_row','fbird_field_info',            'fbird_free_event_handler','fbird_free_query','fbird_free_result',
                    'fbird_gen_id','fbird_maintain_db','fbird_modify_user',            'fbird_name_result','fbird_num_fields','fbird_num_params',
                    'fbird_param_info','fbird_pconnect','fbird_prepare','fbird_query',            'fbird_restore','fbird_rollback','fbird_rollback_ret',
                    'fbird_server_info','fbird_service_attach','fbird_service_detach',            'fbird_set_event_handler','fbird_trans','fbird_wait_event','fclose',
                    'fdf_add_doc_javascript','fdf_add_template','fdf_close',            'fdf_create','fdf_enum_values','fdf_errno','fdf_error','fdf_get_ap',
                    'fdf_get_attachment','fdf_get_encoding','fdf_get_file',            'fdf_get_flags','fdf_get_opt','fdf_get_status','fdf_get_value',
                    'fdf_get_version','fdf_header','fdf_next_field_name','fdf_open',            'fdf_open_string','fdf_remove_item','fdf_save','fdf_save_string',
                    'fdf_set_ap','fdf_set_encoding','fdf_set_file','fdf_set_flags',            'fdf_set_javascript_action','fdf_set_on_import_javascript',
                    'fdf_set_opt','fdf_set_status','fdf_set_submit_form_action',            'fdf_set_target_frame','fdf_set_value','fdf_set_version','feof',
                    'fflush','fgetc','fgetcsv','fgets','fgetss','file','file_exists',            'file_get_contents','file_put_contents','fileatime','filectime',
                    'filegroup','fileinode','filemtime','fileowner','fileperms',            'filepro','filepro_fieldcount','filepro_fieldname',
                    'filepro_fieldtype','filepro_fieldwidth','filepro_retrieve',            'filepro_rowcount','filesize','filetype','filter_has_var',
                    'filter_id','filter_input','filter_input_array','filter_list',            'filter_var','filter_var_array','finfo_buffer','finfo_close',
                    'finfo_file','finfo_open','finfo_set_flags','floatval','flock',            'floor','flush','fmod','fnmatch','fopen','fpassthru','fprintf',
                    'fputcsv','fputs','fread','frenchtojd','fribidi_charset_info',            'fribidi_get_charsets','fribidi_log2vis','fscanf','fseek',
                    'fsockopen','fstat','ftell','ftok','ftp_alloc','ftp_cdup',            'ftp_chdir','ftp_chmod','ftp_close','ftp_connect','ftp_delete',
                    'ftp_exec','ftp_fget','ftp_fput','ftp_get','ftp_get_option',            'ftp_login','ftp_mdtm','ftp_mkdir','ftp_nb_continue','ftp_nb_fget',
                    'ftp_nb_fput','ftp_nb_get','ftp_nb_put','ftp_nlist','ftp_pasv',            'ftp_put','ftp_pwd','ftp_quit','ftp_raw','ftp_rawlist','ftp_rename',
                    'ftp_rmdir','ftp_set_option','ftp_site','ftp_size',            'ftp_ssl_connect','ftp_systype','ftruncate','function_exists',
                    'func_get_arg','func_get_args','func_num_args','fwrite','gd_info',            'getallheaders','getcwd','getdate','getenv','gethostbyaddr',
                    'gethostbyname','gethostbynamel','getimagesize','getlastmod',            'getmxrr','getmygid','getmyinode','getmypid','getmyuid','getopt',
                    'getprotobyname','getprotobynumber','getrandmax','getrusage',            'getservbyname','getservbyport','gettext','gettimeofday','gettype',
                    'get_browser','get_cfg_var','get_class','get_class_methods',            'get_class_vars','get_current_user','get_declared_classes',
                    'get_defined_constants','get_defined_functions','get_defined_vars',            'get_extension_funcs','get_headers','get_html_translation_table',
                    'get_included_files','get_include_path','get_loaded_extensions',            'get_magic_quotes_gpc','get_magic_quotes_runtime','get_meta_tags',
                    'get_object_vars','get_parent_class','get_required_files',            'get_resource_type','glob','gmdate','gmmktime','gmp_abs','gmp_add',
                    'gmp_and','gmp_clrbit','gmp_cmp','gmp_com','gmp_div','gmp_div_q',            'gmp_div_qr','gmp_div_r','gmp_divexact','gmp_fact','gmp_gcd',
                    'gmp_gcdext','gmp_hamdist','gmp_init','gmp_intval','gmp_invert',            'gmp_jacobi','gmp_legendre','gmp_mod','gmp_mul','gmp_neg',
                    'gmp_nextprime','gmp_or','gmp_perfect_square','gmp_popcount',            'gmp_pow','gmp_powm','gmp_prob_prime','gmp_random','gmp_scan0',
                    'gmp_scan1','gmp_setbit','gmp_sign','gmp_sqrt','gmp_sqrtrem',            'gmp_strval','gmp_sub','gmp_xor','gmstrftime','gopher_parsedir',
                    'gregoriantojd','gzclose','gzcompress','gzdeflate','gzencode',            'gzeof','gzfile','gzgetc','gzgets','gzgetss','gzinflate','gzopen',
                    'gzpassthru','gzputs','gzread','gzrewind','gzseek','gztell',            'gzuncompress','gzwrite','hash','hash_algos','hash_file',
                    'hash_final','hash_hmac','hash_hmac_file','hash_init','hash_update',            'hash_update_file','hash_update_stream','header','headers_list',
                    'headers_sent','hebrev','hebrevc','hexdec','highlight_file',            'highlight_string','html_doc','html_doc_file','html_entity_decode',
                    'htmlentities','htmlspecialchars','htmlspecialchars_decode',            'http_build_cookie','http_build_query','http_build_str',
                    'http_build_url','http_cache_etag','http_cache_last_modified',            'http_chunked_decode','http_date','http_deflate','http_get',
                    'http_get_request_body','http_get_request_body_stream',            'http_get_request_headers','http_head','http_inflate',
                    'http_match_etag','http_match_modified','http_match_request_header',            'http_negotiate_charset','http_negotiate_content_type',
                    'http_negotiate_language','http_parse_cookie','http_parse_headers',            'http_parse_message','http_parse_params',
                    'http_persistent_handles_clean','http_persistent_handles_count',            'http_persistent_handles_ident','http_post_data','http_post_fields',
                    'http_put_data','http_put_file','http_put_stream','http_redirect',            'http_request','http_request_body_encode',
                    'http_request_method_exists','http_request_method_name',            'http_request_method_register','http_request_method_unregister',
                    'http_send_content_disposition','http_send_content_type',            'http_send_data','http_send_file','http_send_last_modified',
                    'http_send_status','http_send_stream','http_support',            'http_throttle','hypot','i18n_convert','i18n_discover_encoding',
                    'i18n_http_input','i18n_http_output','i18n_internal_encoding',            'i18n_ja_jp_hantozen','i18n_mime_header_decode',
                    'i18n_mime_header_encode','ibase_add_user','ibase_affected_rows',            'ibase_backup','ibase_blob_add','ibase_blob_cancel',
                    'ibase_blob_close','ibase_blob_create','ibase_blob_echo',            'ibase_blob_get','ibase_blob_import','ibase_blob_info',
                    'ibase_blob_open','ibase_close','ibase_commit','ibase_commit_ret',            'ibase_connect','ibase_db_info','ibase_delete_user','ibase_drop_db',
                    'ibase_errcode','ibase_errmsg','ibase_execute','ibase_fetch_assoc',            'ibase_fetch_object','ibase_fetch_row','ibase_field_info',
                    'ibase_free_event_handler','ibase_free_query','ibase_free_result',            'ibase_gen_id','ibase_maintain_db','ibase_modify_user',
                    'ibase_name_result','ibase_num_fields','ibase_num_params',            'ibase_param_info','ibase_pconnect','ibase_prepare','ibase_query',
                    'ibase_restore','ibase_rollback','ibase_rollback_ret',            'ibase_server_info','ibase_service_attach','ibase_service_detach',
                    'ibase_set_event_handler','ibase_trans','ibase_wait_event','iconv',            'iconv_get_encoding','iconv_mime_decode',
                    'iconv_mime_decode_headers','iconv_mime_encode',            'iconv_set_encoding','iconv_strlen','iconv_strpos','iconv_strrpos',
                    'iconv_substr','id3_get_frame_long_name','id3_get_frame_short_name',            'id3_get_genre_id','id3_get_genre_list','id3_get_genre_name',
                    'id3_get_tag','id3_get_version','id3_remove_tag','id3_set_tag',            'idate','ignore_user_abort','image_type_to_extension',
                    'image_type_to_mime_type','image2wbmp','imagealphablending',            'imageantialias','imagearc','imagechar','imagecharup',
                    'imagecolorallocate','imagecolorallocatealpha','imagecolorat',            'imagecolorclosest','imagecolorclosestalpha','imagecolordeallocate',
                    'imagecolorexact','imagecolorexactalpha','imagecolormatch',            'imagecolorresolve','imagecolorresolvealpha','imagecolorset',
                    'imagecolorsforindex','imagecolorstotal','imagecolortransparent',            'imageconvolution','imagecopy','imagecopymerge',
                    'imagecopymergegray','imagecopyresampled','imagecopyresized',            'imagecreate','imagecreatefromgd','imagecreatefromgd2',
                    'imagecreatefromgd2part','imagecreatefromgif','imagecreatefromjpeg',            'imagecreatefrompng','imagecreatefromstring','imagecreatefromwbmp',
                    'imagecreatefromxbm','imagecreatetruecolor','imagedashedline',            'imagedestroy','imageellipse','imagefill','imagefilledarc',
                    'imagefilledellipse','imagefilledpolygon','imagefilledrectangle',            'imagefilltoborder','imagefilter','imagefontheight',
                    'imagefontwidth','imageftbbox','imagefttext','imagegammacorrect',            'imagegd','imagegd2','imagegif','imagegrabscreen','imagegrabwindow',
                    'imageinterlace','imageistruecolor','imagejpeg','imagelayereffect',            'imageline','imageloadfont','imagepalettecopy','imagepng',
                    'imagepolygon','imagepsbbox','imagepsencodefont',            'imagepsextendfont','imagepsfreefont','imagepsloadfont',
                    'imagepsslantfont','imagepstext','imagerectangle','imagerotate',            'imagesavealpha','imagesetbrush','imagesetpixel','imagesetstyle',
                    'imagesetthickness','imagesettile','imagestring','imagestringup',            'imagesx','imagesy','imagetruecolortopalette','imagettfbbox',
                    'imagettftext','imagetypes','imagewbmp','imagexbm','imap_8bit',            'imap_alerts','imap_append','imap_base64','imap_binary','imap_body',
                    'imap_bodystruct','imap_check','imap_clearflag_full','imap_close',            'imap_create','imap_createmailbox','imap_delete',
                    'imap_deletemailbox','imap_errors','imap_expunge',            'imap_fetch_overview','imap_fetchbody','imap_fetchheader',
                    'imap_fetchstructure','imap_fetchtext','imap_get_quota',            'imap_get_quotaroot','imap_getacl','imap_getmailboxes',
                    'imap_getsubscribed','imap_header','imap_headerinfo','imap_headers',            'imap_last_error','imap_list','imap_listmailbox',
                    'imap_listsubscribed','imap_lsub','imap_mail','imap_mail_compose',            'imap_mail_copy','imap_mail_move','imap_mailboxmsginfo',
                    'imap_mime_header_decode','imap_msgno','imap_num_msg',            'imap_num_recent','imap_open','imap_ping','imap_qprint',
                    'imap_rename','imap_renamemailbox','imap_reopen',            'imap_rfc822_parse_adrlist','imap_rfc822_parse_headers',
                    'imap_rfc822_write_address','imap_savebody','imap_scan',            'imap_scanmailbox','imap_search','imap_set_quota','imap_setacl',
                    'imap_setflag_full','imap_sort','imap_status','imap_subscribe',            'imap_thread','imap_timeout','imap_uid','imap_undelete',
                    'imap_unsubscribe','imap_utf7_decode','imap_utf7_encode',            'imap_utf8','implode','import_request_variables','in_array',
                    'ini_alter','ini_get','ini_get_all','ini_restore','ini_set',            'intval','ip2long','iptcembed','iptcparse','isset','is_a',
                    'is_array','is_bool','is_callable','is_dir','is_double',            'is_executable','is_file','is_finite','is_float','is_infinite',
                    'is_int','is_integer','is_link','is_long','is_nan','is_null',            'is_numeric','is_object','is_readable','is_real','is_resource',
                    'is_scalar','is_soap_fault','is_string','is_subclass_of',            'is_uploaded_file','is_writable','is_writeable','iterator_apply',
                    'iterator_count','iterator_to_array','java_last_exception_clear',            'java_last_exception_get','jddayofweek','jdmonthname','jdtofrench',
                    'jdtogregorian','jdtojewish','jdtojulian','jdtounix','jewishtojd',            'join','jpeg2wbmp','json_decode','json_encode','juliantojd','key',
                    'key_exists','krsort','ksort','lcg_value','ldap_add','ldap_bind',            'ldap_close','ldap_compare','ldap_connect','ldap_count_entries',
                    'ldap_delete','ldap_dn2ufn','ldap_err2str','ldap_errno',            'ldap_error','ldap_explode_dn','ldap_first_attribute',
                    'ldap_first_entry','ldap_first_reference','ldap_free_result',            'ldap_get_attributes','ldap_get_dn','ldap_get_entries',
                    'ldap_get_option','ldap_get_values','ldap_get_values_len',            'ldap_list','ldap_mod_add','ldap_mod_del','ldap_mod_replace',
                    'ldap_modify','ldap_next_attribute','ldap_next_entry',            'ldap_next_reference','ldap_parse_reference','ldap_parse_result',
                    'ldap_read','ldap_rename','ldap_search','ldap_set_option',            'ldap_sort','ldap_start_tls','ldap_unbind','levenshtein',
                    'libxml_clear_errors','libxml_get_errors','libxml_get_last_error',            'libxml_set_streams_context','libxml_use_internal_errors','link',
                    'linkinfo','list','localeconv','localtime','log','log1p','log10',            'long2ip','lstat','ltrim','lzf_compress','lzf_decompress',
                    'lzf_optimized_for','magic_quotes_runtime','mail','max','mbereg',            'mberegi','mberegi_replace','mbereg_match','mbereg_replace',
                    'mbereg_search','mbereg_search_getpos','mbereg_search_getregs',            'mbereg_search_init','mbereg_search_pos','mbereg_search_regs',
                    'mbereg_search_setpos','mbregex_encoding','mbsplit','mbstrcut',            'mbstrlen','mbstrpos','mbstrrpos','mbsubstr','mb_check_encoding',
                    'mb_convert_case','mb_convert_encoding','mb_convert_kana',            'mb_convert_variables','mb_decode_mimeheader',
                    'mb_decode_numericentity','mb_detect_encoding','mb_detect_order',            'mb_encode_mimeheader','mb_encode_numericentity','mb_ereg',
                    'mb_eregi','mb_eregi_replace','mb_ereg_match','mb_ereg_replace',            'mb_ereg_search','mb_ereg_search_getpos','mb_ereg_search_getregs',
                    'mb_ereg_search_init','mb_ereg_search_pos','mb_ereg_search_regs',            'mb_ereg_search_setpos','mb_get_info','mb_http_input',
                    'mb_http_output','mb_internal_encoding','mb_language',            'mb_list_encodings','mb_output_handler','mb_parse_str',
                    'mb_preferred_mime_name','mb_regex_encoding','mb_regex_set_options',            'mb_send_mail','mb_split','mb_strcut','mb_strimwidth','mb_stripos',
                    'mb_stristr','mb_strlen','mb_strpos','mb_strrchr','mb_strrichr',            'mb_strripos','mb_strrpos','mb_strstr','mb_strtolower',
                    'mb_strtoupper','mb_strwidth','mb_substitute_character','mb_substr',            'mb_substr_count','mcrypt_cbc','mcrypt_cfb','mcrypt_create_iv',
                    'mcrypt_decrypt','mcrypt_ecb','mcrypt_enc_get_algorithms_name',            'mcrypt_enc_get_block_size','mcrypt_enc_get_iv_size',
                    'mcrypt_enc_get_key_size','mcrypt_enc_get_modes_name',            'mcrypt_enc_get_supported_key_sizes',
                    'mcrypt_enc_is_block_algorithm',            'mcrypt_enc_is_block_algorithm_mode','mcrypt_enc_is_block_mode',
                    'mcrypt_enc_self_test','mcrypt_encrypt','mcrypt_generic',            'mcrypt_generic_deinit','mcrypt_generic_end','mcrypt_generic_init',
                    'mcrypt_get_block_size','mcrypt_get_cipher_name',            'mcrypt_get_iv_size','mcrypt_get_key_size','mcrypt_list_algorithms',
                    'mcrypt_list_modes','mcrypt_module_close',            'mcrypt_module_get_algo_block_size',
                    'mcrypt_module_get_algo_key_size',            'mcrypt_module_get_supported_key_sizes',
                    'mcrypt_module_is_block_algorithm',            'mcrypt_module_is_block_algorithm_mode',
                    'mcrypt_module_is_block_mode','mcrypt_module_open',            'mcrypt_module_self_test','mcrypt_ofb','md5','md5_file',
                    'mdecrypt_generic','memcache_add','memcache_add_server',            'memcache_close','memcache_connect','memcache_debug',
                    'memcache_decrement','memcache_delete','memcache_flush',            'memcache_get','memcache_get_extended_stats',
                    'memcache_get_server_status','memcache_get_stats',            'memcache_get_version','memcache_increment','memcache_pconnect',
                    'memcache_replace','memcache_set','memcache_set_compress_threshold',            'memcache_set_server_params','memory_get_peak_usage',
                    'memory_get_usage','metaphone','mhash','mhash_count',            'mhash_get_block_size','mhash_get_hash_name','mhash_keygen_s2k',
                    'method_exists','microtime','mime_content_type','min',            'ming_keypress','ming_setcubicthreshold','ming_setscale',
                    'ming_useconstants','ming_useswfversion','mkdir','mktime',            'money_format','move_uploaded_file','msql','msql_affected_rows',
                    'msql_close','msql_connect','msql_create_db','msql_createdb',            'msql_data_seek','msql_db_query','msql_dbname','msql_drop_db',
                    'msql_dropdb','msql_error','msql_fetch_array','msql_fetch_field',            'msql_fetch_object','msql_fetch_row','msql_field_flags',
                    'msql_field_len','msql_field_name','msql_field_seek',            'msql_field_table','msql_field_type','msql_fieldflags',
                    'msql_fieldlen','msql_fieldname','msql_fieldtable','msql_fieldtype',            'msql_free_result','msql_freeresult','msql_list_dbs',
                    'msql_list_fields','msql_list_tables','msql_listdbs',            'msql_listfields','msql_listtables','msql_num_fields',
                    'msql_num_rows','msql_numfields','msql_numrows','msql_pconnect',            'msql_query','msql_regcase','msql_result','msql_select_db',
                    'msql_selectdb','msql_tablename','mssql_bind','mssql_close',            'mssql_connect','mssql_data_seek','mssql_execute',
                    'mssql_fetch_array','mssql_fetch_assoc','mssql_fetch_batch',            'mssql_fetch_field','mssql_fetch_object','mssql_fetch_row',
                    'mssql_field_length','mssql_field_name','mssql_field_seek',            'mssql_field_type','mssql_free_result','mssql_free_statement',
                    'mssql_get_last_message','mssql_guid_string','mssql_init',            'mssql_min_error_severity','mssql_min_message_severity',
                    'mssql_next_result','mssql_num_fields','mssql_num_rows',            'mssql_pconnect','mssql_query','mssql_result','mssql_rows_affected',
                    'mssql_select_db','mt_getrandmax','mt_rand','mt_srand','mysql',            'mysql_affected_rows','mysql_client_encoding','mysql_close',
                    'mysql_connect','mysql_createdb','mysql_create_db',            'mysql_data_seek','mysql_dbname','mysql_db_name','mysql_db_query',
                    'mysql_dropdb','mysql_drop_db','mysql_errno','mysql_error',            'mysql_escape_string','mysql_fetch_array','mysql_fetch_assoc',
                    'mysql_fetch_field','mysql_fetch_lengths','mysql_fetch_object',            'mysql_fetch_row','mysql_fieldflags','mysql_fieldlen',
                    'mysql_fieldname','mysql_fieldtable','mysql_fieldtype',            'mysql_field_flags','mysql_field_len','mysql_field_name',
                    'mysql_field_seek','mysql_field_table','mysql_field_type',            'mysql_freeresult','mysql_free_result','mysql_get_client_info',
                    'mysql_get_host_info','mysql_get_proto_info',            'mysql_get_server_info','mysql_info','mysql_insert_id',
                    'mysql_listdbs','mysql_listfields','mysql_listtables',            'mysql_list_dbs','mysql_list_fields','mysql_list_processes',
                    'mysql_list_tables','mysql_numfields','mysql_numrows',            'mysql_num_fields','mysql_num_rows','mysql_pconnect','mysql_ping',
                    'mysql_query','mysql_real_escape_string','mysql_result',            'mysql_selectdb','mysql_select_db','mysql_set_charset','mysql_stat',
                    'mysql_tablename','mysql_table_name','mysql_thread_id',            'mysql_unbuffered_query','mysqli_affected_rows','mysqli_autocommit',
                    'mysqli_bind_param','mysqli_bind_result','mysqli_change_user',            'mysqli_character_set_name','mysqli_client_encoding','mysqli_close',
                    'mysqli_commit','mysqli_connect','mysqli_connect_errno',            'mysqli_connect_error','mysqli_data_seek','mysqli_debug',
                    'mysqli_disable_reads_from_master','mysqli_disable_rpl_parse',            'mysqli_dump_debug_info','mysqli_embedded_server_end',
                    'mysqli_embedded_server_start','mysqli_enable_reads_from_master',            'mysqli_enable_rpl_parse','mysqli_errno','mysqli_error',
                    'mysqli_escape_string','mysqli_execute','mysqli_fetch',            'mysqli_fetch_array','mysqli_fetch_assoc','mysqli_fetch_field',
                    'mysqli_fetch_field_direct','mysqli_fetch_fields',            'mysqli_fetch_lengths','mysqli_fetch_object','mysqli_fetch_row',
                    'mysqli_field_count','mysqli_field_seek','mysqli_field_tell',            'mysqli_free_result','mysqli_get_charset','mysqli_get_client_info',
                    'mysqli_get_client_version','mysqli_get_host_info',            'mysqli_get_metadata','mysqli_get_proto_info',
                    'mysqli_get_server_info','mysqli_get_server_version',            'mysqli_get_warnings','mysqli_info','mysqli_init',
                    'mysqli_insert_id','mysqli_kill','mysqli_master_query',            'mysqli_more_results','mysqli_multi_query','mysqli_next_result',
                    'mysqli_num_fields','mysqli_num_rows','mysqli_options',            'mysqli_param_count','mysqli_ping','mysqli_prepare','mysqli_query',
                    'mysqli_real_connect','mysqli_real_escape_string',            'mysqli_real_query','mysqli_report','mysqli_rollback',
                    'mysqli_rpl_parse_enabled','mysqli_rpl_probe',            'mysqli_rpl_query_type','mysqli_select_db','mysqli_send_long_data',
                    'mysqli_send_query','mysqli_set_charset',            'mysqli_set_local_infile_default','mysqli_set_local_infile_handler',
                    'mysqli_set_opt','mysqli_slave_query','mysqli_sqlstate',            'mysqli_ssl_set','mysqli_stat','mysqli_stmt_affected_rows',
                    'mysqli_stmt_attr_get','mysqli_stmt_attr_set',            'mysqli_stmt_bind_param','mysqli_stmt_bind_result',
                    'mysqli_stmt_close','mysqli_stmt_data_seek','mysqli_stmt_errno',            'mysqli_stmt_error','mysqli_stmt_execute','mysqli_stmt_fetch',
                    'mysqli_stmt_field_count','mysqli_stmt_free_result',            'mysqli_stmt_get_warnings','mysqli_stmt_init',
                    'mysqli_stmt_insert_id','mysqli_stmt_num_rows',            'mysqli_stmt_param_count','mysqli_stmt_prepare','mysqli_stmt_reset',
                    'mysqli_stmt_result_metadata','mysqli_stmt_send_long_data',            'mysqli_stmt_sqlstate','mysqli_stmt_store_result',
                    'mysqli_store_result','mysqli_thread_id','mysqli_thread_safe',            'mysqli_use_result','mysqli_warning_count','natcasesort','natsort',
                    'new_xmldoc','next','ngettext','nl2br','nl_langinfo',            'ntuser_getdomaincontroller','ntuser_getusergroups',
                    'ntuser_getuserinfo','ntuser_getuserlist','number_format',            'ob_clean','ob_deflatehandler','ob_end_clean','ob_end_flush',
                    'ob_etaghandler','ob_flush','ob_get_clean','ob_get_contents',            'ob_get_flush','ob_get_length','ob_get_level','ob_get_status',
                    'ob_gzhandler','ob_iconv_handler','ob_implicit_flush',            'ob_inflatehandler','ob_list_handlers','ob_start','ob_tidyhandler',
                    'octdec','odbc_autocommit','odbc_binmode','odbc_close',            'odbc_close_all','odbc_columnprivileges','odbc_columns',
                    'odbc_commit','odbc_connect','odbc_cursor','odbc_data_source',            'odbc_do','odbc_error','odbc_errormsg','odbc_exec','odbc_execute',
                    'odbc_fetch_array','odbc_fetch_into','odbc_fetch_object',            'odbc_fetch_row','odbc_field_len','odbc_field_name',
                    'odbc_field_num','odbc_field_precision','odbc_field_scale',            'odbc_field_type','odbc_foreignkeys','odbc_free_result',
                    'odbc_gettypeinfo','odbc_longreadlen','odbc_next_result',            'odbc_num_fields','odbc_num_rows','odbc_pconnect','odbc_prepare',
                    'odbc_primarykeys','odbc_procedurecolumns','odbc_procedures',            'odbc_result','odbc_result_all','odbc_rollback','odbc_setoption',
                    'odbc_specialcolumns','odbc_statistics','odbc_tableprivileges',            'odbc_tables','opendir','openlog','openssl_csr_export',
                    'openssl_csr_export_to_file','openssl_csr_get_public_key',            'openssl_csr_get_subject','openssl_csr_new','openssl_csr_sign',
                    'openssl_error_string','openssl_free_key','openssl_get_privatekey',            'openssl_get_publickey','openssl_open','openssl_pkcs12_export',
                    'openssl_pkcs12_export_to_file','openssl_pkcs12_read',            'openssl_pkcs7_decrypt','openssl_pkcs7_encrypt',
                    'openssl_pkcs7_sign','openssl_pkcs7_verify','openssl_pkey_export',            'openssl_pkey_export_to_file','openssl_pkey_free',
                    'openssl_pkey_get_details','openssl_pkey_get_private',            'openssl_pkey_get_public','openssl_pkey_new',
                    'openssl_private_decrypt','openssl_private_encrypt',            'openssl_public_decrypt','openssl_public_encrypt','openssl_seal',
                    'openssl_sign','openssl_verify','openssl_x509_checkpurpose',            'openssl_x509_check_private_key','openssl_x509_export',
                    'openssl_x509_export_to_file','openssl_x509_free',            'openssl_x509_parse','openssl_x509_read','ord',
                    'output_add_rewrite_var','output_reset_rewrite_vars','overload',            'outputdebugstring','pack','parse_ini_file','parse_str','parse_url',
                    'parsekit_compile_file','parsekit_compile_string',            'parsekit_func_arginfo','parsekit_opcode_flags',
                    'parsekit_opcode_name','passthru','pathinfo','pclose',            'pdf_add_bookmark','pdf_add_launchlink','pdf_add_locallink',
                    'pdf_add_nameddest','pdf_add_note','pdf_add_pdflink',            'pdf_add_thumbnail','pdf_add_weblink','pdf_arc','pdf_arcn',
                    'pdf_attach_file','pdf_begin_font','pdf_begin_glyph',            'pdf_begin_page','pdf_begin_pattern','pdf_begin_template',
                    'pdf_circle','pdf_clip','pdf_close','pdf_close_image',            'pdf_close_pdi','pdf_close_pdi_page','pdf_closepath',
                    'pdf_closepath_fill_stroke','pdf_closepath_stroke','pdf_concat',            'pdf_continue_text','pdf_create_gstate','pdf_create_pvf',
                    'pdf_curveto','pdf_delete','pdf_delete_pvf','pdf_encoding_set_char',            'pdf_end_font','pdf_end_glyph','pdf_end_page','pdf_end_pattern',
                    'pdf_end_template','pdf_endpath','pdf_fill','pdf_fill_imageblock',            'pdf_fill_pdfblock','pdf_fill_stroke','pdf_fill_textblock',
                    'pdf_findfont','pdf_fit_image','pdf_fit_pdi_page',            'pdf_fit_textline','pdf_get_apiname','pdf_get_buffer',
                    'pdf_get_errmsg','pdf_get_errnum','pdf_get_parameter',            'pdf_get_pdi_parameter','pdf_get_pdi_value','pdf_get_value',
                    'pdf_initgraphics','pdf_lineto','pdf_load_font',            'pdf_load_iccprofile','pdf_load_image','pdf_makespotcolor',
                    'pdf_moveto','pdf_new','pdf_open_ccitt','pdf_open_file',            'pdf_open_image','pdf_open_image_file','pdf_open_pdi',
                    'pdf_open_pdi_page','pdf_place_image','pdf_place_pdi_page',            'pdf_process_pdi','pdf_rect','pdf_restore','pdf_rotate','pdf_save',
                    'pdf_scale','pdf_set_border_color','pdf_set_border_dash',            'pdf_set_border_style','pdf_set_gstate','pdf_set_info',
                    'pdf_set_parameter','pdf_set_text_pos','pdf_set_value',            'pdf_setcolor','pdf_setdash','pdf_setdashpattern','pdf_setflat',
                    'pdf_setfont','pdf_setlinecap','pdf_setlinejoin','pdf_setlinewidth',            'pdf_setmatrix','pdf_setmiterlimit','pdf_setpolydash','pdf_shading',
                    'pdf_shading_pattern','pdf_shfill','pdf_show','pdf_show_boxed',            'pdf_show_xy','pdf_skew','pdf_stringwidth','pdf_stroke',
                    'pdf_translate','pdo_drivers','pfsockopen','pg_affected_rows',            'pg_cancel_query','pg_clientencoding','pg_client_encoding',
                    'pg_close','pg_cmdtuples','pg_connect','pg_connection_busy',            'pg_connection_reset','pg_connection_status','pg_convert',
                    'pg_copy_from','pg_copy_to','pg_dbname','pg_delete','pg_end_copy',            'pg_errormessage','pg_escape_bytea','pg_escape_string','pg_exec',
                    'pg_execute','pg_fetch_all','pg_fetch_all_columns','pg_fetch_array',            'pg_fetch_assoc','pg_fetch_object','pg_fetch_result','pg_fetch_row',
                    'pg_fieldisnull','pg_fieldname','pg_fieldnum','pg_fieldprtlen',            'pg_fieldsize','pg_fieldtype','pg_field_is_null','pg_field_name',
                    'pg_field_num','pg_field_prtlen','pg_field_size','pg_field_table',            'pg_field_type','pg_field_type_oid','pg_free_result',
                    'pg_freeresult','pg_get_notify','pg_get_pid','pg_get_result',            'pg_getlastoid','pg_host','pg_insert','pg_last_error',
                    'pg_last_notice','pg_last_oid','pg_loclose','pg_locreate',            'pg_loexport','pg_loimport','pg_loopen','pg_loread','pg_loreadall',
                    'pg_lounlink','pg_lowrite','pg_lo_close','pg_lo_create',            'pg_lo_export','pg_lo_import','pg_lo_open','pg_lo_read',
                    'pg_lo_read_all','pg_lo_seek','pg_lo_tell','pg_lo_unlink',            'pg_lo_write','pg_meta_data','pg_numfields','pg_numrows',
                    'pg_num_fields','pg_num_rows','pg_options','pg_parameter_status',            'pg_pconnect','pg_ping','pg_port','pg_prepare','pg_put_line',
                    'pg_query','pg_query_params','pg_result','pg_result_error',            'pg_result_error_field','pg_result_seek','pg_result_status',
                    'pg_select','pg_send_execute','pg_send_prepare','pg_send_query',            'pg_send_query_params','pg_set_client_encoding',
                    'pg_set_error_verbosity','pg_setclientencoding','pg_trace',            'pg_transaction_status','pg_tty','pg_unescape_bytea','pg_untrace',
                    'pg_update','pg_version','php_egg_logo_guid','php_ini_loaded_file',            'php_ini_scanned_files','php_logo_guid','php_real_logo_guid',
                    'php_sapi_name','php_strip_whitespace','php_uname','phpcredits',            'phpdoc_xml_from_string','phpinfo','phpversion','pi','png2wbmp',
                    'pop3_close','pop3_delete_message','pop3_get_account_size',            'pop3_get_message','pop3_get_message_count',
                    'pop3_get_message_header','pop3_get_message_ids',            'pop3_get_message_size','pop3_get_message_sizes','pop3_open',
                    'pop3_undelete','popen','pos','posix_ctermid','posix_errno',            'posix_getcwd','posix_getegid','posix_geteuid','posix_getgid',
                    'posix_getgrgid','posix_getgrnam','posix_getgroups',            'posix_getlogin','posix_getpgid','posix_getpgrp','posix_getpid',
                    'posix_getppid','posix_getpwnam','posix_getpwuid','posix_getrlimit',            'posix_getsid','posix_getuid','posix_get_last_error','posix_isatty',
                    'posix_kill','posix_mkfifo','posix_setegid','posix_seteuid',            'posix_setgid','posix_setpgid','posix_setsid','posix_setuid',
                    'posix_strerror','posix_times','posix_ttyname','posix_uname','pow',            'preg_grep','preg_last_error','preg_match','preg_match_all',
                    'preg_quote','preg_replace','preg_replace_callback','preg_split',            'prev','print_r','printf','proc_close','proc_get_status',
                    'proc_open','proc_terminate','putenv','quoted_printable_decode',            'quotemeta','rad2deg','radius_acct_open','radius_add_server',
                    'radius_auth_open','radius_close','radius_config',            'radius_create_request','radius_cvt_addr','radius_cvt_int',
                    'radius_cvt_string','radius_demangle','radius_demangle_mppe_key',            'radius_get_attr','radius_get_vendor_attr','radius_put_addr',
                    'radius_put_attr','radius_put_int','radius_put_string',            'radius_put_vendor_addr','radius_put_vendor_attr',
                    'radius_put_vendor_int','radius_put_vendor_string',            'radius_request_authenticator','radius_send_request',
                    'radius_server_secret','radius_strerror','rand','range',            'rawurldecode','rawurlencode','read_exif_data','readdir','readfile',
                    'readgzfile','readlink','realpath','reg_close_key','reg_create_key',            'reg_enum_key','reg_enum_value','reg_get_value','reg_open_key',
                    'reg_set_value','register_shutdown_function',            'register_tick_function','rename','res_close','res_get','res_list',
                    'res_list_type','res_open','res_set','reset',            'restore_error_handler','restore_include_path','rewind','rewinddir',
                    'rmdir','round','rsort','rtrim','runkit_class_adopt',            'runkit_class_emancipate','runkit_constant_add',
                    'runkit_constant_redefine','runkit_constant_remove',            'runkit_default_property_add','runkit_function_add',
                    'runkit_function_copy','runkit_function_redefine',            'runkit_function_remove','runkit_function_rename','runkit_import',
                    'runkit_lint','runkit_lint_file','runkit_method_add',            'runkit_method_copy','runkit_method_redefine',
                    'runkit_method_remove','runkit_method_rename','runkit_object_id',            'runkit_return_value_used','runkit_sandbox_output_handler',
                    'runkit_superglobals','runkit_zval_inspect','scandir','sem_acquire',            'sem_get','sem_release','sem_remove','serialize',
                    'session_cache_expire','session_cache_limiter','session_commit',            'session_decode','session_destroy','session_encode',
                    'session_get_cookie_params','session_id','session_is_registered',            'session_module_name','session_name','session_regenerate_id',
                    'session_register','session_save_path','session_set_cookie_params',            'session_set_save_handler','session_start','session_unregister',
                    'session_unset','session_write_close','set_content',            'set_error_handler','set_file_buffer','set_include_path',
                    'set_magic_quotes_runtime','set_socket_blocking','set_time_limit',            'setcookie','setlocale','setrawcookie','settype','sha1','sha1_file',
                    'shell_exec','shmop_close','shmop_delete','shmop_open','shmop_read',            'shmop_size','shmop_write','shm_attach','shm_detach','shm_get_var',
                    'shm_put_var','shm_remove','shm_remove_var','show_source','shuffle',            'similar_text','simplexml_import_dom','simplexml_load_file',
                    'simplexml_load_string','sin','sinh','sizeof','sleep','smtp_close',            'smtp_cmd_data','smtp_cmd_mail','smtp_cmd_rcpt','smtp_connect',
                    'snmp_get_quick_print','snmp_get_valueretrieval','snmp_read_mib',            'snmp_set_quick_print','snmp_set_valueretrieval','snmp2_get',
                    'snmp2_getnext','snmp2_real_walk','snmp2_set','snmp2_walk',            'snmp3_get','snmp3_getnext','snmp3_real_walk','snmp3_set',
                    'snmp3_walk','snmpget','snmpgetnext','snmprealwalk','snmpset',            'snmpwalk','snmpwalkoid','socket_accept','socket_bind',
                    'socket_clear_error','socket_close','socket_connect',            'socket_create','socket_create_listen','socket_create_pair',
                    'socket_getopt','socket_getpeername','socket_getsockname',            'socket_get_option','socket_get_status','socket_iovec_add',
                    'socket_iovec_alloc','socket_iovec_delete','socket_iovec_fetch',            'socket_iovec_free','socket_iovec_set','socket_last_error',
                    'socket_listen','socket_read','socket_readv','socket_recv',            'socket_recvfrom','socket_recvmsg','socket_select','socket_send',
                    'socket_sendmsg','socket_sendto','socket_setopt','socket_set_block',            'socket_set_blocking','socket_set_nonblock','socket_set_option',
                    'socket_set_timeout','socket_shutdown','socket_strerror',            'socket_write','socket_writev','sort','soundex','spl_autoload',
                    'spl_autoload_call','spl_autoload_extensions',            'spl_autoload_functions','spl_autoload_register',
                    'spl_autoload_unregister','spl_classes','spl_object_hash','split',            'spliti','sprintf','sql_regcase','sqlite_array_query',
                    'sqlite_busy_timeout','sqlite_changes','sqlite_close',            'sqlite_column','sqlite_create_aggregate','sqlite_create_function',
                    'sqlite_current','sqlite_error_string','sqlite_escape_string',            'sqlite_exec','sqlite_factory','sqlite_fetch_all',
                    'sqlite_fetch_array','sqlite_fetch_column_types',            'sqlite_fetch_object','sqlite_fetch_single','sqlite_fetch_string',
                    'sqlite_field_name','sqlite_has_more','sqlite_has_prev',            'sqlite_last_error','sqlite_last_insert_rowid','sqlite_libencoding',
                    'sqlite_libversion','sqlite_next','sqlite_num_fields',            'sqlite_num_rows','sqlite_open','sqlite_popen','sqlite_prev',
                    'sqlite_query','sqlite_rewind','sqlite_seek','sqlite_single_query',            'sqlite_udf_decode_binary','sqlite_udf_encode_binary',
                    'sqlite_unbuffered_query','sqlite_valid','sqrt','srand','sscanf',            'ssh2_auth_hostbased_file','ssh2_auth_none','ssh2_auth_password',
                    'ssh2_auth_pubkey_file','ssh2_connect','ssh2_exec',            'ssh2_fetch_stream','ssh2_fingerprint','ssh2_forward_accept',
                    'ssh2_forward_listen','ssh2_methods_negotiated','ssh2_poll',            'ssh2_publickey_add','ssh2_publickey_init','ssh2_publickey_list',
                    'ssh2_publickey_remove','ssh2_scp_recv','ssh2_scp_send','ssh2_sftp',            'ssh2_sftp_lstat','ssh2_sftp_mkdir','ssh2_sftp_readlink',
                    'ssh2_sftp_realpath','ssh2_sftp_rename','ssh2_sftp_rmdir',            'ssh2_sftp_stat','ssh2_sftp_symlink','ssh2_sftp_unlink',
                    'ssh2_shell','ssh2_tunnel','stat','stats_absolute_deviation',            'stats_cdf_beta','stats_cdf_binomial','stats_cdf_cauchy',
                    'stats_cdf_chisquare','stats_cdf_exponential','stats_cdf_f',            'stats_cdf_gamma','stats_cdf_laplace','stats_cdf_logistic',
                    'stats_cdf_negative_binomial','stats_cdf_noncentral_chisquare',            'stats_cdf_noncentral_f','stats_cdf_noncentral_t',
                    'stats_cdf_normal','stats_cdf_poisson','stats_cdf_t',            'stats_cdf_uniform','stats_cdf_weibull','stats_covariance',
                    'stats_dens_beta','stats_dens_cauchy','stats_dens_chisquare',            'stats_dens_exponential','stats_dens_f','stats_dens_gamma',
                    'stats_dens_laplace','stats_dens_logistic','stats_dens_normal',            'stats_dens_pmf_binomial','stats_dens_pmf_hypergeometric',
                    'stats_dens_pmf_negative_binomial','stats_dens_pmf_poisson',            'stats_dens_t','stats_dens_uniform','stats_dens_weibull',
                    'stats_harmonic_mean','stats_kurtosis','stats_rand_gen_beta',            'stats_rand_gen_chisquare','stats_rand_gen_exponential',
                    'stats_rand_gen_f','stats_rand_gen_funiform','stats_rand_gen_gamma',            'stats_rand_gen_ipoisson','stats_rand_gen_iuniform',
                    'stats_rand_gen_noncenral_f','stats_rand_gen_noncentral_chisquare',            'stats_rand_gen_noncentral_t','stats_rand_gen_normal',
                    'stats_rand_gen_t','stats_rand_getsd','stats_rand_ibinomial',            'stats_rand_ibinomial_negative','stats_rand_ignlgi',
                    'stats_rand_phrase_to_seeds','stats_rand_ranf','stats_rand_setall',            'stats_skew','stats_standard_deviation','stats_stat_binomial_coef',
                    'stats_stat_correlation','stats_stat_factorial',            'stats_stat_independent_t','stats_stat_innerproduct',
                    'stats_stat_paired_t','stats_stat_percentile','stats_stat_powersum',            'stats_variance','strcasecmp','strchr','strcmp','strcoll','strcspn',
                    'stream_bucket_append','stream_bucket_make_writeable',            'stream_bucket_new','stream_bucket_prepend','stream_context_create',
                    'stream_context_get_default','stream_context_get_options',            'stream_context_set_default','stream_context_set_option',
                    'stream_context_set_params','stream_copy_to_stream',            'stream_encoding','stream_filter_append','stream_filter_prepend',
                    'stream_filter_register','stream_filter_remove',            'stream_get_contents','stream_get_filters','stream_get_line',
                    'stream_get_meta_data','stream_get_transports',            'stream_get_wrappers','stream_is_local',
                    'stream_notification_callback','stream_register_wrapper',            'stream_resolve_include_path','stream_select','stream_set_blocking',
                    'stream_set_timeout','stream_set_write_buffer',            'stream_socket_accept','stream_socket_client',
                    'stream_socket_enable_crypto','stream_socket_get_name',            'stream_socket_pair','stream_socket_recvfrom',
                    'stream_socket_sendto','stream_socket_server',            'stream_socket_shutdown','stream_supports_lock',
                    'stream_wrapper_register','stream_wrapper_restore',            'stream_wrapper_unregister','strftime','stripcslashes','stripos',
                    'stripslashes','strip_tags','stristr','strlen','strnatcasecmp',            'strnatcmp','strpbrk','strncasecmp','strncmp','strpos','strrchr',
                    'strrev','strripos','strrpos','strspn','strstr','strtok',            'strtolower','strtotime','strtoupper','strtr','strval',
                    'str_ireplace','str_pad','str_repeat','str_replace','str_rot13',            'str_split','str_shuffle','str_word_count','substr',
                    'substr_compare','substr_count','substr_replace','svn_add',            'svn_auth_get_parameter','svn_auth_set_parameter','svn_cat',
                    'svn_checkout','svn_cleanup','svn_client_version','svn_commit',            'svn_diff','svn_export','svn_fs_abort_txn','svn_fs_apply_text',
                    'svn_fs_begin_txn2','svn_fs_change_node_prop','svn_fs_check_path',            'svn_fs_contents_changed','svn_fs_copy','svn_fs_delete',
                    'svn_fs_dir_entries','svn_fs_file_contents','svn_fs_file_length',            'svn_fs_is_dir','svn_fs_is_file','svn_fs_make_dir',
                    'svn_fs_make_file','svn_fs_node_created_rev','svn_fs_node_prop',            'svn_fs_props_changed','svn_fs_revision_prop',
                    'svn_fs_revision_root','svn_fs_txn_root','svn_fs_youngest_rev',            'svn_import','svn_info','svn_log','svn_ls','svn_repos_create',
                    'svn_repos_fs','svn_repos_fs_begin_txn_for_commit',            'svn_repos_fs_commit_txn','svn_repos_hotcopy','svn_repos_open',
                    'svn_repos_recover','svn_status','svn_update','symlink',            'sys_get_temp_dir','syslog','system','tan','tanh','tempnam',
                    'textdomain','thread_get','thread_include','thread_lock',            'thread_lock_try','thread_mutex_destroy','thread_mutex_init',
                    'thread_set','thread_start','thread_unlock','tidy_access_count',            'tidy_clean_repair','tidy_config_count','tidy_diagnose',
                    'tidy_error_count','tidy_get_body','tidy_get_config',            'tidy_get_error_buffer','tidy_get_head','tidy_get_html',
                    'tidy_get_html_ver','tidy_get_output','tidy_get_release',            'tidy_get_root','tidy_get_status','tidy_getopt','tidy_is_xhtml',
                    'tidy_is_xml','tidy_parse_file','tidy_parse_string',            'tidy_repair_file','tidy_repair_string','tidy_warning_count','time',
                    'timezone_abbreviations_list','timezone_identifiers_list',            'timezone_name_from_abbr','timezone_name_get','timezone_offset_get',
                    'timezone_open','timezone_transitions_get','tmpfile',            'token_get_all','token_name','touch','trigger_error',
                    'transliterate','transliterate_filters_get','trim','uasort',            'ucfirst','ucwords','uksort','umask','uniqid','unixtojd','unlink',
                    'unpack','unregister_tick_function','unserialize','unset',            'urldecode','urlencode','user_error','use_soap_error_handler',
                    'usleep','usort','utf8_decode','utf8_encode','var_dump',            'var_export','variant_abs','variant_add','variant_and',
                    'variant_cast','variant_cat','variant_cmp',            'variant_date_from_timestamp','variant_date_to_timestamp',
                    'variant_div','variant_eqv','variant_fix','variant_get_type',            'variant_idiv','variant_imp','variant_int','variant_mod',
                    'variant_mul','variant_neg','variant_not','variant_or',            'variant_pow','variant_round','variant_set','variant_set_type',
                    'variant_sub','variant_xor','version_compare','virtual','vfprintf',            'vprintf','vsprintf','wddx_add_vars','wddx_deserialize',
                    'wddx_packet_end','wddx_packet_start','wddx_serialize_value',            'wddx_serialize_vars','win_beep','win_browse_file',
                    'win_browse_folder','win_create_link','win_message_box',            'win_play_wav','win_shell_execute','win32_create_service',
                    'win32_delete_service','win32_get_last_control_message',            'win32_ps_list_procs','win32_ps_stat_mem','win32_ps_stat_proc',
                    'win32_query_service_status','win32_scheduler_delete_task',            'win32_scheduler_enum_tasks','win32_scheduler_get_task_info',
                    'win32_scheduler_run','win32_scheduler_set_task_info',            'win32_set_service_status','win32_start_service',
                    'win32_start_service_ctrl_dispatcher','win32_stop_service',            'wordwrap','xml_error_string','xml_get_current_byte_index',
                    'xml_get_current_column_number','xml_get_current_line_number',            'xml_get_error_code','xml_parse','xml_parser_create',
                    'xml_parser_create_ns','xml_parser_free','xml_parser_get_option',            'xml_parser_set_option','xml_parse_into_struct',
                    'xml_set_character_data_handler','xml_set_default_handler',            'xml_set_element_handler','xml_set_end_namespace_decl_handler',
                    'xml_set_external_entity_ref_handler',            'xml_set_notation_decl_handler','xml_set_object',
                    'xml_set_processing_instruction_handler',            'xml_set_start_namespace_decl_handler',
                    'xml_set_unparsed_entity_decl_handler','xmldoc','xmldocfile',            'xmlrpc_decode','xmlrpc_decode_request','xmlrpc_encode',
                    'xmlrpc_encode_request','xmlrpc_get_type','xmlrpc_is_fault',            'xmlrpc_parse_method_descriptions',
                    'xmlrpc_server_add_introspection_data','xmlrpc_server_call_method',            'xmlrpc_server_create','xmlrpc_server_destroy',
                    'xmlrpc_server_register_introspection_callback',            'xmlrpc_server_register_method','xmlrpc_set_type','xmltree',
                    'xmlwriter_end_attribute','xmlwriter_end_cdata',            'xmlwriter_end_comment','xmlwriter_end_document',
                    'xmlwriter_end_dtd','xmlwriter_end_dtd_attlist',            'xmlwriter_end_dtd_element','xmlwriter_end_dtd_entity',
                    'xmlwriter_end_element','xmlwriter_end_pi','xmlwriter_flush',            'xmlwriter_full_end_element','xmlwriter_open_memory',
                    'xmlwriter_open_uri','xmlwriter_output_memory',            'xmlwriter_set_indent','xmlwriter_set_indent_string',
                    'xmlwriter_start_attribute','xmlwriter_start_attribute_ns',            'xmlwriter_start_cdata','xmlwriter_start_comment',
                    'xmlwriter_start_document','xmlwriter_start_dtd',            'xmlwriter_start_dtd_attlist','xmlwriter_start_dtd_element',
                    'xmlwriter_start_dtd_entity','xmlwriter_start_element',            'xmlwriter_start_element_ns','xmlwriter_start_pi','xmlwriter_text',
                    'xmlwriter_write_attribute','xmlwriter_write_attribute_ns',            'xmlwriter_write_cdata','xmlwriter_write_comment',
                    'xmlwriter_write_dtd','xmlwriter_write_dtd_attlist',            'xmlwriter_write_dtd_element','xmlwriter_write_dtd_entity',
                    'xmlwriter_write_element','xmlwriter_write_element_ns',            'xmlwriter_write_pi','xmlwriter_write_raw','xpath_eval',
                    'xpath_eval_expression','xpath_new_context','xpath_register_ns',            'xpath_register_ns_auto','xptr_eval','xptr_new_context','yp_all',
                    'yp_cat','yp_errno','yp_err_string','yp_first',            'yp_get_default_domain','yp_master','yp_match','yp_next','yp_order',
                    'zend_current_obfuscation_level','zend_get_cfg_var','zend_get_id',            'zend_loader_current_file','zend_loader_enabled',
                    'zend_loader_file_encoded','zend_loader_file_licensed',            'zend_loader_install_license','zend_loader_version',
                    'zend_logo_guid','zend_match_hostmasks','zend_obfuscate_class_name',            'zend_obfuscate_function_name','zend_optimizer_version',
                    'zend_runtime_obfuscate','zend_version','zip_close',            'zip_entry_close','zip_entry_compressedsize',
                    'zip_entry_compressionmethod','zip_entry_filesize','zip_entry_name',            'zip_entry_open','zip_entry_read','zip_open','zip_read',
                    'zlib_get_coding_type'            ),
                4 => array(            'DEFAULT_INCLUDE_PATH', 'DIRECTORY_SEPARATOR', 'E_ALL',
                    'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_CORE_ERROR',            'E_CORE_WARNING', 'E_ERROR', 'E_NOTICE', 'E_PARSE', 'E_STRICT',
                    'E_USER_ERROR', 'E_USER_NOTICE', 'E_USER_WARNING', 'E_WARNING',            'ENT_COMPAT','ENT_QUOTES','ENT_NOQUOTES',
                    'false', 'null', 'PEAR_EXTENSION_DIR', 'PEAR_INSTALL_DIR',            'PHP_BINDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_DATADIR',
                    'PHP_EXTENSION_DIR', 'PHP_LIBDIR',            'PHP_LOCALSTATEDIR', 'PHP_OS',
                    'PHP_OUTPUT_HANDLER_CONT', 'PHP_OUTPUT_HANDLER_END',            'PHP_OUTPUT_HANDLER_START', 'PHP_SYSCONFDIR',
                    'PHP_VERSION', 'true', '__CLASS__', '__FILE__', '__FUNCTION__',            '__LINE__', '__METHOD__'
                    )        ),
            'SYMBOLS' => array(        1 => array(
                    '<'.'%', '<'.'%=', '%'.'>', '<'.'?', '<'.'?=', '?'.'>'            ),
                0 => array(            '(', ')', '[', ']', '{', '}',
                    '!', '@', '%', '&', '|', '/',            '<', '>',
                    '=', '-', '+', '*',            '.', ':', ',', ';'
                    )        ),
            'CASE_SENSITIVE' => array(        GESHI_COMMENTS => false,
                1 => false,        2 => false,
                3 => false,        4 => false
                ),    'STYLES' => array(
                'KEYWORDS' => array(            1 => 'color: #b1b100;',
                    2 => 'color: #000000; font-weight: bold;',            3 => 'color: #990000;',
                    4 => 'color: #009900; font-weight: bold;'            ),
                'COMMENTS' => array(            1 => 'color: #666666; font-style: italic;',
                    2 => 'color: #666666; font-style: italic;',            3 => 'color: #0000cc; font-style: italic;',
                    4 => 'color: #009933; font-style: italic;',            'MULTI' => 'color: #666666; font-style: italic;'
                    ),        'ESCAPE_CHAR' => array(
                    0 => 'color: #000099; font-weight: bold;',            1 => 'color: #000099; font-weight: bold;',
                    2 => 'color: #660099; font-weight: bold;',            3 => 'color: #660099; font-weight: bold;',
                    4 => 'color: #006699; font-weight: bold;',            5 => 'color: #006699; font-weight: bold; font-style: italic;',
                    6 => 'color: #009933; font-weight: bold;',            'HARD' => 'color: #000099; font-weight: bold;'
                    ),        'BRACKETS' => array(
                    0 => 'color: #009900;'            ),
                'STRINGS' => array(            0 => 'color: #0000ff;',
                    'HARD' => 'color: #0000ff;'            ),
                'NUMBERS' => array(            0 => 'color: #cc66cc;',
                    GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',            GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
                    GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',            ),
                'METHODS' => array(            1 => 'color: #004000;',
                    2 => 'color: #004000;'            ),
                'SYMBOLS' => array(            0 => 'color: #339933;',
                    1 => 'color: #000000; font-weight: bold;'            ),
                'REGEXPS' => array(            0 => 'color: #000088;'
                    ),        'SCRIPT' => array(
                    0 => '',            1 => '',
                    2 => '',            3 => '',
                    4 => '',            5 => ''
                    )        ),
            'URLS' => array(        1 => '',
                2 => '',        3 => 'http://www.php.net/{FNAMEL}',
                4 => ''        ),
            'OOLANG' => true,    'OBJECT_SPLITTERS' => array(
                1 => '-&gt;',        2 => '::'
                ),    'REGEXPS' => array(
                //Variables        0 => "[\\$]+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*"
                ),    'STRICT_MODE_APPLIES' => GESHI_MAYBE,
            'SCRIPT_DELIMITERS' => array(        0 => array(
                    '<'.'?php' => '?'.'>'            ),
                1 => array(            '<'.'?' => '?'.'>'
                    ),        2 => array(
                    '<'.'%' => '%'.'>'            ),
                3 => array(            '<script language="php">' => '</script>'
                    ),        4 => "/(?P<start><\\?(?>php\b)?)(?:".
                    "(?>[^\"'?\\/<]+)|".            "\\?(?!>)|".
                    "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".            "(?>\"(?>[^\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|".
                    "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|".            "\\/\\/(?>.*?(?:\\?>|$))|".
                    "#(?>.*?(?:\\?>|$))|".            "\\/(?=[^*\\/])|".
                    "<(?!<<)|".            "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>".
                    ")*?(?P<end>\\?>|\Z)/sm",        5 => "/(?P<start><%)(?:".
                    "(?>[^\"'%\\/<]+)|".            "%(?!>)|".
                    "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".            "(?>\"(?>[^\\\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|".
                    "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|".            "\\/\\/(?>.*?(?:%>|$))|".
                    "#(?>.*?(?:%>|$))|".            "\\/(?=[^*\\/])|".
                    "<(?!<<)|".            "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>".
                    ")*?(?P<end>%>|\Z)/sm",        ),
            'HIGHLIGHT_STRICT_BLOCK' => array(        0 => true,
                1 => true,        2 => true,
                3 => true,        4 => true,
                5 => true        ),
            'TAB_WIDTH' => 4);
         ?>

        If you’re remotely familiar with PHP (or even if you’re not), you can see that all that a language file consists of is a glorified variable assignment. Easy! All a language file does is assign a variable $language_data. Though still, there’s a lot of indices to that array… but this section is here to break each index down and explain it to you.

        4.2 Language File Conventions

        There are several conventions that are used in language files. For ease of use and readability, your language files should obey the following rules:

        • Indentation is 4 spaces, not tabs: Use spaces! as editors continiously screw up tabs there should be no tabs in your documents since it would look differently on every computer otherwise.
        • Strings are in single quotes: Every string in a language file should be in single quotes (‘), unless you are specifying a single quote as a quotemark or escape character, in which case they can be in double quotes for readability; or if you are specifying a REGEXP (see below). This ensures that the language file can be loaded as fast as possible by PHP as unnecessary parsing can be avoided.
        • Large arrays are multi-lined: An array with more than three or four values should be broken into multiple lines. In any case, lines should not be wider than a full-screen window (about 100 chars per line max). Don’t break the keywords arrays after every keyword.
        • Ending brackets for multi-lined arrays on a new line: Also with a comma after them, unless the array is the last one in a parent array. See the PHP language file for examples of where to use commas.
        • Use GeSHi’s constants: For capatalisation, regular expressions etc. use the GeSHi constants, not their actual values.
        • Verbatim header format: Copy the file header verbatim from other language files and modify the values afterwards. Don’t try to invent own header formats, as your languages else will fail validation!

        There are more notes on each convention where it may appear in the language file sections below.

        4.3 Language File Sections

        This section will look at all the sections of a language file, and how they relate to the final highlighting result.

        4.3.1 The Header

        The header of a language file is the first lines with the big comment and the start of the variable $language_data:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        2223
        2425
        2627
        2829
        3031
        3233
        3435
        3637
        3839
        4041
        4243
        
        <?php
        /************************************************************************************* * <name-of-language-file.php>
         * --------------------------------- * Author: <name> (<e-mail address>)
         * Copyright: (c) 2008 <name> (<website URL>) * Release Version: <GeSHi release>
         * Date Started: <date started> *
         * <name-of-language> language file for GeSHi. *
         * <any-comments...> *
         * CHANGES * -------
         * <date-of-release> (<GeSHi release>) *  -  First Release
         * * TODO (updated <date-of-release>)
         * ------------------------- * <things-to-do>
         * *************************************************************************************
         * *     This file is part of GeSHi.
         * *   GeSHi is free software; you can redistribute it and/or modify
         *   it under the terms of the GNU General Public License as published by *   the Free Software Foundation; either version 2 of the License, or
         *   (at your option) any later version. *
         *   GeSHi is distributed in the hope that it will be useful, *   but WITHOUT ANY WARRANTY; without even the implied warranty of
         *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *   GNU General Public License for more details.
         * *   You should have received a copy of the GNU General Public License
         *   along with GeSHi; if not, write to the Free Software *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
         * ************************************************************************************/
         $language_data = array (

        The parts in angle brackets are the parts that you change for your language file. Everything else must remain the same!

        Here are the parts you should change:

        • <name-of-language-file.php> - This should become the name of your language file. Language file names are in lower case and contain only alphanumeric characters, dashes and underscores. Language files end with .php (which you should put with the name of your language file, eg language.php)
        • <name> - Your name, or alias.
        • <e-mail address> - Your e-mail address. If you want your language file included with GeSHi you must include an e-mail address that refers to an inbox controlled by you.
        • <website> - A URL of a website of yours (perhaps to a page that deals with your contribution to GeSHi, or your home page/blog)
        • <date-started> - The date you started working on the language file. If you can’t remember, guestimate.
        • <name-of-language> - The name of the language you made this language file for (probably similar to the language file name).
        • <any-comments> - Any comments you have to make about this language file, perhaps on where you got the keywords for, what dialect of the language this language file is for etc etc. If you don’t have any comments, remove the space for them.
        • <date-of-release - The date you released the language file to the public. If you simply send it to me for inclusion in a new GeSHi and don’t release it, leave this blank, and I’ll replace it with the date of the GeSHi release that it is first added to.
        • <GeSHi release> - This is the version of the release that will contain the changes you made. So if you have version 1.0.8 of GeSHi running this will be the next version to be released, e.g. 1.0.8.1.

        Everything should remain the same.

        Also: I’m not sure about the copyright on a new language file. I’m not a lawyer, could someone contact me about whether the copyright for a new language file should be exclusivly the authors, or joint with me (if included in a GeSHi release)?

        4.3.2 The First Indices

        Here is an example from the php language file of the first indices:

        PHP code
        1
        23
        45
        6
        'LANG_NAME' => 'PHP',
        'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),'COMMENT_MULTI' => array('/*' => '*/'),
        'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,'QUOTEMARKS' => array("'", '"'),
        'ESCAPE_CHAR' => '\\',

        The first indices are the first few lines of a language file before the KEYWORDS index. These indices specify:

        • ‘LANG_NAME’: The name of the language. This name should be a human-readable version of the name (e.g. HTML 4 (transitional) instead of html4trans)
        • ‘COMMENT_SINGLE’: An array of single-line comments in your language, indexed by integers starting from 1. A single line comment is a comment that starts at the marker and goes until the end of the line. These comments may be any length > 0, and since they can be styled individually, can be used for other things than comments (for example the Java language file defines “import” as a single line comment). If you are making a language that uses a ’ (apostrophe) as a comment (or in the comment marker somewhere), use double quotes. e.g.: “’”
        • ‘COMMENT_MULTI’: Used to specify multiline comments, an array in the form ‘OPEN’ => ‘CLOSE’. Unfortunately, all of these comments you add here will be styled the same way (an area of improvement for GeSHi 1.2.X). These comment markers may be any length > 0.
        • ‘CASE_KEYWORDS’: Used to set whether the case of keywords should be changed automatically as they are found. For example, in an SQL or BASIC dialect you may want all keywords to be upper case. The accepted values for this are:
        • GESHI_CAPS_UPPER: Convert the case of all keywords to upper case.
        • GESHI_CAPS_LOWER: Convert the case of all keywords to lower case.
        • GESHI_CAPS_NO_CHANGE: Don’t change the case of any keyword.
        • ‘QUOTEMARKS’: Specifies the characters that mark the beginning and end of a string. This is another example where if your language includes the ’ string delimiter you should use double quotes around it.
        • ‘ESCAPE_CHAR’: Specifies the escape character used in all strings. If your language does not have an escape character then make this the empty string (''). This is not an array! If found, any character after an escape character and the escape character itself will be highlighted differently, and the character after the escape character cannot end a string.

        In some language files you might see here other indices too, but those are dealt with later on.

        4.3.3 Keywords

        Keywords will make up the bulk of a language file. In this part you add keywords for your language, including inbuilt functions, data types, predefined constants etc etc.

        Here’s a (shortened) example from the php language file:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        2223
        2425
        2627
        2829
        3031
        3233
        3435
        3637
        3839
        40
        'KEYWORDS' => array(
            1 => array(        'as', 'break', 'case', 'do', 'else', 'elseif', 'endif',
                'endswitch', 'endwhile', 'for', 'foreach', 'if', 'include',        'include_once', 'require', 'require_once', 'return',
                'switch', 'while'        ),
            2 => array(        '&lt;/script>', '&lt;?', '&lt;?php', '&lt;script language=',
                '?>', 'class', 'default', 'DEFAULT_INCLUDE_PATH', 'E_ALL',        'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_CORE_ERROR',
                'E_CORE_WARNING', 'E_ERROR', 'E_NOTICE', 'E_PARSE',        'E_USER_ERROR', 'E_USER_NOTICE', 'E_USER_WARNING',
                'E_WARNING', 'false', 'function', 'new', 'null',        'PEAR_EXTENSION_DIR', 'PEAR_INSTALL_DIR', 'PHP_BINDIR',
                'PHP_CONFIG_FILE_PATH', 'PHP_DATADIR', 'PHP_EXTENSION_DIR',        'PHP_LIBDIR', 'PHP_LOCALSTATEDIR', 'PHP_OS',
                'PHP_OUTPUT_HANDLER_CONT', 'PHP_OUTPUT_HANDLER_END',        'PHP_OUTPUT_HANDLER_START', 'PHP_SYSCONFDIR', 'PHP_VERSION',
                'true', 'var', '__CLASS__', '__FILE__', '__FUNCTION__',        '__LINE__', '__METHOD__'
                ),    3 => array(
                'xml_parser_create', 'xml_parser_create_ns',        'xml_parser_free', 'xml_parser_get_option',
                'xml_parser_set_option', 'xml_parse_into_struct',        'xml_set_character_data_handler', 'xml_set_default_handler',
                'xml_set_element_handler',        'xml_set_end_namespace_decl_handler',
                'xml_set_external_entity_ref_handler',        'xml_set_notation_decl_handler', 'xml_set_object',
                'xml_set_processing_instruction_handler',        'xml_set_start_namespace_decl_handler',
                'xml_set_unparsed_entity_decl_handler', 'yp_all', 'yp_cat',        'yp_errno', 'yp_err_string', 'yp_first',
                'yp_get_default_domain', 'yp_master', 'yp_match', 'yp_next',        'yp_order', 'zend_logo_guid', 'zend_version',
                'zlib_get_coding_type'        )
            ),

        You can see that the index ‘KEYWORDS’ refers to an array of arrays, indexed by positive integers. In each array, there are some keywords (in the actual php language file there is in fact many more keywords in the array indexed by 3). Here are some points to note about these keywords:

        • Indexed by positive integers: Use nothing else! I may change this in 1.2.X, but for the 1.0.X series, use positive integers only. Using strings here results in unnecessary overhead degrading performance when highlighting code with your language file!
        • Keywords sorted ascending: Keywords should be sorted in ascending order. This is mainly for readability. An issue with versions before 1.0.8 has been solved, so the reverse sorting order is no longer required and should thus be avoided. GeSHi itself sorts the keywords internally when building some of its caches, so the order doesn’t matter, but makes things easier to read and maintain.
        • Keywords are case sensitive (sometimes): If your language is case-sensitive, the correct casing of the keywords is defined as the case of the keywords in these keyword arrays. If you check the java language file you will see that everything is in exact casing. So if any of these keyword arrays are case sensitive, put the keywords in as their correct case! (note that which groups are case sensitive and which are not is configurable, see later on). If a keyword group is case insensitive, put the lowercase version of the keyword here OR in case documentation links require a special casing (other than all lowercase or all uppercase) the casing required for them use their casing.
        • Keywords must be in htmlentities() form: All keywords should be written as if they had been run through the php function htmlentities(). E.g, the keyword is &lt;foo&gt;, not <foo>
        • Don’t use keywords to highlight symbols: Just don’t!!! It doesn’t work, and there is seperate support for symbols since GeSHi 1.0.7.21.
        • Markup Languages are special cases: Check the html4strict language file for an example: You need to tweak the Parser control here to tell the surroundings of tagnames. In case of doubt, feel free to ask.

        4.3.4 Symbols and Case Sensitivity

        So you’ve put all the keywords for your language in? Now for a breather before we style them :). Symbols define what symbols your language uses. These are things like colons, brackets/braces, and other such general punctuation. No alphanumeric stuff belongs here, just the same as no symbols belong into the keywords section.

        As of GeSHi version 1.0.7.21 the symbols section can be used in two ways:

        Flat usage:
        This mode is the suggested way for existing language files and languages that only need few symbols where no further differentiation is needed or desired. You simply put all the characters in an array under symbols as shown in the first example below. All symbols in flat usage belong to symbol style group 0.
        Group usage:
        This is a slightly more enhanced way to provide GeSHi symbol information. To use group you create several subarrays each containing only a subset of the symbols to highlight. Every array will need to have an unique index thus you can assign the appropriate styles later.

        Here’s an example for flat symbol usage

        PHP code
        1
        23
        
        'SYMBOLS' => array(
          '(', ')', '[', ']', '{', '}', '!', '@', '|', '&', '+', '-', '*', '/', '%', '=', '<', '>'),

        which is not too different from the newly introduced group usage shown below:

        PHP code
        1
        23
        45
        6
        'SYMBOLS' => array(
          0 => array('(', ')', '[', ']', '{', '}'),  1 => array('!', '@', '|', '&'),
          2 => array('+', '-', '*', '/', '%'),  3 => array('=', '&lt;', '>')
        ),
        Note:

        Please note that versions before 1.0.7.21 will silently ignore this setting.

        Also note that GeSHi 1.0.7.21 itself had some bugs in Symbol highlighting that could cause heavily scrambled code output.

        The following case sensitivity group alludes to the keywords section: here you can set which keyword groups are case sensitive.

        In the ‘CASE_SENSITIVE’ group there’s a special key GESHI_COMMENTS which is used to set whether comments are case sensitive or not (for example, BASIC has the REM statement which while not being case sensitive is still alphanumeric, and as in the example given before about the Java language file using “import” as a single line comment, this can be useful sometimes. true if comments are case sensitive, false otherwise. All of the other indices correspond to indices in the 'KEYWORDS' section (see above).

        4.3.5 Styles for your Language File

        This is the fun part! Here you get to choose the colours, fonts, backgrounds and anything else you’d like for your language file.

        Here’s an example:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        2223
        2425
        2627
        2829
        3031
        3233
        3435
        3637
        3839
        
        'STYLES' => array(
            'KEYWORDS' => array(        1 => 'color: #b1b100;',
                2 => 'color: #000000; font-weight: bold;',        3 => 'color: #000066;'
                ),    'COMMENTS' => array(
                1 => 'color: #808080; font-style: italic;',        2 => 'color: #808080; font-style: italic;',
                'MULTI' => 'color: #808080; font-style: italic;'        ),
            'ESCAPE_CHAR' => array(        0 => 'color: #000099; font-weight: bold;'
                ),    'BRACKETS' => array(
                0 => 'color: #66cc66;'        ),
            'STRINGS' => array(        0 => 'color: #ff0000;'
                ),    'NUMBERS' => array(
                0 => 'color: #cc66cc;'        ),
            'METHODS' => array(        0 => 'color: #006600;'
                ),    'SYMBOLS' => array(
                0 => 'color: #66cc66;'        ),
            'REGEXPS' => array(        0 => 'color: #0000ff;'
                ),    'SCRIPT' => array(
                0 => '',        1 => '',
                2 => '',        3 => ''
                )    ),

        Note that all style rules should end with a semi-colon! This is important: GeSHi may add extra rules to the rules you specify (and will do so if a user tries to change your styles on the fly), so the last semi-colon in any stylesheet rule is important!

        All strings here should contain valid stylesheet declarations (it’s also fine to have the empty string).

        • ‘KEYWORDS’: This is an array, from keyword index to style. The index you use is the index you used in the keywords section to specify the keywords belonging to that group.
        • ‘COMMENTS’: This is an array, from single-line comment index to style for that index. The index ‘MULTI’ is used for multiline comments (and cannot be an array). COMMENT_REGEXP use the style given for their key as if they were single-line comments.
        • ‘ESCAPE_CHAR’, ‘BRACKETS’ and ‘METHODS’: These are arrays with only one index: 0. You cannot add other indices to these arrays.
        • ‘STRINGS’: This defines the various styles for the Quotemarks you defined earlier. If you don’t use multiple styles for strings there’s only one index: 0. Please also add this index in case no strings are present.
        • ‘NUMBERS’: This sets the styles used to highlight numbers. The format used here depends on the format used to set the formats of numbers to highlight. If you just used an integer (bitmask) for numbers, you have to either specify one key with the respective constant, and\or include a key 0 as a default style. If you used an array for the number markup, copy the keys used there and assign the styles accordingly.
        • ‘SYMBOLS’: This provides one key for each symbol group you defined above. If you used the flat usage make sure you include a key for symbols group 0.
        • ‘REGEXPS’: This is an array with a style for each matching regex. Also, since 1.0.7.21, you can specify the name of a function to be called, that will be given the text matched by the regex, each time a match is found. Note that my testing found that create_function would not work with this due to a PHP bug, so you have to put the function definition at the top of the language file. Be sure to prefix the function name with geshi_[languagename]_ as to not conflict with other functions!
        • ‘SCRIPT’: For languages that use script delimiters, this is where you can style each block of script. For example, HTML and XML have blocks that begin with < and end with > (i.e. tags) and blocks that begin with & and end with ; (i.e. character entities), and you can set a style to apply to each whole block. You specify the delimiters for the blocks below. Note that many languages will not need this feature.

        4.3.6 URLs for Functions

        This section lets you specify a url to visit for each keyword group. Useful for pointing functions at their online manual entries.

        Here is an example:

        PHP code
        1
        23
        45
        6
        'URLS' => array(
            1 => '',    2 => '',
            3 => 'http://www.php.net/{FNAME}',    4 => ''
            ),

        The indices of this array correspond to the keyword groups you specified in the keywords section. The string {FNAME} marks where the name of the function is substituted in. So for the example above, if the keyword being highlighted is “echo”, then the keyword will be a URL pointing to http://www.php.net/echo. Because some languages (Java!) don’t keep a uniform URL for functions/classes, you may have trouble in creating a URL for that language (though look in the java language file for a novel solution to it’s problem)

        4.3.7 Number Highlighting Support

        If your language supports different formats of numbers (e.g. integers and float representations) and you want GeSHi to handle them differently you can select from a set of predefined formats.

        PHP code
        1
        23
        4
            'NUMBERS' =>
                GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |        GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
                GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,

        All the formats you want GeSHi to recognize are selected via a bitmask that is built by bitwise OR-ing the format constants. When styling you use these constants to assign the proper styles. A style not assigned will automatically fallback to style group 0.

        Note:

        For a complete list of formats supported by GeSHi have a look into the sources of geshi.php.

        If you want to define your own formats for numbers or when you want to group the style for two or more formats you can use the array syntax.

        PHP code
        1
        23
        45
        67
        
            'NUMBERS' => array(
                1 => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE,        2 => GESHI_NUMBER_BIN_PREFIX_0B,
                3 => GESHI_NUMBER_OCT_PREFIX,        4 => GESHI_NUMBER_HEX_PREFIX,
                5 => GESHI_NUMBER_FLT_NONSCI | GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO        ),

        This creates 5 style groups 1..5 that will highlight each of the formats specified for each group. Styling of these groups doesn’t use the constants but uses the indices you just defined.

        Instead of using those predefined constants you also can assign a PCRE that matches a number when using this advanced format.

        Note:

        The extended format hasn’t been exhaustively been tested. So beware of bugs there.

        4.3.8 Object Orientation Support

        Now we’re reaching the most little-used section of a language file, which includes such goodies as object orientation support and context support. GeSHi can highlight methods and data fields of objects easily, all you need to do is to tell it to do so and what the “splitter” is between object/method etc.

        Here’s an example:

        PHP code
        1
        2
        'OOLANG' => true,
        'OBJECT_SPLITTER' => '-&gt;',

        If your language has object orientation, the value of 'OOLANG' is true, otherwise it is false. If it is object orientated, in the 'OBJECT_SPLITTER' value you put the htmlentities() version of the “splitter” between objects and methods/fields. If it is not, then make this the empty string.

        4.3.9 Using Regular Expressions

        Regular expressions are a good way to catch any other lexic that fits certain rules but can’t be listed as a keyword. A good example is variables in PHP: variables always start with either one or two “$” signs, then alphanumeric characters (a simplification). This is easy to catch with regular expressions.

        And new to version 1.0.2, there is an advanced way of using regular expressions to catch certain things but highlight only part of those things. This is particularly useful for languages like XML.

        Caution:

        Regular expressions use the PCRE syntax (perl-style), not the ereg() style!

        Here is an example (this time the PHP file merged with the XML file):

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        
        0 => array(
            GESHI_SEARCH => '(((xml:)?[a-z\-]+))(=)',    GESHI_REPLACE => '\\1',
            GESHI_MODIFIERS => '',    GESHI_BEFORE => '',
            GESHI_AFTER => '\\4'    ),
        1 => array(    GESHI_SEARCH => '(>/?[a-z0-9]*(>)?)',
            GESHI_REPLACE => '\\1',    GESHI_MODIFIERS => '',
            GESHI_BEFORE => '',    GESHI_AFTER => ''
            ),2 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*"

        As you can see there are two formats. One is the “simple” format used in GeSHi < 1.0.2, and the other is a more advanced syntax. Firstly, the simple syntax:

        • May be in double quotes: To make it easier for those who always place their regular expressions in double quotes, you may place any regular expression here in double quotes if you wish.
        • Don’t use curly brackets where possible: If you want to use curly brackets (()) then by all means give it a try, but I’m not sure whether under some circumstances GeSHi may throw a wobbly. You have been warned! If you want to use brackets, it would be better to use the advanced syntax.
        • Don’t use the “everything” regex: (That’s the .*? regex). Use advanced syntax instead.

        And now for advanced syntax, which gives you much more control over exactly what is highlighted:

        • GESHI_SEARCH: This element specifies the regular expression to search for. If you plan to capture the output, use brackets (()). See how in the first example above, most of the regular expression is in one set of brackets (with the equals sign in other brackets). You should make sure that the part of the regular expression that is supposed to match what is highlighted is in brackets.
        • GESHI_REPLACE: This is what the stuff matched by the regular expression will be replaced with. If you’ve grouped the stuff you want highlighted into brackets in the GESHI_SEARCH element, then you can use \\number to match that group, where number is a number corresponding to how many open brackets are between the open bracket of the group you want highlighted and the start of the GESHI_SEARCH string + 1. This may sound confusing, and it probably is, but if you’re familiar with how PHP’s regular expressions work you should understand. In the example above, the opening bracket for the stuff we want highlighted is the very first bracket in the string, so the number of brackets before that bracket and the start of the string is 0. So we add 1 and get our replacement string of \\1 (whew!).

        If you didn’t understand a word of that, make sure that there are brackets around the string in GESHI_SEARCH and use \\1 for GESHI_REPLACE ;)

        • GESHI_MODIFIERS: Specify modifiers for your regular expression. If your regular expression includes the everything matcher (.*?), then your modifiers should include “s” and “i” (e.g. use ‘si’ for this).
        • GESHI_BEFORE:Specifies a bracket group that should appear before the highlighted match (this bracketed group will not be highlighted). Use this if you had to match what you wanted by matching part of your regexp string to something before what you wanted to highlight, and you don’t want that part to disappear in the highlighted result.
        • GESHI_AFTER:Specifies a bracket group that should appear after the highlighted match (this bracketed group will not be highlighted). Use this if you had to match what you wanted by matching part of your regexp string to something after what you wanted to highlight, and you don’t want that part to disappear in the highlighted result.

        Is that totally confusing? Here’s the test for if you’re an android or not: If you found that perfectly understandable then you’re an android ;). Here’s a better example:

        Let’s say that I’m making a language, and variables in this language always start with a dollar sign ($), are always written in lowercase letters and always end with an ampersand (&). eg:

        $foo& = 'bar'

        I want to highlight only the text between the $ and the &. How do I do that? With simple regular expressions I can’t, but with advanced, it’s relatively easy:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        14
        1 => array(
            // search for a dollar sign, then one or more of the characters a-z, then an ampersand    GESHI_SEARCH => '(\$)([a-z]+)(&)',
            // we wanna highlight the characters, which are in the second bracketed group    GESHI_REPLACE => '\\2',
            // no modifiers, since we're not matching the "anything" regex    GESHI_MODIFIERS => '',
            // before the highlighted characters should be the first    // bracketed group (always a dollar sign in this example)
            GESHI_BEFORE => '\\1',    // after the highlighted characters should be the third
            // bracketed group (always an ampersand in this example)    GESHI_AFTER => '\\3'
            ),

        So if someone tried to highlight using my language, all cases of $foo& would turn into:

        $<span style="color: blue;">foo</span><span style="color: green;">&amp;</span>

        (which would of course be viewed in a browser to get something like $foo&)

        4.3.10 Contextual Highlighting and Strict Mode

        For languages like HTML, it’s good if we can highlight a tag (like <a> for example). But how do we stop every single “a” in the source getting highlighted? What about for attributes? If I’ve got the word “colspan” in my text I don’t want that highlighted! So how do you tell GeSHi not to highlight in that case? You do it with “Strict Blocks”.

        Here is an example:

        PHP code
        1
        23
        45
        67
        89
        1011
        1213
        1415
        1617
        1819
        2021
        2223
        2425
        2627
        
        <? /* ... */
        'STRICT_MODE_APPLIES' => GESHI_MAYBE,'SCRIPT_DELIMITERS' => array(
            0 => array(        '<?php' => '?>'
                ),    1 => array(
                '<?' => '?>'        ),
            2 => array(        '<%' => '%>'
                ),    3 => array(
                '<script language="php">' => '</script>'        )
            4 => "/(<\?(?:php)?)(?:'(?:[^'\\\\]|\\\\.)*?'|\"(?:[^\"\\\\]|\\\\.)*?\"|\/\*(?!\*\/).*?\*\/|.)*?(\?>|\Z)/sm",    5 => "/(<%)(?:'(?:[^'\\\\]|\\\\.)*?'|\"(?:[^\"\\\\]|\\\\.)*?\"|\/\*(?!\*\/).*?\*\/|.)*?(%>|\Z)/sm"
            ),'HIGHLIGHT_STRICT_BLOCK' => array(
            0 => true,    1 => true,
            2 => true,    3 => true,
            4 => true,    5 => true
            )/* ... */ ?>

        What is strict mode? Strict mode says that highlighting only occurs inside the blocks you specify. You can see from the example above that highlighting will only occur if the source is inside <?php ... ?> (though note the GESHI_MAYBE!). Here are some points about strict highlighting:

        • ‘STRICT_MODE_APPLIES’: This takes three values (all constants):
          • GESHI_ALWAYS: Strict mode always applies for all of the blocks you specify. Users of your language file cannot turn strict mode off. This should be used for markup languages.
          • GESHI_NEVER: Strict mode is never used. Users of your language file cannot turn strict mode on. Use this value if there is no such thing as a block of code that would not be highlighted in your language (most languages, like C, Java etc. use this because anything in a C file should be highlighted).
          • GESHI_MAYBE: Strict mode *sometimes* applies. It defaults to “off”. Users can turn strict mode on if they please. If strict mode is off then everything in the source will be highlighted, even things outside the strict block markers. If strict mode is on then nothing outside strict block markers will be highlighted.
        • ‘SCRIPT_DELIMITERS’: This is an array of script delimiters, in the format of the above. The indices are use in the ‘SCRIPT’ part of the styles section for highlighting everything in a strict block in a certain way. For example, you could set up your language file to make the background yellow of any code inside a strict block this way. The delimiters are in the form 'OPEN' => 'CLOSE'. Delimiters can be of any length > 0. Delimiters are not formatted as if they were run through htmlentities()!
        • ‘HIGHLIGHT_STRICT_BLOCK’: specifies whether any highlighting should go on inside each block. Most of the time this should be true, but for example, in the XML language file highlighting is turned off for blocks beginning with <!DOCTYPE and ending with >. However, you can still style the overall block using the method described above, and the XML language file does just that.
        Note:

        The delimiters should be in reverse alphabetical order. Note that in the above example, <?php comes before <?.

        Since GeSHi 1.0.8 instead of specifying an array with starter and ender you may also provide a regular expression that matches the full block you wish to highlight. If the regular expression match starts at the same position as a previous array declaration the Regexp match is taken. This is to allow for a fall-back when a preg_match doesn’t quite work as expected so you still get reasonably well results.

        If you didn’t get this, you might want to look into the PHP or HTML language files as this feature is used there to fix some issues that have been there for about 3 years.

        Caution:

        For PHP versions <4.3.3 Strict Block Regexps are completely ignored due to problems in those version that would cause loads of warning messages otherwise.

        4.3.11 Special Parser Settings (Experimental)

        Sometimes it is necessary for a language to render correctly to tweak some of the assumptions GeSHi usually makes to match the behaviour your language expects. To achieve this there is an experimental section called 'PARSER_CONTROL' which is optional and should be used only if necessary. With the help of this section some internal parameters of GeSHi can be set which are not overrideable by the API and thus their use should be limited as much as possible.

        The syntax of the PARSER_CONTROL basically resembles an array structure simular to the one found in the rest of the language file. All subsections of the PARSER_CONTROL are optional. If a given setting isn’t present the usual default values of GeSHi are used. No validation of settings is performed for these settings. Also note that unknown settings are silently ignored.

        Caution:

        All PARSER_CONTROL settings are experimental and subject to change. So if you need a special setting in a public language file you should consider requesting it upstream. This is also the reason why documentation on these settings will only cover broad usage information as the underlying implementation might change without further notice.

        One of the most common reasons why you might want to use the PARSER_CONTROL settings is to tweak what characters are allowed to surround a keyword. Usually GeSHi checks for a fixed set of characters like brackets and common symbols that denote the word boundary for a keyword. If this set conflicts with your language (e.g. - is allowed inside a keyword) or you want to limit the usage of a keyword to certain areas (e.g. for HTML tag names only match after <) you can change those conditions here.

        Keyword boundary rules can either be set globally (directly within the PARSER_CONTROL’s KEYWORDS section or on a per-group basis. E.g. the following sample from the HTML language file sets different settings for keyword matching only for Keyword Group 2 and leaves the other groups alone.

        PHP code
        1
        23
        45
        67
        8
            'PARSER_CONTROL' => array(
                'KEYWORDS' => array(            2 => array(
                        'DISALLOWED_BEFORE' => '(?<=&lt;|&lt;\/)',                'DISALLOWED_AFTER' => '(?=\s|\/|&gt;)',
                    )        )
            )
        Note:

        The name 'DISALLOWED_BEFORE' and 'DISALLOWED_AFTER' might sound confusing at first, since they don’t define what to prevent, but what to match in order to find a keyword. The reason for this strange naming is based in the original implementation of this feature when Nigel implemented this in the old parser statically. When this implementation was brought out via the PARSER_CONTROL settings the original naming wasn’t altered since at that time this really was a blacklist of characters. Later on this implementation was changed from a blacklist of characters to a part of a PCRE regexp, but leaving the name. The naming might be subject to change though.

        Another option you can change since GeSHi 1.0.8.3 is whether to treat spaces within keywords as literals (only a single space as given) or if the space should match any whitespace at that location. The following code will enable this behaviour for the whole keyword set. As said above you can choose to enable this for single keyword groups only though.

        PHP code
        1
        23
        45
        
            'PARSER_CONTROL' => array(
                'KEYWORDS' => array(            'SPACE_AS_WHITESPACE' => true
                )    ),

        Another option of interest might be disabling certain features for a given language. This might come in handy if the language file you are working on doesn’t support a given function or highlighting certain aspects won’t work properly or would interfere with custom implementations using regular expressions.

        PHP code
        1
        23
        45
        67
        89
        1011
        12
            'PARSER_CONTROL' => array(
                'ENABLE_FLAGS' => array(            'ALL' => GESHI_NEVER,
                    'NUMBERS' => GESHI_NEVER,            'METHODS' => GESHI_NEVER,
                    'SCRIPT' => GESHI_NEVER,            'SYMBOLS' => GESHI_NEVER,
                    'ESCAPE_CHAR' => GESHI_NEVER,            'BRACKETS' => GESHI_NEVER,
                    'STRINGS' => GESHI_NEVER,        )
            )

        Inside the 'ENABLE_FLAGS' section follows an array of 'name'=>value pairs. Valid names are the sections below the 'STYLES' section (well, not exactly, but you can look there for what the features are called inside GeSHi). Valid values are the GeSHi constants GESHI_NEVER (don’t process this feature), GESHI_ALWAYS (always process this feature, ignore the user) and GESHI_MAYBE (listen to the user if he want’s this highlighted). The value GESHI_MAYBE is the default one and thus needs not to be set explicitely.

        Another setting available through the PARSER_CONTROL settings is the possibility to limit the allowed characters before an single line comment.

        PHP code
        1
        23
        45
        
            'PARSER_CONTROL' => array(
                'COMMENTS' => array(            'DISALLOWED_BEFORE' => '$'
                )    )

        With the current implementation the DISALLOWED_BEFORE COMMENT-specific setting is a list of characters. But this is subject to change.

        Note:

        There is no 'DISALLOWED_AFTER' setting with the 'COMMENTS'-PARSER_CONTROL.

        Another PARSER_CONTROL setting for the environment around certain syntactic constructs refers to the handling of object-oriented languages.

        PHP code
        1
        23
        45
        67
        
            'PARSER_CONTROL' => array(
                'OOLANG' => array(            'MATCH_BEFORE' => '',
                    'MATCH_AFTER' => '[a-zA-Z_][a-zA-Z0-9_]*',            'MATCH_SPACES' => '[\s]*'
                )    )
        Caution:

        Please note that the settings discussed in this section are experimental and might be changed, removed or altered in their meaning at any time.

        4.3.12 Tidying Up

        All language files should end with:

        PHP code
        1
        23
        
        );
         ?>

        That is the string content "\n);\n?>\n".

        Caution:

        Make sure that there is EXACTLY one linebreak character at the end. If you accidentially include more you might end up with messages like “Headers already sent”.

        4.4 Validating your language file

        Since GeSHi 1.0.8 there is a new script langcheck.php in the contrib directory that scans all language files it finds in the geshi/ subdirectory of the GeSHi installation for mistakes.

        Please make sure that your language does not contain any mistakes that this script shows you when sending in your language file for inclusion into the official release as this saves work for us when including your file. Also you can be sure your language file will work as expected once your language file validates correctly.

        Please note that not all of the language files shipped with GeSHi are fully valid yet, but we’re working on it and are happy about every patch we get!

        5 Method/Constant Reference

        I’m afraid I have been lying for a little while about this now! Since 1.0.7 I have been including a phpdoc API for the sourcecode in the api directory, but have forgot to update the documentation! However, it is available, and may assist you in coding, especially for plugin coders.


        That’s all, folks!

        I’ve improved the documentation greatly from version 1.0.1, but there may still be problems with it, or it may still be confusing for you. Or perhaps I was just plain wrong about one point! If so, contact me and I’ll do my best to sort it out.

        In case you were wondering, I’ve finished development of the 1.0.X thread of GeSHi. The only releases I’ll make in this thread will be of the bug-fix/add language files type. In particular, version 1.0.2 was a “concept” release - testing how far I could take the highlighting idea (as well as ideas from others).

        I’m planning a code rewrite for 1.2.X, which will be based on a new engine - a “psuedo-tokenizer” engine. Hopefully it will massively reduce the server load and time taken (by almost eliminating regexps), while providing superior highlighting. But fear not! The interface and method names should all remain the same ^_^ (though I can’t say the same for language files!)

        And finally, a couple of people have been asking me: how did you generate that documentation? The amazing answer is: my brain. And yes, it took a long time, and I don’t recommend doing it this way. And yes, you can borrow the styles if you like, though flick me an e-mail if you do.

        Anyway, enough blather from me. Get GeSHi working for you already! :D

        Authors:
        © 2004 - 2007 Nigel McNie
        © 2007 - 2012 Benny Baumann
        © 2008 - 2009 Milian Wolff
        GeSHi Website:
        http://qbnz.com/highlighter

        1. The PRE header (see The Code Container) is not valid HTML, you might want to use one of the other header types instead. 

        2. Support is granted for PHP 4.3.0 and above, but especially 4.3.x cannot be guaranteed to work due to a lack of test systems. If you are forced to use such old PHP versions complain at your hoster or contact us if you find compatibility issues so we can try to resolve them. It’s only PHP 4.4.X and above that is verified to work. 

        3. I am no longer working on this MOD, however if someone else wants to they can contact me for more information. 

        4. Available as plugin only. In addition, some of the other entries mentioned here may only have GeSHi available as a plugin. 

        geshi/docs/TODO0000664000175000017500000000624211702144555012517 0ustar benbebenbe TODO - List of things to do as of 2005/01/29 Suggestions for things to add are welcome, if you have a feature request you can either post it to the forums: http://qbnz.com/highlighter/forum.php Or to the feature request tracker: http://sourceforge.net/tracker/?group_id=114997&atid=670234 TODO for version 1.0.8.x - Rework the load_from_file method and the one for getting a file extension, as documented in the source. - use analogous vars to $next_comment_regexp_pos for more GeSHi structures, should reduce number of functions called and hence improve performance - make a set of default colours which can be used in the language files. this way we can give languages a uniform look and maybe even add "themes" - Get better coverage in our coderepo - README / INSTALL / ... file for phpdoc integration => take geshi-doc.*? - rework HARDQUOTE + styles, currently this is a bit of a mess imo (milian) - Allow per-keywordgroup AutoCaps/NoCaps - Complete API to support latest features set_number_style ($key missing) set_string_style ($key missing) set_case_keywords (support for per_keywordgroup AutoCaps) TODO for version 1.2.0 - Rewrite engine to use remove/replace method (will hopefully almost eliminate the need for regular expressions except for numbers/methods etc). This will also assist for making different output formats [DONE] - "Intelligent" output format - eg if the user doesn't want lines to wrap and wants line numbers don't use
          , use the method instead. (This saves on output) - Clear split between "public" and "private" methods [DONE] - PHP5 version - "Themes" for styles - basically pre-made stylesheets that can be used to highlight code of any language in a similar manner [DONE] - "Dialects" for languages - eg php4, php5. One master language definition file, and a bunch of "specialised" dialect files for each language Ability to specify a "specialised" dialect as default? [DONE] - Look at load/memory usage and try to reduce - Make tabs into tab-stops like a normal editor [DONE] - Ability to add more than one multiline comment or string [DONE] - Ability to specify that strings cannot be multiline [DONE] - Create a "wrapper" class for ultra-easy use - Code written in a style that conforms to a phpdoc utility [DONE, PEAR] - Dig functions/methods out of code and where they are called make an internal link back to their definition TODO for version 2.0.0 - Support for multiple output formats (XHTML, XML, PDF, RTF etc) [DONE IN 1.2] - Support for auto-indent/code "beautifing" - Option for "Lite" highlighting - aims for speed and low server load - "Intelligent" highlighting inside comments, and ability to highlight source in multiple languages at once (eg PHP+HTML) [DONE IN 1.2] - Perhaps a script on the GeSHi site that would map urls to appropriate definitions and relocate the user? (eg, java documentation is structured in such a way that urls are not able to be used with GeSHi. Instead the URL could become: http://qbnz.com/highlighter/redirect.php?lang=java&kw=KeyWord and that script would redirect to the correct location. [BETTER FIX IN 1.2] $Id: TODO 1725 2008-08-08 11:56:36Z benbe $ geshi/docs/CHANGES0000664000175000017500000014351212014173560013017 0ustar benbebenbe CHANGES - Changelog for GeSHi (geshi.php only) Changes to the code are listed under the version they occured in, with who suggested it by each one (if there's nobody listed as suggesting it I dreamed it up :)). Users who suggested an idea often also provided the code that was used as a basis for the changes - thanks to all who suggested these ideas and gave me the code to show me how! Language files listed under each version were made by the author beside them, and then modified by me for consistency/bug fixing. Please send any bug reports to BenBE@omorphia.de, or use the bug report tracker at sourceforge (http://sourceforge.net/tracker/?group_id=114997&atid=670231) Version 1.0.8.11 - Added language files * ARM (Marat Dukhan) * Asymptote (Manuel Yguel) * DCL (Petr Hendl) * DCPU-16 (Benny Baumann) * FreeSWITCH (James Rose) * Haxe (Andy Li, John Liao) * LDIF (Bruno Harbulot) * Nagios (Albéric de Pertat) * Octave (Carnë Draug, Juan Pablo Carbajal) * ParaSail (sttaft) * PARI/GP (Charles R Greathouse IV) * Python for S60 (Sohan Basak) * Rexx (Jon Wolfers) * SPARK (Phil Thornley) * SPARQL (Karima Rafes) * StoneScript (Archimmersion) * UPC (Viraj Sinha) * Urbi (Alexandre Morgand) * Vedit (Pauli Lindgren) - Updated aliasd.php contrib script (SF#3073275, count) - Fallback to "text" when extension is unknown (SF#3514714, murkymark, BenBE) - detect extensions case-insensitive (SF#3514714, murkymark, BenBE) - Fixed two bugs within contrib scripts included with each release (BenBE) - Improvements to language files (BenBE) * Symbol and char literal handling for Scala (Paul Butcher, BenBE) * Multiline comments of F# weren't actually multiline (BenBE) * Support for IPv6 addresses in RFC822 messages (BenBE) * Properly handle retrieving names from language files (MikeSee, BenBE) * Changes for improved highlighting of signle line comments and end-of-code indicators * Missing keywords and improved highlighting of comments * Problem with DOS/Batch highlighting breaking out at variables (BenBE) * Addition of MMX/SSE/x86-64 registers and MMX/SSE instructions for ASM language file(up to 4.2) (Dennis Yurichev) * Further improvements to ASM language file to introduce all latest already documented x86 architecture instructions (Marat Dukhan) * Fixed links for R/S+ language file (Fernando H.F.P. da Rosa) * Fix a problem with Delphi/Pascal regarding hex numbers/chars (BenBE) * Fixed a typo and missing keywords for HTML4 and HTML5 (SF#3365452, BenBE) * Fixed a typo in Modula-3 language file (SF#3358216, BenBE) * Added missing keywords for MySQL (SF#3290998, ct-bob, BenBE) * Added missing keywords for Pascal (SF#3176749, BenBE) * Properly detect the keyword that is to be linked (BenBE) * Updated VHDL language file (Kevin Thibedeau) * Added missing keyword for Verilog (SF#3557903, BenBE) * Fixed typo in Haskell causing a keyword to be missing (SF#3529439, BenBE) * Fixed Long String handling for Lua (SF#3541510, Tim Starling) * Updated JavaDoc links for Java language files (SF#3538552, jeneag, BenBE) * CSS keywords incorrectly highlighted as part of identifiers (SF#3554101, BenBE) * CSS3 keywords missing from highlighting (SF#3525084, vlaKoff, BenBE) * Make variable handling compatible to PHP (SF#3489142, BenBE) * Fixed obsolete MySQL documentation links (SF#3441642, BenBE) * Add mising keywords for T-SQL (SF#3435026, BenBE) * Fix discarded text when highlighting TypoScript (SF#3160238, BenBE) Version 1.0.8.10 - Added language files * BASCOM AVR (Michal Goralczyk) * C: Loadrunner dialect (Stuart Moncrieff) * CoffeeScript (Trevor Burnham) * EPC (Thorsten Muehlfelder) * Euphoria (Nicholas Koceja) * Falcon (billykater) * HTML5 (Robert Lidberg) * LLVM (Azriel Fasten) * PL/I (Robert Prins) * ProFTPd (Benny Baumann) * PyCon (Benny Baumann) * UnrealScript (pospi) * YAML (Josh Ventura) - Small bugfix in LangCheck when looking for language files - Added '-' to list of RX chars that require explicit escaping (SF#3056454, BenBE) - Minor changes to boundary checks (SF#3077256, BenBE) - Improvements to language files (BenBE) * Major rework of the ALGOL68 language file (Neville Dempsey) * LangCheck warnings from GO language file (BenBE) * Some additions to the Objeck language file (Randy Hollines) * Properly highlight infinity as numbers for J (Ric Sherlock) * Improved GDB Backtrace language file (Milian Wolff) * Updated Liberty BASIC language file (Chris Iverson) * Fixed a small issue with detection of division vs. regular expressions for ActionScript 3 and JavaScript (Kevin Day) * Fixed Escape handling for CSS (SF#3080513, yecril71pl, BenBE) * Additional comment styles for SAS (SF#3024708, ahnolds, BenBE) * Updated keyword list for TeraTerm (Boris Maisuradze) * Incorrect handling of /**/ comments in Javascript (BenBE) * Support for mod_upload_progress in Apache Config files (BenBE) * Prefix operator handling in F# was broken (BenBE) * CDATA handling for html4strict (BenBE) * Common subcommands for Apache, APT, CVS, Git, SVN and YUM for Bash (BenBE) * Limited support for prompt detection in single line Bash snippets (BenBE) * Added functions of the C standard library (BenBE) * Rework of Lua to use GeSHi's features better (BenBE) * Language file improvements for Python (Zbyszek Szmek) * Fixed documentation links for Groovy (SF#3152356, lifeisfoo) * Fixed incorrect highlighting of certain keywords in Erlang (SF#3138853, BenBE) * Escape chars in C++/C++Qt handled incorrectly (SF#3122706, C. Pötsch) * Empty parameters of LaTeX commands tipped the highlighting off (SF#3098329, James Oldfield, BenBE) * Additional Keywords and minor tweaks to Logtalk (Paulo Moura) Version 1.0.8.9 - Added language files * Algol68 (Neville Dempsey) * E (Kevin Reid) * FormulaOne (Juro Bystricky) * Go (Markus Jarderot) * Liberty BASIC (Chris Iverson) * MOS 6502/6510 Assemblers (Warren Willmey) * Motorola 68k assembler (Warren Willmey) * Objeck Programming Language (Randy Hollines) * ZXBasic (Jose Rodriguez) - Added support for $-prefixed hex numbers and @-prefixed octal numbers - Added Parser Control for languages to tell when numbers are present inside of non-string parts - Introduced querying supported/known languages directly - Introduced querying full language names without loading the language file - Improvements to language files (BenBE) * Added loads of keywords for generic SQL highlighting (Jürgen Thomas) Version 1.0.8.8 - Added language files * ChaiScript (Jason Turner & Jonathan Turner) * Genie (Nicolas Joseph) * GwBasic (José Gabriel Moya Yangüela) * HicEst (Georg Petrich) * Icon (Matt Oates) * MagikSF (Sjoerd van Leent) * Modula 2 (Benjamin Kowarsch) * Oz (Wolfgang Meyer) * PCRE (BenBE) * PostgreSQL (Christophe Chauvet) * q/kdb+ (Ian Roddis) * RPM Specification Files (Paul Grinberg) * Unicon (Matt Oates) * Vala (Nicolas Joseph) * XBasic (José Gabriel Moya Yangüela) - Improvements to language files (BenBE) * Major reworks and improvements to OCaml language file (BenBE) * Removed duplicate entries from keyword groups of VIM language file (Segaja) * Properly protect Regexps against GeSHi Black Magic in Matlab (BenBE) * Added support for Block Comments in PowerShell (BenBE) * Added some keywords for VB; split into multiple groups (leejkennedy, BenBE) * Basic Heredoc Support for Ruby (BenBE) Version 1.0.8.7 - Added language files * Autoconf (Mihai Vasilian) * ECMAScript (Michel Mariani) * J (Ric Sherlock) * OpenBSD Packet Filter (David Berard) * Oxygene / Delphi Prism (Carlo Kok) - Minor change in INT_BASIC number regexp to support '..' range operator as to be found in most Pascal-like languages (BenBE) - Fixed an issue with Hardquotes for empty strings (like '' in Delphi) (BenBE) - Introduced a fix for improved performance when matching numbers (BenBE) - Improvements to language files (BenBE) * Fixed broken links in Prolog language file (BenBE) * Fixed keywords in generics expressions in Java5 (BenBE) * Added support for import static in Java5 (BenBE) * Added Standard Integer Types for C and c++ (BenBE) * Fixed some regexp issues in Erlang (BenBE) * Added some missing keywords for Clojure (BenBE) * Added some missing keywords for Lisp (BenBE) * Fixed a problem with variable names in Prolog (BenBE) * Some color changes for AutoIt (BenBE) * Added support for basic include directive processing for AutoIt (BenBE) * Added support for ::-style labels as comments (SF#2947393, BenBE) * Removed backslash as Escape Char in T-SQL (SF#2939199, Bruno Braga) * Added Nested Comments Support for Haskell (SF#2922317, BenBE) * Fixed Comments for VIM, added some keywords, proposed porting of Regular Expression markup from Perl (SF#2818047, psycojoker, BenBE) * Fixed warnings for Language Check of Tcl (BenBE) Version 1.0.8.6 - Added language files * Clojure (Jess Johnson) * Cuesheet (Benny Baumann) * F# (Julien Ortin) * GAMBAS (Jesus Guardon) * Logtalk (Paulo Moura) * MapBasic (Tomasz Berus) * NewLisp (cormullion) * Perl 6 (Kodi Arfer) * Pike (Rick E.) * SystemVerilog (Sean O'Boyle) - Reworked parts of the number support (BenBE) - Improvements to language files (BenBE) * Fixed broken links in R/S+ language file (BenBE) * Fixed an issue with if= argument for dd command (BenBE) * T-SQL should use GESHI_CAPS_NO_CHANGE for keywords (BenBE) * Fixed missed shorthand arg references in Bash (BenBE) * Fixed first line not getting highlighted in diff language (BenBE) * Added some keywords for csharp (RC) Version 1.0.8.5 - Added language files * AutoHotkey (Naveen Garg) * Awk (George Pollard) * GADV 4CS (Jason Curl) * jQuery (Rob Loach) * PowerBuilder (Doug Porter) * PureBasic (Gustavo Julio Fiorenza) * R / S+ (Ron Fredericks, Benilton Carvalho) - Fixed legitimate numbers sometimes missing from highlighting (BenBE) - Fixed a problem with URLs allowing to break highlighting (BenBE) - Allowed for String and Number Styles to be set by the API (BenBE) - Produce valid CSS when languages start with underscore (BenBE) - Duplicate newlines with PRE_TABLE-Header but w/o linenumbers (SF#2838958, BenBE) - Improvements to language files (BenBE) * Fixed case-insensitively duplicate keywords (BenBE) * DCS language file contained HARDQUOTE section but no hardquotes (BenBE) * Some additional headers for Email\mbox highlighting (BenBE) * Added some more Keywords for robots.txt highlighting (BenBE) * Added Git commands for bash, ifup/ifdown (BenBE) * Added support for C# and VB.net delegates (SF#2832253, BenBE) * Added support for line numbers, file handles and hex\octal numbers for QBasic (BenBE) Version 1.0.8.4 - Added language files * BibTeX (Quinn Taylor) * CMake (Daniel Nelson) * Erlang (Benny Baumann, Dan Forest-Barbier, Uwe Dauernheim) * FO (abas-ERP) (Tan-Vinh Nguyen) * Property Files (Edy Hinzen) * Whois (RPSL format) entries (Benny Baumann) - Changed INT_BASIC number format to allow numbers followed . at EOL (BenBE) - Higher prority for keywords over regexps (BenBE) - Added missing set_script_style API function (BenBE) - Fixed missing check for comment_regexp preference in HardQuotes (BenBE) - Fixed a problem with Strict Block Detection if the Strict Block Regexp requires matching groups for itself (BenBE) - Improvements to language files (BenBE) * Added PCRE regexp support for Action script (SF#2655644, BenBE) * Removed some superfluous keywords from ABAP (BenBE) * Removed duplicate keywords for Progress (BenBE) * Removed duplicate keywords for T-SQL (BenBE) * Linking for PowerShell special variables revised (BenBE) * Fixed linking in ColdFusion (BenBE) * Fixed linking in LaTeX (BenBE) * Fixed linking in mIRC Scripting language (BenBE) * Fixed escape char regexp for C-style languages (BenBE) * Fixed @""-string handling for C# (SF#2789371, BenBE) * Fixed Strict Block Detection for PHP blocks (BenBE) * Changed allowed chars around Powershell operators (SF#2688863, BenBE) * Minor reordering inside of PHP language file (BenBE) * Added missing keywords for ActionScript3 language file (SF#2795005, BenBE) * Added .xrc file extension for XML highlighting (BenBE) Version 1.0.8.3 - Added language files * DCS (Stelio Passaris) * Locomotive Basic (Nacho Cabanes) * LSL2 (Linden Scripting Language) (William Fry) * Modula-3 (Martin Bishop) * Oberon-2 (Mike Mol) * Rebol (Lecanu Guillaume) - Fixed a problem where HardEscapes weren't working when no escape char was given (BenBE) - Added a PARSER_CONTROL setting to treat whitespace inside of keywords in the language file as "any whitespace" in the source (i.e. "CREATE TABLE" in SQL will match "CREATE\s+TABLE" instead of literally matching) (BenBE) - Added a possibility to allow setting the style for escape characters (BenBE) - Improvements to language files (BenBE) * Added some missing Perl keywords and obscure default variables (BenBE) * Allow for escaped colons to appear in CSS names (BenBE, simon) * Added multiline continuation suppoert of preprocessor defines for C, C for Mac, C++ and CC++ with Qt support (BenBE) * keywords for C-based languages are case-sensitive (BenBE) * Broken AutoIt highlighting (BenBE) * Problem with escaped backslash in PHP and D (BenBE) * Added some more functions for PHP (BenBE) * Some changes for AppleScript (Stefan Klieme) * Forbid highlighting keywords followed by / in bash (BenBE) * Updated the LaTeX file to link some keywords (BenBE) * Additional text rendered when matching special variables for PowerShell (BenBE) * Added some more keywords for ABAP (BenBE, Sandra Rossi, Jacob Laursen) Version 1.0.8.2 - Added language files * Brainfuck \ Brainfork (Benny Baumann) * HQ9+ (Benny Baumann) * INTERCAL (Benny Baumann) * LOLcode (Benny Baumann) * LScript (Beau McGuigan) * Pixel Bender (Richard Olsson) * ProvideX (Jeff Wilder) * VIM Script (Swaroop C H) * Visual Prolog (Thomas Linder Puls) * Whitespace (Benny Baumann) - Changed priority for COMMENT_REGEXP compared to String highlighting (BenBE) - Fixed correct escaping of spaces inside of URLs (BenBE) - Updated the list of common file extensions (BenBE) - Updated the language file check script in contrib/ (BenBE) - Fixed a problem with link targets resulting in unclickable links (SF#2379120, BenBE) - Fixed an undefined variable issue in langcheck.php (BenBE) - Improvements to language files (BenBE) * eMail Header highlighting now uses the correct delimiters for keywords (BenBE) * eMail (RFC822\mbox) highlighting now highlights IPs, MIME types and subfield assignments correctly (BenBE) * Minor style changes in COBOL to improve loading performance (BenBE) * Added some missing keywords for D (BenBE) * Removed duplicate keywords from Progres, SAS and TSQL (BenBE) * Fixed Heredoc Syntax for Bash (SF#2185319, BenBE) * Moved symbol-lookalike sequences from keyword groups to separate symbol group for languages asp, klonec, klonecpp, php, php-brief (BenBE) * Fixed a lot of duplicate keyword warnings (BenBE) * Added missing keywords to the Python language file, introducing support for Python 3.0. (SF#2441839, milian) * Updated documentation links for TypoScript (SF#2014276, BenBE) * Fixed a problem with tag and attribute names in XML highlighting (SF#2276119, BenBE) * Improved MySQL language file (BenBE, JavaWoman) * Some commentss accidentially mistaken for DocComments (SF#2454897, BenBE) * Added improved Escape Char handling for c, c_mac, cpp and cpp_qt (SF#2458743, BenBE) Version 1.0.8.1 - Added language files * AviSynth (Ryan Jones) * eMail \ mbox (Benny Baumann) * GNU Make (Neil Bird) * Oracle 11i support (Simon Redhead) * Prolog (Benny Baumann) * SciLab (Christophe David) * TeraTerm macro language (Boris Maisuradze) - Added support for Escape Regular Expressions (BenBE) * Implemented C-style Escapes in PHP (BenBE) * Introduced support for \xAB and \007 style Char Escapes in PHP (BenBE) * Implemented Variable Highlighting in PHP (BenBE) * Implemented Variable Highlighting in Bash (milian) - Fixed a problem with PCRE patterns for Keyword matching sometimes producing very large strings, that could not be handled by some versions of PCRE lib, causing broken highlighting an Regexp Compile errors (BenBE, milian) - Fixed broken highlighting of bash commands like `dbus-send --dest=org.....`, i.e. the dest was highlighted as variable declaration (milian) - Fixed broken highlighting of some symbols in their escaped form (BenBE) ( and were accidentially filtered even though they are valid) - Fixed a "memory leak" in the *_regexp_caches (milian) - Fixed broken Escape chars if classes were disabled - start_line_numbers_at() was ignored when GESHI_HEADER_PRE_TABLE was set (revulo) - Fixed a problem allowing Remote Code Inclusion under certain circumstances (BenBE) - Changes to default CSS in order to make the GESHI_HEADER_PRE_TABLE align properly, even on Windows / Mac systems with strange fonts (milian, revulo, ^RT) - Minor style changes to the following languages: * cpp-qt (milian) * MySQL (BenBE) * PHP (BenBE) - Improvements to language files (BenBE, milian) * Added MinSpareThread\MaxSpareThreads to Apache highlighter (BenBE) * Added new Keyword group for APT sources.list highlighter (BenBE) * Fixed highlighting in LaTeX for \begin{} and \end{}, i.e. the stuff inside the curly braces. (milian, thanks for the report go to Matthias Pospiech) * Improved String support for D (BenBE) * MySQL was seriously broken (BenBE) * Reworked Keyword groups for MySQL to allow for more configuration (BenBE) * Improved Mirc script language file (milian) * Improved C++ Qt language file (milian) * Minor bug with Transpose Operator in Matlab (BenBE, Daniele de Rigo) * Highlighting of Batch Files for Windows (BenBE) * Updated AutoIt to include latest changes for AutoIt v3.2.12.1 (BenBE, Thierry) * Fixed duplicate keyword warnings for Perl, Tcl and Typoscript (BenBE) * Fixed Doc-URL getting reparsed by highlighted keywords of other groups (BenBE, Jordi Boggiano) Version 1.0.8 - Added language files * APT sources.list (milian) * Boo (Marcus Griep) * CIL (Common Intermediate Language, .NET Assembly) (Marcus Griep) * COBOL (Benny Baumann) * Gnuplot (milian) * KLoneC (Mickael Auger) * KLoneC++ (Mickael Auger) * PIC16xxx assembler (Phil Mattison) * POV-Ray (Carl Fürstenberg) * PowerShell (Frode Aarebrot) * Progress (Marco Aurelio de Pasqual) * TypoScript (Jan-Philipp Halle) * Xorg configuration (milian) - Make GeSHi's constructor arguments optional, so something like `$foo = new GeSHi;` is possible. (milian) - Added an optimizer for lists to regular expressions. Using these cached lists results in a speedup of approx. 50%. The slightly increased memory consumption (~150KB for PHP language file) is more than worth it! (milian) - Some more memory & speed optimizations all over GeSHi (milian) * Reduced memory overhead when highlighting keywords (BenBE) * Keyword Linking now uses considerably less strtolower calls (milian) * Cache Symbol Search Regexp and make Symbol Highlighting faster (milian) * Use more native functions like substr_replace and strcasecmp to speed things up (milian) * Use considerably less strlen() calls on various points by caching the results (milian) * Properly set comments to be case insensitive where appropriate to increase performance (milian) * Improve the performance of the strict mode tokenizer, making highlighting of languages like HTML, ColdFusion or XML faster (milian) * Setup caches for parsing on demand to make stylesheet generators fast (milian) - Various improvements to Strict Block Handling (BenBE, milian) * Added support for RegExp-based Strict Blocks (BenBE) * Fixed highlighting incorrectly stopping at ?> in PHP (SF#1330968, BenBE) * Languages with STRICT_MODE_APPLIES = GESHI_MAYBE default to strict mode now. When no highlightable code is found in this mode, we fallback to the same setting as if GESHI_NEVER was set. That way it should not be needed to call enable_strictmode() manually. (milian) - Added new GESHI_HEADER_PRE_VALID type which uses the following markup: (milian) * With line numbers:
          header
          1. ...
          2. ...
          * Without line numbers:
          header...CODE...
          => valid HTML and no need for   indentation - Added new GESHI_HEADER_PRE_TABLE type which can be used to prevent linenumber-selection in Firefox on copy'n'paste. (milian) - set_language will not reset any language settings by default anymore. * Added $force_reset param for to force full reload of a language. (milian) * Make sure strict_mode is set properly when doing repeated set_language calls (milian) - Fixed some problems with old PHP versions (SF#1975625, milian, BenBE) - Fixed broken use with Suhosin Patch when /e modifier was disabled (SF#2021800, BenBE) - Added support for external style information files to override language defaults without modifying language files (BenBE) - The overall_class is now up to the user, and the language-code is _always_ added as a class (milian) - Fixed Economy Mode for GeSHi::get_stylesheet() - now it just makes so much more sense! (milian) - Fixed Economy Mode when COMMENT_REGEXP are used (BenBE) - Changed the default encoding to use UTF-8, due to SF#2037598, BenBE) - Improved overall string support: * Added support for multichar string delimiters (SF#1932083, BenBE) * Fixed problems of unfinished strings and comments producing invalid XHTML (SF#1996353, BenBE) * Multichar Quotemarks sometimes had inconsistent behaviour (BenBE) * Support for multiple styles of strings depending on the starter (BenBE) * Properly handle escapes in strings, i.e. '\\' was not working properly before (milian) * Fixed escape char support when an escape char is followed by multi-byte chars (SF#2037598, BenBE) - Improved flexibility in language files (BenBE, milian) * Added PARSER_CONTROL for OOLANG method highlighting (SF#1923060, BenBE) * Added possibility to define strict blocks using an Regexp (BenBE) * Removed explicit escaping of / in Regular Expressions (BenBE) * Ignoring empty keyword groups when highlighting (milian) * Make language_permissions configurable in language files via ['PARSER_CONTROL']['ENABLE_FLAGS'] this makes is_a calls unneeded and thus prevents PHP notices in PHP 5.x (milian) * Extended support for number formats now covering the most common formats (SF#1923058, BenBE) * Lifted a limitation that keywords had to have at least 2 subsequent letters (BenBE) * Changed behaviour of PARSER_CONTROL now allowing to provide the full Lookahead and Lookbehind expressions used as delimiters inside keywords instead of a simple char group (BenBE) * Fixed improper handling of newlines in REGEXPS so this does not produce invalid html anylonger (milian) - Some typos and mistakes in the documentation (BenBE) - Added a script to contrib/ to verify language files are correct (BenBE) - Fixed loads of compliancy warnings detected with that automated compliance testing script (BenBE) - Many other improvements to various language files (BenBE, milian) * Reduce strict errors & notices for language files (milian) * Fixed symbol highlighting with C++ sometimes missing keywords after ; and comments (BenBE) * Improved comment handling with TCL (Lars Hellström, BenBE) * Fixed broken handling with XML comments (BenBE, SF#1849233) * Fixed HTML comments spawning multiple lines producing invalid XHTML output (SF#1738173, BenBE) * Added support for parameters beginning with dash in BASH language (BenBE) * Support Apache's configuration sections, see http://httpd.apache.org/docs/2.2/sections.html (milian) * Minor issue with PHP Heredoc and Nowdoc syntax sometimes not getting highlighted (BenBE) * Updated Objective-C language file (SF#2013961, Quinn Taylor, BenBE) * Added some keywords for VHDL (beshig, BenBE) * Fixed severly broken ColdFusion language file (milian) * Fixed some incorrectly highlighted things with the CSS language file (milian, BenBE) * Improved Smarty language file (milian) * Improved CSS language file (milian) * Improved Pascal language file (milian) * Improved LaTeX language file (Андрей Парамонов, BenBE) * Fixed a regular expression in mIRC language file that caused a warning message to be issued (BenBE) * Removed <, > and / from HTML names, now only containing the real tag names (BenBE) * Use spaces instead of tabs for indendation in language files to have a consistent coding standard accross geshi files (milian) * Added some comment styles, keywords and added index highlighting (Chusslove Illich, Часлав Илић) - Removed some private methods which were only called at exactly one place (milian) * format_header_content * format_footer_content * get_attributes - Second part of default style changes. Affected in this release: * C++ * C++ (Qt) * CSS * VHDL Version 1.0.7.22 - Added language files * glSlang (BenBE) * KiXtart (Riley McArdle) * Lotus Notes @Formulas (Richard Civil) * LotusScript (Richard Civil) * MXML (David Spurr) * Scala (Franco Lombardo) * ActionScript 3 (Jordi Boggiano) * GNU Gettext .po/.pot (Milian Wolff) * Verilog (Günter Dannoritzer) - Fixed a problem not yet addressed in 1.0.7.21 regarding highlighting of symbols that caused some extra characters to be added in the output or broke highlighting and standard compliance due to missing escaping of internally used characters (SF#192320 and SF#1926259, BenBE) - Fixed missing style information for ocaml language file (The_PHP_Jedi) - Fixed a bug causing masses of warnings in rendered output if language file miss style information (The_PHP_Jedi, BenBE) - Missing tab width information could lead to warnings (BenBE) - Missing symbol information for ASP (SF#1952038, nfsupport, BenBE) - Empty delimiter message with OOoBasic (BenBE, Ccornell) - Escaping of comments in LaTeX ignored (SF#1749806, BenBE) - Modified Math environment $$ in LaTeX to be non-greedy (BenBE) - Added possibility to match a regexp as comment (SF#1914640, SF#1945301, SF#1934832, BenBE) - Introduced C-Style multiline continuation comments (SF#1914640, SF#1945301, BenBE) - Introduced Fortran Comments (SF#1914640, SF#1934832, BenBE) - Implemented Heredoc and Nowdoc Syntax for PHP and Perl (SF#1914640, BenBE) - Implemented Compiler Directives for Delphi (SF#1914640, BenBE) - Implemented minimalistic support for JavaScript \ Perl Regular Expressions (SF#1786665, SF#1754333, SF#1956631, BenBE) - Fixed Strings in Matlab to be handled as comments instead of regexps, to prevent keywords being linked (BenBE) - Applied PARSER_CONTROL fix of C++ for C++-Qt-Derivative (BenBE) - Fixed incorrect treatment of unequally long multiline comment separators (related to SF #1891630, BenBE) - Added PARSER_CONTROL settings for keywords in ASM language file (SF#1835148, BenBE) - Fixed missing CASSE_SENSITIVE entry for DOS language file (SF#1956314, BenBE) - Fixed accidential highlighting of keywords in argument names (SF#1956456, Milian Wolff, BenBE) - Fixed yet again some #-related bash problem (SF#1956459, Milian Wolff, BenBE) - Added backticks as symbols (Milian Wolff) - Example script remembers selections and source submitted (Milian Wolff) - Example script allows remembered source and preselected language to be cleared (Milian Wolff) - Example script now properly includes geshi and doesn't suppress error messages anylonger. (Milian Wolff) - Code cleanup by using direct string indexing instead of substr with length 1 (Milian Wolff) - Optimized generation of code parts in strict mode (Milian Wolff) - Optimized COMMENT_REGEXP by using an incremental regexp cache (Milian Wolff, BenBE) - Fixed a problem that rarely skipped highlighting of escaped chars which usually should have gotten highlighted (BenBE) - Optimized generation of highlighted strings to use fast skip forward while highlighting them (Milian Wolff, BenBE) - Optimization using basic rework of indent function improving tab expansion performance (BenBE) - Lots of other minor optimizations based on coding style improvements (Milian Wolff) - Implemented setting to force spans to be closed before newlines, see SF#1727398 (Milian Wolff) - Added missing credits for D language file to THANKS file (SF#1720899, BenBE) - Optimization to prevent loading the current language file twice (Milian Wolff) - Optimization: Use file_get_contents() to load sourcecode from files. Even if GeSHi worked with PHP 4.1 before, it doesn't now. (Milian Wolff) - Added description of extra language features (SF#1970248, BenBE) - Added support for highlighting the C# using and namespace directives (SF #1395677, BenBE) - Added support for highlighting the Java import and package directives (SF #1395677, BenBE) - Fixed minor problem in Haskell cuasing accidential start of comment (SF#1987221, BenBE) - Fixed minor issue causing loads of warnings if a language files defines no symbols (BenBE) - Updated some aspects of the documentation and included further hints (BenBE) - First of series of color scheme changes. Affected languages (sofar): * Assembler (x86) * Bash * C * C# * Delphi * Fortran77 * glSlang * Java & Java 5 * JavaScript * OCaml * OpenOffice.org Basic * Pascal * Perl * PHP and PHP-Brief Version 1.0.7.21 - Added language files * Basic4GL (Matthew Webb) - Fixed problem with mIRC language highlighting spaces only (BenBE) - Language files can now specify a function to be called to decide the colour of a regular expression match - Added single quote to Lua (Darrin Roenfanz) - Compare comments case insensitively (fixes AutoIT comments somewhat) (Daniel Gordon) - Fixed symbols not being highlighted at all (SF #1767953, BenBE) - Fixed brackets not correctly managed (SF #1767954, BenBE) - Changed default languages for some extensions - Included color and character information for symbol highlighting in some languages (BenBE) - Fixed a problem with extension detection if default was used (BenBE) - Fixed a highlighting problem with the LaTeX language (SF #1776182, BenBE) - Added a new parameter for enable_highlighting to reduce source duplication (SF #1786104, BenBE) - Updated doxygen documentation to include since tags and some missing parameters - Disabled symbol highlighting by default (doesn't affect brackets, cf. documentation) (BenBE) - Added a check for set_case_keywords for the given param to be supported (BenBE) - Minor rework of the HTML documentation layout \ W3C compliance (BenBE) - Fixed highlighting error in bash language avoiding keywords in comments (SF #1786314, SF #1564839, BenBE) - Fixed template params for C++ and C# not being highlighted (SF #1772919, BenBE) - Fixed more reported problems about mirc highlighting - Added some missing keywords for VB.NET - Fixed some warnings in DOS language file (Florian Angehrn) - Add possibility to handle more than one extra line style (SF #1698255, German Rumm, BenBE) - Fixed handling of URLs when output case differs from URL case (SF #1815504, Tom Samstag, BenBE) - Fixed POD (Plain Old Documentation) format problems breaking highlighting of Perl (SF #1891630, Shannon Wynter, BenBE) - Fixed a problem with mIRC when & was used for identifiers (SF #1875552, BenBE) Version 1.0.7.20 - Added language files * Genero (logic) and Per (forms) (FOURJ's Genero 4GL) (Lars Gersmann) * Haskell (Dagit) * ABAP (Andres Picazo) * Motorola 68k Assembler (for MC68HC908GP32 Microcontroller) (BenBE) * Dot (Adrien Friggeri) - Fixed java documentation search for keywords to actually go to the documentation (spaze) - Applied fix for bug 1688864 (bad regexes) (Tim Starling) - Fixed comment CSS rule in visualfoxpro - ThinBASIC language update (Eros Olmi) - mIRC language update (BenBE) - Fixed outdated documentation URL of Perl language file (RuralMoon by BenBE) - Fixed tab replacement code not generating the correct number of spaces in some cases (Guillermo Calvo) - Fixed two typos in Z80 language file - Applied fix for bug 1730168 (Daniel Naber) - Applied fix for bug 1705482 (Jason Frame) * Configurable line endings (Replace \n by custom string) * per-language tab-widths (Adjustable for width>=1) * Included defaults for ASM (x86, m68k, z80), C, C (Mac), C++, C++ (Qt), C#, Delphi, CSS,, HTML, PHP, PHP (Brief), QBasic, Ruby, XML - Added a possibility to force generation of a surrounding tag around the highlighted source - Applied fix for additional keywords for the bash language (cf. http://bash.thefreebizhost.com/bash_geshi.php, BenBE / Jan G) - Fix bad colour definition in GML language (Andreas Gohr) - Fixed phpdoc comments not being indented one space if they should be (Andy Hassall) Version 1.0.7.19 - Added language files * X++ (Simon Butcher) * Rails (Moises Deniz) - Fixed invalid HTML being generated and doctypes not being highlighted over multiple lines properly when line numbers are on (Validome) - Improved the ruby syntax highlighting by basing it off the Rails file - Changed some regular expressions to possibly help with badly performing regex support in PHP (Tim Starling) - Allow {TIME}, {LANGUAGE} and {VERSION} to be used in the header as well as the normal
          Author
          Comments
          Single Line
          Comment Group 1
          Comment Group 2
          Multiple Lines
          Comment Group 1
          Comment Group 2
          Regular Expressions
          Comment Group 1
          Strings
          String \ Quotes (delimiters, parsed)
          Quotemark Group 1
          Quotemark Group 2
          Escape Sequences
          Generic Escape Char
          Escape Regexp Group 1
          Escape Regexp Group 2
          Keywords
          Case of Keywords
          Keyword Group 1
          Symbols
          Symbols Group 1
          Language File Source set_source($langfile_source); echo $G->parse_code(); unset($G); ?>

          Operation completed in seconds.

          "\\\"", "\\" => "\\\\", "\0" => "\\0", "\n" => "\\n", "\r" => "\\r", "\t" => "\\t", "\$" => "\\\$" ) ) . '"'; } else { return "'" . strtr($str, array( "'" => "\\'", "\\" => "\\\\" ) ) . "'"; } } function validate_lang(){ $ai = array( 'name' => 'Benny Baumann', 'email' => 'BenBE@geshi.org', 'web' => 'http://qbnz.com/highlighter/' ); $li = array( 'file' => 'example', 'desc' => 'Example' ); if(isset($_POST['ld'])) { $ld = $_POST['ld']; } else { $ld = array( 'cmt' => array( 'sl' => array( 1 => array( 'start' => '//', 'style' => 'test' ) ), 'ml' => array( 1 => array( 'start' => '/*', 'end' => '*/', 'style' => 'font-style: italic; color: #666666;' ) ), 'rxc' => array( 1 => array( 'rx' => '/Hello/', 'style' => 'color: #00000' ) ) ), 'str' => array( 'qm' => array(), 'ec' => array( 'char' => '' ), 'erx' => array() ), 'kw' => array(), 'kw_case' => 'GESHI_CAPS_NO_CHANGE', 'sy' => array() ); } return array('ai' => $ai, 'li' => $li, 'ld' => $ld); } function gen_langfile($lang){ $langfile = $lang['li']['file']; $langdesc = $lang['li']['desc']; $langauthor_name = $lang['ai']['name']; $langauthor_email = $lang['ai']['email']; $langauthor_web = $lang['ai']['web']; $langversion = GESHI_VERSION; $langdate = date('Y/m/d'); $langyear = date('Y'); $i = ' '; $i = array('', $i, $i.$i, $i.$i.$i); $src = << ".str_to_phpstring($langdesc).",\n"; //Comments $src .= $i[1] . "'COMMENT_SINGLE' => array(\n"; foreach($lang['ld']['cmt']['sl'] as $idx_cmt_sl => $tmp_cmt_sl) { $src .= $i[2] . ((int)$idx_cmt_sl). " => ". str_to_phpstring($tmp_cmt_sl['start']) . ",\n"; } $src .= $i[2] . "),\n"; $src .= $i[1] . "'COMMENT_MULTI' => array(\n"; foreach($lang['ld']['cmt']['ml'] as $tmp_cmt_ml) { $src .= $i[2] . str_to_phpstring($tmp_cmt_ml['start']). " => ". str_to_phpstring($tmp_cmt_ml['end']) . ",\n"; } $src .= $i[2] . "),\n"; $src .= $i[1] . "'COMMENT_REGEXP' => array(\n"; foreach($lang['ld']['cmt']['rxc'] as $idx_cmt_rxc => $tmp_cmt_rxc) { $src .= $i[2] . ((int)$idx_cmt_rxc). " => ". str_to_phpstring($tmp_cmt_rxc['rx']) . ",\n"; } $src .= $i[2] . "),\n"; //Case Keywords $src .= $i[1] . "'CASE_KEYWORDS' => " . $lang['ld']['kw_case'] . ",\n"; //Quotes \ Strings $src .= $i[1] . "'QUOTEMARKS' => array(\n"; foreach($lang['ld']['str']['qm'] as $idx_str_qm => $tmp_str_qm) { $src .= $i[2] . ((int)$idx_str_qm). " => ". str_to_phpstring($tmp_str_qm['delim']) . ",\n"; } $src .= $i[2] . "),\n"; $src .= $i[1] . "'ESCAPE_CHAR' => " . str_to_phpstring($lang['ld']['str']['ec']['char']) . ",\n"; $src .= $i[1] . "'ESCAPE_REGEXP' => array(\n"; foreach($lang['ld']['str']['erx'] as $idx_str_erx => $tmp_str_erx) { $src .= $i[2] . ((int)$idx_str_erx). " => ". str_to_phpstring($tmp_str_erx['rx']) . ",\n"; } $src .= $i[2] . "),\n"; //HardQuotes $src .= $i[1] . "'HARDQUOTE' => array(\n"; $src .= $i[2] . "),\n"; $src .= $i[1] . "'HARDESCAPE' => array(\n"; $src .= $i[2] . "),\n"; $src .= $i[1] . "'HARDCHAR' => '',\n"; //Numbers $src .= $i[1] . "'NUMBERS' =>\n"; $src .= $i[2] . "GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX |\n"; $src .= $i[2] . "GESHI_NUMBER_FLT_SCI_ZERO,\n"; //Keywords $src .= $i[1] . "'KEYWRODS' => array(\n"; foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) { $src .= $i[2] . ((int)$idx_kw) . " => array(\n"; if(!is_array($tmp_kw['list'])) { $tmp_kw['list'] = explode("\n", $tmp_kw['list']); } $tmp_kw['list'] = array_map('trim', $tmp_kw['list']); sort($tmp_kw['list']); $kw_esc = array_map('str_to_phpstring', $tmp_kw['list']); $kw_nl = true; $kw_pos = 0; foreach($kw_esc as $kw_data) { if((strlen($kw_data) + $kw_pos > 79) && $kw_pos > strlen($i[3])) { $src .= "\n"; $kw_nl = true; $kw_pos = 0; } if($kw_nl) { $src .= $i[3]; $kw_pos += strlen($i[3]); $kw_nl = false; } $src .= $kw_data . ', '; $kw_pos += strlen($kw_data) + 2; } $src .= "\n"; $src .= $i[3] . "),\n"; } $src .= $i[2] . "),\n"; //Case Sensitivity $src .= $i[1] . "'CASE_SENSITIVE' => array(\n"; foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) { $src .= $i[2] . ((int)$idx_kw) . " => " . ($tmp_kw['case'] ? 'true' : 'false') . ",\n"; } $src .= $i[2] . "),\n"; //Symbols $src .= $i[1] . "'SYMBOLS' => array(\n"; foreach($lang['ld']['sy'] as $idx_kw => $tmp_kw) { $src .= $i[2] . ((int)$idx_kw) . " => array(\n"; $tmp_kw['list'] = (array)$tmp_kw['list']; sort($tmp_kw['list']); $kw_esc = array_map('str_to_phpstring', $tmp_kw['list']); $kw_nl = true; $kw_pos = strlen($i[3]); foreach($kw_esc as $kw_data) { if((strlen($kw_data) + $kw_pos > 79) && $kw_pos > strlen($i[3])) { $src .= "\n"; $kw_nl = true; $kw_pos = 0; } if($kw_nl) { $src .= $i[3]; $kw_pos += strlen($i[3]); $kw_nl = false; } $src .= $kw_data . ', '; $kw_pos += strlen($kw_data) + 2; } $src .= "\n"; $src .= $i[3] . "),\n"; } $src .= $i[2] . "),\n"; //Styles \ CSS $src .= $i[1] . "'STYLES' => array(\n"; $src .= $i[2] . "'KEYWRODS' => array(\n"; foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) { $src .= $i[3] . ((int)$idx_kw) . " => " . str_to_phpstring($tmp_kw['style']) . ",\n"; } $src .= $i[3] . "),\n"; $src .= $i[2] . "'COMMENTS' => array(\n"; foreach($lang['ld']['cmt']['sl'] as $idx_cmt_sl => $tmp_cmt_sl) { $src .= $i[3] . ((int)$idx_cmt_sl) . " => " . str_to_phpstring($tmp_cmt_sl['style']) . ",\n"; } foreach($lang['ld']['cmt']['rxc'] as $idx_cmt_rxc => $tmp_cmt_rxc) { $src .= $i[3] . ((int)$idx_cmt_rxc) . " => " . str_to_phpstring($tmp_cmt_rxc['style']) . ",\n"; } $src .= $i[3] . "'MULTI' => " . str_to_phpstring($lang['ld']['cmt']['ml'][1]['style']) . "\n"; $src .= $i[3] . "),\n"; $src .= $i[2] . "'ESCAPE_CHAR' => array(\n"; foreach($lang['ld']['str']['erx'] as $idx_str_erx => $tmp_str_erx) { $src .= $i[3] . ((int)$idx_str_erx). " => ". str_to_phpstring($tmp_str_erx['style']) . ",\n"; } // 'HARD' => 'color: #000099; font-weight: bold;' $src .= $i[3] . "),\n"; $src .= $i[2] . "'BRACKETS' => array(\n"; $src .= $i[3] . "),\n"; $src .= $i[2] . "'STRINGS' => array(\n"; foreach($lang['ld']['str']['qm'] as $idx_str_qm => $tmp_str_qm) { $src .= $i[3] . ((int)$idx_str_qm). " => ". str_to_phpstring($tmp_str_qm['style']) . ",\n"; } // 'HARD' => 'color: #0000ff;' $src .= $i[3] . "),\n"; $src .= $i[2] . "'NUMBERS' => array(\n"; $src .= $i[3] . "),\n"; $src .= $i[2] . "'METHODS' => array(\n"; $src .= $i[3] . "),\n"; $src .= $i[2] . "'SYMBOLS' => array(\n"; foreach($lang['ld']['sy'] as $idx_kw => $tmp_kw) { $src .= $i[3] . ((int)$idx_kw) . " => " . str_to_phpstring($tmp_kw['style']) . ",\n"; } $src .= $i[3] . "),\n"; $src .= $i[2] . "'REGEXPS' => array(\n"; $src .= $i[3] . "),\n"; $src .= $i[2] . "'SCRIPT' => array(\n"; $src .= $i[3] . "),\n"; $src .= $i[2] . "),\n"; //Keyword Documentation $src .= $i[1] . "'URLS' => array(\n"; foreach($lang['ld']['kw'] as $idx_kw => $tmp_kw) { $src .= $i[2] . ((int)$idx_kw) . " => " . str_to_phpstring($tmp_kw['docs']) . ",\n"; } $src .= $i[2] . "),\n"; $src .= $i[1] . "'OOLANG' => false,\n"; $src .= $i[1] . "'OBJECT_SPLITTERS' => array(\n"; $src .= $i[2] . "),\n"; $src .= $i[1] . "'REGEXPS' => array(\n"; $src .= $i[2] . "),\n"; $src .= $i[1] . "'STRICT_MODE_APPLIES' => GESHI_MAYBE,\n"; $src .= $i[1] . "'SCRIPT_DELIMITERS' => array(\n"; $src .= $i[2] . "),\n"; $src .= $i[1] . "'HIGHLIGHT_STRICT_BLOCK' => array(\n"; $src .= $i[2] . "),\n"; $src .= $i[1] . "'TAB_WIDTH' => 4,\n"; $src .= << GESHI_LANGFILE_FOOTER; //Reduce source ... $src = preg_replace('/array\(\s*\)/s', 'array()', $src); $src = preg_replace('/\,(\s*\))/s', '\1', $src); $src = preg_replace('/\s+$/m', '', $src); return $src; } // vim: shiftwidth=4 softtabstop=4 ?> geshi/contrib/aliased.php0000664000175000017500000000745312014173461014652 0ustar benbebenbe * @version $Id: aliased.php 2533 2012-08-15 18:49:04Z benbe $ */ // Your config here define("SOURCE_ROOT", "/var/www/your/source/root/"); // Assume you've put geshi in the include_path already require_once("geshi.php"); // Get path info $path = SOURCE_ROOT.$_SERVER['PATH_INFO']; // Check for dickheads trying to use '../' to get to sensitive areas $base_path_len = strlen(SOURCE_ROOT); $real_path = realpath($path); if(strncmp($real_path, SOURCE_ROOT, $base_path_len)) { exit("Access outside acceptable path."); } // Check file exists if(!file_exists($path)) { exit("File not found ($path)."); } // Prepare GeSHi instance $geshi = new GeSHi(); $geshi->set_language('text'); $geshi->load_from_file($path); $geshi->set_header_type(GESHI_HEADER_PRE); $geshi->enable_classes(); $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 10); $geshi->set_overall_style('color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', true); $geshi->set_line_style('font: normal normal 95% \'Courier New\', Courier, monospace; color: #003030;', 'font-weight: bold; color: #006060;', true); $geshi->set_code_style('color: #000020;', 'color: #000020;'); $geshi->set_link_styles(GESHI_LINK, 'color: #000060;'); $geshi->set_link_styles(GESHI_HOVER, 'background-color: #f0f000;'); $geshi->set_header_content('Source code viewer - ' . $path . ' - ' . $geshi->get_language_name()); $geshi->set_header_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-bottom: 1px solid #d0d0d0; padding: 2px;'); $geshi->set_footer_content('Parsed in
          '; } function get_var ( $var_name ) { if ( isset($_GET[$var_name]) ) { return str_replace("\'", "'", $_GET[$var_name]); } elseif ( isset($_POST[$var_name]) ) { return str_replace("\'", "'", $_POST[$var_name]); } return null; } // // Unset everything // foreach ( $_REQUEST as $var ) { unset($$var); } foreach ( array( '_POST' => 'HTTP_POST_VARS', '_GET' => 'HTTP_GET_VARS', '_COOKIE' => 'HTTP_COOKIE_VARS', '_SERVER' => 'HTTP_SERVER_VARS', '_ENV' => 'HTTP_ENV_VARS', '_FILES' => 'HTTP_POST_FILES') as $array => $other ) { if ( !isset($$array) ) { $$array = $$other; } unset($$other); } // Get what step we're up to $step = get_var('step'); if ( !$step || $step == 1 ) { $errors = 0; make_header('Step 1'); echo "Welcome to the GeSHi CSS generator.
          Searching for GeSHi...          ";
          
              // Find GeSHi
              $geshi_path = get_var('geshi-path');
              $geshi_lang_path = get_var('geshi-lang-path');
          
              if(strstr($geshi_path, '..')) {
                  unset($geshi_path);
              }
              if(strstr($geshi_lang_path, '..')) {
                  unset($geshi_lang_path);
              }
          
              if ( !$geshi_path )
              {
                  $geshi_path = '../geshi.php';
              }
              if ( !$geshi_lang_path )
              {
                  $geshi_lang_path = '../geshi/';
              }
          
              if ( is_file($geshi_path) && is_readable($geshi_path) )
              {
                  // Get file contents and see if GeSHi is in here
                  $file = @file($geshi_path);
                  $contents = '';
                  foreach ( $file as $line )
                  {
                      $contents .= $line;
                  }
                  if ( strpos($contents, 'Found at ' . realpath($geshi_path) . '';
                  }
                  else
                  {
                      ++$errors;
                      $no_geshi_dot_php_error = true;
                      echo 'Not found';
                  }
              }
              else
              {
                  ++$errors;
                  $no_geshi_dot_php_error = true;
                  echo 'Not found';
              }
          
              // Find language files
              echo "\nSearching for language files... ";
              if ( is_readable($geshi_lang_path . 'css-gen.cfg') )
              {
          
                  echo 'Found at ' . realpath($geshi_lang_path) . '';
              }
              else
              {
                  ++$errors;
                  $no_lang_dir_error = true;
                  echo 'Not found';
              }
              echo "
          \n"; if ( $errors > 0 ) { // We're gonna have to ask for the paths... echo 'Unfortunately CSSGen could not detect the following paths. Please input them and press "submit" to try again.'; echo "
          "; if ( $no_geshi_dot_php_error ) { echo "
          geshi.php: "; } else { echo ''; } if ( $no_lang_dir_error ) { echo "
          language files directory: (should have a trailing slash)"; } else { echo ''; } echo "
          "; } else { // no errors - echo continue form echo 'Everything seems to be detected successfully. Use the button to continue.

          '; } make_footer(); } // Step 2 elseif ( $step == 2 ) { make_header('Step 2'); $geshi_path = get_var('geshi-path'); $geshi_lang_path = get_var('geshi-lang-path'); $dh = opendir($geshi_lang_path); $lang_files = array(); $file = readdir($dh); while ( $file !== false ) { if ( $file == '.' || $file == '..' || $file == 'CVS' || $file == 'css-gen.cfg' ) { $file = readdir($dh); continue; } if(!strstr(file_get_contents($dh . DIRECTORY_SEPARATOR . $file), '$language_data')) { $file = readdir($dh); continue; } $lang_files[] = $file; $file = readdir($dh); } closedir($dh); sort($lang_files); // Now installed languages are in $lang_files echo ' What languages are you wanting to make this stylesheet for?

          Detected languages:
          '; foreach ( $lang_files as $lang ) { $lang = substr($lang, 0, strpos($lang, '.')); if ($lang) { echo " $lang
          \n"; } } echo "Select: All, None, Invert
          \n"; echo 'If you\'d like any other languages not detected here to be supported, please enter them here, one per line:

          '; echo '
          Styles:
          Style for the overall code block:
          Default Styles
          Keywords I (if, do, while etc)
          Keywords II (null, true, false etc)
          Inbuilt Functions (echo, print etc)
          Data Types (int, boolean etc)
          Comments (//, etc)
          Escaped Characters (\n, \t etc)
          Brackets ( ([{}]) etc)
          Strings ("foo" etc)
          Numbers (1, -54, 2.5 etc)
          Methods (Foo.bar() etc)
          '; echo '
          '; make_footer(); } // Step 3 elseif ( $step == 3 ) { make_header('Step 3'); echo '

          Here is your completed stylesheet. Note that it may not be perfect - no regular expression styles are included for one thing, you\'ll have to add those yourself (php and xml are just two languages that use them), and line numbers are not included, however it includes most of the basic information.

          '; // Make the stylesheet $part_selector_1 = ''; $part_selector_2 = ''; $part_selector_3 = ''; $langs = get_var('langs'); $extra_langs = trim(get_var('extra-langs')); if ( $extra_langs != '' ) { $l = explode("\r\n", $extra_langs); foreach ( $l as $lng ) { $langs[$lng] = true; } } foreach ( $langs as $lang => $dummy ) { $part_selector_1 .= ".$lang {PART}, "; $part_selector_2 .= ".$lang {PART1}, .$lang {PART2}, "; $part_selector_3 .= ".$lang {PART1}, .$lang {PART2}, .$lang {PART3}, "; } $part_selector_1 = substr($part_selector_1, 0, -2); $part_selector_2 = substr($part_selector_2, 0, -2); $part_selector_3 = substr($part_selector_3, 0, -2); $default_styles = get_var('default-styles'); $ol_selector = str_replace('{PART}', 'ol', $part_selector_1); $overall_styles = get_var('overall'); $overall_selector = str_replace('{PART}', '', $part_selector_1); $stylesheet = "/* GeSHi (c) Nigel McNie 2004 (http://qbnz.com/highlighter) */"; if ( $overall != '' ) { $stylesheet .= "\n$overall_selector {{$overall_styles}}"; } if ( $default_styles != '' ) { $default_selector = str_replace(array('{PART1}', '{PART2}'), array('.de1', '.de2'), $part_selector_2); $stylesheet .= "\n$default_selector {{$default_styles}}"; } // Do keywords $keywords_1 = get_var('keywords-1'); $keyword_selector_1 = str_replace('{PART}', '.kw1', $part_selector_1); if ( $keywords_1 != '' ) { $stylesheet .= "\n$keyword_selector_1 {{$keywords_1}}"; } $keywords_2 = get_var('keywords-2'); $keyword_selector_2 = str_replace('{PART}', '.kw2', $part_selector_1); if ( $keywords_2 != '' ) { $stylesheet .= "\n$keyword_selector_2 {{$keywords_2}}"; } $keywords_3 = get_var('keywords-3'); $keyword_selector_3 = str_replace('{PART}', '.kw3', $part_selector_1); if ( $keywords_3 != '' ) { $stylesheet .= "\n$keyword_selector_3 {{$keywords_3}}"; } $keywords_4 = get_var('keywords-4'); $keyword_selector_4 = str_replace('{PART}', '.kw4', $part_selector_1); if ( $keywords_4 != '' ) { $stylesheet .= "\n$keyword_selector_4 {{$keywords_4}}"; } // Do other lexics $comments = get_var('comments'); $comment_selector = str_replace(array('{PART1}', '{PART2}', '{PART3}'), array('.co1', '.co2', '.coMULTI'), $part_selector_3); if ( $comments != '' ) { $stylesheet .= "\n$comment_selector {{$comments}}"; } $esc = get_var('escaped-chars'); $esc_selector = str_replace('{PART}', '.es0', $part_selector_1); if ( $esc != '' ) { $stylesheet .= "\n$esc_selector {{$esc}}"; } $brackets = get_var('brackets'); $brk_selector = str_replace('{PART}', '.br0', $part_selector_1); if ( $brackets != '' ) { $stylesheet .= "\n$brk_selector {{$brackets}}"; } $strings = get_var('strings'); $string_selector = str_replace('{PART}', '.st0', $part_selector_1); if ( $strings != '' ) { $stylesheet .= "\n$string_selector {{$strings}}"; } $numbers = get_var('numbers'); $num_selector = str_replace('{PART}', '.nu0', $part_selector_1); if ( $numbers != '' ) { $stylesheet .= "\n$num_selector {{$numbers}}"; } $methods = get_var('methods'); $method_selector = str_replace('{PART}', '.me0', $part_selector_1); if ( $methods != '' ) { $stylesheet .= "\n$method_selector {{$methods}}"; } echo "
          $stylesheet
          "; make_footer(); } ?> geshi/contrib/langcheck.php0000664000175000017500000011551712014173461015170 0ustar benbebenbe'; $colors = array( TYPE_NOTICE => '', TYPE_WARNING => '', TYPE_ERROR => '', TYPE_OK => '' ); } else { $end = chr(27).'[0m'; $colors = array( TYPE_NOTICE => chr(27).'[1m', TYPE_WARNING => chr(27).'[1;33m', TYPE_ERROR => chr(27).'[1;31m', TYPE_OK => chr(27).'[1;32m' ); } } if ( !isset($colors[$level]) ) { trigger_error("no colors for level $level", E_USER_ERROR); } return $colors[$level].$string.$end; } define ('TYPE_NOTICE', 0); define ('TYPE_WARNING', 1); define ('TYPE_ERROR', 2); define ('TYPE_OK', 3); $error_abort = false; $error_cache = array(); function output_error_cache(){ global $error_cache, $error_abort; if(count($error_cache)) { echo colorize(TYPE_ERROR, "Failed"); if ( PHP_SAPI == 'cli' ) { echo "\n\n"; } else { echo "
            \n"; } foreach($error_cache as $error_msg) { if ( PHP_SAPI == 'cli' ) { echo "\n"; } else { echo "
          1. "; } switch($error_msg['t']) { case TYPE_NOTICE: $msg = 'NOTICE'; break; case TYPE_WARNING: $msg = 'WARNING'; break; case TYPE_ERROR: $msg = 'ERROR'; break; } echo colorize($error_msg['t'], $msg); if ( PHP_SAPI == 'cli' ) { echo "\t" . $error_msg['m']; } else { echo " " . $error_msg['m'] . "
          2. "; } } if ( PHP_SAPI == 'cli' ) { echo "\n"; } else { echo "
          \n"; } } else { echo colorize(TYPE_OK, "OK"); if ( PHP_SAPI == 'cli' ) { echo "\n"; } else { echo "\n
          "; } } echo "\n"; $error_cache = array(); } function report_error($type, $message) { global $error_cache, $error_abort; $error_cache[] = array('t' => $type, 'm' => $message); if(TYPE_ERROR == $type) { $error_abort = true; } } function dupfind_strtolower(&$value){ $value = strtolower($value); } if ( PHP_SAPI != 'cli' ) { ?> GeSHi Language File Validation Script

          GeSHi Language File Validation Script

          To use this script, make sure that geshi.php is in the parent directory or in your include_path, and that the language files are in a subdirectory of GeSHi's directory called geshi/.

          Everything else will be done by this script automatically. After the script finished you should see messages of what could cause trouble with GeSHi or where your language files can be improved. Please be patient, as this might take some time.

          1. Checking where to find GeSHi installation ... To use this script, make sure that is in the parent directory or in your include_path, and that the language files are in a subdirectory of GeSHi's directory called . Everything else will be done by this script automatically. After the script finished you should see messages of what could cause trouble with GeSHi or where your language files can be improved. Please be patient, as this might take some time. Checking where to find GeSHi installation ...\n
          2. Listing available language files ... "; } if (!($dir = @opendir(GESHI_LANG_ROOT))) { report_error(TYPE_ERROR, 'Error requesting listing for available language files!'); } $languages = array(); if(!$error_abort) { while ($file = readdir($dir)) { if (!$file || $file[0] == '.' || strpos($file, '.php') === false) { continue; } $lang = substr($file, 0, strpos($file, '.')); if(4 != strlen($file) - strlen($lang)) { continue; } $languages[] = $lang; } closedir($dir); } $languages = array_unique($languages); sort($languages); if(!count($languages)) { report_error(TYPE_WARNING, 'Unable to locate any usable language files in "'.GESHI_LANG_ROOT.'"!'); } output_error_cache(); } if ( PHP_SAPI == 'cli' ) { if (isset($_SERVER['argv'][1]) && in_array($_SERVER['argv'][1], $languages)) { $languages = array($_SERVER['argv'][1]); } } else { if (isset($_REQUEST['show']) && in_array($_REQUEST['show'], $languages)) { $languages = array($_REQUEST['show']); } } if(!$error_abort) { foreach ($languages as $lang) { if ( PHP_SAPI == 'cli' ) { echo "Validating language file for '$lang' ...\t\t"; } else { echo "
          3. \n
          4. Validating language file for '$lang' ... "; } $langfile = GESHI_LANG_ROOT . $lang . '.php'; $language_data = array(); if(!is_file($langfile)) { report_error(TYPE_ERROR, 'The path "' .$langfile. '" does not ressemble a regular file!'); } elseif(!is_readable($langfile)) { report_error(TYPE_ERROR, 'Cannot read file "' .$langfile. '"!'); } else { $langfile_content = file_get_contents($langfile); if(preg_match("/\?>(?:\r?\n|\r(?!\n)){2,}\Z/", $langfile_content)) { report_error(TYPE_ERROR, 'Language file contains trailing empty lines at EOF!'); } if(!preg_match("/\?>(?:\r?\n|\r(?!\n))?\Z/", $langfile_content)) { report_error(TYPE_ERROR, 'Language file contains no PHP end marker at EOF!'); } if(preg_match("/\t/", $langfile_content)) { report_error(TYPE_NOTICE, 'Language file contains unescaped tabulator chars (probably for indentation)!'); } if(preg_match('/^(?: )*(?! )(?! \*) /m', $langfile_content)) { report_error(TYPE_NOTICE, 'Language file contains irregular indentation (other than 4 spaces per indentation level)!'); } if(!preg_match("/\/\*\*((?!\*\/).)*?Author:((?!\*\/).)*?\*\//s", $langfile_content)) { report_error(TYPE_WARNING, 'Language file does not contain a specification of an author!'); } if(!preg_match("/\/\*\*((?!\*\/).)*?Copyright:((?!\*\/).)*?\*\//s", $langfile_content)) { report_error(TYPE_WARNING, 'Language file does not contain a specification of the copyright!'); } if(!preg_match("/\/\*\*((?!\*\/).)*?Release Version:((?!\*\/).)*?\*\//s", $langfile_content)) { report_error(TYPE_WARNING, 'Language file does not contain a specification of the release version!'); } if(!preg_match("/\/\*\*((?!\*\/).)*?Date Started:((?!\*\/).)*?\*\//s", $langfile_content)) { report_error(TYPE_WARNING, 'Language file does not contain a specification of the date it was started!'); } if(!preg_match("/\/\*\*((?!\*\/).)*?This file is part of GeSHi\.((?!\*\/).)*?\*\//s", $langfile_content)) { report_error(TYPE_WARNING, 'Language file does not state that it belongs to GeSHi!'); } if(!preg_match("/\/\*\*((?!\*\/).)*?language file for GeSHi\.((?!\*\/).)*?\*\//s", $langfile_content)) { report_error(TYPE_WARNING, 'Language file does not state that it is a language file for GeSHi!'); } if(!preg_match("/\/\*\*((?!\*\/).)*?GNU General Public License((?!\*\/).)*?\*\//s", $langfile_content)) { report_error(TYPE_WARNING, 'Language file does not state that it is provided under the terms of the GNU GPL!'); } unset($langfile_content); include $langfile; if(!isset($language_data)) { report_error(TYPE_ERROR, 'Language file does not contain a $language_data structure to check!'); } elseif (!is_array($language_data)) { report_error(TYPE_ERROR, 'Language file contains a $language_data structure which is not an array!'); } } if(!$error_abort) { if(!isset($language_data['LANG_NAME'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'LANG_NAME\'] specification!'); } elseif (!is_string($language_data['LANG_NAME'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'LANG_NAME\'] specification which is not a string!'); } if(!isset($language_data['COMMENT_SINGLE'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'COMMENT_SIGNLE\'] structure to check!'); } elseif (!is_array($language_data['COMMENT_SINGLE'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_SINGLE\'] structure which is not an array!'); } if(!isset($language_data['COMMENT_MULTI'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'COMMENT_MULTI\'] structure to check!'); } elseif (!is_array($language_data['COMMENT_MULTI'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_MULTI\'] structure which is not an array!'); } if(isset($language_data['COMMENT_REGEXP'])) { if (!is_array($language_data['COMMENT_REGEXP'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_REGEXP\'] structure which is not an array!'); } } if(!isset($language_data['QUOTEMARKS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'QUOTEMARKS\'] structure to check!'); } elseif (!is_array($language_data['QUOTEMARKS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'QUOTEMARKS\'] structure which is not an array!'); } if(isset($language_data['HARDQUOTE'])) { if (!is_array($language_data['HARDQUOTE'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'HARDQUOTE\'] structure which is not an array!'); } } if(!isset($language_data['ESCAPE_CHAR'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'ESCAPE_CHAR\'] specification to check!'); } elseif (!is_string($language_data['ESCAPE_CHAR'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'ESCAPE_CHAR\'] specification which is not a string!'); } elseif (1 < strlen($language_data['ESCAPE_CHAR'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'ESCAPE_CHAR\'] specification is not empty or exactly one char!'); } if(!isset($language_data['CASE_KEYWORDS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'CASE_KEYWORDS\'] specification!'); } elseif (!is_int($language_data['CASE_KEYWORDS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_KEYWORDS\'] specification which is not an integer!'); } elseif (GESHI_CAPS_NO_CHANGE != $language_data['CASE_KEYWORDS'] && GESHI_CAPS_LOWER != $language_data['CASE_KEYWORDS'] && GESHI_CAPS_UPPER != $language_data['CASE_KEYWORDS']) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_KEYWORDS\'] specification which is neither of GESHI_CAPS_NO_CHANGE, GESHI_CAPS_LOWER nor GESHI_CAPS_UPPER!'); } if(!isset($language_data['KEYWORDS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'KEYWORDS\'] structure to check!'); } elseif (!is_array($language_data['KEYWORDS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'KEYWORDS\'] structure which is not an array!'); } else { foreach($language_data['KEYWORDS'] as $kw_key => $kw_value) { if(!is_integer($kw_key)) { report_error(TYPE_WARNING, "Language file contains an key '$kw_key' in \$language_data['KEYWORDS'] that is not integer!"); } elseif (!is_array($kw_value)) { report_error(TYPE_ERROR, "Language file contains a \$language_data['KEYWORDS']['$kw_value'] structure which is not an array!"); } } } if(!isset($language_data['SYMBOLS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'SYMBOLS\'] structure to check!'); } elseif (!is_array($language_data['SYMBOLS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'SYMBOLS\'] structure which is not an array!'); } if(!isset($language_data['CASE_SENSITIVE'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'CASE_SENSITIVE\'] structure to check!'); } elseif (!is_array($language_data['CASE_SENSITIVE'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_SENSITIVE\'] structure which is not an array!'); } else { foreach($language_data['CASE_SENSITIVE'] as $cs_key => $cs_value) { if(!is_integer($cs_key)) { report_error(TYPE_WARNING, "Language file contains an key '$cs_key' in \$language_data['CASE_SENSITIVE'] that is not integer!"); } elseif (!is_bool($cs_value)) { report_error(TYPE_ERROR, "Language file contains a Case Sensitivity specification for \$language_data['CASE_SENSITIVE']['$cs_value'] which is not a boolean!"); } } } if(!isset($language_data['URLS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'URLS\'] structure to check!'); } elseif (!is_array($language_data['URLS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'URLS\'] structure which is not an array!'); } else { foreach($language_data['URLS'] as $url_key => $url_value) { if(!is_integer($url_key)) { report_error(TYPE_WARNING, "Language file contains an key '$url_key' in \$language_data['URLS'] that is not integer!"); } elseif (!is_string($url_value)) { report_error(TYPE_ERROR, "Language file contains a Documentation URL specification for \$language_data['URLS']['$url_value'] which is not a string!"); } elseif (preg_match('#&([^;]*(=|$))#U', $url_value)) { report_error(TYPE_ERROR, "Language file contains unescaped ampersands (&) in \$language_data['URLS']!"); } } } if(!isset($language_data['OOLANG'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OOLANG\'] specification!'); } elseif (!is_int($language_data['OOLANG']) && !is_bool($language_data['OOLANG'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OOLANG\'] specification which is neither boolean nor integer!'); } elseif (false !== $language_data['OOLANG'] && true !== $language_data['OOLANG'] && 2 !== $language_data['OOLANG']) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OOLANG\'] specification which is neither of false, true or 2!'); } if(!isset($language_data['OBJECT_SPLITTERS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OBJECT_SPLITTERS\'] structure to check!'); } elseif (!is_array($language_data['OBJECT_SPLITTERS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OBJECT_SPLITTERS\'] structure which is not an array!'); } if(!isset($language_data['REGEXPS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'REGEXPS\'] structure to check!'); } elseif (!is_array($language_data['REGEXPS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'REGEXPS\'] structure which is not an array!'); } if(!isset($language_data['STRICT_MODE_APPLIES'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'STRICT_MODE_APPLIES\'] specification!'); } elseif (!is_int($language_data['STRICT_MODE_APPLIES'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STRICT_MODE_APPLIES\'] specification which is not an integer!'); } elseif (GESHI_MAYBE != $language_data['STRICT_MODE_APPLIES'] && GESHI_ALWAYS != $language_data['STRICT_MODE_APPLIES'] && GESHI_NEVER != $language_data['STRICT_MODE_APPLIES']) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STRICT_MODE_APPLIES\'] specification which is neither of GESHI_MAYBE, GESHI_ALWAYS nor GESHI_NEVER!'); } if(!isset($language_data['SCRIPT_DELIMITERS'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'SCRIPT_DELIMITERS\'] structure to check!'); } elseif (!is_array($language_data['SCRIPT_DELIMITERS'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'SCRIPT_DELIMITERS\'] structure which is not an array!'); } if(!isset($language_data['HIGHLIGHT_STRICT_BLOCK'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'HIGHLIGHT_STRICT_BLOCK\'] structure to check!'); } elseif (!is_array($language_data['HIGHLIGHT_STRICT_BLOCK'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'HIGHLIGHT_STRICT_BLOCK\'] structure which is not an array!'); } if(isset($language_data['TAB_WIDTH'])) { if (!is_int($language_data['TAB_WIDTH'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'TAB_WIDTH\'] specification which is not an integer!'); } elseif (1 > $language_data['TAB_WIDTH']) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'TAB_WIDTH\'] specification which is less than 1!'); } } if(isset($language_data['PARSER_CONTROL'])) { if (!is_array($language_data['PARSER_CONTROL'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'PARSER_CONTROL\'] structure which is not an array!'); } } if(!isset($language_data['STYLES'])) { report_error(TYPE_ERROR, 'Language file contains no $language_data[\'STYLES\'] structure to check!'); } elseif (!is_array($language_data['STYLES'])) { report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STYLES\'] structure which is not an array!'); } else { $style_arrays = array('KEYWORDS', 'COMMENTS', 'ESCAPE_CHAR', 'BRACKETS', 'STRINGS', 'NUMBERS', 'METHODS', 'SYMBOLS', 'REGEXPS', 'SCRIPT'); foreach($style_arrays as $style_kind) { if(!isset($language_data['STYLES'][$style_kind])) { report_error(TYPE_ERROR, "Language file contains no \$language_data['STYLES']['$style_kind'] structure to check!"); } elseif (!is_array($language_data['STYLES'][$style_kind])) { report_error(TYPE_ERROR, "Language file contains a \$language_data['STYLES\']['$style_kind'] structure which is not an array!"); } else { foreach($language_data['STYLES'][$style_kind] as $sk_key => $sk_value) { if(!is_int($sk_key) && ('COMMENTS' != $style_kind && 'MULTI' != $sk_key) && !(('STRINGS' == $style_kind || 'ESCAPE_CHAR' == $style_kind) && 'HARD' == $sk_key)) { report_error(TYPE_WARNING, "Language file contains an key '$sk_key' in \$language_data['STYLES']['$style_kind'] that is not integer!"); } elseif (!is_string($sk_value)) { report_error(TYPE_WARNING, "Language file contains a CSS specification for \$language_data['STYLES']['$style_kind'][$key] which is not a string!"); } } } } unset($style_arrays); } } if(!$error_abort) { //Initial sanity checks survived? --> Let's dig deeper! foreach($language_data['KEYWORDS'] as $key => $keywords) { if(!isset($language_data['CASE_SENSITIVE'][$key])) { report_error(TYPE_ERROR, "Language file contains no \$language_data['CASE_SENSITIVE'] specification for keyword group $key!"); } if(!isset($language_data['URLS'][$key])) { report_error(TYPE_ERROR, "Language file contains no \$language_data['URLS'] specification for keyword group $key!"); } if(empty($keywords)) { report_error(TYPE_WARNING, "Language file contains an empty keyword list in \$language_data['KEYWORDS'] for group $key!"); } foreach($keywords as $id => $kw) { if(!is_string($kw)) { report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['KEYWORDS'][$key][$id]!"); } elseif (!strlen($kw)) { report_error(TYPE_ERROR, "Language file contains an empty string entry at \$language_data['KEYWORDS'][$key][$id]!"); } elseif (preg_match('/^([\(\)\{\}\[\]\^=.,:;\-+\*\/%\$\"\'\?]|&[\w#]\w*;)+$/i', $kw)) { report_error(TYPE_NOTICE, "Language file contains an keyword ('$kw') at \$language_data['KEYWORDS'][$key][$id] which seems to be better suited for the symbols section!"); } } if(isset($language_data['CASE_SENSITIVE'][$key]) && !$language_data['CASE_SENSITIVE'][$key]) { array_walk($keywords, 'dupfind_strtolower'); } if(count($keywords) != count(array_unique($keywords))) { $kw_diffs = array_count_values($keywords); foreach($kw_diffs as $kw => $kw_count) { if($kw_count > 1) { report_error(TYPE_WARNING, "Language file contains per-group duplicate keyword '$kw' in \$language_data['KEYWORDS'][$key]!"); } } } } $disallowed_before = "(?|^&"; $disallowed_after = "(?![a-zA-Z0-9_\|%\\-&;"; foreach($language_data['KEYWORDS'] as $key => $keywords) { foreach($language_data['KEYWORDS'] as $key2 => $keywords2) { if($key2 <= $key) { continue; } $kw_diffs = array_intersect($keywords, $keywords2); foreach($kw_diffs as $kw) { if(isset($language_data['PARSER_CONTROL']['KEYWORDS'])) { //Check the precondition\post-cindition for the involved keyword groups $g1_pre = $disallowed_before; $g2_pre = $disallowed_before; $g1_post = $disallowed_after; $g2_post = $disallowed_after; if(isset($language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'])) { $g1_pre = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE']; $g2_pre = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE']; } if(isset($language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'])) { $g1_post = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER']; $g2_post = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER']; } if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_BEFORE'])) { $g1_pre = $language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_BEFORE']; } if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_AFTER'])) { $g1_post = $language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_AFTER']; } if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_BEFORE'])) { $g2_pre = $language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_BEFORE']; } if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_AFTER'])) { $g2_post = $language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_AFTER']; } if($g1_pre != $g2_pre || $g1_post != $g2_post) { continue; } } report_error(TYPE_WARNING, "Language file contains cross-group duplicate keyword '$kw' in \$language_data['KEYWORDS'][$key] and \$language_data['KEYWORDS'][$key2]!"); } } } foreach($language_data['CASE_SENSITIVE'] as $key => $keywords) { if(!isset($language_data['KEYWORDS'][$key]) && $key != GESHI_COMMENTS) { report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['CASE_SENSITIVE'] specification for non-existing keyword group $key!"); } } foreach($language_data['URLS'] as $key => $keywords) { if(!isset($language_data['KEYWORDS'][$key])) { report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['URLS'] specification for non-existing keyword group $key!"); } } foreach($language_data['STYLES']['KEYWORDS'] as $key => $keywords) { if(!isset($language_data['KEYWORDS'][$key])) { report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['STYLES']['KEYWORDS'] specification for non-existing keyword group $key!"); } } foreach($language_data['COMMENT_SINGLE'] as $ck => $cv) { if(!is_int($ck)) { report_error(TYPE_WARNING, "Language file contains an key '$ck' in \$language_data['COMMENT_SINGLE'] that is not integer!"); } if(!is_string($cv)) { report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['COMMENT_SINGLE'][$ck]!"); } if(!isset($language_data['STYLES']['COMMENTS'][$ck])) { report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['COMMENTS'] specification for comment group $ck!"); } } if(isset($language_data['COMMENT_REGEXP'])) { foreach($language_data['COMMENT_REGEXP'] as $ck => $cv) { if(!is_int($ck)) { report_error(TYPE_WARNING, "Language file contains an key '$ck' in \$language_data['COMMENT_REGEXP'] that is not integer!"); } if(!is_string($cv)) { report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['COMMENT_REGEXP'][$ck]!"); } if(!isset($language_data['STYLES']['COMMENTS'][$ck])) { report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['COMMENTS'] specification for comment group $ck!"); } } } foreach($language_data['STYLES']['COMMENTS'] as $ck => $cv) { if($ck != 'MULTI' && !isset($language_data['COMMENT_SINGLE'][$ck]) && !isset($language_data['COMMENT_REGEXP'][$ck])) { report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['COMMENTS'] specification for Single Line or Regular-Expression Comment key $ck!"); } } if (isset($language_data['STYLES']['STRINGS']['HARD'])) { if (empty($language_data['HARDQUOTE'])) { report_error(TYPE_NOTICE, "Language file contains superfluous \$language_data['STYLES']['STRINGS'] specification for key 'HARD', but no 'HARDQUOTE's are defined!"); } unset($language_data['STYLES']['STRINGS']['HARD']); } foreach($language_data['STYLES']['STRINGS'] as $sk => $sv) { if($sk && !isset($language_data['QUOTEMARKS'][$sk])) { report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['STRINGS'] specification for non-existing quotemark key $sk!"); } } foreach($language_data['REGEXPS'] as $rk => $rv) { if(!is_int($rk)) { report_error(TYPE_WARNING, "Language file contains an key '$rk' in \$language_data['REGEXPS'] that is not integer!"); } if(is_string($rv)) { //Check for unmasked / in regular expressions ... if(empty($rv)) { report_error(TYPE_WARNING, "Language file contains an empty regular expression at \$language_data['REGEXPS'][$rk]!"); } else { if(preg_match("/(?)/s", $rv)) { report_error(TYPE_WARNING, "Language file contains a regular expression with an unescaped match for a pipe character '|' which needs escaping as '<PIPE>' instead at \$language_data['REGEXPS'][$rk]!"); } } } elseif(is_array($rv)) { if(!isset($rv[GESHI_SEARCH])) { report_error(TYPE_ERROR, "Language file contains no GESHI_SEARCH entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); } elseif(!is_string($rv[GESHI_SEARCH])) { report_error(TYPE_ERROR, "Language file contains a GESHI_SEARCH entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); } else { if(preg_match("/(?)/s", $rv[GESHI_SEARCH])) { report_error(TYPE_WARNING, "Language file contains a regular expression with an unescaped match for a pipe character '|' which needs escaping as '<PIPE>' instead at \$language_data['REGEXPS'][$rk]!"); } } if(!isset($rv[GESHI_REPLACE])) { report_error(TYPE_WARNING, "Language file contains no GESHI_REPLACE entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); } elseif(!is_string($rv[GESHI_REPLACE])) { report_error(TYPE_ERROR, "Language file contains a GESHI_REPLACE entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); } if(!isset($rv[GESHI_MODIFIERS])) { report_error(TYPE_WARNING, "Language file contains no GESHI_MODIFIERS entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); } elseif(!is_string($rv[GESHI_MODIFIERS])) { report_error(TYPE_ERROR, "Language file contains a GESHI_MODIFIERS entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); } if(!isset($rv[GESHI_BEFORE])) { report_error(TYPE_WARNING, "Language file contains no GESHI_BEFORE entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); } elseif(!is_string($rv[GESHI_BEFORE])) { report_error(TYPE_ERROR, "Language file contains a GESHI_BEFORE entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); } if(!isset($rv[GESHI_AFTER])) { report_error(TYPE_WARNING, "Language file contains no GESHI_AFTER entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); } elseif(!is_string($rv[GESHI_AFTER])) { report_error(TYPE_ERROR, "Language file contains a GESHI_AFTER entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); } } else { report_error(TYPE_WARNING, "Language file contains an non-string and non-array entry at \$language_data['REGEXPS'][$rk]!"); } if(!isset($language_data['STYLES']['REGEXPS'][$rk])) { report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['REGEXPS'] specification for regexp group $rk!"); } } foreach($language_data['STYLES']['REGEXPS'] as $rk => $rv) { if(!isset($language_data['REGEXPS'][$rk])) { report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['REGEXPS'] specification for regexp key $rk!"); } } } output_error_cache(); flush(); if($error_abort) { break; } } } $time_end = explode(' ', microtime()); $time_diff = $time_end[0] + $time_end[1] - $time_start[0] - $time_start[1]; if ( PHP_SAPI != 'cli' ) { ?>

          Validation process completed in seconds.

          Validation process completed in seconds. GeSHi © 2004-2007 Nigel McNie, 2007-2012 Benny Baumann, released under the GNU GPL geshi/contrib/example.php0000664000175000017500000002040712014173460014674 0ustar benbebenbe tag inside the list items (
        1. ) thus producing valid HTML markup. // HEADER_PRE puts the
           tag around the list (
            ) which is invalid in HTML 4 and XHTML 1 // HEADER_DIV puts a
            tag arount the list (valid!) but needs to replace whitespaces with   // thus producing much larger overhead. You can set the tab width though. $geshi->set_header_type(GESHI_HEADER_PRE_VALID); // Enable CSS classes. You can use get_stylesheet() to output a stylesheet for your code. Using // CSS classes results in much less output source. $geshi->enable_classes(); // Enable line numbers. We want fancy line numbers, and we want every 5th line number to be fancy $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 5); // Set the style for the PRE around the code. The line numbers are contained within this box (not // XHTML compliant btw, but if you are liberally minded about these things then you'll appreciate // the reduced source output). $geshi->set_overall_style('font: normal normal 90% monospace; color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', false); // Set the style for line numbers. In order to get style for line numbers working, the
          1. element // is being styled. This means that the code on the line will also be styled, and most of the time // you don't want this. So the set_code_style reverts styles for the line (by using a
            on the line). // So the source output looks like this: // //
              //
            1. GeSHi examples

              GeSHi Example Script

              To use this script, make sure that geshi.php is in the parent directory or in your include_path, and that the language files are in a subdirectory of GeSHi's directory called geshi/.

              Enter your source and a language to highlight the source in and submit, or just choose a language to have that language file highlighted in PHP.

              parse_code(); echo '
              '; } ?>

              Source to highlight

              Choose a language

              geshi/contrib/cssgen2.php0000664000175000017500000000407712014173461014613 0ustar benbebenbe geshi.css`. * * This file is part of GeSHi. * * GeSHi is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * GeSHi is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with GeSHi; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * @package geshi * @subpackage contrib * @author revulo * @copyright 2008 revulo * @license http://gnu.org/copyleft/gpl.html GNU GPL * */ require dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'geshi.php'; $geshi = new GeSHi; $languages = array(); if ($handle = opendir($geshi->language_path)) { while (($file = readdir($handle)) !== false) { $pos = strpos($file, '.'); if ($pos > 0 && substr($file, $pos) == '.php') { $languages[] = substr($file, 0, $pos); } } closedir($handle); } sort($languages); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="geshi.css"'); echo "/**\n". " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" . " * (http://qbnz.com/highlighter/ and http://geshi.org/)\n". " */\n"; foreach ($languages as $language) { $geshi->set_language($language); // note: the false argument is required for stylesheet generators, see API documentation $css = $geshi->get_stylesheet(false); echo preg_replace('/^\/\*\*.*?\*\//s', '', $css); }