1

我在 SLED 10.4 (linux) 下运行 doxygen 1.8.3.1,并试图记录一个包含类似于以下结构的 C 头文件:

/** Test struct definition */
typedef struct
{
    int member_1;  /**< Single-line detailed description */
    int member_2;  /**< Multi-line detailed description.  Blah
                        blah blah */
} TEST_S;

Doxyfile 是由 生成的默认文件doxygen -g,唯一的变化是我编辑了 INPUT 标记以指向我的源。

Doxygen 按预期从单行描述生成简单的 memdoc 段落,但是,多行描述以某种方式被处理,因此第一行被格式化为代码片段。我不知道为什么。生成的实际 HTML 如下:

<pre class="fragment">  Multi-line detailed description.  Blah
</pre><p> blah blah </p>

为什么 Doxygen 不只生成一个简单的段落?

4

1 回答 1

1

这似乎是 Doxygen 在 1.8.3.1 版本中对 Markdown 的支持中的错误(我无法重现 Doxygen 1.8.2 的问题)。如果在配置文件中禁用 markdown 支持:

MARKDOWN_SUPPORT = NO

页面正确呈现。

或者,如果您将评论切换为领先的 doxygen 评论:

/** Multi-line detailed description.  Blah
    blah blah */
int member_2;

或将注释移至以下行:

int member_2;
/**< Multi-line detailed description.  Blah
     blah blah */

它应该正确呈现。

此问题已报告给 Doxygen 开发组 ( https://bugzilla.gnome.org/show_bug.cgi?id=699437 )。

于 2013-05-02T05:16:33.367 回答