2011-05-02 26 views

回答

0

作为一种权宜之计,我把$VIMRUNTIME/syntax/html.vim副本中~/.vim/syntax/html.vim和修改了它:

38c38 
< syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=javaScriptExpression,@htmlPreproc 
--- 
> syn match htmlValue contained /=[\t ]*\%('\%(\\.\|[^\\']\)*'\|"\%(\\.\|[^\\"]\)*\|[^'" \t>]*\)/hs=s+1 contains=htmlString,javaScriptExpression,@htmlPreproc 
40c40 
< syn region htmlTag    start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster 
--- 
> syn region htmlTag    start=+<[^/]+ end=+>+ contains=htmlTagN,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster 
43a44 
> syn match htmlTagError contained /['"].*/ 
168c169 
< syn region htmlScriptTag  contained start=+<script+ end=+>+  contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent 
--- 
> syn region htmlScriptTag  contained start=+<script+ end=+>+  contains=htmlTagN,htmlArg,htmlValue,htmlTagError,htmlEvent 

这只是捕获此特定错误(不匹配引号),所以我仍然在严格的HTML更好的语法文件很感兴趣。