Files
dotfiles/.vim/syntax/html.vim
Erik Cowley cbf161dc95 First commit
2011-10-02 01:55:41 -04:00

881 lines
136 KiB
VimL

" syntax file
" Language: HTML
" " Maintainer: Claudio Fleiner <claudio@fleiner.com>
" " URL: http://www.fleiner.com/vim/syntax/html.vim
" " Last Change: 2006 Jun 19
"
" " Please check :help html.vim for some comments and a description of the
" options
"
" " For version 5.x: Clear all syntax items
" " For version 6.x: Quit when a syntax file was already loaded
" if !exists("main_syntax")
" if version < 600
" syntax clear
" elseif exists("b:current_syntax")
" finish
" endif
" let main_syntax = 'html'
" endif
"
" " don't use standard HiLink, it will not work with included
" syntax files
" if version < 508
" command! -nargs=+ HtmlHiLink hi link <args>
" else
" command! -nargs=+ HtmlHiLink hi def link <args>
" endif
"
" syntax spell toplevel
"
" syn case ignore
"
" " mark illegal characters
" syn match htmlError "[<>&]"
"
"
" " tags
" syn region htmlString contained start=+"+ end=+"+
" contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
" syn region htmlString contained start=+'+ end=+'+
" contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
" syn match htmlValue contained "=[\t ]*[^'" \t>][^
" \t>]*"hs=s+1
" contains=javaScriptExpression,@htmlPreproc
" syn region htmlEndTag start=+</+
" end=+>+ contains=htmlTagN,htmlTagError
" syn region htmlTag start=+<[^/]+
" end=+>+
" contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster
" syn match htmlTagN contained
" +<\s*[-a-zA-Z0-9]\++hs=s+1
" contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
" syn match htmlTagN contained
" +</\s*[-a-zA-Z0-9]\++hs=s+2
" contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
" syn match htmlTagError contained "[^>]<"ms=s+1
"
"
" " tag names
" syn keyword htmlTagName contained address applet area a
" base basefont
" syn keyword htmlTagName contained big blockquote br
" caption center
" syn keyword htmlTagName contained cite code dd dfn dir
" div dl dt font
" syn keyword htmlTagName contained form hr html img
" syn keyword htmlTagName contained input isindex kbd li
" link map menu
" syn keyword htmlTagName contained meta ol option param
" pre p samp span
" syn keyword htmlTagName contained select small strike
" sub sup
" syn keyword htmlTagName contained table td textarea th
" tr tt ul var xmp
" syn match htmlTagName contained
" "\<\(b\|i\|u\|h[1-6]\|em\|strong\|head\|body\|title\)\>"
"
" " new html 4.0 tags
" syn keyword htmlTagName contained abbr acronym bdo
" button col label
" syn keyword htmlTagName contained colgroup del fieldset
" iframe ins legend
" syn keyword htmlTagName contained object optgroup q s
" tbody tfoot thead
"
" " legal arg names
" syn keyword htmlArg contained action
" syn keyword htmlArg contained align alink alt archive
" background bgcolor
" syn keyword htmlArg contained border bordercolor
" cellpadding
" syn keyword htmlArg contained cellspacing checked class
" clear code codebase color
" syn keyword htmlArg contained cols colspan content
" coords enctype face
" syn keyword htmlArg contained gutter height hspace id
" syn keyword htmlArg contained link lowsrc marginheight
" syn keyword htmlArg contained marginwidth maxlength
" method name prompt
" syn keyword htmlArg contained rel rev rows rowspan
" scrolling selected shape
" syn keyword htmlArg contained size src start target text
" type url
" syn keyword htmlArg contained usemap ismap valign value
" vlink vspace width wrap
" syn match htmlArg contained
" "\<\(http-equiv\|href\|title\)="me=e-1
"
" " Netscape extensions
" syn keyword htmlTagName contained frame noframes
" frameset nobr blink
" syn keyword htmlTagName contained layer ilayer nolayer
" spacer
" syn keyword htmlArg contained frameborder noresize
" pagex pagey above below
" syn keyword htmlArg contained left top visibility
" clip id noshade
" syn match htmlArg contained "\<z-index\>"
"
" " Microsoft extensions
" syn keyword htmlTagName contained marquee
"
" " html 4.0 arg names
" syn match htmlArg contained
" "\<\(accept-charset\|label\)\>"
" syn keyword htmlArg contained abbr accept accesskey axis
" char charoff charset
" syn keyword htmlArg contained cite classid codetype
" compact data datetime
" syn keyword htmlArg contained declare defer dir disabled
" for frame
" syn keyword htmlArg contained headers hreflang lang
" language longdesc
" syn keyword htmlArg contained multiple nohref nowrap
" object profile readonly
" syn keyword htmlArg contained rules scheme scope span
" standby style
" syn keyword htmlArg contained summary tabindex valuetype
" version
"
" " special characters
" syn match htmlSpecialChar "&#\=[0-9A-Za-z]\{1,8};"
"
" " Comments (the real ones or the old netscape ones)
" if exists("html_wrong_comments")
" syn region htmlComment start=+<!--+
" end=+--\s*>+
" else
" syn region htmlComment start=+<!+
" end=+>+ contains=htmlCommentPart,htmlCommentError
" syn match htmlCommentError contained "[^><!]"
" syn region htmlCommentPart contained start=+--+
" end=+--\s*+ contains=@htmlPreProc
" endif
" syn region htmlComment
" start=+<!DOCTYPE+ keepend end=+>+
"
" " server-parsed commands
" syn region htmlPreProc start=+<!--#+ end=+-->+
" contains=htmlPreStmt,htmlPreError,htmlPreAttr
" syn match htmlPreStmt contained
" "<!--#\(config\|echo\|exec\|fsize\|flastmod\|include\|printenv\|set\|if\|elif\|else\|endif\|geoguide\)\>"
" syn match htmlPreError contained
" "<!--#\S*"ms=s+4
" syn match htmlPreAttr contained
" "\w\+=[^"]\S\+"
" contains=htmlPreProcAttrError,htmlPreProcAttrName
" syn region htmlPreAttr contained
" start=+\w\+="+ skip=+\\\\\|\\"+ end=+"+
" contains=htmlPreProcAttrName keepend
" syn match htmlPreProcAttrError contained
" "\w\+="he=e-1
" syn match htmlPreProcAttrName contained
" "\(expr\|errmsg\|sizefmt\|timefmt\|var\|cgi\|cmd\|file\|virtual\|value\)="he=e-1
"
" if !exists("html_no_rendering")
" " rendering
" syn cluster htmlTop
" contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,javaScript,@htmlPreproc
"
" syn region htmlBold start="<b\>"
" end="</b>"me=e-4
" contains=@htmlTop,htmlBoldUnderline,htmlBoldItalic
" syn region htmlBold
" start="<strong\>"
" end="</strong>"me=e-9
" contains=@htmlTop,htmlBoldUnderline,htmlBoldItalic
" syn region htmlBoldUnderline
" contained start="<u\>"
" end="</u>"me=e-4
" contains=@htmlTop,htmlBoldUnderlineItalic
" syn region htmlBoldItalic
" contained start="<i\>"
" end="</i>"me=e-4
" contains=@htmlTop,htmlBoldItalicUnderline
" syn region htmlBoldItalic
" contained start="<em\>"
" end="</em>"me=e-5
" contains=@htmlTop,htmlBoldItalicUnderline
" syn region
" htmlBoldUnderlineItalic
" contained start="<i\>"
" end="</i>"me=e-4
" contains=@htmlTop
" syn region
" htmlBoldUnderlineItalic
" contained start="<em\>"
" end="</em>"me=e-5
" contains=@htmlTop
" syn region
" htmlBoldItalicUnderline
" contained start="<u\>"
" end="</u>"me=e-4
" contains=@htmlTop,htmlBoldUnderlineItalic
"
" syn region
" htmlUnderline
" start="<u\>"
" end="</u>"me=e-4
" contains=@htmlTop,htmlUnderlineBold,htmlUnderlineItalic
" syn region
" htmlUnderlineBold
" contained
" start="<b\>"
" end="</b>"me=e-4
" contains=@htmlTop,htmlUnderlineBoldItalic
" syn region
" htmlUnderlineBold
" contained
" start="<strong\>"
" end="</strong>"me=e-9
" contains=@htmlTop,htmlUnderlineBoldItalic
" syn region
" htmlUnderlineItalic
" contained
" start="<i\>"
" end="</i>"me=e-4
" contains=@htmlTop,htmlUnderlineItalicBold
" syn region
" htmlUnderlineItalic
" contained
" start="<em\>"
" end="</em>"me=e-5
" contains=@htmlTop,htmlUnderlineItalicBold
" syn region
" htmlUnderlineItalicBold
" contained
" start="<b\>"
" end="</b>"me=e-4
" contains=@htmlTop
" syn region
" htmlUnderlineItalicBold
" contained
" start="<strong\>"
" end="</strong>"me=e-9
" contains=@htmlTop
" syn
" region
" htmlUnderlineBoldItalic
" contained
" start="<i\>"
" end="</i>"me=e-4
" contains=@htmlTop
" syn
" region
" htmlUnderlineBoldItalic
" contained
" start="<em\>"
" end="</em>"me=e-5
" contains=@htmlTop
"
" syn
" region
" htmlItalic
" start="<i\>"
" end="</i>"me=e-4
" contains=@htmlTop,htmlItalicBold,htmlItalicUnderline
" syn
" region
" htmlItalic
" start="<em\>"
" end="</em>"me=e-5
" contains=@htmlTop
" syn
" region
" htmlItalicBold
" contained
" start="<b\>"
" end="</b>"me=e-4
" contains=@htmlTop,htmlItalicBoldUnderline
" syn
" region
" htmlItalicBold
" contained
" start="<strong\>"
" end="</strong>"me=e-9
" contains=@htmlTop,htmlItalicBoldUnderline
" syn
" region
" htmlItalicBoldUnderline
" contained
" start="<u\>"
" end="</u>"me=e-4
" contains=@htmlTop
" syn
" region
" htmlItalicUnderline
" contained
" start="<u\>"
" end="</u>"me=e-4
" contains=@htmlTop,htmlItalicUnderlineBold
" syn
" region
" htmlItalicUnderlineBold
" contained
" start="<b\>"
" end="</b>"me=e-4
" contains=@htmlTop
" syn
" region
" htmlItalicUnderlineBold
" contained
" start="<strong\>"
" end="</strong>"me=e-9
" contains=@htmlTop
"
" syn
" region
" htmlLink
" start="<a\>\_[^>]*\<href\>"
" end="</a>"me=e-4
" contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
" syn
" region
" htmlH1
" start="<h1\>"
" end="</h1>"me=e-5
" contains=@htmlTop
" syn
" region
" htmlH2
" start="<h2\>"
" end="</h2>"me=e-5
" contains=@htmlTop
" syn
" region
" htmlH3
" start="<h3\>"
" end="</h3>"me=e-5
" contains=@htmlTop
" syn
" region
" htmlH4
" start="<h4\>"
" end="</h4>"me=e-5
" contains=@htmlTop
" syn
" region
" htmlH5
" start="<h5\>"
" end="</h5>"me=e-5
" contains=@htmlTop
" syn
" region
" htmlH6
" start="<h6\>"
" end="</h6>"me=e-5
" contains=@htmlTop
" 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,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,htmlTitle,javaScript,cssStyle,@htmlPreproc
" syn
" region
" htmlTitle
" start="<title\>"
" end="</title>"me=e-8
" contains=htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
" endif
"
" syn
" keyword
" htmlTagName
" contained
" noscript
" syn
" keyword
" htmlSpecialTagName
" contained
" script
" style
" if
" main_syntax
" !=
" 'java'
" ||
" exists("java_javascript")
" "
" JAVA
" SCRIPT
" syn
" include
" @htmlJavaScript
" syntax/javascript.vim
" unlet
" b:current_syntax
" syn
" region
" javaScript
" start=+<script[^>]*>+
" keepend
" end=+</script>+me=s-1
" contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
" syn
" region
" htmlScriptTag
" contained
" start=+<script+
" end=+>+
" contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent
" HtmlHiLink
" htmlScriptTag
" htmlTag
"
" "
" html
" events
" (i.e.
" arguments
" that
" include
" javascript
" commands)
" if
" exists("html_extended_events")
" syn
" region
" htmlEvent
" contained
" start=+\<on\a\+\s*=[\t
" ]*'+
" end=+'+
" contains=htmlEventSQ
" syn
" region
" htmlEvent
" contained
" start=+\<on\a\+\s*=[\t
" ]*"+
" end=+"+
" contains=htmlEventDQ
" else
" syn
" region
" htmlEvent
" contained
" start=+\<on\a\+\s*=[\t
" ]*'+
" end=+'+
" keepend
" contains=htmlEventSQ
" syn
" region
" htmlEvent
" contained
" start=+\<on\a\+\s*=[\t
" ]*"+
" end=+"+
" keepend
" contains=htmlEventDQ
" endif
" syn
" region
" htmlEventSQ
" contained
" start=+'+ms=s+1
" end=+'+me=s-1
" contains=@htmlJavaScript
" syn
" region
" htmlEventDQ
" contained
" start=+"+ms=s+1
" end=+"+me=s-1
" contains=@htmlJavaScript
" HtmlHiLink
" htmlEventSQ
" htmlEvent
" HtmlHiLink
" htmlEventDQ
" htmlEvent
"
" "
" a
" javascript
" expression
" is
" used
" as
" an
" arg
" value
" syn
" region
" javaScriptExpression
" contained
" start=+&{+
" keepend
" end=+};+
" contains=@htmlJavaScript,@htmlPreproc
" endif
"
" if
" main_syntax
" !=
" 'java'
" ||
" exists("java_vb")
" "
" VB
" SCRIPT
" syn
" include
" @htmlVbScript
" syntax/vb.vim
" unlet
" b:current_syntax
" syn
" region
" javaScript
" start=+<script
" [^>]*language
" *=[^>]*vbscript[^>]*>+
" keepend
" end=+</script>+me=s-1
" contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
" endif
"
" syn
" cluster
" htmlJavaScript
" add=@htmlPreproc
"
" if
" main_syntax
" !=
" 'java'
" ||
" exists("java_css")
" "
" embedded
" style
" sheets
" syn
" keyword
" htmlArg
" contained
" media
" syn
" include
" @htmlCss
" syntax/css.vim
" unlet
" b:current_syntax
" syn
" region
" cssStyle
" start=+<style+
" keepend
" end=+</style>+
" contains=@htmlCss,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc
" syn
" match
" htmlCssStyleComment
" contained
" "\(<!--\|-->\)"
" syn
" region
" htmlCssDefinition
" matchgroup=htmlArg
" start='style="'
" keepend
" matchgroup=htmlString
" end='"'
" contains=css.*Attr,css.*Prop,cssComment,cssLength,cssColor,cssURL,cssImportant,cssError,cssString,@htmlPreproc
" HtmlHiLink
" htmlStyleArg
" htmlString
" endif
"
" if
" main_syntax
" ==
" "html"
" "
" synchronizing
" (does
" not
" always
" work
" if
" a
" comment
" includes
" legal
" "
" html
" tags,
" but
" doing
" it
" right
" would
" mean
" to
" always
" start
" "
" at
" the
" first
" line,
" which
" is
" too
" slow)
" syn
" sync
" match
" htmlHighlight
" groupthere
" NONE
" "<[/a-zA-Z]"
" syn
" sync
" match
" htmlHighlight
" groupthere
" javaScript
" "<script"
" syn
" sync
" match
" htmlHighlightSkip
" "^.*['\"].*$"
" syn
" sync
" minlines=10
" endif
"
" "
" The
" default
" highlighting.
" if
" version
" >=
" 508
" ||
" !exists("did_html_syn_inits")
" if
" version
" <
" 508
" let
" did_html_syn_inits
" =
" 1
" endif
" HtmlHiLink
" htmlTag
" Function
" HtmlHiLink
" htmlEndTag
" Identifier
" HtmlHiLink
" htmlArg
" Type
" HtmlHiLink
" htmlTagName
" htmlStatement
" HtmlHiLink
" htmlSpecialTagName
" Exception
" HtmlHiLink
" htmlValue
" String
" HtmlHiLink
" htmlSpecialChar
" Special
"
" if
" !exists("html_no_rendering")
" HtmlHiLink
" htmlH1
" Title
" HtmlHiLink
" htmlH2
" htmlH1
" HtmlHiLink
" htmlH3
" htmlH2
" HtmlHiLink
" htmlH4
" htmlH3
" HtmlHiLink
" htmlH5
" htmlH4
" HtmlHiLink
" htmlH6
" htmlH5
" HtmlHiLink
" htmlHead
" PreProc
" HtmlHiLink
" htmlTitle
" Title
" HtmlHiLink
" htmlBoldItalicUnderline
" htmlBoldUnderlineItalic
" HtmlHiLink
" htmlUnderlineBold
" htmlBoldUnderline
" HtmlHiLink
" htmlUnderlineItalicBold
" htmlBoldUnderlineItalic
" HtmlHiLink
" htmlUnderlineBoldItalic
" htmlBoldUnderlineItalic
" HtmlHiLink
" htmlItalicUnderline
" htmlUnderlineItalic
" HtmlHiLink
" htmlItalicBold
" htmlBoldItalic
" HtmlHiLink
" htmlItalicBoldUnderline
" htmlBoldUnderlineItalic
" HtmlHiLink
" htmlItalicUnderlineBold
" htmlBoldUnderlineItalic
" HtmlHiLink
" htmlLink
" Underlined
" if
" !exists("html_my_rendering")
" hi
" def
" htmlBold
" term=bold
" cterm=bold
" gui=bold
" hi
" def
" htmlBoldUnderline
" term=bold,underline
" cterm=bold,underline
" gui=bold,underline
" hi
" def
" htmlBoldItalic
" term=bold,italic
" cterm=bold,italic
" gui=bold,italic
" hi
" def
" htmlBoldUnderlineItalic
" term=bold,italic,underline
" cterm=bold,italic,underline
" gui=bold,italic,underline
" hi
" def
" htmlUnderline
" term=underline
" cterm=underline
" gui=underline
" hi
" def
" htmlUnderlineItalic
" term=italic,underline
" cterm=italic,underline
" gui=italic,underline
" hi
" def
" htmlItalic
" term=italic
" cterm=italic
" gui=italic
" endif
" endif
"
" HtmlHiLink
" htmlPreStmt
" PreProc
" HtmlHiLink
" htmlPreError
" Error
" HtmlHiLink
" htmlPreProc
" PreProc
" HtmlHiLink
" htmlPreAttr
" String
" HtmlHiLink
" htmlPreProcAttrName
" PreProc
" HtmlHiLink
" htmlPreProcAttrError
" Error
" HtmlHiLink
" htmlSpecial
" Special
" HtmlHiLink
" htmlSpecialChar
" Special
" HtmlHiLink
" htmlString
" String
" HtmlHiLink
" htmlStatement
" Statement
" HtmlHiLink
" htmlComment
" Comment
" HtmlHiLink
" htmlCommentPart
" Comment
" HtmlHiLink
" htmlValue
" String
" HtmlHiLink
" htmlCommentError
" htmlError
" HtmlHiLink
" htmlTagError
" htmlError
" HtmlHiLink
" htmlEvent
" javaScript
" HtmlHiLink
" htmlError
" Error
"
" HtmlHiLink
" javaScript
" Special
" HtmlHiLink
" javaScriptExpression
" javaScript
" HtmlHiLink
" htmlCssStyleComment
" Comment
" HtmlHiLink
" htmlCssDefinition
" Special
" endif
"
" delcommand
" HtmlHiLink
"
" let
" b:current_syntax
" =
" "html"
"
" if
" main_syntax
" ==
" 'html'
" unlet
" main_syntax
" endif
"
" "
" vim:
" ts=8