plugins/geshi/geshi/cfm.php
changeset 2 9e3258dfae15
parent 0 441963e5b07a
child 3 f3e2bbbd2155
--- a/plugins/geshi/geshi/cfm.php	Sun Feb 10 19:00:04 2008 -0500
+++ b/plugins/geshi/geshi/cfm.php	Fri May 29 19:30:59 2009 -0400
@@ -2,9 +2,9 @@
 /*************************************************************************************
  * cfm.php
  * -------
- * Author: Diego ()
+ * Author: Diego
  * Copyright: (c) 2006 Diego
- * Release Version: 1.0.7.20
+ * Release Version: 1.0.8.2
  * Date Started: 2006/02/25
  *
  * ColdFusion language file for GeSHi.
@@ -38,288 +38,262 @@
  ************************************************************************************/
 
 $language_data = array (
-	'LANG_NAME' => 'ColdFusion',
-	'COMMENT_SINGLE' => array(1 => '//'),
-    'COMMENT_MULTI' => array('<!--' => '-->','&lt;!---' => '---&gt;', '/*' => '*/'),
-	'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
-	'QUOTEMARKS' => array("'", '"'),
-	'ESCAPE_CHAR' => '\\',
-	'KEYWORDS' => array(
-		/* CFM Tags */
-		1 => array(
-			'&lt;cfabort', '&lt;cfapplet', '&lt;cfapplication', '&lt;cfargument', '&lt;cfassociate', '&lt;&lt;cfbreak&gt;', 
-			'&lt;cfcache', '&lt;cfcase', '&lt;cfcatch', '&lt;/cfcatch&gt;', '&lt;cfchart', '&lt;/cfchart&gt;', '&lt;cfchartdata', 
-			'&lt;cfchartseries', '&lt;/cfchartseries&gt;', '&lt;cfcol', '&lt;cfcollection', '&lt;cfcomponent', '&lt;/cfcomponent&gt;', 
-			'&lt;cfcontent', '&lt;cfcookie', '&lt;/cfdefaultcase&gt;', '&lt;cfdirectory', '&lt;cfdocument', '&lt;/cfdocument&gt;', 
-			'&lt;cfdocumentitem', '&lt;/cfdocumentitem&gt;', '&lt;cfdocumentsection', '&lt;/cfdocumentsection&gt;', '&lt;cfdump', 
-			'&lt;cfelse', '&lt;cfelseif', '&lt;cferror', '&lt;cfexecute', '&lt;/cfexecute&gt;', '&lt;cfexit', '&lt;cffile', 
-			'&lt;cfflush', '&lt;cfform', '&lt;/cfform&gt;', '&lt;cfformgroup', '&lt;/cfformgroup', '&lt;cfformitem', 
-			'&lt;/cfformitem&gt;', '&lt;cfftp', '&lt;cffunction', '&lt;/cffunction&gt;', '&lt;cfgrid', '&lt;/cfgrid&gt;', 
-			'&lt;cfgridcolumn', '&lt;cfgridrow', '&lt;cfgridupdate', '&lt;cfheader', '&lt;cfhtmlhead', '&lt;cfhttp', 
-			'&lt;/cfhttp&gt;', '&lt;cfhttpparam', '&lt;cfif', '&lt;/cfif&gt;', '&lt;cfimport', '&lt;cfinclude', '&lt;cfindex', 
-			'&lt;cfinput', '&lt;cfinsert', '&lt;cfinvoke', '&lt;cfinvokeargument', '&lt;cfldap', '&lt;cflocation', '&lt;cflock', 
-			'&lt;/cflock&gt;', '&lt;cflog', '&lt;cflogin', '&lt;/cflogin&gt;', '&lt;cfloginuser', '&lt;cflogout', '&lt;cfloop', 
-			'&lt;/cfloop&gt;', '&lt;cfmail', '&lt;/cfmail&gt;', '&lt;cfmailparam', '&lt;cfmailpart', '&lt;/cfmailpart&gt;', 
-			'&lt;cfmodule', '&lt;cfNTauthenticate', '&lt;cfobject', '&lt;cfobjectcache', '&lt;cfoutput&gt;', '&lt;cfoutput', '&lt;/cfoutput&gt;', 
-			'&lt;cfparam', '&lt;cfpop', '&lt;cfprocessingdirective', '&lt;/cfprocessingdirective&gt;', '&lt;cfprocparam', 
-			'&lt;cfprocresult', '&lt;cfproperty', '&lt;cfquery', '&lt;/cfquery&gt;', '&lt;cfqueryparam', '&lt;cfregistry', 
-			'&lt;/cfregistry&gt;', '&lt;cfreport', '&lt;/cfreport&gt;', '&lt;cfreportparam', '&lt;/cfreportparam&gt;', 
-			'&lt;cfrethrow', '&lt;cfreturn', '&lt;cfsavecontent', '&lt;/cfsavecontent&gt;', '&lt;cfschedule', '&lt;cfscript', '&lt;cfscript&gt;',
-			'&lt;/cfscript&gt;', '&lt;cfsearch', '&lt;cfselect', '&lt;/cfselect&gt;', '&lt;cfset', '&lt;cfsetting', '&lt;cfsilent', 
-			'&lt;/cfsilent&gt;', '&lt;cfstoredproc', '&lt;/cfstoredproc&gt;', '&lt;cfswitch', '&lt;/cfswitch&gt;', '&lt;cftable', 
-			'&lt;/cftable&gt;', '&lt;cftextarea', '&lt;/cftextarea&gt;', '&lt;cfthrow', '&lt;cftimer', '&lt;/cftimer&gt;', 
-			'&lt;cftrace', '&lt;/cftrace&gt;', '&lt;cftransaction', '&lt;/cftransaction&gt;', '&lt;cftree', '&lt;/cftree&gt;', 
-			'&lt;cftreeitem', '&lt;cftry', '&lt;/cftry&gt;', '&lt;cfupdate', '&lt;cfwddx','&lt;','&gt;'
-			),
-		/* HTML Tags */
-		2 => array(
-			'&lt;a&gt;', '&lt;abbr&gt;', '&lt;acronym&gt;', '&lt;address&gt;', '&lt;applet&gt;',
-			'&lt;a', '&lt;abbr', '&lt;acronym', '&lt;address', '&lt;applet',
-			'&lt;/a&gt;', '&lt;/abbr&gt;', '&lt;/acronym&gt;', '&lt;/address&gt;', '&lt;/applet&gt;',
-			'&lt;/a', '&lt;/abbr', '&lt;/acronym', '&lt;/address', '&lt;/applet',
-
-			'&lt;base&gt;', '&lt;basefont&gt;', '&lt;bdo&gt;', '&lt;big&gt;', '&lt;blockquote&gt;', '&lt;body&gt;', '&lt;br&gt;', '&lt;button&gt;', '&lt;b&gt;',
-			'&lt;base', '&lt;basefont', '&lt;bdo', '&lt;big', '&lt;blockquote', '&lt;body', '&lt;br', '&lt;button', '&lt;b',
-			'&lt;/base&gt;', '&lt;/basefont&gt;', '&lt;/bdo&gt;', '&lt;/big&gt;', '&lt;/blockquote&gt;', '&lt;/body&gt;', '&lt;/br&gt;', '&lt;/button&gt;', '&lt;/b&gt;',
-			'&lt;/base', '&lt;/basefont', '&lt;/bdo', '&lt;/big', '&lt;/blockquote', '&lt;/body', '&lt;/br','&lt;br /&gt;', '&lt;/button', '&lt;/b',
-
-			'&lt;caption&gt;', '&lt;center&gt;', '&lt;cite&gt;', '&lt;code&gt;', '&lt;colgroup&gt;', '&lt;col&gt;',
-			'&lt;caption', '&lt;center', '&lt;cite', '&lt;code', '&lt;colgroup', '&lt;col',
-			'&lt;/caption&gt;', '&lt;/center&gt;', '&lt;/cite&gt;', '&lt;/code&gt;', '&lt;/colgroup&gt;', '&lt;/col&gt;',
-			'&lt;/caption', '&lt;/center', '&lt;/cite', '&lt;/code', '&lt;/colgroup', '&lt;/col',
-
-			'&lt;dd&gt;', '&lt;del&gt;', '&lt;dfn&gt;', '&lt;dir&gt;', '&lt;div&gt;', '&lt;dl&gt;', '&lt;dt&gt;',
-			'&lt;dd', '&lt;del', '&lt;dfn', '&lt;dir', '&lt;div', '&lt;dl', '&lt;dt',
-			'&lt;/dd&gt;', '&lt;/del&gt;', '&lt;/dfn&gt;', '&lt;/dir&gt;', '&lt;/div&gt;', '&lt;/dl&gt;', '&lt;/dt&gt;',
-			'&lt;/dd', '&lt;/del', '&lt;/dfn', '&lt;/dir', '&lt;/div', '&lt;/dl', '&lt;/dt',
-
-			'&lt;em&gt;',
-			'&lt;em',
-			'&lt;/em&gt;',
-			'&lt;/em',
-
-			'&lt;fieldset&gt;', '&lt;font&gt;', '&lt;form&gt;', '&lt;frame&gt;', '&lt;frameset&gt;',
-			'&lt;fieldset', '&lt;font', '&lt;form', '&lt;frame', '&lt;frameset',
-			'&lt;/fieldset&gt;', '&lt;/font&gt;', '&lt;/form&gt;', '&lt;/frame&gt;', '&lt;/frameset&gt;',
-			'&lt;/fieldset', '&lt;/font', '&lt;/form', '&lt;/frame', '&lt;/frameset',
+    'LANG_NAME' => 'ColdFusion',
+    'COMMENT_SINGLE' => array(1 => '//'),
+    'COMMENT_MULTI' => array('/*' => '*/'),
+    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+    'QUOTEMARKS' => array("'", '"'),
+    'ESCAPE_CHAR' => '\\',
+    'KEYWORDS' => array(
+        /* CFM Tags */
+        1 => array(
+            'cfabort', 'cfapplet', 'cfapplication', 'cfargument', 'cfassociate',
+            'cfbreak', 'cfcache', 'cfcase', 'cfcatch', 'cfchart', 'cfchartdata',
+            'cfchartseries', 'cfcol', 'cfcollection', 'cfcomponent',
+            'cfcontent', 'cfcookie', 'cfdefaultcase', 'cfdirectory',
+            'cfdocument', 'cfdocumentitem', 'cfdocumentsection', 'cfdump',
+            'cfelse', 'cfelseif', 'cferror', 'cfexecute', 'cfexit', 'cffile',
+            'cfflush', 'cfform', 'cfformgroup', 'cfformitem', 'cfftp',
+            'cffunction', 'cfgrid', 'cfgridcolumn', 'cfgridrow', 'cfgridupdate',
+            'cfheader', 'cfhtmlhead', 'cfhttp', 'cfhttpparam', 'cfif',
+            'cfimport', 'cfinclude', 'cfindex', 'cfinput', 'cfinsert',
+            'cfinvoke', 'cfinvokeargument', 'cfldap', 'cflocation', 'cflock',
+            'cflog', 'cflogin', 'cfloginuser', 'cflogout', 'cfloop', 'cfmail',
+            'cfmailparam', 'cfmailpart', 'cfmodule', 'cfNTauthenticate',
+            'cfobject', 'cfobjectcache', 'cfoutput', 'cfparam', 'cfpop',
+            'cfprocessingdirective', 'cfprocparam',
+            'cfprocresult', 'cfproperty', 'cfquery', 'cfqueryparam',
+            'cfregistry', 'cfreport', 'cfreportparam', 'cfrethrow', 'cfreturn',
+            'cfsavecontent', 'cfschedule', 'cfscript', 'cfsearch', 'cfselect',
+            'cfset', 'cfsetting', 'cfsilent', 'cfstoredproc',
+            'cfswitch', 'cftable', 'cftextarea', 'cfthrow', 'cftimer',
+            'cftrace', 'cftransaction', 'cftree', 'cftreeitem', 'cftry',
+            'cfupdate', 'cfwddx'
+            ),
+        /* HTML Tags */
+        2 => array(
+            'a', 'abbr', 'acronym', 'address', 'applet',
 
-			'&lt;h1&gt;', '&lt;h2&gt;', '&lt;h3&gt;', '&lt;h4&gt;', '&lt;h5&gt;', '&lt;h6&gt;', '&lt;head&gt;', '&lt;hr&gt;', '&lt;html&gt;',
-			'&lt;h1', '&lt;h2', '&lt;h3', '&lt;h4', '&lt;h5', '&lt;h6', '&lt;head', '&lt;hr', '&lt;html',
-			'&lt;/h1&gt;', '&lt;/h2&gt;', '&lt;/h3&gt;', '&lt;/h4&gt;', '&lt;/h5&gt;', '&lt;/h6&gt;', '&lt;/head&gt;', '&lt;/hr&gt;', '&lt;/html&gt;',
-			'&lt;/h1', '&lt;/h2', '&lt;/h3', '&lt;/h4', '&lt;/h5', '&lt;/h6', '&lt;/head', '&lt;/hr', '&lt;/html',
+            'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b',
+
+            'caption', 'center', 'cite', 'code', 'colgroup', 'col',
 
-			'&lt;iframe&gt;', '&lt;ilayer&gt;', '&lt;img&gt;', '&lt;input&gt;', '&lt;ins&gt;', '&lt;isindex&gt;', '&lt;i&gt;',
-			'&lt;iframe', '&lt;ilayer', '&lt;img', '&lt;input', '&lt;ins', '&lt;isindex', '&lt;i',
-			'&lt;/iframe&gt;', '&lt;/ilayer&gt;', '&lt;/img&gt;', '&lt;/input&gt;', '&lt;/ins&gt;', '&lt;/isindex&gt;', '&lt;/i&gt;',
-			'&lt;/iframe', '&lt;/ilayer', '&lt;/img', '&lt;/input', '&lt;/ins', '&lt;/isindex', '&lt;/i',
+            'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt',
 
-			'&lt;kbd&gt;',
-			'&lt;kbd',
-			'&t;/kbd&gt;',
-			'&lt;/kbd',
+            'em',
 
-			'&lt;label&gt;', '&lt;legend&gt;', '&lt;link&gt;', '&lt;li&gt;',
-			'&lt;label', '&lt;legend', '&lt;link', '&lt;li',
-			'&lt;/label&gt;', '&lt;/legend&gt;', '&lt;/link&gt;', '&lt;/li&gt;',
-			'&lt;/label', '&lt;/legend', '&lt;/link', '&lt;/li',
+            'fieldset', 'font', 'form', 'frame', 'frameset',
+
+            'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html',
 
-			'&lt;map&gt;', '&lt;meta&gt;',
-			'&lt;map', '&lt;meta',
-			'&lt;/map&gt;', '&lt;/meta&gt;',
-			'&lt;/map', '&lt;/meta',
+            'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i',
 
-			'&lt;noframes&gt;', '&lt;noscript&gt;',
-			'&lt;noframes', '&lt;noscript',
-			'&lt;/noframes&gt;', '&lt;/noscript&gt;',
-			'&lt;/noframes', '&lt;/noscript',
+            'kbd',
 
-			'&lt;object&gt;', '&lt;ol&gt;', '&lt;optgroup&gt;', '&lt;option&gt;',
-			'&lt;object', '&lt;ol', '&lt;optgroup', '&lt;option',
-			'&lt;/object&gt;', '&lt;/ol&gt;', '&lt;/optgroup&gt;', '&lt;/option&gt;',
-			'&lt;/object', '&lt;/ol', '&lt;/optgroup', '&lt;/option',
+            'label', 'legend', 'link', 'li',
+
+            'map', 'meta',
 
-			'&lt;param&gt;', '&lt;pre&gt;', '&lt;p&gt;',
-			'&lt;param', '&lt;pre', '&lt;p',
-			'&lt;/param&gt;', '&lt;/pre&gt;', '&lt;/p&gt;',
-			'&lt;/param', '&lt;/pre', '&lt;/p',
+            'noframes', 'noscript',
 
-			'&lt;q&gt;',
-			'&lt;q',
-			'&lt;/q&gt;',
-			'&lt;/q',
+            'object', 'ol', 'optgroup', 'option',
 
-			'&lt;samp&gt;', '&lt;script&gt;', '&lt;select&gt;', '&lt;small&gt;', '&lt;span&gt;', '&lt;strike&gt;', '&lt;strong&gt;', '&lt;style&gt;', '&lt;sub&gt;', '&lt;sup&gt;', '&lt;s&gt;',
-			'&lt;samp', '&lt;script', '&lt;select', '&lt;small', '&lt;span', '&lt;strike', '&lt;strong', '&lt;style', '&lt;sub', '&lt;sup', '&lt;s',
-			'&lt;/samp&gt;', '&lt;/script&gt;', '&lt;/select&gt;', '&lt;/small&gt;', '&lt;/span&gt;', '&lt;/strike&gt;', '&lt;/strong&gt;', '&lt;/style&gt;', '&lt;/sub&gt;', '&lt;/sup&gt;', '&lt;/s&gt;',
-			'&lt;/samp', '&lt;/script', '&lt;/select', '&lt;/small', '&lt;/span', '&lt;/strike', '&lt;/strong', '&lt;/style', '&lt;/sub', '&lt;/sup', '&lt;/s',
+            'param', 'pre', 'p',
 
-			'&lt;table&gt;', '&lt;tbody&gt;', '&lt;td&gt;', '&lt;textarea&gt;', '&lt;text&gt;', '&lt;tfoot&gt;', '&lt;thead&gt;', '&lt;th&gt;', '&lt;title&gt;', '&lt;tr&gt;', '&lt;tt&gt;',
-			'&lt;table', '&lt;tbody', '&lt;td', '&lt;textarea', '&lt;text', '&lt;tfoot', '&lt;tfoot', '&lt;thead', '&lt;th', '&lt;title', '&lt;tr', '&lt;tt',
-			'&lt;/table&gt;', '&lt;/tbody&gt;', '&lt;/td&gt;', '&lt;/textarea&gt;', '&lt;/text&gt;', '&lt;/tfoot&gt;', '&lt;/thead', '&lt;/tfoot', '&lt;/th&gt;', '&lt;/title&gt;', '&lt;/tr&gt;', '&lt;/tt&gt;',
-			'&lt;/table', '&lt;/tbody', '&lt;/td', '&lt;/textarea', '&lt;/text', '&lt;/tfoot', '&lt;/tfoot', '&lt;/thead', '&lt;/th', '&lt;/title', '&lt;/tr', '&lt;/tt',
+            'q',
 
-			'&lt;ul&gt;', '&lt;u&gt;',
-			'&lt;ul', '&lt;u',
-			'&lt;/ul&gt;', '&lt;/ul&gt;',
-			'&lt;/ul', '&lt;/u',
+            'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's',
 
-			'&lt;var&gt;',
-			'&lt;var',
-			'&lt;/var&gt;',
-			'&lt;/var',
+            'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt',
+
+            'ul', 'u',
 
-			'&gt;', '&lt;'
-			),
-		/* HTML attributes */
-		3 => array(
-			'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis',
-			'background', 'bgcolor', 'border',
-			'cellpadding', 'cellspacing', 'char', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords',
-			'data', 'datetime', 'declare', 'defer', 'dir', 'disabled',
-			'enctype',
-			'face', 'for', 'frame', 'frameborder',
-			'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv',
-			'id', 'ismap',
-			'label', 'lang', 'language', 'link', 'longdesc',
-			'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple',
-			'name', 'nohref', 'noresize', 'noshade', 'nowrap',
-			'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload',
-			'profile', 'prompt',
-			'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules',
-			'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary',
-			'tabindex', 'target', 'text', 'title', 'type',
-			'usemap',
-			'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace',
-			'width'
-			),
-			/* CFM Script delimeters */
-		4 => array(
-			'var', 'function', 'while', 'if','else'
-			),
-			/* CFM Functions */
-		5 => array(
-			'Abs', 'GetFunctionList', 'LSTimeFormat','ACos','GetGatewayHelper','LTrim','AddSOAPRequestHeader','GetHttpRequestData',
-			'Max','AddSOAPResponseHeader','GetHttpTimeString','Mid','ArrayAppend','GetLocale','Min','ArrayAvg','GetLocaleDisplayName',
-			'Minute','ArrayClear','GetMetaData','Month','ArrayDeleteAt','GetMetricData','MonthAsString','ArrayInsertAt','GetPageContext',
-			'Now','ArrayIsEmpty','GetProfileSections','NumberFormat','ArrayLen','GetProfileString','ParagraphFormat','ArrayMax',
-			'GetLocalHostIP','ParseDateTime','ArrayMin','GetSOAPRequest','Pi','ArrayNew','GetSOAPRequestHeader','PreserveSingleQuotes',
-			'ArrayPrepend','GetSOAPResponse','Quarter','ArrayResize','GetSOAPResponseHeader','QueryAddColumn','ArraySet',
-			'GetTempDirectory','QueryAddRow','ArraySort','GetTempDirectory','QueryNew','ArraySum','GetTempFile','QuerySetCell',
-			'ArraySwap','GetTickCount','QuotedValueList','ArrayToList','GetTimeZoneInfo','Rand','Asc','GetToken','Randomize',
-			'ASin','Hash','RandRange','Atn','Hour','REFind','BinaryDecode','HTMLCodeFormat','REFindNoCase','BinaryEncode',
-			'HTMLEditFormat','ReleaseComObject','BitAnd','IIf','RemoveChars','BitMaskClear','IncrementValue','RepeatString',
-			'BitMaskRead','InputBaseN','Replace','BitMaskSet','Insert','ReplaceList','BitNot','Int','ReplaceNoCase','BitOr',
-			'IsArray','REReplace','BitSHLN','IsBinary','REReplaceNoCase','BitSHRN','IsBoolean','Reverse','BitXor','IsCustomFunction',
-			'Right','Ceiling','IsDate','RJustify','CharsetDecode','IsDebugMode','Round','CharsetEncode','IsDefined','RTrim',
-			'Chr','IsLeapYear','Second','CJustify','IsLocalHost','SendGatewayMessage','Compare','IsNumeric','SetEncoding',
-			'CompareNoCase','IsNumericDate','SetLocale','Cos','IsObject','SetProfileString','CreateDate','IsQuery','SetVariable',
-			'CreateDateTime','IsSimpleValue','Sgn','CreateObject','IsSOAPRequest','Sin','CreateODBCDate','IsStruct','SpanExcluding',
-			'CreateODBCDateTime','IsUserInRole','SpanIncluding','CreateODBCTime','IsValid','Sqr','CreateTime','IsWDDX','StripCR',
-			'CreateTimeSpan','IsXML','StructAppend','CreateUUID','IsXmlAttribute','StructClear','DateAdd','IsXmlDoc','StructCopy',
-			'DateCompare','IsXmlElem','StructCount','DateConvert','IsXmlNode','StructDelete','DateDiff','IsXmlRoot','StructFind',
-			'DateFormat','JavaCast','StructFindKey','DatePart','JSStringFormat','StructFindValue','Day','LCase','StructGet',
-			'DayOfWeek','Left','StructInsert','DayOfWeekAsString','Len','StructIsEmpty','DayOfYear','ListAppend','StructKeyArray',
-			'DaysInMonth','ListChangeDelims','StructKeyExists','DaysInYear','ListContains','StructKeyList','DE','ListContainsNoCase',
-			'StructNew','DecimalFormat','ListDeleteAt','StructSort','DecrementValue','ListFind','StructUpdate','Decrypt','ListFindNoCase',
-			'Tan','DecryptBinary','ListFirst','TimeFormat','DeleteClientVariable','ListGetAt','ToBase64','DirectoryExists',
-			'ListInsertAt','ToBinary','DollarFormat','ListLast','ToScript','Duplicate','ListLen','ToString','Encrypt','ListPrepend',
-			'Trim','EncryptBinary','ListQualify','UCase','Evaluate','ListRest','URLDecode','Exp','ListSetAt','URLEncodedFormat',
-			'ExpandPath','ListSort','URLSessionFormat','FileExists','ListToArray','Val','Find','ListValueCount','ValueList',
-			'FindNoCase','ListValueCountNoCase','Week','FindOneOf','LJustify','Wrap','FirstDayOfMonth','Log','WriteOutput',
-			'Fix','Log10','XmlChildPos','FormatBaseN','LSCurrencyFormat','XmlElemNew','GetAuthUser','LSDateFormat','XmlFormat',
-			'GetBaseTagData','LSEuroCurrencyFormat','XmlGetNodeType','GetBaseTagList','LSIsCurrency','XmlNew','GetBaseTemplatePath',
-			'LSIsDate','XmlParse','GetClientVariablesList','LSIsNumeric','XmlSearch','GetCurrentTemplatePath','LSNumberFormat',
-			'XmlTransform','GetDirectoryFromPath','LSParseCurrency','XmlValidate','GetEncoding','LSParseDateTime','Year',
-			'GetException','LSParseEuroCurrency','YesNoFormat','GetFileFromPath','LSParseNumber'
-			),
-		/* CFM Attributes */
-		6 => array(
-			'=','&amp;','name','dbtype','connectstring','datasource','username','password','query','delimeter','description','required','hint','default','access','from','to','list','index'
-			)
-		),
-	'SYMBOLS' => array(
-		'/', '=', 'EQ', 'GT', 'LT', 'GTE', 'LTE', 'IS', 'LIKE', '&', '{', '}', '(', ')', '[', ']','gt','lt'
-		),
-	'CASE_SENSITIVE' => array(
-		GESHI_COMMENTS => false,
-		1 => false,
-		2 => false,
-		3 => false,
-		4 => false,
+            'var',
+            ),
+        /* HTML attributes */
+        3 => array(
+            'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis',
+            'background', 'bgcolor', 'border',
+            'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords',
+            'data', 'datetime', 'declare', 'defer', 'dir', 'disabled',
+            'enctype',
+            'face', 'for', 'frame', 'frameborder',
+            'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv',
+            'id', 'ismap',
+            'label', 'lang', 'language', 'link', 'longdesc',
+            'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple',
+            'name', 'nohref', 'noresize', 'noshade', 'nowrap',
+            'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload',
+            'profile', 'prompt',
+            'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules',
+            'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary',
+            'tabindex', 'target', 'text', 'title', 'type',
+            'usemap',
+            'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace',
+            'width'
+            ),
+        /* CFM Script delimeters */
+        4 => array(
+            'var', 'function', 'while', 'if','else'
+            ),
+        /* CFM Functions */
+        5 => array(
+            'Abs', 'GetFunctionList', 'LSTimeFormat','ACos','GetGatewayHelper','LTrim','AddSOAPRequestHeader','GetHttpRequestData',
+            'Max','AddSOAPResponseHeader','GetHttpTimeString','Mid','ArrayAppend','GetLocale','Min','ArrayAvg','GetLocaleDisplayName',
+            'Minute','ArrayClear','GetMetaData','Month','ArrayDeleteAt','GetMetricData','MonthAsString','ArrayInsertAt','GetPageContext',
+            'Now','ArrayIsEmpty','GetProfileSections','NumberFormat','ArrayLen','GetProfileString','ParagraphFormat','ArrayMax',
+            'GetLocalHostIP','ParseDateTime','ArrayMin','GetSOAPRequest','Pi','ArrayNew','GetSOAPRequestHeader','PreserveSingleQuotes',
+            'ArrayPrepend','GetSOAPResponse','Quarter','ArrayResize','GetSOAPResponseHeader','QueryAddColumn','ArraySet',
+            'GetTempDirectory','QueryAddRow','ArraySort','QueryNew','ArraySum','GetTempFile','QuerySetCell',
+            'ArraySwap','GetTickCount','QuotedValueList','ArrayToList','GetTimeZoneInfo','Rand','Asc','GetToken','Randomize',
+            'ASin','Hash','RandRange','Atn','Hour','REFind','BinaryDecode','HTMLCodeFormat','REFindNoCase','BinaryEncode',
+            'HTMLEditFormat','ReleaseComObject','BitAnd','IIf','RemoveChars','BitMaskClear','IncrementValue','RepeatString',
+            'BitMaskRead','InputBaseN','Replace','BitMaskSet','Insert','ReplaceList','BitNot','Int','ReplaceNoCase','BitOr',
+            'IsArray','REReplace','BitSHLN','IsBinary','REReplaceNoCase','BitSHRN','IsBoolean','Reverse','BitXor','IsCustomFunction',
+            'Right','Ceiling','IsDate','RJustify','CharsetDecode','IsDebugMode','Round','CharsetEncode','IsDefined','RTrim',
+            'Chr','IsLeapYear','Second','CJustify','IsLocalHost','SendGatewayMessage','Compare','IsNumeric','SetEncoding',
+            'CompareNoCase','IsNumericDate','SetLocale','Cos','IsObject','SetProfileString','CreateDate','IsQuery','SetVariable',
+            'CreateDateTime','IsSimpleValue','Sgn','CreateObject','IsSOAPRequest','Sin','CreateODBCDate','IsStruct','SpanExcluding',
+            'CreateODBCDateTime','IsUserInRole','SpanIncluding','CreateODBCTime','IsValid','Sqr','CreateTime','IsWDDX','StripCR',
+            'CreateTimeSpan','IsXML','StructAppend','CreateUUID','IsXmlAttribute','StructClear','DateAdd','IsXmlDoc','StructCopy',
+            'DateCompare','IsXmlElem','StructCount','DateConvert','IsXmlNode','StructDelete','DateDiff','IsXmlRoot','StructFind',
+            'DateFormat','JavaCast','StructFindKey','DatePart','JSStringFormat','StructFindValue','Day','LCase','StructGet',
+            'DayOfWeek','Left','StructInsert','DayOfWeekAsString','Len','StructIsEmpty','DayOfYear','ListAppend','StructKeyArray',
+            'DaysInMonth','ListChangeDelims','StructKeyExists','DaysInYear','ListContains','StructKeyList','DE','ListContainsNoCase',
+            'StructNew','DecimalFormat','ListDeleteAt','StructSort','DecrementValue','ListFind','StructUpdate','Decrypt','ListFindNoCase',
+            'Tan','DecryptBinary','ListFirst','TimeFormat','DeleteClientVariable','ListGetAt','ToBase64','DirectoryExists',
+            'ListInsertAt','ToBinary','DollarFormat','ListLast','ToScript','Duplicate','ListLen','ToString','Encrypt','ListPrepend',
+            'Trim','EncryptBinary','ListQualify','UCase','Evaluate','ListRest','URLDecode','Exp','ListSetAt','URLEncodedFormat',
+            'ExpandPath','ListSort','URLSessionFormat','FileExists','ListToArray','Val','Find','ListValueCount','ValueList',
+            'FindNoCase','ListValueCountNoCase','Week','FindOneOf','LJustify','Wrap','FirstDayOfMonth','Log','WriteOutput',
+            'Fix','Log10','XmlChildPos','FormatBaseN','LSCurrencyFormat','XmlElemNew','GetAuthUser','LSDateFormat','XmlFormat',
+            'GetBaseTagData','LSEuroCurrencyFormat','XmlGetNodeType','GetBaseTagList','LSIsCurrency','XmlNew','GetBaseTemplatePath',
+            'LSIsDate','XmlParse','GetClientVariablesList','LSIsNumeric','XmlSearch','GetCurrentTemplatePath','LSNumberFormat',
+            'XmlTransform','GetDirectoryFromPath','LSParseCurrency','XmlValidate','GetEncoding','LSParseDateTime','Year',
+            'GetException','LSParseEuroCurrency','YesNoFormat','GetFileFromPath','LSParseNumber'
+            ),
+        /* CFM Attributes */
+        6 => array(
+            'dbtype','connectstring','datasource','username','password','query','delimeter','description','required','hint','default','access','from','to','list','index'
+            ),
+        7 => array(
+            'EQ', 'GT', 'LT', 'GTE', 'LTE', 'IS', 'LIKE', 'NEQ'
+            )
+        ),
+    'SYMBOLS' => array(
+        '/', '=', '{', '}', '(', ')', '[', ']', '<', '>', '&'
+        ),
+    'CASE_SENSITIVE' => array(
+        GESHI_COMMENTS => false,
+        1 => false,
+        2 => false,
+        3 => false,
+        4 => false,
         5 => false,
-        6 => false
-		),
-	'STYLES' => array(
-		'KEYWORDS' => array(
-			1 => 'color: #990000;',
-			2 => 'color: #000000; font-weight: bold;',
-			3 => 'color: #0000FF;',
-			4 => 'color: #000000; font-weight: bold;',
-			5 => 'color: #0000FF;',
-			6 => 'color: #0000FF'
-			),
-		'COMMENTS' => array(
-			1 => 'color: #808080; font-style: italic;',
-			'MULTI' => 'color: #808080; font-style: italic; background-color:#FFFF99;'
-			),
-		'ESCAPE_CHAR' => array(
-			0 => 'color: #000099; font-weight: bold;'
-			),
-		'BRACKETS' => array(
-			0 => 'color: #0000FF;'
-			),
-		'STRINGS' => array(
-			0 => 'color: #009900;'
-			),
-		'NUMBERS' => array(
-			0 => 'color: #FF0000;'
-			),
-		'METHODS' => array(
-			),
-		'SYMBOLS' => array(
-			0 => 'color: #0000FF;'
-			),
-		'SCRIPT' => array(
-			0 => 'color: #00bbdd;',
-			1 => 'color: #0000FF;',
-			2 => 'color: #000099;',
-			3 => 'color: #333333;'
-			),
-		'REGEXPS' => array(
-			)
-		),
-	'URLS' => array(
-		1 => '',
-		2 => '',
-		3 => '',
-		4 => ''
-		),
-	'OOLANG' => false,
-	'OBJECT_SPLITTERS' => array(
-		),
-	'REGEXPS' => array(
-		),
-	'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
-	'SCRIPT_DELIMITERS' => array(
-		0 => array(
-			'<!DOCTYPE' => '>'
-			),
-		1 => array(
-			 '#' => '#'
-			),
-		2 => array(
-			'<cfscript>' => '</cfscript>;'
-			),
-		3 => array(
-			'<' => '>'
-			)
-	),
-	'HIGHLIGHT_STRICT_BLOCK' => array(
-		0 => false,
-		1 => true,
-		2 => true,
-		3 => true
-		)
+        6 => false,
+        7 => false
+        ),
+    'STYLES' => array(
+        'KEYWORDS' => array(
+            1 => 'color: #990000; font-weight: bold;',
+            2 => 'color: #000000; font-weight: bold;',
+            3 => 'color: #0000FF;',
+            4 => 'color: #000000; font-weight: bold;',
+            5 => 'color: #0000FF;',
+            6 => 'color: #0000FF;',
+            7 => 'color: #0000FF;'
+            ),
+        'COMMENTS' => array(
+            1 => 'color: #808080; font-style: italic;',
+            'MULTI' => 'color: #808080; font-style: italic;'
+            ),
+        'ESCAPE_CHAR' => array(
+            0 => 'color: #000099; font-weight: bold;'
+            ),
+        'BRACKETS' => array(
+            0 => 'color: #0000FF;'
+            ),
+        'STRINGS' => array(
+            0 => 'color: #009900;'
+            ),
+        'NUMBERS' => array(
+            0 => 'color: #FF0000;'
+            ),
+        'METHODS' => array(
+            ),
+        'SYMBOLS' => array(
+            0 => 'color: #0000FF;'
+            ),
+        'SCRIPT' => array(
+            0 => 'color: #808080; font-style: italic;',
+            1 => 'color: #00bbdd;',
+            2 => 'color: #0000FF;',
+            3 => 'color: #000099;',
+            4 => 'color: #333333;',
+            5 => 'color: #333333;'
+            ),
+        'REGEXPS' => array(
+            )
+        ),
+    'URLS' => array(
+        1 => '',
+        2 => 'http://december.com/html/4/element/{FNAMEL}.html',
+        3 => '',
+        4 => '',
+        5 => '',
+        6 => '',
+        7 => ''
+        ),
+    'OOLANG' => false,
+    'OBJECT_SPLITTERS' => array(
+        ),
+    'REGEXPS' => array(
+        ),
+    'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
+    'SCRIPT_DELIMITERS' => array(
+        0 => array(
+            '<!--' => '-->'
+            ),
+        1 => array(
+            '<!DOCTYPE' => '>'
+            ),
+        2 => "/(?!<#)(?:(?:##)*)(#)[a-zA-Z0-9_\.\(\)]+(#)/",
+        3 => array(
+            '<cfscript>' => '</cfscript>'
+            ),
+        4 => array(
+            '<' => '>'
+            ),
+        5 => '/((?!<!)<)(?:"[^"]*"|\'[^\']*\'|(?R)|[^">])+?(>)/si'
+        ),
+    'HIGHLIGHT_STRICT_BLOCK' => array(
+        0 => false,
+        1 => false,
+        2 => true,
+        3 => true,
+        4 => true,
+        5 => true
+        ),
+    'PARSER_CONTROL' => array(
+        'KEYWORDS' => array(
+            1 => array(
+                'DISALLOWED_BEFORE' => '(?<=&lt;|&lt;\/)',
+                'DISALLOWED_AFTER' => '(?=\s|\/|&gt;)',
+                ),
+            2 => array(
+                'DISALLOWED_BEFORE' => '(?<=&lt;|&lt;\/)',
+                'DISALLOWED_AFTER' => '(?=\s|\/|&gt;)',
+                ),
+            3 => array(
+                'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords
+                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords
+                ),
+            7 => array(
+                'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>&|^])', // allow ; before keywords
+                'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords
+                )
+            )
+        )
 );
 
 ?>