" DTML syntax file
" Language:			Zope's Dynamic Template Markup Language
" Maintainer:	    Jean Jordaan <jean@upfrontsystems.co.za> (njj)
" Last change:	    2001 Sep 02

" These are used with Claudio Fleiner's html.vim in the standard distribution.
"
" Still very hackish. The 'dtml attributes' and 'dtml methods' have been
" hacked out of the Zope Quick Reference in case someone finds something
" sensible to do with them. I certainly haven't.

" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
  syntax clear
elseif exists("b:current_syntax")
  finish
endif

" First load the HTML syntax
if version < 600
  source <sfile>:p:h/html.vim
else
  runtime! syntax/html.vim
endif

syn case match

" This doesn't have any effect.  Does it need to be moved to above/
" if !exists("main_syntax")
"   let main_syntax = 'dtml'
" endif

" dtml attributes
syn keyword dtmlAttribute ac_inherited_permissions access_debug_info contained
syn keyword dtmlAttribute acquiredRolesAreUsedBy all_meta_types assume_children AUTH_TYPE contained
syn keyword dtmlAttribute AUTHENTICATED_USER AUTHENTICATION_PATH BASE0 batch-end-index batch-size contained
syn keyword dtmlAttribute batch-start-index bobobase_modification_time boundary branches contained
syn keyword dtmlAttribute branches_expr capitalize cb_dataItems cb_dataValid cb_isCopyable contained
syn keyword dtmlAttribute cb_isMoveable changeClassId classDefinedAndInheritedPermissions contained
syn keyword dtmlAttribute classDefinedPermissions classInheritedPermissions collapse-all column contained
syn keyword dtmlAttribute connected connectionIsValid CONTENT_LENGTH CONTENT_TYPE cook cookies contained
syn keyword dtmlAttribute COPY count- createInObjectManager da_has_single_argument dav__allprop contained
syn keyword dtmlAttribute dav__init dav__propnames dav__propstat dav__validate default contained
syn keyword dtmlAttribute delClassAttr DELETE Destination DestinationURL digits discard contained
syn keyword dtmlAttribute disposition document_src e encode enter etc expand-all expr File contained
syn keyword dtmlAttribute filtered_manage_options filtered_meta_types first- fmt footer form contained
syn keyword dtmlAttribute GATEWAY_INTERFACE get_local_roles get_local_roles_for_userid contained
syn keyword dtmlAttribute get_request_var_or_attr get_size get_size get_valid_userids getAttribute contained
syn keyword dtmlAttribute getAttributeNode getAttributes getChildNodes getClassAttr getContentType contained
syn keyword dtmlAttribute getData getDocType getDocumentElement getElementsByTagName getFirstChild contained
syn keyword dtmlAttribute getImplementation getLastChild getLength getName getNextSibling contained
syn keyword dtmlAttribute getNodeName getNodeType getNodeValue getOwnerDocument getParentNode contained
syn keyword dtmlAttribute getPreviousSibling getProperty getPropertyType getSize getSize getSize contained
syn keyword dtmlAttribute get_size getTagName getUser getUserName getUserNames getUsers contained
syn keyword dtmlAttribute has_local_roles hasChildNodes hasProperty HEAD header hexdigits HTML contained
syn keyword dtmlAttribute html_quote HTMLFile id index_html index_objects indexes contained
syn keyword dtmlAttribute inheritedAttribute items last- leave leave_another leaves letters LOCK contained
syn keyword dtmlAttribute locked_in_version lower lowercase mailfrom mailhost mailhost_list mailto contained
syn keyword dtmlAttribute manage manage_ methods manage_access manage_acquiredPermissions contained
syn keyword dtmlAttribute manage_addConferaTopic manage_addDocument manage_addDTMLDocument contained
syn keyword dtmlAttribute manage_addDTMLMethod manage_addFile manage_addFolder manage_addImage contained
syn keyword dtmlAttribute manage_addLocalRoles manage_addMailHost manage_addPermission contained
syn keyword dtmlAttribute manage_addPrincipiaFactory manage_addProduct manage_addProperty contained
syn keyword dtmlAttribute manage_addUserFolder manage_addZClass manage_addZGadflyConnection contained
syn keyword dtmlAttribute manage_addZGadflyConnectionForm manage_advanced manage_afterAdd contained
syn keyword dtmlAttribute manage_afterClone manage_beforeDelete manage_changePermissions contained
syn keyword dtmlAttribute manage_changeProperties manage_clone manage_CopyContainerFirstItem contained
syn keyword dtmlAttribute manage_copyObjects manage_cutObjects manage_defined_roles contained
syn keyword dtmlAttribute manage_delLocalRoles manage_delObjects manage_delProperties contained
syn keyword dtmlAttribute manage_distribute manage_edit manage_editedDialog manage_editProperties contained
syn keyword dtmlAttribute manage_editRoles manage_exportObject manage_FTPget manage_FTPlist contained
syn keyword dtmlAttribute manage_FTPstat manage_get_product_readme__ manage_getPermissionMapping contained
syn keyword dtmlAttribute manage_haveProxy manage_help manage_importObject manage_listLocalRoles contained
syn keyword dtmlAttribute manage_options manage_pasteObjects manage_permission contained
syn keyword dtmlAttribute manage_propertiesForm manage_proxy manage_renameObject manage_role contained
syn keyword dtmlAttribute manage_setLocalRoles manage_setPermissionMapping contained
syn keyword dtmlAttribute manage_subclassableClassNames manage_test manage_testForm contained
syn keyword dtmlAttribute manage_undo_transactions manage_upload manage_users manage_workspace contained
syn keyword dtmlAttribute management_interface mapping math max- mean- median- meta_type min- contained
syn keyword dtmlAttribute MKCOL modified_in_version MOVE multiple name navigate_filter new_version contained
syn keyword dtmlAttribute newline_to_br next next-batches next-sequence next-sequence-end-index contained
syn keyword dtmlAttribute next-sequence-size next-sequence-start-index no manage_access None contained
syn keyword dtmlAttribute nonempty normalize nowrap null Object Manager objectIds objectItems contained
syn keyword dtmlAttribute objectMap objectValues octdigits only optional OPTIONS orphan overlap contained
syn keyword dtmlAttribute PARENTS PATH_INFO PATH_TRANSLATED permission_settings contained
syn keyword dtmlAttribute permissionMappingPossibleValues permissionsOfRole pi port contained
syn keyword dtmlAttribute possible_permissions previous previous-batches previous-sequence contained
syn keyword dtmlAttribute previous-sequence-end-index previous-sequence-size contained
syn keyword dtmlAttribute previous-sequence-start-index PrincipiaFind PrincipiaSearchSource contained
syn keyword dtmlAttribute propdict propertyIds propertyItems propertyLabel propertyMap propertyMap contained
syn keyword dtmlAttribute propertyValues PROPFIND PROPPATCH PUT query_day query_month QUERY_STRING contained
syn keyword dtmlAttribute query_year quoted_input quoted_report raise_standardErrorMessage random contained
syn keyword dtmlAttribute read read_raw REMOTE_ADDR REMOTE_HOST REMOTE_IDENT REMOTE_USER REQUEST contained
syn keyword dtmlAttribute REQUESTED_METHOD required RESPONSE reverse rolesOfPermission save schema contained
syn keyword dtmlAttribute SCRIPT_NAME sequence-end sequence-even sequence-index contained
syn keyword dtmlAttribute sequence-index-var- sequence-item sequence-key sequence-Letter contained
syn keyword dtmlAttribute sequence-letter sequence-number sequence-odd sequence-query contained
syn keyword dtmlAttribute sequence-roman sequence-Roman sequence-start sequence-step-end-index contained
syn keyword dtmlAttribute sequence-step-size sequence-step-start-index sequence-var- SERVER_NAME contained
syn keyword dtmlAttribute SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE setClassAttr setName single contained
syn keyword dtmlAttribute size skip_unauthorized smtphost sort spacify sql_quote SQLConnectionIDs contained
syn keyword dtmlAttribute standard-deviation- standard-deviation-n- standard_html_footer contained
syn keyword dtmlAttribute standard_html_header start String string subject SubTemplate superValues contained
syn keyword dtmlAttribute tabs_path_info tag test_url_ text_content this thousands_commas title contained
syn keyword dtmlAttribute title_and_id title_or_id total- tpURL tpValues TRACE translate tree-c contained
syn keyword dtmlAttribute tree-colspan tree-e tree-item-expanded tree-item-url tree-level contained
syn keyword dtmlAttribute tree-root-url tree-s tree-state type undoable_transactions UNLOCK contained
syn keyword dtmlAttribute update_data upper uppercase url url_quote URLn user_names contained
syn keyword dtmlAttribute userdefined_roles valid_property_id valid_roles validate_roles contained
syn keyword dtmlAttribute validClipData validRoles values variance- variance-n- view_image_or_file contained
syn keyword dtmlAttribute where whitespace whrandom xml_namespace zclass_candidate_view_actions contained
syn keyword dtmlAttribute ZClassBaseClassNames ziconImage ZopeFind ZQueryIds contained

