diff --git a/data/pages/wiki/syntax.txt b/data/pages/wiki/syntax.txt
index 8aeee703e74c0d54529e3873e4ad470c02b6b5fd..4cd0dfcc9876d2a7128b40cd23b4b9201d1986cd 100644
--- a/data/pages/wiki/syntax.txt
+++ b/data/pages/wiki/syntax.txt
@@ -382,7 +382,7 @@ class HelloWorldApp {
 }
 </code>
 
-The following language strings are currently recognized: //abap, actionscript-french, actionscript, actionscript3, ada, apache, applescript, asm, asp, autoit, avisynth, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_mac, caddcl, cadlisp, cfdg, cfm, cil, cmake, cobol, cpp, cpp-qt, csharp, css, d, dcs, delphi, diff, div, dos, dot, eiffel, email, erlang, fo, fortran, freebasic, genero, glsl, gml, gnuplot, groovy, gettext, haskell, hq9plus, html, idl, ini, inno, intercal, io, java5, java, javascript, kixtart, klonec, klonecpp, latex, lisp, locobasic, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, make, matlab, mirc, modula3, mpasm, mxml, mysql, nsis, oberon2, objc, ocaml-brief, ocaml, oobas, oracle8, oracle11, pascal, perl, per, php-brief, php, pic16, pixelbender, plsql, povray, powershell, progress, prolog, properties, providex, python, qbasic, rails, rebol, reg, robots, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, tcl, teraterm, text, thinbasic, tsql, typoscript, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, winbatch, whois, xml, xorg_conf, xpp, z80//
+The following language strings are currently recognized: //4cs, abap, actionscript-french, actionscript, actionscript3, ada, apache, applescript, asm, asp, autohotkey, autoit, avisynth, awk, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_mac, caddcl, cadlisp, cfdg, cfm, cil, clojure, cmake, cobol, cpp, cpp-qt, csharp, css, cuesheet, d, dcs, delphi, diff, div, dos, dot, eiffel, email, erlang, fo, fortran, freebasic, fsharp, gambas, genero, gdb, glsl, gml, gnuplot, groovy, gettext, haskell, hq9plus, html, idl, ini, inno, intercal, io, java5, java, javascript, jquery, kixtart, klonec, klonecpp, latex, lisp, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, make, mapbasic, matlab, mirc, modula3, mmix, mpasm, mxml, mysql, newlisp, nsis, oberon2, objc, ocaml-brief, ocaml, oobas, oracle8, oracle11, pascal, perl, perl6, per, php-brief, php, pike, pic16, pixelbender, plsql, povray, powerbuilder, powershell, progress, prolog, properties, providex, purebasic, python, qbasic, rails, rebol, reg, robots, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, winbatch, whois, xml, xorg_conf, xpp, z80//
 
 ==== Downloadable Code Blocks ====
 
diff --git a/inc/geshi.php b/inc/geshi.php
index abe69a2bd92e28d2ba1475e502449e7ba7be314e..14acf15a677da268c5fb6093df3ce83a4e1f20fa 100644
--- a/inc/geshi.php
+++ b/inc/geshi.php
@@ -41,7 +41,7 @@
 //
 
 /** The version of this GeSHi file */
-define('GESHI_VERSION', '1.0.8.4');
+define('GESHI_VERSION', '1.0.8.6');
 
 // Define the root directory for the GeSHi code tree
 if (!defined('GESHI_ROOT')) {
@@ -207,8 +207,10 @@ define('GESHI_NUMBER_BIN_PREFIX_PERCENT', 32);   //%[01]+
 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 suffix of o */
-define('GESHI_NUMBER_OCT_SUFFIX', 512);           //[0-7]+[oO]
+define('GESHI_NUMBER_OCT_SUFFIX', 1024);           //[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 suffix of h */
@@ -1084,13 +1086,14 @@ class GeSHi {
      * @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) {
+    function set_strings_style($style, $preserve_defaults = false, $group = 0) {
         if (!$preserve_defaults) {
-            $this->language_data['STYLES']['STRINGS'][0] = $style;
+            $this->language_data['STYLES']['STRINGS'][$group] = $style;
         } else {
-            $this->language_data['STYLES']['STRINGS'][0] .= $style;
+            $this->language_data['STYLES']['STRINGS'][$group] .= $style;
         }
     }
 
@@ -1132,13 +1135,14 @@ class GeSHi {
      * @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) {
+    function set_numbers_style($style, $preserve_defaults = false, $group = 0) {
         if (!$preserve_defaults) {
-            $this->language_data['STYLES']['NUMBERS'][0] = $style;
+            $this->language_data['STYLES']['NUMBERS'][$group] = $style;
         } else {
-            $this->language_data['STYLES']['NUMBERS'][0] .= $style;
+            $this->language_data['STYLES']['NUMBERS'][$group] .= $style;
         }
     }
 
@@ -1370,6 +1374,7 @@ class GeSHi {
                 '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'),
@@ -1966,31 +1971,33 @@ class GeSHi {
             //All this formats are matched case-insensitively!
             static $numbers_format = array(
                 GESHI_NUMBER_INT_BASIC =>
-                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)(?![0-9a-z]|\.(?!(?m:$)))',
+                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_INT_CSTYLE =>
-                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)l(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)l(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_BIN_SUFFIX =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[01]+?b(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[01]+?[bB](?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_BIN_PREFIX_PERCENT =>
-                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])%[01]+?(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])%[01]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_BIN_PREFIX_0B =>
-                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])0b[01]+?(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])0b[01]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_OCT_PREFIX =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0[0-7]+?(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0[0-7]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
+                GESHI_NUMBER_OCT_PREFIX_0O =>
+                    '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])0o[0-7]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_OCT_SUFFIX =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[0-7]+?o(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[0-7]+?o(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_HEX_PREFIX =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0x[0-9a-f]+?(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0x[0-9a-fA-F]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_HEX_SUFFIX =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d[0-9a-f]*?h(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d[0-9a-fA-F]*?[hH](?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_FLT_NONSCI =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d+?\.\d+?(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d+?\.\d+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_FLT_NONSCI_F =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)f(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)f(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_FLT_SCI_SHORT =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\.\d+?(?:e[+\-]?\d+?)?(?![0-9a-z\.])',
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\.\d+?(?:e[+\-]?\d+?)?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)',
                 GESHI_NUMBER_FLT_SCI_ZERO =>
-                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)(?:e[+\-]?\d+?)?(?![0-9a-z\.])'
+                    '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)(?:e[+\-]?\d+?)?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)'
                 );
 
             //At this step we have an associative array with flag groups for a
@@ -2012,7 +2019,7 @@ class GeSHi {
                 }
 
                 $this->language_data['NUMBERS_RXCACHE'][$key] =
-                    "/(?<!<\|\/)(?<!<\|!REG3XP)(?<!<\|\/NUM!)(?<!\d\/>)($regexp)(?!\|>)(?![^\"\|\>\<]+<)/i";
+                    "/(?<!<\|\/)(?<!<\|!REG3XP)(?<!<\|\/NUM!)(?<!\d\/>)($regexp)(?!(?:<DOT>|[^\<])+>)(?![^<]*>)(?!\|>)(?!\/>)/i"; //
             }
         }
 
