First working commit. Works using <code type="whatvever">...</code>. Supports all languages supported by default in GeSHi
--- a/plugins/GeSHi.php Sun Feb 10 18:10:52 2008 -0500
+++ b/plugins/GeSHi.php Sun Feb 10 19:00:04 2008 -0500
@@ -0,0 +1,126 @@
+<?php
+/*
+Plugin Name: GeSHi syntax highlighting
+Plugin URI: http://enanocms.org/GeSHi_support
+Description: Adds syntax highlighting support using the GeSHi engine.
+Author: Dan Fuhry
+Version: 0.1
+Author URI: http://enanocms.org/
+*/
+
+/*
+ * GeSHi highlighting plugin for Enano
+ * Version 0.1
+ * Copyright (C) 2007 Dan Fuhry
+ *
+ * This program is Free Software; you can redistribute 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 details.
+ */
+
+global $db, $session, $paths, $template, $plugins; // Common objects
+$GLOBALS['geshi_supported_formats'] = array(
+ 'abap', 'blitzbasic', 'cpp-qt', 'd', 'idl', 'lua', 'ocaml', 'python', 'smalltalk', 'vhdl', 'actionscript', 'bnf', 'csharp',
+ 'eiffel', 'ini', 'm68k', 'oobas', 'qbasic', 'smarty', 'visualfoxpro', 'ada', 'caddcl', 'fortran', 'inno', 'matlab',
+ 'oracle8', 'rails', 'sql', 'winbatch', 'apache', 'cadlisp', 'css', 'freebasic', 'io', 'mirc', 'pascal', 'reg', 'tcl', 'xml',
+ 'applescript', 'cfdg', 'delphi', 'genero', 'java5', 'mpasm', 'perl', 'robots', 'text', 'xpp', 'asm', 'cfm', 'diff', 'gml', 'java',
+ 'mysql', 'per', 'ruby', 'thinbasic', 'z80', 'asp', 'c_mac', 'div', 'groovy', 'javascript', 'nsis', 'php-brief', 'sas', 'tsql',
+ 'autoit', 'c', 'dos', 'haskell', 'latex', 'objc', 'php', 'scheme', 'vbnet', 'bash', 'cpp', 'dot', 'html', 'lisp',
+ 'ocaml-brief', 'plsql', 'sdlbasic', 'vb'
+ );
+
+// Knock out the existing <code> tag support
+$plugins->attachHook('text_wiki_construct', 'geshi_disable_tw_code($this);');
+
+function geshi_disable_tw_code($tw)
+{
+ $tw->disable[] = 'Code';
+ foreach ( $tw->rules as $i => $rule )
+ {
+ if ( $rule == 'Code' )
+ {
+ unset($tw->rules[$i]);
+ return true;
+ }
+ }
+}
+
+// Prevent <code> tags from being stripped or sanitized (the plugin will handle all sanitation)
+$plugins->attachHook('render_sanitize_pre', 'geshi_strip_code($text, $geshi_code_blocks, $random_id);');
+$plugins->attachHook('render_sanitize_post', 'geshi_restore_code($text, $geshi_code_blocks, $random_id);');
+
+function geshi_strip_code(&$text, &$codeblocks, $random_id)
+{
+ global $geshi_supported_formats;
+ $codeblocks = array();
+ $sf = '(' . implode('|', $geshi_supported_formats) . ')';
+ preg_match_all('/<code type="?' . $sf . '"?>([\w\W]*?)<\/code>/ms', $text, $matches);
+
+ // for debug
+ /*
+ if ( strstr($text, '<code type') )
+ die('processing codes: <pre>' . htmlspecialchars(print_r($matches, true)) . '</pre><pre>' . htmlspecialchars($text) . '</pre>' . htmlspecialchars('/<code type="?' . $sf . '"?>([\w\W]*?)<\/code>/'));
+ */
+
+ foreach ( $matches[0] as $i => $match )
+ {
+ $codeblocks[$i] = array(
+ 'match' => $match,
+ 'lang' => $matches[1][$i],
+ 'code' => $matches[2][$i]
+ );
+ $text = str_replace_once($match, "{GESHI_BLOCK:$i:$random_id}", $text);
+ }
+}
+
+function geshi_restore_code(&$text, &$codeblocks, $random_id)
+{
+ foreach ( $codeblocks as $i => $match )
+ {
+ $text = str_replace_once("{GESHI_BLOCK:$i:$random_id}", $match['match'], $text);
+ }
+}
+
+// Formatter hook - where the actual highlighting is performed
+$plugins->attachHook('render_wikiformat_veryearly', 'geshi_strip_code($text, $codeblocks, $random_id);');
+$plugins->attachHook('render_wikiformat_post', 'geshi_perform_highlight($result, $codeblocks, $random_id);');
+
+function geshi_perform_highlight(&$text, &$codeblocks, $random_id)
+{
+ static $did_header_tweak = false;
+ if ( !$did_header_tweak )
+ {
+ $did_header_tweak = true;
+ global $template;
+ $template->add_header('<style type="text/css">
+ pre.geshi_highlighted {
+ max-height: 1000000px !important;
+ }
+ pre.geshi_highlighted a {
+ background-image: none !important;
+ padding-right: 0 !important;
+ }
+ </style>
+ ');
+ }
+ if ( !defined('GESHI_ROOT') )
+ define('GESHI_ROOT', ENANO_ROOT . '/plugins/geshi/');
+
+ require_once ( GESHI_ROOT . '/base.php' );
+
+ foreach ( $codeblocks as $i => $match )
+ {
+ $lang =& $match['lang'];
+ $code =& $match['code'];
+
+ $geshi = new GeSHi($code, $lang, null);
+ $geshi->set_header_type(GESHI_HEADER_PRE);
+ // $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS);
+ $geshi->set_overall_class('geshi_highlighted');
+ $parsed = $geshi->parse_code();
+
+ $text = str_replace_once("{GESHI_BLOCK:$i:$random_id}", $parsed, $text);
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/plugins/geshi/geshi/html.php Sun Feb 10 19:00:04 2008 -0500
@@ -0,0 +1,255 @@
+<?php
+/*************************************************************************************
+ * html4strict.php
+ * ---------------
+ * Author: Nigel McNie (nigel@geshi.org)
+ * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
+ * Release Version: 1.0.7.20
+ * Date Started: 2004/07/10
+ *
+ * HTML 4.01 strict language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2005/12/28 (1.0.4)
+ * - Removed escape character for strings
+ * 2004/11/27 (1.0.3)
+ * - Added support for multiple object splitters
+ * 2004/10/27 (1.0.2)
+ * - Added support for URLs
+ * 2004/08/05 (1.0.1)
+ * - Added INS and DEL
+ * - Removed the background colour from tags' styles
+ * 2004/07/14 (1.0.0)
+ * - First Release
+ *
+ * TODO (updated 2004/11/27)
+ * -------------------------
+ * * Check that only HTML4 strict attributes are highlighted
+ * * Eliminate empty tags that aren't allowed in HTML4 strict
+ * * Split to several files - html4trans, xhtml1 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' => 'HTML',
+ 'COMMENT_SINGLE' => array(),
+ 'COMMENT_MULTI' => array('<!--' => '-->'),
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array("'", '"'),
+ 'ESCAPE_CHAR' => '',
+ 'KEYWORDS' => array(
+ 1 => array(
+ ),
+ 2 => array(
+ '<a>', '<abbr>', '<acronym>', '<address>', '<applet>',
+ '<a', '<abbr', '<acronym', '<address', '<applet',
+ '</a>', '</abbr>', '</acronym>', '</address>', '</applet>',
+ '</a', '</abbr', '</acronym', '</address', '</applet',
+
+ '<base>', '<basefont>', '<bdo>', '<big>', '<blockquote>', '<body>', '<br>', '<button>', '<b>',
+ '<base', '<basefont', '<bdo', '<big', '<blockquote', '<body', '<br', '<button', '<b',
+ '</base>', '</basefont>', '</bdo>', '</big>', '</blockquote>', '</body>', '</br>', '</button>', '</b>',
+ '</base', '</basefont', '</bdo', '</big', '</blockquote', '</body', '</br', '</button', '</b',
+
+ '<caption>', '<center>', '<cite>', '<code>', '<colgroup>', '<col>',
+ '<caption', '<center', '<cite', '<code', '<colgroup', '<col',
+ '</caption>', '</center>', '</cite>', '</code>', '</colgroup>', '</col>',
+ '</caption', '</center', '</cite', '</code', '</colgroup', '</col',
+
+ '<dd>', '<del>', '<dfn>', '<dir>', '<div>', '<dl>', '<dt>',
+ '<dd', '<del', '<dfn', '<dir', '<div', '<dl', '<dt',
+ '</dd>', '</del>', '</dfn>', '</dir>', '</div>', '</dl>', '</dt>',
+ '</dd', '</del', '</dfn', '</dir', '</div', '</dl', '</dt',
+
+ '<em>',
+ '<em',
+ '</em>',
+ '</em',
+
+ '<fieldset>', '<font>', '<form>', '<frame>', '<frameset>',
+ '<fieldset', '<font', '<form', '<frame', '<frameset',
+ '</fieldset>', '</font>', '</form>', '</frame>', '</frameset>',
+ '</fieldset', '</font', '</form', '</frame', '</frameset',
+
+ '<h1>', '<h2>', '<h3>', '<h4>', '<h5>', '<h6>', '<head>', '<hr>', '<html>',
+ '<h1', '<h2', '<h3', '<h4', '<h5', '<h6', '<head', '<hr', '<html',
+ '</h1>', '</h2>', '</h3>', '</h4>', '</h5>', '</h6>', '</head>', '</hr>', '</html>',
+ '</h1', '</h2', '</h3', '</h4', '</h5', '</h6', '</head', '</hr', '</html',
+
+ '<iframe>', '<ilayer>', '<img>', '<input>', '<ins>', '<isindex>', '<i>',
+ '<iframe', '<ilayer', '<img', '<input', '<ins', '<isindex', '<i',
+ '</iframe>', '</ilayer>', '</img>', '</input>', '</ins>', '</isindex>', '</i>',
+ '</iframe', '</ilayer', '</img', '</input', '</ins', '</isindex', '</i',
+
+ '<kbd>',
+ '<kbd',
+ '&t;/kbd>',
+ '</kbd',
+
+ '<label>', '<legend>', '<link>', '<li>',
+ '<label', '<legend', '<link', '<li',
+ '</label>', '</legend>', '</link>', '</li>',
+ '</label', '</legend', '</link', '</li',
+
+ '<map>', '<meta>',
+ '<map', '<meta',
+ '</map>', '</meta>',
+ '</map', '</meta',
+
+ '<noframes>', '<noscript>',
+ '<noframes', '<noscript',
+ '</noframes>', '</noscript>',
+ '</noframes', '</noscript',
+
+ '<object>', '<ol>', '<optgroup>', '<option>',
+ '<object', '<ol', '<optgroup', '<option',
+ '</object>', '</ol>', '</optgroup>', '</option>',
+ '</object', '</ol', '</optgroup', '</option',
+
+ '<param>', '<pre>', '<p>',
+ '<param', '<pre', '<p',
+ '</param>', '</pre>', '</p>',
+ '</param', '</pre', '</p',
+
+ '<q>',
+ '<q',
+ '</q>',
+ '</q',
+
+ '<samp>', '<script>', '<select>', '<small>', '<span>', '<strike>', '<strong>', '<style>', '<sub>', '<sup>', '<s>',
+ '<samp', '<script', '<select', '<small', '<span', '<strike', '<strong', '<style', '<sub', '<sup', '<s',
+ '</samp>', '</script>', '</select>', '</small>', '</span>', '</strike>', '</strong>', '</style>', '</sub>', '</sup>', '</s>',
+ '</samp', '</script', '</select', '</small', '</span', '</strike', '</strong', '</style', '</sub', '</sup', '</s',
+
+ '<table>', '<tbody>', '<td>', '<textarea>', '<text>', '<tfoot>', '<thead>', '<th>', '<title>', '<tr>', '<tt>',
+ '<table', '<tbody', '<td', '<textarea', '<text', '<tfoot', '<tfoot', '<thead', '<th', '<title', '<tr', '<tt',
+ '</table>', '</tbody>', '</td>', '</textarea>', '</text>', '</tfoot>', '</thead', '</tfoot', '</th>', '</title>', '</tr>', '</tt>',
+ '</table', '</tbody', '</td', '</textarea', '</text', '</tfoot', '</tfoot', '</thead', '</th', '</title', '</tr', '</tt',
+
+ '<ul>', '<u>',
+ '<ul', '<u',
+ '</ul>', '</ul>',
+ '</ul', '</u',
+
+ '<var>',
+ '<var',
+ '</var>',
+ '</var',
+
+ '>', '<'
+ ),
+ 3 => array(
+ 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis',
+ 'background', 'bgcolor', 'border',
+ 'cellpadding', 'cellspacing', 'char', '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,
+ 1 => false,
+ 2 => false,
+ 3 => false,
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'color: #b1b100;',
+ 2 => 'color: #000000; font-weight: bold;',
+ 3 => 'color: #000066;'
+ ),
+ '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: #009900;'
+ ),
+ 'REGEXPS' => array(
+ )
+ ),
+ 'URLS' => array(
+ 1 => '',
+ 2 => 'http://december.com/html/4/element/{FNAME}.html',
+ 3 => ''
+ ),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
+ 'SCRIPT_DELIMITERS' => array(
+ 0 => array(
+ '<!DOCTYPE' => '>'
+ ),
+ 1 => array(
+ '&' => ';'
+ ),
+ 2 => array(
+ '<' => '>'
+ )
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ 0 => false,
+ 1 => false,
+ 2 => true
+ ),
+ 'TAB_WIDTH' => 4
+);
+
+?>
--- a/plugins/geshi/geshi/html4strict.php Sun Feb 10 18:10:52 2008 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,255 +0,0 @@
-<?php
-/*************************************************************************************
- * html4strict.php
- * ---------------
- * Author: Nigel McNie (nigel@geshi.org)
- * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.7.20
- * Date Started: 2004/07/10
- *
- * HTML 4.01 strict language file for GeSHi.
- *
- * CHANGES
- * -------
- * 2005/12/28 (1.0.4)
- * - Removed escape character for strings
- * 2004/11/27 (1.0.3)
- * - Added support for multiple object splitters
- * 2004/10/27 (1.0.2)
- * - Added support for URLs
- * 2004/08/05 (1.0.1)
- * - Added INS and DEL
- * - Removed the background colour from tags' styles
- * 2004/07/14 (1.0.0)
- * - First Release
- *
- * TODO (updated 2004/11/27)
- * -------------------------
- * * Check that only HTML4 strict attributes are highlighted
- * * Eliminate empty tags that aren't allowed in HTML4 strict
- * * Split to several files - html4trans, xhtml1 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' => 'HTML',
- 'COMMENT_SINGLE' => array(),
- 'COMMENT_MULTI' => array('<!--' => '-->'),
- 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
- 'QUOTEMARKS' => array("'", '"'),
- 'ESCAPE_CHAR' => '',
- 'KEYWORDS' => array(
- 1 => array(
- ),
- 2 => array(
- '<a>', '<abbr>', '<acronym>', '<address>', '<applet>',
- '<a', '<abbr', '<acronym', '<address', '<applet',
- '</a>', '</abbr>', '</acronym>', '</address>', '</applet>',
- '</a', '</abbr', '</acronym', '</address', '</applet',
-
- '<base>', '<basefont>', '<bdo>', '<big>', '<blockquote>', '<body>', '<br>', '<button>', '<b>',
- '<base', '<basefont', '<bdo', '<big', '<blockquote', '<body', '<br', '<button', '<b',
- '</base>', '</basefont>', '</bdo>', '</big>', '</blockquote>', '</body>', '</br>', '</button>', '</b>',
- '</base', '</basefont', '</bdo', '</big', '</blockquote', '</body', '</br', '</button', '</b',
-
- '<caption>', '<center>', '<cite>', '<code>', '<colgroup>', '<col>',
- '<caption', '<center', '<cite', '<code', '<colgroup', '<col',
- '</caption>', '</center>', '</cite>', '</code>', '</colgroup>', '</col>',
- '</caption', '</center', '</cite', '</code', '</colgroup', '</col',
-
- '<dd>', '<del>', '<dfn>', '<dir>', '<div>', '<dl>', '<dt>',
- '<dd', '<del', '<dfn', '<dir', '<div', '<dl', '<dt',
- '</dd>', '</del>', '</dfn>', '</dir>', '</div>', '</dl>', '</dt>',
- '</dd', '</del', '</dfn', '</dir', '</div', '</dl', '</dt',
-
- '<em>',
- '<em',
- '</em>',
- '</em',
-
- '<fieldset>', '<font>', '<form>', '<frame>', '<frameset>',
- '<fieldset', '<font', '<form', '<frame', '<frameset',
- '</fieldset>', '</font>', '</form>', '</frame>', '</frameset>',
- '</fieldset', '</font', '</form', '</frame', '</frameset',
-
- '<h1>', '<h2>', '<h3>', '<h4>', '<h5>', '<h6>', '<head>', '<hr>', '<html>',
- '<h1', '<h2', '<h3', '<h4', '<h5', '<h6', '<head', '<hr', '<html',
- '</h1>', '</h2>', '</h3>', '</h4>', '</h5>', '</h6>', '</head>', '</hr>', '</html>',
- '</h1', '</h2', '</h3', '</h4', '</h5', '</h6', '</head', '</hr', '</html',
-
- '<iframe>', '<ilayer>', '<img>', '<input>', '<ins>', '<isindex>', '<i>',
- '<iframe', '<ilayer', '<img', '<input', '<ins', '<isindex', '<i',
- '</iframe>', '</ilayer>', '</img>', '</input>', '</ins>', '</isindex>', '</i>',
- '</iframe', '</ilayer', '</img', '</input', '</ins', '</isindex', '</i',
-
- '<kbd>',
- '<kbd',
- '&t;/kbd>',
- '</kbd',
-
- '<label>', '<legend>', '<link>', '<li>',
- '<label', '<legend', '<link', '<li',
- '</label>', '</legend>', '</link>', '</li>',
- '</label', '</legend', '</link', '</li',
-
- '<map>', '<meta>',
- '<map', '<meta',
- '</map>', '</meta>',
- '</map', '</meta',
-
- '<noframes>', '<noscript>',
- '<noframes', '<noscript',
- '</noframes>', '</noscript>',
- '</noframes', '</noscript',
-
- '<object>', '<ol>', '<optgroup>', '<option>',
- '<object', '<ol', '<optgroup', '<option',
- '</object>', '</ol>', '</optgroup>', '</option>',
- '</object', '</ol', '</optgroup', '</option',
-
- '<param>', '<pre>', '<p>',
- '<param', '<pre', '<p',
- '</param>', '</pre>', '</p>',
- '</param', '</pre', '</p',
-
- '<q>',
- '<q',
- '</q>',
- '</q',
-
- '<samp>', '<script>', '<select>', '<small>', '<span>', '<strike>', '<strong>', '<style>', '<sub>', '<sup>', '<s>',
- '<samp', '<script', '<select', '<small', '<span', '<strike', '<strong', '<style', '<sub', '<sup', '<s',
- '</samp>', '</script>', '</select>', '</small>', '</span>', '</strike>', '</strong>', '</style>', '</sub>', '</sup>', '</s>',
- '</samp', '</script', '</select', '</small', '</span', '</strike', '</strong', '</style', '</sub', '</sup', '</s',
-
- '<table>', '<tbody>', '<td>', '<textarea>', '<text>', '<tfoot>', '<thead>', '<th>', '<title>', '<tr>', '<tt>',
- '<table', '<tbody', '<td', '<textarea', '<text', '<tfoot', '<tfoot', '<thead', '<th', '<title', '<tr', '<tt',
- '</table>', '</tbody>', '</td>', '</textarea>', '</text>', '</tfoot>', '</thead', '</tfoot', '</th>', '</title>', '</tr>', '</tt>',
- '</table', '</tbody', '</td', '</textarea', '</text', '</tfoot', '</tfoot', '</thead', '</th', '</title', '</tr', '</tt',
-
- '<ul>', '<u>',
- '<ul', '<u',
- '</ul>', '</ul>',
- '</ul', '</u',
-
- '<var>',
- '<var',
- '</var>',
- '</var',
-
- '>', '<'
- ),
- 3 => array(
- 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis',
- 'background', 'bgcolor', 'border',
- 'cellpadding', 'cellspacing', 'char', '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,
- 1 => false,
- 2 => false,
- 3 => false,
- ),
- 'STYLES' => array(
- 'KEYWORDS' => array(
- 1 => 'color: #b1b100;',
- 2 => 'color: #000000; font-weight: bold;',
- 3 => 'color: #000066;'
- ),
- '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: #009900;'
- ),
- 'REGEXPS' => array(
- )
- ),
- 'URLS' => array(
- 1 => '',
- 2 => 'http://december.com/html/4/element/{FNAME}.html',
- 3 => ''
- ),
- 'OOLANG' => false,
- 'OBJECT_SPLITTERS' => array(
- ),
- 'REGEXPS' => array(
- ),
- 'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
- 'SCRIPT_DELIMITERS' => array(
- 0 => array(
- '<!DOCTYPE' => '>'
- ),
- 1 => array(
- '&' => ';'
- ),
- 2 => array(
- '<' => '>'
- )
- ),
- 'HIGHLIGHT_STRICT_BLOCK' => array(
- 0 => false,
- 1 => false,
- 2 => true
- ),
- 'TAB_WIDTH' => 4
-);
-
-?>