我正在 gtksourceview 中为 PARI/GP 编写语法高亮文件。有一个方面让我陷入困境:我只想在另一个关键字中突出显示某些关键字。特别是,我想要一种“登录”突出显示
log(x)
(其中log
表示对数)和另一个在
default(log, 1)
(这里log
指的是日志文件)。这似乎正是<context>
设计的目的,所以我写了
<context id="default" style-ref="keyword">
<start>default\s*(</start>
<end>)</end>
<include>
<context id="in-default" style-ref="defaults">
<keyword>log</keyword>
...
<keyword>timer</keyword>
</context>
</include>
<context ref="string"/>
<context ref="decimal"/>
<context ref="float"/>
<context ref="comment-multiline"/>
<context id="meta-comment" style-ref="comment">
<match>\s*\(([^()]+)\)</match>
</context>
</context>
但这无声无息地失败了(gedit 根本没有语法高亮显示)。我做错什么了?(是的,我已经在上面定义了字符串、十进制、浮点数和注释多行上下文。)