xref: /vim-8.2.3635/runtime/syntax/html.vim (revision bc2eada5)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:             HTML
3*bc2eada5SBram Moolenaar" Maintainer:           Jorge Maldonado Ventura <[email protected]>
4*bc2eada5SBram Moolenaar" Previous Maintainer:  Claudio Fleiner <[email protected]>
5*bc2eada5SBram Moolenaar" Last Change:          2016 Dec 29
6*bc2eada5SBram Moolenaar"                       included patch from Jorge Maldonado Ventura
7071d4279SBram Moolenaar
8071d4279SBram Moolenaar" Please check :help html.vim for some comments and a description of the options
9071d4279SBram Moolenaar
1089bcfda6SBram Moolenaar" quit when a syntax file was already loaded
11071d4279SBram Moolenaarif !exists("main_syntax")
1289bcfda6SBram Moolenaar  if exists("b:current_syntax")
13071d4279SBram Moolenaar    finish
14071d4279SBram Moolenaar  endif
15071d4279SBram Moolenaar  let main_syntax = 'html'
16071d4279SBram Moolenaarendif
17071d4279SBram Moolenaar
180c5fa7d7SBram Moolenaarlet s:cpo_save = &cpo
190c5fa7d7SBram Moolenaarset cpo&vim
200c5fa7d7SBram Moolenaar
21c81e5e79SBram Moolenaarsyntax spell toplevel
22071d4279SBram Moolenaar
23071d4279SBram Moolenaarsyn case ignore
24071d4279SBram Moolenaar
25071d4279SBram Moolenaar" mark illegal characters
26071d4279SBram Moolenaarsyn match htmlError "[<>&]"
27071d4279SBram Moolenaar
28071d4279SBram Moolenaar
29071d4279SBram Moolenaar" tags
30071d4279SBram Moolenaarsyn region  htmlString   contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
31071d4279SBram Moolenaarsyn region  htmlString   contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
32071d4279SBram Moolenaarsyn match   htmlValue    contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1   contains=javaScriptExpression,@htmlPreproc
33ce0842a6SBram Moolenaarsyn region  htmlEndTag             start=+</+      end=+>+ contains=htmlTagN,htmlTagError
340c5fa7d7SBram Moolenaarsyn region  htmlTag                start=+<[^/]+   end=+>+ fold contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster
35071d4279SBram Moolenaarsyn match   htmlTagN     contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
36071d4279SBram Moolenaarsyn match   htmlTagN     contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
37071d4279SBram Moolenaarsyn match   htmlTagError contained "[^>]<"ms=s+1
38071d4279SBram Moolenaar
39071d4279SBram Moolenaar
40071d4279SBram Moolenaar" tag names
41071d4279SBram Moolenaarsyn keyword htmlTagName contained address applet area a base basefont
42071d4279SBram Moolenaarsyn keyword htmlTagName contained big blockquote br caption center
43071d4279SBram Moolenaarsyn keyword htmlTagName contained cite code dd dfn dir div dl dt font
44071d4279SBram Moolenaarsyn keyword htmlTagName contained form hr html img
45071d4279SBram Moolenaarsyn keyword htmlTagName contained input isindex kbd li link map menu
46071d4279SBram Moolenaarsyn keyword htmlTagName contained meta ol option param pre p samp span
47071d4279SBram Moolenaarsyn keyword htmlTagName contained select small strike sub sup
48071d4279SBram Moolenaarsyn keyword htmlTagName contained table td textarea th tr tt ul var xmp
49071d4279SBram Moolenaarsyn match htmlTagName contained "\<\(b\|i\|u\|h[1-6]\|em\|strong\|head\|body\|title\)\>"
50071d4279SBram Moolenaar
51071d4279SBram Moolenaar" new html 4.0 tags
52071d4279SBram Moolenaarsyn keyword htmlTagName contained abbr acronym bdo button col label
53071d4279SBram Moolenaarsyn keyword htmlTagName contained colgroup del fieldset iframe ins legend
54071d4279SBram Moolenaarsyn keyword htmlTagName contained object optgroup q s tbody tfoot thead
55071d4279SBram Moolenaar
56*bc2eada5SBram Moolenaar" new html 5 tags
57*bc2eada5SBram Moolenaarsyn keyword htmlTagName contained article aside audio bdi canvas datalist
58*bc2eada5SBram Moolenaarsyn keyword htmlTagName contained details embed figcaption figure
59*bc2eada5SBram Moolenaarsyn keyword htmlTagName contained footer header hgroup main mark
60*bc2eada5SBram Moolenaarsyn keyword htmlTagName contained menuitem meter nav output picture
61*bc2eada5SBram Moolenaarsyn keyword htmlTagName contained progress rb rp rt rtc ruby section
62*bc2eada5SBram Moolenaarsyn keyword htmlTagName contained slot source template time track video wbr
63*bc2eada5SBram Moolenaar
64071d4279SBram Moolenaar" legal arg names
65071d4279SBram Moolenaarsyn keyword htmlArg contained action
66071d4279SBram Moolenaarsyn keyword htmlArg contained align alink alt archive background bgcolor
67071d4279SBram Moolenaarsyn keyword htmlArg contained border bordercolor cellpadding
68071d4279SBram Moolenaarsyn keyword htmlArg contained cellspacing checked class clear code codebase color
69071d4279SBram Moolenaarsyn keyword htmlArg contained cols colspan content coords enctype face
70071d4279SBram Moolenaarsyn keyword htmlArg contained gutter height hspace id
71071d4279SBram Moolenaarsyn keyword htmlArg contained link lowsrc marginheight
72071d4279SBram Moolenaarsyn keyword htmlArg contained marginwidth maxlength method name prompt
73071d4279SBram Moolenaarsyn keyword htmlArg contained rel rev rows rowspan scrolling selected shape
74071d4279SBram Moolenaarsyn keyword htmlArg contained size src start target text type url
75071d4279SBram Moolenaarsyn keyword htmlArg contained usemap ismap valign value vlink vspace width wrap
76071d4279SBram Moolenaarsyn match   htmlArg contained "\<\(http-equiv\|href\|title\)="me=e-1
77071d4279SBram Moolenaar
78071d4279SBram Moolenaar" Netscape extensions
79071d4279SBram Moolenaarsyn keyword htmlTagName contained frame noframes frameset nobr blink
80071d4279SBram Moolenaarsyn keyword htmlTagName contained layer ilayer nolayer spacer
81071d4279SBram Moolenaarsyn keyword htmlArg     contained frameborder noresize pagex pagey above below
82071d4279SBram Moolenaarsyn keyword htmlArg     contained left top visibility clip id noshade
83071d4279SBram Moolenaarsyn match   htmlArg     contained "\<z-index\>"
84071d4279SBram Moolenaar
85071d4279SBram Moolenaar" Microsoft extensions
86071d4279SBram Moolenaarsyn keyword htmlTagName contained marquee
87071d4279SBram Moolenaar
88071d4279SBram Moolenaar" html 4.0 arg names
89071d4279SBram Moolenaarsyn match   htmlArg contained "\<\(accept-charset\|label\)\>"
90071d4279SBram Moolenaarsyn keyword htmlArg contained abbr accept accesskey axis char charoff charset
91071d4279SBram Moolenaarsyn keyword htmlArg contained cite classid codetype compact data datetime
92071d4279SBram Moolenaarsyn keyword htmlArg contained declare defer dir disabled for frame
93071d4279SBram Moolenaarsyn keyword htmlArg contained headers hreflang lang language longdesc
94071d4279SBram Moolenaarsyn keyword htmlArg contained multiple nohref nowrap object profile readonly
95071d4279SBram Moolenaarsyn keyword htmlArg contained rules scheme scope span standby style
96071d4279SBram Moolenaarsyn keyword htmlArg contained summary tabindex valuetype version
97071d4279SBram Moolenaar
98071d4279SBram Moolenaar" special characters
99071d4279SBram Moolenaarsyn match htmlSpecialChar "&#\=[0-9A-Za-z]\{1,8};"
100071d4279SBram Moolenaar
101071d4279SBram Moolenaar" Comments (the real ones or the old netscape ones)
102071d4279SBram Moolenaarif exists("html_wrong_comments")
1030c5fa7d7SBram Moolenaar  syn region htmlComment                start=+<!--+    end=+--\s*>+ contains=@Spell
104071d4279SBram Moolenaarelse
1050c5fa7d7SBram Moolenaar  syn region htmlComment                start=+<!+      end=+>+   contains=htmlCommentPart,htmlCommentError,@Spell
106071d4279SBram Moolenaar  syn match  htmlCommentError contained "[^><!]"
1070c5fa7d7SBram Moolenaar  syn region htmlCommentPart  contained start=+--+      end=+--\s*+  contains=@htmlPreProc,@Spell
108071d4279SBram Moolenaarendif
109071d4279SBram Moolenaarsyn region htmlComment                  start=+<!DOCTYPE+ keepend end=+>+
110071d4279SBram Moolenaar
111071d4279SBram Moolenaar" server-parsed commands
112071d4279SBram Moolenaarsyn region htmlPreProc start=+<!--#+ end=+-->+ contains=htmlPreStmt,htmlPreError,htmlPreAttr
113071d4279SBram Moolenaarsyn match htmlPreStmt contained "<!--#\(config\|echo\|exec\|fsize\|flastmod\|include\|printenv\|set\|if\|elif\|else\|endif\|geoguide\)\>"
114071d4279SBram Moolenaarsyn match htmlPreError contained "<!--#\S*"ms=s+4
115071d4279SBram Moolenaarsyn match htmlPreAttr contained "\w\+=[^"]\S\+" contains=htmlPreProcAttrError,htmlPreProcAttrName
116071d4279SBram Moolenaarsyn region htmlPreAttr contained start=+\w\+="+ skip=+\\\\\|\\"+ end=+"+ contains=htmlPreProcAttrName keepend
117071d4279SBram Moolenaarsyn match htmlPreProcAttrError contained "\w\+="he=e-1
118071d4279SBram Moolenaarsyn match htmlPreProcAttrName contained "\(expr\|errmsg\|sizefmt\|timefmt\|var\|cgi\|cmd\|file\|virtual\|value\)="he=e-1
119071d4279SBram Moolenaar
120071d4279SBram Moolenaarif !exists("html_no_rendering")
121071d4279SBram Moolenaar  " rendering
122ce0842a6SBram Moolenaar  syn cluster htmlTop contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLink,javaScript,@htmlPreproc
123071d4279SBram Moolenaar
124071d4279SBram Moolenaar  syn region htmlBold start="<b\>" end="</b>"me=e-4 contains=@htmlTop,htmlBoldUnderline,htmlBoldItalic
125071d4279SBram Moolenaar  syn region htmlBold start="<strong\>" end="</strong>"me=e-9 contains=@htmlTop,htmlBoldUnderline,htmlBoldItalic
126071d4279SBram Moolenaar  syn region htmlBoldUnderline contained start="<u\>" end="</u>"me=e-4 contains=@htmlTop,htmlBoldUnderlineItalic
127071d4279SBram Moolenaar  syn region htmlBoldItalic contained start="<i\>" end="</i>"me=e-4 contains=@htmlTop,htmlBoldItalicUnderline
128071d4279SBram Moolenaar  syn region htmlBoldItalic contained start="<em\>" end="</em>"me=e-5 contains=@htmlTop,htmlBoldItalicUnderline
129071d4279SBram Moolenaar  syn region htmlBoldUnderlineItalic contained start="<i\>" end="</i>"me=e-4 contains=@htmlTop
130071d4279SBram Moolenaar  syn region htmlBoldUnderlineItalic contained start="<em\>" end="</em>"me=e-5 contains=@htmlTop
131071d4279SBram Moolenaar  syn region htmlBoldItalicUnderline contained start="<u\>" end="</u>"me=e-4 contains=@htmlTop,htmlBoldUnderlineItalic
132071d4279SBram Moolenaar
133071d4279SBram Moolenaar  syn region htmlUnderline start="<u\>" end="</u>"me=e-4 contains=@htmlTop,htmlUnderlineBold,htmlUnderlineItalic
134071d4279SBram Moolenaar  syn region htmlUnderlineBold contained start="<b\>" end="</b>"me=e-4 contains=@htmlTop,htmlUnderlineBoldItalic
135071d4279SBram Moolenaar  syn region htmlUnderlineBold contained start="<strong\>" end="</strong>"me=e-9 contains=@htmlTop,htmlUnderlineBoldItalic
136071d4279SBram Moolenaar  syn region htmlUnderlineItalic contained start="<i\>" end="</i>"me=e-4 contains=@htmlTop,htmlUnderlineItalicBold
137071d4279SBram Moolenaar  syn region htmlUnderlineItalic contained start="<em\>" end="</em>"me=e-5 contains=@htmlTop,htmlUnderlineItalicBold
138071d4279SBram Moolenaar  syn region htmlUnderlineItalicBold contained start="<b\>" end="</b>"me=e-4 contains=@htmlTop
139071d4279SBram Moolenaar  syn region htmlUnderlineItalicBold contained start="<strong\>" end="</strong>"me=e-9 contains=@htmlTop
140071d4279SBram Moolenaar  syn region htmlUnderlineBoldItalic contained start="<i\>" end="</i>"me=e-4 contains=@htmlTop
141071d4279SBram Moolenaar  syn region htmlUnderlineBoldItalic contained start="<em\>" end="</em>"me=e-5 contains=@htmlTop
142071d4279SBram Moolenaar
143071d4279SBram Moolenaar  syn region htmlItalic start="<i\>" end="</i>"me=e-4 contains=@htmlTop,htmlItalicBold,htmlItalicUnderline
144071d4279SBram Moolenaar  syn region htmlItalic start="<em\>" end="</em>"me=e-5 contains=@htmlTop
145071d4279SBram Moolenaar  syn region htmlItalicBold contained start="<b\>" end="</b>"me=e-4 contains=@htmlTop,htmlItalicBoldUnderline
146071d4279SBram Moolenaar  syn region htmlItalicBold contained start="<strong\>" end="</strong>"me=e-9 contains=@htmlTop,htmlItalicBoldUnderline
147071d4279SBram Moolenaar  syn region htmlItalicBoldUnderline contained start="<u\>" end="</u>"me=e-4 contains=@htmlTop
148071d4279SBram Moolenaar  syn region htmlItalicUnderline contained start="<u\>" end="</u>"me=e-4 contains=@htmlTop,htmlItalicUnderlineBold
149071d4279SBram Moolenaar  syn region htmlItalicUnderlineBold contained start="<b\>" end="</b>"me=e-4 contains=@htmlTop
150071d4279SBram Moolenaar  syn region htmlItalicUnderlineBold contained start="<strong\>" end="</strong>"me=e-9 contains=@htmlTop
151071d4279SBram Moolenaar
1520c5fa7d7SBram Moolenaar  syn match htmlLeadingSpace "^\s\+" contained
1530c5fa7d7SBram Moolenaar  syn region htmlLink start="<a\>\_[^>]*\<href\>" end="</a>"me=e-4 contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLeadingSpace,javaScript,@htmlPreproc
154071d4279SBram Moolenaar  syn region htmlH1 start="<h1\>" end="</h1>"me=e-5 contains=@htmlTop
155071d4279SBram Moolenaar  syn region htmlH2 start="<h2\>" end="</h2>"me=e-5 contains=@htmlTop
156071d4279SBram Moolenaar  syn region htmlH3 start="<h3\>" end="</h3>"me=e-5 contains=@htmlTop
157071d4279SBram Moolenaar  syn region htmlH4 start="<h4\>" end="</h4>"me=e-5 contains=@htmlTop
158071d4279SBram Moolenaar  syn region htmlH5 start="<h5\>" end="</h5>"me=e-5 contains=@htmlTop
159071d4279SBram Moolenaar  syn region htmlH6 start="<h6\>" end="</h6>"me=e-5 contains=@htmlTop
160071d4279SBram Moolenaar  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
1619e54a0e7SBram Moolenaar  syn region htmlTitle start="<title\>" end="</title>"me=e-8 contains=htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
162071d4279SBram Moolenaarendif
163071d4279SBram Moolenaar
164071d4279SBram Moolenaarsyn keyword htmlTagName         contained noscript
165071d4279SBram Moolenaarsyn keyword htmlSpecialTagName  contained script style
166071d4279SBram Moolenaarif main_syntax != 'java' || exists("java_javascript")
167071d4279SBram Moolenaar  " JAVA SCRIPT
1689e54a0e7SBram Moolenaar  syn include @htmlJavaScript syntax/javascript.vim
169071d4279SBram Moolenaar  unlet b:current_syntax
1708feef4ffSBram Moolenaar  syn region  javaScript start=+<script\_[^>]*>+ keepend end=+</script\_[^>]*>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
1710c5fa7d7SBram Moolenaar  syn region  htmlScriptTag     contained start=+<script+ end=+>+ fold contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent
172f37506f6SBram Moolenaar  hi def link htmlScriptTag htmlTag
173071d4279SBram Moolenaar
174071d4279SBram Moolenaar  " html events (i.e. arguments that include javascript commands)
175071d4279SBram Moolenaar  if exists("html_extended_events")
176071d4279SBram Moolenaar    syn region htmlEvent        contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ contains=htmlEventSQ
177071d4279SBram Moolenaar    syn region htmlEvent        contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ contains=htmlEventDQ
178071d4279SBram Moolenaar  else
179071d4279SBram Moolenaar    syn region htmlEvent        contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ keepend contains=htmlEventSQ
180071d4279SBram Moolenaar    syn region htmlEvent        contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ keepend contains=htmlEventDQ
181071d4279SBram Moolenaar  endif
182071d4279SBram Moolenaar  syn region htmlEventSQ        contained start=+'+ms=s+1 end=+'+me=s-1 contains=@htmlJavaScript
183071d4279SBram Moolenaar  syn region htmlEventDQ        contained start=+"+ms=s+1 end=+"+me=s-1 contains=@htmlJavaScript
184f37506f6SBram Moolenaar  hi def link htmlEventSQ htmlEvent
185f37506f6SBram Moolenaar  hi def link htmlEventDQ htmlEvent
186071d4279SBram Moolenaar
187071d4279SBram Moolenaar  " a javascript expression is used as an arg value
188071d4279SBram Moolenaar  syn region  javaScriptExpression contained start=+&{+ keepend end=+};+ contains=@htmlJavaScript,@htmlPreproc
189071d4279SBram Moolenaarendif
190071d4279SBram Moolenaar
191071d4279SBram Moolenaarif main_syntax != 'java' || exists("java_vb")
192071d4279SBram Moolenaar  " VB SCRIPT
1939e54a0e7SBram Moolenaar  syn include @htmlVbScript syntax/vb.vim
194071d4279SBram Moolenaar  unlet b:current_syntax
1958feef4ffSBram Moolenaar  syn region  javaScript start=+<script \_[^>]*language *=\_[^>]*vbscript\_[^>]*>+ keepend end=+</script\_[^>]*>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
196071d4279SBram Moolenaarendif
197071d4279SBram Moolenaar
198071d4279SBram Moolenaarsyn cluster htmlJavaScript      add=@htmlPreproc
199071d4279SBram Moolenaar
200071d4279SBram Moolenaarif main_syntax != 'java' || exists("java_css")
201071d4279SBram Moolenaar  " embedded style sheets
202071d4279SBram Moolenaar  syn keyword htmlArg           contained media
2039e54a0e7SBram Moolenaar  syn include @htmlCss syntax/css.vim
204071d4279SBram Moolenaar  unlet b:current_syntax
205071d4279SBram Moolenaar  syn region cssStyle start=+<style+ keepend end=+</style>+ contains=@htmlCss,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc
206071d4279SBram Moolenaar  syn match htmlCssStyleComment contained "\(<!--\|-->\)"
207071d4279SBram Moolenaar  syn region htmlCssDefinition matchgroup=htmlArg start='style="' keepend matchgroup=htmlString end='"' contains=css.*Attr,css.*Prop,cssComment,cssLength,cssColor,cssURL,cssImportant,cssError,cssString,@htmlPreproc
208f37506f6SBram Moolenaar  hi def link htmlStyleArg htmlString
209071d4279SBram Moolenaarendif
210071d4279SBram Moolenaar
211071d4279SBram Moolenaarif main_syntax == "html"
212071d4279SBram Moolenaar  " synchronizing (does not always work if a comment includes legal
213071d4279SBram Moolenaar  " html tags, but doing it right would mean to always start
214071d4279SBram Moolenaar  " at the first line, which is too slow)
215071d4279SBram Moolenaar  syn sync match htmlHighlight groupthere NONE "<[/a-zA-Z]"
216071d4279SBram Moolenaar  syn sync match htmlHighlight groupthere javaScript "<script"
217071d4279SBram Moolenaar  syn sync match htmlHighlightSkip "^.*['\"].*$"
218071d4279SBram Moolenaar  syn sync minlines=10
219071d4279SBram Moolenaarendif
220071d4279SBram Moolenaar
221071d4279SBram Moolenaar" The default highlighting.
222f37506f6SBram Moolenaarhi def link htmlTag                     Function
223f37506f6SBram Moolenaarhi def link htmlEndTag                  Identifier
224f37506f6SBram Moolenaarhi def link htmlArg                     Type
225f37506f6SBram Moolenaarhi def link htmlTagName                 htmlStatement
226f37506f6SBram Moolenaarhi def link htmlSpecialTagName          Exception
227f37506f6SBram Moolenaarhi def link htmlValue                     String
228f37506f6SBram Moolenaarhi def link htmlSpecialChar             Special
229071d4279SBram Moolenaar
230071d4279SBram Moolenaarif !exists("html_no_rendering")
231f37506f6SBram Moolenaar  hi def link htmlH1                      Title
232f37506f6SBram Moolenaar  hi def link htmlH2                      htmlH1
233f37506f6SBram Moolenaar  hi def link htmlH3                      htmlH2
234f37506f6SBram Moolenaar  hi def link htmlH4                      htmlH3
235f37506f6SBram Moolenaar  hi def link htmlH5                      htmlH4
236f37506f6SBram Moolenaar  hi def link htmlH6                      htmlH5
237f37506f6SBram Moolenaar  hi def link htmlHead                    PreProc
238f37506f6SBram Moolenaar  hi def link htmlTitle                   Title
239f37506f6SBram Moolenaar  hi def link htmlBoldItalicUnderline     htmlBoldUnderlineItalic
240f37506f6SBram Moolenaar  hi def link htmlUnderlineBold           htmlBoldUnderline
241f37506f6SBram Moolenaar  hi def link htmlUnderlineItalicBold     htmlBoldUnderlineItalic
242f37506f6SBram Moolenaar  hi def link htmlUnderlineBoldItalic     htmlBoldUnderlineItalic
243f37506f6SBram Moolenaar  hi def link htmlItalicUnderline         htmlUnderlineItalic
244f37506f6SBram Moolenaar  hi def link htmlItalicBold              htmlBoldItalic
245f37506f6SBram Moolenaar  hi def link htmlItalicBoldUnderline     htmlBoldUnderlineItalic
246f37506f6SBram Moolenaar  hi def link htmlItalicUnderlineBold     htmlBoldUnderlineItalic
247f37506f6SBram Moolenaar  hi def link htmlLink                    Underlined
248f37506f6SBram Moolenaar  hi def link htmlLeadingSpace            None
249071d4279SBram Moolenaar  if !exists("html_my_rendering")
250071d4279SBram Moolenaar    hi def htmlBold                term=bold cterm=bold gui=bold
251071d4279SBram Moolenaar    hi def htmlBoldUnderline       term=bold,underline cterm=bold,underline gui=bold,underline
252071d4279SBram Moolenaar    hi def htmlBoldItalic          term=bold,italic cterm=bold,italic gui=bold,italic
253071d4279SBram Moolenaar    hi def htmlBoldUnderlineItalic term=bold,italic,underline cterm=bold,italic,underline gui=bold,italic,underline
254071d4279SBram Moolenaar    hi def htmlUnderline           term=underline cterm=underline gui=underline
255071d4279SBram Moolenaar    hi def htmlUnderlineItalic     term=italic,underline cterm=italic,underline gui=italic,underline
256071d4279SBram Moolenaar    hi def htmlItalic              term=italic cterm=italic gui=italic
257071d4279SBram Moolenaar  endif
258071d4279SBram Moolenaarendif
259071d4279SBram Moolenaar
260f37506f6SBram Moolenaarhi def link htmlPreStmt            PreProc
261f37506f6SBram Moolenaarhi def link htmlPreError           Error
262f37506f6SBram Moolenaarhi def link htmlPreProc            PreProc
263f37506f6SBram Moolenaarhi def link htmlPreAttr            String
264f37506f6SBram Moolenaarhi def link htmlPreProcAttrName    PreProc
265f37506f6SBram Moolenaarhi def link htmlPreProcAttrError   Error
266f37506f6SBram Moolenaarhi def link htmlSpecial            Special
267f37506f6SBram Moolenaarhi def link htmlSpecialChar        Special
268f37506f6SBram Moolenaarhi def link htmlString             String
269f37506f6SBram Moolenaarhi def link htmlStatement          Statement
270f37506f6SBram Moolenaarhi def link htmlComment            Comment
271f37506f6SBram Moolenaarhi def link htmlCommentPart        Comment
272f37506f6SBram Moolenaarhi def link htmlValue              String
273f37506f6SBram Moolenaarhi def link htmlCommentError       htmlError
274f37506f6SBram Moolenaarhi def link htmlTagError           htmlError
275f37506f6SBram Moolenaarhi def link htmlEvent              javaScript
276f37506f6SBram Moolenaarhi def link htmlError              Error
277071d4279SBram Moolenaar
278f37506f6SBram Moolenaarhi def link javaScript             Special
279f37506f6SBram Moolenaarhi def link javaScriptExpression   javaScript
280f37506f6SBram Moolenaarhi def link htmlCssStyleComment    Comment
281f37506f6SBram Moolenaarhi def link htmlCssDefinition      Special
282071d4279SBram Moolenaar
283071d4279SBram Moolenaarlet b:current_syntax = "html"
284071d4279SBram Moolenaar
285071d4279SBram Moolenaarif main_syntax == 'html'
286071d4279SBram Moolenaar  unlet main_syntax
287071d4279SBram Moolenaarendif
288071d4279SBram Moolenaar
2890c5fa7d7SBram Moolenaarlet &cpo = s:cpo_save
2900c5fa7d7SBram Moolenaarunlet s:cpo_save
291071d4279SBram Moolenaar" vim: ts=8
292