Doxygen:如何链接到用不支持的语言编写的源文件?

问题描述 投票:2回答:1

我们使用Doxygen为跨语言项目生成HTML文档。在某些文档中,我想链接到用Doxygen不支持的语言编写的文件源(实际上,它是Visual Studio T4模板)。

目前,我只是在doc评论中写出文件名。

在Doxyfile中包含文件的扩展名使链接工作,但是Doxygen完全误解了文件,并链接到这个误解的文档,而不是源文件,这就是我想要的。

但是,如果我排除文件的扩展名,Doxygen根本不会占用该文件。

是否有任何Doxygen命令直接链接到文件的源,而不是文档?

我真的不在乎Doxygen是否为这个文件生成了错误的文档:只要我可以直接链接到文件的源而不是文档,我会很高兴。文档本身非常不正确,因此不会损害页面生成并且可能会被发现。

有任何想法吗?

t4 doxygen
1个回答
5
投票

我不确定这是否是您正在寻找的答案,但有一些希望有用的要点如下:

  • 您可以使用\include命令包含源代码块。从Doxygen手册: \include <file-name> 此命令可用于将源文件包含为代码块。该命令将包含文件的名称作为参数。可以使用Doxygen配置文件的EXAMPLE_PATH标记指定源文件或目录。 使用\include命令相当于将文件插入文档块并使用\code\endcode命令将其包围。
  • 另外,来自this页面 文件链接。 包含不是单词中最后一个字符的点(。)的所有单词都被视为文件名。如果该单词确实是文档输入文件的名称,则会自动为该文件的文档创建一个链接。
  • 最后,来自Doxygen FAQ: 11. Doxygen会自动生成运行文本中某个类MyClass的链接。如何在某个地方阻止这种情况? 把%放在班级名称前面。像这样:%MyClass。然后Doxygen会移除%并保持单词不相关。

从最后两点来看,如果Doxygen找到它认为是文件名的文件,它似乎会自动链接到文档。 %字符将阻止Doxygen执行此操作,但是您需要找到一种方法来链接到\include中包含的代码。

另外,请参阅我对您的问题的评论,了解如何停止Visual Studio T4模板的Doxygen生成文档 - 我认为如果您遵循评论中的建议,那么Doxygen将不会自动链接到该文件的(不正确的)文档。

编辑:正如对问题的评论中所讨论的,一种可能的解决方案是为源代码创建新页面并将源直接包含在此页面中。例如,人们可以使用

/*! \page src_code Visual Studio T4 Template
    \include src.tt
 */

这将包括文档“相关页面”选项卡下的“Visual Studio T4模板”页面,可以使用标签src_code引用(即使用\ref src_code链接到该页面/源代码)。

最后,如果您要包含C / C ++代码,可以使用\include\code命令将\endcode括在语法高亮显示代码中。

© www.soinside.com 2019 - 2024. All rights reserved.