comparison runtime/syntax/html.vim @ 829:dc8197342755 v7.0d04

updated for version 7.0d04
author vimboss
date Fri, 14 Apr 2006 20:42:25 +0000
parents d5ec1b42ceb0
children 96cd8222a819
comparison
equal deleted inserted replaced
828:01583c79d5f4 829:dc8197342755
1 " Vim syntax file 1 " Vim syntax file
2 " Language: HTML 2 " Language: HTML
3 " Maintainer: Claudio Fleiner <claudio@fleiner.com> 3 " Maintainer: Claudio Fleiner <claudio@fleiner.com>
4 " URL: http://www.fleiner.com/vim/syntax/html.vim 4 " URL: http://www.fleiner.com/vim/syntax/html.vim
5 " Last Change: 2005 Jul 20 5 " Last Change: 2006 April 13
6 6
7 " Please check :help html.vim for some comments and a description of the options 7 " Please check :help html.vim for some comments and a description of the options
8 8
9 " For version 5.x: Clear all syntax items 9 " For version 5.x: Clear all syntax items
10 " For version 6.x: Quit when a syntax file was already loaded 10 " For version 6.x: Quit when a syntax file was already loaded
25 endif 25 endif
26 26
27 27
28 syn case ignore 28 syn case ignore
29 29
30 if main_syntax == "html"
31 syn spell toplevel
32 endif
33
34 " mark illegal characters 30 " mark illegal characters
35 syn match htmlError "[<>&]" 31 syn match htmlError "[<>&]"
36 32
37 33
38 " tags 34 " tags
39 syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc 35 syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
40 syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc 36 syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
41 syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=javaScriptExpression,@htmlPreproc 37 syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=javaScriptExpression,@htmlPreproc
42 syn region htmlEndTag start=+</+ end=+>+ contains=htmlTagN,htmlTagError 38 syn region htmlEndTag start=+</+ end=+>+ contains=htmlTagN,htmlTagError
43 syn region htmlTag start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster 39 syn region htmlTag start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster
44 syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster 40 syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
45 syn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster 41 syn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
46 syn match htmlTagError contained "[^>]<"ms=s+1 42 syn match htmlTagError contained "[^>]<"ms=s+1
47 43
48 44
99 " special characters 95 " special characters
100 syn match htmlSpecialChar "&#\=[0-9A-Za-z]\{1,8};" 96 syn match htmlSpecialChar "&#\=[0-9A-Za-z]\{1,8};"
101 97
102 " Comments (the real ones or the old netscape ones) 98 " Comments (the real ones or the old netscape ones)
103 if exists("html_wrong_comments") 99 if exists("html_wrong_comments")
104 syn region htmlComment start=+<!--+ end=+--\s*>+ 100 syn region htmlComment start=+<!--+ end=+--\s*>+
105 else 101 else
106 syn region htmlComment start=+<!+ end=+>+ contains=htmlCommentPart,htmlCommentError 102 syn region htmlComment start=+<!+ end=+>+ contains=htmlCommentPart,htmlCommentError
107 syn match htmlCommentError contained "[^><!]" 103 syn match htmlCommentError contained "[^><!]"
108 syn region htmlCommentPart contained start=+--+ end=+--\s*+ contains=@htmlPreProc 104 syn region htmlCommentPart contained start=+--+ end=+--\s*+ contains=@htmlPreProc
109 endif 105 endif
110 syn region htmlComment start=+<!DOCTYPE+ keepend end=+>+ 106 syn region htmlComment start=+<!DOCTYPE+ keepend end=+>+
111 107
112 " server-parsed commands 108 " server-parsed commands
113 syn region htmlPreProc start=+<!--#+ end=+-->+ contains=htmlPreStmt,htmlPreError,htmlPreAttr 109 syn region htmlPreProc start=+<!--#+ end=+-->+ contains=htmlPreStmt,htmlPreError,htmlPreAttr
114 syn match htmlPreStmt contained "<!--#\(config\|echo\|exec\|fsize\|flastmod\|include\|printenv\|set\|if\|elif\|else\|endif\|geoguide\)\>" 110 syn match htmlPreStmt contained "<!--#\(config\|echo\|exec\|fsize\|flastmod\|include\|printenv\|set\|if\|elif\|else\|endif\|geoguide\)\>"
115 syn match htmlPreError contained "<!--#\S*"ms=s+4 111 syn match htmlPreError contained "<!--#\S*"ms=s+4
156 syn region htmlH3 start="<h3\>" end="</h3>"me=e-5 contains=@htmlTop 152 syn region htmlH3 start="<h3\>" end="</h3>"me=e-5 contains=@htmlTop
157 syn region htmlH4 start="<h4\>" end="</h4>"me=e-5 contains=@htmlTop 153 syn region htmlH4 start="<h4\>" end="</h4>"me=e-5 contains=@htmlTop
158 syn region htmlH5 start="<h5\>" end="</h5>"me=e-5 contains=@htmlTop 154 syn region htmlH5 start="<h5\>" end="</h5>"me=e-5 contains=@htmlTop
159 syn region htmlH6 start="<h6\>" end="</h6>"me=e-5 contains=@htmlTop 155 syn region htmlH6 start="<h6\>" end="</h6>"me=e-5 contains=@htmlTop
160 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 156 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
161 syn region htmlTitle start="<title\>" end="</title>"me=e-8 contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc 157 syn region htmlTitle start="<title\>" end="</title>"me=e-8 contains=htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
162 endif 158 endif
163 159
164 syn keyword htmlTagName contained noscript 160 syn keyword htmlTagName contained noscript
165 syn keyword htmlSpecialTagName contained script style 161 syn keyword htmlSpecialTagName contained script style
166 if main_syntax != 'java' || exists("java_javascript") 162 if main_syntax != 'java' || exists("java_javascript")
167 " JAVA SCRIPT 163 " JAVA SCRIPT
168 syn include @htmlJavaScript <sfile>:p:h/javascript.vim 164 syn include @htmlJavaScript syntax/javascript.vim
169 unlet b:current_syntax 165 unlet b:current_syntax
170 syn region javaScript start=+<script[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc 166 syn region javaScript start=+<script[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
171 syn region htmlScriptTag contained start=+<script+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent 167 syn region htmlScriptTag contained start=+<script+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent
172 HtmlHiLink htmlScriptTag htmlTag 168 HtmlHiLink htmlScriptTag htmlTag
173 169
174 " html events (i.e. arguments that include javascript commands) 170 " html events (i.e. arguments that include javascript commands)
175 if exists("html_extended_events") 171 if exists("html_extended_events")
176 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ contains=htmlEventSQ 172 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ contains=htmlEventSQ
177 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ contains=htmlEventDQ 173 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ contains=htmlEventDQ
178 else 174 else
179 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ keepend contains=htmlEventSQ 175 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*'+ end=+'+ keepend contains=htmlEventSQ
180 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ keepend contains=htmlEventDQ 176 syn region htmlEvent contained start=+\<on\a\+\s*=[\t ]*"+ end=+"+ keepend contains=htmlEventDQ
181 endif 177 endif
182 syn region htmlEventSQ contained start=+'+ms=s+1 end=+'+me=s-1 contains=@htmlJavaScript 178 syn region htmlEventSQ contained start=+'+ms=s+1 end=+'+me=s-1 contains=@htmlJavaScript
183 syn region htmlEventDQ contained start=+"+ms=s+1 end=+"+me=s-1 contains=@htmlJavaScript 179 syn region htmlEventDQ contained start=+"+ms=s+1 end=+"+me=s-1 contains=@htmlJavaScript
184 HtmlHiLink htmlEventSQ htmlEvent 180 HtmlHiLink htmlEventSQ htmlEvent
185 HtmlHiLink htmlEventDQ htmlEvent 181 HtmlHiLink htmlEventDQ htmlEvent
186 182
187 " a javascript expression is used as an arg value 183 " a javascript expression is used as an arg value
188 syn region javaScriptExpression contained start=+&{+ keepend end=+};+ contains=@htmlJavaScript,@htmlPreproc 184 syn region javaScriptExpression contained start=+&{+ keepend end=+};+ contains=@htmlJavaScript,@htmlPreproc
189 endif 185 endif
190 186
191 if main_syntax != 'java' || exists("java_vb") 187 if main_syntax != 'java' || exists("java_vb")
192 " VB SCRIPT 188 " VB SCRIPT
193 syn include @htmlVbScript <sfile>:p:h/vb.vim 189 syn include @htmlVbScript syntax/vb.vim
194 unlet b:current_syntax 190 unlet b:current_syntax
195 syn region javaScript start=+<script [^>]*language *=[^>]*vbscript[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc 191 syn region javaScript start=+<script [^>]*language *=[^>]*vbscript[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
196 endif 192 endif
197 193
198 syn cluster htmlJavaScript add=@htmlPreproc 194 syn cluster htmlJavaScript add=@htmlPreproc
199 195
200 if main_syntax != 'java' || exists("java_css") 196 if main_syntax != 'java' || exists("java_css")
201 " embedded style sheets 197 " embedded style sheets
202 syn keyword htmlArg contained media 198 syn keyword htmlArg contained media
203 syn include @htmlCss <sfile>:p:h/css.vim 199 syn include @htmlCss syntax/css.vim
204 unlet b:current_syntax 200 unlet b:current_syntax
205 syn region cssStyle start=+<style+ keepend end=+</style>+ contains=@htmlCss,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc 201 syn region cssStyle start=+<style+ keepend end=+</style>+ contains=@htmlCss,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc
206 syn match htmlCssStyleComment contained "\(<!--\|-->\)" 202 syn match htmlCssStyleComment contained "\(<!--\|-->\)"
207 syn region htmlCssDefinition matchgroup=htmlArg start='style="' keepend matchgroup=htmlString end='"' contains=css.*Attr,css.*Prop,cssComment,cssLength,cssColor,cssURL,cssImportant,cssError,cssString,@htmlPreproc 203 syn region htmlCssDefinition matchgroup=htmlArg start='style="' keepend matchgroup=htmlString end='"' contains=css.*Attr,css.*Prop,cssComment,cssLength,cssColor,cssURL,cssImportant,cssError,cssString,@htmlPreproc
208 HtmlHiLink htmlStyleArg htmlString 204 HtmlHiLink htmlStyleArg htmlString
221 " The default highlighting. 217 " The default highlighting.
222 if version >= 508 || !exists("did_html_syn_inits") 218 if version >= 508 || !exists("did_html_syn_inits")
223 if version < 508 219 if version < 508
224 let did_html_syn_inits = 1 220 let did_html_syn_inits = 1
225 endif 221 endif
226 HtmlHiLink htmlTag Function 222 HtmlHiLink htmlTag Function
227 HtmlHiLink htmlEndTag Identifier 223 HtmlHiLink htmlEndTag Identifier
228 HtmlHiLink htmlArg Type 224 HtmlHiLink htmlArg Type
229 HtmlHiLink htmlTagName htmlStatement 225 HtmlHiLink htmlTagName htmlStatement
230 HtmlHiLink htmlSpecialTagName Exception 226 HtmlHiLink htmlSpecialTagName Exception
231 HtmlHiLink htmlValue String 227 HtmlHiLink htmlValue String
232 HtmlHiLink htmlSpecialChar Special 228 HtmlHiLink htmlSpecialChar Special
233 229
234 if !exists("html_no_rendering") 230 if !exists("html_no_rendering")
235 HtmlHiLink htmlH1 Title 231 HtmlHiLink htmlH1 Title
236 HtmlHiLink htmlH2 htmlH1 232 HtmlHiLink htmlH2 htmlH1
237 HtmlHiLink htmlH3 htmlH2 233 HtmlHiLink htmlH3 htmlH2
238 HtmlHiLink htmlH4 htmlH3 234 HtmlHiLink htmlH4 htmlH3
239 HtmlHiLink htmlH5 htmlH4 235 HtmlHiLink htmlH5 htmlH4
240 HtmlHiLink htmlH6 htmlH5 236 HtmlHiLink htmlH6 htmlH5
241 HtmlHiLink htmlHead PreProc 237 HtmlHiLink htmlHead PreProc
242 HtmlHiLink htmlTitle Title 238 HtmlHiLink htmlTitle Title
243 HtmlHiLink htmlBoldItalicUnderline htmlBoldUnderlineItalic 239 HtmlHiLink htmlBoldItalicUnderline htmlBoldUnderlineItalic
244 HtmlHiLink htmlUnderlineBold htmlBoldUnderline 240 HtmlHiLink htmlUnderlineBold htmlBoldUnderline
245 HtmlHiLink htmlUnderlineItalicBold htmlBoldUnderlineItalic 241 HtmlHiLink htmlUnderlineItalicBold htmlBoldUnderlineItalic
246 HtmlHiLink htmlUnderlineBoldItalic htmlBoldUnderlineItalic 242 HtmlHiLink htmlUnderlineBoldItalic htmlBoldUnderlineItalic
247 HtmlHiLink htmlItalicUnderline htmlUnderlineItalic 243 HtmlHiLink htmlItalicUnderline htmlUnderlineItalic
248 HtmlHiLink htmlItalicBold htmlBoldItalic 244 HtmlHiLink htmlItalicBold htmlBoldItalic
249 HtmlHiLink htmlItalicBoldUnderline htmlBoldUnderlineItalic 245 HtmlHiLink htmlItalicBoldUnderline htmlBoldUnderlineItalic
250 HtmlHiLink htmlItalicUnderlineBold htmlBoldUnderlineItalic 246 HtmlHiLink htmlItalicUnderlineBold htmlBoldUnderlineItalic
251 HtmlHiLink htmlLink Underlined 247 HtmlHiLink htmlLink Underlined
252 if !exists("html_my_rendering") 248 if !exists("html_my_rendering")
253 hi def htmlBold term=bold cterm=bold gui=bold 249 hi def htmlBold term=bold cterm=bold gui=bold
254 hi def htmlBoldUnderline term=bold,underline cterm=bold,underline gui=bold,underline 250 hi def htmlBoldUnderline term=bold,underline cterm=bold,underline gui=bold,underline
255 hi def htmlBoldItalic term=bold,italic cterm=bold,italic gui=bold,italic 251 hi def htmlBoldItalic term=bold,italic cterm=bold,italic gui=bold,italic
256 hi def htmlBoldUnderlineItalic term=bold,italic,underline cterm=bold,italic,underline gui=bold,italic,underline 252 hi def htmlBoldUnderlineItalic term=bold,italic,underline cterm=bold,italic,underline gui=bold,italic,underline
257 hi def htmlUnderline term=underline cterm=underline gui=underline 253 hi def htmlUnderline term=underline cterm=underline gui=underline
258 hi def htmlUnderlineItalic term=italic,underline cterm=italic,underline gui=italic,underline 254 hi def htmlUnderlineItalic term=italic,underline cterm=italic,underline gui=italic,underline
259 hi def htmlItalic term=italic cterm=italic gui=italic 255 hi def htmlItalic term=italic cterm=italic gui=italic
260 endif 256 endif
261 endif 257 endif
262 258
263 HtmlHiLink htmlPreStmt PreProc 259 HtmlHiLink htmlPreStmt PreProc
264 HtmlHiLink htmlPreError Error 260 HtmlHiLink htmlPreError Error
265 HtmlHiLink htmlPreProc PreProc 261 HtmlHiLink htmlPreProc PreProc
266 HtmlHiLink htmlPreAttr String 262 HtmlHiLink htmlPreAttr String
267 HtmlHiLink htmlPreProcAttrName PreProc 263 HtmlHiLink htmlPreProcAttrName PreProc
268 HtmlHiLink htmlPreProcAttrError Error 264 HtmlHiLink htmlPreProcAttrError Error
269 HtmlHiLink htmlSpecial Special 265 HtmlHiLink htmlSpecial Special
270 HtmlHiLink htmlSpecialChar Special 266 HtmlHiLink htmlSpecialChar Special
271 HtmlHiLink htmlString String 267 HtmlHiLink htmlString String
272 HtmlHiLink htmlStatement Statement 268 HtmlHiLink htmlStatement Statement
273 HtmlHiLink htmlComment Comment 269 HtmlHiLink htmlComment Comment
274 HtmlHiLink htmlCommentPart Comment 270 HtmlHiLink htmlCommentPart Comment
275 HtmlHiLink htmlValue String 271 HtmlHiLink htmlValue String
276 HtmlHiLink htmlCommentError htmlError 272 HtmlHiLink htmlCommentError htmlError
277 HtmlHiLink htmlTagError htmlError 273 HtmlHiLink htmlTagError htmlError
278 HtmlHiLink htmlEvent javaScript 274 HtmlHiLink htmlEvent javaScript
279 HtmlHiLink htmlError Error 275 HtmlHiLink htmlError Error
280 276
281 HtmlHiLink javaScript Special 277 HtmlHiLink javaScript Special
282 HtmlHiLink javaScriptExpression javaScript 278 HtmlHiLink javaScriptExpression javaScript
283 HtmlHiLink htmlCssStyleComment Comment 279 HtmlHiLink htmlCssStyleComment Comment
284 HtmlHiLink htmlCssDefinition Special 280 HtmlHiLink htmlCssDefinition Special
285 endif 281 endif
286 282
287 delcommand HtmlHiLink 283 delcommand HtmlHiLink
288 284
289 let b:current_syntax = "html" 285 let b:current_syntax = "html"