Mercurial > vim
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" |