如何让Doxygen在包含XML片段的@code中进行语法高亮?

3

我正在记录一款操作XML数据格式的软件库。我希望能够在文档中编写XML示例,自然的方式是

@code{.xml}
... xml here ...
@endcode

除了像C++这样的其他内容,Doxygen不能对其内容进行语法高亮。 (我还尝试过在其中使用 .html 而不是 .xml ,以防Doxygen支持HTML但不支持XML,但Doxygen似乎都无法识别。) 有人有关于如何实现对XML代码片段进行语法高亮的建议吗?
(顺便说一句,在此主题上,我在哪里可以找到Doxygen识别并突出显示 @code / @endcode 块中的语言列表?到目前为止,我没有在Doxygen手册中找到它。)假设Doxygen只能对其可以解析的语言进行语法高亮处理(这些语言列在变量EXTENSION_MAPPING中,如下面评论中的用户“albert”所指出的),那么这意味着需要进行一些外部预处理。 有人有聪明的方法来完成这个任务吗?

1
关于@code支持的语言,虽然没有明确写出来,但从使用的句子中可以推断出其是直接由doxygen支持的语言(可能通过EXTENSION_MAPPING间接支持)。 - albert
这是一个很好的观点。Doxygen 1.8.8的EXTENSION_MAPPING描述建议列表包括IDL、Java、Javascript、C#、C、C++、D、PHP、Objective-C、Python、Fortran和VHDL。假设它只能突出显示它也可以解析的语言,那么对于不在列表中的东西(例如XML),它需要一些非Doxygen处理才能获得语法高亮。我会适当地编辑我的问题。感谢您的提示! - mhucka
1个回答

3

我不确定我理解了。正如我在原始帖子中所示,我已经使用了带有显式文件扩展名的\code{}命令。 - mhucka
我的错。我想我没有仔细阅读你的帖子。我现在明白了,你的问题是针对XML的语法高亮显示,你已经知道这是不支持的。最后那个链接可能会有所帮助,虽然我还没有尝试过。如果我尝试了,我会回来编辑我的回复。 - Michael Repucci

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接