有谁知道是否有办法在 GtkSourceView 3 XML 语言文件中指定重叠模式?例如,在下面的文本中,有没有办法以一种颜色突出显示foo和bar之间的“一些文本...”和另一种颜色的bar和baz之间的“一些更多文本...” ?这里的问题是bar是一个上下文的结束,也是另一个上下文的开始,这意味着bar-baz上下文永远不会应用。
foo
some text...
bar
some more text...
baz
有谁知道是否有办法在 GtkSourceView 3 XML 语言文件中指定重叠模式?例如,在下面的文本中,有没有办法以一种颜色突出显示foo和bar之间的“一些文本...”和另一种颜色的bar和baz之间的“一些更多文本...” ?这里的问题是bar是一个上下文的结束,也是另一个上下文的开始,这意味着bar-baz上下文永远不会应用。
foo
some text...
bar
some more text...
baz
我找到了解决方案。bar部分可以包含在foo部分中:
<context id="bar" style-ref="bar" style-inside="true" extend-parent="false">
<start>^bar\b</start>
</context>
<context id="foo" style-ref="foo" style-inside="true">
<start>^foo\b</start>
<end>^baz\b</end>
<include>
<context ref="bar"/>
</include>
</context>