【发布时间】:2011-09-14 02:37:39
【问题描述】:
Doxygen 在构建时显示Compound ? is not documented. 警告。对于特定项目,我不想记录 Compounds。为了消除混乱,我想查看除此之外的所有其他警告。有没有办法清理 Doxygen 输出?
【问题讨论】:
标签: warnings filtering doxygen
Doxygen 在构建时显示Compound ? is not documented. 警告。对于特定项目,我不想记录 Compounds。为了消除混乱,我想查看除此之外的所有其他警告。有没有办法清理 Doxygen 输出?
【问题讨论】:
标签: warnings filtering doxygen
我认为这是不可能的,除非通过编写自己的后处理器来过滤 doxygen 输出。在您的情况下,这应该不会太难,一个简单的grep 就足够了:
doxygen <config_file> | grep -v "warning: Compound .* is not documented"
我不太确定为什么 doxygen 不提供此功能:也许它需要太多选项,或更复杂的选项。另一种可能性是,他们假设由于您希望在未记录某些内容时收到警告,因此除非在源代码中明确指定(例如,使用 \cond 和 \endcond),否则应该没有例外,其基本原理是这种遗漏只能根据具体情况来决定。或者也许没有人要求他们加入这个功能:请随时填写feature request。
【讨论】:
我认为您正在寻找的是if、ifnot 和endif 命令。只需确定一个合适的标签,然后使用正确的标签。例如:
/*
* \if DISPLAY_COMPOUND
* Compound doc.
* ...
* \endif
*/
doxygen 将评估它是否知道这个标签,如果不知道,他将忽略同一评论块中直到 \endif 命令的任何评论
然后您需要在 ENABLED_SECTIONS 的 doxyfile 中定义(或不定义)该标签。
#comment the next line if you don't want to document Compound
ENABLED_SECTIONS = DISPLAY_COMPOUND
查看\cond 和\endcond 命令,它们也相似但不完全相同(它们启用或禁用文件的整个部分,而不仅仅是单个注释块)。
【讨论】:
ENABLED_SECTIONS = (空白)。你的回答没有涵盖我的问题。我不想启用或禁用复合文档生成。我想禁用仅针对化合物的警告。
您可以在 doxygen 配置中关闭警告。 见这里:doxygen documenation
我最喜欢的是:WARN_IF_UNDOCUMENTED = NO
【讨论】: