Doxygen类引用页面主要由类成员列表组成,每个列表成员后面跟着它的简要描述(如果存在)。成员本身是指向该成员的详细信息页面的链接。总的来说,简要说明后面是“更多...”链接。此链接的内容与该成员的内容相同。这个“更多...”链接建议 - 至少对我来说 - 在该链接的另一端有更多扩展描述。当会员只有简短的描述时,这会产生误导。在这种情况下,链接指向一个页面,该页面只是重复该简短描述,然后指出“在文件abcxyz.ext的NN行定义。”
有没有让Doxygen压制这些令人沮丧的空洞'更多......'链接?
答案 0 :(得分:2)
doxygen 1.8.10的实验性补丁,可让您删除"更多..."使用" USE_MORE_LINK = NO"在Doxyfile中。
<!-- language: diff -->
=== modified file 'src/classdef.cpp'
--- src/classdef.cpp 2015-07-06 11:29:12 +0000
+++ src/classdef.cpp 2015-07-06 11:37:57 +0000
@@ -1802,12 +1802,14 @@
// HTML only
ol.pushGeneratorState();
- ol.disableAllBut(OutputGenerator::Html);
- ol.docify(" ");
- ol.startTextLink(getOutputFileBase(),
- anchor.isEmpty() ? QCString("details") : anchor);
- ol.parseText(theTranslator->trMore());
- ol.endTextLink();
+ if (Config_getBool("USE_MORE_LINK")) {
+ ol.disableAllBut(OutputGenerator::Html);
+ ol.docify(" ");
+ ol.startTextLink(getOutputFileBase(),
+ anchor.isEmpty() ? QCString("details") : anchor);
+ ol.parseText(theTranslator->trMore());
+ ol.endTextLink();
+ }
ol.popGeneratorState();
if (!anchor.isEmpty())
=== modified file 'src/config.xml'
--- src/config.xml 2015-07-06 11:29:12 +0000
+++ src/config.xml 2015-07-06 11:57:09 +0000
@@ -366,6 +366,13 @@
]]>
</docs>
</option>
+ <option type='bool' id='USE_MORE_LINK' defval='1'>
+ <docs>
+<![CDATA[
+ Experimental parameter, which allows you to remove the "More..." links by using USE_MORE_LINK = NO.
+]]>
+ </docs>
+ </option>
<option type='list' id='ABBREVIATE_BRIEF' format='string'>
<docs>
<![CDATA[
=== modified file 'src/filedef.cpp'
--- src/filedef.cpp 2015-07-06 11:29:12 +0000
+++ src/filedef.cpp 2015-07-06 11:31:41 +0000
@@ -373,8 +373,8 @@
ol.writeString(" \n");
ol.enable(OutputGenerator::RTF);
- if (Config_getBool("REPEAT_BRIEF") ||
- !documentation().isEmpty()
+ if ( (Config_getBool("REPEAT_BRIEF") || !documentation().isEmpty() ) &&
+ Config_getBool("USE_MORE_LINK")
)
{
ol.disableAllBut(OutputGenerator::Html);
=== modified file 'src/memberdef.cpp'
--- src/memberdef.cpp 2015-07-06 11:29:12 +0000
+++ src/memberdef.cpp 2015-07-06 11:37:48 +0000
@@ -1805,22 +1805,24 @@
{
static bool separateMemberPages = Config_getBool("SEPARATE_MEMBER_PAGES");
ol.pushGeneratorState();
- ol.disableAllBut(OutputGenerator::Html);
- //ol.endEmphasis();
- ol.docify(" ");
- if (separateMemberPages ||
- (m_impl->group!=0 && gd==0) ||
- (m_impl->nspace!=0 && nd==0)
- ) // forward link to the page or group or namespace
- {
- ol.startTextLink(getOutputFileBase(),anchor());
- }
- else // local link
- {
- ol.startTextLink(0,anchor());
- }
- ol.parseText(theTranslator->trMore());
- ol.endTextLink();
+ if (Config_getBool("USE_MORE_LINK")) {
+ ol.disableAllBut(OutputGenerator::Html);
+ //ol.endEmphasis();
+ ol.docify(" ");
+ if (separateMemberPages ||
+ (m_impl->group!=0 && gd==0) ||
+ (m_impl->nspace!=0 && nd==0)
+ ) // forward link to the page or group or namespace
+ {
+ ol.startTextLink(getOutputFileBase(),anchor());
+ }
+ else // local link
+ {
+ ol.startTextLink(0,anchor());
+ }
+ ol.parseText(theTranslator->trMore());
+ ol.endTextLink();
+ }
//ol.startEmphasis();
ol.popGeneratorState();
}
答案 1 :(得分:1)
(暂定答案,因为这个特殊情况不是我需要做的事情。)
如果您要删除所有详细说明(因此,可能是指向它的链接),您可以修改'layout'文件以使该部分不可见。< / p>
参考:http://www.doxygen.nl/manual/customize.html#layout
可替换地..
根据您的描述,听起来似乎REPEAT_BRIEF
已设置。如果在第一个句号之外确实没有描述,那么你可能会发现关闭REPEAT_BRIEF会删除链接,因为那里的文本确实是空的。
答案 2 :(得分:0)
可能有点迟了但是我遇到了同样的问题,并且使用以下doxyfile配置轻松解决了这个问题:
ALWAYS_DETAILED_SEC = NO
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = NO
EXTRACT_ALL = NO
# Since EXTRACT_ALL is NO, configure the following as you wish. In my case
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_METHODS = YES
我希望有所帮助。