Bri*_*unt 13 vim syntax-highlighting vim-syntax-highlighting
给定一个yaml包含的文件html,如下所示:
template : |+
<div>Hello, world</div>
Run Code Online (Sandbox Code Playgroud)
是否可以在Vim(版本7.3.087)中突出显示带html语法高亮的html部分?
我发现帖子在文件的区域内突出显示不同的语法,这似乎与我正在寻找的概念完全相同,但我无法按预期工作yaml.我希望能够做到以下(如链接中所示):
" .vimrc
" include the code from the above link
call TextEnableCodeSnip('html' ,'#{{{html' ,'#html}}}', 'SpecialComment')
Run Code Online (Sandbox Code Playgroud)
然后有yamlas,例如:
template : |+ #{{{html
<div>Hello, world</div>
#html}}}
Run Code Online (Sandbox Code Playgroud)
不幸的是,这不能按预期工作,即html代码仍然完全突出显示yaml.我还注意到,使用我的配置(MacVim 55),这在文本文件中也不起作用.
我很感激你的想法或建议,谢谢你的阅读.
Max*_*y-B 13
看看我的相关问题:使用Vim的syn-include和syn-region来嵌入语法高亮显示.在那里,我试图在TeX中嵌入Python,但我认为该解决方案也适用于您的情况.
我想你想做这样的事情:
let b:current_syntax = ''
unlet b:current_syntax
runtime! syntax/yaml.vim
let b:current_syntax = ''
unlet b:current_syntax
syntax include @YaML syntax/yaml.vim
let b:current_syntax = ''
unlet b:current_syntax
syntax include @HTML syntax/html.vim
syntax region htmlEmbedded matchgroup=Snip start='#{{{html' end='#html}}}' containedin=@YaML contains=@HTML
hi link Snip SpecialComment
let b:current_syntax = 'yaml.html'
Run Code Online (Sandbox Code Playgroud)
runtime!如果已突出显示YaML,则可能不需要包含该命令的块.
| 归档时间: |
|
| 查看次数: |
3283 次 |
| 最近记录: |