Doxygen版本:1.8.12 - 默认配置
我一直使用Doxygen生成我的Python文档。它在记录课程时运作良好。我现在已经构建了一些具有一些功能的模块,我将其记录如下:
## @file
# my module comment
##
# my function
# @return 0
def func():
return 0
然后创建一个标签Files
,我可以在其中找到我的模块文件。但是,当我单击它们时,一个函数列表显示为链接,它们被破坏(当点击页面时被重定向到它自己),并且模块的实际定义被附加在页面的末尾。
我应该怎么做才能避免链接断开,也许类似于类(其中函数具有分离的html)的行为更为可取
==== UPDATE ==== 在检查生成的html代码时,显然链接指向此样式的地址:
Documtenation/myfilepy.html#some_hash
实际的页面部分有这种风格的ID:
file_some_hash
调用链接的正确方法应该是:
Documentation/myfilepy#file_some_hash
如何让doxygen放弃file_
或正确生成链接?
答案 0 :(得分:0)
我刚尝试使用1.8.12(以及1.8.14当前和首选版本以及当前开发版本)。我在Files
页面上看到myfile.py
的链接(因为我从myfile
命令中删除了\file
一词)。在myfile.py
页面上,我看到了myfile.func
的1个链接,但引用无处可去。
使用C函数尝试相同时,它确实有效。
查看我看到的HTML代码(对于C),在Functions
部分:
<a class="el" href="bb_8c.html#a916cba588658b3be41b91489a560a664">c_func</a>
和
<a href="#a916cba588658b3be41b91489a560a664">More...</a>
并进一步向下Function Documentation
部分:
<a id="a916cba588658b3be41b91489a560a664"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a916cba588658b3be41b91489a560a664">◆ </a></span>c_func()</h2>
查看我看到的HTML代码(对于Python),在Functions
部分:
<a class="el" href="myfile_8py.html#a3f1962c8fd3ce4b252b1015bf4cb3c32">myfile.func</a>
和
<a href="myfile_8py.html#a3f1962c8fd3ce4b252b1015bf4cb3c32">More...</a>
并进一步向下Function Documentation
部分:
<a id="file_a3f1962c8fd3ce4b252b1015bf4cb3c32"></a>
<h2 class="memtitle"><span class="permalink"><a href="#file_a3f1962c8fd3ce4b252b1015bf4cb3c32">◆ </a></span>func()</h2>
显然,Python版本中的file_
不应该存在(file_
与文件名无关,因为像something.py
这样的文件名会产生相同的结果。)
注意:我在代码中找到了memberdef.cpp
:
// member is in a namespace, but is written as part of the file documentation
// as well, so we need to make sure its label is unique.
编辑:基于我在评论中已经提出的建议,我刚刚将其作为github的提议补丁推送(拉取请求720,https://github.com/doxygen/doxygen/pull/720)。