配置

格式

配置文件是一个自由格式的 ASCII 文本文件,其结构类似于 Makefile,默认文件名为 Doxyfile。它由 doxygen 解析。文件可能包含制表符和换行符用于格式化。文件中的语句区分大小写。

配置文件本质上由一系列赋值语句组成。每个语句由一个大写的 TAG_NAME 组成,后面跟着等号(=)和一个或多个值。如果同一个标签被多次赋值,则最后一次赋值会覆盖之前的任何赋值。对于以列表作为参数的标签,可以使用 += 运算符代替 = 来将新值附加到列表中。值是非空白字符的序列。如果值应包含一个或多个空白字符,则必须用引号("...")括起来。多行可以通过在行末的最后一个非空白字符处插入反斜杠(\)来连接。

注释以井号字符(#)开头,并在行尾结束。注释可以放置在文件中的任何位置(引号内除外)。以两个井号字符(##)开头的注释在更新配置文件时会保留,前提是它们放置在 TAG_NAME 前面,或配置文件的开头或结尾。

可以使用模式 $(ENV_VARIABLE_NAME) 扩展环境变量。一个小例子

DOT_PATH      = $(YOUR_DOT_PATH)

您还可以使用 @INCLUDE 标签从另一个配置文件中包含部分配置文件,如下所示

@INCLUDE = config_file_name

包含文件在当前工作目录中搜索。您还可以指定在当前工作目录中查找之前应搜索的目录列表。通过在 @INCLUDE 标签之前放置一个带有这些路径的 @INCLUDE_PATH 标签来完成,例如

@INCLUDE_PATH = my_config_dir

配置选项可分为几个类别。下面是已识别标签的字母顺序索引,后跟按类别分组的标签描述。

项目相关配置选项

DOXYFILE_ENCODING

此标签指定配置文件中所有后续字符所使用的编码。默认是 UTF-8,这也是此标签首次出现之前所有文本使用的编码。Doxygen 使用 libiconv(或内置于 libc 中的 iconv)进行转码。有关可能的编码列表,请参阅 https://gnu.ac.cn/software/libiconv/

默认值是:UTF-8

PROJECT_NAME

PROJECT_NAME 标签是一个单词(或用双引号括起来的单词序列,除非您使用 Doxywizard),它应该标识生成文档的项目。此名称用于大多数生成页面的标题和一些其他位置。

默认值是:My Project

PROJECT_NUMBER

PROJECT_NUMBER 标签可用于输入项目或修订号。这对于归档生成的文档或使用某些版本控制系统可能很有用。

PROJECT_BRIEF

使用 PROJECT_BRIEF 标签可以为项目提供可选的单行描述,该描述显示在每个页面的顶部,应向查看者快速介绍项目的目的。请保持描述简短。

PROJECT_LOGO

使用 PROJECT_LOGO 标签可以指定包含在文档中的徽标或图标。徽标的最大高度不应超过 55 像素,最大宽度不应超过 200 像素。Doxygen 会将徽标复制到输出目录。

PROJECT_ICON

使用 PROJECT_ICON 标签可以指定在显示 HTML 文档时包含在标签页中的图标。Doxygen 会将徽标复制到输出目录。

OUTPUT_DIRECTORY

OUTPUT_DIRECTORY 标签用于指定生成文档的(相对或绝对)路径。如果输入相对路径,它将相对于 Doxygen 启动的位置。如果留空,则使用当前目录。

CREATE_SUBDIRS

如果 CREATE_SUBDIRS 标签设置为 YES,则 Doxygen 将在每种输出格式的输出目录下创建多达 4096 个子目录(分 2 级),并将生成的文件分发到这些目录中。当 Doxygen 处理大量源文件时,启用此选项会很有用,否则将所有生成的文件放在同一目录中可能会导致文件系统出现性能问题。调整 CREATE_SUBDIRS_LEVEL 以控制子目录的数量。

默认值是:NO

CREATE_SUBDIRS_LEVEL

控制当 CREATE_SUBDIRS 标签设置为 YES 时将创建的子目录数量。0 级表示 16 个目录,每个级别增加都会使目录数量翻倍,从而在 8 级(默认值也是最大值)时达到 4096 个目录。子目录分为 2 级,第一级始终有固定数量的 16 个目录。

最小值:0,最大值:8,默认值:8

此标签要求标签 CREATE_SUBDIRS 设置为 YES

ALLOW_UNICODE_NAMES

如果 ALLOW_UNICODE_NAMES 标签设置为 YES,Doxygen 将允许非 ASCII 字符出现在生成的文件名中。如果设置为 NO,非 ASCII 字符将被转义,例如 Unicode U+3044 将使用 _xE3_x81_x84。

默认值是:NO

OUTPUT_LANGUAGE

OUTPUT_LANGUAGE 标签用于指定 Doxygen 生成的所有文档所使用的语言。Doxygen 将使用此信息以适当的语言生成所有常量输出。

可能的值是:Afrikaans, Arabic, Armenian, Brazilian, Bulgarian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, UkrainianVietnamese

默认值是:English

BRIEF_MEMBER_DESC

如果 BRIEF_MEMBER_DESC 标签设置为 YES,Doxygen 将在文件和类文档中列出的成员之后包含简短的成员描述(类似于 Javadoc)。设置为 NO 以禁用此功能。

默认值是:YES

REPEAT_BRIEF

如果 REPEAT_BRIEF 标签设置为 YES,Doxygen 会在详细描述之前预置成员或函数的简短描述
注意:如果 HIDE_UNDOC_MEMBERSBRIEF_MEMBER_DESC 都设置为 NO,简短描述将完全被抑制。

默认值是:YES

ABBREVIATE_BRIEF

此标签实现了一个准智能的简短描述缩写器,用于在各种列表中形成文本。此列表中的每个字符串,如果作为简短描述的引导文本找到,将从文本中删除,并在处理完整个列表后,结果将用作带注释的文本。否则,简短描述将按原样使用。如果留空,则使用以下值($name 会自动替换为实体名称):The $name class, The $name widget, The $name file, is, provides, specifies, contains, represents, a, anthe

ALWAYS_DETAILED_SEC

如果 ALWAYS_DETAILED_SECREPEAT_BRIEF 标签都设置为 YES,则 Doxygen 将生成一个详细部分,即使只有简短描述。

默认值是:NO

INLINE_INHERITED_MEMB

如果 INLINE_INHERITED_MEMB 标签设置为 YES,Doxygen 将在类的文档中显示该类的所有继承成员,就像这些成员是普通类成员一样。基类的构造函数、析构函数和赋值运算符将不显示。

默认值是:NO

FULL_PATH_NAMES

如果 FULL_PATH_NAMES 标签设置为 YES,Doxygen 将在文件列表和头文件中在文件名前面加上完整路径。如果设置为 NO,则使用使文件名唯一的 shortest path

默认值是:YES

STRIP_FROM_PATH

STRIP_FROM_PATH 标签可用于剥离用户定义的路径部分。只有当指定字符串之一与路径的左侧部分匹配时才执行剥离。此标签可用于在文件列表中显示相对路径。如果留空,则 Doxygen 运行的目录将用作要剥离的路径。
请注意,您可以在此处指定绝对路径,也可以指定相对路径,这些路径将相对于 Doxygen 启动的目录。

此标签要求标签 FULL_PATH_NAMES 设置为 YES

STRIP_FROM_INC_PATH

STRIP_FROM_INC_PATH 标签可用于剥离类文档中提到的路径的用户定义部分,该路径告诉读者要包含哪个头文件才能使用某个类。如果留空,则仅使用包含类定义的头文件的名称。否则,应指定通常使用 -I 标志传递给编译器的 include 路径列表。

SHORT_NAMES

如果 SHORT_NAMES 标签设置为 YES,Doxygen 将生成短得多(但可读性差)的文件名。如果您的文件系统不支持长文件名(如 DOS、Mac 或 CD-ROM),这会很有用。

默认值是:NO

JAVADOC_AUTOBRIEF

如果 JAVADOC_AUTOBRIEF 标签设置为 YES,Doxygen 将把 Javadoc 风格注释的第一行(直到第一个句号、问号或感叹号)解释为简短描述。如果设置为 NO,Javadoc 风格的行为将与常规 Qt 风格注释完全相同(因此需要一个显式的 @brief 命令作为简短描述。)

默认值是:NO

JAVADOC_BANNER

如果 JAVADOC_BANNER 标签设置为 YES,Doxygen 将解释一行,例如

/***************

作为 Javadoc 风格注释“banner”的开头。如果设置为 NO,Javadoc 风格的行为将与常规注释完全相同,并且不会被 Doxygen 解释。

默认值是:NO

QT_AUTOBRIEF

如果 QT_AUTOBRIEF 标签设置为 YES,Doxygen 将把 Qt 风格注释的第一行(直到第一个句号、问号或感叹号)解释为简短描述。如果设置为 NO,Qt 风格的行为将与常规 Qt 风格注释完全相同(因此需要一个显式的 \brief 命令作为简短描述。)

默认值是:NO

MULTILINE_CPP_IS_BRIEF

MULTILINE_CPP_IS_BRIEF 标签可以设置为 YES,使 Doxygen 将多行 C++ 特殊注释块(即 //!/// 注释块)视为简短描述。这曾经是默认行为。新的默认行为是将多行 C++ 注释块视为详细描述。如果您更喜欢旧行为,请将此标签设置为 YES
请注意,将此标签设置为 YES 也意味着不再识别 rational rose 注释。

默认值是:NO

PYTHON_DOCSTRING

默认情况下,Python 文档字符串显示为预格式化文本,Doxygen 的特殊命令无法使用。通过将 PYTHON_DOCSTRING 设置为 NO,可以使用 Doxygen 的特殊命令,并且文档字符串文档块的内容将显示为 Doxygen 文档。

默认值是:YES

INHERIT_DOCS

如果 INHERIT_DOCS 标签设置为 YES,则未文档化的成员将继承其重新实现的任何已文档化成员的文档。

默认值是:YES

SEPARATE_MEMBER_PAGES

如果 SEPARATE_MEMBER_PAGES 标签设置为 YES,Doxygen 将为每个成员生成一个新页面。如果设置为 NO,成员的文档将是包含它的文件/类/命名空间的一部分。

默认值是:NO

TAB_SIZE

TAB_SIZE 标签可用于设置制表符中的空格数。Doxygen 使用此值在代码片段中用空格替换制表符。

最小值:1,最大值:16,默认值:4

ALIASES

此标签可用于指定一些在文档中充当命令的别名。别名具有以下形式

 name=value

例如添加

 "sideeffect=@par Side Effects:^^"

将允许您在文档中放置命令 \sideeffect(或 @sideeffect),这将导致一个用户定义的段落,标题为“Side Effects:”。请注意,您不能在别名的值部分放置 \n 以插入换行符(在结果输出中)。您可以在别名的值部分放置 ^^ 以插入换行符,就像原始文件中存在物理换行符一样。当您需要在别名的值部分使用文字 {}, 时,必须通过反斜杠(\\endiskip)将其转义,这可能与命令 \{\} 冲突,建议使用版本 @{@} 或使用双重转义(\\{\\}

OPTIMIZE_OUTPUT_FOR_C

如果您的项目仅包含 C 源代码,请将 OPTIMIZE_OUTPUT_FOR_C 标签设置为 YES。Doxygen 将生成更适合 C 的输出。例如,使用的一些名称将有所不同。所有成员的列表将被省略,等等。

默认值是:NO

OPTIMIZE_OUTPUT_JAVA

如果您的项目仅包含 Java 或 Python 源代码,请将 OPTIMIZE_OUTPUT_JAVA 标签设置为 YES。Doxygen 将生成更适合该语言的输出。例如,命名空间将显示为包,限定范围将看起来不同,等等。

默认值是:NO

OPTIMIZE_FOR_FORTRAN

如果您的项目包含 Fortran 源文件,请将 OPTIMIZE_FOR_FORTRAN 标签设置为 YES。Doxygen 将生成适合 Fortran 的输出。

默认值是:NO

OPTIMIZE_OUTPUT_VHDL

如果您的项目包含 VHDL 源文件,请将 OPTIMIZE_OUTPUT_VHDL 标签设置为 YES。Doxygen 将生成适合 VHDL 的输出。

默认值是:NO

OPTIMIZE_OUTPUT_SLICE

如果您的项目仅包含 Slice 源文件,请将 OPTIMIZE_OUTPUT_SLICE 标签设置为 YES。Doxygen 将生成更适合该语言的输出。例如,命名空间将显示为模块,类型将分为更多组,等等。

默认值是:NO

EXTENSION_MAPPING

Doxygen 根据解析文件的扩展名选择要使用的解析器。使用此标签,您可以为给定扩展名分配要使用的解析器。Doxygen 具有内置映射,但您可以使用此标签覆盖或扩展它。格式为 ext=language,其中 ext 是文件扩展名,language 是 Doxygen 支持的解析器之一:IDL、Java、JavaScript、Csharp (C#)、C、C++、Lex、D、PHP、md (Markdown)、Objective-C、Python、Slice、VHDL、Fortran(固定格式 Fortran: FortranFixed, 自由格式 Fortran: FortranFree, 未知格式 Fortran: Fortran。在后一种情况下,解析器会尝试猜测代码是固定格式还是自由格式,这是 Fortran 类型文件的默认设置)。

例如,要让 Doxygen 将 .inc 文件视为 Fortran 文件(默认为 PHP),将 .f 文件视为 C(默认为 Fortran),请使用:inc=Fortran f=C


注意:对于没有扩展名的文件,您可以使用 no_extension 作为占位符。
请注意,对于自定义扩展名,您还需要设置 FILE_PATTERNS,否则 Doxygen 不会读取这些文件。当指定 no_extension 时,您应该向 FILE_PATTERNS 添加 *
注意,另请参阅 默认文件扩展名映射 列表。

MARKDOWN_SUPPORT

如果启用 MARKDOWN_SUPPORT 标签,Doxygen 会根据 Markdown 格式预处理所有注释,从而允许更具可读性的文档。有关详细信息,请参阅 https://daringfireball.net/projects/markdown/。Markdown 处理的输出由 Doxygen 进一步处理,因此您可以将 Doxygen、HTML 和 XML 命令与 Markdown 格式混合使用。仅在出现向后兼容性问题时才禁用。

默认值是:YES

MARKDOWN_STRICT

如果启用 MARKDOWN_STRICT 标签,Doxygen 将把注释中的文本也视为 Markdown 格式,即使 Doxygen 的原生标记格式与 Markdown 冲突。这仅在使用了反引号的情况下相关。Doxygen 的原生标记样式允许单个引号结束以反引号开头的文本片段,然后将其视为一段引用文本,而在 Markdown 中,此类文本片段被视为逐字文本,并且只有当找到第二个匹配的反引号时才结束。此外,Doxygen 的原生标记格式要求在反引号部分中出现的双引号进行转义,而 Markdown 不需要。

默认值是:YES

此标签要求标签 MARKDOWN_SUPPORT 设置为 YES

TOC_INCLUDE_HEADINGS

TOC_INCLUDE_HEADINGS 标签设置为非零值时,所有达到该级别的标题都会自动包含在目录中,即使它们没有 id 属性。

注意
此功能目前仅适用于 Markdown 标题。

最小值:0,最大值:99,默认值:6

此标签要求标签 MARKDOWN_SUPPORT 设置为 YES

MARKDOWN_ID_STYLE

MARKDOWN_ID_STYLE 标签可用于指定用于为 Markdown 标题生成标识符的算法。注意:每个标识符都是唯一的。

可能的值是:DOXYGEN 使用固定的“autotoc_md”字符串,后跟从 0 开始的序列号,GITHUB 使用标题的小写版本,其中所有空格替换为“-”并删除标点符号。

默认值是:DOXYGEN

此标签要求标签 MARKDOWN_SUPPORT 设置为 YES

AUTOLINK_SUPPORT

启用后,Doxygen 会尝试将与已文档化类或命名空间对应的单词链接到其相应的文档。可以通过在单词前面加上 % 符号来在个别情况下阻止此类链接,或者通过将 AUTOLINK_SUPPORT 全局设置为 NO 来阻止。列在 AUTOLINK_IGNORE_WORDS 标签中的单词将从自动链接中排除。

默认值是:YES

AUTOLINK_IGNORE_WORDS

此标签指定了一个单词列表,当这些单词与文档中某个单词的开头匹配时,如果通过 AUTOLINK_SUPPORT 启用了自动链接生成,则会抑制自动链接生成。此列表不影响使用 # 或 \link\ref 命令明确创建的链接。

此标签要求标签 AUTOLINK_SUPPORT 设置为 YES

BUILTIN_STL_SUPPORT

如果您使用 STL 类(即 std::stringstd::vector 等),但不想将 STL 源作为输入包含(或包含其标签文件),那么您应该将此标签设置为 YES,以便 Doxygen 匹配其参数包含 STL 类的函数声明和定义(例如 func(std::string); 与 func(std::string) {})。这还可以使涉及 STL 类的继承和协作图更完整和准确。

默认值是:NO

CPP_CLI_SUPPORT

如果您使用 Microsoft 的 C++/CLI 语言,您应该将此选项设置为 YES 以启用解析支持。

默认值是:NO

SIP_SUPPORT

如果您的项目仅包含 sip 源文件,请将 SIP_SUPPORT 标签设置为 YES。Doxygen 将像解析普通 C++ 一样解析它们,但会假设所有类在没有显式保护关键字时都使用公共继承而不是私有继承。

默认值是:NO

IDL_PROPERTY_SUPPORT

对于 Microsoft 的 IDL,有 propgetpropput 属性来指示属性的 getter 和 setter 方法。将此选项设置为 YES 将使 Doxygen 在文档中用属性替换 get 和 set 方法。这仅在方法确实是获取或设置简单类型时才有效。如果不是这种情况,或者您仍想显示这些方法,则应将此选项设置为 NO

默认值是:YES

DISTRIBUTE_GROUP_DOC

如果文档中使用了成员分组,并且 DISTRIBUTE_GROUP_DOC 标签设置为 YES,则 Doxygen 会将组中第一个成员的文档(如果有)重用于组的其他成员。默认情况下,组中的所有成员都必须明确文档化。

默认值是:NO

GROUP_NESTED_COMPOUNDS

如果将结构体或类添加到组中并启用此选项,则任何嵌套类或结构体也会添加到同一组中。默认情况下,此选项是禁用的,必须通过 \ingroup 显式添加嵌套复合体。

默认值是:NO

SUBGROUPING

SUBGROUPING 标签设置为 YES 以允许相同类型的类成员组(例如一组公共函数)作为该类型的子组(例如在“公共函数”部分下)。将其设置为 NO 以防止子分组。或者,可以使用 \nosubgrouping 命令对每个类进行此操作。

默认值是:YES

INLINE_GROUPED_CLASSES

INLINE_GROUPED_CLASSES 标签设置为 YES 时,类、结构体和联合体将显示在其所属组内部(例如,使用 \ingroup),而不是在单独的页面(对于 HTML 和 Man 页面)或部分(对于 $\mbox{\LaTeX}$ 和 RTF)中。
请注意,此功能与 SEPARATE_MEMBER_PAGES 不兼容。

默认值是:NO

INLINE_SIMPLE_STRUCTS

INLINE_SIMPLE_STRUCTS 标签设置为 YES 时,仅包含公共数据字段或简单 typedef 字段的结构体、类和联合体将以内联方式显示在其定义的范围(即文件、命名空间或组文档)的文档中,前提是此范围已文档化。如果设置为 NO,结构体、类和联合体将显示在单独的页面(对于 HTML 和 Man 页面)或部分(对于 $\mbox{\LaTeX}$ 和 RTF)中。

默认值是:NO

TYPEDEF_HIDES_STRUCT

当启用 TYPEDEF_HIDES_STRUCT 标签时,结构体、联合体或枚举的 typedef 将被文档化为具有 typedef 名称的结构体、联合体或枚举。因此,typedef struct TypeS {} TypeT 将在文档中显示为名为 TypeT 的结构体。当禁用时,typedef 将作为文件、命名空间或类的成员出现。结构体将命名为 TypeS。这通常对于 C 代码很有用,如果编码约定规定所有复合类型都已 typedef,并且只引用 typedef,从不引用标签名。

默认值是:NO

LOOKUP_CACHE_SIZE

符号查找缓存的大小可以使用 LOOKUP_CACHE_SIZE 设置。此缓存用于根据符号的名称和范围解析符号。由于这可能是一个昂贵的过程,并且代码中经常出现相同的符号多次,Doxygen 会保留一个预解析符号的缓存。如果缓存太小,Doxygen 会变慢。如果缓存太大,则会浪费内存。缓存大小由以下公式给出:$2^{(16+\mbox{LOOKUP\_CACHE\_SIZE})}$。有效范围是 0..9,默认值为 0,对应于 $2^{16} = 65536$ 个符号的缓存大小。在运行结束时,Doxygen 将报告缓存使用情况并从速度角度建议最佳缓存大小。

最小值:0,最大值:9,默认值:0

NUM_PROC_THREADS

NUM_PROC_THREADS 指定 Doxygen 在处理过程中允许使用的线程数。设置为 0 时,Doxygen 将根据系统中可用的核心数来确定。您可以将其明确设置为大于 0 的值,以更好地控制 CPU 负载和处理速度之间的平衡。目前,只有输入处理可以使用多个线程。由于这仍然是一个实验性功能,默认设置为 1,这实际上禁用了并行处理。如果您遇到任何问题,请报告。并行生成 dot 图由 DOT_NUM_THREADS 设置控制。

最小值:0,最大值:512,默认值:1

TIMESTAMP

如果 TIMESTAMP 标签设置为 NO 以外的值,则每个生成的页面都将包含页面生成时的日期或日期和时间。将其设置为 NO 有助于比较多次运行的输出。

可能的值是:YES, NO, DATETIMEDATE

默认值是:NO

构建相关配置选项

EXTRACT_ALL

如果 EXTRACT_ALL 标签设置为 YES,Doxygen 将假定文档中的所有实体都已文档化,即使没有可用的文档。私有类成员和静态文件成员将被隐藏,除非 EXTRACT_PRIVATEEXTRACT_STATIC 标签分别设置为 YES

注意
这还将禁用当 WARNINGS 设置为 YES 时通常会生成的关于未文档化成员的警告。

默认值是:NO

EXTRACT_PRIVATE

如果 EXTRACT_PRIVATE 标签设置为 YES,类的所有私有成员都将包含在文档中。

默认值是:NO

EXTRACT_PRIV_VIRTUAL

如果 EXTRACT_PRIV_VIRTUAL 标签设置为 YES,类的已文档化的私有虚方法将包含在文档中。

默认值是:NO

EXTRACT_PACKAGE

如果 EXTRACT_PACKAGE 标签设置为 YES,所有具有包或内部范围的成员都将包含在文档中。

默认值是:NO

EXTRACT_STATIC

如果 EXTRACT_STATIC 标签设置为 YES,文件的所有静态成员都将包含在文档中。

默认值是:NO

EXTRACT_LOCAL_CLASSES

如果 EXTRACT_LOCAL_CLASSES 标签设置为 YES,则源文件中本地定义的类(和结构体)将包含在文档中。如果设置为 NO,则只包含头文件中定义的类。对 Java 源文件无效。

默认值是:YES

EXTRACT_LOCAL_METHODS

此标志仅对 Objective-C 代码有用。如果设置为 YES,则实现部分中定义但未在接口中定义的本地方法将包含在文档中。如果设置为 NO,则只包含接口中的方法。

默认值是:NO

EXTRACT_ANON_NSPACES

如果此标志设置为 YES,匿名命名空间的成员将被提取并以名为“anonymous_namespace{file}”的命名空间形式出现在文档中,其中 file 将替换为包含匿名命名空间的文件基名。默认情况下,匿名命名空间是隐藏的。

默认值是:NO

RESOLVE_UNNAMED_PARAMS

如果此标志设置为 YES,声明中未命名参数的名称将由相应的定义确定。默认情况下,未命名参数在输出中保持未命名。

默认值是:YES

HIDE_UNDOC_MEMBERS

如果 HIDE_UNDOC_MEMBERS 标签设置为 YES,Doxygen 将隐藏已文档化类或文件中的所有未文档化成员。如果设置为 NO,这些成员将包含在各种概述中,但不生成文档部分。如果启用 EXTRACT_ALL,此选项无效。

默认值是:NO

HIDE_UNDOC_CLASSES

如果 HIDE_UNDOC_CLASSES 标签设置为 YES,Doxygen 将隐藏通常在类层次结构中可见的所有未文档化类。如果设置为 NO,这些类将包含在各种概述中。如果启用,此选项还将隐藏未文档化的 C++ 概念。如果启用 EXTRACT_ALL,此选项无效。

默认值是:NO

HIDE_UNDOC_NAMESPACES

如果 HIDE_UNDOC_NAMESPACES 标签设置为 YES,Doxygen 将隐藏通常在命名空间层次结构中可见的所有未文档化命名空间。如果设置为 NO,这些命名空间将包含在各种概述中。如果启用 EXTRACT_ALL,此选项无效。

默认值是:YES

HIDE_FRIEND_COMPOUNDS

如果 HIDE_FRIEND_COMPOUNDS 标签设置为 YES,Doxygen 将隐藏所有友元声明。如果设置为 NO,这些声明将包含在文档中。

默认值是:NO

HIDE_IN_BODY_DOCS

如果 HIDE_IN_BODY_DOCS 标签设置为 YES,Doxygen 将隐藏在函数体内部找到的任何文档块。如果设置为 NO,这些块将附加到函数的详细文档块中。

默认值是:NO

INTERNAL_DOCS

INTERNAL_DOCS 标签决定是否包含在 \internal 命令之后输入的文档。如果标签设置为 NO,则文档将被排除。将其设置为 YES 以包含内部文档。

默认值是:NO

CASE_SENSE_NAMES

通过正确设置选项 CASE_SENSE_NAMES,Doxygen 将更好地匹配底层文件系统的能力。

如果文件系统区分大小写(即它支持同一目录中文件名仅大小写不同的文件),则必须将该选项设置为 YES 以在这些文件出现在输入中时正确处理它们。

对于不区分大小写的文件系统,应将该选项设置为 NO,以正确处理仅大小写不同的符号(例如,一个名为 CLASS,另一个名为 Class 的两个类)的输出文件,并支持引用文件而无需指定精确匹配的大小写。

在 Windows(包括 Cygwin)和 macOS 上,用户通常应将此选项设置为 NO,而在 Linux 或其他 Unix 风格上,通常应将其设置为 YES

可能的值是:SYSTEM, NOYES

默认值是:SYSTEM

HIDE_SCOPE_NAMES

如果 HIDE_SCOPE_NAMES 标签设置为 NO,Doxygen 将在文档中显示具有完整类和命名空间范围的成员。如果设置为 YES,则范围将被隐藏。

默认值是:NO

HIDE_COMPOUND_REFERENCE

如果 HIDE_COMPOUND_REFERENCE 标签设置为 NO(默认),Doxygen 将在页面标题后添加额外文本,例如 Class Reference。如果设置为 YES,复合引用将被隐藏。

默认值是:NO

SHOW_HEADERFILE

如果 SHOW_HEADERFILE 标签设置为 YES,则类的文档将显示需要包含哪个文件才能使用该类。

默认值是:YES

SHOW_INCLUDE_FILES

如果 SHOW_INCLUDE_FILES 标签设置为 YES,Doxygen 将在文件文档中列出该文件包含的文件列表。

默认值是:YES

SHOW_GROUPED_MEMB_INC

如果 SHOW_GROUPED_MEMB_INC 标签设置为 YES,Doxygen 将为每个分组成员向文档添加一个 include 语句,告诉读者要包含哪个文件才能使用该成员。

默认值是:NO

FORCE_LOCAL_INCLUDES

如果 FORCE_LOCAL_INCLUDES 标签设置为 YES,则 Doxygen 将在文档中以双引号而不是尖括号列出包含文件。

默认值是:NO

INLINE_INFO

如果 INLINE_INFO 标签设置为 YES,则内联成员的文档中会插入标签 [inline]。

默认值是:YES

SORT_MEMBER_DOCS

如果 SORT_MEMBER_DOCS 标签设置为 YES,则 Doxygen 将按成员名称的字母顺序对文件和类成员的(详细)文档进行排序。如果设置为 NO,成员将按声明顺序显示。

默认值是:YES

SORT_BRIEF_DOCS

如果 SORT_BRIEF_DOCS 标签设置为 YES,Doxygen 将按成员名称的字母顺序对文件、命名空间和类成员的简短描述进行排序。如果设置为 NO,成员将按声明顺序显示。请注意,这也会影响类列表中类的顺序。

默认值是:NO

SORT_MEMBERS_CTORS_1ST

如果 SORT_MEMBERS_CTORS_1ST 标签设置为 YES,则 Doxygen 将对类成员的(简要和详细)文档进行排序,以便首先列出构造函数和析构函数。如果设置为 NO,则构造函数将按 SORT_BRIEF_DOCSSORT_MEMBER_DOCS 定义的相应顺序出现。

注意
如果 SORT_BRIEF_DOCS 设置为 NO,则此选项在排序简要成员文档时将被忽略。
如果 SORT_MEMBER_DOCS 设置为 NO,则此选项在排序详细成员文档时将被忽略。

默认值是:NO

SORT_GROUP_NAMES

如果 SORT_GROUP_NAMES 标签设置为 YES,则 Doxygen 将按字母顺序对组名层次结构进行排序。如果设置为 NO,则组名将按其定义的顺序显示。

默认值是:NO

SORT_BY_SCOPE_NAME

如果 SORT_BY_SCOPE_NAME 标签设置为 YES,则类列表将按完全限定名称(包括命名空间)排序。如果设置为 NO,则类列表将仅按类名排序,不包括命名空间部分。

注意
如果 HIDE_SCOPE_NAMES 设置为 YES,则此选项不是很有用。
此选项仅适用于类列表,不适用于字母顺序列表。

默认值是:NO

STRICT_PROTO_MATCHING

如果启用 STRICT_PROTO_MATCHING 选项,并且 Doxygen 未能正确解析函数的所有参数类型,它将拒绝原型与成员函数实现之间的匹配,即使只有一个候选或者通过简单字符串匹配可以明显选择哪个候选。通过禁用 STRICT_PROTO_MATCHING,Doxygen 在这种情况下仍将接受原型与实现之间的匹配。

默认值是:NO

GENERATE_TODOLIST

GENERATE_TODOLIST 标签可用于启用 (YES) 或禁用 (NO) 待办事项列表。此列表是通过在文档中放置 \todo 命令创建的。

默认值是:YES

GENERATE_TESTLIST

GENERATE_TESTLIST 标签可用于启用 (YES) 或禁用 (NO) 测试列表。此列表是通过在文档中放置 \test 命令创建的。

默认值是:YES

GENERATE_BUGLIST

GENERATE_BUGLIST 标签可用于启用 (YES) 或禁用 (NO) 错误列表。此列表是通过在文档中放置 \bug 命令创建的。

默认值是:YES

GENERATE_DEPRECATEDLIST

GENERATE_DEPRECATEDLIST 标签可用于启用 (YES) 或禁用 (NO) 已弃用列表。此列表是通过在文档中放置 \deprecated 命令创建的。

默认值是:YES

ENABLED_SECTIONS

ENABLED_SECTIONS 标签可用于启用条件文档部分,由 \if <section_label> ... \endif\cond <section_label> ... \endcond 块标记。

MAX_INITIALIZER_LINES

MAX_INITIALIZER_LINES 标签确定变量或宏/定义的初始值在文档中显示的最大行数。如果初始化器包含的行数超过此处指定的值,它将被隐藏。使用 0 值完全隐藏初始化器。无论此设置如何,单个变量和宏/定义的显示值都可以通过文档中的 \showinitializer\hideinitializer 命令控制。

最小值:0,最大值:10000,默认值:30

SHOW_USED_FILES

SHOW_USED_FILES 标签设置为 NO 以禁用在类和结构体文档底部生成的文件列表。如果设置为 YES,则列表将提及用于生成文档的文件。

默认值是:YES

SHOW_FILES

SHOW_FILES 标签设置为 NO 以禁用“文件”页面的生成。这将从快速索引和文件夹树视图(如果指定)中删除“文件”条目。

默认值是:YES

SHOW_NAMESPACES

SHOW_NAMESPACES 标签设置为 NO 以禁用“命名空间”页面的生成。这将从快速索引和文件夹树视图(如果指定)中删除“命名空间”条目。

默认值是:YES

FILE_VERSION_FILTER

FILE_VERSION_FILTER 标签可用于指定 Doxygen 应调用以获取每个文件的当前版本(通常来自版本控制系统)的程序或脚本。Doxygen 将通过执行(通过 popen())命令 command input-file 来调用程序,其中 commandFILE_VERSION_FILTER 标签的值,input-file 是 Doxygen 提供的输入文件的名称。程序写入标准输出的任何内容都将用作文件版本。

使用 shell 脚本作为 Unix 过滤器示例

 FILE_VERSION_FILTER = "/bin/sh versionfilter.sh"


CVS 的 shell 脚本示例

#!/bin/sh
cvs status $1 | sed -n 's/^[ \‍]*Working revision:[ \t]*\‍([0-9][0-9\.]*\‍).*/\1/p'


Subversion 的 shell 脚本示例

#!/bin/sh
svn stat -v $1 | sed -n 's/^[ A-Z?\*|!]\{1,15\}/r/;s/ \{1,15\}/\/r/;s/ .*//p'


ClearCase 的过滤器示例

FILE_VERSION_FILTER = "cleartool desc -fmt \%Vn"

LAYOUT_FILE

LAYOUT_FILE 标签可用于指定一个布局文件,该文件将由 Doxygen 解析。布局文件以独立于输出格式的方式控制生成的输出文件的全局结构。要创建表示 Doxygen 默认设置的布局文件,请使用 -l 选项运行 Doxygen。您可以选择在选项后指定文件名,如果省略,将使用 DoxygenLayout.xml 作为布局文件的名称。另请参阅 更改页面布局 部分以获取信息。
请注意,如果您从包含名为 DoxygenLayout.xml 的目录运行 Doxygen,即使 LAYOUT_FILE 标签留空,Doxygen 也会自动解析它。

CITE_BIB_FILES

CITE_BIB_FILES 标签可用于指定一个或多个包含引用定义的 bib 文件。这必须是 .bib 文件的列表。如果省略 .bib 扩展名,将自动添加。这需要安装 bibtex 工具。有关详细信息,请参阅 https://en.wikipedia.org/wiki/BibTeX。对于 $\mbox{\LaTeX}$,可以使用 LATEX_BIB_STYLE 控制参考文献的样式。要使用此功能,您需要 bibtexperl 可在搜索路径中找到。另请参阅 \cite 以获取如何创建引用的信息。

EXTERNAL_TOOL_PATH
EXTERNAL_TOOL_PATH 标签可用于扩展搜索路径(PATH 环境变量),以便可以找到 latexgs 等外部工具。
注意
使用 EXTERNAL_TOOL_PATH 指定的目录将按照指定的顺序添加到 PATH 变量已指定的路径之前。
此选项对于 macOS 14(Sonoma)及更高版本特别有用,当从 Doxywizard 运行 Doxygen 时,因为在这种情况下,用户对 PATH 的任何自定义更改都将被忽略。macOS 上的典型示例是设置
EXTERNAL_TOOL_PATH = /Library/TeX/texbin /usr/local/bin
连同标准路径,doxygen 在启动外部工具时使用的完整搜索路径将变为
PATH=/Library/TeX/texbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

警告和进度消息相关配置选项

QUIET

QUIET 标签可用于打开/关闭 Doxygen 生成到标准输出的消息。如果 QUIET 设置为 YES,则表示消息已关闭。

默认值是:NO

WARNINGS

WARNINGS 标签可用于打开/关闭 Doxygen 生成到标准错误 (stderr) 的警告消息。如果 WARNINGS 设置为 YES,则表示警告已打开。
提示:在编写文档时打开警告。

默认值是:YES

WARN_IF_UNDOCUMENTED

如果 WARN_IF_UNDOCUMENTED 标签设置为 YES,则 Doxygen 将为未文档化的成员生成警告。如果 EXTRACT_ALL 设置为 YES,则此标志将自动禁用。

默认值是:YES

WARN_IF_DOC_ERROR

如果 WARN_IF_DOC_ERROR 标签设置为 YES,Doxygen 将为文档中的潜在错误生成警告,例如在已文档化函数中重复文档某些参数,或文档不存在的参数,或错误使用标记命令。

默认值是:YES

WARN_IF_INCOMPLETE_DOC

如果 WARN_IF_INCOMPLETE_DOC 设置为 YES,Doxygen 将警告不完整的函数参数文档。如果设置为 NO,Doxygen 将接受某些参数没有文档而不发出警告。

默认值是:YES

WARN_NO_PARAMDOC

WARN_NO_PARAMDOC 选项可以启用,以获取有关已文档化但其参数或返回值没有文档的函数的警告。如果设置为 NO,Doxygen 将仅警告错误的参数文档,而不警告文档的缺失。如果 EXTRACT_ALL 设置为 YES,则此标志将自动禁用。另请参阅 WARN_IF_INCOMPLETE_DOC

默认值是:NO

WARN_IF_UNDOC_ENUM_VAL

如果 WARN_IF_UNDOC_ENUM_VAL 选项设置为 YES,Doxygen 将警告未文档化的枚举值。如果设置为 NO,Doxygen 将接受未文档化的枚举值。如果 EXTRACT_ALL 设置为 YES,则此标志将自动禁用。

默认值是:NO

WARN_LAYOUT_FILE

如果 WARN_LAYOUT_FILE 选项设置为 YES,Doxygen 将警告在解析用户定义布局文件时发现的问题,例如缺少或错误的元素。另请参阅 LAYOUT_FILE 以获取详细信息。如果设置为 NO,则布局文件的问题将被抑制。

默认值是:YES

WARN_AS_ERROR

如果 WARN_AS_ERROR 标签设置为 YES,则 Doxygen 在遇到警告时将立即停止。如果 WARN_AS_ERROR 标签设置为 FAIL_ON_WARNINGS,则 Doxygen 将继续运行,就像 WARN_AS_ERROR 标签设置为 NO 一样,但在 Doxygen 过程结束时,Doxygen 将返回非零状态。如果 WARN_AS_ERROR 标签设置为 FAIL_ON_WARNINGS_PRINT,则 Doxygen 的行为类似于 FAIL_ON_WARNINGS,但在未定义 WARN_LOGFILE 的情况下,Doxygen 不会在其他消息之间写入警告消息,而是在运行结束时写入,如果定义了 WARN_LOGFILE,警告消息除了在定义的文件中显示外,还会在运行结束时显示,除非 WARN_LOGFILE 定义为 -,即标准输出 (stdout),在这种情况下,行为将与设置为 FAIL_ON_WARNINGS 相同。

可能的值是:NO, YES, FAIL_ON_WARNINGSFAIL_ON_WARNINGS_PRINT

默认值是:NO

WARN_FORMAT

WARN_FORMAT 标签决定了 Doxygen 可以生成的警告消息的格式。字符串应包含 $file$line$text 标签,它们将分别替换为警告源的文件名和行号以及警告文本。可选地,格式可以包含 $version,它将替换为文件的版本(如果可以通过 FILE_VERSION_FILTER 获取)

另请参阅
WARN_LINE_FORMAT

默认值是:$file:$line: $text

WARN_LINE_FORMAT

WARN_FORMAT 命令的 $text 部分,可能会给出对更具体位置的引用。为了更容易跳到此位置(在 Doxygen 外部),用户可以定义自定义的“剪切”/“粘贴”字符串。

示例

  WARN_LINE_FORMAT = "'vi $file +$line'"
另请参阅
WARN_FORMAT

默认值是:at line $line of file $file

WARN_LOGFILE

WARN_LOGFILE 标签可用于指定一个文件,警告和错误消息应写入其中。如果留空,输出将写入标准错误 (stderr)。如果指定的文件无法打开写入,警告和错误消息将写入标准错误。当文件指定为 - 时,警告和错误消息将写入标准输出 (stdout)。

输入文件相关配置选项

INPUT

INPUT 标签用于指定包含文档化源文件的文件和/或目录。您可以输入文件名,如 myfile.cpp 或目录,如 /usr/src/myproject。用空格分隔文件或目录。另请参阅 FILE_PATTERNSEXTENSION_MAPPING

注意
如果此标签为空,则搜索当前目录。

INPUT_ENCODING

此标签可用于指定 Doxygen 解析的源文件的字符编码。Doxygen 内部使用 UTF-8 编码。Doxygen 使用 libiconv(或内置于 libc 中的 iconv)进行转码。有关可能的编码列表,请参阅 libiconv 文档

另请参阅
INPUT_FILE_ENCODING

默认值是:UTF-8

INPUT_FILE_ENCODING

此标签可用于指定 Doxygen 解析的源文件的字符编码。INPUT_FILE_ENCODING 标签可用于按文件模式指定字符编码。Doxygen 会将文件名与每个模式进行比较,并在匹配时应用编码,而不是默认的 INPUT_ENCODING。字符编码是一个列表,形式为:pattern=encoding(如 *.php=ISO-8859-1)。

另请参阅
INPUT_ENCODING 以获取有关支持编码的更多信息。

FILE_PATTERNS

如果 INPUT 标签的值包含目录,您可以使用 FILE_PATTERNS 标签指定一个或多个通配符模式(如 *.cpp*.h)以筛选目录中的源文件。
请注意,对于自定义扩展名或不直接支持的扩展名,您还需要为该扩展名设置 EXTENSION_MAPPING,否则 Doxygen 不会读取这些文件。
请注意,默认检查的文件模式列表可能与 默认文件扩展名映射 列表不同。
如果留空,则测试以下模式:*.c*.cc*.cxx*.cxxm*.cpp*.cppm*.ccm*.c++*.c++m*.java*.ii*.ixx*.ipp*.i++*.inl*.idl*.ddl*.odl*.h*.hh*.hxx*.hpp*.h++*.l*.cs*.d*.php*.php4*.php5*.phtml*.inc*.m*.markdown*.md*.mm*.dox(以 Doxygen C 注释形式提供)、*.py*.pyw*.f90*.f95*.f03*.f08*.f18*.f*.for*.vhd*.vhdl*.ucf*.qsf*.ice

RECURSIVE

RECURSIVE 标签可用于指定是否也应在子目录中搜索输入文件。

默认值是:NO

EXCLUDE

EXCLUDE 标签可用于指定应从 INPUT 源文件中排除的文件和/或目录。这样,您可以轻松地从以 INPUT 标签指定的根目录树中排除子目录。
请注意,相对路径是相对于 Doxygen 运行的目录。

EXCLUDE_SYMLINKS

EXCLUDE_SYMLINKS 标签可用于选择是否排除作为符号链接(Unix 文件系统功能)的文件或目录。

默认值是:NO

EXCLUDE_PATTERNS

如果 INPUT 标签的值包含目录,您可以使用 EXCLUDE_PATTERNS 标签指定一个或多个通配符模式以从这些目录中排除某些文件。
请注意,通配符是针对具有绝对路径的文件进行匹配的,因此要排除所有测试目录,例如,使用模式 *``/test/``*

EXCLUDE_SYMBOLS

EXCLUDE_SYMBOLS 标签可用于指定一个或多个应从输出中排除的符号名称(命名空间、类、函数等)。符号名称可以是完全限定名称、单词,或者如果使用通配符 *,则可以是子字符串。示例:ANamespaceAClassANamespace::AClassANamespace::*Test

EXAMPLE_PATH

EXAMPLE_PATH 标签可用于指定一个或多个包含包含(参见 \include 命令)示例代码片段的文件或目录。

EXAMPLE_PATTERNS

如果 EXAMPLE_PATH 标签的值包含目录,您可以使用 EXAMPLE_PATTERNS 标签指定一个或多个通配符模式(如 *.cpp*.h)以筛选目录中的源文件。如果留空,则包含所有文件。

EXAMPLE_RECURSIVE

如果将 EXAMPLE_RECURSIVE 标签设置为 YES,则无论 RECURSIVE 标签的值如何,都将搜索子目录以查找与 \include\dontinclude 命令一起使用的输入文件。

默认值是:NO

IMAGE_PATH

IMAGE_PATH 标签可用于指定一个或多个文件或目录,这些文件或目录包含要包含在文档中的图像(请参阅 \image 命令)。

INPUT_FILTER

INPUT_FILTER 标签可用于指定 Doxygen 应为每个输入文件调用的程序进行过滤。Doxygen 将通过执行(通过 popen())以下命令来调用过滤程序:
<filter> <input-file>
其中 <filter>INPUT_FILTER 标签的值,<input-file> 是输入文件的名称。Doxygen 将使用过滤程序写入标准输出的内容。如果指定了 FILTER_PATTERNS,则此标签将被忽略。
请注意,过滤器不得添加或删除行;它在扫描代码之前应用,但不在生成输出代码时应用。如果添加或删除行,则锚点将不会正确放置。
请注意,Doxygen 将使用处理并写入标准输出的数据进行进一步处理,因此不应将其他任何内容(如调试语句或使用的命令(因此在 Windows 批处理文件中始终使用 @echo OFF))写入标准输出。
请注意,对于自定义扩展或不直接支持的扩展,您还需要为扩展设置 EXTENSION_MAPPING,否则文件将不会被 Doxygen 正确处理。

FILTER_PATTERNS

FILTER_PATTERNS 标签可用于按文件模式指定过滤器。Doxygen 将文件名称与每个模式进行比较,如果匹配则应用过滤器。过滤器是以下形式的列表:pattern=filter(例如 *.cpp=my_cpp_filter)。有关如何使用过滤器的更多信息,请参阅 INPUT_FILTER。如果 FILTER_PATTERNS 标签为空或没有模式与文件名称匹配,则应用 INPUT_FILTER
请注意,对于自定义扩展或不直接支持的扩展,您还需要为扩展设置 EXTENSION_MAPPING,否则文件将不会被 Doxygen 正确处理。

FILTER_SOURCE_FILES

如果 FILTER_SOURCE_FILES 标签设置为 YES,则输入过滤器(如果使用 INPUT_FILTER 设置)也将用于过滤用于生成要浏览的源文件(即当 SOURCE_BROWSER 设置为 YES 时)的输入文件。

默认值是:NO

FILTER_SOURCE_PATTERNS

FILTER_SOURCE_PATTERNS 标签可用于按文件模式指定源过滤器。模式将覆盖 FILTER_PATTERN 的设置(如果有),也可以使用 *.ext=(因此不指定过滤器名称)禁用特定模式的源过滤。

此标签要求将 FILTER_SOURCE_FILES 标签设置为 YES

USE_MDFILE_AS_MAINPAGE

如果 USE_MDFILE_AS_MAINPAGE 标签引用作为输入一部分的 markdown 文件的名称,其内容将放置在主页(index.html)上。如果您在例如 GitHub 上有一个项目,并且希望将介绍页面也用于 Doxygen 输出,这会很有用。

IMPLICIT_DIR_DOCS

如果 IMPLICIT_DIR_DOCS 标签设置为 YES,则项目根目录的子目录中找到的任何 README.md 文件都将用作该子目录的文档,除非 README.md\dir\page\mainpage 命令开头。如果设置为 NO,则 README.md 文件需要以显式的 \dir 命令开头才能用作目录文档。

默认值是:YES

FORTRAN_COMMENT_AFTER

Fortran 标准规定,对于固定格式的 Fortran 代码,从位置 72 开始的所有字符都应视为注释。一个常见的扩展是允许在自动注释开始之前有更长的行。设置 FORTRAN_COMMENT_AFTER 也可以在自动注释开始之前处理更长的行。

最小值:7,最大值:10000,默认值:72

与源浏览相关的配置选项

SOURCE_BROWSER

如果 SOURCE_BROWSER 标签设置为 YES,则将生成源文件列表。有文档的实体将与这些源文件交叉引用。
注意:要去除生成输出中的所有源代码,请确保 VERBATIM_HEADERS 也设置为 NO

默认值是:NO

INLINE_SOURCES

INLINE_SOURCES 标签设置为 YES 将把函数体、多行宏、枚举或列表初始化的变量直接包含到文档中。

默认值是:NO

STRIP_CODE_COMMENTS

STRIP_CODE_COMMENTS 标签设置为 YES 将指示 Doxygen 隐藏生成的源代码片段中的任何特殊注释块。普通的 C、C++ 和 Fortran 注释将始终可见。

默认值是:YES

REFERENCED_BY_RELATION

如果 REFERENCED_BY_RELATION 标签设置为 YES,则对于每个有文档的实体,所有引用它的有文档函数都将列出。

默认值是:NO

REFERENCES_RELATION

如果 REFERENCES_RELATION 标签设置为 YES,则对于每个有文档的函数,所有被该函数调用/使用的有文档实体都将列出。

默认值是:NO

REFERENCES_LINK_SOURCE

如果 REFERENCES_LINK_SOURCE 标签设置为 YES 并且 SOURCE_BROWSER 标签设置为 YES,则 REFERENCES_RELATIONREFERENCED_BY_RELATION 列表中的函数超链接将链接到源代码。否则,它们将链接到文档。

默认值是:YES

SOURCE_TOOLTIPS

如果 SOURCE_TOOLTIPS 已启用(默认),则将鼠标悬停在源代码中的超链接上将显示一个工具提示,其中包含额外信息,例如原型、简要说明以及指向定义和文档的链接。由于这将使 HTML 文件更大,并使大文件加载速度稍慢,您可以选择禁用此功能。

默认值是:YES

此标签要求将 SOURCE_BROWSER 标签设置为 YES

USE_HTAGS

如果 USE_HTAGS 标签设置为 YES,则对源代码的引用将指向由 htags(1) 工具生成的 HTML,而不是 Doxygen 内置的源代码浏览器。htags 工具是 GNU 的全局源代码标记系统的一部分(请参阅 https://gnu.ac.cn/software/global/global.html)。您需要 4.8.6 或更高版本。
要使用它,请执行以下操作:

  1. 安装最新版本的 global
  2. 在配置文件中启用 SOURCE_BROWSERUSE_HTAGS
  3. 确保 INPUT 指向源代码树的根目录
  4. 正常运行 doxygen
    Doxygen 将调用 htags(而 htags 又将调用 gtags),因此这些工具必须可以通过命令行访问(即在搜索路径中)。
    结果:Doxygen 生成的源代码浏览器将不再使用,而是链接到 htags 的输出。

默认值是:NO

此标签要求将 SOURCE_BROWSER 标签设置为 YES

VERBATIM_HEADERS

如果 VERBATIM_HEADERS 标签设置为 YES,则 Doxygen 将为每个指定了包含的类生成头文件的逐字副本。设置为 NO 禁用此功能。

另请参阅
\class 节。

默认值是:YES

CLANG_ASSISTED_PARSING

如果 CLANG_ASSISTED_PARSING 标签设置为 YES,Doxygen 将使用 clang 解析器进行更准确的解析,但会降低性能。这对于模板丰富的 C++ 代码特别有用,因为 Doxygen 的内置解析器缺乏必要的类型信息。

注意
此选项的可用性取决于 Doxygen 是否使用 CMake 的 -Duse_libclang=ON 选项生成。

默认值是:NO

CLANG_ADD_INC_PATHS

如果 CLANG_ASSISTED_PARSING 标签设置为 YES 并且 CLANG_ADD_INC_PATHS 标签设置为 YES,则 Doxygen 会将每个输入的目录添加到包含路径中。

默认值是:YES

此标签要求将 CLANG_ASSISTED_PARSING 标签设置为 YES

CLANG_OPTIONS

如果启用了 clang 辅助解析,您可以向编译器提供您通常在调用编译器时使用的命令行选项。请注意,Doxygen 已经为 INPUTINCLUDE_PATH 指定的文件和目录设置了包含路径。

此标签要求将 CLANG_ASSISTED_PARSING 标签设置为 YES

CLANG_DATABASE_PATH

如果启用了 clang 辅助解析,您可以向 clang 解析器提供包含名为 compile_commands.json 文件的目录路径。此文件是 编译数据库,其中包含构建源文件时使用的选项。这等同于向 clang 工具(如 clang-check)指定 -p 选项。这些选项将传递给解析器。使用 CLANG_OPTIONS 指定的任何选项也将添加。

注意
此选项的可用性取决于 Doxygen 是否使用 CMake 的 -Duse_libclang=ON 选项生成。

与字母顺序类索引相关的配置选项

ALPHABETICAL_INDEX

如果 ALPHABETICAL_INDEX 标签设置为 YES,则将生成所有复合的字母顺序索引。如果项目包含大量类、结构、联合或接口,则启用此选项。

默认值是:YES

IGNORE_PREFIX

IGNORE_PREFIX 标签可用于指定在生成索引标题时应忽略的前缀(或前缀列表)。IGNORE_PREFIX 标签适用于类、函数和成员名称。实体将放置在字母列表中的第一个字母下,该字母是删除前缀后剩余的实体名称的第一个字母。

此标签要求将 ALPHABETICAL_INDEX 标签设置为 YES

与 HTML 输出相关的配置选项

GENERATE_HTML

如果 GENERATE_HTML 标签设置为 YES,Doxygen 将生成 HTML 输出

默认值是:YES

HTML_OUTPUT

HTML_OUTPUT 标签用于指定 HTML 文档的放置位置。如果输入相对路径,则 OUTPUT_DIRECTORY 的值将放在前面。

默认目录是:html

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_FILE_EXTENSION

HTML_FILE_EXTENSION 标签可用于指定每个生成的 HTML 页面的文件扩展名(例如:.htm, .php, .asp)。

默认值是:.html

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_HEADER

HTML_HEADER 标签可用于为每个生成的 HTML 页面指定用户定义的 HTML 头文件。如果标签留空,Doxygen 将生成标准头。
为了获得有效的 HTML,头文件需要包含 Doxygen 所需的任何脚本和样式表,这取决于所使用的配置选项(例如 GENERATE_TREEVIEW 的设置)。强烈建议使用以下方式从默认头开始:

doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFile

然后修改文件 new_header.html

另请参阅 Doxygen 使用 部分,了解如何生成 Doxygen 通常使用的默认头。

注意
头文件可能会更改,因此通常在升级到 Doxygen 的较新版本时必须重新生成默认头。以下标记在头和页脚中具有特殊含义:
$title
将替换为页面的标题。
$datetime
将替换为当前日期和时间。
$date
将替换为当前日期。
$time
将替换为当前时间。
$year
将替换为当前年份。
$showdate(<format>)
将根据 <format> 指定的格式替换为当前日期和时间。<format> 遵循 \showdate 命令指定的规则,但 <format> 中不允许出现 )
$doxygenversion
将替换为 Doxygen 的版本
$projectname
将替换为项目名称(请参阅 PROJECT_NAME
$projectnumber
将替换为项目编号(请参阅 PROJECT_NUMBER
$projectbrief
将替换为项目简要描述(请参阅 PROJECT_BRIEF
$projectlogo
将替换为项目徽标(请参阅 PROJECT_LOGO
$generatedby
将替换为依赖于输出语言的文本“Generated by”,或者当设置了 TIMESTAMP 时,替换为依赖于输出语言的文本“Generated on $datetime for $projectname by”。
$stylesheet
将替换为 HTML_STYLESHEET 的设置,除非它为空或文件,在这种情况下它将被默认设置 doxygen.css 替换。
$extrastylesheet
将替换为 HTML_EXTRA_STYLESHEET 的设置,包括每个额外样式表所需的 HTML 标签。
$treeview
将替换为导航树所需的 JavaScript 和样式表的链接(如果禁用了 GENERATE_TREEVIEW,则为空字符串)。
$search
将替换为搜索引擎所需的 JavaScript 和样式表的链接(如果禁用了 SEARCHENGINE,则为空字符串)。
$searchbox
将替换为显示搜索框所需的 HTML 代码(如果禁用了 SEARCHENGINE,则为空字符串)。
$mathjax
将替换为 MathJax 功能所需的 JavaScript 和样式表的链接(如果禁用了 USE_MATHJAX,则为空字符串)。
$relpath^
如果启用了 CREATE_SUBDIRS,则可以使用命令 $relpath^ 生成到 HTML 输出目录根目录的相对路径,例如使用 $relpath^doxygen.css 引用标准样式表。
$navpath
将替换为 GENERATE_TREEVIEW 所需的路径

为了处理依赖于配置设置的页眉和页脚布局差异,页眉还可以包含特殊块,这些块将根据配置复制到输出或跳过。此类块具有以下形式:

 <!--BEGIN BLOCKNAME-->
 Some context copied when condition BLOCKNAME holds
 <!--END BLOCKNAME-->
 <!--BEGIN !BLOCKNAME-->
 Some context copied when condition BLOCKNAME does not hold
 <!--END !BLOCKNAME-->

支持以下块名称:

DISABLE_INDEX
如果启用了 DISABLE_INDEX 选项(即禁用索引时),则此块中的内容将复制到输出。
GENERATE_TREEVIEW
如果启用了 GENERATE_TREEVIEW 选项,则此块中的内容将复制到输出。
SEARCHENGINE
如果启用了 SEARCHENGINE 选项,则此块中的内容将复制到输出。
PROJECT_NAME
如果 PROJECT_NAME 选项不为空,则此块中的内容将复制到输出。
PROJECT_NUMBER
如果 PROJECT_NUMBER 选项不为空,则此块中的内容将复制到输出。
PROJECT_BRIEF
如果 PROJECT_BRIEF 选项不为空,则此块中的内容将复制到输出。
PROJECT_LOGO
如果 PROJECT_LOGO 选项不为空,则此块中的内容将复制到输出。
FULL_SIDEBAR
如果 FULL_SIDEBARDISABLE_INDEXGENERATE_TREEVIEW 选项都已启用,则此块中的内容将复制到输出。
TITLEAREA
如果每个页面顶部显示标题,则此块中的内容将复制到输出。当 PROJECT_NAMEPROJECT_BRIEFPROJECT_LOGO 被填充,或者 DISABLE_INDEXSEARCHENGINE 都已启用时,情况就是如此。

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_FOOTER

HTML_FOOTER 标签可用于为每个生成的 HTML 页面指定用户定义的 HTML 页脚。如果标签留空,Doxygen 将生成标准页脚。

有关如何生成默认页脚以及页脚中可以使用哪些特殊命令的更多信息,请参阅 HTML_HEADER

另请参阅 Doxygen 使用 部分,了解如何生成 Doxygen 通常使用的默认页脚。

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_STYLESHEET

HTML_STYLESHEET 标签可用于指定每个 HTML 页面使用的用户级联样式表。它可用于微调 HTML 输出的外观。如果留空,Doxygen 将生成默认样式表。

另请参阅 Doxygen 使用 部分,了解如何生成 Doxygen 通常使用的样式表。

注意
建议使用 HTML_EXTRA_STYLESHEET 而不是此标签,因为它更健壮,并且此标签 (HTML_STYLESHEET) 将在未来变得过时。

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_EXTRA_STYLESHEET
HTML_EXTRA_STYLESHEET 标签可用于指定在 Doxygen 创建的标准样式表之后包含的附加用户定义的级联样式表。使用此选项可以覆盖某些样式方面。这比使用 HTML_STYLESHEET 更可取,因为它不替换标准样式表,因此对未来的更新更健壮。Doxygen 会将样式表文件复制到输出目录。
注意
额外样式表文件的顺序很重要(例如,列表中的最后一个样式表会覆盖列表中前一个的设置)。
由于当前无法在 Webkit/Chromium 中覆盖滚动条样式,因此如果指定了一个或多个额外样式表,则样式将从默认的 doxygen.css 中省略。因此,如果需要滚动条自定义,则必须明确添加。这是一个示例样式表,它使内容区域具有固定宽度:
body {
        background-color: #CCC;
        color: black;
        margin: 0;
}

div.contents {
        margin-bottom: 10px;
        padding: 12px;
        margin-left: auto;
        margin-right: auto;
        width: 960px;
        background-color: white;
        border-radius: 8px;
}

#titlearea {
        background-color: white;
}

hr.footer {
        display: none;
}

.footer {
        background-color: #AAA;
}
此标签要求将 GENERATE_HTML 标签设置为 YES
HTML_EXTRA_FILES

HTML_EXTRA_FILES 标签可用于指定一个或多个应复制到 HTML 输出目录的额外图像或其他源文件。请注意,这些文件将复制到基本的 HTML 输出目录。在 HTML_HEADER 和/或 HTML_FOOTER 文件中使用 $relpath^ 标记加载这些文件。在 HTML_STYLESHEET 文件中,只使用文件名。另请注意,文件将按原样复制;没有可用的命令或标记。

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_COLORSTYLE

HTML_COLORSTYLE 标签可用于指定生成的 HTML 输出应以深色或浅色主题呈现。

可能的值为:LIGHT 始终生成浅色模式输出,DARK 始终生成深色模式输出,AUTO_LIGHT 根据用户偏好自动设置模式,如果未设置偏好则使用浅色模式(默认),AUTO_DARK 根据用户偏好自动设置模式,如果未设置偏好则使用深色模式,TOGGLE 允许用户通过按钮在浅色和深色模式之间切换。

默认值是:AUTO_LIGHT

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_COLORSTYLE_HUE

HTML_COLORSTYLE_HUE 标签控制 HTML 输出的颜色。Doxygen 将根据此颜色调整样式表和背景图像中的颜色。色调以色轮上的角度表示,有关更多信息,请参阅 https://en.wikipedia.org/wiki/Hue。例如,值 0 代表红色,60 是黄色,120 是绿色,180 是青色,240 是蓝色,300 是紫色,360 又是红色。

最小值:0,最大值:359,默认值:220

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_COLORSTYLE_SAT

HTML_COLORSTYLE_SAT 标签控制 HTML 输出中颜色的纯度(或饱和度)。值为 0 时,输出将只使用灰度。值为 255 将产生最鲜艳的颜色。

最小值:0,最大值:255,默认值:100

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_COLORSTYLE_GAMMA

HTML_COLORSTYLE_GAMMA 标签控制应用于 HTML 输出颜色亮度分量的伽马校正。低于 100 的值会逐渐使输出更亮,而高于 100 的值会使输出更暗。值除以 100 是实际应用的伽马,因此 80 表示伽马为 0.8,220 表示伽马为 2.2,而 100 不改变伽马。

最小值:40,最大值:240,默认值:80

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_DYNAMIC_MENUS

如果 HTML_DYNAMIC_MENUS 标签设置为 YES,则生成的 HTML 文档将包含一个带有通过 JavaScript 动态创建的垂直导航菜单的主索引。如果禁用,导航索引将由静态嵌入在每个 HTML 页面中的多级选项卡组成。禁用此选项以支持不支持 JavaScript 的浏览器,例如 Qt 帮助浏览器。

默认值是:YES

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_DYNAMIC_SECTIONS

如果 HTML_DYNAMIC_SECTIONS 标签设置为 YES,则生成的 HTML 文档将包含可以在页面加载后隐藏和显示的节。

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_CODE_FOLDING

如果 HTML_CODE_FOLDING 标签设置为 YES,则类和函数可以在生成的 HTML 源代码中动态折叠和展开。

默认值是:YES

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_COPY_CLIPBOARD

如果 HTML_COPY_CLIPBOARD 标签设置为 YES,Doxygen 将在代码和文本片段的右上角显示一个图标,允许用户将其内容复制到剪贴板。请注意,这仅在浏览器支持且网页通过 安全上下文 提供服务时才有效,即使用 https: 或 file: 协议。

默认值是:YES

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_PROJECT_COOKIE

Doxygen 将一些设置持久存储在浏览器中(例如通过 cookie)。默认情况下,这些设置适用于 Doxygen 生成的所有项目的所有 HTML 页面。HTML_PROJECT_COOKIE 标签可用于将设置存储在项目特定的键下,以便用户偏好将单独存储。

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_INDEX_NUM_ENTRIES

使用 HTML_INDEX_NUM_ENTRIES 可以控制最初在各种树形索引中显示的首选条目数量;用户可以稍后动态展开和折叠条目。Doxygen 会将树展开到这样的级别,即最多显示指定数量的条目(除非完全折叠的树已经超过此数量)。因此,将条目数设置为 1 将默认生成一个完全折叠的树。0 是一个特殊值,表示无限数量的条目,将默认生成一个完全展开的树。

最小值:0,最大值:9999,默认值:100

此标签要求将 GENERATE_HTML 标签设置为 YES

GENERATE_DOCSET

如果 GENERATE_DOCSET 标签设置为 YES,则将生成额外的索引文件,这些文件可用作 Apple 的 Xcode 3 集成开发环境(随 OSX 10.5 (Leopard) 引入)的输入。要创建文档集,Doxygen 将在 HTML 输出目录中生成一个 Makefile。运行 make 将在该目录中生成 docset,运行 make install 将把 docset 安装到 ~/Library/Developer/Shared/Documentation/DocSets,以便 Xcode 在启动时找到它。有关更多信息,请参阅 https://developer.apple.com/library/archive/featurearticles/DoxygenXcode/_index.html

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

DOCSET_FEEDNAME

此标签确定 docset feed 的名称。文档 feed 提供了一个伞,单个提供者(如公司或产品套件)的多个文档集可以归类在其下。

默认值是:Doxygen generated docs

此标签要求将 GENERATE_DOCSET 标签设置为 YES

DOCSET_FEEDURL

此标签确定 docset feed 的 URL。文档 feed 提供了一个伞,单个提供者(如公司或产品套件)的多个文档集可以归类在其下。

此标签要求将 GENERATE_DOCSET 标签设置为 YES

DOCSET_BUNDLE_ID

此标签指定应唯一标识文档集包的字符串。这应该是一个反向域名样式字符串,例如 com.mycompany.MyDocSet。Doxygen 将在名称后附加 .docset

默认值是:org.doxygen.Project

此标签要求将 GENERATE_DOCSET 标签设置为 YES

DOCSET_PUBLISHER_ID

DOCSET_PUBLISHER_ID 标签指定应唯一标识文档发布者的字符串。这应该是一个反向域名样式字符串,例如 com.mycompany.MyDocSet.documentation

默认值是:org.doxygen.Publisher

此标签要求将 GENERATE_DOCSET 标签设置为 YES

DOCSET_PUBLISHER_NAME

DOCSET_PUBLISHER_NAME 标签标识文档发布者。

默认值是:Publisher

此标签要求将 GENERATE_DOCSET 标签设置为 YES

GENERATE_HTMLHELP

如果 GENERATE_HTMLHELP 标签设置为 YES,则 Doxygen 将生成三个额外的 HTML 索引文件:index.hhpindex.hhcindex.hhkindex.hhp 是一个项目文件,可由 Windows 上的 Microsoft HTML Help Workshop 读取。在 2021 年初,Microsoft 将原始页面(包含下载链接)下线(HTML Help Workshop 已进入维护模式多年)。您可以从网络存档下载 HTML Help Workshop,地址为 安装可执行文件
HTML Help Workshop 包含一个编译器,可以将 Doxygen 生成的所有 HTML 输出转换为一个编译后的 HTML 文件(.chm)。编译后的 HTML 文件现在用作 Windows 98 帮助格式,并且将来将取代所有 Windows 平台上的旧 Windows 帮助格式(.hlp)。压缩的 HTML 文件还包含索引、目录,您可以在文档中搜索单词。HTML Workshop 还包含一个用于压缩 HTML 文件的查看器。

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

CHM_FILE

CHM_FILE 标签可用于指定结果 .chm 文件的文件名。如果结果不应写入 html 输出目录,您可以在文件前面添加路径。

此标签要求将 GENERATE_HTMLHELP 标签设置为 YES

HHC_LOCATION

HHC_LOCATION 标签可用于指定 HTML 帮助编译器 (hhc.exe) 的位置(包括文件名的绝对路径)。如果非空,Doxygen 将尝试对生成的 index.hhp 运行 HTML 帮助编译器。

文件必须指定完整路径。

此标签要求将 GENERATE_HTMLHELP 标签设置为 YES

GENERATE_CHI

GENERATE_CHI 标志控制是否生成单独的 .chi 索引文件 (YES) 或将其包含在主 .chm 文件中 (NO)。

默认值是:NO

此标签要求将 GENERATE_HTMLHELP 标签设置为 YES

CHM_INDEX_ENCODING

CHM_INDEX_ENCODING 用于编码 HtmlHelp 索引 (hhk)、内容 (hhc) 和项目文件内容。

此标签要求将 GENERATE_HTMLHELP 标签设置为 YES

BINARY_TOC

BINARY_TOC 标志控制在 .chm 文件中生成二进制目录 (YES) 还是普通目录 (NO)。此外,它还启用了 PreviousNext 按钮。

默认值是:NO

此标签要求将 GENERATE_HTMLHELP 标签设置为 YES

TOC_EXPAND

TOC_EXPAND 标志可以设置为 YES,以便为 HTML 帮助文档的目录和树视图添加额外的组员项目。

默认值是:NO

此标签要求将 GENERATE_HTMLHELP 标签设置为 YES

SITEMAP_URL

SITEMAP_URL 标签用于指定用户在文档部署期间将生成的文档放置在服务器上的完整 URL。生成的站点地图名为 sitemap.xml,放置在 HTML_OUTPUT 指定的目录中。如果未指定 SITEMAP_URL,则不生成站点地图。有关站点地图协议的信息,请参阅 https://www.sitemaps.org

此标签要求将 GENERATE_HTML 标签设置为 YES

GENERATE_QHP

如果 GENERATE_QHP 标签设置为 YES 并且 QHP_NAMESPACEQHP_VIRTUAL_FOLDER 都已设置,则将生成一个额外的索引文件,该文件可用作 Qt 的 qhelpgenerator 的输入,以生成生成的 HTML 文档的 Qt 压缩帮助(.qch)。

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

QCH_FILE

如果指定了 QHG_LOCATION 标签,则 QCH_FILE 标签可用于指定结果 .qch 文件的文件名。指定的路径是相对于 HTML 输出文件夹的。

此标签要求将 GENERATE_QHP 标签设置为 YES

QHP_NAMESPACE

QHP_NAMESPACE 标签指定生成 Qt 帮助项目输出时使用的命名空间。有关更多信息,请参阅 Qt 帮助项目 / 命名空间

默认值是:org.doxygen.Project

此标签要求将 GENERATE_QHP 标签设置为 YES

QHP_VIRTUAL_FOLDER

QHP_VIRTUAL_FOLDER 标签指定生成 Qt 帮助项目输出时使用的命名空间。有关更多信息,请参阅 Qt 帮助项目 / 虚拟文件夹

默认值是:doc

此标签要求将 GENERATE_QHP 标签设置为 YES

QHP_CUST_FILTER_NAME

如果设置了 QHP_CUST_FILTER_NAME 标签,它将指定要添加的自定义过滤器的名称。有关更多信息,请参阅 Qt 帮助项目 / 自定义过滤器

此标签要求将 GENERATE_QHP 标签设置为 YES

QHP_CUST_FILTER_ATTRS

QHP_CUST_FILTER_ATTRS 标签指定要添加的自定义过滤器的属性列表。有关更多信息,请参阅 Qt 帮助项目 / 自定义过滤器

此标签要求将 GENERATE_QHP 标签设置为 YES

QHP_SECT_FILTER_ATTRS

QHP_SECT_FILTER_ATTRS 标签指定此项目筛选器部分匹配的属性列表。Qt 帮助项目 / 筛选器属性

此标签要求将 GENERATE_QHP 标签设置为 YES

QHG_LOCATION

QHG_LOCATION 标签可用于指定 Qt 的 qhelpgenerator 的位置(包括文件名的绝对路径)。如果非空,Doxygen 将尝试对生成的 .qhp 文件运行 qhelpgenerator。

此标签要求将 GENERATE_QHP 标签设置为 YES

GENERATE_ECLIPSEHELP

如果 GENERATE_ECLIPSEHELP 标签设置为 YES,除了 HTML 文件外,还将生成额外的索引文件,它们共同构成一个 Eclipse 帮助插件。

要安装此插件并使其在 Eclipse 的帮助内容菜单下可用,需要将包含 HTML 和 XML 文件的目录内容复制到 eclipse 的 plugins 目录中。plugins 目录中的目录名称应与 ECLIPSE_DOC_ID 值相同。

复制后,Eclipse 需要重新启动才能显示帮助。

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

ECLIPSE_DOC_ID

Eclipse 帮助插件的唯一标识符。安装插件时,包含 HTML 和 XML 文件的目录名称也应使用此名称。每个文档集都应有自己的标识符。

默认值是:org.doxygen.Project

此标签要求将 GENERATE_ECLIPSEHELP 标签设置为 YES

DISABLE_INDEX

如果您想完全控制生成的 HTML 页面的布局,可能需要禁用索引并用您自己的索引替换。DISABLE_INDEX 标签可用于打开/关闭每个 HTML 页面顶部的精简索引(选项卡)。值为 NO 启用索引,值为 YES 禁用索引。由于索引中的选项卡包含与导航树相同的信息,因此如果将 GENERATE_TREEVIEW 也设置为 YES,则可以将此选项设置为 YES

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

GENERATE_TREEVIEW

GENERATE_TREEVIEW 标签用于指定是否应生成树状索引结构以显示分层信息。如果标签值设置为 YES,将生成一个包含树状索引结构(就像为 HTML 帮助生成的那样)的侧面板。为此,需要支持 JavaScript、DHTML、CSS 和框架的浏览器(即任何现代浏览器)。Windows 用户使用 HTML 帮助功能可能更好。

通过自定义样式表(请参阅 HTML_EXTRA_STYLESHEET),可以进一步微调索引的外观(请参阅 微调输出)。例如,Doxygen 生成的默认样式表有一个示例,展示了如何在树的根部放置图像而不是 PROJECT_NAME

由于树基本上包含比选项卡索引更详细的信息,因此在启用此选项时,您可以考虑将 DISABLE_INDEX 设置为 YES

默认值是:YES

此标签要求将 GENERATE_HTML 标签设置为 YES

PAGE_OUTLINE_PANEL

GENERATE_TREEVIEW 设置为 YES 时,PAGE_OUTLINE_PANEL 选项决定是否在屏幕右侧显示一个额外的导航面板,显示主页内容的概要,类似于例如 https://developer.android.com.cn/reference

如果 GENERATE_TREEVIEW 设置为 NO,此选项无效。

默认值是:YES

此标签要求将 GENERATE_HTML 标签设置为 YES

FULL_SIDEBAR

GENERATE_TREEVIEW 设置为 YES 时,FULL_SIDEBAR 选项决定侧边栏是仅限于树视图区域(值为 NO)还是应扩展到窗口的完整高度(值为 YES)。将其设置为 YES 会得到类似于例如 https://docs.readthedocs.io 的布局,内容有更多空间,但项目徽标、标题和描述的空间较少。

如果 GENERATE_TREEVIEW 设置为 NO,此选项无效。

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

ENUM_VALUES_PER_LINE

ENUM_VALUES_PER_LINE 标签可用于设置 Doxygen 在生成的 HTML 文档中在一行上分组的枚举值数量。
请注意,值为 0 将完全抑制枚举值出现在概述部分。

最小值:0,最大值:20,默认值:4

此标签要求将 GENERATE_HTML 标签设置为 YES

SHOW_ENUM_VALUES

当设置 SHOW_ENUM_VALUES 标签时,doxygen 将在枚举助记符旁边显示指定的枚举值。

默认值是:NO

TREEVIEW_WIDTH

如果启用了树视图(请参阅 GENERATE_TREEVIEW),则此标签可用于设置显示树的框架的初始宽度(以像素为单位)。

最小值:0,最大值:1500,默认值:250

此标签要求将 GENERATE_HTML 标签设置为 YES

EXT_LINKS_IN_WINDOW

如果 EXT_LINKS_IN_WINDOW 选项设置为 YES,Doxygen 将在单独的窗口中打开通过标签文件导入的外部符号链接。

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

OBFUSCATE_EMAILS

如果 OBFUSCATE_EMAILS 标签设置为 YES,Doxygen 将混淆电子邮件地址。

默认值是:YES

此标签要求将 GENERATE_HTML 标签设置为 YES

HTML_FORMULA_FORMAT

如果 HTML_FORMULA_FORMAT 选项设置为 svg,Doxygen 将使用 pdf2svg 工具(请参阅 https://github.com/dawbarton/pdf2svg)或 inkscape(请参阅 https://inkscape.org)生成 SVG 图像而非 PNG 图像作为 HTML 输出的公式。这些图像通常在缩放分辨率下看起来更美观。

可能的值为:png(默认)和 svg(看起来更美观但需要 pdf2svg 或 inkscape 工具)。

默认值是:png

此标签要求将 GENERATE_HTML 标签设置为 YES

FORMULA_FONTSIZE

使用此标签更改 HTML 文档中作为图像包含的 $\mbox{\LaTeX}$ 公式的字体大小。在 Doxygen 成功运行后更改字体大小后,您需要手动从 HTML 输出目录中删除任何 form_*.png 图像,以强制它们重新生成。

最小值:8,最大值:50,默认值:10

此标签要求将 GENERATE_HTML 标签设置为 YES

FORMULA_MACROFILE

FORMULA_MACROFILE 可以包含 $\mbox{\LaTeX}$ \newcommand\renewcommand 命令,用于创建新的 $\mbox{\LaTeX}$ 命令,作为公式中的构建块。有关详细信息,请参阅 包含公式 部分。

USE_MATHJAX

启用 USE_MATHJAX 选项以使用 MathJax(请参阅 https://www.mathjax.org)呈现 $\mbox{\LaTeX}$ 公式,MathJax 使用客户端 JavaScript 进行渲染,而不是使用预渲染的位图。如果您没有安装 $\mbox{\LaTeX}$,或者您希望公式在 HTML 输出中看起来更漂亮,请使用此选项。启用后,您可能还需要单独安装 MathJax,并使用 MATHJAX_RELPATH 选项配置其路径。

默认值是:NO

此标签要求将 GENERATE_HTML 标签设置为 YES

MATHJAX_VERSION

使用 MATHJAX_VERSION 可以指定要使用的 MathJax 版本。请注意,不同版本的 MathJax 对不同的设置有不同的要求,因此在不同 MathJax 版本之间切换时,可能还需要更改其他 MathJax 设置。

可能的值为:MathJax_2MathJax_3MathJax_4

默认值是:MathJax_2

此标签要求将 USE_MATHJAX 标签设置为 YES

MATHJAX_FORMAT

启用 MathJax 后,您可以设置 MathJax 输出的默认输出格式。有关输出格式的更多详细信息,请参阅 MathJax 版本 2MathJax 版本 3MathJax 版本 4

可能的值有:HTML-CSS(较慢,但兼容性最好。这是 Mathjax 版本 2 的名称,对于 MathJax 版本 3 将转换为 chtml)、NativeMML(即 MathML。仅支持 MathJax 2。对于 MathJax 版本 3,将使用 chtml 替代)、chtml(这是 Mathjax 版本 3 的名称,对于 MathJax 版本 2 将转换为 HTML-CSS)和 SVG

默认值是:HTML-CSS

此标签要求将 USE_MATHJAX 标签设置为 YES

MATHJAX_RELPATH

启用 MathJax 后,您需要使用 MATHJAX_RELPATH 选项指定相对于 HTML 输出目录的位置。对于 Mathjax 版本 2,目标目录应包含 MathJax.js 脚本。例如,如果 mathjax 目录与 HTML 输出目录位于同一级别,则 MATHJAX_RELPATH 应为 ../mathjax。对于 Mathjax 版本 3 和 4,目标目录应包含 tex-<format>.js 脚本(其中 <format>chtmlsvg)。默认值指向 MathJax 内容分发网络,因此您可以快速查看结果而无需安装 MathJax。但是,强烈建议在部署前从 https://www.mathjax.org 安装 MathJax 的本地副本。

默认值为:

此标签要求将 USE_MATHJAX 标签设置为 YES

MATHJAX_EXTENSIONS

MATHJAX_EXTENSIONS 标签可用于指定在 MathJax 渲染期间应启用一个或多个 MathJax 扩展名。例如对于 MathJax 版本 2(请参阅 https://docs.mathjax.org/en/v2.7/tex.html

MATHJAX_EXTENSIONS     = TeX/AMSmath TeX/AMSsymbols

例如对于 MathJax 版本 3(请参阅 https://docs.mathjax.org/en/v3.2/input/tex/extensions/

MATHJAX_EXTENSIONS     = ams

例如对于 MathJax 版本 4(请参阅 https://docs.mathjax.org/en/v4.0/input/tex/extensions/

MATHJAX_EXTENSIONS     = units

请注意,对于 Mathjax 版本 4,已经自动加载了相当多的扩展。要在 Mathjax 版本 4 中禁用一个包,可以使用包名加上减号(-,例如 MATHJAX_EXTENSIONS += -textmacros)。

此标签要求将 USE_MATHJAX 标签设置为 YES

MATHJAX_CODEFILE

MATHJAX_CODEFILE 标签可用于指定一个包含 JavaScript 代码片段的文件,这些代码片段将在 MathJax 代码启动时使用。有关更多详细信息,请参阅 MathJax 网站:

  • MathJax 版本 2
  • MathJax 版本 3
  • MathJax 版本 4 作为一个示例,要禁用 MathJax 的“Math Settings”菜单中的“Math Renderer”菜单项:
    MATHJAX_CODEFILE = disableRenderer.js
    
    文件 disableRenderer.js 中包含:
      MathJax.Hub.Config({
       menuSettings: {
        showRenderer: false,
       }
      });
    

此标签要求将 USE_MATHJAX 标签设置为 YES

SEARCHENGINE

启用 SEARCHENGINE 标签后,Doxygen 将为 HTML 输出生成一个搜索框。底层的搜索引擎使用 JavaScript 和 DHTML,应适用于任何现代浏览器。请注意,当使用 HTML 帮助(GENERATE_HTMLHELP)、Qt 帮助(GENERATE_QHP)或 docsets(GENERATE_DOCSET)时,已经有搜索功能,因此通常应禁用此功能。对于大型项目,基于 JavaScript 的搜索引擎可能很慢,此时启用 SERVER_BASED_SEARCH 可能会提供更好的解决方案。

可以使用键盘进行搜索;要跳转到搜索框,请使用 <访问键> + S<访问键> 取决于操作系统和浏览器,但通常是 <CTRL><ALT>/<option> 或两者)。在搜索框内,使用 <向下光标键> 跳转到搜索结果窗口,可以使用 <光标键> 导航结果。按 <Enter> 选择一个项目,或按 <escape> 取消搜索。当光标在搜索框内时,可以通过按 <Shift>+<向下光标> 选择过滤选项。同样,使用 <光标键> 选择过滤器,然后按 <Enter><escape> 激活或取消过滤器选项。

默认值是:YES

此标签要求将 GENERATE_HTML 标签设置为 YES

SERVER_BASED_SEARCH

启用 SERVER_BASED_SEARCH 标签后,搜索引擎将使用 Web 服务器而不是使用 JavaScript 的 Web 客户端实现。

有两种基于 Web 服务器的搜索方式,具体取决于 EXTERNAL_SEARCH 设置。禁用时,Doxygen 将生成用于搜索的 PHP 脚本和脚本使用的索引文件。启用 EXTERNAL_SEARCH 时,索引和搜索需要由外部工具提供。有关详细信息,请参阅 外部索引和搜索 部分。

默认值是:NO

此标签要求将 SEARCHENGINE 标签设置为 YES

EXTERNAL_SEARCH

启用 EXTERNAL_SEARCH 标签后,Doxygen 将不再生成用于搜索的 PHP 脚本。相反,搜索结果将写入 XML 文件,该文件需要由外部索引器处理。Doxygen 将调用 SEARCHENGINE_URL 选项指向的外部搜索引擎来获取搜索结果。
Doxygen 附带一个基于开源搜索引擎库 Xapian 的示例索引器 (doxyindexer) 和搜索引擎 (doxysearch.cgi)。
有关详细信息,请参阅 外部索引和搜索 部分。

默认值是:NO

此标签要求将 SEARCHENGINE 标签设置为 YES

SEARCHENGINE_URL

SEARCHENGINE_URL 应指向由 Web 服务器托管的搜索引擎,当启用 EXTERNAL_SEARCH 时,该搜索引擎将返回搜索结果。
Doxygen 附带一个基于开源搜索引擎库 Xapian 的示例索引器 (doxyindexer) 和搜索引擎 (doxysearch.cgi)。有关详细信息,请参阅 外部索引和搜索 部分。

此标签要求将 SEARCHENGINE 标签设置为 YES

SEARCHDATA_FILE

SERVER_BASED_SEARCHEXTERNAL_SEARCH 都启用时,未索引的搜索数据将写入文件,供外部工具索引。使用 SEARCHDATA_FILE 标签可以指定此文件的名称。

默认文件是:searchdata.xml

此标签要求将 SEARCHENGINE 标签设置为 YES

EXTERNAL_SEARCH_ID

SERVER_BASED_SEARCHEXTERNAL_SEARCH 都启用时,EXTERNAL_SEARCH_ID 标签可用作项目的标识符。这与 EXTRA_SEARCH_MAPPINGS 结合使用非常有用,可以搜索多个项目并将结果重定向到正确的项目。

此标签要求将 SEARCHENGINE 标签设置为 YES

EXTRA_SEARCH_MAPPINGS

EXTRA_SEARCH_MAPPINGS 标签可用于启用搜索除此配置文件定义的 Doxygen 项目之外的其他 Doxygen 项目,但这些项目都已添加到相同的外部搜索索引中。每个项目都需要通过 EXTERNAL_SEARCH_ID 设置唯一的 ID。然后搜索映射将 ID 映射到可以找到文档的相对位置。

格式是

EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...

此标签要求将 SEARCHENGINE 标签设置为 YES

与 LaTeX 输出相关的配置选项

GENERATE_LATEX

如果 GENERATE_LATEX 标签设置为 YES,Doxygen 将生成 $\mbox{\LaTeX}$ 输出。

默认值是:YES

LATEX_OUTPUT

LATEX_OUTPUT 标签用于指定 $\mbox{\LaTeX}$ 文档的放置位置。如果输入相对路径,则 OUTPUT_DIRECTORY 的值将放在前面。

默认目录是:latex

此标签要求将 GENERATE_LATEX 标签设置为 YES

LATEX_CMD_NAME

LATEX_CMD_NAME 标签可用于指定要调用的 $\mbox{\LaTeX}$ 命令名称。
请注意,当不启用 USE_PDFLATEX 时,默认值为 latex;当启用 USE_PDFLATEX 时,默认值为 pdflatex,在后一种情况下如果选择 latex,则会被 pdflatex 覆盖。对于特定的输出语言,默认值可能已设置为不同,这取决于输出语言的实现。

此标签要求标签 GENERATE_LATEX 设置为 YES

MAKEINDEX_CMD_NAME

MAKEINDEX_CMD_NAME 标签可用于指定生成 $\mbox{\LaTeX}$ 索引的命令名称。

注意
此标签在 Makefile / make.bat 中使用。
另请参阅
生成的输出文件 (.tex) 中的部分使用 LATEX_MAKEINDEX_CMD

默认文件为:makeindex

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_MAKEINDEX_CMD

LATEX_MAKEINDEX_CMD 标签可用于指定生成 $\mbox{\LaTeX}$ 索引的命令名称。如果第一个字符没有反斜杠 (\\endiskip),它将自动添加到 $\mbox{\LaTeX}$ 代码中。

注意
此标签在生成的输出文件 (.tex) 中使用。
另请参阅
Makefile / make.bat 中的部分使用 MAKEINDEX_CMD_NAME

默认值为:makeindex

此标签要求标签 GENERATE_LATEX 设置为 YES

COMPACT_LATEX

如果 COMPACT_LATEX 标签设置为 YES,Doxygen 会生成更紧凑的 $\mbox{\LaTeX}$ 文档。这对于小型项目可能很有用,并且通常有助于节省一些树木。

默认值是:NO

此标签要求标签 GENERATE_LATEX 设置为 YES

PAPER_TYPE

PAPER_TYPE 标签可用于设置打印机使用的纸张类型。

可能的值为:a4 (210 x 297 mm)、letter (8.5 x 11 英寸)、legal (8.5 x 14 英寸) 和 executive (7.25 x 10.5 英寸)。

默认值为:a4

此标签要求标签 GENERATE_LATEX 设置为 YES

EXTRA_PACKAGES

EXTRA_PACKAGES 标签可用于指定一个或多个应包含在 $\mbox{\LaTeX}$ 输出中的 $\mbox{\LaTeX}$ 包名称。包可以仅通过其名称或使用与 $\mbox{\LaTeX}$ \usepackage 命令一起使用的正确语法来指定。

例如,要获取 times 字体,您可以指定

  EXTRA_PACKAGES=times
or
  EXTRA_PACKAGES={times}

要将选项 intlimitsamsmath 包一起使用,您可以指定

   EXTRA_PACKAGES=[intlimits]{amsmath}

如果留空,则不包含任何额外包。

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_HEADER

LATEX_HEADER 标签可用于为生成的 $\mbox{\LaTeX}$ 文档指定用户定义的 $\mbox{\LaTeX}$ 标题。标题应包含直到第一个章节的所有内容。如果留空,Doxygen 将生成标准标题。

强烈建议使用以下方式从默认标题开始

doxygen -w latex new_header.tex new_footer.tex new_stylesheet.sty

然后修改文件 new_header.tex

另请参阅 Doxygen 使用 部分,了解如何生成 Doxygen 通常使用的默认头。


注意:仅在您知道自己在做什么时才使用用户定义的标题!

注意
标题可能会更改,因此升级到Doxygen的新版本时通常需要重新生成默认标题。以下命令在标题(和页脚)中具有特殊含义
$title
将被替换为项目名称。
$datetime
将替换为当前日期和时间。
$date
将替换为当前日期。
$time
将替换为当前时间。
$year
将替换为当前年份。
$showdate(<format>)
将根据 <format> 指定的格式替换为当前日期和时间。<format> 遵循 \showdate 命令指定的规则,但 <format> 中不允许出现 )
$doxygenversion
将替换为 Doxygen 的版本
$projectname
将替换为项目名称(请参阅 PROJECT_NAME
$projectnumber
将替换为项目编号(请参阅 PROJECT_NUMBER
$projectbrief
将替换为项目简要描述(请参阅 PROJECT_BRIEF
$projectlogo
将替换为项目徽标(请参阅 PROJECT_LOGO
$latexdocumentpre
将被替换为与输出语言相关的设置,例如将整个文档嵌入特殊环境中(适用于中文、日文等)。通常与页脚中的 $latexdocumentpost 一起使用。
$latexdocumentpost
将被替换为与输出语言相关的设置,例如将整个文档嵌入特殊环境中(适用于中文、日文等)。通常与标题中的 $latexdocumentpre 一起使用。
$generatedby
将替换为依赖于输出语言的文本“Generated by”,或者当设置了 TIMESTAMP 时,替换为依赖于输出语言的文本“Generated on $datetime for $projectname by”。
$latexcitereference
将被替换为与输出语言相关的“Bibliography”一词的版本。此设置通常与块名称 CITATIONS_PRESENT 结合使用。
$latexbibstyle
将被替换为 LATEX_BIB_STYLE 设置的 latex bib 样式,如果未设置,则使用 bib 样式 plain。此设置通常与块名称 CITATIONS_PRESENT 结合使用。
$latexbibfiles
将被替换为由 CITE_BIB_FILES 设置的逗号分隔的 bib 文件列表(必要时会自动添加缺失的 .bib)。此设置通常与块名称 CITATIONS_PRESENT 结合使用。
$papertype
将被 PAPER_TYPE 中设置的纸张类型替换,并直接在其后添加“paper”一词以获得正确的 $\mbox{\LaTeX}$ 纸张类型。
$langISO
将被 ISO 语言名称替换。
$languagesupport
将被替换为输出语言相关的设置,即翻译指定语言术语所需的包。
$latexfontenc
将被替换为输出语言相关的字体编码设置。此设置通常与块名称 LATEX_FONTENC 结合使用。
$latexfont
将被替换为输出语言相关的字体设置。
$latexemojidirectory
将被 LATEX_EMOJI_DIRECTORY 中设置的目录替换,其中反斜杠替换为正斜杠(以便 $\mbox{\LaTeX}$ 可以使用)。如果 LATEX_EMOJI_DIRECTORY 为空,则将使用当前目录。
$makeindex
将被 LATEX_MAKEINDEX_CMD 中设置的命令替换。如果命令不以反斜杠开头,则会自动添加一个反斜杠。如果设置为空,则使用命令 \makeindex
$extralatexpackages
将被用于 EXTRA_PACKAGES 中设置的包的命令替换。
$extralatexstylesheet
将被用于 LATEX_EXTRA_STYLESHEET 中设置的包的命令替换(如果扩展名是默认扩展名 .sty,则该扩展名将从包名称中去除)。
$latexspecialformulachars
将被一些常用的特殊 Unicode 字符的代码替换(即上标减号、上标 2 和上标 3)
$formulamacrofile
将被 FORMULA_MACROFILE 中设置的文件名替换。此设置通常与块名称 FORMULA_MACROFILE 结合使用。

为了应对取决于配置设置的标题和页脚布局差异,标题和页脚还可以包含特殊块,这些块将根据配置复制到输出或跳过。此类块具有以下形式

 %%BEGIN BLOCKNAME
 Some context copied when condition BLOCKNAME holds
 %%END BLOCKNAME
 %%BEGIN !BLOCKNAME
 Some context copied when condition BLOCKNAME does not hold
 %%END !BLOCKNAME

根据配置文件中使用的设置,设置以下块名称

COMPACT_LATEX
COMPACT_LATEX 选项启用时,此块中的内容将复制到输出。
PDF_HYPERLINKS
PDF_HYPERLINKS 选项启用时,此块中的内容将复制到输出。
USE_PDFLATEX
USE_PDFLATEX 选项启用时,此块中的内容将复制到输出。
LATEX_BATCHMODE
LATEX_BATCHMODE 选项启用时,此块中的内容将复制到输出。
TIMESTAMP
TIMESTAMP 选项启用时,此块中的内容将复制到输出。

以下块名称根据标签在使用的配置文件中是否具有值来设置

LATEX_FONTENC
当 Doxygen latex 转换器函数为要使用的字体编码返回一个值时,此块中的内容将复制到输出。它与上述 $latexfontenc 结合使用。
FORMULA_MACROFILE
FORMULA_MACROFILE 选项不为空时,此块中的内容将复制到输出。它与上述 $formulamacrofile 结合使用。

以下块名称根据文档中是否使用某个功能来设置

CITATIONS_PRESENT
当文档中存在引用且相关的 .. 存在时,此块中的内容将复制到输出。它与上述 $latexcitereference$latexbibstyle$latexbibfiles 结合使用。

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_FOOTER

LATEX_FOOTER 标签可用于为生成的 $\mbox{\LaTeX}$ 文档指定用户定义的 $\mbox{\LaTeX}$ 页脚。页脚应包含最后一个章节之后的所有内容。如果留空,Doxygen 将生成标准页脚。

有关如何生成默认页脚以及页脚中可以使用哪些特殊命令的更多信息,请参阅 LATEX_HEADER

另请参阅 Doxygen 使用 部分,了解如何生成 Doxygen 通常使用的默认页脚。

注意:仅在您知道自己在做什么时才使用用户定义的页脚!

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_EXTRA_STYLESHEET
LATEX_EXTRA_STYLESHEET 标签可用于指定附加的用户定义的 $\mbox{\LaTeX}$ 样式表,这些样式表在 Doxygen 创建的标准样式表之后包含。使用此选项可以覆盖某些样式方面。Doxygen 会将样式表文件复制到输出目录。
注意
额外样式表文件的顺序很重要(例如,列表中的最后一个样式表会覆盖列表中前一个的设置)。
此标签要求标签 GENERATE_LATEX 设置为 YES
LATEX_EXTRA_FILES

LATEX_EXTRA_FILES 标签可用于指定一个或多个应复制到 LATEX_OUTPUT 输出目录的额外图像或其他源文件。请注意,文件将按原样复制;没有可用的命令或标记。

此标签要求标签 GENERATE_LATEX 设置为 YES

PDF_HYPERLINKS

如果 PDF_HYPERLINKS 标签设置为 YES,则生成的 $\mbox{\LaTeX}$ 将为转换为 PDF(使用 ps2pdfpdflatex)做好准备。PDF 文件将包含链接(就像 HTML 输出一样)而不是页面引用。这使得输出适合使用 PDF 查看器进行在线浏览。

默认值是:YES

此标签要求标签 GENERATE_LATEX 设置为 YES

USE_PDFLATEX

如果 USE_PDFLATEX 标签设置为 YES,Doxygen 将使用 LATEX_CMD_NAME 指定的引擎直接从 $\mbox{\LaTeX}$ 文件生成 PDF 文件。将此选项设置为 YES,以获得更高质量的 PDF 文档。
有关选择引擎的信息,另请参阅 LATEX_CMD_NAME 部分。

默认值是:YES

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_BATCHMODE

LATEX_BATCHMODE 标签表示 $\mbox{\LaTeX}$ 在出现错误时的行为。

可能的值为:NO 与 ERROR_STOP 相同,YES 与 BATCH 相同,BATCH 在批处理模式下终端不打印任何内容,错误像在每个错误处按 一样滚动;TeX 尝试输入或从键盘输入请求(在未打开的输入流上 \read)的缺失文件会导致作业中止,NON_STOP 在非停止模式下诊断消息将出现在终端上,但用户无法交互,就像在批处理模式下一样,SCROLL 在滚动模式下,TeX 仅在缺少文件输入或需要键盘输入时停止,而 ERROR_STOP 在错误停止模式下,TeX 将在每个错误处停止,要求用户干预。

默认值是:NO

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_HIDE_INDICES

如果 LATEX_HIDE_INDICES 标签设置为 YES,则 Doxygen 将不会在输出中包含索引章节(例如文件索引、复合索引等)。

默认值是:NO

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_BIB_STYLE

LATEX_BIB_STYLE 标签可用于指定用于参考文献的样式,例如 plainnatieeetr。有关更多信息,请参阅 https://en.wikipedia.org/wiki/BibTeX\cite

默认值为:plainnat

此标签要求标签 GENERATE_LATEX 设置为 YES

LATEX_EMOJI_DIRECTORY

LATEX_EMOJI_DIRECTORY 标签用于指定读取表情符号图像的(相对或绝对)路径。如果输入相对路径,它将相对于 LATEX_OUTPUT 目录。如果留空,将使用 LATEX_OUTPUT 目录。

此标签要求标签 GENERATE_LATEX 设置为 YES

与 RTF 输出相关的配置选项

GENERATE_RTF

如果 GENERATE_RTF 标签设置为 YES,Doxygen 将生成 RTF 输出。RTF 输出针对 Word 97 进行了优化,可能与其他 RTF 阅读器/编辑器不太美观。

默认值是:NO

RTF_OUTPUT

RTF_OUTPUT 标签用于指定 RTF 文档的放置位置。如果输入相对路径,则 OUTPUT_DIRECTORY 的值将放在其前面。

默认目录为:rtf

此标签要求标签 GENERATE_RTF 设置为 YES

COMPACT_RTF

如果 COMPACT_RTF 标签设置为 YES,Doxygen 会生成更紧凑的 RTF 文档。这对于小型项目可能很有用,并且通常有助于节省一些树木。

默认值是:NO

此标签要求标签 GENERATE_RTF 设置为 YES

RTF_HYPERLINKS

如果 RTF_HYPERLINKS 标签设置为 YES,则生成的 RTF 将包含超链接字段。RTF 文件将包含链接(就像 HTML 输出一样)而不是页面引用。这使得输出适合使用 Word 或其他支持这些字段的 Word 兼容阅读器进行在线浏览。


注意:WordPad (write) 和其他软件不支持链接。

默认值是:NO

此标签要求标签 GENERATE_RTF 设置为 YES

RTF_STYLESHEET_FILE

从文件加载样式表定义。语法类似于 Doxygen 的配置文件,即一系列赋值。您只需提供替换,缺失的定义将设置为其默认值。
另请参阅 Doxygen 使用 部分,了解如何生成 Doxygen 通常使用的默认样式表。

此标签要求标签 GENERATE_RTF 设置为 YES

RTF_EXTENSIONS_FILE

设置生成 RTF 文档中使用的可选变量。语法类似于 Doxygen 的配置文件。可以使用 doxygen -e rtf extensionFile 生成模板扩展文件。

此标签要求标签 GENERATE_RTF 设置为 YES

RTF_EXTRA_FILES

RTF_EXTRA_FILES 标签可用于指定一个或多个应复制到 RTF_OUTPUT 输出目录的额外图像或其他源文件。请注意,文件将按原样复制;没有可用的命令或标记。

此标签要求标签 GENERATE_RTF 设置为 YES

与手册页输出相关的配置选项

GENERATE_MAN

如果 GENERATE_MAN 标签设置为 YES,Doxygen 将为类和文件生成手册页。

默认值是:NO

MAN_OUTPUT

MAN_OUTPUT 标签用于指定手册页的放置位置。如果输入相对路径,则 OUTPUT_DIRECTORY 的值将放在其前面。将在 MAN_OUTPUT 指定的目录中创建一个名为 man3 的目录。

默认目录为:man

此标签要求标签 GENERATE_MAN 设置为 YES

MAN_EXTENSION

MAN_EXTENSION 标签决定了添加到生成的手册页的扩展名。如果手册部分不以数字开头,则在前面添加数字 3。MAN_EXTENSION 标签开头的点号 (.) 是可选的。

默认值为:.3

此标签要求标签 GENERATE_MAN 设置为 YES

MAN_SUBDIR

MAN_SUBDIR 标签决定了在 MAN_OUTPUT 中创建的用于放置手册页的目录名称。如果默认为 man,则后跟去掉初始 . 的 MAN_EXTENSION

此标签要求标签 GENERATE_MAN 设置为 YES

MAN_LINKS

如果 MAN_LINKS 标签设置为 YES 并且 Doxygen 生成手册页输出,则它将为实际手册页中记录的每个实体生成一个附加手册页文件。这些附加文件仅引用实际手册页,但如果没有它们,man 命令将无法找到正确的页面。

默认值是:NO

此标签要求标签 GENERATE_MAN 设置为 YES

与 XML 输出相关的配置选项

GENERATE_XML

如果 GENERATE_XML 标签设置为 YES,Doxygen 将生成一个 XML 文件,该文件捕获代码结构,包括所有文档。

默认值是:NO

XML_OUTPUT

XML_OUTPUT 标签用于指定 XML 页面的放置位置。如果输入相对路径,则 OUTPUT_DIRECTORY 的值将放在其前面。

默认目录为:xml

此标签要求标签 GENERATE_XML 设置为 YES

XML_PROGRAMLISTING

如果 XML_PROGRAMLISTING 标签设置为 YES,Doxygen 将把程序列表(包括语法高亮和交叉引用信息)转储到 XML 输出。请注意,启用此选项将显着增加 XML 输出的大小。

默认值是:YES

此标签要求标签 GENERATE_XML 设置为 YES

XML_NS_MEMB_FILE_SCOPE

如果 XML_NS_MEMB_FILE_SCOPE 标签设置为 YES,Doxygen 也将包含文件范围内的命名空间成员,与 HTML 输出匹配。

默认值是:NO

此标签要求标签 GENERATE_XML 设置为 YES

与 DOCBOOK 输出相关的配置选项

GENERATE_DOCBOOK

如果 GENERATE_DOCBOOK 标签设置为 YES,Doxygen 将生成 Docbook 文件,可用于生成 PDF。

默认值是:NO

DOCBOOK_OUTPUT

DOCBOOK_OUTPUT 标签用于指定 Docbook 页面的放置位置。如果输入相对路径,则 OUTPUT_DIRECTORY 的值将放在其前面。

默认目录为:docbook

此标签要求标签 GENERATE_DOCBOOK 设置为 YES

AutoGen 定义输出的配置选项

GENERATE_AUTOGEN_DEF

如果 GENERATE_AUTOGEN_DEF 标签设置为 YES,Doxygen 将生成一个 AutoGen Definitions(参见 https://autogen.sourceforge.net/)文件,该文件捕获代码结构,包括所有文档。请注意,此功能目前仍处于实验阶段且不完整。

默认值是:NO

与 Sqlite3 输出相关的配置选项

GENERATE_SQLITE3

如果 GENERATE_SQLITE3 标签设置为 YES,Doxygen 将生成一个 Sqlite3 数据库,其中包含 Doxygen 在表中找到的符号。

默认值是:NO

SQLITE3_OUTPUT

SQLITE3_OUTPUT 标签用于指定 Sqlite3 数据库的放置位置。如果输入相对路径,则 OUTPUT_DIRECTORY 的值将放在其前面。

默认目录为:sqlite3

此标签要求标签 GENERATE_SQLITE3 设置为 YES

SQLITE3_RECREATE_DB

SQLITE3_RECREATE_DB 标签设置为 YES,则每次 Doxygen 运行时都会重新创建现有的 doxygen_sqlite3.db 数据库文件。如果设置为 NO,Doxygen 将在找到数据库文件时发出警告并且不修改它。

默认值是:YES

此标签要求标签 GENERATE_SQLITE3 设置为 YES

与 Perl 模块输出相关的配置选项

GENERATE_PERLMOD

如果 GENERATE_PERLMOD 标签设置为 YES,Doxygen 将生成一个 Perl 模块文件,该文件捕获代码结构,包括所有文档。
请注意,此功能目前仍处于实验阶段且不完整。

默认值是:NO

PERLMOD_LATEX

如果 PERLMOD_LATEX 标签设置为 YES,Doxygen 将生成必要的 Makefile 规则、Perl 脚本和 $\mbox{\LaTeX}$ 代码,以便能够从 Perl 模块输出生成 PDF 和 DVI 输出。

默认值是:NO

此标签要求标签 GENERATE_PERLMOD 设置为 YES

PERLMOD_PRETTY

如果 PERLMOD_PRETTY 标签设置为 YES,Perl 模块输出将格式优美,以便人类读者可以解析。如果您想了解发生了什么,这很有用。另一方面,如果此标签设置为 NO,则 Perl 模块输出的大小将大大减小,并且 Perl 将以相同的方式解析它。

默认值是:YES

此标签要求标签 GENERATE_PERLMOD 设置为 YES

PERLMOD_MAKEVAR_PREFIX

生成的 doxyrules.make 文件中 make 变量的名称将以 PERLMOD_MAKEVAR_PREFIX 中包含的字符串作为前缀。这很有用,因此同一 Makefile 包含的不同 doxyrules.make 文件不会相互覆盖变量。

此标签要求标签 GENERATE_PERLMOD 设置为 YES

与预处理器相关的配置选项

ENABLE_PREPROCESSING

如果 ENABLE_PREPROCESSING 标签设置为 YES,Doxygen 将评估在源代码和包含文件中找到的所有 C 预处理器指令。

默认值是:YES

MACRO_EXPANSION

如果 MACRO_EXPANSION 标签设置为 YES,Doxygen 将展开源代码中的所有宏名称。如果设置为 NO,则仅执行条件编译。可以通过将 EXPAND_ONLY_PREDEF 设置为 YES 来以受控方式执行宏扩展。

默认值是:NO

此标签要求标签 ENABLE_PREPROCESSING 设置为 YES

EXPAND_ONLY_PREDEF

如果 EXPAND_ONLY_PREDEFMACRO_EXPANSION 标签都设置为 YES,则宏展开仅限于使用 PREDEFINEDEXPAND_AS_DEFINED 标签指定的宏。

默认值是:NO

此标签要求标签 ENABLE_PREPROCESSING 设置为 YES

SEARCH_INCLUDES

如果 SEARCH_INCLUDES 标签设置为 YES,如果找到 #include,则将在 INCLUDE_PATH 中搜索包含文件。

默认值是:YES

此标签要求标签 ENABLE_PREPROCESSING 设置为 YES

INCLUDE_PATH

INCLUDE_PATH 标签可用于指定一个或多个包含非输入文件但应由预处理器处理的包含文件的目录。

请注意,INCLUDE_PATH 不是递归的,因此 RECURSIVE 的设置在此处无效。

此标签要求标签 SEARCH_INCLUDES 设置为 YES

INCLUDE_FILE_PATTERNS

您可以使用 INCLUDE_FILE_PATTERNS 标签指定一个或多个通配符模式(例如 *.h*.hpp)以过滤目录中的头文件。如果留空,将使用 FILE_PATTERNS 指定的模式。

此标签要求标签 ENABLE_PREPROCESSING 设置为 YES

PREDEFINED

PREDEFINED 标签可用于指定一个或多个在预处理器启动前定义的宏名称(类似于 gcc-D 选项)。标签的参数是以下形式的宏列表:namename=definition(无空格)。如果省略定义和 "=",则假定为 "=1"。为了防止宏定义通过 #undef 未定义或递归展开,请使用 := 运算符而不是 = 运算符。

此标签要求标签 ENABLE_PREPROCESSING 设置为 YES

EXPAND_AS_DEFINED

如果 MACRO_EXPANSIONEXPAND_ONLY_PREDEF 标签都设置为 YES,则此标签可用于指定应展开的宏名称列表。将使用源中找到的宏定义。如果您想使用与源中找到的定义不同的宏定义,请使用 PREDEFINED 标签。

此标签要求标签 ENABLE_PREPROCESSING 设置为 YES

SKIP_FUNCTION_MACROS

如果 SKIP_FUNCTION_MACROS 标签设置为 YES,则 Doxygen 的预处理器将删除所有对单独一行、全大写名称且不以分号结尾的函数式宏的引用。此类函数宏通常用于样板代码,如果未删除,将使解析器感到困惑。

默认值是:YES

此标签要求标签 ENABLE_PREPROCESSING 设置为 YES

与外部引用相关的配置选项

TAGFILES

TAGFILES 标签可用于指定一个或多个标签文件。

对于每个标签文件,应添加外部文档的位置。没有此位置的标签文件格式如下

  TAGFILES = file1 file2 ...

为标签文件添加位置如下所示

  TAGFILES = file1=loc1 "file2 = loc2" ...

其中 loc1loc2 可以是相对或绝对路径或 URL。有关标签文件使用的更多信息,请参阅 链接到外部文档 部分。

注意
每个标签文件必须具有唯一的名称(名称不包含路径)。如果标签文件不在 Doxygen 运行的目录中,您还必须在此处指定标签文件的路径。

GENERATE_TAGFILE

GENERATE_TAGFILE 之后指定文件名时,Doxygen 将创建一个基于其读取的输入文件的标签文件。有关标签文件使用的更多信息,请参阅 链接到外部文档 部分。

ALLEXTERNALS

如果 ALLEXTERNALS 标签设置为 YES,所有外部类和命名空间将列在类和命名空间索引中。如果设置为 NO,则仅列出继承的外部类。

默认值是:NO

EXTERNAL_GROUPS

如果 EXTERNAL_GROUPS 标签设置为 YES,所有外部组将列在主题索引中。如果设置为 NO,则仅列出当前项目的组。

默认值是:YES

EXTERNAL_PAGES

如果 EXTERNAL_PAGES 标签设置为 YES,所有外部页面将列在相关页面索引中。如果设置为 NO,则仅列出当前项目的页面。

默认值是:YES

与图表生成工具相关的配置选项

HIDE_UNDOC_RELATIONS

如果设置为 YES,如果目标未文档化或不是类,则继承和协作图将隐藏继承和使用关系。

默认值是:YES

HAVE_DOT

如果您将 HAVE_DOT 标签设置为 YES,则 Doxygen 将假定 dot 工具可从 path 获得。此工具是 Graphviz 的一部分,Graphviz 是 AT&T 和 Lucent Bell Labs 的一个图形可视化工具包。如果此选项设置为 NO,则本节中的其他选项无效

默认值是:NO

DOT_NUM_THREADS

DOT_NUM_THREADS 指定 Doxygen 允许并行运行的 dot 调用次数。设置为 0 时,Doxygen 将根据系统中可用的处理器数量来确定。您可以将其显式设置为大于 0 的值,以控制 CPU 负载和处理速度之间的平衡。

最小值:0,最大值:512,默认值:0

此标签要求标签 HAVE_DOT 设置为 YES

DOT_COMMON_ATTR

DOT_COMMON_ATTR 是节点、边和子图标签的通用属性。如果您希望 Doxygen 生成的 dot 文件中字体外观不同,您可以指定 fontname、fontcolor 和 fontsize 属性。有关详细信息,请参阅 节点、边和图属性规范 您需要确保 dot 能够找到字体,这可以通过将其放置在标准位置或设置 DOTFONTPATH 环境变量或将 DOT_FONTPATH 设置为包含字体的目录来完成。默认的 graphviz 字体大小是 14。

默认值为:fontname=Helvetica,fontsize=10

此标签要求标签 HAVE_DOT 设置为 YES

DOT_EDGE_ATTR

DOT_EDGE_ATTRDOT_COMMON_ATTR 连接。为了优雅的样式,您可以添加 'arrowhead=open, arrowtail=open, arrowsize=0.5'。有关箭头形状的完整文档。

默认值为:labelfontname=Helvetica,labelfontsize=10

此标签要求标签 HAVE_DOT 设置为 YES

DOT_NODE_ATTR

DOT_NODE_ATTRDOT_COMMON_ATTR 连接。要查看节点周围没有框,请设置 'shape=plain' 或 'shape=plaintext' 形状规范

默认值为:shape=box,height=0.2,width=0.4

此标签要求标签 HAVE_DOT 设置为 YES

DOT_FONTPATH

您可以设置 dot 查找在 DOT_COMMON_ATTR 和其他 dot 属性中指定的字体的路径。

此标签要求标签 HAVE_DOT 设置为 YES

CLASS_GRAPH

如果 CLASS_GRAPH 标签设置为 YESGRAPHBUILTIN,则 Doxygen 将为每个文档化的类生成一个图表,显示直接和间接的继承关系。如果 CLASS_GRAPH 标签设置为 YESGRAPH 并且 HAVE_DOT 也已启用,则将使用 dot 绘制图表。如果 CLASS_GRAPH 标签设置为 YES 并且 HAVE_DOT 已禁用,或者如果 CLASS_GRAPH 标签设置为 BUILTIN,则将使用内置生成器。如果 CLASS_GRAPH 标签设置为 TEXT,则直接和间接继承关系将以文本/链接形式显示。显式启用继承图或为特定类的继承图选择不同的表示形式,可以通过命令 \inheritancegraph 实现。禁用继承图可以通过命令 \hideinheritancegraph 实现。

可能的值为:NOYESTEXTGRAPHBUILTIN

默认值是:YES

COLLABORATION_GRAPH

如果 COLLABORATION_GRAPH 标签设置为 YES,则 Doxygen 将为每个文档化的类生成一个图表,显示该类与其他文档化类的直接和间接实现依赖项(继承、包含和类引用变量)。当 COLLABORATION_GRAPH 设置为 NO 时,可以通过命令 \collaborationgraph 显式启用协作图。禁用协作图可以通过命令 \hidecollaborationgraph 实现。

默认值是:YES

此标签要求标签 HAVE_DOT 设置为 YES

GROUP_GRAPHS

如果 GROUP_GRAPHS 标签设置为 YES,则 Doxygen 将为组生成一个图表,显示直接的组依赖项。当 GROUP_GRAPHS 设置为 NO 时,可以通过命令 \groupgraph 显式启用组依赖图。禁用目录图可以通过命令 \hidegroupgraph 实现。

另请参阅手册中的 分组 一章。

默认值是:YES

此标签要求标签 HAVE_DOT 设置为 YES

UML_LOOK

如果 UML_LOOK 标签设置为 YES,Doxygen 将以类似于 OMG 统一建模语言的样式生成继承和协作图。

默认值是:NO

此标签要求标签 HAVE_DOT 设置为 YES

UML_LIMIT_NUM_FIELDS

如果启用了 UML_LOOK 标签,则字段和方法将显示在类节点内部。如果字段或方法以及节点数量过多,图表可能会变得太大而无用。UML_LIMIT_NUM_FIELDS 阈值限制了每种类型的项目数量,以使大小更易于管理。设置为 0 表示无限制。请注意,在强制执行限制之前,阈值可能会超出 50%。因此,当您将阈值设置为 10 时,最多可能会出现 15 个字段,但如果数量超过 15 个,则显示的总字段数量将限制为 10 个。

最小值:0,最大值:100,默认值:10

此标签要求标签 UML_LOOK 设置为 YES

UML_MAX_EDGE_LABELS

如果启用了 UML_LOOK 标签,则字段标签会显示在两个类节点之间的边上。如果字段和节点数量过多,图表可能会变得过于混乱。UML_MAX_EDGE_LABELS 阈值限制了项目数量,以使大小更易于管理。将其设置为 0 表示无限制。

最小值:0,最大值:100,默认值:10

此标签要求标签 UML_LOOK 设置为 YES

DOT_UML_DETAILS

如果 DOT_UML_DETAILS 标签设置为 NO,Doxygen 将在 UML 图中显示不带类型和参数的属性和方法。如果 DOT_UML_DETAILS 标签设置为 YES,Doxygen 将在 UML 图中为属性和方法添加类型和参数。如果 DOT_UML_DETAILS 标签设置为 NONE,Doxygen 将不会在 UML 图中生成包含类成员信息的字段。类图将看起来类似于默认类图,但使用 UML 符号表示关系。

可能的值为:NOYESNONE

默认值是:NO

此标签要求标签 UML_LOOK 设置为 YES

DOT_WRAP_THRESHOLD

DOT_WRAP_THRESHOLD 标签可用于设置单行显示的最大字符数。如果实际行长显着超过此阈值,它将跨多行换行。应用了一些启发式方法以避免丑陋的换行符。

最小值:0,最大值:1000,默认值:17

此标签要求标签 HAVE_DOT 设置为 YES

TEMPLATE_RELATIONS

如果 TEMPLATE_RELATIONS 标签设置为 YES,则继承和协作图将显示模板与其实例之间的关系。

默认值是:NO

此标签要求标签 HAVE_DOT 设置为 YES

INCLUDE_GRAPH

如果 INCLUDE_GRAPHENABLE_PREPROCESSINGSEARCH_INCLUDES 标签设置为 YES,则 Doxygen 将为每个文档化的文件生成一个图表,显示该文件与其它文档化文件的直接和间接包含依赖关系。当 INCLUDE_GRAPH 设置为 NO 时,可以通过命令 \includegraph 显式启用包含图。禁用包含图可以通过命令 \hideincludegraph 实现。

默认值是:YES

此标签要求标签 HAVE_DOT 设置为 YES

INCLUDED_BY_GRAPH

如果 INCLUDED_BY_GRAPHENABLE_PREPROCESSINGSEARCH_INCLUDES 标签设置为 YES,则 Doxygen 将为每个文档化的文件生成一个图表,显示该文件与其它文档化文件的直接和间接包含依赖关系。当 INCLUDED_BY_GRAPH 设置为 NO 时,可以通过命令 \includedbygraph 显式启用被包含图。禁用被包含图可以通过命令 \hideincludedbygraph 实现。

默认值是:YES

此标签要求标签 HAVE_DOT 设置为 YES

CALL_GRAPH

如果 CALL_GRAPH 标签设置为 YES,则 Doxygen 将为每个全局函数或类方法生成一个调用依赖图。
请注意,启用此选项将显著增加运行时间。因此,在大多数情况下,最好仅对选定的函数使用 \callgraph 命令启用调用图。禁用调用图可以通过命令 \hidecallgraph 实现。

默认值是:NO

此标签要求标签 HAVE_DOT 设置为 YES

CALLER_GRAPH

如果 CALLER_GRAPH 标签设置为 YES,则 Doxygen 将为每个全局函数或类方法生成一个调用者依赖图。
请注意,启用此选项将显著增加运行时间。因此,在大多数情况下,最好仅对选定的函数使用 \callergraph 命令启用调用者图。禁用调用者图可以通过命令 \hidecallergraph 实现。

默认值是:NO

此标签要求标签 HAVE_DOT 设置为 YES

GRAPHICAL_HIERARCHY

如果 GRAPHICAL_HIERARCHY 标签设置为 YES,则 Doxygen 将以图形方式显示所有类的层次结构,而不是文本方式。

默认值是:YES

此标签要求标签 HAVE_DOT 设置为 YES

DIRECTORY_GRAPH

如果 DIRECTORY_GRAPH 标签设置为 YES,则 Doxygen 将以图形方式显示目录对其他目录的依赖关系。依赖关系由目录中文件之间的 #include 关系确定。当 DIRECTORY_GRAPH 设置为 NO 时,可以通过命令 \directorygraph 显式启用目录图。禁用目录图可以通过命令 \hidedirectorygraph 实现。

默认值是:YES

此标签要求标签 HAVE_DOT 设置为 YES

DIR_GRAPH_MAX_DEPTH

DIR_GRAPH_MAX_DEPTH 标签可用于限制 dot 在目录依赖图中生成的子目录的最大级别数。

最小值:1,最大值:25,默认值:1

此标签要求标签 DIRECTORY_GRAPH 设置为 YES

DOT_IMAGE_FORMAT

DOT_IMAGE_FORMAT 标签可用于设置由 dot 生成的图像的图像格式。有关图像格式的说明,请参阅 dot 工具文档 (Graphviz) 中的输出格式部分。
请注意,格式 svg:cairosvg:cairo:cairo 不能与 INTERACTIVE_SVG 结合使用(INTERACTIVE_SVG 将设置为 NO)。

可能的值为:pngjpggifsvgpng:gdpng:gd:gdpng:cairopng:cairo:gdpng:cairo:cairopng:cairo:gdipluspng:gdipluspng:gdiplus:gdiplussvg:cairosvg:cairo:cairosvg:svgsvg:svg:coregif:cairogif:cairo:gdgif:cairo:gdiplusgif:gdiplusgif:gdiplus:gdiplusgif:gdgif:gd:gdjpg:cairojpg:cairo:gdjpg:cairo:gdiplusjpg:gdjpg:gd:gdjpg:gdiplusjpg:gdiplus:gdiplus

默认值是:png

此标签要求标签 HAVE_DOT 设置为 YES

INTERACTIVE_SVG

如果 DOT_IMAGE_FORMAT 设置为 svgsvg:svgsvg:svg:core,则此选项可以设置为 YES 以启用交互式 SVG 图像的生成,该图像允许缩放和平移。
请注意,这需要除 Internet Explorer 之外的现代浏览器。已测试并正常工作的是 Firefox、Chrome、Safari 和 Opera。
注意:当 DOT_IMAGE_FORMAT 设置为 svg:cairosvg:cairo:cairo 时,此选项将自动禁用。

默认值是:NO

此标签要求标签 HAVE_DOT 设置为 YES

DOT_PATH

DOT_PATH 标签可用于指定 dot 工具的路径。如果留空,则假定 dot 工具可在 path 中找到。

此标签要求标签 HAVE_DOT 设置为 YES

DOTFILE_DIRS

DOTFILE_DIRS 标签可用于指定一个或多个包含在文档中的 dot 文件的目录(请参阅 \dotfile 命令)。

此标签要求标签 HAVE_DOT 设置为 YES

DIA_PATH

您可以在 Doxygen 文档中包含使用 dia 制作的图表。Doxygen 将运行 dia 生成图表并将其插入文档中。DIA_PATH 标签允许您指定 dia 二进制文件所在的目录。如果留空,则假定 dia 可以在默认搜索路径中找到。

DIAFILE_DIRS

DIAFILE_DIRS 标签可用于指定一个或多个包含在文档中的 dia 文件的目录(请参阅 \diafile 命令)。

PLANTUML_JAR_PATH

使用 PlantUML 时,PLANTUML_JAR_PATH 标签应指定 java 可以找到 plantuml.jar 文件的路径或要使用的 jar 文件的文件名。如果留空,则假定不使用 PlantUML 或在预处理步骤中调用。Doxygen 在这种情况下遇到 \startuml 命令时会发出警告,并且不会生成图表的输出。

PLANTUML_CFG_FILE

使用 PlantUML 时,PLANTUML_CFG_FILE 标签可用于为 PlantUML 指定配置文件。

PLANTUML_INCLUDE_PATH

使用 PlantUML 时,将搜索指定路径中 PlantUML 块中 !include 语句指定的文件。

PLANTUMLFILE_DIRS

PLANTUMLFILE_DIRS 标签可用于指定一个或多个包含在文档中的 PlantUml 文件的目录(请参阅 \plantumlfile 命令)。

DOT_GRAPH_MAX_NODES

DOT_GRAPH_MAX_NODES 标签可用于设置图中将显示的最大节点数。如果图中的节点数大于此值,Doxygen 将截断图表,这通过将节点表示为红色框来可视化。请注意,如果图中根节点的直接子节点数已经大于 DOT_GRAPH_MAX_NODES,则图表将根本不显示。另请注意,图表的大小可以通过 MAX_DOT_GRAPH_DEPTH 进一步限制。

最小值:0,最大值:10000,默认值:50

此标签要求标签 HAVE_DOT 设置为 YES

MAX_DOT_GRAPH_DEPTH

MAX_DOT_GRAPH_DEPTH 标签可用于设置由 dot 生成的图的最大深度。深度值为 3 意味着仅显示从根通过最多 3 条边可到达的节点。距根节点更远的节点将被省略。请注意,将此选项设置为 1 或 2 可能会大大减少大型代码库所需的计算时间。另请注意,图的大小可以通过 DOT_GRAPH_MAX_NODES 进一步限制。使用深度 0 表示没有深度限制。

最小值:0,最大值:1000,默认值:0

此标签要求标签 HAVE_DOT 设置为 YES

DOT_MULTI_TARGETS

DOT_MULTI_TARGETS 标签设置为 YES 以允许 dot 在一次运行中生成多个输出文件(即命令行上的多个 -o 和 -T 选项)。这使得 dot 运行速度更快,但由于只有较新版本的 dot (>1.8.10) 支持此功能,因此此功能默认禁用。

默认值是:NO

此标签要求标签 HAVE_DOT 设置为 YES

GENERATE_LEGEND

如果 GENERATE_LEGEND 标签设置为 YES,Doxygen 将生成一个图例页面,解释 dot 生成图中各种框和箭头的含义。

注意
此标签要求 UML_LOOK 未设置,即使用 Doxygen 内部的继承和协作图图形表示。

默认值是:YES

此标签要求标签 HAVE_DOT 设置为 YES

DOT_CLEANUP

如果 DOT_CLEANUP 标签设置为 YES,Doxygen 将删除用于生成各种图表的中间文件。
注意:此设置不仅用于 dot 文件,还用于 msc 临时文件。

默认值是:YES

MSCGEN_TOOL

您可以使用 \msc 命令在 Doxygen 注释中定义消息序列图。如果 MSCGEN_TOOL 标签留空(默认值),则 Doxygen 将使用内置的 mscgen 工具生成图表。或者,MSCGEN_TOOL 标签也可以指定外部工具的名称。例如,将 prog 指定为值,Doxygen 将调用该工具为 prog -T <outfile_format> -o <outputfile> <inputfile>。外部工具应支持输出文件格式“png”、“eps”、“svg”和“ismap”。

MSCFILE_DIRS

MSCFILE_DIRS 标签可用于指定一个或多个包含在文档中的 msc 文件的目录(请参阅 \mscfile 命令)。

示例

假设您有一个简单的项目,由两个文件组成:源文件 example.cc 和头文件 example.h。那么最简单的配置文件如下

INPUT            = example.cc example.h

假设示例使用 Qt 类且 perl 位于 /usr/bin,则更真实的配置文件如下

PROJECT_NAME     = Example
INPUT            = example.cc example.h
WARNINGS         = YES
TAGFILES         = qt.tag
SEARCHENGINE     = NO

为了生成 QdbtTabular 包的文档,我使用了以下配置文件

PROJECT_NAME     = QdbtTabular
OUTPUT_DIRECTORY = html
WARNINGS         = YES
INPUT            = examples/examples.doc src
FILE_PATTERNS    = *.cc *.h
INCLUDE_PATH     = examples
TAGFILES         = qt.tag
SEARCHENGINE     = YES

要从源代码重新生成 Qt-1.44 文档,您可以使用以下配置文件

PROJECT_NAME         = Qt
OUTPUT_DIRECTORY     = qt_docs
HIDE_UNDOC_MEMBERS   = YES
HIDE_UNDOC_CLASSES   = YES
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION      = YES
EXPAND_ONLY_PREDEF   = YES
SEARCH_INCLUDES      = YES
FULL_PATH_NAMES      = YES
STRIP_FROM_PATH      = $(QTDIR)/
PREDEFINED           = USE_TEMPLATECLASS Q_EXPORT= \
                       QArrayT:=QArray \
                       QListT:=QList \
                       QDictT:=QDict \
                       QQueueT:=QQueue \
                       QVectorT:=QVector \
                       QPtrDictT:=QPtrDict \
                       QIntDictT:=QIntDict \
                       QStackT:=QStack \
                       QDictIteratorT:=QDictIterator \
                       QListIteratorT:=QListIterator \
                       QCacheT:=QCache \
                       QCacheIteratorT:=QCacheIterator \
                       QIntCacheT:=QIntCache \
                       QIntCacheIteratorT:=QIntCacheIterator \
                       QIntDictIteratorT:=QIntDictIterator \
                       QPtrDictIteratorT:=QPtrDictIterator
INPUT                = $(QTDIR)/doc \
                       $(QTDIR)/src/widgets \
                       $(QTDIR)/src/kernel \
                       $(QTDIR)/src/dialogs \
                       $(QTDIR)/src/tools
FILE_PATTERNS        = *.cpp *.h q*.doc
INCLUDE_PATH         = $(QTDIR)/include
RECURSIVE            = YES

对于 Qt-2.1 源代码,我建议使用以下设置

PROJECT_NAME          = Qt
PROJECT_NUMBER        = 2.1
HIDE_UNDOC_MEMBERS    = YES
HIDE_UNDOC_CLASSES    = YES
SOURCE_BROWSER        = YES
INPUT                 = $(QTDIR)/src
FILE_PATTERNS         = *.cpp *.h q*.doc
RECURSIVE             = YES
EXCLUDE_PATTERNS      = *codec.cpp moc_* */compat/* */3rdparty/*
ALPHABETICAL_INDEX    = YES
IGNORE_PREFIX         = Q
ENABLE_PREPROCESSING  = YES
MACRO_EXPANSION       = YES
INCLUDE_PATH          = $(QTDIR)/include
PREDEFINED            = Q_PROPERTY(x)= \
                        Q_OVERRIDE(x)= \
                        Q_EXPORT= \
                        Q_ENUMS(x)= \
                        "QT_STATIC_CONST=static const " \
                        _WS_X11_ \
                        INCLUDE_MENUITEM_DEF
EXPAND_ONLY_PREDEF    = YES
EXPAND_AS_DEFINED     = Q_OBJECT_FAKE Q_OBJECT ACTIVATE_SIGNAL_WITH_PARAM \
                        Q_VARIANT_AS

在这里,Doxygen 的预处理器用于替换一些通常由 C 预处理器替换的宏名称,但不进行完整的宏展开。

转到 下一 部分或返回 索引