syn keyword dtmlMethod abs absolute_url ac_inherited_permissions aCommon contained
syn keyword dtmlMethod aCommonZ acos acquiredRolesAreUsedBy aDay addPropertySheet aMonth AMPM contained
syn keyword dtmlMethod ampm AMPMMinutes appendChild appendData appendHeader asin atan atan2 contained
syn keyword dtmlMethod atof atoi betavariate capatilize capwords catalog_object ceil center contained
syn keyword dtmlMethod choice chr cloneNode COPY cos cosh count createInObjectManager contained
syn keyword dtmlMethod createSQLInput cunifvariate Date DateTime Day day dayOfYear dd default contained
syn keyword dtmlMethod DELETE deleteData delPropertySheet divmod document_id document_title dow contained
syn keyword dtmlMethod earliestTime enter equalTo exp expireCookie expovariate fabs fCommon contained
syn keyword dtmlMethod fCommonZ filtered_manage_options filtered_meta_types find float floor contained
syn keyword dtmlMethod fmod frexp gamma gauss get get_local_roles_for_userid get_size getattr contained
syn keyword dtmlMethod getAttribute getAttributeNode getClassAttr getDomains contained
syn keyword dtmlMethod getElementsByTagName getHeader getitem getNamedItem getobject contained
syn keyword dtmlMethod getObjectsInfo getpath getProperty getRoles getStatus getUser contained
syn keyword dtmlMethod getUserName greaterThan greaterThanEqualTo h_12 h_24 has_key contained
syn keyword dtmlMethod has_permission has_role hasattr hasFeature hash hasProperty HEAD hex contained
syn keyword dtmlMethod hour hypot index index_html inheritedAttribute insertBefore insertData contained
syn keyword dtmlMethod int isCurrentDay isCurrentHour isCurrentMinute isCurrentMonth contained
syn keyword dtmlMethod isCurrentYear isFuture isLeadYear isPast item join latestTime ldexp contained
syn keyword dtmlMethod leave leave_another len lessThan lessThanEqualTo ljust log log10 contained
syn keyword dtmlMethod lognormvariate lower lstrip maketrans manage manage_access contained
syn keyword dtmlMethod manage_acquiredPermissions manage_addColumn manage_addDocument contained
syn keyword dtmlMethod manage_addDTMLDocument manage_addDTMLMethod manage_addFile contained
syn keyword dtmlMethod manage_addFolder manage_addImage manage_addIndex manage_addLocalRoles contained
syn keyword dtmlMethod manage_addMailHost manage_addPermission manage_addPrincipiaFactory contained
syn keyword dtmlMethod manage_addProduct manage_addProperty manage_addPropertySheet contained
syn keyword dtmlMethod manage_addUserFolder manage_addZCatalog manage_addZClass contained
syn keyword dtmlMethod manage_addZGadflyConnection manage_addZGadflyConnectionForm contained
syn keyword dtmlMethod manage_advanced manage_catalogClear manage_catalogFoundItems contained
syn keyword dtmlMethod manage_catalogObject manage_catalogReindex manage_changePermissions contained
syn keyword dtmlMethod manage_changeProperties manage_clone manage_CopyContainerFirstItem contained
syn keyword dtmlMethod manage_copyObjects manage_createEditor manage_createView contained
syn keyword dtmlMethod manage_cutObjects manage_defined_roles manage_delColumns contained
syn keyword dtmlMethod manage_delIndexes manage_delLocalRoles manage_delObjects contained
syn keyword dtmlMethod manage_delProperties manage_Discard__draft__ manage_distribute contained
syn keyword dtmlMethod manage_edit manage_edit manage_editedDialog manage_editProperties contained
syn keyword dtmlMethod manage_editRoles manage_exportObject manage_importObject contained
syn keyword dtmlMethod manage_makeChanges manage_pasteObjects manage_permission contained
syn keyword dtmlMethod manage_propertiesForm manage_proxy manage_renameObject manage_role contained
syn keyword dtmlMethod manage_Save__draft__ manage_setLocalRoles manage_setPermissionMapping contained
syn keyword dtmlMethod manage_test manage_testForm manage_uncatalogObject contained
syn keyword dtmlMethod manage_undo_transactions manage_upload manage_users manage_workspace contained
syn keyword dtmlMethod mange_createWizard max min minute MKCOL mm modf month Month MOVE contained
syn keyword dtmlMethod namespace new_version nextObject normalvariate notEqualTo objectIds contained
syn keyword dtmlMethod objectItems objectValues oct OPTIONS ord paretovariate parts pCommon contained
syn keyword dtmlMethod pCommonZ pDay permissionsOfRole pMonth pow PreciseAMPM PreciseTime contained
syn keyword dtmlMethod previousObject propertyInfo propertyLabel PROPFIND PROPPATCH PUT quit contained
syn keyword dtmlMethod raise_standardErrorMessage randint random read read_raw redirect contained
syn keyword dtmlMethod removeAttribute removeAttributeNode removeChild replace replaceChild contained
syn keyword dtmlMethod replaceData rfc822 rfind rindex rjust rolesOfPermission round rstrip contained
syn keyword dtmlMethod save searchResults second seed set setAttribute setAttributeNode setBase contained
syn keyword dtmlMethod setCookie setHeader setStatus sin sinh split splitText sqrt str strip contained
syn keyword dtmlMethod substringData superValues swapcase tabs_path_info tan tanh Time contained
syn keyword dtmlMethod TimeMinutes timeTime timezone title title_and_id title_or_id toXML contained
syn keyword dtmlMethod toZone uncatalog_object undoable_transactions uniform uniqueValuesFor contained
syn keyword dtmlMethod update_data upper valid_property_id validate_roles vonmisesvariate contained
syn keyword dtmlMethod weibullvariate year yy zfill ZopeFind contained

