1 <?php 2 /************************************************************************************* 3 * cfm.php 4 * ------- 5 * Author: Diego 6 * Copyright: (c) 2006 Diego 7 * Release Version: 1.0.8.3 8 * Date Started: 2006/02/25 9 * 10 * ColdFusion language file for GeSHi. 11 * 12 * CHANGES 13 * ------- 14 * 2006/02/25 (1.0.0) 15 * - First Release 16 * 17 * TODO (updated 2006/02/25) 18 * ------------------------- 19 * 20 ************************************************************************************* 21 * 22 * This file is part of GeSHi. 23 * 24 * GeSHi is free software; you can redistribute it and/or modify 25 * it under the terms of the GNU General Public License as published by 26 * the Free Software Foundation; either version 2 of the License, or 27 * (at your option) any later version. 28 * 29 * GeSHi is distributed in the hope that it will be useful, 30 * but WITHOUT ANY WARRANTY; without even the implied warranty of 31 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 32 * GNU General Public License for more details. 33 * 34 * You should have received a copy of the GNU General Public License 35 * along with GeSHi; if not, write to the Free Software 36 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 37 * 38 ************************************************************************************/ 39 40 $language_data = array ( 41 'LANG_NAME' => 'ColdFusion', 42 'COMMENT_SINGLE' => array(1 => '//'), 43 'COMMENT_MULTI' => array('/*' => '*/'), 44 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 45 'QUOTEMARKS' => array("'", '"'), 46 'ESCAPE_CHAR' => '\\', 47 'KEYWORDS' => array( 48 /* CFM Tags */ 49 1 => array( 50 'cfabort', 'cfapplet', 'cfapplication', 'cfargument', 'cfassociate', 51 'cfbreak', 'cfcache', 'cfcase', 'cfcatch', 'cfchart', 'cfchartdata', 52 'cfchartseries', 'cfcol', 'cfcollection', 'cfcomponent', 53 'cfcontent', 'cfcookie', 'cfdefaultcase', 'cfdirectory', 54 'cfdocument', 'cfdocumentitem', 'cfdocumentsection', 'cfdump', 55 'cfelse', 'cfelseif', 'cferror', 'cfexecute', 'cfexit', 'cffile', 56 'cfflush', 'cfform', 'cfformgroup', 'cfformitem', 'cfftp', 57 'cffunction', 'cfgrid', 'cfgridcolumn', 'cfgridrow', 'cfgridupdate', 58 'cfheader', 'cfhtmlhead', 'cfhttp', 'cfhttpparam', 'cfif', 59 'cfimport', 'cfinclude', 'cfindex', 'cfinput', 'cfinsert', 60 'cfinvoke', 'cfinvokeargument', 'cfldap', 'cflocation', 'cflock', 61 'cflog', 'cflogin', 'cfloginuser', 'cflogout', 'cfloop', 'cfmail', 62 'cfmailparam', 'cfmailpart', 'cfmodule', 'cfNTauthenticate', 63 'cfobject', 'cfobjectcache', 'cfoutput', 'cfparam', 'cfpop', 64 'cfprocessingdirective', 'cfprocparam', 65 'cfprocresult', 'cfproperty', 'cfquery', 'cfqueryparam', 66 'cfregistry', 'cfreport', 'cfreportparam', 'cfrethrow', 'cfreturn', 67 'cfsavecontent', 'cfschedule', 'cfscript', 'cfsearch', 'cfselect', 68 'cfset', 'cfsetting', 'cfsilent', 'cfstoredproc', 69 'cfswitch', 'cftable', 'cftextarea', 'cfthrow', 'cftimer', 70 'cftrace', 'cftransaction', 'cftree', 'cftreeitem', 'cftry', 71 'cfupdate', 'cfwddx' 72 ), 73 /* HTML Tags */ 74 2 => array( 75 'a', 'abbr', 'acronym', 'address', 'applet', 76 77 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', 78 79 'caption', 'center', 'cite', 'code', 'colgroup', 'col', 80 81 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', 82 83 'em', 84 85 'fieldset', 'font', 'form', 'frame', 'frameset', 86 87 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', 88 89 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', 90 91 'kbd', 92 93 'label', 'legend', 'link', 'li', 94 95 'map', 'meta', 96 97 'noframes', 'noscript', 98 99 'object', 'ol', 'optgroup', 'option', 100 101 'param', 'pre', 'p', 102 103 'q', 104 105 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', 106 107 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', 108 109 'ul', 'u', 110 111 'var', 112 ), 113 /* HTML attributes */ 114 3 => array( 115 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', 116 'background', 'bgcolor', 'border', 117 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', 118 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', 119 'enctype', 120 'face', 'for', 'frame', 'frameborder', 121 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', 122 'id', 'ismap', 123 'label', 'lang', 'language', 'link', 'longdesc', 124 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', 125 'name', 'nohref', 'noresize', 'noshade', 'nowrap', 126 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', 127 'profile', 'prompt', 128 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', 129 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', 130 'tabindex', 'target', 'text', 'title', 'type', 131 'usemap', 132 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', 133 'width' 134 ), 135 /* CFM Script delimeters */ 136 4 => array( 137 'var', 'function', 'while', 'if','else' 138 ), 139 /* CFM Functions */ 140 5 => array( 141 'Abs', 'GetFunctionList', 'LSTimeFormat','ACos','GetGatewayHelper','LTrim','AddSOAPRequestHeader','GetHttpRequestData', 142 'Max','AddSOAPResponseHeader','GetHttpTimeString','Mid','ArrayAppend','GetLocale','Min','ArrayAvg','GetLocaleDisplayName', 143 'Minute','ArrayClear','GetMetaData','Month','ArrayDeleteAt','GetMetricData','MonthAsString','ArrayInsertAt','GetPageContext', 144 'Now','ArrayIsEmpty','GetProfileSections','NumberFormat','ArrayLen','GetProfileString','ParagraphFormat','ArrayMax', 145 'GetLocalHostIP','ParseDateTime','ArrayMin','GetSOAPRequest','Pi','ArrayNew','GetSOAPRequestHeader','PreserveSingleQuotes', 146 'ArrayPrepend','GetSOAPResponse','Quarter','ArrayResize','GetSOAPResponseHeader','QueryAddColumn','ArraySet', 147 'GetTempDirectory','QueryAddRow','ArraySort','QueryNew','ArraySum','GetTempFile','QuerySetCell', 148 'ArraySwap','GetTickCount','QuotedValueList','ArrayToList','GetTimeZoneInfo','Rand','Asc','GetToken','Randomize', 149 'ASin','Hash','RandRange','Atn','Hour','REFind','BinaryDecode','HTMLCodeFormat','REFindNoCase','BinaryEncode', 150 'HTMLEditFormat','ReleaseComObject','BitAnd','IIf','RemoveChars','BitMaskClear','IncrementValue','RepeatString', 151 'BitMaskRead','InputBaseN','Replace','BitMaskSet','Insert','ReplaceList','BitNot','Int','ReplaceNoCase','BitOr', 152 'IsArray','REReplace','BitSHLN','IsBinary','REReplaceNoCase','BitSHRN','IsBoolean','Reverse','BitXor','IsCustomFunction', 153 'Right','Ceiling','IsDate','RJustify','CharsetDecode','IsDebugMode','Round','CharsetEncode','IsDefined','RTrim', 154 'Chr','IsLeapYear','Second','CJustify','IsLocalHost','SendGatewayMessage','Compare','IsNumeric','SetEncoding', 155 'CompareNoCase','IsNumericDate','SetLocale','Cos','IsObject','SetProfileString','CreateDate','IsQuery','SetVariable', 156 'CreateDateTime','IsSimpleValue','Sgn','CreateObject','IsSOAPRequest','Sin','CreateODBCDate','IsStruct','SpanExcluding', 157 'CreateODBCDateTime','IsUserInRole','SpanIncluding','CreateODBCTime','IsValid','Sqr','CreateTime','IsWDDX','StripCR', 158 'CreateTimeSpan','IsXML','StructAppend','CreateUUID','IsXmlAttribute','StructClear','DateAdd','IsXmlDoc','StructCopy', 159 'DateCompare','IsXmlElem','StructCount','DateConvert','IsXmlNode','StructDelete','DateDiff','IsXmlRoot','StructFind', 160 'DateFormat','JavaCast','StructFindKey','DatePart','JSStringFormat','StructFindValue','Day','LCase','StructGet', 161 'DayOfWeek','Left','StructInsert','DayOfWeekAsString','Len','StructIsEmpty','DayOfYear','ListAppend','StructKeyArray', 162 'DaysInMonth','ListChangeDelims','StructKeyExists','DaysInYear','ListContains','StructKeyList','DE','ListContainsNoCase', 163 'StructNew','DecimalFormat','ListDeleteAt','StructSort','DecrementValue','ListFind','StructUpdate','Decrypt','ListFindNoCase', 164 'Tan','DecryptBinary','ListFirst','TimeFormat','DeleteClientVariable','ListGetAt','ToBase64','DirectoryExists', 165 'ListInsertAt','ToBinary','DollarFormat','ListLast','ToScript','Duplicate','ListLen','ToString','Encrypt','ListPrepend', 166 'Trim','EncryptBinary','ListQualify','UCase','Evaluate','ListRest','URLDecode','Exp','ListSetAt','URLEncodedFormat', 167 'ExpandPath','ListSort','URLSessionFormat','FileExists','ListToArray','Val','Find','ListValueCount','ValueList', 168 'FindNoCase','ListValueCountNoCase','Week','FindOneOf','LJustify','Wrap','FirstDayOfMonth','Log','WriteOutput', 169 'Fix','Log10','XmlChildPos','FormatBaseN','LSCurrencyFormat','XmlElemNew','GetAuthUser','LSDateFormat','XmlFormat', 170 'GetBaseTagData','LSEuroCurrencyFormat','XmlGetNodeType','GetBaseTagList','LSIsCurrency','XmlNew','GetBaseTemplatePath', 171 'LSIsDate','XmlParse','GetClientVariablesList','LSIsNumeric','XmlSearch','GetCurrentTemplatePath','LSNumberFormat', 172 'XmlTransform','GetDirectoryFromPath','LSParseCurrency','XmlValidate','GetEncoding','LSParseDateTime','Year', 173 'GetException','LSParseEuroCurrency','YesNoFormat','GetFileFromPath','LSParseNumber' 174 ), 175 /* CFM Attributes */ 176 6 => array( 177 'dbtype','connectstring','datasource','username','password','query','delimeter','description','required','hint','default','access','from','to','list','index' 178 ), 179 7 => array( 180 'EQ', 'GT', 'LT', 'GTE', 'LTE', 'IS', 'LIKE', 'NEQ' 181 ) 182 ), 183 'SYMBOLS' => array( 184 '/', '=', '{', '}', '(', ')', '[', ']', '<', '>', '&' 185 ), 186 'CASE_SENSITIVE' => array( 187 GESHI_COMMENTS => false, 188 1 => false, 189 2 => false, 190 3 => false, 191 4 => false, 192 5 => false, 193 6 => false, 194 7 => false 195 ), 196 'STYLES' => array( 197 'KEYWORDS' => array( 198 1 => 'color: #990000; font-weight: bold;', 199 2 => 'color: #000000; font-weight: bold;', 200 3 => 'color: #0000FF;', 201 4 => 'color: #000000; font-weight: bold;', 202 5 => 'color: #0000FF;', 203 6 => 'color: #0000FF;', 204 7 => 'color: #0000FF;' 205 ), 206 'COMMENTS' => array( 207 1 => 'color: #808080; font-style: italic;', 208 'MULTI' => 'color: #808080; font-style: italic;' 209 ), 210 'ESCAPE_CHAR' => array( 211 0 => 'color: #000099; font-weight: bold;' 212 ), 213 'BRACKETS' => array( 214 0 => 'color: #0000FF;' 215 ), 216 'STRINGS' => array( 217 0 => 'color: #009900;' 218 ), 219 'NUMBERS' => array( 220 0 => 'color: #FF0000;' 221 ), 222 'METHODS' => array( 223 ), 224 'SYMBOLS' => array( 225 0 => 'color: #0000FF;' 226 ), 227 'SCRIPT' => array( 228 0 => 'color: #808080; font-style: italic;', 229 1 => 'color: #00bbdd;', 230 2 => 'color: #0000FF;', 231 3 => 'color: #000099;', 232 4 => 'color: #333333;', 233 5 => 'color: #333333;' 234 ), 235 'REGEXPS' => array( 236 ) 237 ), 238 'URLS' => array( 239 1 => '', 240 2 => 'http://december.com/html/4/element/{FNAMEL}.html', 241 3 => '', 242 4 => '', 243 5 => '', 244 6 => '', 245 7 => '' 246 ), 247 'OOLANG' => false, 248 'OBJECT_SPLITTERS' => array( 249 ), 250 'REGEXPS' => array( 251 ), 252 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, 253 'SCRIPT_DELIMITERS' => array( 254 0 => array( 255 '<!--' => '-->' 256 ), 257 1 => array( 258 '<!DOCTYPE' => '>' 259 ), 260 2 => "/(?!<#)(?:(?:##)*)(#)[a-zA-Z0-9_\.\(\)]+(#)/", 261 3 => array( 262 '<cfscript>' => '</cfscript>' 263 ), 264 4 => array( 265 '<' => '>' 266 ), 267 5 => '/((?!<!)<)(?:"[^"]*"|\'[^\']*\'|(?R)|[^">])+?(>)/si' 268 ), 269 'HIGHLIGHT_STRICT_BLOCK' => array( 270 0 => false, 271 1 => false, 272 2 => true, 273 3 => true, 274 4 => true, 275 5 => true 276 ), 277 'PARSER_CONTROL' => array( 278 'KEYWORDS' => array( 279 1 => array( 280 'DISALLOWED_BEFORE' => '(?<=<|<\/)', 281 'DISALLOWED_AFTER' => '(?=\s|\/|>)', 282 ), 283 2 => array( 284 'DISALLOWED_BEFORE' => '(?<=<|<\/)', 285 'DISALLOWED_AFTER' => '(?=\s|\/|>)', 286 ), 287 3 => array( 288 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords 289 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords 290 ), 291 7 => array( 292 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>&|^])', // allow ; before keywords 293 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords 294 ) 295 ) 296 ) 297 ); 298 299 ?> 300