【问题标题】:Having mainpage in HTML output only and not in LaTeX仅在 HTML 输出中而不是在 LaTeX 中具有主页
【发布时间】:2019-01-07 11:38:57
【问题描述】:

我有一个使用 HTML 表格的主页,我只想将其包含在 doxygen 的 HTML 输出中。它应该包含在其他输出中(目前只有 LaTeX)。

由于主页使用 doxygen 命令,如 \ref 和 \mainpage 本身,不幸的是,\htmlonly 标记不是一个选项。

有没有办法将标记文件仅限于某些输出?

【问题讨论】:

  • 我能很快想到的唯一事情是运行两次并使用\if\cond 构造,另一种可能性可能是运行一次生成 HTML 和 LaTeX,然后修改 refman.tex (手动或脚本)不包括主页。
  • 感谢您的意见。在这两个选项中,我更喜欢第二个选项,并将我的发现发布在这里。我假设 doxygen 忽略了一个基本上为空的标记文件(由于未满足 \if 条件)?
  • 基本的空文件不一定会被 doxygen 忽略,只是 \if\cond 内的部分,所以有些部分可能会一直存在。

标签: doxygen


【解决方案1】:

按照建议,我最终运行了 doxygen 两次,一次用于 HTML 输出,一次用于 LaTeX 输出。这也让我可以灵活地更改不同输出的其他设置,这也是我一直在关注的。

所以我主页的 dox 文件现在看起来像

/**
\if MySpecialFlagForHTMLOnly
\mainpage notitle
...
\endif
**/

我的默认 doxyfile 有 GENERATE_HTML = YESGENERATE_LATEX = NO。它还在ENABLED_SECTIONS 中定义了MySpecialFlagForHTMLOnly

现在进行第二次自动运行,我同时更改 GENERATE_HTMLGENERATE_LATEX 并从 ENABLED_SECTIONS 清除 MySpecialFlagForHTMLOnly

【讨论】:

  • 我不知道您如何更改配置变量,但是当您手动或通过脚本执行此操作时,可能值得查看常见问题解答:doxygen.nl/manual/faq.html#faq_cmdline
  • 感谢您的提示,这确实也很方便!我可能会在其他项目中采用这种方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-04
  • 2019-07-14
  • 1970-01-01
  • 2017-03-09
  • 2020-06-13
  • 2015-09-22
相关资源
最近更新 更多