我们使用Doxygen为跨语言项目生成HTML文档。在某些文档中,我想链接到用Doxygen不支持的语言编写的文件源(实际上,它是Visual Studio T4模板)。
目前,我只是在doc评论中写出文件名。
在Doxyfile中包含文件的扩展名使链接工作,但是Doxygen完全误解了文件,并链接到这个误解的文档,而不是源文件,这就是我想要的。
但是,如果我排除文件的扩展名,Doxygen根本不会占用该文件。
是否有任何Doxygen命令直接链接到文件的源,而不是文档?
我真的不在乎Doxygen是否为这个文件生成了错误的文档:只要我可以直接链接到文件的源而不是文档,我会很高兴。文档本身非常不正确,因此不会损害页面生成并且可能会被发现。
有任何想法吗?
我不确定这是否是您正在寻找的答案,但有一些希望有用的要点如下:
\include
命令包含源代码块。从Doxygen手册:
\include <file-name>
此命令可用于将源文件包含为代码块。该命令将包含文件的名称作为参数。可以使用Doxygen配置文件的EXAMPLE_PATH
标记指定源文件或目录。
使用\include
命令相当于将文件插入文档块并使用\code
和\endcode
命令将其包围。%
放在班级名称前面。像这样:%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
括在语法高亮显示代码中。