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

skr*_*bel 2 t4 doxygen

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

目前,我只是在doc注释内写出文件名。

在Doxyfile中包括文件扩展名可以使链接起作用,但是Doxygen完全误解了文件,并链接到了这个被误解的文档,而不是我想要的源文件。

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

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

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

有任何想法吗?

Chr*_*ris 5

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

  • 您可以使用该\include命令包含源代码块。从Doxygen手册中:

    \include <file-name>

    此命令可用于将源文件包含为代码块。该命令将包含文件的名称作为参数。可以使用EXAMPLE_PATHDoxygen的配置文件标签指定源文件或目录。

    使用\include命令等效于将文件插入文档块并使用\code\endcode命令将其包围。

  • 另外,从页面

    链接到文件。

    包含不是单词中最后一个字符的点(。)的所有单词都被视为文件名。如果单词确实是记录的输入文件的名称,则将自动创建指向该文件的文档的链接。

  • 最后,从Doxygen 常见问题解答

    11. Doxygen自动在正在运行的文本中的某个位置生成指向类MyClass的链接。我如何在某个地方防止这种情况?

    %在班级名称前放置一个。像这样:%MyClass。然后Doxygen将删除%并保持单词未链接。

从最后两点来看,如果Doxygen发现它认为是文件名的文件,它将自动链接到已记录的文件。该%字符将阻止Doxygen执行此操作,但是您将需要找到一种方法来链接到随附的代码\include

另外,请参阅我对您的问题的评论,以了解如何停止Doxygen为Visual Studio T4模板生成文档-我假设,如果您按照评论中的建议进行操作,则Doxygen不会自动将指向该文件(错误的)文档的链接。

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

/*! \page src_code Visual Studio T4 Template
    \include src.tt
 */
Run Code Online (Sandbox Code Playgroud)

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

最后,如果要包含C / C ++代码,则可以\include使用\code\endcode命令将括起来,以语法突出显示该代码。