Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/vim73/syntax/cf.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim73/syntax/cf.vim')
-rw-r--r--vim73/syntax/cf.vim440
1 files changed, 440 insertions, 0 deletions
diff --git a/vim73/syntax/cf.vim b/vim73/syntax/cf.vim
new file mode 100644
index 0000000..63d976d
--- /dev/null
+++ b/vim73/syntax/cf.vim
@@ -0,0 +1,440 @@
+" Vim syntax file
+" Language: CFML
+" Maintainer: Toby Woodwark (toby.woodwark+vim@gmail.com)
+" Last Change: 2010-03-02
+" Filenames: *.cfc *.cfm
+" Version: Adobe ColdFusion 9
+" Usage: This file contains both syntax definitions
+" and a list of known builtin tags, functions and keywords.
+" Refs -
+" http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WS8f0cc78011fffa71866534d11cdad96e4e-8000.html
+" http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec17324-8000.html
+" TODO:
+" Support the limited array literal and struct literal syntax in CF8+.
+" Highlight namespaced tags fom cfimport.
+" Complete CF9+ cfscript support.
+" Railo support.
+" Options:
+" d_noinclude_html - set to prevent HTML highlighting. Use this if you are not working on HTML.
+
+" Quit if a syntax file is already loaded.
+if exists("b:current_syntax")
+ finish
+endif
+
+if exists("d_noinclude_html")
+ " Define alternatives to the HTML syntax file.
+
+ " Copied from html.vim - the rules for matching a CF tag match those for HTML/SGML.
+ " CFML syntax is more permissive when it comes to superfluous <> chars.
+ syn region htmlString contained start=+"+ end=+"+ contains=@htmlPreproc
+ syn region htmlString contained start=+'+ end=+'+ contains=@htmlPreproc
+ syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=@htmlPreproc
+ " Hacked htmlTag so that it only matches cf tags and not random <> chars.
+ syn region htmlEndTag start=+</cf+ end=+>+ contains=htmlTagN,htmlTagError
+ syn region htmlTag start=+<\s*cf[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,@htmlPreproc,@htmlArgCluster
+ syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,@htmlTagNameCluster
+ syn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,@htmlTagNameCluster
+ syn match htmlTagError contained "[^>]<"ms=s+1
+else
+ " Use all the stuff from the HTML syntax file.
+ " This means eg HTML comments are highlighted as comments, even if they include cf tags.
+ runtime! syntax/html.vim
+endif
+
+syn sync fromstart
+syn sync maxlines=200
+syn case ignore
+
+" Scopes and keywords.
+syn keyword cfScope contained cgi cffile cookie request caller this thistag
+syn keyword cfScope contained cfcatch variables application server session client form url local
+syn keyword cfScope contained arguments super cfhttp attributes error
+syn keyword cfBool contained yes no true false
+
+" Operator strings.
+" ColdFusion <=7:
+syn keyword cfOperator contained xor eqv and or lt le lte gt ge gte equal eq neq not is mod contains
+syn match cfOperatorMatch contained "+"
+syn match cfOperatorMatch contained "\-"
+syn match cfOperatorMatch contained "[\*\/\\\^\&][\+\-\*\/\\\^\&]\@!"
+syn match cfOperatorMatch contained "\<\(not\_s\+\)\?equal\>"
+syn match cfOperatorMatch contained "\<does\_s\+not\_s\+contain\>"
+syn match cfOperatorMatch contained "\<\(greater\|less\)\_s\+than\(\_s\+or\_s\+equal\_s\+to\)\?\>"
+" ColdFusion 8:
+syn keyword cfOperator contained imp
+syn match cfOperatorMatch contained "[?%:!]"
+syn match cfOperatorMatch contained "[\+\-\*\/\&]="
+syn match cfOperatorMatch contained "++"
+syn match cfOperatorMatch contained "--"
+syn match cfOperatorMatch contained "&&"
+syn match cfOperatorMatch contained "||"
+
+syn cluster cfOperatorCluster contains=cfOperator,cfOperatorMatch
+
+" Custom tags called with the <cf_xxx> syntax.
+syn match cfCustomTagName contained "\<cf_[a-zA-Z0-9_]\+\>"
+" (TODO match namespaced tags imported using cfimport, similarly.)
+
+" Tag names.
+" ColdFusion <=7:
+syn keyword cfTagName contained cfabort cfapplet cfapplication cfargument cfassociate
+syn keyword cfTagName contained cfbreak cfcache cfcalendar cfcase cfcatch
+syn keyword cfTagName contained cfchart cfchartdata cfchartseries cfcol cfcollection
+syn keyword cfTagName contained cfcomponent cfcontent cfcookie cfdefaultcase cfdirectory
+syn keyword cfTagName contained cfdocument cfdocumentitem cfdocumentsection cfdump cfelse
+syn keyword cfTagName contained cfelseif cferror cfexecute cfexit cffile cfflush cfform
+syn keyword cfTagName contained cfformgroup cfformitem cfftp cffunction
+syn keyword cfTagName contained cfgrid cfgridcolumn cfgridrow cfgridupdate cfheader
+syn keyword cfTagName contained cfhtmlhead cfhttp cfhttpparam cfif cfimport
+syn keyword cfTagName contained cfinclude cfindex cfinput cfinsert cfinvoke cfinvokeargument
+syn keyword cfTagName contained cfldap cflocation cflock cflog cflogin cfloginuser cflogout
+syn keyword cfTagName contained cfloop cfmail cfmailparam cfmailpart cfmodule
+syn keyword cfTagName contained cfNTauthenticate cfobject cfobjectcache cfoutput cfparam
+syn keyword cfTagName contained cfpop cfprocessingdirective cfprocparam cfprocresult
+syn keyword cfTagName contained cfproperty cfquery cfqueryparam cfregistry cfreport
+syn keyword cfTagName contained cfreportparam cfrethrow cfreturn cfsavecontent cfschedule
+syn keyword cfTagName contained cfscript cfsearch cfselect cfservletparam cfset
+syn keyword cfTagName contained cfsetting cfsilent cfslider cfstoredproc cfswitch cftable
+syn keyword cfTagName contained cftextarea cftextinput cfthrow cftimer cftrace cftransaction
+syn keyword cfTagName contained cftree cftreeitem cftry cfupdate cfwddx cfxml
+" ColdFusion 8:
+syn keyword cfTagName contained cfajaximport cfajaxproxy cfdbinfo cfdiv cfexchangecalendar
+syn keyword cfTagName contained cfexchangeconnection cfexchangecontact cfexchangefilter
+syn keyword cfTagName contained cfexchangemail cfexchangetask cffeed
+syn keyword cfTagName contained cfinterface cflayout cflayoutarea cfmenu cfmenuitem
+syn keyword cfTagName contained cfpdf cfpdfform cfpdfformparam cfpdfparam cfpdfsubform cfpod
+syn keyword cfTagName contained cfpresentation cfpresentationslide cfpresenter cfprint
+syn keyword cfTagName contained cfsprydataset cfthread cftooltip cfwindow cfzip cfzipparam
+" ColdFusion 9:
+syn keyword cfTagName contained cfcontinue cffileupload cffinally
+syn keyword cfTagName contained cfimage cfimap
+syn keyword cfTagName contained cfmap cfmapitem cfmediaplayer cfmessagebox
+syn keyword cfTagName contained cfprocparam cfprogressbar
+syn keyword cfTagName contained cfsharepoint cfspreadsheet
+
+" Tag attributes.
+" XXX Not updated for ColdFusion 8/9.
+" These are becoming a headache to maintain, so might be removed.
+syn keyword cfArg contained abort accept access accessible action addnewline addtoken
+syn keyword cfArg contained agentname align appendkey appletsource application
+syn keyword cfArg contained applicationtimeout applicationtoken archive
+syn keyword cfArg contained argumentcollection arguments asciiextensionlist
+syn keyword cfArg contained attachmentpath attributecollection attributes autowidth
+syn keyword cfArg contained backgroundvisible basetag bcc bgcolor bind bindingname
+syn keyword cfArg contained blockfactor body bold border branch cachedafter cachedwithin
+syn keyword cfArg contained casesensitive category categorytree cc cfsqltype charset
+syn keyword cfArg contained chartheight chartwidth checked class clientmanagement
+syn keyword cfArg contained clientstorage codebase colheaderalign colheaderbold
+syn keyword cfArg contained colheaderfont colheaderfontsize colheaderitalic colheaders
+syn keyword cfArg contained colheadertextcolor collection colorlist colspacing columns
+syn keyword cfArg contained completepath component condition connection contentid
+syn keyword cfArg contained context contextbytes contexthighlightbegin
+syn keyword cfArg contained contexthighlightend contextpassages cookiedomain criteria
+syn keyword cfArg contained custom1 custom2 custom3 custom4 data dataalign
+syn keyword cfArg contained databackgroundcolor datacollection datasource daynames
+syn keyword cfArg contained dbname dbserver dbtype dbvarname debug default delete
+syn keyword cfArg contained deletebutton deletefile delimiter delimiters description
+syn keyword cfArg contained destination detail directory disabled display displayname
+syn keyword cfArg contained disposition dn domain editable enablecab enablecfoutputonly
+syn keyword cfArg contained enabled encoded encryption enctype enddate endrange endtime
+syn keyword cfArg contained entry errorcode exception existing expand expires expireurl
+syn keyword cfArg contained expression extendedinfo extends extensions external
+syn keyword cfArg contained failifexists failto file filefield filename filter
+syn keyword cfArg contained firstdayofweek firstrowasheaders fixnewline font fontbold
+syn keyword cfArg contained fontembed fontitalic fontsize foregroundcolor format
+syn keyword cfArg contained formfields formula from generateuniquefilenames getasbinary
+syn keyword cfArg contained grid griddataalign gridlines groovecolor group
+syn keyword cfArg contained groupcasesensitive header headeralign headerbold headerfont
+syn keyword cfArg contained headerfontsize headeritalic headerlines headertextcolor
+syn keyword cfArg contained height highlighthref hint href hrefkey hscroll hspace html
+syn keyword cfArg contained htmltable id idletimeout img imgopen imgstyle index inline
+syn keyword cfArg contained input insert insertbutton interval isolation italic item
+syn keyword cfArg contained itemcolumn key keyonly label labelformat language list
+syn keyword cfArg contained listgroups locale localfile log loginstorage lookandfeel
+syn keyword cfArg contained mailerid mailto marginbottom marginleft marginright
+syn keyword cfArg contained margintop markersize markerstyle mask max maxlength maxrows
+syn keyword cfArg contained message messagenumber method mimeattach mimetype min mode
+syn keyword cfArg contained modifytype monthnames multipart multiple name nameconflict
+syn keyword cfArg contained namespace new newdirectory notsupported null numberformat
+syn keyword cfArg contained object omit onblur onchange onclick onerror onfocus
+syn keyword cfArg contained onkeydown onkeyup onload onmousedown onmouseup onreset
+syn keyword cfArg contained onsubmit onvalidate operation orderby orientation output
+syn keyword cfArg contained outputfile overwrite ownerpassword pageencoding pageheight
+syn keyword cfArg contained pagetype pagewidth paintstyle param_1 param_2 param_3
+syn keyword cfArg contained param_4 param_5 param_6 param_7 param_8 param_9 parent
+syn keyword cfArg contained parrent passive passthrough password path pattern
+syn keyword cfArg contained permissions picturebar pieslicestyle port porttypename
+syn keyword cfArg contained prefix preloader preservedata previouscriteria procedure
+syn keyword cfArg contained protocol provider providerdsn proxybypass proxypassword
+syn keyword cfArg contained proxyport proxyserver proxyuser publish query queryasroot
+syn keyword cfArg contained queryposition range rebind recurse redirect referral
+syn keyword cfArg contained refreshlabel remotefile replyto report requesttimeout
+syn keyword cfArg contained required reset resoleurl resolveurl result resultset
+syn keyword cfArg contained retrycount returnasbinary returncode returntype
+syn keyword cfArg contained returnvariable roles rotated rowheaderalign rowheaderbold
+syn keyword cfArg contained rowheaderfont rowheaderfontsize rowheaderitalic rowheaders
+syn keyword cfArg contained rowheadertextcolor rowheaderwidth rowheight scale scalefrom
+syn keyword cfArg contained scaleto scope scriptprotect scriptsrc secure securitycontext
+syn keyword cfArg contained select selectcolor selected selecteddate selectedindex
+syn keyword cfArg contained selectmode separator seriescolor serieslabel seriesplacement
+syn keyword cfArg contained server serviceport serviceportname sessionmanagement
+syn keyword cfArg contained sessiontimeout setclientcookies setcookie setdomaincookies
+syn keyword cfArg contained show3d showborder showdebugoutput showerror showlegend
+syn keyword cfArg contained showmarkers showxgridlines showygridlines size skin sort
+syn keyword cfArg contained sortascendingbutton sortcontrol sortdescendingbutton
+syn keyword cfArg contained sortxaxis source spoolenable sql src srcfile start startdate
+syn keyword cfArg contained startrange startrow starttime status statuscode statustext
+syn keyword cfArg contained step stoponerror style subject suggestions
+syn keyword cfArg contained suppresswhitespace tablename tableowner tablequalifier
+syn keyword cfArg contained taglib target task template text textcolor textqualifier
+syn keyword cfArg contained throwonerror throwonerror throwonfailure throwontimeout
+syn keyword cfArg contained timeout timespan tipbgcolor tipstyle title to tooltip
+syn keyword cfArg contained toplevelvariable transfermode type uid unit url urlpath
+syn keyword cfArg contained useragent username userpassword usetimezoneinfo validate
+syn keyword cfArg contained validateat value valuecolumn values valuesdelimiter
+syn keyword cfArg contained valuesdisplay var variable vertical visible vscroll vspace
+syn keyword cfArg contained webservice width wmode wraptext wsdlfile xaxistitle
+syn keyword cfArg contained xaxistype xoffset yaxistitle yaxistype yoffset
+
+" Functions.
+" ColdFusion <=7:
+syn keyword cfFunctionName contained ACos ASin Abs AddSOAPRequestHeader AddSOAPResponseHeader
+syn keyword cfFunctionName contained ArrayAppend ArrayAvg ArrayClear ArrayDeleteAt ArrayInsertAt
+syn keyword cfFunctionName contained ArrayIsEmpty ArrayLen ArrayMax ArrayMin ArrayNew
+syn keyword cfFunctionName contained ArrayPrepend ArrayResize ArraySet ArraySort ArraySum
+syn keyword cfFunctionName contained ArraySwap ArrayToList Asc Atn AuthenticatedContext
+syn keyword cfFunctionName contained AuthenticatedUser BinaryDecode BinaryEncode BitAnd
+syn keyword cfFunctionName contained BitMaskClear BitMaskRead BitMaskSet BitNot BitOr BitSHLN
+syn keyword cfFunctionName contained BitSHRN BitXor CJustify Ceiling CharsetDecode CharsetEncode
+syn keyword cfFunctionName contained Chr Compare CompareNoCase Cos CreateDate CreateDateTime
+syn keyword cfFunctionName contained CreateODBCDate CreateODBCDateTime CreateODBCTime
+syn keyword cfFunctionName contained CreateObject CreateTime CreateTimeSpan CreateUUID DE DateAdd
+syn keyword cfFunctionName contained DateCompare DateConvert DateDiff DateFormat DatePart Day
+syn keyword cfFunctionName contained DayOfWeek DayOfWeekAsString DayOfYear DaysInMonth DaysInYear
+syn keyword cfFunctionName contained DecimalFormat DecrementValue Decrypt DecryptBinary
+syn keyword cfFunctionName contained DeleteClientVariable DirectoryExists DollarFormat Duplicate
+syn keyword cfFunctionName contained Encrypt EncryptBinary Evaluate Exp ExpandPath FileExists
+syn keyword cfFunctionName contained Find FindNoCase FindOneOf FirstDayOfMonth Fix FormatBaseN
+syn keyword cfFunctionName contained GenerateSecretKey GetAuthUser GetBaseTagData GetBaseTagList
+syn keyword cfFunctionName contained GetBaseTemplatePath GetClientVariablesList GetContextRoot
+syn keyword cfFunctionName contained GetCurrentTemplatePath GetDirectoryFromPath GetEncoding
+syn keyword cfFunctionName contained GetException GetFileFromPath GetFunctionList
+syn keyword cfFunctionName contained GetGatewayHelper GetHttpRequestData GetHttpTimeString
+syn keyword cfFunctionName contained GetLocalHostIP
+syn keyword cfFunctionName contained GetLocale GetLocaleDisplayName GetMetaData GetMetricData
+syn keyword cfFunctionName contained GetPageContext GetProfileSections GetProfileString
+syn keyword cfFunctionName contained GetSOAPRequest GetSOAPRequestHeader GetSOAPResponse
+syn keyword cfFunctionName contained GetSOAPResponseHeader GetTempDirectory GetTempFile
+syn keyword cfFunctionName contained GetTickCount GetTimeZoneInfo GetToken
+syn keyword cfFunctionName contained HTMLCodeFormat HTMLEditFormat Hash Hour IIf IncrementValue
+syn keyword cfFunctionName contained InputBaseN Insert Int IsArray IsAuthenticated IsAuthorized
+syn keyword cfFunctionName contained IsBinary IsBoolean IsCustomFunction IsDate IsDebugMode
+syn keyword cfFunctionName contained IsDefined
+syn keyword cfFunctionName contained IsLeapYear IsLocalHost IsNumeric
+syn keyword cfFunctionName contained IsNumericDate IsObject IsProtected IsQuery IsSOAPRequest
+syn keyword cfFunctionName contained IsSimpleValue IsStruct IsUserInRole IsValid IsWDDX IsXML
+syn keyword cfFunctionName contained IsXmlAttribute IsXmlDoc IsXmlElem IsXmlNode IsXmlRoot
+syn keyword cfFunctionName contained JSStringFormat JavaCast LCase LJustify LSCurrencyFormat
+syn keyword cfFunctionName contained LSDateFormat LSEuroCurrencyFormat LSIsCurrency LSIsDate
+syn keyword cfFunctionName contained LSIsNumeric LSNumberFormat LSParseCurrency LSParseDateTime
+syn keyword cfFunctionName contained LSParseEuroCurrency LSParseNumber LSTimeFormat LTrim Left
+syn keyword cfFunctionName contained Len ListAppend ListChangeDelims ListContains
+syn keyword cfFunctionName contained ListContainsNoCase ListDeleteAt ListFind ListFindNoCase
+syn keyword cfFunctionName contained ListFirst ListGetAt ListInsertAt ListLast ListLen
+syn keyword cfFunctionName contained ListPrepend ListQualify ListRest ListSetAt ListSort
+syn keyword cfFunctionName contained ListToArray ListValueCount ListValueCountNoCase Log Log10
+syn keyword cfFunctionName contained Max Mid Min Minute Month MonthAsString Now NumberFormat
+syn keyword cfFunctionName contained ParagraphFormat ParseDateTime Pi
+syn keyword cfFunctionName contained PreserveSingleQuotes Quarter QueryAddColumn QueryAddRow
+syn keyword cfFunctionName contained QueryNew QuerySetCell QuotedValueList REFind REFindNoCase
+syn keyword cfFunctionName contained REReplace REReplaceNoCase RJustify RTrim Rand RandRange
+syn keyword cfFunctionName contained Randomize ReleaseComObject RemoveChars RepeatString Replace
+syn keyword cfFunctionName contained ReplaceList ReplaceNoCase Reverse Right Round Second
+syn keyword cfFunctionName contained SendGatewayMessage SetEncoding SetLocale SetProfileString
+syn keyword cfFunctionName contained SetVariable Sgn Sin SpanExcluding SpanIncluding Sqr StripCR
+syn keyword cfFunctionName contained StructAppend StructClear StructCopy StructCount StructDelete
+syn keyword cfFunctionName contained StructFind StructFindKey StructFindValue StructGet
+syn keyword cfFunctionName contained StructInsert StructIsEmpty StructKeyArray StructKeyExists
+syn keyword cfFunctionName contained StructKeyList StructNew StructSort StructUpdate Tan
+syn keyword cfFunctionName contained TimeFormat ToBase64 ToBinary ToScript ToString Trim UCase
+syn keyword cfFunctionName contained URLDecode URLEncodedFormat URLSessionFormat Val ValueList
+syn keyword cfFunctionName contained Week Wrap WriteOutput XmlChildPos XmlElemNew XmlFormat
+syn keyword cfFunctionName contained XmlGetNodeType XmlNew XmlParse XmlSearch XmlTransform
+syn keyword cfFunctionName contained XmlValidate Year YesNoFormat
+" ColdFusion 8:
+syn keyword cfFunctionName contained AjaxLink AjaxOnLoad ArrayIsDefined BinaryDecode BinaryEncode CharsetDecode CharsetEncode
+syn keyword cfFunctionName contained DecryptBinary DeserializeJSON DotNetToCFType EncryptBinary FileClose FileCopy FileDelete
+syn keyword cfFunctionName contained FileIsEOF FileMove FileOpen FileRead FileReadBinary FileReadLine FileSetAccessMode FileSetAttribute
+syn keyword cfFunctionName contained FileSetLastModified FileWrite GenerateSecretKey GetGatewayHelper GetAuthUser GetComponentMetaData
+syn keyword cfFunctionName contained GetContextRoot GetEncoding GetFileInfo GetLocaleDisplayName GetLocalHostIP GetMetaData
+syn keyword cfFunctionName contained GetPageContext GetPrinterInfo GetProfileSections GetReadableImageFormats GetSOAPRequest
+syn keyword cfFunctionName contained GetSOAPRequestHeader GetSOAPResponse GetSOAPResponseHeader GetUserRoles GetWriteableImageFormats
+syn keyword cfFunctionName contained ImageAddBorder ImageBlur ImageClearRect ImageCopy ImageCrop ImageDrawArc ImageDrawBeveledRect
+syn keyword cfFunctionName contained ImageDrawCubicCurve ImageDrawPoint ImageDrawLine ImageDrawLines ImageDrawOval
+syn keyword cfFunctionName contained ImageDrawQuadraticCurve ImageDrawRect ImageDrawRoundRect ImageDrawText ImageFlip ImageGetBlob
+syn keyword cfFunctionName contained ImageGetBufferedImage ImageGetEXIFMetadata ImageGetEXIFTag ImageGetHeight ImageGetIPTCMetadata
+syn keyword cfFunctionName contained ImageGetIPTCTag ImageGetWidth ImageGrayscale ImageInfo ImageNegative ImageNew ImageOverlay
+syn keyword cfFunctionName contained ImagePaste ImageRead ImageReadBase64 ImageResize ImageRotate ImageRotateDrawingAxis ImageScaleToFit
+" ColdFusion 9:
+syn keyword cfFunctionName contained ApplicationStop ArrayContains ArrayDelete ArrayFind ArrayFindNoCase IsSpreadsheetFile
+syn keyword cfFunctionName contained IsSpreadsheetObject FileSkipBytes Location ObjectLoad SpreadsheetFormatColumn
+syn keyword cfFunctionName contained SpreadsheetFormatColumns SpreadsheetFormatRow SpreadsheetFormatRows SpreadsheetGetCellComment
+syn keyword cfFunctionName contained CacheGetAllIds CacheGetMetadata CacheGetProperties CacheGet CachePut ObjectSave ORMClearSession
+syn keyword cfFunctionName contained ORMCloseSession ORMEvictQueries ORMEvictCollection SpreadsheetGetCellFormula SpreadsheetGetCellValue
+syn keyword cfFunctionName contained SpreadsheetInfo SpreadsheetMergeCells SpreadsheetNew CacheRemove CacheSetProperties DirectoryCreate
+syn keyword cfFunctionName contained DirectoryDelete DirectoryExists ORMEvictEntity ORMEvictQueries ORMExecuteQuery ORMFlush
+syn keyword cfFunctionName contained ORMGetSession SpreadsheetRead SpreadsheetReadBinary SpreadsheetSetActiveSheetNumber
+syn keyword cfFunctionName contained SpreadsheetSetCellComment SpreadsheetSetCellFormula DirectoryList DirectoryRename EntityDelete
+syn keyword cfFunctionName contained EntityLoad EntityLoadByExample ORMGetSessionFactory ORMReload ObjectEquals SpreadsheetAddColumn
+syn keyword cfFunctionName contained SpreadsheetAddFreezePane SpreadsheetSetCellValue SpreadsheetSetActiveSheet SpreadsheetSetFooter
+syn keyword cfFunctionName contained SpreadsheetSetHeader SpreadsheetSetColumnWidth EntityLoadByPK EntityMerge EntityNew EntityReload
+syn keyword cfFunctionName contained EntitySave SpreadsheetAddImage SpreadsheetAddInfo SpreadsheetAddRow SpreadsheetAddRows
+syn keyword cfFunctionName contained SpreadsheetAddSplitPane SpreadsheetShiftColumns SpreadsheetShiftRows SpreadsheetSetRowHeight
+syn keyword cfFunctionName contained SpreadsheetWrite Trace FileDelete FileSeek FileWriteLine GetFunctionCalledName GetVFSMetaData IsIPv6
+syn keyword cfFunctionName contained IsNull SpreadsheetCreateSheet SpreadsheetDeleteColumn SpreadsheetDeleteColumns SpreadsheetDeleteRow
+syn keyword cfFunctionName contained SpreadsheetDeleteRows SpreadsheetFormatCell TransactionCommit TransactionRollback
+syn keyword cfFunctionName contained TransactionSetSavePoint ThreadTerminate ThreadJoin Throw Writedump Writelog
+
+" Deprecated or obsoleted tags and functions.
+syn keyword cfDeprecatedTag contained cfauthenticate cfimpersonate cfgraph cfgraphdata
+syn keyword cfDeprecatedTag contained cfservlet cfservletparam cftextinput
+syn keyword cfDeprecatedTag contained cfinternaladminsecurity cfnewinternaladminsecurity
+syn keyword cfDeprecatedFunction contained GetK2ServerDocCount GetK2ServerDocCountLimit GetTemplatePath
+syn keyword cfDeprecatedFunction contained IsK2ServerABroker IsK2ServerDocCountExceeded IsK2ServerOnline
+syn keyword cfDeprecatedFunction contained ParameterExists AuthenticatedContext AuthenticatedUser
+syn keyword cfDeprecatedFunction contained isAuthenticated isAuthorized isProtected
+
+" Add to the HTML clusters.
+syn cluster htmlTagNameCluster add=cfTagName,cfCustomTagName,cfDeprecatedTag
+syn cluster htmlArgCluster add=cfArg,cfHashRegion,cfScope
+syn cluster htmlPreproc add=cfHashRegion
+
+syn cluster cfExpressionCluster contains=cfFunctionName,cfScope,@cfOperatorCluster,cfScriptStringD,cfScriptStringS,cfScriptNumber,cfBool,cfComment
+
+" Evaluation; skip strings ( this helps with cases like nested IIf() )
+" containedin to add to the TOP of cfOutputRegion.
+syn region cfHashRegion start=+#+ skip=+"[^"]*"\|'[^']*'+ end=+#+ contained containedin=cfOutputRegion contains=@cfExpressionCluster,cfScriptParenError
+
+" Hashmarks are significant inside cfoutput tags.
+" cfoutput tags may be nested indefinitely.
+syn region cfOutputRegion matchgroup=NONE transparent start=+<cfoutput>+ end=+</cfoutput>+ contains=TOP
+
+" <cfset>, <cfif>, <cfelseif>, <cfreturn> are analogous to hashmarks (implicit
+" evaluation) and have 'var'
+syn region cfSetRegion start="<cfset\>" start="<cfreturn\>" start="<cfelseif\>" start="<cfif\>" end='>' keepend contains=@cfExpressionCluster,cfSetLHSRegion,cfSetTagEnd,cfScriptStatement
+syn region cfSetLHSRegion contained start="<cfreturn" start="<cfelseif" start="<cfif" start="<cfset" end="." keepend contains=cfTagName,htmlTag
+syn match cfSetTagEnd contained '>'
+
+" CF comments: similar to SGML comments, but can be nested.
+syn region cfComment start='<!---' end='--->' contains=cfCommentTodo,cfComment
+syn keyword cfCommentTodo contained TODO FIXME XXX TBD WTF
+
+" CFscript
+" TODO better support for new component/function def syntax
+" TODO better support for 'new'
+" TODO highlight metadata (@ ...) inside comments.
+syn match cfScriptLineComment contained "\/\/.*$" contains=cfCommentTodo
+syn region cfScriptComment contained start="/\*" end="\*/" contains=cfCommentTodo
+syn match cfScriptBraces contained "[{}]"
+syn keyword cfScriptStatement contained return var
+" in CF, quotes are escaped by doubling
+syn region cfScriptStringD contained start=+"+ skip=+\\\\\|""+ end=+"+ extend contains=@htmlPreproc,cfHashRegion
+syn region cfScriptStringS contained start=+'+ skip=+\\\\\|''+ end=+'+ extend contains=@htmlPreproc,cfHashRegion
+syn match cfScriptNumber contained "\<\d\+\>"
+syn keyword cfScriptConditional contained if else
+syn keyword cfScriptRepeat contained while for in
+syn keyword cfScriptBranch contained break switch case default try catch continue finally
+syn keyword cfScriptKeyword contained function
+" argumentCollection is a special argument to function calls
+syn keyword cfScriptSpecial contained argumentcollection
+" ColdFusion 9:
+syn keyword cfScriptStatement contained new import
+" CFscript equivalents of some tags
+syn keyword cfScriptKeyword contained abort component exit import include
+syn keyword cfScriptKeyword contained interface param pageencoding property rethrow thread transaction
+" function/component syntax
+syn keyword cfScriptSpecial contained required extends
+
+
+syn cluster cfScriptCluster contains=cfScriptParen,cfScriptLineComment,cfScriptComment,cfScriptStringD,cfScriptStringS,cfScriptFunction,cfScriptNumber,cfScriptRegexpString,cfScriptBoolean,cfScriptBraces,cfHashRegion,cfFunctionName,cfDeprecatedFunction,cfScope,@cfOperatorCluster,cfScriptConditional,cfScriptRepeat,cfScriptBranch,@cfExpressionCluster,cfScriptStatement,cfScriptSpecial,cfScriptKeyword
+
+" Errors caused by wrong parenthesis; skip strings
+syn region cfScriptParen contained transparent skip=+"[^"]*"\|'[^']*'+ start=+(+ end=+)+ contains=@cfScriptCluster
+syn match cfScrParenError contained +)+
+
+syn region cfscriptBlock matchgroup=NONE start="<cfscript>" end="<\/cfscript>"me=s-1 keepend contains=@cfScriptCluster,cfscriptTag,cfScrParenError
+syn region cfscriptTag contained start='<cfscript' end='>' keepend contains=cfTagName,htmlTag
+
+" CFML
+syn cluster cfmlCluster contains=cfComment,@htmlTagNameCluster,@htmlPreproc,cfSetRegion,cfscriptBlock,cfOutputRegion
+
+" cfquery = sql syntax
+if exists("b:current_syntax")
+ unlet b:current_syntax
+endif
+syn include @cfSql $VIMRUNTIME/syntax/sql.vim
+unlet b:current_syntax
+syn region cfqueryTag contained start=+<cfquery+ end=+>+ keepend contains=cfTagName,htmlTag
+syn region cfSqlregion start=+<cfquery\_[^>]*>+ keepend end=+</cfquery>+me=s-1 matchgroup=NONE contains=@cfSql,cfComment,@htmlTagNameCluster,cfqueryTag,cfHashRegion
+
+" Define the highlighting.
+command -nargs=+ CfHiLink hi def link <args>
+
+if exists("d_noinclude_html")
+ " The default html-style highlighting copied from html.vim.
+ CfHiLink htmlTag Function
+ CfHiLink htmlEndTag Identifier
+ CfHiLink htmlArg Type
+ CfHiLink htmlTagName htmlStatement
+ CfHiLink htmlValue String
+ CfHiLink htmlPreProc PreProc
+ CfHiLink htmlString String
+ CfHiLink htmlStatement Statement
+ CfHiLink htmlValue String
+ CfHiLink htmlTagError htmlError
+ CfHiLink htmlError Error
+endif
+
+CfHiLink cfTagName Statement
+CfHiLink cfCustomTagName Statement
+CfHiLink cfArg Type
+CfHiLink cfFunctionName Function
+CfHiLink cfHashRegion PreProc
+CfHiLink cfComment Comment
+CfHiLink cfCommentTodo Todo
+CfHiLink cfOperator Operator
+CfHiLink cfOperatorMatch Operator
+CfHiLink cfScope Title
+CfHiLink cfBool Constant
+
+CfHiLink cfscriptBlock Special
+CfHiLink cfscriptTag htmlTag
+CfHiLink cfSetRegion PreProc
+CfHiLink cfSetLHSRegion htmlTag
+CfHiLink cfSetTagEnd htmlTag
+
+CfHiLink cfScriptLineComment Comment
+CfHiLink cfScriptComment Comment
+CfHiLink cfScriptStringS String
+CfHiLink cfScriptStringD String
+CfHiLink cfScriptNumber cfScriptValue
+CfHiLink cfScriptConditional Conditional
+CfHiLink cfScriptRepeat Repeat
+CfHiLink cfScriptBranch Conditional
+CfHiLink cfScriptSpecial Type
+CfHiLink cfScriptStatement Statement
+CfHiLink cfScriptBraces Function
+CfHiLink cfScriptKeyword Function
+CfHiLink cfScriptError Error
+CfHiLink cfDeprecatedTag Error
+CfHiLink cfDeprecatedFunction Error
+CfHiLink cfScrParenError cfScriptError
+
+CfHiLink cfqueryTag htmlTag
+
+delcommand CfHiLink
+
+let b:current_syntax = "cf"
+
+" vim: nowrap sw=2 ts=8 noet