3

我在发布问题之前已经搜索了该网站,但找不到答案。

我的任务是为具有不同类型硬件安装选项的软件创建用户手册。更清楚地说,用户选择硬件 A、B 或 C 等的安装。然后会启用一些功能,而会禁用一些功能。

用户手册基本上是一个文本文件 (.txt),其中还包括相关的 Doxygen 命令(addtogroup、defgroup、ref 等)。

我试图找出如何自动将一些信息放在用户手册上,例如硬件 A,如果安装选项 A 并排除硬件 B 的信息?

我搜索了 Doxygen 手册和各种论坛,包括这个,到目前为止,我想出了一个笨拙的想法,它不起作用。

*** This is my manual.txt file. The following is the relevant piece. ***

/*! \defgroup info1 Scripts
    \ingroup manual
    Several  scripts are provided to help the user perform sophisticated tasks. 

\if \$(OPTION_SETUP)=OPTION1
    <ul>
    <li> \ref option1_related_section 
    <li> \ref option1_related_example_text 
    </ul>
\endif

\if \$(OPTION_SETUP)=OPTION2
    <ul>
    <li> \ref option2_related_section
    <li> \ref option2_related_example_text
    </ul>
\endif
*/

这是行不通的。我不是开发人员,我知道我遗漏了一些东西。

我看到 \if 和 \cond 只能用于部分名称。但是我不知道如何根据安装选项使用条件来选择 manual.txt 上的文本(这是我们的用户手册,而不是开发人员)。

Doxygen 真的可以吗?

4

1 回答 1

2

\if 和 \cond 等仅使用在 ENABLED_SECTIONS 的 Doxyfile 中定义的变量(对于条件,您可以使用带有 &&、|| 和 ! 的简单表达式)。所以你不能在那里使用带有'='的表达式。在您的情况下,您可以制作 2 个 Doxyfile,一个用于选项 A,另一个用于选项 B,请注意,Doxyfile 可以通过 include 语句共享部分。在一个 Doxyfile 中,您将在 ENABLED_SECTIONS 和另一个 OPTION2 中定义 OPTION1,if 语句将读取 \if OPTION1 和另一个 \if OPTION2

于 2013-02-06T17:25:01.720 回答