" DTML tags
syn keyword dtmlTagName var if elif else unless in with let call raise try except tag comment tree sqlvar sqltest sqlgroup sendmail mime transparent contained

syn keyword dtmlEndTagName if unless in with let raise try tree sendmail transparent contained

" Own additions
syn keyword dtmlTODO    TODO FIXME		contained

syn region dtmlComment start=+<dtml-comment>+ end=+</dtml-comment>+ contains=dtmlTODO

" All dtmlTagNames are contained by dtmlIsTag.
syn match dtmlIsTag	    "dtml-[A-Za-z]\+"    contains=dtmlTagName

" 'var' tag entity syntax: &dtml-variableName;
"       - with attributes: &dtml.attribute1[.attribute2]...-variableName;
syn match dtmlSpecialChar "&dtml[.0-9A-Za-z_]\{-}-[0-9A-Za-z_.]\+;"

" Redefine to allow inclusion of DTML within HTML strings.
syn cluster htmlTop contains=@Spell,htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,javaScript,@htmlPreproc
syn region htmlLink start="<a\>[^>]*href\>" end="</a>"me=e-4 contains=@Spell,htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
syn region htmlHead start="<head\>" end="</head>"me=e-7 end="<body\>"me=e-5 end="<h[1-6]\>"me=e-3 contains=htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,htmlTitle,javaScript,cssStyle,@htmlPreproc
syn region htmlTitle start="<title\>" end="</title>"me=e-8 contains=htmlTag,htmlEndTag,dtmlSpecialChar,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
syn region  htmlString   contained start=+"+ end=+"+ contains=dtmlSpecialChar,htmlSpecialChar,javaScriptExpression,dtmlIsTag,dtmlAttribute,dtmlMethod,@htmlPreproc
syn match   htmlTagN     contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,dtmlIsTag,dtmlAttribute,dtmlMethod,@htmlTagNameCluster
syn match   htmlTagN     contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,dtmlIsTag,dtmlAttribute,dtmlMethod,@htmlTagNameCluster

" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_dtml_syntax_inits")
  if version < 508
    let did_dtml_syntax_inits = 1
    command -nargs=+ HiLink hi link <args>
  else
    command -nargs=+ HiLink hi def link <args>
  endif

  HiLink dtmlIsTag			PreProc
  HiLink dtmlAttribute		Identifier
  HiLink dtmlMethod			Function
  HiLink dtmlComment		Comment
  HiLink dtmlTODO			Todo
  HiLink dtmlSpecialChar    Special

  delcommand HiLink
endif

let b:current_syntax = "dtml"

" if main_syntax == 'dtml'
"   unlet main_syntax
" endif

" vim: ts=4