@@ -2033,6 +2040,10 @@ class GeSHi {
         // 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
@@ -2053,13 +2064,6 @@ class GeSHi {
             $this->build_parse_cache();
         }
 
-        // Replace all newlines to a common form.
-        $code = str_replace("\r\n", "\n", $this->source);
-        $code = str_replace("\r", "\n", $code);
-
-        // Add spaces for regular expression matching and line numbers
-//        $code = "\n" . $code . "\n";
-
         // Initialise various stuff
         $length           = strlen($code);
         $COMMENT_MATCHED  = false;
@@ -3087,7 +3091,7 @@ class GeSHi {
         $result = preg_replace('/^ /m', '&nbsp;', $result);
         $result = str_replace('  ', ' &nbsp;', $result);
 
-        if ($this->line_numbers == GESHI_NO_LINE_NUMBERS) {
+        if ($this->line_numbers == GESHI_NO_LINE_NUMBERS && $this->header_type != GESHI_HEADER_PRE_TABLE) {
             if ($this->line_ending === null) {
                 $result = nl2br($result);
             } else {
@@ -3430,7 +3434,7 @@ class GeSHi {
         //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("/<\|(?:<DOT>|[^>])+>(?:(?!\|>).*?)\|>|<\/a>|(?:" . $this->language_data['SYMBOL_SEARCH'] . ")+/", $stuff_to_parse, $pot_symbols, PREG_OFFSET_CAPTURE | PREG_SET_ORDER);
+            $n_symbols = preg_match_all("/<\|(?:<DOT>|[^>])+>(?:(?!\|>).*?)\|>|<\/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];
@@ -3969,16 +3973,16 @@ class GeSHi {
          * @todo   Document behaviour change - class is outputted regardless of whether
          *         we're using classes or not. Same with style
          */
-        $attributes = ' class="' . $this->language;
+        $attributes = ' class="' . $this->_genCSSName($this->language);
         if ($this->overall_class != '') {
-            $attributes .= " ".$this->overall_class;
+            $attributes .= " ".$this->_genCSSName($this->overall_class);
         }
         $attributes .= '"';
 
         if ($this->overall_id != '') {
             $attributes .= " id=\"{$this->overall_id}\"";
         }
-        if ($this->overall_style != '') {
+        if ($this->overall_style != '' && !$this->use_classes) {
             $attributes .= ' style="' . $this->overall_style . '"';
         }
 
@@ -4215,6 +4219,10 @@ class GeSHi {
         return strtr($string, $aTransSpecchar);
     }
 
+    function _genCSSName($name){
+        return (is_numeric($name[0]) ? '_' : '') . $name;
+    }
+
     /**
      * Returns a stylesheet for the highlighted code. If $economy mode
      * is true, we only return the stylesheet declarations that matter for
@@ -4242,11 +4250,11 @@ class GeSHi {
         // that should be used, the same for a class. Otherwise, a selector
         // of '' means that these styles will be applied anywhere
         if ($this->overall_id) {
-            $selector = '#' . $this->overall_id;
+            $selector = '#' . $this->_genCSSName($this->overall_id);
         } else {
-            $selector = '.' . $this->language;
+            $selector = '.' . $this->_genCSSName($this->language);
             if ($this->overall_class) {
-                $selector .= '.' . $this->overall_class;
+                $selector .= '.' . $this->_genCSSName($this->overall_class);
             }
         }
         $selector .= ' ';
@@ -4555,7 +4563,10 @@ class GeSHi {
         // 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) {
-            $regexp_list[++$list_key] = $new_entry;
+            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;
diff --git a/inc/geshi/4cs.php b/inc/geshi/4cs.php
new file mode 100644
index 0000000000000000000000000000000000000000..6ce702fbc13c02a0433dd0089c032516b870173e
--- /dev/null
+++ b/inc/geshi/4cs.php
@@ -0,0 +1,139 @@
+<?php
+/*************************************************************************************
+ * 4cs.php
+ * ------
+ * Author: Jason Curl (jason.curl@continental-corporation.com)
+ * Copyright: (c) 2009 Jason Curl
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/09/05
+ *
+ * 4CS language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/09/05
+ *   -  First Release
+ *
+ * TODO (updated 2009/09/01)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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(
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/abap.php b/inc/geshi/abap.php
index 229de9891ca3b80907df8c26fc931ebaca45bdc6..fa69c92f9cf94870dec2a1c945c8dfd628de181c 100644
--- a/inc/geshi/abap.php
+++ b/inc/geshi/abap.php
@@ -7,7 +7,7 @@
  *  - Sandra Rossi (sandra.rossi@gmail.com)
  *  - Jacob Laursen (jlu@kmd.dk)
  * Copyright: (c) 2007 Andres Picazo
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * ABAP language file for GeSHi.
diff --git a/inc/geshi/actionscript.php b/inc/geshi/actionscript.php
index 016dc8e9098f73eb2d27bec8363740b8ac049d40..394a463c41e4c42f19cefbc65fd8ee1648cb6422 100644
--- a/inc/geshi/actionscript.php
+++ b/inc/geshi/actionscript.php
@@ -4,7 +4,7 @@
  * ----------------
  * Author: Steffen Krause (Steffen.krause@muse.de)
  * Copyright: (c) 2004 Steffen Krause, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/20
  *
  * Actionscript language file for GeSHi.
diff --git a/inc/geshi/actionscript3.php b/inc/geshi/actionscript3.php
index a54e9d4df3cea58e5a3dfdb29de999e283cc8986..8449173e852b156e66fb65f136c667773d7e7dec 100644
--- a/inc/geshi/actionscript3.php
+++ b/inc/geshi/actionscript3.php
@@ -4,7 +4,7 @@
  * ----------------
  * Author: Jordi Boggiano (j.boggiano@seld.be)
  * Copyright: (c) 2007 Jordi Boggiano (http://www.seld.be/), Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/11/26
  *
  * ActionScript3 language file for GeSHi.
diff --git a/inc/geshi/ada.php b/inc/geshi/ada.php
index 530ed5e4c693a157a8975f0de343564ca8075e4f..4c112f0dbc58ade70c16a07d08ed3852e2236341 100644
--- a/inc/geshi/ada.php
+++ b/inc/geshi/ada.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Tux (tux@inmail.cz)
  * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/29
  *
  * Ada language file for GeSHi.
@@ -57,14 +57,16 @@ $language_data = array (
             'goto', 'return'
             ),
         2 => array(
-            'abs', 'and', 'mod', 'not', 'or', 'rem', 'xor'
+            'abs', 'and', 'at', 'mod', 'not', 'or', 'rem', 'xor'
             ),
         3 => array(
-            'abort', 'abstract', 'accept', 'access', 'aliased', 'all', 'array', 'at', 'body',
-            'constant', 'delay', 'delta', 'digits', 'entry', 'exit',
-            'function', 'generic', 'in', 'limited', 'new', 'null', 'of', 'others', 'out', 'package', 'pragma',
-            'private', 'procedure', 'protected', 'raise', 'range', 'record', 'renames', 'requeue', 'reverse',
-            'separate', 'subtype', 'tagged', 'task', 'terminate', 'type', 'use', 'when', 'with'
+            '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(
@@ -130,4 +132,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/apache.php b/inc/geshi/apache.php
index f319e3e3cd7bf66283885526491c6d4bf72d5e27..a5b651bb6f0791200650b212c4633794f7eebeb4 100644
--- a/inc/geshi/apache.php
+++ b/inc/geshi/apache.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Tux (tux@inmail.cz)
  * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/29/07
  *
  * Apache language file for GeSHi.
diff --git a/inc/geshi/applescript.php b/inc/geshi/applescript.php
index 85e3d6d0dabf9c0eaec876b3cdd875d15219464a..8a07d00b58e6fdfdca40cfece7e4c20bd6d74867 100644
--- a/inc/geshi/applescript.php
+++ b/inc/geshi/applescript.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Stephan Klimek (http://www.initware.org)
  * Copyright: Stephan Klimek (http://www.initware.org)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/07/20
  *
  * AppleScript language file for GeSHi.
diff --git a/inc/geshi/apt_sources.php b/inc/geshi/apt_sources.php
index 891c10e5e378343bddcb10abd3b3caceb25dc4ce..fe1711fdd6814723d3187714f81f21ac0fa38196 100644
--- a/inc/geshi/apt_sources.php
+++ b/inc/geshi/apt_sources.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Milian Wolff (mail@milianw.de)
  * Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/06/17
  *
  * Apt sources.list language file for GeSHi.
diff --git a/inc/geshi/asm.php b/inc/geshi/asm.php
index 2efeac9dcc32307fede72a60375ad892f5f4aca5..49699b900a4bc4f7e905febf71ecf3461663b5a0 100644
--- a/inc/geshi/asm.php
+++ b/inc/geshi/asm.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Tux (tux@inmail.cz)
  * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/27
  *
  * x86 Assembler language file for GeSHi.
diff --git a/inc/geshi/asp.php b/inc/geshi/asp.php
index 7bfec11e15291cff279aace3a57b0950e1dc710e..6e799a802185b85f93f0794edef79b6efcbb8546 100644
--- a/inc/geshi/asp.php
+++ b/inc/geshi/asp.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Amit Gupta (http://blog.igeek.info/)
  * Copyright: (c) 2004 Amit Gupta (http://blog.igeek.info/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/13
  *
  * ASP language file for GeSHi.
@@ -151,7 +151,7 @@ $language_data = array (
         2 => array(
             '<script language="javascript" runat="server">' => '</script>'
             ),
-        3 => "/(?<start><%=?)(?:\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(?<end>%>|\Z)/sm"
+        3 => "/(?P<start><%=?)(?:\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(?P<end>%>|\Z)/sm"
         ),
     'HIGHLIGHT_STRICT_BLOCK' => array(
         0 => true,
diff --git a/inc/geshi/autohotkey.php b/inc/geshi/autohotkey.php
new file mode 100644
index 0000000000000000000000000000000000000000..1a6346340f295c260acc37b5da761e964a1a7ba5
--- /dev/null
+++ b/inc/geshi/autohotkey.php
@@ -0,0 +1,373 @@
+<?php
+/*************************************************************************************
+ * autohotkey.php
+ * --------
+ * Author: Naveen Garg (naveen.garg@gmail.com)
+ * Copyright: (c) 2009 Naveen Garg and GeSHi
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/06/11
+ *
+ * Autohotkey language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * Release 1.0.8.5 (2009/06/11)
+ * - First Release
+ *
+ * TODO
+ * ----
+ * Reference: http://www.autohotkey.com/docs/
+ *
+ *************************************************************************************
+ *
+ *     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' => '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' => '(?<!\w)\#'
+                )
+            )
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/autoit.php b/inc/geshi/autoit.php
index 526fe5d991b4125bab232179fa435bdd45e58444..e3185d06337b29f289271c1e9cff8026a6f70e94 100644
--- a/inc/geshi/autoit.php
+++ b/inc/geshi/autoit.php
@@ -4,7 +4,7 @@
  * --------
  * Author: big_daddy (robert.i.anthony@gmail.com)
  * Copyright: (c) 2006 and to GESHi ;)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/01/26
  *
  * AutoIT language file for GeSHi.
diff --git a/inc/geshi/avisynth.php b/inc/geshi/avisynth.php
index c0526e9569136e906b12d771fd8d47fd0cf5aa78..9031e8caaca422c2a096313422147364cf510033 100644
--- a/inc/geshi/avisynth.php
+++ b/inc/geshi/avisynth.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Ryan Jones (sciguyryan@gmail.com)
  * Copyright: (c) 2008 Ryan Jones
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/10/08
  *
  * AviSynth language file for GeSHi.
diff --git a/inc/geshi/awk.php b/inc/geshi/awk.php
new file mode 100644
index 0000000000000000000000000000000000000000..abecf72b56a1bbc8f12493f67f18dff9cd5a14ef
--- /dev/null
+++ b/inc/geshi/awk.php
@@ -0,0 +1,158 @@
+<?php
+/************************************************
+ * awk.php
+ * -------
+ * Author: George Pollard (porges@porg.es)
+ * Copyright: (c) 2009 George Pollard
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/01/28
+ *
+ * Awk language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/01/28 (1.0.8.5)
+ *   -  First Release
+ *
+ * TODO (updated 2009/01/28)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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()
+);
+
+?>
diff --git a/inc/geshi/bash.php b/inc/geshi/bash.php
index bb0a571bad3e5f1a15b2c8a3371fa049c7ec3006..0b1583b7be8d284c3ac2d4f69b07814de30cc957 100644
--- a/inc/geshi/bash.php
+++ b/inc/geshi/bash.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Andreas Gohr (andi@splitbrain.org)
  * Copyright: (c) 2004 Andreas Gohr, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/20
  *
  * BASH language file for GeSHi.
@@ -119,9 +119,51 @@ $language_data = array (
             'gimptool', 'gmake', 'gocr', 'grep', 'groups', 'gs', 'gunzip',
             'gzexe', 'gzip',
 
+            'git', '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', 'igawk', 'install',
+            'id', 'ifconfig', 'ifdown', 'ifup', 'igawk', 'install',
 
             'join',
 
@@ -258,7 +300,7 @@ $language_data = array (
         //Variable assignment
         2 => "(?<![\.a-zA-Z_\-])([a-zA-Z_][a-zA-Z0-9_]*?)(?==)",
         //Shorthand shell variables
-        4 => "\\$[*#\$\\-\\?!]",
+        4 => "\\$[*#\$\\-\\?!\d]",
         //Parameters of commands
         5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|$)"
         ),
@@ -274,7 +316,7 @@ $language_data = array (
         ),
         'KEYWORDS' => array(
             'DISALLOWED_BEFORE' => "(?<![\.\-a-zA-Z0-9_\$\#])",
-            'DISALLOWED_AFTER' =>  "(?![\.\-a-zA-Z0-9_%\\/])"
+            'DISALLOWED_AFTER' =>  "(?![\.\-a-zA-Z0-9_%=\\/])"
         )
     )
 );
diff --git a/inc/geshi/basic4gl.php b/inc/geshi/basic4gl.php
index 5e333093020250a329e187941dcd2f95dc2c056f..55be6dc346aa5c83cf6eac294e43308aed8f1155 100644
--- a/inc/geshi/basic4gl.php
+++ b/inc/geshi/basic4gl.php
@@ -4,7 +4,7 @@
  * ---------------------------------
  * Author: Matthew Webb (bmatthew1@blueyonder.co.uk)
  * Copyright: (c) 2004 Matthew Webb (http://matthew-4gl.wikispaces.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/09/15
  *
  * Basic4GL language file for GeSHi.
diff --git a/inc/geshi/bf.php b/inc/geshi/bf.php
index c4be922e04a4771ea103fcb524bda3f88eb13dcb..c69155e88a3293f9feb584a0d5e1d6e703149d3a 100644
--- a/inc/geshi/bf.php
+++ b/inc/geshi/bf.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Benny Baumann (BenBE@geshi.org)
  * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/10/31
  *
  * Brainfuck language file for GeSHi.
diff --git a/inc/geshi/bibtex.php b/inc/geshi/bibtex.php
new file mode 100644
index 0000000000000000000000000000000000000000..82c13b8bcd1754fd2c622565b9dfc8498553d6de
--- /dev/null
+++ b/inc/geshi/bibtex.php
@@ -0,0 +1,183 @@
+<?php
+/********************************************************************************
+ * bibtex.php
+ * -----
+ * Author: Quinn Taylor (quinntaylor@mac.com)
+ * Copyright: (c) 2009 Quinn Taylor (quinntaylor@mac.com), Nigel McNie (http://qbnz.com/highlighter)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/04/29
+ *
+ * BibTeX language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/04/29 (1.0.8.4)
+ *  -  First Release
+ *
+ * TODO
+ * -------------------------
+ *  - Add regex for matching and replacing URLs with corresponding hyperlinks
+ *  - Add regex for matching more LaTeX commands that may be embedded in BibTeX
+ *    (Someone who understands regex better than I should borrow from latex.php)
+ ********************************************************************************
+ *
+ *     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
+ *
+ *
+*******************************************************************************/
+
+// http://en.wikipedia.org/wiki/BibTeX
+// http://www.fb10.uni-bremen.de/anglistik/langpro/bibliographies/jacobsen-bibtex.html
+
+$language_data = array (
+    'LANG_NAME' => '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*=)'
+                ),
+            )
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/blitzbasic.php b/inc/geshi/blitzbasic.php
index 3ad5eabf01e8120e2607d5837315edfb4574b04a..c3871a21e3341fde3849215d261dbde10f434978 100644
--- a/inc/geshi/blitzbasic.php
+++ b/inc/geshi/blitzbasic.php
@@ -4,7 +4,7 @@
  * --------------
  * Author: P�draig O`Connel (info@moonsword.info)
  * Copyright: (c) 2005 P�draig O`Connel (http://moonsword.info)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 16.10.2005
  *
  * BlitzBasic language file for GeSHi.
diff --git a/inc/geshi/bnf.php b/inc/geshi/bnf.php
index 0032acf481d1ea705f7b3785ecb0ea3fa9eacc95..db5cdb59d162be7684319896a75350969b6b3499 100644
--- a/inc/geshi/bnf.php
+++ b/inc/geshi/bnf.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Rowan Rodrik van der Molen (rowan@bigsmoke.us)
  * Copyright: (c) 2006 Rowan Rodrik van der Molen (http://www.bigsmoke.us/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/09/28
  *
  * BNF (Backus-Naur form) language file for GeSHi.
diff --git a/inc/geshi/boo.php b/inc/geshi/boo.php
index d555dd4a2d659fc820cb843ce6c5d5a1c1024098..df843797de146e707aec95c13729ebe988d6f202 100644
--- a/inc/geshi/boo.php
+++ b/inc/geshi/boo.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Marcus Griep (neoeinstein+GeSHi@gmail.com)
  * Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/09/10
  *
  * Boo language file for GeSHi.
diff --git a/inc/geshi/c.php b/inc/geshi/c.php
index 86f576ef614f493019374a2ea8cc4358bed952ae..bb6be43e1e7bf167b4197569dc1a7a2f2cf5494a 100644
--- a/inc/geshi/c.php
+++ b/inc/geshi/c.php
@@ -7,7 +7,7 @@
  *  - Jack Lloyd (lloyd@randombit.net)
  *  - Michael Mol (mikemol@gmail.com)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * C language file for GeSHi.
diff --git a/inc/geshi/c_mac.php b/inc/geshi/c_mac.php
index 46a3600fee848e963069fe56155fec52b438910e..6ead4ae1506f1be5e4089e7ae23c1abcd9733976 100644
--- a/inc/geshi/c_mac.php
+++ b/inc/geshi/c_mac.php
@@ -4,7 +4,7 @@
  * ---------
  * Author: M. Uli Kusterer (witness.of.teachtext@gmx.net)
  * Copyright: (c) 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * C for Macs language file for GeSHi.
diff --git a/inc/geshi/caddcl.php b/inc/geshi/caddcl.php
index 12e1d3b75012901959afd0a0989f5c4bf79ff542..27474627e0603c945ec3a8f4d3192fe87ce40ede 100644
--- a/inc/geshi/caddcl.php
+++ b/inc/geshi/caddcl.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Roberto Rossi (rsoftware@altervista.org)
  * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/30
  *
  * CAD DCL (Dialog Control Language) language file for GeSHi.
diff --git a/inc/geshi/cadlisp.php b/inc/geshi/cadlisp.php
index c537370d5d0c7bcf084ebf21f5b6da7e2ac04af7..5061c79e497364acd6fe0d2f4eb83b4ccf16ed62 100644
--- a/inc/geshi/cadlisp.php
+++ b/inc/geshi/cadlisp.php
@@ -4,7 +4,7 @@
  * -----------
  * Author: Roberto Rossi (rsoftware@altervista.org)
  * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/blog)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/30
  *
  * AutoCAD/IntelliCAD Lisp language file for GeSHi.
diff --git a/inc/geshi/cfdg.php b/inc/geshi/cfdg.php
index 5091ffa4c9e2b52439e7296500096dee85808e90..8d03b89df9fde029bda8968f05c68c65cd5c6f89 100644
--- a/inc/geshi/cfdg.php
+++ b/inc/geshi/cfdg.php
@@ -4,7 +4,7 @@
  * --------
  * Author: John Horigan <john@glyphic.com>
  * Copyright: (c) 2006 John Horigan http://www.ozonehouse.com/john/
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/03/11
  *
  * CFDG language file for GeSHi.
diff --git a/inc/geshi/cfm.php b/inc/geshi/cfm.php
index ac81695ab8031abe345507ba8459308339cd36c7..cdb7bf32c5f3ea31441153058860acd43c0fc979 100644
--- a/inc/geshi/cfm.php
+++ b/inc/geshi/cfm.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Diego
  * Copyright: (c) 2006 Diego
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/02/25
  *
  * ColdFusion language file for GeSHi.
diff --git a/inc/geshi/cil.php b/inc/geshi/cil.php
index 994f86316a8d706ab3b6d5e60d262ea962a44afc..4ca93ecb083dd85a3b7f19c5141b9b99ede3b706 100644
--- a/inc/geshi/cil.php
+++ b/inc/geshi/cil.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Marcus Griep (neoeinstein+GeSHi@gmail.com)
  * Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/10/24
  *
  * CIL (Common Intermediate Language) language file for GeSHi.
diff --git a/inc/geshi/clojure.php b/inc/geshi/clojure.php
new file mode 100644
index 0000000000000000000000000000000000000000..b970deea8113cca4e6c8318256ef6afc93d45504
--- /dev/null
+++ b/inc/geshi/clojure.php
@@ -0,0 +1,134 @@
+<?php
+/*************************************************************************************
+ * clojure.php
+ * --------
+ * Author: Jess Johnson (jess@grok-code.com)
+ * Copyright: (c) 2009 Jess Johnson (http://grok-code.com)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/09/20
+ *
+ * Clojure language file for GeSHi.
+ *
+ * This file borrows significantly from the lisp language file for GeSHi
+ *
+ * CHANGES
+ * -------
+ * 2009/09/20 (1.0.8.6)
+ *  -  First Release
+ *
+ * TODO (updated 2009/09/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' => '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',
+            'dosync', 'doseq', 'dotimes', 'dorun', 'doall',
+            'load', 'import', 'unimport', 'ns', 'in-ns', 'refer',
+            'try', 'catch', 'finally', 'throw',
+            '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', '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(
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/cmake.php b/inc/geshi/cmake.php
new file mode 100644
index 0000000000000000000000000000000000000000..a9cfaafdc3dc64981ed2d0d6df65cb38da5ad7bc
--- /dev/null
+++ b/inc/geshi/cmake.php
@@ -0,0 +1,181 @@
+<?php
+/*************************************************************************************
+ * cmake.php
+ * -------
+ * Author: Daniel Nelson (danieln@eng.utah.edu)
+ * Copyright: (c) 2009 Daniel Nelson
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/04/06
+ *
+ * CMake language file for GeSHi.
+ *
+ * Keyword list generated using CMake 2.6.3.
+ *
+ * CHANGES
+ * -------
+ * <date-of-release> (<GeSHi release>)
+ *  -  First Release
+ *
+ * TODO (updated <date-of-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' => '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
+            )
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/cobol.php b/inc/geshi/cobol.php
index 9adae16e3b32bd99bfe3e44f9473db461afaf9a1..63abf3f0962f6c98dce33a4576835a2b5f479e03 100644
--- a/inc/geshi/cobol.php
+++ b/inc/geshi/cobol.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: BenBE (BenBE@omorphia.org)
  * Copyright: (c) 2007-2008 BenBE (http://www.omorphia.de/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/07/02
  *
  * COBOL language file for GeSHi.
diff --git a/inc/geshi/cpp-qt.php b/inc/geshi/cpp-qt.php
index 43105de3d6d08168df4784b34c196599888d2a8c..a96cd38afddad7507439b2c3719097909b9a31bf 100644
--- a/inc/geshi/cpp-qt.php
+++ b/inc/geshi/cpp-qt.php
@@ -4,13 +4,16 @@
  * -------
  * Author: Iulian M
  * Copyright: (c) 2006 Iulian M
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/09/27
  *
  * C++ (with QT extensions) language file for GeSHi.
  *
  * CHANGES
  * -------
+ * 2009/06/28 (1.0.8.4)
+ *   -  Updated list of Keywords from Qt 4.5
+ *
  * 2008/05/23 (1.0.7.22)
  *   -  Added description of extra language features (SF#1970248)
  *
@@ -87,7 +90,8 @@ $language_data = array (
             'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace',
             'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast',
             'static_cast', 'explicit', 'friend', 'wchar_t', 'typename', 'typeid', 'class' ,
-            'foreach','connect', 'Q_OBJECT' , 'slots' , 'signals'
+            'foreach','connect', 'Q_OBJECT' , 'slots' , 'signals', 'Q_SIGNALS', 'Q_SLOTS',
+            'Q_FOREACH', 'QCOMPARE', 'QVERIFY', 'qDebug', 'kDebug', 'QBENCHMARK'
             ),
         3 => array(
             'cin', 'cerr', 'clog', 'cout',
@@ -119,103 +123,334 @@ $language_data = array (
             'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm',
             ),
         5 => array(
-            'QAbstractButton','QDir','QIntValidator','QRegExpValidator','QTabWidget','QAbstractEventDispatcher',
-            'QDirectPainter','QIODevice','QRegion','QTcpServer','QAbstractExtensionFactory','QDirModel',
-            'QItemDelegate','QResizeEvent','QTcpSocket','QAbstractExtensionManager','QDockWidget',
-            'QItemEditorCreatorBase','QResource','QTemporaryFile','QAbstractFileEngine','QDomAttr',
-            'QItemEditorFactory','QRubberBand','QTestEventList','QAbstractFileEngineHandler','QDomCDATASection',
-            'QItemSelection','QScreen','QTextBlock','QAbstractFormBuilder','QDomCharacterData','QItemSelectionModel',
-            'QScreenCursor','QTextBlockFormat','QAbstractGraphicsShapeItem','QDomComment','QItemSelectionRange',
-            'QScreenDriverFactory','QTextBlockGroup','QAbstractItemDelegate','QDomDocument','QKbdDriverFactory',
-            'QScreenDriverPlugin','QTextBlockUserData','QAbstractItemModel','QDomDocumentFragment','QKbdDriverPlugin',
-            'QScrollArea','QTextBrowser','QAbstractItemView','QDomDocumentType','QKeyEvent','QScrollBar',
-            'QTextCharFormat','QAbstractListModel','QDomElement','QKeySequence','QSemaphore','QTextCodec',
-            'QAbstractPrintDialog','QDomEntity','QLabel','QSessionManager','QTextCodecPlugin','QAbstractProxyModel',
-            'QDomEntityReference','QLatin1Char','QSet','QTextCursor','QAbstractScrollArea','QDomImplementation',
-            'QLatin1String','QSetIterator','QTextDecoder','QAbstractSlider','QDomNamedNodeMap','QLayout','QSettings',
-            'QTextDocument','QAbstractSocket','QDomNode','QLayoutItem','QSharedData','QTextDocumentFragment',
-            'QAbstractSpinBox','QDomNodeList','QLCDNumber','QSharedDataPointer','QTextEdit','QAbstractTableModel',
-            'QDomNotation','QLibrary','QShortcut','QTextEncoder','QAbstractTextDocumentLayout',
-            'QDomProcessingInstruction','QLibraryInfo','QShortcutEvent','QTextFormat','QAccessible','QDomText',
-            'QLine','QShowEvent','QTextFragment','QAccessibleBridge','QDoubleSpinBox','QLinearGradient',
-            'QSignalMapper','QTextFrame','QAccessibleBridgePlugin','QDoubleValidator','QLineEdit','QSignalSpy',
-            'QTextFrameFormat','QAccessibleEvent','QDrag','QLineF','QSize','QTextImageFormat','QAccessibleInterface',
-            'QDragEnterEvent','QLinkedList','QSizeF','QTextInlineObject','QAccessibleObject','QDragLeaveEvent',
-            'QLinkedListIterator','QSizeGrip','QTextLayout','QAccessiblePlugin','QDragMoveEvent','QLinuxFbScreen',
-            'QSizePolicy','QTextLength','QAccessibleWidget','QDropEvent','QList','QSlider','QTextLine','QAction',
-            'QDynamicPropertyChangeEvent','QListIterator','QSocketNotifier','QTextList','QActionEvent','QErrorMessage',
-            'QListView','QSortFilterProxyModel','QTextListFormat','QActionGroup','QEvent','QListWidget','QSound',
-            'QTextObject','QApplication','QEventLoop','QListWidgetItem','QSpacerItem','QTextOption','QAssistantClient',
-            'QExtensionFactory','QLocale','QSpinBox','QTextStream','QAxAggregated','QExtensionManager',
-            'QMacPasteboardMime','QSplashScreen','QTextTable','QAxBase','QFile','QMacStyle','QSplitter',
-            'QTextTableCell','QAxBindable','QFileDialog','QMainWindow','QSplitterHandle','QTextTableFormat',
-            'QAxFactory','QFileIconProvider','QMap','QSqlDatabase','QThread','QAxObject','QFileInfo','QMapIterator',
-            'QSqlDriver','QThreadStorage','QAxScript','QFileOpenEvent','QMatrix','QSqlDriverCreator','QTime',
-            'QAxScriptEngine','QFileSystemWatcher','QMenu','QSqlDriverCreatorBase','QTimeEdit','QAxScriptManager',
-            'QFlag','QMenuBar','QSqlDriverPlugin','QTimeLine','QAxWidget','QFlags','QMessageBox','QSqlError','QTimer',
-            'QBasicTimer','QFocusEvent','QMetaClassInfo','QSqlField','QTimerEvent','QBitArray','QFocusFrame',
-            'QMetaEnum','QSqlIndex','QToolBar','QBitmap','QFont','QMetaMethod','QSqlQuery','QToolBox','QBoxLayout',
-            'QFontComboBox','QMetaObject','QSqlQueryModel','QToolButton','QBrush','QFontDatabase','QMetaProperty',
-            'QSqlRecord','QToolTip','QBuffer','QFontDialog','QMetaType','QSqlRelation','QTransformedScreen',
-            'QButtonGroup','QFontInfo','QMimeData','QSqlRelationalDelegate','QTranslator','QByteArray','QFontMetrics',
-            'QMimeSource','QSqlRelationalTableModel','QTreeView','QByteArrayMatcher','QFontMetricsF','QModelIndex',
-            'QSqlResult','QTreeWidget','QCache','QFormBuilder','QMotifStyle','QSqlTableModel','QTreeWidgetItem',
-            'QCalendarWidget','QFrame','QMouseDriverFactory','QStack','QTreeWidgetItemIterator','QCDEStyle',
-            'QFSFileEngine','QMouseDriverPlugin','QStackedLayout','QUdpSocket','QChar','QFtp','QMouseEvent',
-            'QStackedWidget','QUiLoader','QCheckBox','QGenericArgument','QMoveEvent','QStandardItem','QUndoCommand',
-            'QChildEvent','QGenericReturnArgument','QMovie','QStandardItemEditorCreator','QUndoGroup',
-            'QCleanlooksStyle','QGLColormap','QMultiHash','QStandardItemModel','QUndoStack','QClipboard',
-            'QGLContext','QMultiMap','QStatusBar','QUndoView','QCloseEvent','QGLFormat','QMutableHashIterator',
-            'QStatusTipEvent','QUrl','QColor','QGLFramebufferObject','QMutableLinkedListIterator','QString',
-            'QUrlInfo','QColorDialog','QGLPixelBuffer','QMutableListIterator','QStringList','QUuid','QColormap',
-            'QGLWidget','QMutableMapIterator','QStringListModel','QValidator','QComboBox','QGradient',
-            'QMutableSetIterator','QStringMatcher','QVariant','QCommonStyle','QGraphicsEllipseItem',
-            'QMutableVectorIterator','QStyle','QVarLengthArray','QCompleter','QGraphicsItem','QMutex',
-            'QStyleFactory','QVBoxLayout','QConicalGradient','QGraphicsItemAnimation','QMutexLocker',
-            'QStyleHintReturn','QVector','QContextMenuEvent','QGraphicsItemGroup','QNetworkAddressEntry',
-            'QStyleHintReturnMask','QVectorIterator','QCopChannel','QGraphicsLineItem','QNetworkInterface',
-            'QStyleOption','QVFbScreen','QCoreApplication','QGraphicsPathItem','QNetworkProxy','QStyleOptionButton',
-            'QVNCScreen','QCursor','QGraphicsPixmapItem','QObject','QStyleOptionComboBox','QWaitCondition',
-            'QCustomRasterPaintDevice','QGraphicsPolygonItem','QObjectCleanupHandler','QStyleOptionComplex',
-            'QWhatsThis','QDataStream','QGraphicsRectItem','QPageSetupDialog','QStyleOptionDockWidget',
-            'QWhatsThisClickedEvent','QDataWidgetMapper','QGraphicsScene','QPaintDevice','QStyleOptionFocusRect',
-            'QWheelEvent','QDate','QGraphicsSceneContextMenuEvent','QPaintEngine','QStyleOptionFrame','QWidget',
-            'QDateEdit','QGraphicsSceneEvent','QPaintEngineState','QStyleOptionFrameV2','QWidgetAction','QDateTime',
-            'QGraphicsSceneHoverEvent','QPainter','QStyleOptionGraphicsItem','QWidgetItem','QDateTimeEdit',
-            'QGraphicsSceneMouseEvent','QPainterPath','QStyleOptionGroupBox','QWindowsMime','QDBusAbstractAdaptor',
-            'QGraphicsSceneWheelEvent','QPainterPathStroker','QStyleOptionHeader','QWindowsStyle',
-            'QDBusAbstractInterface','QGraphicsSimpleTextItem','QPaintEvent','QStyleOptionMenuItem',
-            'QWindowStateChangeEvent','QDBusArgument','QGraphicsSvgItem','QPair','QStyleOptionProgressBar',
-            'QWindowsXPStyle','QDBusConnection','QGraphicsTextItem','QPalette','QStyleOptionProgressBarV2',
-            'QWorkspace','QDBusConnectionInterface','QGraphicsView','QPen','QStyleOptionQ3DockWindow','QWriteLocker',
-            'QDBusError','QGridLayout','QPersistentModelIndex','QStyleOptionQ3ListView','QWSCalibratedMouseHandler',
-            'QDBusInterface','QGroupBox','QPicture','QStyleOptionQ3ListViewItem','QWSClient','QDBusMessage','QHash',
-            'QPictureFormatPlugin','QStyleOptionRubberBand','QWSEmbedWidget','QDBusObjectPath','QHashIterator',
-            'QPictureIO','QStyleOptionSizeGrip','QWSEvent','QDBusReply','QHBoxLayout','QPixmap','QStyleOptionSlider',
-            'QWSInputMethod','QDBusServer','QHeaderView','QPixmapCache','QStyleOptionSpinBox','QWSKeyboardHandler',
-            'QDBusSignature','QHelpEvent','QPlastiqueStyle','QStyleOptionTab','QWSMouseHandler','QDBusVariant',
-            'QHideEvent','QPluginLoader','QStyleOptionTabBarBase','QWSPointerCalibrationData','QDecoration',
-            'QHostAddress','QPoint','QStyleOptionTabV2','QWSScreenSaver','QDecorationFactory','QHostInfo','QPointer',
-            'QStyleOptionTabWidgetFrame','QWSServer','QDecorationPlugin','QHoverEvent','QPointF','QStyleOptionTitleBar',
-            'QWSTslibMouseHandler','QDesignerActionEditorInterface','QHttp','QPolygon','QStyleOptionToolBar','QWSWindow',
-            'QDesignerContainerExtension','QHttpHeader','QPolygonF','QStyleOptionToolBox','QWSWindowSurface',
-            'QDesignerCustomWidgetCollectionInterface','QHttpRequestHeader','QPrintDialog','QStyleOptionToolButton',
-            'QX11EmbedContainer','QDesignerCustomWidgetInterface','QHttpResponseHeader','QPrintEngine',
-            'QStyleOptionViewItem','QX11EmbedWidget','QDesignerFormEditorInterface','QIcon','QPrinter',
-            'QStyleOptionViewItemV2','QX11Info','QDesignerFormWindowCursorInterface','QIconDragEvent','QProcess',
-            'QStylePainter','QXmlAttributes','QDesignerFormWindowInterface','QIconEngine','QProgressBar',
-            'QStylePlugin','QXmlContentHandler','QDesignerFormWindowManagerInterface','QIconEnginePlugin',
-            'QProgressDialog','QSvgRenderer','QXmlDeclHandler','QDesignerMemberSheetExtension','QImage',
-            'QProxyModel','QSvgWidget','QXmlDefaultHandler','QDesignerObjectInspectorInterface','QImageIOHandler',
-            'QPushButton','QSyntaxHighlighter','QXmlDTDHandler','QDesignerPropertyEditorInterface','QImageIOPlugin',
-            'QQueue','QSysInfo','QXmlEntityResolver','QDesignerPropertySheetExtension','QImageReader','QRadialGradient',
-            'QSystemLocale','QXmlErrorHandler','QDesignerTaskMenuExtension','QImageWriter','QRadioButton',
-            'QSystemTrayIcon','QXmlInputSource','QDesignerWidgetBoxInterface','QInputContext','QRasterPaintEngine',
-            'QTabBar','QXmlLexicalHandler','QDesktopServices','QInputContextFactory','QReadLocker','QTabletEvent',
-            'QXmlLocator','QDesktopWidget','QInputContextPlugin','QReadWriteLock','QTableView','QXmlNamespaceSupport',
-            'QDial','QInputDialog','QRect','QTableWidget','QXmlParseException','QDialog','QInputEvent','QRectF',
-            'QTableWidgetItem','QXmlReader','QDialogButtonBox','QInputMethodEvent','QRegExp',
-            'QTableWidgetSelectionRange','QXmlSimpleReader'
+            "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(
diff --git a/inc/geshi/cpp.php b/inc/geshi/cpp.php
index 264ef638de51beadd707f940089b9fba94b9f1ef..7fb1da3600339782d83a2e30ff2ee2d8526fbfb2 100644
--- a/inc/geshi/cpp.php
+++ b/inc/geshi/cpp.php
@@ -7,7 +7,7 @@
  *  - M. Uli Kusterer (witness.of.teachtext@gmx.net)
  *  - Jack Lloyd (lloyd@randombit.net)
  * Copyright: (c) 2004 Dennis Bayer, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/09/27
  *
  * C++ language file for GeSHi.
diff --git a/inc/geshi/csharp.php b/inc/geshi/csharp.php
index 0f8a5e2a3e2174c16389584691c5c434896298e9..aa166801daf71efb60160e314ad798e8119ed230 100644
--- a/inc/geshi/csharp.php
+++ b/inc/geshi/csharp.php
@@ -3,16 +3,19 @@
  * csharp.php
  * ----------
  * Author: Alan Juden (alan@judenware.org)
+ * Revised by: Michael Mol (mikemol@gmail.com)
  * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * C# language file for GeSHi.
  *
  * CHANGES
  * -------
+ * 2009/04/03 (1.0.8.6)
+ *  -  Added missing keywords identified by Rosetta Code users.
  * 2008/05/25 (1.0.7.22)
- *   -  Added highlighting of using and namespace directives as non-OOP
+ *  -  Added highlighting of using and namespace directives as non-OOP
  * 2005/01/05 (1.0.1)
  *  -  Used hardquote support for @"..." strings (Cliff Stanford)
  * 2004/11/27 (1.0.0)
@@ -59,12 +62,12 @@ $language_data = array (
         1 => array(
             'as', 'auto', 'base', 'break', 'case', 'catch', 'const', 'continue',
             'default', 'do', 'else', 'event', 'explicit', 'extern', 'false',
-            'finally', 'fixed', 'for', 'foreach', 'goto', 'if', 'implicit',
-            'in', 'internal', 'lock', 'namespace', 'null', 'operator', 'out',
-            'override', 'params', 'partial', 'private', 'protected', 'public',
-            'readonly', 'ref', 'return', 'sealed', 'stackalloc', 'static',
-            'switch', 'this', 'throw', 'true', 'try', 'unsafe', 'using',
-            'virtual', 'void', 'while'
+            'finally', 'fixed', 'for', 'foreach', 'from', 'goto', 'if',
+            'implicit', 'in', 'internal', 'lock', 'namespace', 'null',
+            'operator', 'out', 'override', 'params', 'partial', 'private',
+            'protected', 'public', 'readonly', 'ref', 'return', 'sealed',
+            'select', 'stackalloc', 'static', 'switch', 'this', 'throw', 'true',
+            'try', 'unsafe', 'using', 'virtual', 'where', 'while', 'yield'
             ),
         2 => array(
             '#elif', '#endif', '#endregion', '#else', '#error', '#define', '#if',
@@ -76,7 +79,7 @@ $language_data = array (
         4 => array(
             'bool', 'byte', 'char', 'class', 'decimal', 'delegate', 'double',
             'enum', 'float', 'int', 'interface', 'long', 'object', 'sbyte',
-            'short', 'string', 'struct', 'uint', 'ulong', 'ushort'
+            'short', 'string', 'struct', 'uint', 'ulong', 'ushort', 'void'
             ),
         5 => array(
             'Microsoft.Win32',
@@ -169,7 +172,7 @@ $language_data = array (
         ),
     'SYMBOLS' => array(
         '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';',
-        '(', ')', '{', '}', '[', ']', '|'
+        '(', ')', '{', '}', '[', ']', '|', '.'
         ),
     'CASE_SENSITIVE' => array(
         GESHI_COMMENTS => false,
@@ -181,10 +184,10 @@ $language_data = array (
         ),
     'STYLES' => array(
         'KEYWORDS' => array(
-            1 => 'color: #0600FF;',
+            1 => 'color: #0600FF; font-weight: bold;',
             2 => 'color: #FF8000; font-weight: bold;',
             3 => 'color: #008000;',
-            4 => 'color: #FF0000;',
+            4 => 'color: #6666cc; font-weight: bold;',
             5 => 'color: #000000;'
             ),
         'COMMENTS' => array(
@@ -198,7 +201,7 @@ $language_data = array (
             'HARD' => 'color: #008080; font-weight: bold;'
             ),
         'BRACKETS' => array(
-            0 => 'color: #000000;'
+            0 => 'color: #008000;'
             ),
         'STRINGS' => array(
             0 => 'color: #666666;',
@@ -242,7 +245,7 @@ $language_data = array (
     'PARSER_CONTROL' => array(
         'KEYWORDS' => array(
             'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])",
-            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])"
+            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_%\\-])"
         )
     )
 );
diff --git a/inc/geshi/css.php b/inc/geshi/css.php
index f6386bdc04ea492d3d8c240cd09417d875bbfc1e..04313d6d8dca6de756aa6a00b152353d7d2b6435 100644
--- a/inc/geshi/css.php
+++ b/inc/geshi/css.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/18
  *
  * CSS language file for GeSHi.
diff --git a/inc/geshi/cuesheet.php b/inc/geshi/cuesheet.php
new file mode 100644
index 0000000000000000000000000000000000000000..2fd610c1520d542e005e01cfd5e1800d9f6f5385
--- /dev/null
+++ b/inc/geshi/cuesheet.php
@@ -0,0 +1,138 @@
+<?php
+/*************************************************************************************
+ * cuesheet.php
+ * ----------
+ * Author: Benny Baumann (benbe@geshi.org)
+ * Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/12/21
+ *
+ * Cuesheet language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/12/21 (1.0.8.6)
+ *   -  First Release
+ *
+ * TODO (updated 2009/12/21)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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\.])',
+            'DISALLOWED_AFTER' => '(?![\w\.])',
+            )
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/d.php b/inc/geshi/d.php
index 691091809043a4ee6d5187aea3f9640e77eccc5d..f9157a51404934a6be9bad82546a86e9e13da4b4 100644
--- a/inc/geshi/d.php
+++ b/inc/geshi/d.php
@@ -4,7 +4,7 @@
  * -----
  * Author: Thomas Kuehne (thomas@kuehne.cn)
  * Copyright: (c) 2005 Thomas Kuehne (http://thomas.kuehne.cn/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/04/22
  *
  * D language file for GeSHi.
diff --git a/inc/geshi/dcs.php b/inc/geshi/dcs.php
index 0f6bad372f473122fa959606cfe6f2dd6829fe77..daad329c3f820c52ab761815fbceb100e2363371 100644
--- a/inc/geshi/dcs.php
+++ b/inc/geshi/dcs.php
@@ -4,7 +4,7 @@
  * ---------------------------------
  * Author: Stelio Passaris (GeSHi@stelio.net)
  * Copyright: (c) 2009 Stelio Passaris (http://stelio.net/stiki/GeSHi)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/01/20
  *
  * DCS language file for GeSHi.
@@ -59,9 +59,6 @@ $language_data = array (
         ),
     'COMMENT_MULTI' => array(
         ),
-    'HARDQUOTE' => array(
-        ),
-    'HARDESCAPE' => '',
     'COMMENT_REGEXP' => array(
         // Highlight embedded C code in a separate color:
         2 => '/\bINSERT_C_CODE\b.*?\bEND_C_CODE\b/ims'
diff --git a/inc/geshi/delphi.php b/inc/geshi/delphi.php
index 9d7ad7e7d0ffc0d89ae2a7a45b8bda2ce9297758..2b758d7dbd8722ae783119727b0023b59c0e7a23 100644
--- a/inc/geshi/delphi.php
+++ b/inc/geshi/delphi.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: J�rja Norbert (jnorbi@vipmail.hu), Benny Baumann (BenBE@omorphia.de)
  * Copyright: (c) 2004 J�rja Norbert, Benny Baumann (BenBE@omorphia.de), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/26
  *
  * Delphi (Object Pascal) language file for GeSHi.
@@ -68,7 +68,7 @@ $language_data = array (
             'Repeat', 'Requires', 'Resourcestring', 'Set', 'Shl', 'Shr', 'Then',
             'ThreadVar', 'To', 'Try', 'Type', 'Unit', 'Until', 'Uses', 'Var',
             'Virtual', 'While', 'With', 'Xor', 'assembler', 'far',
-            'near', 'pascal', 'register', 'cdecl', 'safecall', 'stdcall', 'varargs'
+            'near', 'pascal', 'cdecl', 'safecall', 'stdcall', 'varargs'
             ),
         2 => array(
             'nil', 'false', 'self', 'true', 'var', 'type', 'const'
diff --git a/inc/geshi/diff.php b/inc/geshi/diff.php
index b4703c1d207470fda15e53b0447c6332bb855596..f1a4baf651ec649d2c0815e4f10994be8ef71187 100644
--- a/inc/geshi/diff.php
+++ b/inc/geshi/diff.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Conny Brunnkvist (conny@fuchsia.se), W. Tasin (tasin@fhm.edu)
  * Copyright: (c) 2004 Fuchsia Open Source Solutions (http://www.fuchsia.se/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/12/29
  *
  * Diff-output language file for GeSHi.
@@ -115,7 +115,7 @@ $language_data = array (
         0 => "[0-9,]+[acd][0-9,]+",
         //Removed lines
         1 => array(
-            GESHI_SEARCH => '^\\&lt;.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))\\&lt;.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -123,7 +123,7 @@ $language_data = array (
             ),
         //Inserted lines
         2 => array(
-            GESHI_SEARCH => '^\\&gt;.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))\\&gt;.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -131,7 +131,7 @@ $language_data = array (
             ),
         //Location line
         3 => array(
-            GESHI_SEARCH => '^[\\-]{3}\\s.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))-{3}\\s.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -139,7 +139,7 @@ $language_data = array (
             ),
         //Inserted line
         4 => array(
-            GESHI_SEARCH => '^(\\+){3}\\s.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))(\\+){3}\\s.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -147,7 +147,7 @@ $language_data = array (
             ),
         //Modified line
         5 => array(
-            GESHI_SEARCH => '^\\!.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))\\!.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -155,7 +155,7 @@ $language_data = array (
             ),
         //File specification
         6 => array(
-            GESHI_SEARCH => '^[\\@]{2}.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))[\\@]{2}.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -163,7 +163,7 @@ $language_data = array (
             ),
         //Removed line
         7 => array(
-            GESHI_SEARCH => '^\\-.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))\\-.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -171,7 +171,7 @@ $language_data = array (
             ),
         //Inserted line
         8 => array(
-            GESHI_SEARCH => '^\\+.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))\\+.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -179,7 +179,7 @@ $language_data = array (
             ),
         //File specification
         9 => array(
-            GESHI_SEARCH => '^(\\*){3}\\s.*$',
+            GESHI_SEARCH => '(^|(?<=\A\s))(\\*){3}\\s.*$',
             GESHI_REPLACE => '\\0',
             GESHI_MODIFIERS => 'm',
             GESHI_BEFORE => '',
@@ -193,4 +193,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/div.php b/inc/geshi/div.php
index 0e249740cac276704b65e98e91b2ad3c1e6fbb49..5804bb7276fdc35f14d699ea9723d58c17ca5101 100644
--- a/inc/geshi/div.php
+++ b/inc/geshi/div.php
@@ -4,7 +4,7 @@
  * ---------------------------------
  * Author: Gabriel Lorenzo (ermakina@gmail.com)
  * Copyright: (c) 2005 Gabriel Lorenzo (http://ermakina.gazpachito.net)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/06/19
  *
  * DIV language file for GeSHi.
diff --git a/inc/geshi/dos.php b/inc/geshi/dos.php
index bec3de12997fd3c858565d42f3e61b6781d7b814..c111e1b5e7ff83972d5f6cfa2d69eb80a1a52ba7 100644
--- a/inc/geshi/dos.php
+++ b/inc/geshi/dos.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Alessandro Staltari (staltari@geocities.com)
  * Copyright: (c) 2005 Alessandro Staltari (http://www.geocities.com/SiliconValley/Vista/8155/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/07/05
  *
  * DOS language file for GeSHi.
diff --git a/inc/geshi/dot.php b/inc/geshi/dot.php
index c45a74af75d90d610895fdbf2c6185b7e58003e5..6e4df2fffe6010cde8ddfddf70efbfb9b5cd2258 100644
--- a/inc/geshi/dot.php
+++ b/inc/geshi/dot.php
@@ -4,7 +4,7 @@
  * ---------------------------------
  * Author: Adrien Friggeri (adrien@friggeri.net)
  * Copyright: (c) 2007 Adrien Friggeri (http://www.friggeri.net)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/05/30
  *
  * dot language file for GeSHi.
@@ -63,14 +63,14 @@ $language_data = array (
             'node', 'graph', 'digraph', 'strict', 'edge', 'subgraph'
             ),
         3 => array(
-            'Mcircle', 'Mdiamond', 'Mrecord', 'Msquare', 'TRUE', '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'
+            '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',
@@ -161,4 +161,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/eiffel.php b/inc/geshi/eiffel.php
index ab7abf9747dcd3efec2a3e5c806a625e6bea781c..fa293c074e376f8e70484ae550c3216a7708b0aa 100644
--- a/inc/geshi/eiffel.php
+++ b/inc/geshi/eiffel.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Zoran Simic (zsimic@axarosenberg.com)
  * Copyright: (c) 2005 Zoran Simic
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/06/30
  *
  * Eiffel language file for GeSHi.
diff --git a/inc/geshi/email.php b/inc/geshi/email.php
index a0a744c6dca276d52e8916cd81c74af7d4000e0b..a902433bf8bf22ae7a1ec2baec6bf73bf585ba27 100644
--- a/inc/geshi/email.php
+++ b/inc/geshi/email.php
@@ -4,7 +4,7 @@
  * ---------------
  * Author: Benny Baumann (BenBE@geshi.org)
  * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/10/19
  *
  * Email (mbox \ eml \ RFC format) language file for GeSHi.
@@ -51,10 +51,11 @@ $language_data = array (
             'HTTP', 'SMTP', 'ASMTP', 'ESMTP'
             ),
         2 => array(
-            'Content-Type','Content-Transfer-Encoding','Content-Disposition',
-            'Delivered-To','Dkim-Signature','Domainkey-Signature','In-Reply-To',
-            'Message-Id','MIME-Version','Received','Received-SPF','References',
-            'Resend-From','Resend-To','Return-Path'
+            'Authentication-Results','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',
+            'Resend-From','Resend-To','Return-Path','User-Agent'
             ),
         3 => array(
             'Date','From','Subject','To',
@@ -131,7 +132,7 @@ $language_data = array (
             ),
         //Email-Adresses or Mail-IDs
         2 => array(
-            GESHI_SEARCH => "\b[\w\.]+@\w+(?:(?:\.\w+)*\.\w{2,4})?",
+            GESHI_SEARCH => "\b[\w\.\-]+@\w+(?:(?:\.\w+)*\.\w{2,4})?",
             GESHI_REPLACE => "\\0",
             GESHI_MODIFIERS => "mi",
             GESHI_BEFORE => "",
@@ -159,7 +160,7 @@ $language_data = array (
             ),
         //Field-Assignments
         5 => array(
-            GESHI_SEARCH => "(?<=\s)[A-Z0-9\-]+(?==(?!\s|$))",
+            GESHI_SEARCH => "(?<=\s)[A-Z0-9\-\.]+(?==(?:$|\s$|[^\s=]))",
             GESHI_REPLACE => "\\0",
             GESHI_MODIFIERS => "mi",
             GESHI_BEFORE => "",
@@ -177,7 +178,7 @@ $language_data = array (
         ),
     'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
     'SCRIPT_DELIMITERS' => array(
-        0 => "/(?<start>^)[A-Z][a-zA-Z0-9\-]*\s*:\s*(?:.|(?=\n\s)\n)*(?<end>$)/m"
+        0 => "/(?P<start>^)[A-Z][a-zA-Z0-9\-]*\s*:\s*(?:.|(?=\n\s)\n)*(?P<end>$)/m"
     ),
     'HIGHLIGHT_STRICT_BLOCK' => array(
         0 => true,
diff --git a/inc/geshi/erlang.php b/inc/geshi/erlang.php
new file mode 100644
index 0000000000000000000000000000000000000000..cb7f25bf88f23c5d0902e467f00ea3580811e05b
--- /dev/null
+++ b/inc/geshi/erlang.php
@@ -0,0 +1,441 @@
+<?php
+/*************************************************************************************
+ * erlang.php
+ * --------
+ * Author: Benny Baumann (BenBE@geshi.org)
+ * Contributions:
+ * - Uwe Dauernheim (uwe@dauernheim.net)
+ * - Dan Forest-Barbier (dan@twisted.in)
+ * Copyright: (c) 2008 Uwe Dauernheim (http://www.kreisquadratur.de/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2008-09-27
+ *
+ * Erlang language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/05/02 (1.0.8.3)
+ *  -  Now using 'PARSER_CONTROL' instead of huge rexgexps, better and cleaner
+ *
+ * 2009/04/26 (1.0.8.3)
+ *  -  Only link to existing docs / Fixes
+ *
+ * 2008-09-28 (1.0.0.1)
+ *   [!] Bug fixed with keyword module.
+ *   [+] Added more function names
+ *
+ * 2008-09-27 (1.0.0)
+ *   [ ] First Release
+ *
+ * TODO (updated 2008-09-27)
+ * -------------------------
+ *   [!] Stop ';' from being transformed to '<SEMI>'
+ *
+ *************************************************************************************
+ *
+ *     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 => '-&gt;',
+        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][a-zA-Z0-9_]*|\'[a-zA-Z0-9_]*\')\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!]|&lt;)(?!(?:PIPE|SEMI|DOT|NUM|REG3XP\d*)[^a-zA-Z0-9_])([A-Z_][a-zA-Z0-9_]*)',
+            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' => '',
+                'DISALLOWED_AFTER' => '(?=\s*\()'
+            ),
+            5 => array(
+                'DISALLOWED_BEFORE' => '(?<=\'|)',
+                'DISALLOWED_AFTER' => '(?=(\'|):)'
+            ),
+            6 => array(
+                'DISALLOWED_BEFORE' => '(?<=\/|-)',
+                'DISALLOWED_AFTER' => ''
+            )
+        )
+    ),
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/fo.php b/inc/geshi/fo.php
new file mode 100644
index 0000000000000000000000000000000000000000..aa45679613b6ea9c3ffd35262802920ef630e534
--- /dev/null
+++ b/inc/geshi/fo.php
@@ -0,0 +1,327 @@
+<?php
+/*************************************************************************************
+ * fo.php
+ * --------
+ * Author: Tan-Vinh Nguyen (tvnguyen@web.de)
+ * Copyright: (c) 2009 Tan-Vinh Nguyen
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/03/23
+ *
+ * fo language file for GeSHi.
+ *
+ * FO stands for "Flexible Oberflaechen" (Flexible Surfaces) and
+ * is part of the abas-ERP.
+ *
+ * CHANGES
+ * -------
+ * 2009/03/23 (1.0.0)
+ *   -  First Release
+ *      Basic commands in German and English
+ *
+ *************************************************************************************
+ *
+ *     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' => '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(
+        )
+);
+?>
\ No newline at end of file
diff --git a/inc/geshi/fortran.php b/inc/geshi/fortran.php
index 26dc9b19dea2c9802c99c6b9858179d0384cc045..7b390eda7e328e8b64039718d7138052109094b3 100644
--- a/inc/geshi/fortran.php
+++ b/inc/geshi/fortran.php
@@ -4,7 +4,7 @@
  * -----------
  * Author: Cedric Arrabie (cedric.arrabie@univ-pau.fr)
  * Copyright: (C) 2006 Cetric Arrabie
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/04/22
  *
  * Fortran language file for GeSHi.
diff --git a/inc/geshi/freebasic.php b/inc/geshi/freebasic.php
index 780305ba3b87cb7ac2c52886a0ea53882a448757..faeee92f91f859e91904400a89016f571e6ca7af 100644
--- a/inc/geshi/freebasic.php
+++ b/inc/geshi/freebasic.php
@@ -4,7 +4,7 @@
  * -------------
  * Author: Roberto Rossi
  * Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/08/19
  *
  * FreeBasic (http://www.freebasic.net/) language file for GeSHi.
diff --git a/inc/geshi/fsharp.php b/inc/geshi/fsharp.php
new file mode 100644
index 0000000000000000000000000000000000000000..7743d3643990b2c93bcc0a5a70b3b797c1d5ed88
--- /dev/null
+++ b/inc/geshi/fsharp.php
@@ -0,0 +1,211 @@
+<?php
+/*************************************************************************************
+ * fsharp.php
+ * ----------
+ * Author: julien ortin (jo_spam-divers@yahoo.fr)
+ * Copyright: (c) 2009 julien ortin
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/09/20
+ *
+ * F# language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/09/22 (1.0.1)
+ *  -  added rules for single char handling (generics ['a] vs char ['x'])
+ *  -  added symbols and keywords
+ * 2009/09/20 (1.0.0)
+ *  -  Initial release
+ *
+ * TODO
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *   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' => 'F#',
+    'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
+    'COMMENT_MULTI' => array('(*' => '*)', '/*' => '*/'),
+    '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 */
+            ),
+        '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' => "(?<![a-zA-Z0-9\$_\|\#>|^])",
+            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])"
+        )
+    )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/gambas.php b/inc/geshi/gambas.php
new file mode 100644
index 0000000000000000000000000000000000000000..a848440df7e525f2d08ead005cf94a5d5e048c85
--- /dev/null
+++ b/inc/geshi/gambas.php
@@ -0,0 +1,214 @@
+<?php
+/*************************************************************************************
+ * gambas.php
+ * ---------
+ * Author: Jesus Guardon (jguardon@telefonica.net)
+ * Copyright: (c) 2009 Jesus Guardon (http://gambas-es.org),
+ *                     Benny Baumann (http://qbnz.com/highlighter)
+ * Release Version: 1.0.8.6
+ * Date Started: 2004/08/20
+ *
+ * GAMBAS language file for GeSHi.
+ * GAMBAS Official Site: http://gambas.sourceforge.net
+ *
+ * CHANGES
+ * -------
+ * 2009/09/26 (1.0.1)
+ *  -  Splitted dollar-ended keywords in another group to match with or without '$'
+ *  -  Modified URL for object/components keywords search through Google "I'm feeling lucky"
+ * 2009/09/23 (1.0.0)
+ *  -  Initial release
+ *
+ * TODO (updated 2009/09/26)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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&amp;q={FNAMEL}+site:http://gambasdoc.org/help/lang/&amp;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&amp;q={FNAMEL}+site:http://gambasdoc.org/&amp;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_\|%\\-&;\$])"
+                )
+            )
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/gdb.php b/inc/geshi/gdb.php
new file mode 100644
index 0000000000000000000000000000000000000000..10a35cd38e9371c171cabae88e3715d37babf631
--- /dev/null
+++ b/inc/geshi/gdb.php
@@ -0,0 +1,175 @@
+<?php
+/*************************************************************************************
+ * gdb.php
+ * --------
+ * Author: Milian Wolff (mail@milianw.de)
+ * Copyright: (c) 2009 Milian Wolff
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/06/24
+ *
+ * GDB language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/06/24 (1.0.0)
+ *   -  First Release
+ *
+ * TODO (updated 2009/06/24)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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' =>
+        GESHI_NUMBER_INT_BASIC,
+    '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(
+            0 => 'color: #cc66cc;',
+            ),
+        'METHODS' => array(
+            ),
+        'SYMBOLS' => array(
+            ),
+        'REGEXPS' => array(
+            0 => 'color: #000066; font-weight:bold;',
+            1 => 'color: #006600;',
+            2 => 'color: #000066;',
+            3 => 'color: #0066FF; text-style:italic;',
+            4 => 'color: #80B5FF; text-style:italic;',
+            5 => 'color: #A3007D;',
+            6 => 'color: #FF00BF;',
+            7 => 'font-weight: bold;'
+            ),
+        '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 )(.+)(:\d+\s*)$',
+            GESHI_REPLACE => '\\2',
+            GESHI_MODIFIERS => 'm',
+            GESHI_BEFORE => '\\1',
+            GESHI_AFTER => '\\3'
+            ),
+        //Libs without linenumbers
+        4 => array(
+            GESHI_SEARCH => '(from )(.+)(\s*)$',
+            GESHI_REPLACE => '\\2',
+            GESHI_MODIFIERS => 'm',
+            GESHI_BEFORE => '\\1',
+            GESHI_AFTER => '\\3'
+            ),
+        //Hex mem address
+        5 => '0x[a-f0-9]+',
+        //Line numbers
+        6 => array(
+            GESHI_SEARCH => '(:)(\d+)(\s*)$',
+            GESHI_REPLACE => '\\2',
+            GESHI_MODIFIERS => 'm',
+            GESHI_BEFORE => '\\1',
+            GESHI_AFTER => '\\3'
+            ),
+        //Location
+        7 => array(
+            GESHI_SEARCH => '( in )([^ \(\)]+)( \()',
+            GESHI_REPLACE => '\\2',
+            GESHI_MODIFIERS => '',
+            GESHI_BEFORE => '\\1',
+            GESHI_AFTER => '\\3'
+            ),
+        ),
+    'STRICT_MODE_APPLIES' => GESHI_NEVER,
+    'SCRIPT_DELIMITERS' => array(
+        ),
+    'HIGHLIGHT_STRICT_BLOCK' => array(
+        )
+);
+
+?>
diff --git a/inc/geshi/genero.php b/inc/geshi/genero.php
index 1e3d7efb673f1a9ce75695ab230dae10e9dc4513..0b56116271c07b3ca8d534b5f481f10a164aad88 100644
--- a/inc/geshi/genero.php
+++ b/inc/geshi/genero.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Lars Gersmann (lars.gersmann@gmail.com)
  * Copyright: (c) 2007 Lars Gersmann, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/07/01
  *
  * Genero (FOURJ's Genero 4GL) language file for GeSHi.
diff --git a/inc/geshi/gettext.php b/inc/geshi/gettext.php
index a1dcd8c8aee36efcc2ed118fb473676447279dba..10201bd1aec67b37a5030455b880b5c1a54eec69 100644
--- a/inc/geshi/gettext.php
+++ b/inc/geshi/gettext.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Milian Wolff (mail@milianw.de)
  * Copyright: (c) 2008 Milian Wolff
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/05/25
  *
  * GNU Gettext .po/.pot language file for GeSHi.
diff --git a/inc/geshi/glsl.php b/inc/geshi/glsl.php
index 9b31fa4825eda62a874330bdd3b75d75c79ee600..8f521bfc1872e6ff1557bba06886b161a3f35dae 100644
--- a/inc/geshi/glsl.php
+++ b/inc/geshi/glsl.php
@@ -4,7 +4,7 @@
  * -----
  * Author: Benny Baumann (BenBE@omorphia.de)
  * Copyright: (c) 2008 Benny Baumann (BenBE@omorphia.de)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/03/20
  *
  * glSlang language file for GeSHi.
diff --git a/inc/geshi/gml.php b/inc/geshi/gml.php
index da3d3a8e8c344087086bfa004fb0a55f3c110feb..ec7cb5512357d8f402fbfe5adb1984209e3966b3 100644
--- a/inc/geshi/gml.php
+++ b/inc/geshi/gml.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Jos� Jorge Enr�quez (jenriquez@users.sourceforge.net)
  * Copyright: (c) 2005 Jos� Jorge Enr�quez Rodr�guez (http://www.zonamakers.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/06/21
  *
  * GML language file for GeSHi.
diff --git a/inc/geshi/gnuplot.php b/inc/geshi/gnuplot.php
index 863d0dbd6bd6483973d0c1ad5f2bdd676e89ff98..b4762156c805f3200b45040d0e48e7982b7d2749 100644
--- a/inc/geshi/gnuplot.php
+++ b/inc/geshi/gnuplot.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Milian Wolff (mail@milianw.de)
  * Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/07/07
  *
  * Gnuplot script language file for GeSHi.
diff --git a/inc/geshi/groovy.php b/inc/geshi/groovy.php
index 7db153c755b9ecb1422bc8e013bb71869c57d8f0..0270d0135334e4356ae0e4fe74b738a3ee19cd4b 100644
--- a/inc/geshi/groovy.php
+++ b/inc/geshi/groovy.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Ivan F. Villanueva B. (geshi_groovy@artificialidea.com)
  * Copyright: (c) 2006 Ivan F. Villanueva B.(http://www.artificialidea.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/04/29
  *
  * Groovy language file for GeSHi.
@@ -985,7 +985,7 @@ $language_data = array (
     'URLS' => array(
         1 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}',
         2 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}',
-        3 => 'http://www.google.de/search?as_q={FNAME}&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1.5.0%2Fdocs%2Fapi%2F',
+        3 => 'http://www.google.de/search?as_q={FNAME}&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F',
         4 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}',
         5 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}',
         6 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}',
@@ -1008,4 +1008,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/haskell.php b/inc/geshi/haskell.php
index f0e570f1cc9f7c8da93a644f362b3df5249455ed..024382deb8dedf14af71ff1747d64d6f4b5497e7 100644
--- a/inc/geshi/haskell.php
+++ b/inc/geshi/haskell.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Jason Dagit (dagit@codersbase.com) based on ocaml.php by Flaie (fireflaie@gmail.com)
  * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/08/27
  *
  * Haskell language file for GeSHi.
diff --git a/inc/geshi/hq9plus.php b/inc/geshi/hq9plus.php
index 2a5c429ca93bdc6f8528e85517e3c31e0cd50a4f..89af3bee8799df43b1569eec07190585159a13ec 100644
--- a/inc/geshi/hq9plus.php
+++ b/inc/geshi/hq9plus.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Benny Baumann (BenBE@geshi.org)
  * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/10/31
  *
  * HQ9+ language file for GeSHi.
diff --git a/inc/geshi/html4strict.php b/inc/geshi/html4strict.php
index 314351523de377c3c9e5565b876596dd9964fc43..08c7f30c748a354063d29bfabff7bde6210dfc0c 100644
--- a/inc/geshi/html4strict.php
+++ b/inc/geshi/html4strict.php
@@ -4,7 +4,7 @@
  * ---------------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/10
  *
  * HTML 4.01 strict language file for GeSHi.
diff --git a/inc/geshi/idl.php b/inc/geshi/idl.php
index 9160fd150d69fff673dae3bc9f2bed9bef22c2a0..64472140af0e2151617845404db36a4dd1eb86d8 100644
--- a/inc/geshi/idl.php
+++ b/inc/geshi/idl.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Cedric Bosdonnat (cedricbosdo@openoffice.org)
  * Copyright: (c) 2006 Cedric Bosdonnat
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/08/20
  *
  * Unoidl language file for GeSHi.
diff --git a/inc/geshi/ini.php b/inc/geshi/ini.php
index 365b4d6f882c1cfe376a10ada3db865351de1b0e..ae0e81ec4830522d7ad0d1b6eea0795442c6db14 100644
--- a/inc/geshi/ini.php
+++ b/inc/geshi/ini.php
@@ -4,7 +4,7 @@
  * --------
  * Author: deguix (cevo_deguix@yahoo.com.br)
  * Copyright: (c) 2005 deguix
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/03/27
  *
  * INI language file for GeSHi.
diff --git a/inc/geshi/inno.php b/inc/geshi/inno.php
index 99563514d0e888cebd07f955a56a56ea4458d4c5..6d1b9796562dace397c3fe6e18ac08f4c57538f6 100644
--- a/inc/geshi/inno.php
+++ b/inc/geshi/inno.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Thomas Klingler (hotline@theratech.de) based on delphi.php from J�rja Norbert (jnorbi@vipmail.hu)
  * Copyright: (c) 2004 J�rja Norbert, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/07/29
  *
  * Inno Script language inkl. Delphi (Object Pascal) language file for GeSHi.
diff --git a/inc/geshi/intercal.php b/inc/geshi/intercal.php
index a589600896a432e677f2948557f56533c85c49e2..958f886ce55d6f083ebf48dc4001dfb303095e61 100644
--- a/inc/geshi/intercal.php
+++ b/inc/geshi/intercal.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Benny Baumann (BenBE@geshi.org)
  * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/10/31
  *
  * INTERCAL language file for GeSHi.
diff --git a/inc/geshi/io.php b/inc/geshi/io.php
index 7ec53a8819fa2878c1cb68cec667e98d7dfae842..eb4d8646e08b604a260f28e931ee820665c034e7 100644
--- a/inc/geshi/io.php
+++ b/inc/geshi/io.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2006 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/09/23
  *
  * Io language file for GeSHi. Thanks to Johnathan Wright for the suggestion and help
diff --git a/inc/geshi/java.php b/inc/geshi/java.php
index d8a2d5e4d3f8b15ff055ded8de27a7b20a1014cb..b4080f7aca7767434650774a0b61ffe945e41494 100644
--- a/inc/geshi/java.php
+++ b/inc/geshi/java.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/10
  *
  * Java language file for GeSHi.
diff --git a/inc/geshi/java5.php b/inc/geshi/java5.php
index 34696d760d7c710a8298b61f8779f15b829f704c..4abffc6635a1608e5ad8837dee3ae53c092d468a 100644
--- a/inc/geshi/java5.php
+++ b/inc/geshi/java5.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/10
  *
  * Java language file for GeSHi.
@@ -850,167 +850,167 @@ $language_data = array (
         2 => '',
         3 => '',
         4 => '',
-        5 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/applet/{FNAME}.html',
-        6 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/{FNAME}.html',
-        7 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/color/{FNAME}.html',
-        8 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/datatransfer/{FNAME}.html',
-        9 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/dnd/{FNAME}.html',
-        10 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/event/{FNAME}.html',
-        11 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/font/{FNAME}.html',
-        12 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/geom/{FNAME}.html',
-        13 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/im/{FNAME}.html',
-        14 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/im/spi/{FNAME}.html',
-        15 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/image/{FNAME}.html',
-        16 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/image/renderable/{FNAME}.html',
-        17 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/awt/print/{FNAME}.html',
-        18 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/beans/{FNAME}.html',
-        19 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/beans/beancontext/{FNAME}.html',
-        20 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/io/{FNAME}.html',
-        21 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/lang/{FNAME}.html',
-        22 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/lang/annotation/{FNAME}.html',
-        23 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/lang/instrument/{FNAME}.html',
-        24 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/lang/management/{FNAME}.html',
-        25 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/lang/ref/{FNAME}.html',
-        26 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/lang/reflect/{FNAME}.html',
-        27 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/math/{FNAME}.html',
-        28 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/net/{FNAME}.html',
-        29 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/nio/{FNAME}.html',
-        30 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/nio/channels/{FNAME}.html',
-        31 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/nio/channels/spi/{FNAME}.html',
-        32 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/nio/charset/{FNAME}.html',
-        33 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/nio/charset/spi/{FNAME}.html',
-        34 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/rmi/{FNAME}.html',
-        35 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/rmi/activation/{FNAME}.html',
-        36 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/rmi/dgc/{FNAME}.html',
-        37 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/rmi/registry/{FNAME}.html',
-        38 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/rmi/server/{FNAME}.html',
-        39 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/security/{FNAME}.html',
-        40 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/security/acl/{FNAME}.html',
-        41 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/security/cert/{FNAME}.html',
-        42 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/security/interfaces/{FNAME}.html',
-        43 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/security/spec/{FNAME}.html',
-        44 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/sql/{FNAME}.html',
-        45 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/text/{FNAME}.html',
-        46 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/{FNAME}.html',
-        47 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/{FNAME}.html',
-        48 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/atomic/{FNAME}.html',
-        49 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/locks/{FNAME}.html',
-        50 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/jar/{FNAME}.html',
-        51 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/logging/{FNAME}.html',
-        52 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/prefs/{FNAME}.html',
-        53 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/{FNAME}.html',
-        54 => 'http://java.sun.com/j2se/1.5.0/docs/api/java/util/zip/{FNAME}.html',
-        55 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/accessibility/{FNAME}.html',
-        56 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/activity/{FNAME}.html',
-        57 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/crypto/{FNAME}.html',
-        58 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/crypto/interfaces/{FNAME}.html',
-        59 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/crypto/spec/{FNAME}.html',
-        60 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/{FNAME}.html',
-        61 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/event/{FNAME}.html',
-        62 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/metadata/{FNAME}.html',
-        63 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/plugins/bmp/{FNAME}.html',
-        64 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/plugins/jpeg/{FNAME}.html',
-        65 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/spi/{FNAME}.html',
-        66 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/stream/{FNAME}.html',
-        67 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/{FNAME}.html',
-        68 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/loading/{FNAME}.html',
-        69 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/modelmbean/{FNAME}.html',
-        70 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/monitor/{FNAME}.html',
-        71 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/openmbean/{FNAME}.html',
-        72 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/relation/{FNAME}.html',
-        73 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/remote/{FNAME}.html',
-        74 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/remote/rmi/{FNAME}.html',
-        75 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/management/timer/{FNAME}.html',
-        76 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/naming/{FNAME}.html',
-        77 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/naming/directory/{FNAME}.html',
-        78 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/naming/event/{FNAME}.html',
-        79 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/naming/ldap/{FNAME}.html',
-        80 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/naming/spi/{FNAME}.html',
-        81 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/net/{FNAME}.html',
-        82 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/net/ssl/{FNAME}.html',
-        83 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/print/{FNAME}.html',
-        84 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/print/attribute/{FNAME}.html',
-        85 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/print/attribute/standard/{FNAME}.html',
-        86 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/print/event/{FNAME}.html',
-        87 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/rmi/{FNAME}.html',
-        88 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/rmi/CORBA/{FNAME}.html',
-        89 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/rmi/ssl/{FNAME}.html',
-        90 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/security/auth/{FNAME}.html',
-        91 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/security/auth/callback/{FNAME}.html',
-        92 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/security/auth/kerberos/{FNAME}.html',
-        93 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/security/auth/login/{FNAME}.html',
-        94 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/security/auth/spi/{FNAME}.html',
-        95 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/security/auth/x500/{FNAME}.html',
-        96 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/security/sasl/{FNAME}.html',
-        97 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sound/midi/{FNAME}.html',
-        98 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sound/midi/spi/{FNAME}.html',
-        99 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sound/sampled/{FNAME}.html',
-        100 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sound/sampled/spi/{FNAME}.html',
-        101 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sql/{FNAME}.html',
-        102 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sql/rowset/{FNAME}.html',
-        103 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sql/rowset/serial/{FNAME}.html',
-        104 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/sql/rowset/spi/{FNAME}.html',
-        105 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/{FNAME}.html',
-        106 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/border/{FNAME}.html',
-        107 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/colorchooser/{FNAME}.html',
-        108 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/event/{FNAME}.html',
-        109 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/filechooser/{FNAME}.html',
-        110 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/plaf/{FNAME}.html',
-        111 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/plaf/basic/{FNAME}.html',
-        112 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/plaf/metal/{FNAME}.html',
-        113 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/plaf/multi/{FNAME}.html',
-        114 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/plaf/synth/{FNAME}.html',
-        115 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/table/{FNAME}.html',
-        116 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/text/{FNAME}.html',
-        117 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/text/html/{FNAME}.html',
-        118 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/text/html/parser/{FNAME}.html',
-        119 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/text/rtf/{FNAME}.html',
-        120 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/tree/{FNAME}.html',
-        121 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/undo/{FNAME}.html',
-        122 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/transaction/{FNAME}.html',
-        123 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/transaction/xa/{FNAME}.html',
-        124 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/{FNAME}.html',
-        125 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/datatype/{FNAME}.html',
-        126 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/namespace/{FNAME}.html',
-        127 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/parsers/{FNAME}.html',
-        128 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/transform/{FNAME}.html',
-        129 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/transform/dom/{FNAME}.html',
-        130 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/transform/sax/{FNAME}.html',
-        131 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/transform/stream/{FNAME}.html',
-        132 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/validation/{FNAME}.html',
-        133 => 'http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/xpath/{FNAME}.html',
-        134 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/ietf/jgss/{FNAME}.html',
-        135 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/CORBA/{FNAME}.html',
-        136 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/CORBA/DynAnyPackage/{FNAME}.html',
-        137 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/CORBA/TypeCodePackage/{FNAME}.html',
-        138 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/CORBA/portable/{FNAME}.html',
-        139 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/CosNaming/{FNAME}.html',
-        140 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/CosNaming/NamingContextExtPackage/{FNAME}.html',
-        141 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/CosNaming/NamingContextPackage/{FNAME}.html',
-        142 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/Dynamic/{FNAME}.html',
-        143 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/DynamicAny/{FNAME}.html',
-        144 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/DynamicAny/DynAnyFactoryPackage/{FNAME}.html',
-        145 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/DynamicAny/DynAnyPackage/{FNAME}.html',
-        146 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/IOP/{FNAME}.html',
-        147 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/IOP/CodecFactoryPackage/{FNAME}.html',
-        148 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/IOP/CodecPackage/{FNAME}.html',
-        149 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/Messaging/{FNAME}.html',
-        150 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/PortableInterceptor/{FNAME}.html',
-        151 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/PortableInterceptor/ORBInitInfoPackage/{FNAME}.html',
-        152 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/PortableServer/{FNAME}.html',
-        153 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/PortableServer/CurrentPackage/{FNAME}.html',
-        154 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/{FNAME}.html',
-        155 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/PortableServer/POAPackage/{FNAME}.html',
-        156 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/PortableServer/ServantLocatorPackage/{FNAME}.html',
-        157 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/SendingContext/{FNAME}.html',
-        158 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/omg/stub/java/rmi/{FNAME}.html',
-        159 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/{FNAME}.html',
-        160 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/bootstrap/{FNAME}.html',
-        161 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/events/{FNAME}.html',
-        162 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/ls/{FNAME}.html',
-        163 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/{FNAME}.html',
-        164 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/ext/{FNAME}.html',
-        165 => 'http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/helpers/{FNAME}.html',
+        5 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/applet/{FNAME}.html',
+        6 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/{FNAME}.html',
+        7 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/color/{FNAME}.html',
+        8 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/datatransfer/{FNAME}.html',
+        9 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/dnd/{FNAME}.html',
+        10 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/event/{FNAME}.html',
+        11 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/font/{FNAME}.html',
+        12 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/geom/{FNAME}.html',
+        13 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/im/{FNAME}.html',
+        14 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/im/spi/{FNAME}.html',
+        15 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/image/{FNAME}.html',
+        16 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/image/renderable/{FNAME}.html',
+        17 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/print/{FNAME}.html',
+        18 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/beans/{FNAME}.html',
+        19 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/beans/beancontext/{FNAME}.html',
+        20 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/io/{FNAME}.html',
+        21 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/{FNAME}.html',
+        22 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/annotation/{FNAME}.html',
+        23 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/instrument/{FNAME}.html',
+        24 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/management/{FNAME}.html',
+        25 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/ref/{FNAME}.html',
+        26 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/reflect/{FNAME}.html',
+        27 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/math/{FNAME}.html',
+        28 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/{FNAME}.html',
+        29 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/{FNAME}.html',
+        30 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/channels/{FNAME}.html',
+        31 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/channels/spi/{FNAME}.html',
+        32 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/charset/{FNAME}.html',
+        33 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/charset/spi/{FNAME}.html',
+        34 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/{FNAME}.html',
+        35 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/activation/{FNAME}.html',
+        36 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/dgc/{FNAME}.html',
+        37 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/registry/{FNAME}.html',
+        38 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/server/{FNAME}.html',
+        39 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/{FNAME}.html',
+        40 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/acl/{FNAME}.html',
+        41 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/cert/{FNAME}.html',
+        42 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/interfaces/{FNAME}.html',
+        43 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/spec/{FNAME}.html',
+        44 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/sql/{FNAME}.html',
+        45 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/text/{FNAME}.html',
+        46 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/{FNAME}.html',
+        47 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/{FNAME}.html',
+        48 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/atomic/{FNAME}.html',
+        49 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/locks/{FNAME}.html',
+        50 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/jar/{FNAME}.html',
+        51 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/logging/{FNAME}.html',
+        52 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/prefs/{FNAME}.html',
+        53 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/regex/{FNAME}.html',
+        54 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/zip/{FNAME}.html',
+        55 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/accessibility/{FNAME}.html',
+        56 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/activity/{FNAME}.html',
+        57 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/{FNAME}.html',
+        58 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/interfaces/{FNAME}.html',
+        59 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/spec/{FNAME}.html',
+        60 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/{FNAME}.html',
+        61 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/event/{FNAME}.html',
+        62 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/metadata/{FNAME}.html',
+        63 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/plugins/bmp/{FNAME}.html',
+        64 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/plugins/jpeg/{FNAME}.html',
+        65 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/spi/{FNAME}.html',
+        66 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/stream/{FNAME}.html',
+        67 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/{FNAME}.html',
+        68 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/loading/{FNAME}.html',
+        69 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/modelmbean/{FNAME}.html',
+        70 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/monitor/{FNAME}.html',
+        71 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/openmbean/{FNAME}.html',
+        72 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/relation/{FNAME}.html',
+        73 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/remote/{FNAME}.html',
+        74 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/remote/rmi/{FNAME}.html',
+        75 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/timer/{FNAME}.html',
+        76 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/{FNAME}.html',
+        77 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/directory/{FNAME}.html',
+        78 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/event/{FNAME}.html',
+        79 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/ldap/{FNAME}.html',
+        80 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/spi/{FNAME}.html',
+        81 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/net/{FNAME}.html',
+        82 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/net/ssl/{FNAME}.html',
+        83 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/{FNAME}.html',
+        84 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/attribute/{FNAME}.html',
+        85 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/attribute/standard/{FNAME}.html',
+        86 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/event/{FNAME}.html',
+        87 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/{FNAME}.html',
+        88 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/CORBA/{FNAME}.html',
+        89 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/ssl/{FNAME}.html',
+        90 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/{FNAME}.html',
+        91 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/callback/{FNAME}.html',
+        92 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/kerberos/{FNAME}.html',
+        93 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/login/{FNAME}.html',
+        94 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/spi/{FNAME}.html',
+        95 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/x500/{FNAME}.html',
+        96 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/sasl/{FNAME}.html',
+        97 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/midi/{FNAME}.html',
+        98 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/midi/spi/{FNAME}.html',
+        99 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/sampled/{FNAME}.html',
+        100 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/sampled/spi/{FNAME}.html',
+        101 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/{FNAME}.html',
+        102 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/{FNAME}.html',
+        103 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/serial/{FNAME}.html',
+        104 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/spi/{FNAME}.html',
+        105 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/{FNAME}.html',
+        106 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/border/{FNAME}.html',
+        107 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/colorchooser/{FNAME}.html',
+        108 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/event/{FNAME}.html',
+        109 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/filechooser/{FNAME}.html',
+        110 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/{FNAME}.html',
+        111 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/basic/{FNAME}.html',
+        112 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/metal/{FNAME}.html',
+        113 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/multi/{FNAME}.html',
+        114 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/synth/{FNAME}.html',
+        115 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/table/{FNAME}.html',
+        116 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/{FNAME}.html',
+        117 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/html/{FNAME}.html',
+        118 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/html/parser/{FNAME}.html',
+        119 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/rtf/{FNAME}.html',
+        120 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/tree/{FNAME}.html',
+        121 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/undo/{FNAME}.html',
+        122 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/transaction/{FNAME}.html',
+        123 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/transaction/xa/{FNAME}.html',
+        124 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/{FNAME}.html',
+        125 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/datatype/{FNAME}.html',
+        126 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/namespace/{FNAME}.html',
+        127 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/parsers/{FNAME}.html',
+        128 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/{FNAME}.html',
+        129 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/dom/{FNAME}.html',
+        130 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/sax/{FNAME}.html',
+        131 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/stream/{FNAME}.html',
+        132 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/validation/{FNAME}.html',
+        133 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/xpath/{FNAME}.html',
+        134 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/ietf/jgss/{FNAME}.html',
+        135 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/{FNAME}.html',
+        136 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/DynAnyPackage/{FNAME}.html',
+        137 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/TypeCodePackage/{FNAME}.html',
+        138 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/portable/{FNAME}.html',
+        139 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/{FNAME}.html',
+        140 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/NamingContextExtPackage/{FNAME}.html',
+        141 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/NamingContextPackage/{FNAME}.html',
+        142 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/Dynamic/{FNAME}.html',
+        143 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/{FNAME}.html',
+        144 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/DynAnyFactoryPackage/{FNAME}.html',
+        145 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/DynAnyPackage/{FNAME}.html',
+        146 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/{FNAME}.html',
+        147 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/CodecFactoryPackage/{FNAME}.html',
+        148 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/CodecPackage/{FNAME}.html',
+        149 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/Messaging/{FNAME}.html',
+        150 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableInterceptor/{FNAME}.html',
+        151 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableInterceptor/ORBInitInfoPackage/{FNAME}.html',
+        152 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/{FNAME}.html',
+        153 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/CurrentPackage/{FNAME}.html',
+        154 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/POAManagerPackage/{FNAME}.html',
+        155 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/POAPackage/{FNAME}.html',
+        156 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/ServantLocatorPackage/{FNAME}.html',
+        157 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/SendingContext/{FNAME}.html',
+        158 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/stub/java/rmi/{FNAME}.html',
+        159 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/{FNAME}.html',
+        160 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/bootstrap/{FNAME}.html',
+        161 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/events/{FNAME}.html',
+        162 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/ls/{FNAME}.html',
+        163 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/{FNAME}.html',
+        164 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/ext/{FNAME}.html',
+        165 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/helpers/{FNAME}.html',
         /* ambiguous class names (appear in more than one package) */
         166 => 'http://www.google.com/search?sitesearch=java.sun.com&amp;q=allinurl%3Aj2se%2F1+5+0%2Fdocs%2Fapi+{FNAME}'
         ),
@@ -1028,4 +1028,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/javascript.php b/inc/geshi/javascript.php
index 4ffef2b2ef6526efea90855fcd0d6d31fc17ede1..96c345477a8e02b476c45ff92c092b92c7673b17 100644
--- a/inc/geshi/javascript.php
+++ b/inc/geshi/javascript.php
@@ -4,7 +4,7 @@
  * --------------
  * Author: Ben Keen (ben.keen@gmail.com)
  * Copyright: (c) 2004 Ben Keen (ben.keen@gmail.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/20
  *
  * JavaScript language file for GeSHi.
diff --git a/inc/geshi/jquery.php b/inc/geshi/jquery.php
new file mode 100644
index 0000000000000000000000000000000000000000..b4264cb1c437fc79b506701efd14dcfd7b4ea5c0
--- /dev/null
+++ b/inc/geshi/jquery.php
@@ -0,0 +1,238 @@
+<?php
+/*************************************************************************************
+ * jquery.php
+ * --------------
+ * Author: Rob Loach (http://www.robloach.net)
+ * Copyright: (c) 2009 Rob Loach (http://www.robloach.net)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/07/20
+ *
+ * jQuery 1.3 language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/07/20 (1.0.8.5)
+ *  -  First Release
+ *
+ * TODO (updated 2009/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' => '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(
+            '<script type="text/javascript">' => '</script>'
+            ),
+        1 => array(
+            '<script language="javascript">' => '</script>'
+            )
+        ),
+    'HIGHLIGHT_STRICT_BLOCK' => array(
+        0 => true,
+        1 => true
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/kixtart.php b/inc/geshi/kixtart.php
index bdffd5875a02421f6ffeadefe0c5087412c27c79..3d37f8ce68eb3a2ccbe9faa74c4fc84e19d612e3 100644
--- a/inc/geshi/kixtart.php
+++ b/inc/geshi/kixtart.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Riley McArdle (riley@glyff.net)
  * Copyright: (c) 2007 Riley McArdle (http://www.glyff.net/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/08/31
  *
  * PHP language file for GeSHi.
diff --git a/inc/geshi/klonec.php b/inc/geshi/klonec.php
index 03d64a166f0e9336bebc8b03a3bc19c452bf70a1..24f32dbc34e8c9da7f6f2d1bf67a11a7d1bea86a 100644
--- a/inc/geshi/klonec.php
+++ b/inc/geshi/klonec.php
@@ -4,7 +4,7 @@
  * --------
  * Author: AUGER Mickael
  * Copyright: Synchronic
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/04/16
  *
  * KLone with C language file for GeSHi.
diff --git a/inc/geshi/klonecpp.php b/inc/geshi/klonecpp.php
index fd2d5386418af7b62c44a4911b06bb3ba540b092..ad2844c6dc85e697fc5aebb10ca3d0ba13459d51 100644
--- a/inc/geshi/klonecpp.php
+++ b/inc/geshi/klonecpp.php
@@ -4,7 +4,7 @@
  * --------
  * Author: AUGER Mickael
  * Copyright: Synchronic
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/04/16
  *
  * KLone with C++ language file for GeSHi.
diff --git a/inc/geshi/latex.php b/inc/geshi/latex.php
index bad2c186189f0c613e0de0fa86db16f47e9b296f..ae7f0b3c5759ac5b2beee5f32638a64c9e7a7be9 100644
--- a/inc/geshi/latex.php
+++ b/inc/geshi/latex.php
@@ -4,7 +4,7 @@
  * -----
  * Author: efi, Matthias Pospiech (matthias@pospiech.eu)
  * Copyright: (c) 2006 efi, Matthias Pospiech (matthias@pospiech.eu), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/09/23
  *
  * LaTeX language file for GeSHi.
@@ -61,21 +61,26 @@ $language_data = array (
     'ESCAPE_CHAR' => '',
     'KEYWORDS' => array(
         1 => array(
-            'addlinespace','address','appendix','author','backmatter',
+            'addlinespace','and','address','appendix','author','backmatter',
             'bfseries','bibitem','bigskip','blindtext','caption','captionabove',
-            'captionbelow','cdot','centering','cite','color','colorbox','date',
-            'def','definecolor','documentclass','edef','eqref','else','email','emph','fbox',
-            'fi','flushleft','flushright','footnote','frac','frontmatter','graphicspath','hfill',
-            'hline','hspace','huge','include','includegraphics','infty','input','int','ifx',
-            'item','label','LaTeX','left','let','limits','listfiles','listoffigures',
-            'listoftables','mainmatter','makeatletter','makeatother','makebox',
-            'makeindex','maketitle','mbox','mediumskip','newcommand',
-            'newenvironment','newpage','nocite','nonumber','pagestyle','par','paragraph','parbox',
-            'parident','parskip','partial','raggedleft','raggedright','raisebox','ref',
-            'renewcommand','renewenvironment','right','rule','section','setlength',
-            'sffamily','subparagraph','subsection','subsubsection','sum','table',
-            'tableofcontents','textbf','textcolor','textit','textnormal',
-            'textsuperscript','texttt','title','today','ttfamily','urlstyle',
+            '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','hfill','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','vspace'
             )
         ),
diff --git a/inc/geshi/lisp.php b/inc/geshi/lisp.php
index aa492058bb994137c2222e19f2003fcc0d3f9ed8..3ca20fdc57fc9638db64752f026aa012aa957e29 100644
--- a/inc/geshi/lisp.php
+++ b/inc/geshi/lisp.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Roberto Rossi (rsoftware@altervista.org)
  * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/30
  *
  * Generic Lisp language file for GeSHi.
diff --git a/inc/geshi/locobasic.php b/inc/geshi/locobasic.php
index a799d690081028ddcc61a75d0c2b352dfcc63c24..e0cceea3d863d33123556f61067eff72f7e0a103 100644
--- a/inc/geshi/locobasic.php
+++ b/inc/geshi/locobasic.php
@@ -4,7 +4,7 @@
  * -------------
  * Author: Nacho Cabanes
  * Copyright: (c) 2009 Nacho Cabanes (http://www.nachocabanes.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/03/22
  *
  * Locomotive Basic (Amstrad CPC series) language file for GeSHi.
@@ -80,8 +80,8 @@ $language_data = array (
         ),
     'STYLES' => array(
         'KEYWORDS' => array(
-            1 => 'color: #0000ff; font-weight: bold;',
-            2 => 'color: #008888; font-weight: bold;'
+            1 => 'color: #000088; font-weight: bold;',
+            2 => 'color: #AA00AA; font-weight: bold;'
             ),
         'COMMENTS' => array(
             1 => 'color: #808080;',
@@ -91,7 +91,7 @@ $language_data = array (
             0 => 'color: #ff0000;'
             ),
         'STRINGS' => array(
-            0 => 'color: #ff0000;'
+            0 => 'color: #008800;'
             ),
         'NUMBERS' => array(
             0 => 'color: #0044ff;'
diff --git a/inc/geshi/logtalk.php b/inc/geshi/logtalk.php
new file mode 100644
index 0000000000000000000000000000000000000000..3321e0de4afd6922afcb0bc1b5997cc6311f483c
--- /dev/null
+++ b/inc/geshi/logtalk.php
@@ -0,0 +1,330 @@
+<?php
+/*************************************************************************************
+ * logtalk.php
+ * -----------
+ *
+ * Author: Paulo Moura (pmoura@logtalk.org)
+ * Copyright: (c) 2009 Paulo Moura (http://logtalk.org/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/10/24
+ *
+ * Logtalk language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/10/28 (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' => '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', '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',
+            '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', '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',
+            // term testing
+            'atom', 'atomic', 'compound', 'float', 'integer', 'nonvar', 'number', 'sub_atom', 'var',
+            // 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',
+            //
+            'halt'
+            ),
+        // 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(
+            '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' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])',
+                'DISALLOWED_AFTER' => '(?=\()'
+            ),
+            4 => array(
+                'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])',
+                'DISALLOWED_AFTER' => '(?=\()'
+            ),
+            5 => array(
+                'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])',
+                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])'
+            ),
+            6 => array(
+                'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^&\'"])',
+                'DISALLOWED_AFTER' => '(?=\()'
+            ),
+            7 => array(
+                'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^&\'"])',
+                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])'
+            )
+        )
+    ),
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/lolcode.php b/inc/geshi/lolcode.php
index fc60e3e9f6152758f6a625e2caa06afcc37e2dcc..26e486d3a1816aa936b5901a672079b855fe581a 100644
--- a/inc/geshi/lolcode.php
+++ b/inc/geshi/lolcode.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Benny Baumann (BenBE@geshi.org)
  * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/10/31
  *
  * LOLcode language file for GeSHi.
diff --git a/inc/geshi/lotusformulas.php b/inc/geshi/lotusformulas.php
index e82d6bf3d50cc3dbed658f7df83d935c2aa5cf70..67fd4fa0a24ba5b3f95a812750c5115584f94ac5 100644
--- a/inc/geshi/lotusformulas.php
+++ b/inc/geshi/lotusformulas.php
@@ -4,7 +4,7 @@
  * ------------------------
  * Author: Richard Civil (info@richardcivil.net)
  * Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/04/12
  *
  * @Formula/@Command language file for GeSHi.
diff --git a/inc/geshi/lotusscript.php b/inc/geshi/lotusscript.php
index 5272377b121e8f6199e66de30aab8ec545c76fe2..5c1d61f92b3cb4cffe60a9ce0d1875dad4bde4e9 100644
--- a/inc/geshi/lotusscript.php
+++ b/inc/geshi/lotusscript.php
@@ -4,7 +4,7 @@
  * ------------------------
  * Author: Richard Civil (info@richardcivil.net)
  * Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/04/12
  *
  * LotusScript language file for GeSHi.
diff --git a/inc/geshi/lscript.php b/inc/geshi/lscript.php
index 1a5b0726e5a078ba6511eb259d90d326fb09b8ae..33cd0163db14762d5034ed744131f47e384c7aea 100644
--- a/inc/geshi/lscript.php
+++ b/inc/geshi/lscript.php
@@ -4,7 +4,7 @@
  * ---------
  * Author: Arendedwinter (admin@arendedwinter.com)
  * Copyright: (c) 2008 Beau McGuigan (http://www.arendedwinter.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 15/11/2008
  *
  * Lightwave Script language file for GeSHi.
diff --git a/inc/geshi/lsl2.php b/inc/geshi/lsl2.php
index 0b62ee8b798dc93ec50f8eaf2b7f4b2dfced06bd..8b62fc219e147b6ac1f716f7fa2eb1e373ad508c 100644
--- a/inc/geshi/lsl2.php
+++ b/inc/geshi/lsl2.php
@@ -4,7 +4,7 @@
  * --------
  * Author: William Fry (william.fry@nyu.edu)
  * Copyright: (c) 2009 William Fry
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/02/04
  *
  * Linden Scripting Language (LSL2) language file for GeSHi.
diff --git a/inc/geshi/lua.php b/inc/geshi/lua.php
index f85086bb2232623479d101bdcc8b5cc9948bb987..2a630b2c8f634fcb8c349ddb96cc294473f02579 100644
--- a/inc/geshi/lua.php
+++ b/inc/geshi/lua.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Roberto Rossi (rsoftware@altervista.org)
  * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/10
  *
  * LUA language file for GeSHi.
diff --git a/inc/geshi/m68k.php b/inc/geshi/m68k.php
index cc5807c6f0cf242636473e194fd69848a40f8bec..9aae868aff37490a491233c51ba6f6fff2e5eb6a 100644
--- a/inc/geshi/m68k.php
+++ b/inc/geshi/m68k.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Benny Baumann (BenBE@omorphia.de)
  * Copyright: (c) 2007 Benny Baumann (http://www.omorphia.de/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/02/06
  *
  * Motorola 68000 Assembler language file for GeSHi.
diff --git a/inc/geshi/make.php b/inc/geshi/make.php
index f01209ebfe2df9bab629a78992ba722d8cf94b2b..0212655488e7f0b9a5dffbdc4aea723fe5ad4a74 100644
--- a/inc/geshi/make.php
+++ b/inc/geshi/make.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Neil Bird <phoenix@fnxweb.com>
  * Copyright: (c) 2008 Neil Bird
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/08/26
  *
  * make language file for GeSHi.
diff --git a/inc/geshi/mapbasic.php b/inc/geshi/mapbasic.php
new file mode 100644
index 0000000000000000000000000000000000000000..74be1f6734997b109e5a5e7de5ea650789c07d68
--- /dev/null
+++ b/inc/geshi/mapbasic.php
@@ -0,0 +1,908 @@
+<?php
+/*************************************************************************************
+ * mapbasic.php
+ * ------
+ * Author: Tomasz Berus (t.berus@gisodkuchni.pl)
+ * Copyright: (c) 2009 Tomasz Berus (http://sourceforge.net/projects/mbsyntax/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2008/11/25
+ *
+ * MapBasic language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/09/17 (1.0.1)
+ *  -  Replaced all tabs with spaces
+ *  -  Fixed 'URLS' array
+ * 2008/11/25 (1.0.0)
+ *  -  First Release (MapBasic v9.5)
+ *
+ * TODO (updated 2008/11/25)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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(
+        ),
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/matlab.php b/inc/geshi/matlab.php
index f7b6495738217742b285fa9a5a28878b64b0b9c4..f3ad3496813c234cb5ec24396a4735df10c556da 100644
--- a/inc/geshi/matlab.php
+++ b/inc/geshi/matlab.php
@@ -4,7 +4,7 @@
  * -----------
  * Author: Florian Knorn (floz@gmx.de)
  * Copyright: (c) 2004 Florian Knorn (http://www.florian-knorn.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/02/09
  *
  * Matlab M-file language file for GeSHi.
diff --git a/inc/geshi/mirc.php b/inc/geshi/mirc.php
index bc773458cb83c5059425aa86ee20cea3d9cf238e..a27c6c26543760d89042823af8e90e83c09a28fe 100644
--- a/inc/geshi/mirc.php
+++ b/inc/geshi/mirc.php
@@ -4,7 +4,7 @@
  * -----
  * Author: Alberto 'Birckin' de Areba (Birckin@hotmail.com)
  * Copyright: (c) 2006 Alberto de Areba
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/05/29
  *
  * mIRC Scripting language file for GeSHi.
diff --git a/inc/geshi/mmix.php b/inc/geshi/mmix.php
new file mode 100644
index 0000000000000000000000000000000000000000..efdb932f1f9784169f5012166d64d75ae06f49e4
--- /dev/null
+++ b/inc/geshi/mmix.php
@@ -0,0 +1,173 @@
+<?php
+/*************************************************************************************
+ * mmix.php
+ * -------
+ * Author: Benny Baumann (BenBE@geshi.org)
+ * Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/10/16
+ *
+ * MMIX Assembler language file for GeSHi.
+ *
+ * This is an implementation of the MMIX language as designed by Donald E. Knuth
+ *
+ * CHANGES
+ * -------
+ * 2004/08/05 (1.0.8.6)
+ *   -  First Release
+ *
+ * TODO (updated 2009/10/16)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => 'MMIX',
+    'COMMENT_SINGLE' => array(1 => ';'),
+    'COMMENT_MULTI' => array(),
+    //Line address prefix suppression
+    'COMMENT_REGEXP' => array(2 => "/^\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' => '',
+    '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','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'
+            ),
+        /*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: #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;'
+            ),
+        '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' => "(?<![a-zA-Z0-9\$_\|\#>|^])",
+            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])"
+        )
+    )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/modula3.php b/inc/geshi/modula3.php
index a1f04ca59cf478b3adfa2bc15b69f9af1306f9e9..caff92788ac66b9731d6317b721f2abe60e9504e 100644
--- a/inc/geshi/modula3.php
+++ b/inc/geshi/modula3.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: mbishop (mbishop@esoteriq.org)
  * Copyright: (c) 2009 mbishop (mbishop@esoteriq.org)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/01/21
  *
  * Modula-3 language file for GeSHi.
diff --git a/inc/geshi/mpasm.php b/inc/geshi/mpasm.php
index 53aa9e7a1e38ba21f2e67f496707f4141325ec9d..d97f0b17fc1b55a9606da04eaa472f4cfc9cbc98 100644
--- a/inc/geshi/mpasm.php
+++ b/inc/geshi/mpasm.php
@@ -4,7 +4,7 @@
  * ---------
  * Author: Bakalex (bakalex@gmail.com)
  * Copyright: (c) 2004 Bakalex, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/12/6
  *
  * Microchip Assembler language file for GeSHi.
diff --git a/inc/geshi/mxml.php b/inc/geshi/mxml.php
index d34a9253173839d6181adae85bdf571535476c57..a2073d3abe19e2d3e161dc5de50ee49234030b45 100644
--- a/inc/geshi/mxml.php
+++ b/inc/geshi/mxml.php
@@ -4,7 +4,7 @@
  * -------
  * Author: David Spurr
  * Copyright: (c) 2007 David Spurr (http://www.defusion.org.uk/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/10/04
  *
  * MXML language file for GeSHi. Based on the XML file by Nigel McNie
diff --git a/inc/geshi/mysql.php b/inc/geshi/mysql.php
index f41092c161c640ee09ff34127bcd1f969cd70d6c..3bc6f9504a218ab98d099c983b0e292c85c151c7 100644
--- a/inc/geshi/mysql.php
+++ b/inc/geshi/mysql.php
@@ -4,7 +4,7 @@
  * ---------
  * Author: Marjolein Katsma (marjolein.is.back@gmail.com)
  * Copyright: (c) 2008 Marjolein Katsma (http://blog.marjoleinkatsma.com/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008-12-12
  *
  * MySQL language file for GeSHi.
@@ -391,35 +391,35 @@ $language_data = array (
             )
         ),
     'URLS' => array(
-        1 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        2 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        3 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        4 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        5 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        6 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        7 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        8 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
-        9 => 'http://search.mysql.com/search?site=refman-51&amp;q={FNAME}&amp;lr=lang_en',
+        1 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        2 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        3 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        4 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        5 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        6 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        7 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        8 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
+        9 => 'http://search.mysql.com/search?site=refman-%35%31&amp;q={FNAME}',
 
-        10 => 'http://dev.mysql.com/doc/refman/5.1/en/non-typed-operators.html',
-        11 => 'http://dev.mysql.com/doc/refman/5.1/en/non-typed-operators.html',
+        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/5.1/en/control-flow-functions.html',
-        13 => 'http://dev.mysql.com/doc/refman/5.1/en/string-functions.html',
-        14 => 'http://dev.mysql.com/doc/refman/5.1/en/string-functions.html',
-        15 => 'http://dev.mysql.com/doc/refman/5.1/en/numeric-functions.html',
-        16 => 'http://dev.mysql.com/doc/refman/5.1/en/numeric-functions.html',
-        17 => 'http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html',
-        18 => 'http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html',
-        19 => 'http://dev.mysql.com/doc/refman/5.1/en/comparison-operators.html',
-        20 => 'http://dev.mysql.com/doc/refman/5.1/en/comparison-operators.html',
-        21 => 'http://dev.mysql.com/doc/refman/5.1/en/encryption-functions.html',
-        22 => 'http://dev.mysql.com/doc/refman/5.1/en/group-by-functions-and-modifiers.html',
-        23 => 'http://dev.mysql.com/doc/refman/5.1/en/information-functions.html',
-        24 => 'http://dev.mysql.com/doc/refman/5.1/en/information-functions.html',
-        25 => 'http://dev.mysql.com/doc/refman/5.1/en/func-op-summary-ref.html',
-        26 => 'http://dev.mysql.com/doc/refman/5.1/en/func-op-summary-ref.html',
-        27 => 'http://dev.mysql.com/doc/refman/5.1/en/analysing-spatial-information.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(
@@ -472,4 +472,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/newlisp.php b/inc/geshi/newlisp.php
new file mode 100644
index 0000000000000000000000000000000000000000..ee2589a079027610dafce883b3ad25251c9527f4
--- /dev/null
+++ b/inc/geshi/newlisp.php
@@ -0,0 +1,191 @@
+<?php
+/*************************************************************************************
+ * newlisp.php
+ * ----------
+ * Author: cormullion (cormullion@mac.com) Sept 2009
+ * Copyright: (c) 2009 Cormullion (http://unbalanced-parentheses.nfshost.com/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/09/30
+ *
+ * newLISP language file for GeSHi.
+ *
+ * based on work by Lutz Mueller and Jeff Ober
+ *
+ * CHANGES
+ * -------
+ * 2009/09/30 (1.0.8.6)
+ *  -  First Release
+ *
+ * TODO (updated 2009/09/30)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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\-])',
+            )
+        ),
+
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/nsis.php b/inc/geshi/nsis.php
index 63767b02562db5b97dd133258c13437c33719cd9..d5f63110114d15448a591db2719c1e7f45711f8e 100644
--- a/inc/geshi/nsis.php
+++ b/inc/geshi/nsis.php
@@ -4,7 +4,7 @@
  * --------
  * Author: deguix (cevo_deguix@yahoo.com.br), Tux (http://tux.a4.cz/)
  * Copyright: (c) 2005 deguix, 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/12/03
  *
  * Nullsoft Scriptable Install System language file for GeSHi.
diff --git a/inc/geshi/oberon2.php b/inc/geshi/oberon2.php
index 4e4223f4f703780a880c9279cb9dc7c132903fed..35152b55f2dd582dfbf44075db953e85946aeec4 100644
--- a/inc/geshi/oberon2.php
+++ b/inc/geshi/oberon2.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: mbishop (mbishop@esoteriq.org)
  * Copyright: (c) 2009 mbishop (mbishop@esoteriq.org)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/02/10
  *
  * Oberon-2 language file for GeSHi.
diff --git a/inc/geshi/objc.php b/inc/geshi/objc.php
index ec8d18e72cc092d556c1115e7c19a70e76117df0..084be712442ece4902e810119f6966ce8675599f 100644
--- a/inc/geshi/objc.php
+++ b/inc/geshi/objc.php
@@ -5,7 +5,7 @@
  * Author: M. Uli Kusterer (witness.of.teachtext@gmx.net)
  * Contributors: Quinn Taylor (quinntaylor@mac.com)
  * Copyright: (c) 2008 Quinn Taylor, 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * Objective-C language file for GeSHi.
diff --git a/inc/geshi/ocaml-brief.php b/inc/geshi/ocaml-brief.php
index f3d01a0a1129428b43b9682c8a47bc72307e6cf7..d9e3124f037effe18e6199f1541b22c5728a46f1 100644
--- a/inc/geshi/ocaml-brief.php
+++ b/inc/geshi/ocaml-brief.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Flaie (fireflaie@gmail.com)
  * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/08/27
  *
  * OCaml (Objective Caml) language file for GeSHi.
diff --git a/inc/geshi/ocaml.php b/inc/geshi/ocaml.php
index 505149c31f0ab11c7e68972604180e5c058ca6a5..a14d2dec1b7fa200e49dcc793add2496681282c8 100644
--- a/inc/geshi/ocaml.php
+++ b/inc/geshi/ocaml.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Flaie (fireflaie@gmail.com)
  * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/08/27
  *
  * OCaml (Objective Caml) language file for GeSHi.
diff --git a/inc/geshi/oobas.php b/inc/geshi/oobas.php
index b4f95512ab8285160a98a0f0b7fcd2cfcb433537..b3a5a0b6d9017ec92510357a0ed8bab572a08701 100644
--- a/inc/geshi/oobas.php
+++ b/inc/geshi/oobas.php
@@ -4,7 +4,7 @@
  * ---------
  * Author: Roberto Rossi (rsoftware@altervista.org)
  * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/30
  *
  * OpenOffice.org Basic language file for GeSHi.
diff --git a/inc/geshi/oracle11.php b/inc/geshi/oracle11.php
index e5417d7d0c37888e302051a67f7f43864b92ca29..08c25b66d4370620cb32baf4f7912e48a46cd2c6 100644
--- a/inc/geshi/oracle11.php
+++ b/inc/geshi/oracle11.php
@@ -6,7 +6,7 @@
  * Contributions:
  * - Updated for 11i by Simon Redhead
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * Oracle 11i language file for GeSHi.
diff --git a/inc/geshi/oracle8.php b/inc/geshi/oracle8.php
index d216db0a14e760531c97d1cf2521aa15349535e8..5ac18786d137baabe45f0db5c990c44b12d0714a 100644
--- a/inc/geshi/oracle8.php
+++ b/inc/geshi/oracle8.php
@@ -4,7 +4,7 @@
  * -----------
  * Author: Guy Wicks (Guy.Wicks@rbs.co.uk)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * Oracle 8 language file for GeSHi.
diff --git a/inc/geshi/pascal.php b/inc/geshi/pascal.php
index 01a66bfa0345fb572acef3ae8f19ae760dbdb3e2..948c00ce4201b1a67175d1338ee9823188b73451 100644
--- a/inc/geshi/pascal.php
+++ b/inc/geshi/pascal.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Tux (tux@inamil.cz)
  * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/26
  *
  * Pascal language file for GeSHi.
diff --git a/inc/geshi/per.php b/inc/geshi/per.php
index ea9c75f8e0b49221b0241c022a198035342899e1..06cf2e41b3d7b94d07811cc1229d3fc82bc6c86e 100644
--- a/inc/geshi/per.php
+++ b/inc/geshi/per.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Lars Gersmann (lars.gersmann@gmail.com)
  * Copyright: (c) 2007 Lars Gersmann
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/06/03
  *
  * Per (forms) (FOURJ's Genero 4GL) language file for GeSHi.
diff --git a/inc/geshi/perl.php b/inc/geshi/perl.php
index 7c212515e6ee23824d7507d08a47fb917c3e59c9..57b8971e8e1f7372fdcd294febf492ab70a617bc 100644
--- a/inc/geshi/perl.php
+++ b/inc/geshi/perl.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Andreas Gohr (andi@splitbrain.org), Ben Keen (ben.keen@gmail.com)
  * Copyright: (c) 2004 Andreas Gohr, Ben Keen (http://www.benjaminkeen.org/), Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/20
  *
  * Perl language file for GeSHi.
diff --git a/inc/geshi/perl6.php b/inc/geshi/perl6.php
new file mode 100644
index 0000000000000000000000000000000000000000..1c04098c0ed67b6bf71beee15ae357f259b7741d
--- /dev/null
+++ b/inc/geshi/perl6.php
@@ -0,0 +1,197 @@
+<?php
+/*************************************************************************************
+ * perl6.php
+ * ---------
+ * Author: Kodi Arfer (kodiarfer {at} warpmail {period} net); forked from perl.php 1.0.8 by Andreas Gohr (andi@splitbrain.org), Ben Keen (ben.keen@gmail.com)
+ * Copyright: (c) 2009 Kodi Arfer, (c) 2004 Andreas Gohr, Ben Keen (http://www.benjaminkeen.org/), Nigel McNie (http://qbnz.com/highlighter/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/11/07
+ *
+ * Perl 6 language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/12/25 (1.0.8.6)
+ *   - First Release
+ *
+ * TODO (updated 2009/11/07)
+ * -------------------------
+ * * It's all pretty rough. Perl 6 is complicated; this'll never be more
+ *   than reasonably accurate unless it's carefully written to match
+ *   STD.pm.
+ * * It's largely incomplete. Lots of keywords are no doubt missing.
+ * * Recognize comments like #`( Hello! ).
+ * * Recognize qw-ing angle brackets.
+ * * ! should probably be in OBJECT_SPLITTERS too, but putting it there
+ *   gives bizarre results. What 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 (
+    'LANG_NAME' => '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 => '(?:[$@%]|&amp;)(?:(?:[\^:*?!~]|&lt;)?[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' => '$'
+        )
+    )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/php-brief.php b/inc/geshi/php-brief.php
index 2a5d78611ac56391a843a0bf7721142bd94a65f0..ceaf423af35c6938bec186b42abda7388a981dc4 100644
--- a/inc/geshi/php-brief.php
+++ b/inc/geshi/php-brief.php
@@ -4,7 +4,7 @@
  * -------------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/02
  *
  * PHP (brief version) language file for GeSHi.
@@ -185,7 +185,7 @@ $language_data = array (
         3 => array(
             '<script language="php">' => '</script>'
             ),
-        4 => "/(?<start><\\?(?>php\b)?)(?:".
+        4 => "/(?P<start><\\?(?>php\b)?)(?:".
             "(?>[^\"'?\\/<]+)|".
             "\\?(?!>)|".
             "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
@@ -194,9 +194,9 @@ $language_data = array (
             "\\/\\/(?>.*?$)|".
             "\\/(?=[^*\\/])|".
             "<(?!<<)|".
-            "<<<(?<phpdoc>\w+)\s.*?\s\k<phpdoc>".
-            ")*(?<end>\\?>|\Z)/sm",
-        5 => "/(?<start><%)(?:".
+            "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>".
+            ")*(?P<end>\\?>|\Z)/sm",
+        5 => "/(?P<start><%)(?:".
             "(?>[^\"'%\\/<]+)|".
             "%(?!>)|".
             "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
@@ -205,8 +205,8 @@ $language_data = array (
             "\\/\\/(?>.*?$)|".
             "\\/(?=[^*\\/])|".
             "<(?!<<)|".
-            "<<<(?<phpdoc>\w+)\s.*?\s\k<phpdoc>".
-            ")*(?<end>%>)/sm"
+            "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>".
+            ")*(?P<end>%>)/sm"
         ),
     'HIGHLIGHT_STRICT_BLOCK' => array(
         0 => true,
diff --git a/inc/geshi/php.php b/inc/geshi/php.php
index b96c947ed95db9af01c0a5ac6ebbc149b7d653d0..9b0bc822d5f4aa7b73353661e1a743cec70d5ea3 100644
--- a/inc/geshi/php.php
+++ b/inc/geshi/php.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/20
  *
  * PHP language file for GeSHi.
@@ -90,14 +90,14 @@ $language_data = 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','while',
+            'return','switch','throw','while',
 
             'echo','print'
             ),
         2 => array(
             '&amp;new','&lt;/script&gt;','&lt;?php','&lt;script language',
             'class','const','declare','extends','function','global','interface',
-            'namespace','new','private','public','self','var'
+            'namespace','new','private','protected','public','self','use','var'
             ),
         3 => array(
             'abs','acos','acosh','addcslashes','addslashes','aggregate',
@@ -1077,7 +1077,7 @@ $language_data = array(
         3 => array(
             '<script language="php">' => '</script>'
             ),
-        4 => "/(?<start><\\?(?>php\b)?)(?:".
+        4 => "/(?P<start><\\?(?>php\b)?)(?:".
             "(?>[^\"'?\\/<]+)|".
             "\\?(?!>)|".
             "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
@@ -1086,9 +1086,9 @@ $language_data = array(
             "\\/\\/(?>.*?$)|".
             "\\/(?=[^*\\/])|".
             "<(?!<<)|".
-            "<<<(?<phpdoc>\w+)\s.*?\s\k<phpdoc>".
-            ")*(?<end>\\?>|\Z)/sm",
-        5 => "/(?<start><%)(?:".
+            "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>".
+            ")*(?P<end>\\?>|\Z)/sm",
+        5 => "/(?P<start><%)(?:".
             "(?>[^\"'%\\/<]+)|".
             "%(?!>)|".
             "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|".
@@ -1097,8 +1097,8 @@ $language_data = array(
             "\\/\\/(?>.*?$)|".
             "\\/(?=[^*\\/])|".
             "<(?!<<)|".
-            "<<<(?<phpdoc>\w+)\s.*?\s\k<phpdoc>".
-            ")*(?<end>%>)/sm",
+            "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>".
+            ")*(?P<end>%>)/sm",
         ),
     'HIGHLIGHT_STRICT_BLOCK' => array(
         0 => true,
diff --git a/inc/geshi/pic16.php b/inc/geshi/pic16.php
index f25183ffb11dec598e3d9b130ae9135c3e5da64b..88d4a674589fa86fef1712dca742e35df1ed390f 100644
--- a/inc/geshi/pic16.php
+++ b/inc/geshi/pic16.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Phil Mattison (mattison@ohmikron.com)
  * Copyright: (c) 2008 Ohmikron Corp. (http://www.ohmikron.com/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/07/30
  *
  * PIC16 Assembler language file for GeSHi.
diff --git a/inc/geshi/pike.php b/inc/geshi/pike.php
new file mode 100644
index 0000000000000000000000000000000000000000..e67975fe2ce0be3118a3d32c458a70664ce6bd35
--- /dev/null
+++ b/inc/geshi/pike.php
@@ -0,0 +1,103 @@
+<?php
+/*************************************************************************************
+ * pike.php
+ * --------
+ * Author: Rick E. (codeblock@eighthbit.net)
+ * Copyright: (c) 2009 Rick E.
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/12/10
+ *
+ * Pike language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2009/12/25 (1.0.8.6)
+ *  -  First Release
+ *
+ * TODO (updated 2009/12/25)
+ * -------------------------
+ *
+ *
+ *************************************************************************************
+ *
+ *     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' => '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()
+);
+
+?>
diff --git a/inc/geshi/pixelbender.php b/inc/geshi/pixelbender.php
index b65e228a174dfe9b8edf317c470e4781452e780e..d19754f3e9172a771357289672498d340e46e146 100644
--- a/inc/geshi/pixelbender.php
+++ b/inc/geshi/pixelbender.php
@@ -4,7 +4,7 @@
  * ----------------
  * Author: Richard Olsson (r@richardolsson.se)
  * Copyright: (c) 2008 Richard Olsson (richardolsson.se)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/11/16
  *
  * Pixel Bender 1.0 language file for GeSHi.
diff --git a/inc/geshi/plsql.php b/inc/geshi/plsql.php
index 6534a1922cf8f398991e0c91a06ad2b5f789cee3..0779ca04f462d20e3b6437770d96f2fa5eb23acc 100644
--- a/inc/geshi/plsql.php
+++ b/inc/geshi/plsql.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Victor Engmark <victor.engmark@gmail.com>
  * Copyright: (c) 2006 Victor Engmark (http://l0b0.net/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/10/26
  *
  * Oracle 9.2 PL/SQL language file for GeSHi.
diff --git a/inc/geshi/povray.php b/inc/geshi/povray.php
index af6c443da66d6236322c3c6bb490a856843740e9..80bf5a478dc55b016e6f6366279f51db68d68e19 100644
--- a/inc/geshi/povray.php
+++ b/inc/geshi/povray.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Carl Fürstenberg (azatoth@gmail.com)
  * Copyright: © 2007 Carl Fürstenberg
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/07/11
  *
  * Povray language file for GeSHi.
diff --git a/inc/geshi/powerbuilder.php b/inc/geshi/powerbuilder.php
new file mode 100644
index 0000000000000000000000000000000000000000..e276d85eec284e9322ba73f1d9bf5318b51749c4
--- /dev/null
+++ b/inc/geshi/powerbuilder.php
@@ -0,0 +1,418 @@
+<?php
+/*************************************************************************************
+ * powerbuilder.php
+ * ------
+ * Author: Doug Porter (powerbuilder.geshi@gmail.com)
+ * Copyright: (c) 2009 Doug Porter
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/07/13
+ *
+ * PowerBuilder (PowerScript) language file for GeSHi.
+ *
+ * Based on the TextPad Syntax file for PowerBuilder
+ * built by Rafi Avital
+ *
+ * CHANGES
+ * -------
+ * 2009/07/13 (1.0.0)
+ *  -  First Release
+ *
+ * TODO (updated 2009/07/13)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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('=', '&lt;', '>', '^')
+        ),
+    '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(
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/powershell.php b/inc/geshi/powershell.php
index e427059d3acd7c6657b38cb6815718e21fe7140c..fe8a5da0762244b1eb3e5a1df916e92dba18926e 100644
--- a/inc/geshi/powershell.php
+++ b/inc/geshi/powershell.php
@@ -4,7 +4,7 @@
  * ---------------------------------
  * Author: Frode Aarebrot (frode@aarebrot.net)
  * Copyright: (c) 2008 Frode Aarebrot (http://www.aarebrot.net)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/06/20
  *
  * PowerShell language file for GeSHi.
diff --git a/inc/geshi/progress.php b/inc/geshi/progress.php
index 2d6024e744821fdb799316d8c7ce7fc0b5d6c809..3824e7b0b0a87d3d057e5ed75f6989b361c90e94 100644
--- a/inc/geshi/progress.php
+++ b/inc/geshi/progress.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Marco Aurelio de Pasqual (marcop@hdi.com.br)
  * Copyright: (c) 2008 Marco Aurelio de Pasqual, Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/07/11
  *
  * Progress language file for GeSHi.
diff --git a/inc/geshi/prolog.php b/inc/geshi/prolog.php
index fa9e03a631c2933c845de870e0bb8639661ca526..1f35a1b8237246d674c8ab16c1c07be44e8cd85b 100644
--- a/inc/geshi/prolog.php
+++ b/inc/geshi/prolog.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Benny Baumann (BenBE@geshi.org)
  * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/10/02
  *
  * Prolog language file for GeSHi.
diff --git a/inc/geshi/properties.php b/inc/geshi/properties.php
new file mode 100644
index 0000000000000000000000000000000000000000..231dd6e8b2902b19e5e915e935be688d160035d6
--- /dev/null
+++ b/inc/geshi/properties.php
@@ -0,0 +1,127 @@
+<?php
+/*************************************************************************************
+ * properties.php
+ * --------
+ * Author: Edy Hinzen
+ * Copyright: (c) 2009 Edy Hinzen
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/04/03
+ *
+ * Property language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2008/04/03 (1.0.0)
+ *   -  First Release
+ *
+ * TODO
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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 <span>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(
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/providex.php b/inc/geshi/providex.php
index f24a57d18726083da163dbdea00ab8b6930e5a7b..aaa02e797c12d0815ecff2c163ceffee4fe94c50 100644
--- a/inc/geshi/providex.php
+++ b/inc/geshi/providex.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Jeff Wilder (jeff@coastallogix.com)
  * Copyright:  (c) 2008 Coastal Logix (http://www.coastallogix.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/10/18
  *
  * ProvideX language file for GeSHi.
diff --git a/inc/geshi/purebasic.php b/inc/geshi/purebasic.php
new file mode 100644
index 0000000000000000000000000000000000000000..b644af3feb8dd1d2afb59a9ed09c82dd431c2290
--- /dev/null
+++ b/inc/geshi/purebasic.php
@@ -0,0 +1,303 @@
+<?php
+/*************************************************************************************
+ * purebasic.php
+ * -------
+ * Author: GuShH
+ * Copyright: (c) 2009 Gustavo Julio Fiorenza
+ * Release Version: 1.0.8.6
+ * Date Started: 13/06/2009
+ *
+ * PureBasic language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 13/06/2009 (1.0.0)
+ *   -  First Release
+ *
+ * TODO (updated 2009/06/13)
+ * -------------------------
+ * Add the remaining ASM mnemonics and the 4.3x functions/etc.
+ * Better coloring (perhaps match the default scheme of PB?)
+ *
+ *************************************************************************************
+ *
+ *     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' => '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
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/python.php b/inc/geshi/python.php
index 6f378f4342832db069577cf98eedf2b75cdae25f..a482d6928d10eaa03791288994ddc3252b955493 100644
--- a/inc/geshi/python.php
+++ b/inc/geshi/python.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Roberto Rossi (rsoftware@altervista.org)
  * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/30
  *
  * Python language file for GeSHi.
diff --git a/inc/geshi/qbasic.php b/inc/geshi/qbasic.php
index e3b5df8a183dda2fdfc0e5da8d8758137c8fab4b..c83cb188e94acdb8a03178fe09f1286da01034f2 100644
--- a/inc/geshi/qbasic.php
+++ b/inc/geshi/qbasic.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/20
  *
  * QBasic/QuickBASIC language file for GeSHi.
@@ -55,7 +55,9 @@ $language_data = array (
     'COMMENT_MULTI' => array(),
     'COMMENT_REGEXP' => array(
         //Single-Line Comments using REM command
-        2 => "/\bREM.*?$/i"
+        2 => "/\bREM.*?$/i",
+        //Line numbers
+        3 => "/^\s*\d+/im"
         ),
     'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
     'QUOTEMARKS' => array('"'),
@@ -93,7 +95,7 @@ $language_data = array (
             )
         ),
     'SYMBOLS' => array(
-        '(', ')', ',', '+', '-', '*', '/', '=', '<', '>'
+        '(', ')', ',', '+', '-', '*', '/', '=', '<', '>', '^'
         ),
     'CASE_SENSITIVE' => array(
         GESHI_COMMENTS => false,
@@ -107,7 +109,8 @@ $language_data = array (
             ),
         'COMMENTS' => array(
             1 => 'color: #808080;',
-            2 => 'color: #808080;'
+            2 => 'color: #808080;',
+            3 => 'color: #8080C0;'
             ),
         'BRACKETS' => array(
             0 => 'color: #66cc66;'
@@ -129,6 +132,8 @@ $language_data = array (
         'SCRIPT' => array(
             ),
         'REGEXPS' => array(
+            1 => 'color: #cc66cc;',
+            2 => 'color: #339933;'
             )
         ),
     'URLS' => array(
@@ -139,6 +144,8 @@ $language_data = array (
     'OBJECT_SPLITTERS' => array(
         ),
     'REGEXPS' => array(
+        1 => '&amp;(?:H[0-9a-fA-F]+|O[0-7]+)(?!\w)',
+        2 => '#[0-9]+(?!\w)'
         ),
     'STRICT_MODE_APPLIES' => GESHI_NEVER,
     'SCRIPT_DELIMITERS' => array(
@@ -148,4 +155,4 @@ $language_data = array (
     'TAB_WIDTH' => 8
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/rails.php b/inc/geshi/rails.php
index cc6e079b0a8488a3cf2e3c22651062cb9177e93b..777fdd8146bafb150cfde95b11dbc9ee330c98e6 100644
--- a/inc/geshi/rails.php
+++ b/inc/geshi/rails.php
@@ -4,7 +4,7 @@
  * ---------
  * Author: Moises Deniz
  * Copyright: (c) 2005 Moises Deniz
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/03/21
  *
  * Ruby (with Ruby on Rails Framework) language file for GeSHi.
diff --git a/inc/geshi/rebol.php b/inc/geshi/rebol.php
index 97eff1f32b1464acdb5989d7f6fc55d1a5159442..1a2e95824779cf64f95fc46c08bd7fed86296fcc 100644
--- a/inc/geshi/rebol.php
+++ b/inc/geshi/rebol.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Lecanu Guillaume (Guillaume@LyA.fr)
  * Copyright: (c) 2004-2005 Lecanu Guillaume (Guillaume@LyA.fr)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/12/22
  *
  * Rebol language file for GeSHi.
diff --git a/inc/geshi/reg.php b/inc/geshi/reg.php
index 59199f74370c0299bd1c6e8be4344558ffa0339e..d70189cc91db1553f4edeb70421faed9e4093e80 100644
--- a/inc/geshi/reg.php
+++ b/inc/geshi/reg.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Sean Hanna (smokingrope@gmail.com)
  * Copyright: (c) 2006 Sean Hanna
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 03/15/2006
  *
  * Microsoft Registry Editor language file for GeSHi.
diff --git a/inc/geshi/robots.php b/inc/geshi/robots.php
index af5fe1426248168a1b79b22b5e52546a72b079ed..82ff18f4f29555975a169592819d36a771092ff7 100644
--- a/inc/geshi/robots.php
+++ b/inc/geshi/robots.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Christian Lescuyer (cl@goelette.net)
  * Copyright: (c) 2006 Christian Lescuyer http://xtian.goelette.info
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/02/17
  *
  * robots.txt language file for GeSHi.
@@ -36,12 +36,14 @@ $language_data = array (
     'LANG_NAME' => '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(
-            'User-agent', 'Disallow'
+            'Allow', 'Crawl-delay', 'Disallow', 'Request-rate', 'Robot-version',
+            'Sitemap', 'User-agent', 'Visit-time'
             )
         ),
     'SYMBOLS' => array(
@@ -95,4 +97,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/rsplus.php b/inc/geshi/rsplus.php
new file mode 100644
index 0000000000000000000000000000000000000000..10fa5a89e18527af081930451a161ee5b4a1d3d8
--- /dev/null
+++ b/inc/geshi/rsplus.php
@@ -0,0 +1,483 @@
+<?php
+/*************************************************************************************
+ * rsplus.php
+ * ———–
+ * Author: Ron Fredericks (ronf@LectureMaker.com)
+ * Contributors:
+ *  - Benilton Carvalho (beniltoncarvalho@gmail.com)
+ * Copyright: (c) 2009 Ron Fredericks (http://www.LectureMaker.com)
+ * Release Version: 1.0.8.6
+ * Date Started: 2009/03/28
+ *
+ * R language file for GeSHi.
+ *
+ * CHANGES
+ * ——-
+ * 2009/04/06
+ *   -  Add references to Sekhon’s R Package docs
+ * 2009/03/29 (1.0.8.5)
+ *   -  First Release
+ * 2009/07/16 (1.0.8.6)
+ *   - Added functions from base packages (Benilton Carvalho - carvalho@bclab.org)
+ *
+ * References
+ * ———-
+ * Some online R Package documentation:
+ *     http://sekhon.berkeley.edu/library/index.html         2.4 docs
+ *     http://astrostatistics.psu.edu/su07/R/html            2.5 docs
+ *
+ * Another R GeSHi with no meat?
+ *     http://organicdesign.co.nz/GeSHi/R.php
+ * SourceForge R discussion:
+ *     http://sourceforge.net/tracker/?func=detail&aid=2276025&group_id=114997&atid=670234
+ *
+ * TODO (updated 2007/02/06)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *     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' => '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://astrostatistics.psu.edu/su07/R/html/graphics/html/{FNAME}.html', // http://sekhon.berkeley.edu/library/graphics/html/{FNAME}.html
+        3 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/Normal.html', // http://sekhon.berkeley.edu/library/stats/html/Normal.html
+        4 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/{FNAME}.html', // http://sekhon.berkeley.edu/library/stats/html/{FNAME}.html
+        5 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/summary.lm.html', // http://sekhon.berkeley.edu/library/stats/html/summary.lm.html
+        6 => 'http://astrostatistics.psu.edu/su07/R/html/base/html/Log.html', // http://sekhon.berkeley.edu/library/base/html/Log.html
+        7 => '',
+        8 => ''
+        ),
+    '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\$_\|\#;>|^&\\.])(?<!\/html\/)",
+            'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-&;\\.])"
+            )
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/ruby.php b/inc/geshi/ruby.php
index 8c2b7d829caedcf4baadc0066cd32b9f6e08fd05..57d379d664564250b13714d0c0be227009cb51f3 100644
--- a/inc/geshi/ruby.php
+++ b/inc/geshi/ruby.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Moises Deniz
  * Copyright: (c) 2007 Moises Deniz
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/03/21
  *
  * Ruby language file for GeSHi.
@@ -50,7 +50,7 @@ $language_data = array (
                 'ensure', 'for', 'if', 'in', 'module', 'while',
                 'next', 'not', 'or', 'redo', 'rescue', 'yield',
                 'retry', 'super', 'then', 'undef', 'unless',
-                'until', 'when', 'BEGIN', 'END', 'include'
+                'until', 'when', 'include'
             ),
         2 => array(
                 '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true',
@@ -223,4 +223,4 @@ $language_data = array (
     'TAB_WIDTH' => 2
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/sas.php b/inc/geshi/sas.php
index bc689971669194c6345ec88a3da447a0d36a2c2c..16617b58e0314c853300b8010f165816e61b64e4 100644
--- a/inc/geshi/sas.php
+++ b/inc/geshi/sas.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Galen Johnson (solitaryr@gmail.com)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/12/27
  *
  * SAS language file for GeSHi. Based on the sas vim file.
diff --git a/inc/geshi/scala.php b/inc/geshi/scala.php
index 0eae52d92afb1934213764bf0d6e35b5b2b5b2d8..5ebe9ed96dcd245e703046bcfffe55d3e8064229 100644
--- a/inc/geshi/scala.php
+++ b/inc/geshi/scala.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Franco Lombardo (franco@francolombardo.net)
  * Copyright: (c) 2008 Franco Lombardo, Benny Baumann
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/02/08
  *
  * Scala language file for GeSHi.
diff --git a/inc/geshi/scheme.php b/inc/geshi/scheme.php
index 1fffcb2486e1eefdf999db99768cee906e07ac61..dac7c6f06ad50aff0d17552baee31d836c0f402d 100644
--- a/inc/geshi/scheme.php
+++ b/inc/geshi/scheme.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Jon Raphaelson (jonraphaelson@gmail.com)
  * Copyright: (c) 2005 Jon Raphaelson, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/30
  *
  * Scheme language file for GeSHi.
diff --git a/inc/geshi/scilab.php b/inc/geshi/scilab.php
index 3d66d810a2483b0521db95b3196b7a43437a647c..9bd0658db501e413597cf062867286a2ab5db457 100644
--- a/inc/geshi/scilab.php
+++ b/inc/geshi/scilab.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Christophe David (geshi@christophedavid.org)
  * Copyright: (c) 2008 Christophe David (geshi@christophedavid.org)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/08/04
  *
  * SciLab language file for GeSHi.
diff --git a/inc/geshi/sdlbasic.php b/inc/geshi/sdlbasic.php
index b756df51409d44dd1d002996f96c2570a617757b..1f1440bf56c0e87171b5e37b247d9449968bcd5d 100644
--- a/inc/geshi/sdlbasic.php
+++ b/inc/geshi/sdlbasic.php
@@ -4,7 +4,7 @@
  * ------------
  * Author: Roberto Rossi
  * Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/08/19
  *
  * sdlBasic (http://sdlbasic.sf.net) language file for GeSHi.
diff --git a/inc/geshi/smalltalk.php b/inc/geshi/smalltalk.php
index b4d67cc717041a32ca6859ed3bb6e30a68e99a60..9bc351d8eb849feb959f1c7733f0dc791f923cf6 100644
--- a/inc/geshi/smalltalk.php
+++ b/inc/geshi/smalltalk.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Bananeweizen (Bananeweizen@gmx.de)
  * Copyright: (c) 2005 Bananeweizen (www.bananeweizen.de)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/03/27
  *
  * Smalltalk language file for GeSHi.
@@ -46,7 +46,9 @@ $language_data = array (
     'QUOTEMARKS' => array("'"),
     'ESCAPE_CHAR' => '',
     'KEYWORDS' => array(
-        1 => array('self','super','true','false','nil')
+        1 => array(
+            'self','super','true','false','nil'
+            )
         ),
     'SYMBOLS' => array(
         '[', ']', '=' , ':=', '(', ')', '#'
@@ -85,7 +87,6 @@ $language_data = array (
             1 => 'color: #7f0000;',
             2 => 'color: #7f0000;',
             3 => 'color: #00007f;',
-            4 => 'color: #7f007f;',
             5 => 'color: #00007f;',
             6 => 'color: #00007f;'
             ),
@@ -128,15 +129,8 @@ $language_data = array (
             GESHI_BEFORE => '|',
             GESHI_AFTER => '|'
             ),
-        4 => array(
-            GESHI_SEARCH => '(self|super|true|false|nil)', //keywords again (to avoid matching in next regexp)
-            GESHI_REPLACE => '\\1',
-            GESHI_MODIFIERS => '',
-            GESHI_BEFORE => '',
-            GESHI_AFTER => ''
-            ),
         5 => array(
-            GESHI_SEARCH => '([:(,=[.*\/+-]\s*)([a-zA-Z0-9_]+)', //message parameters, message receivers
+            GESHI_SEARCH => '([:(,=[.*\/+-]\s*(?!\d+\/))([a-zA-Z0-9_]+)', //message parameters, message receivers
             GESHI_REPLACE => '\\2',
             GESHI_MODIFIERS => 's',
             GESHI_BEFORE => '\\1',
@@ -157,4 +151,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/smarty.php b/inc/geshi/smarty.php
index dcc11f61d127dc0fb59f3330e03c93de01ec84f9..f59d9fbf301663e3ab164a97795a5528fd7da3f3 100644
--- a/inc/geshi/smarty.php
+++ b/inc/geshi/smarty.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Alan Juden (alan@judenware.org)
  * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/07/10
  *
  * Smarty template language file for GeSHi.
diff --git a/inc/geshi/sql.php b/inc/geshi/sql.php
index ba91191d12dd0b48590457c4b011ef9fbc8bc6e2..ea2965a8ee79b0fa959724c1f428fe2637429aa0 100644
--- a/inc/geshi/sql.php
+++ b/inc/geshi/sql.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * SQL language file for GeSHi.
@@ -51,7 +51,7 @@
 
 $language_data = array (
     'LANG_NAME' => 'SQL',
-    'COMMENT_SINGLE' => array(1 =>'--', 2 => '#'),
+    'COMMENT_SINGLE' => array(1 =>'--'),
     'COMMENT_MULTI' => array('/*' => '*/'),
     'CASE_KEYWORDS' => 1,
     'QUOTEMARKS' => array("'", '"', '`'),
@@ -97,7 +97,7 @@ $language_data = array (
             ),
         'COMMENTS' => array(
             1 => 'color: #808080; font-style: italic;',
-            2 => 'color: #808080; font-style: italic;',
+            //2 => 'color: #808080; font-style: italic;',
             'MULTI' => 'color: #808080; font-style: italic;'
             ),
         'ESCAPE_CHAR' => array(
@@ -137,4 +137,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/systemverilog.php b/inc/geshi/systemverilog.php
new file mode 100644
index 0000000000000000000000000000000000000000..832769f9e3c504de3215c8ccfefd0b527abfa933
--- /dev/null
+++ b/inc/geshi/systemverilog.php
@@ -0,0 +1,317 @@
+<?php
+/************************************************************************************
+ * systemverilog.php
+ * -------
+ * Author: Sean O'Boyle
+ * Copyright: (C) 2008 IntelligentDV
+ * Release Version: 1.0.8.6
+ * Date Started: 2008/06/25
+ *
+ * SystemVerilog IEEE 1800-2009(draft8) language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2008/06/25 (1.0.0)
+ *  -  First Release
+ *
+ * TODO (updated 2008/06/25)
+ * -------------------------
+ *
+ *************************************************************************************
+ *
+ *   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 3 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, see <http://www.gnu.org/licenses/>.
+ *
+ ************************************************************************
+ * 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: seanoboyle $
+ * $LastChangedDate: 2009-07-22 22:20:25 -0700 (Wed, 22 Jul 2009) $
+ * $LastChangedRevision: 17 $
+ *
+ ************************************************************************/
+
+$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' => '(?<=$)'
+                )
+            )
+        )
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/tcl.php b/inc/geshi/tcl.php
index 25cb31d5b58ca0aabc7975a1ab511b0385739c2b..0b52a2687213ac150a7dbfaa673dd7c42fbb620e 100644
--- a/inc/geshi/tcl.php
+++ b/inc/geshi/tcl.php
@@ -4,7 +4,7 @@
  * ---------------------------------
  * Author: Reid van Melle (rvanmelle@gmail.com)
  * Copyright: (c) 2004 Reid van Melle (sorry@nowhere)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/05/05
  *
  * TCL/iTCL language file for GeSHi.
diff --git a/inc/geshi/teraterm.php b/inc/geshi/teraterm.php
index 5ac9f8743b87d9d333bed99829c67de6b52564be..b4ac619df15cc73575f20dfcf5e0b1d57711d206 100644
--- a/inc/geshi/teraterm.php
+++ b/inc/geshi/teraterm.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Boris Maisuradze (boris at logmett.com)
  * Copyright: (c) 2008 Boris Maisuradze (http://logmett.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/09/26
  *
  * Tera Term Macro language file for GeSHi.
diff --git a/inc/geshi/text.php b/inc/geshi/text.php
index 9183895c240519c8a26d3c6682249da741864fe0..24d3f10ee65ec4ccf8d6dc13221dd86d4b2c9dd8 100644
--- a/inc/geshi/text.php
+++ b/inc/geshi/text.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Sean Hanna (smokingrope@gmail.com)
  * Copyright: (c) 2006 Sean Hanna
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 04/23/2006
  *
  * Standard Text File (No Syntax Highlighting).
diff --git a/inc/geshi/thinbasic.php b/inc/geshi/thinbasic.php
index b9c9742c78b9388948cc9223cf5e8ec5cd9198e9..6a0b72f9f78a9f7f7579eb5defce58cfe035ca01 100644
--- a/inc/geshi/thinbasic.php
+++ b/inc/geshi/thinbasic.php
@@ -4,7 +4,7 @@
  * ------
  * Author: Eros Olmi (eros.olmi@thinbasic.com)
  * Copyright: (c) 2006 Eros Olmi (http://www.thinbasic.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/05/12
  *
  * thinBasic language file for GeSHi.
diff --git a/inc/geshi/tsql.php b/inc/geshi/tsql.php
index fca874954ee2e1f564f216deeef8e18f60ae3db2..4750997a31e2bae9e9e129dd82bed965eab3a45c 100644
--- a/inc/geshi/tsql.php
+++ b/inc/geshi/tsql.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Duncan Lock (dunc@dflock.co.uk)
  * Copyright: (c) 2006 Duncan Lock (http://dflock.co.uk/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/11/22
  *
  * T-SQL language file for GeSHi.
@@ -41,16 +41,16 @@ $language_data = array (
     'LANG_NAME' => 'T-SQL',
     'COMMENT_SINGLE' => array(1 => '--'),
     'COMMENT_MULTI' => array('/*' => '*/'),
-    'CASE_KEYWORDS' => GESHI_CAPS_UPPER,
+    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
     'QUOTEMARKS' => array("'", '"'),
     'ESCAPE_CHAR' => '\\',
     'KEYWORDS' => array(
         1 => array(
             // Datatypes
-            'bigint', 'int', 'smallint', 'tinyint', 'bit', 'decimal', 'numeric', 'money',
-            'smallmoney', 'float', 'real', 'datetime', 'smalldatetime', 'char', 'varchar',
-            'text', 'nchar', 'nvarchar', 'ntext', 'binary', 'varbinary', 'image', 'cursor',
-            'sql_variant', 'table', 'timestamp', 'uniqueidentifier',
+            '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',
diff --git a/inc/geshi/typoscript.php b/inc/geshi/typoscript.php
index 1e8243c2eadf7d6a2329c1dfed3f26366add9981..be809e856fc11332f61b885bcd5382bc8508753c 100644
--- a/inc/geshi/typoscript.php
+++ b/inc/geshi/typoscript.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Jan-Philipp Halle (typo3@jphalle.de)
  * Copyright: (c) 2005 Jan-Philipp Halle (http://www.jphalle.de/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/07/29
  *
  * TypoScript language file for GeSHi.
diff --git a/inc/geshi/vb.php b/inc/geshi/vb.php
index bc43ca4a8ca6266f094c8f527575dc72eb4f2a76..9849b3e8687fc1a7d28f9019ce5dcb09c84dc964 100644
--- a/inc/geshi/vb.php
+++ b/inc/geshi/vb.php
@@ -5,7 +5,7 @@
  * Author: Roberto Rossi (rsoftware@altervista.org)
  * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org),
  *                     Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/08/30
  *
  * Visual Basic language file for GeSHi.
diff --git a/inc/geshi/vbnet.php b/inc/geshi/vbnet.php
index e9f7c3e43f47b0e85a33473f79d55be71015599d..683b744f9ceb9e0fdf01ddb5d77b628357e6e0ae 100644
--- a/inc/geshi/vbnet.php
+++ b/inc/geshi/vbnet.php
@@ -4,7 +4,7 @@
  * ---------
  * Author: Alan Juden (alan@judenware.org)
  * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/06/04
  *
  * VB.NET language file for GeSHi.
@@ -67,9 +67,9 @@ $language_data = array (
         2 => array(
             'AndAlso', 'As', 'ADDHANDLER', 'ASSEMBLY', 'AUTO', 'Binary', 'ByRef', 'ByVal', 'BEGINEPILOGUE',
             'Else', 'ElseIf', 'Empty', 'Error', 'ENDPROLOGUE', 'EXTERNALSOURCE', 'ENVIRON', 'For',
-            'Friend', 'GET', 'HANDLES', 'Input', 'Is', 'IsNot', 'Len', 'Lock', 'Me', 'Mid', 'MUSTINHERIT', 'MustOverride',
+            'Friend', 'Func', 'GET', 'HANDLES', 'Input', 'Is', 'IsNot', 'Len', 'Lock', 'Me', 'Mid', 'MUSTINHERIT', 'MustOverride',
             'MYBASE', 'MYCLASS', 'New', 'Next', 'Nothing', 'Null', 'NOTINHERITABLE',
-            'NOTOVERRIDABLE', 'OFF', 'On', 'Option', 'Optional', 'Overloads', 'OVERRIDABLE', 'Overrides', 'ParamArray',
+            'NOTOVERRIDABLE', 'Of', 'OFF', 'On', 'Option', 'Optional', 'Overloads', 'OVERRIDABLE', 'Overrides', 'ParamArray', 'Predicate',
             'Print', 'Private', 'Property', 'Public', 'Resume', 'Return', 'Seek', 'Static', 'Step',
             'String', 'SHELL', 'SENDKEYS', 'SET', 'Shared', 'Then', 'Time', 'To', 'THROW', 'WithEvents'
             ),
@@ -198,4 +198,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/verilog.php b/inc/geshi/verilog.php
index ba1766c2de0b4719120511d427f938fde2d0b790..6fc469487df55f362a335d89242ae367beb8b0f1 100644
--- a/inc/geshi/verilog.php
+++ b/inc/geshi/verilog.php
@@ -4,7 +4,7 @@
  * -----------
  * Author: G�nter Dannoritzer <dannoritzer@web.de>
  * Copyright: (C) 2008 Guenter Dannoritzer
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/05/28
  *
  * Verilog language file for GeSHi.
diff --git a/inc/geshi/vhdl.php b/inc/geshi/vhdl.php
index 14072c9d7696dabfea92954c09c256664656ed4a..ea93cf87bc48b109bd6a534d89f81b82156d9211 100644
--- a/inc/geshi/vhdl.php
+++ b/inc/geshi/vhdl.php
@@ -4,7 +4,7 @@
  * --------
  * Author: Alexander 'E-Razor' Krause (admin@erazor-zone.de)
  * Copyright: (c) 2005 Alexander Krause
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2005/06/15
  *
  * VHDL (VHSICADL, very high speed integrated circuit HDL) language file for GeSHi.
diff --git a/inc/geshi/vim.php b/inc/geshi/vim.php
index 3946c4f96da0c5b65ce6a7711b9dec4e8fd24ab9..a95dc244c2e7d925b1856a9c49d8a14fd4416c5e 100644
--- a/inc/geshi/vim.php
+++ b/inc/geshi/vim.php
@@ -4,8 +4,10 @@
  * vim.php
  * ----------------
  * Author: Swaroop C H (swaroop@swaroopch.com)
+ * Contributors:
+ *  - Laurent Peuch (psycojoker@gmail.com)
  * Copyright: (c) 2008 Swaroop C H (http://www.swaroopch.com)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/10/19
  *
  * Vim scripting language file for GeSHi.
@@ -18,10 +20,16 @@
  * -------
  * 2008/10/19 (1.0.8.2)
  * - Started.
+ * 2009/07/05
+ * - Fill out list of zillion commands (maybe somes still miss).
+ * - fix a part of the regex, now works for comment that have white space before the "
  *
- * TODO (updated 2008/10/19)
+ * TODO (updated 2009/07/05)
  * -------------------------
- * - Fill out list of zillion commands
+ * - Make this damn string with "" work correctly. I've just remove it for my wiki.
+ * - Make the comment regex able to find comment after some code.
+ *   (i.e: let rocks " unworking comment)
+ * - Make <F1> <F2> ... <Esc> <CR> ... works event if they aren't surround by space.
  *
  *************************************************************************************
  *
@@ -47,7 +55,7 @@ $language_data = array(
     'LANG_NAME' => 'Vim Script',
     'COMMENT_SINGLE' => array(),
     'COMMENT_REGEXP' => array(
-        1 => "/^\".*$/m"
+        1 => "/^\s*\"[^\"]*?$/m"
         ),
     'COMMENT_MULTI' => array(),
     'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
@@ -55,73 +63,299 @@ $language_data = array(
     'ESCAPE_CHAR' => '\\',
     'KEYWORDS' => array(
         1 => array(
-            'brea', 'break', 'call', 'cat', 'catc',
-            'catch', 'con', 'cont', 'conti',
-            'contin', 'continu', 'continue', 'ec', 'echo',
-            'echoe', 'echoer', 'echoerr', 'echoh',
-            'echohl', 'echom', 'echoms', 'echomsg', 'echon',
-            'el', 'els', 'else', 'elsei', 'elseif',
-            'en', 'end', 'endi', 'endif', 'endfo',
-            'endfor', 'endt', 'endtr', 'endtry', 'endw',
-            'endwh', 'endwhi', 'endwhil', 'endwhile', 'exe', 'exec', 'execu',
-            'execut', 'execute', 'fina', 'final', 'finall', 'finally', 'for',
-            'fun', 'func', 'funct', 'functi', 'functio', 'function', 'if', 'in',
-            'let', 'lockv', 'lockva', 'lockvar', 'retu', 'retur', 'return', 'th',
-            'thr', 'thro', 'throw', 'try', 'unl', 'unle', 'unlet', 'unlo', 'unloc',
-            'unlock', 'unlockv', 'unlockva', 'unlockvar', 'wh', 'whi', 'whil',
-            'while'
+            'au', 'augroup', 'autocmd', 'brea', 'break', 'bufadd',
+            'bufcreate', 'bufdelete', 'bufenter', 'buffilepost',
+            'buffilepre', 'bufhidden', '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', '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',
+            'fileencoding', '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', 'try', 'unl',
+            'unle', 'unlet', 'unlo', 'unloc', 'unlock', 'unlockv',
+            'unlockva', 'unlockvar', 'user', 'usergettingbored',
+            'vimenter', 'vimleave', 'vimleavepre', 'vimresized', 'wh',
+            'whi', 'whil', 'while', 'winenter', 'winleave'
             ),
         2 => array(
-            'autocmd', 'com', 'comm', 'comma', 'comman', 'command', 'comc',
-            'comcl', 'comcle', 'comclea', 'comclear', 'delc', 'delco',
-            'delcom', 'delcomm', 'delcomma', 'delcomman', 'delcommand',
-            '-nargs' # TODO There are zillions of commands to be added here from http://vimdoc.sourceforge.net/htmldoc/usr_toc.html
+            '&lt;CR&gt;', '&lt;Esc&gt;', '&lt;F1&gt;', '&lt;F10&gt;',
+            '&lt;F11&gt;', '&lt;F12&gt;', '&lt;F2&gt;', '&lt;F3&gt;',
+            '&lt;F4&gt;', '&lt;F5&gt;', '&lt;F6&gt;', '&lt;F7&gt;',
+            '&lt;F8&gt;', '&lt;F9&gt;', '&lt;cr&gt;', '&lt;silent&gt;',
+            '-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',
+            'browsedir', 'bs', 'bsdir', 'bsk', 'bt', 'bufhidden',
+            'buflisted', 'buftype', 'casemap', 'cb',
+            'ccv', 'cd', 'cdpath', 'cedit', 'cf', 'cfu', 'ch',
+            'charconvert', 'ci', 'cin', 'cindent', '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', 'complete', 'completefunc', 'completeopt',
+            'confirm', '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', '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',
+            'foldlevel', 'foldlevelstart', 'foldmarker',
+            'foldmethod', 'foldminlines', 'foldnestmax', 'foldopen',
+            'foldtext', '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', 'spellsuggest',
+            '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', 'syntax', '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', 'tr', '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(
-            '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', 'confirm',
-            'copy', 'cos', 'count', 'cscope_connection', 'cursor',
-            'deepcopy', 'delete', 'did_filetype', 'diff_filler',
-            'diff_hlID', 'empty', 'escape', 'eval', 'eventhandler',
-            'executable', 'exists', 'extend', 'expand', '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', 'getfperm',
-            'getfsize', 'getfontname', 'getftime', 'getftype', 'getline',
+            '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', 'confirm', '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', 'hlexists', 'hlID', 'hostname', 'iconv',
+            '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', 'map', 'maparg', 'mapcheck', 'match',
-            'matchadd', 'matcharg', 'matchdelete', 'matchend', 'matchlist',
+            'localtime', 'log10', 'maparg', 'mapcheck', 'matchadd',
+            'matcharg', 'matchdelete', 'matchend', 'matchlist',
             'matchstr', 'max', 'min', 'mkdir', 'mode', 'nextnonblank',
-            'nr2char', 'pathshorten', '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',
-            'taglist', 'tagfiles', 'tempname', 'tolower', 'toupper', 'tr',
-            'trunc', 'type', 'values', 'virtcol', 'visualmode', 'winbufnr',
+            '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', 'tr', 'trunc',
+            'type', 'values', 'virtcol', 'visualmode', 'winbufnr',
             'wincol', 'winheight', 'winline', 'winnr', 'winrestcmd',
             'winrestview', 'winsaveview', 'winwidth', 'writefile'
             )
@@ -182,4 +416,4 @@ $language_data = array(
     'HIGHLIGHT_STRICT_BLOCK' => array()
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/visualfoxpro.php b/inc/geshi/visualfoxpro.php
index 0cb73c2a064949370e8d2c267e830a9e810c6cb0..4d9f649cee65e52e5cd5edc09e53931e294da9e8 100644
--- a/inc/geshi/visualfoxpro.php
+++ b/inc/geshi/visualfoxpro.php
@@ -4,7 +4,7 @@
  * ----------------
  * Author: Roberto Armellin (r.armellin@tin.it)
  * Copyright: (c) 2004 Roberto Armellin, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/09/17
  *
  * Visual FoxPro language file for GeSHi.
@@ -69,7 +69,7 @@ $language_data = array (
             'At_c','Atan','Atc','Atcc','Atcline','Atline',
             'Atn2','Aused','Autoform','Autoreport','Avcxclasses','Average',
             'BarCount','BarPrompt','BatchMode','BatchUpdateCount','Begin','BellSound',
-            'BinToC','Bintoc','Bitand','Bitclear','Bitlshift','Bitnot',
+            'BinToC','Bitand','Bitclear','Bitlshift','Bitnot',
             'Bitor','Bitrshift','Bitset','Bittest','Bitxor','Bof',
             'Browse','BrowseRefresh','Buffering','BuilderLock','COMArray','COMReturnError',
             'CToBin','Calculate','Call','Capslock','Cd','Cdow',
@@ -81,7 +81,7 @@ $language_data = array (
             'Cot','Count','Coverage','Cpconvert','Cpcurrent','Cpdbf',
             'Cpnotrans','Create','CreateBinary','Createobject','Createobjectex','Createoffline',
             'CrsBuffering','CrsFetchMemo','CrsFetchSize','CrsMaxRows','CrsMethodUsed','CrsNumBatch',
-            'CrsShareConnection','CrsUseMemoSize','CrsWhereClause','Ctobin','Ctod','Ctot',
+            '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',
@@ -93,7 +93,7 @@ $language_data = array (
             'Debugout','Declare','DefOLELCid','DefaultValue','Defaultext','Degrees',
             'DeleteTrigger','Desc','Description','Difference','Dimension','Dir',
             'Directory','Diskspace','DispLogin','DispWarnings','Display','Dll',
-            'Dmy','DoDefault','DoEvents','Doc','Doevents','Dow',
+            'Dmy','DoDefault','DoEvents','Doc','Dow',
             'Drivetype','Drop','Dropoffline','Dtoc','Dtor','Dtos',
             'Dtot','DynamicInputMask','Each','Edit','Eject','Elif',
             'End','Eof','Erase','Evaluate','Event','Eventtracking',
@@ -115,12 +115,12 @@ $language_data = array (
             'Indbc','Index','Indexseek','Inkey','Inlist','Input',
             'Insert','InsertTrigger','Insmode','IsBlank','IsFLocked','IsLeadByte',
             'IsMouse','IsNull','IsRLocked','Isalpha','Iscolor','Isdigit',
-            'Isexclusive','Isflocked','Ishosted','Islower','Isreadonly','Isrlocked',
-            'Isupper','Italian','Japan','Join','Justdrive','Justext',
+            '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','Loadpicture',
+            'Lenc','Length','Likec','Lineno','LoadPicture',
             'Locate','Locfile','Log','Log10','Logout','Lookup',
             'Loop','Lower','Ltrim','Lupdate','Mail','MaxRecords',
             'Mcol','Md','Mdown','Mdx','Mdy','Memlines',
@@ -148,7 +148,7 @@ $language_data = array (
             'SQLBatchMode','SQLCancel','SQLColumns','SQLConnect','SQLConnectTimeOut','SQLDisconnect',
             'SQLDispLogin','SQLDispWarnings','SQLExec','SQLGetProp','SQLIdleTimeOut','SQLMoreResults',
             'SQLPrepare','SQLQueryTimeOut','SQLSetProp','SQLTables','SQLTransactions','SQLWaitTime',
-            'Save','SavePicture','Savepicture','ScaleUnits','Scatter','Scols',
+            'Save','SavePicture','ScaleUnits','Scatter','Scols',
             'Scroll','Sec','Second','Seek','Select','SendUpdates',
             'Set','SetDefault','Setfldstate','Setup','ShareConnection','ShowOLEControls',
             'ShowOLEInsertable','ShowVCXs','Sign','Sin','Size','SizeBox',
@@ -453,4 +453,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/visualprolog.php b/inc/geshi/visualprolog.php
index 19eab2de69164943a6f423720667ba8549d93fa2..5c9bbd4d0da2b4a7dc7bd41bb6551e7c9048f406 100644
--- a/inc/geshi/visualprolog.php
+++ b/inc/geshi/visualprolog.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Thomas Linder Puls (puls@pdc.dk)
  * Copyright: (c) 2008 Thomas Linder Puls (puls@pdc.dk)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/11/20
  *
  * Visual Prolog language file for GeSHi.
diff --git a/inc/geshi/whitespace.php b/inc/geshi/whitespace.php
index 59bbdb8e78f87eaaf7db287c65836024d8fe6ff1..a27a7b920548ec31dfb5c36de64e67faedd4d2ac 100644
--- a/inc/geshi/whitespace.php
+++ b/inc/geshi/whitespace.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Benny Baumann (BenBE@geshi.org)
  * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2009/10/31
  *
  * Whitespace language file for GeSHi.
diff --git a/inc/geshi/whois.php b/inc/geshi/whois.php
new file mode 100644
index 0000000000000000000000000000000000000000..019e91450386fba36d5411b22576747c49bed10d
--- /dev/null
+++ b/inc/geshi/whois.php
@@ -0,0 +1,181 @@
+<?php
+/*************************************************************************************
+ * whois.php
+ * --------
+ * Author: Benny Baumann (BenBE@geshi.org)
+ * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
+ * Release Version: 1.0.8.6
+ * Date Started: 2008/09/14
+ *
+ * Whois response (RPSL format) language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2008/09/14 (1.0.0)
+ *  -  First Release
+ *
+ * TODO
+ * ----
+ *
+ *************************************************************************************
+ *
+ *     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' => '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(?<!\.|\-)(?:[\da-f:]+(?!\.)|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?:\/1?\d\d?)?(?<!\.|\-)\b/',
+        8 => '/\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
+            )
+        ),
+);
+
+?>
\ No newline at end of file
diff --git a/inc/geshi/winbatch.php b/inc/geshi/winbatch.php
index e86b0363644c7b6b0ed295d106fa868ec80fc535..5b5dcc1df297267785689fecd411ccf9adc136e6 100644
--- a/inc/geshi/winbatch.php
+++ b/inc/geshi/winbatch.php
@@ -4,7 +4,7 @@
  * ------------
  * Author: Craig Storey (storey.craig@gmail.com)
  * Copyright: (c) 2004 Craig Storey (craig.xcottawa.ca)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2006/05/19
  *
  * WinBatch language file for GeSHi.
@@ -106,8 +106,8 @@ $language_data = array (
             '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', 'objecteventremove', 'ObjectEventAdd',
-            'objecteventadd', 'ObjectCreate', 'ObjectConstToArray', 'ObjectConstantsGet', 'ObjectCollectionOpen', 'ObjectCollectionNext',
+            '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',
@@ -366,4 +366,4 @@ $language_data = array (
         )
 );
 
-?>
+?>
\ No newline at end of file
diff --git a/inc/geshi/xml.php b/inc/geshi/xml.php
index 1222e9fb998eeb4f954b89ca9d4c358f601f8608..608c99f00e263431807ae3e79c0179af65bd65d7 100644
--- a/inc/geshi/xml.php
+++ b/inc/geshi/xml.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Nigel McNie (nigel@geshi.org)
  * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2004/09/01
  *
  * XML language file for GeSHi. Based on the idea/file by Christian Weiske
diff --git a/inc/geshi/xorg_conf.php b/inc/geshi/xorg_conf.php
index c32c460b376ce66bdf4d2692530e123df5d2c857..cdb6c36c9b7499be333a39613056f8b99137d168 100644
--- a/inc/geshi/xorg_conf.php
+++ b/inc/geshi/xorg_conf.php
@@ -4,7 +4,7 @@
  * ----------
  * Author: Milian Wolff (mail@milianw.de)
  * Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2008/06/18
  *
  * xorg.conf language file for GeSHi.
diff --git a/inc/geshi/xpp.php b/inc/geshi/xpp.php
index db0019dd0dcf568a667c417e610713d1a972dacf..5f009ec8c0a6d63cfc43a4e781561510e2ef1607 100644
--- a/inc/geshi/xpp.php
+++ b/inc/geshi/xpp.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Simon Butcher (simon@butcher.name)
  * Copyright: (c) 2007 Simon Butcher (http://simon.butcher.name/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/02/27
  *
  * Axapta/Dynamics Ax X++ language file for GeSHi.
diff --git a/inc/geshi/z80.php b/inc/geshi/z80.php
index 2a9b1488620496d842903b774a87f46abf1b23a8..b41e80c74a81752cd7064c2473aca9097d7425f5 100644
--- a/inc/geshi/z80.php
+++ b/inc/geshi/z80.php
@@ -4,7 +4,7 @@
  * -------
  * Author: Benny Baumann (BenBE@omorphia.de)
  * Copyright: (c) 2007-2008 Benny Baumann (http://www.omorphia.de/)
- * Release Version: 1.0.8.4
+ * Release Version: 1.0.8.6
  * Date Started: 2007/02/06
  *
  * ZiLOG Z80 Assembler language file for GeSHi.
@@ -129,7 +129,7 @@ $language_data = array (
         //Hex numbers
         0 => '0[0-9a-fA-F]{1,32}[hH]',
         //Binary numbers
-        1 => '\%[01]{1,64}|[01]{1,64}[bB]?',
+        1 => '\%[01]{1,64}|[01]{1,64}[bB]?(?![^<]*>)',
         //Labels
         2 => '^[_a-zA-Z][_a-zA-Z0-9]?\:'
         ),
@@ -141,4 +141,4 @@ $language_data = array (
     'TAB_WIDTH' => 8
 );
 
-?>
+?>
\ No newline at end of file