配置

格式

配置文件是一个自由格式的 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 (波斯语), Finnish, French, German, Greek, Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (日语带英语消息), Korean, Korean-en (韩语带英语消息), 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,将使用最短的路径使文件名唯一。

默认值是: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”的开头。

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

如果 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 docstrings 显示为预格式化文本,Doxygen 的特殊命令无法使用。通过将 PYTHON_DOCSTRING 设置为 NO,可以使用 Doxygen 的特殊命令,并且 docstring 文档块的内容将显示为 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 来插入换行符(在生成的输出中)。您可以在别名的值部分放入 ^^ 来插入换行符,就像原始文件中有物理换行符一样。当您需要在别名的值部分中使用字面量 {}, 时,您必须通过反斜杠(\)对其进行转义,这可能与命令 \{\} 产生冲突,对于这些命令,建议使用版本 @{@},或者使用双反斜杠转义(\\{\\})。

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

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_SUPPORTNO 来阻止此类链接。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++ 一样解析它们,但在没有显式保护关键字时,将假定所有类都使用 public 继承而不是 private 继承。

默认值是: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 和手册页)或章节(对于 $\mbox{\LaTeX}$ 和 RTF)。
请注意,此功能不能与 SEPARATE_MEMBER_PAGES 结合使用。

默认值是:NO

INLINE_SIMPLE_STRUCTS

INLINE_SIMPLE_STRUCTS 标签设置为 YES 时,仅包含公共数据字段或简单 typedef 字段的结构体、类和联合体将以内联方式显示在其定义作用域(即文件、命名空间或组文档)的文档中,前提是该作用域已文档化。如果设置为 NO,则结构体、类和联合体将显示在单独的页面(对于 HTML 和手册页)或章节(对于 $\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{LOOK\_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_NUM_THREADS 设置控制。

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

TIMESTAMP

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

可能的值有:YESNODATETIMEDATE

默认值是: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++ concepts。如果启用了 EXTRACT_ALL,此选项无效。

默认值是:NO

HIDE_UNDOC_NAMESPACES

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

默认值是:YES

HIDE_FRIEND_COMPOUNDS

如果 HIDE_FRIEND_COMPOUNDS 标签设置为 YES,Doxygen 将隐藏所有 friend 声明。如果设置为 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

可能的值有:SYSTEMNOYES

默认值是: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 默认设置的布局文件,请运行 Doxygen 并使用 -l 选项。您可以选择在选项后指定文件名,如果省略,将使用 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

此标签可用于按文件模式指定源文件的字符编码。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 目录,例如使用模式 */test/*

EXCLUDE_SYMBOLS

EXCLUDE_SYMBOLS 标签可用于指定一个或多个应从输出中排除的符号名称(命名空间、类、函数等)。符号名称可以是完全限定名、单个单词,或者如果使用了通配符 *,则可以是子字符串。示例:ANamespace, AClass, ANamespace::AClass, ANamespace::*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 标签设置为 YESSOURCE_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),因此这些工具必须可以从命令行访问(即在搜索路径中)。
    结果:对源代码的链接将指向 htags 的输出,而不是 Doxygen 生成的源代码浏览器。

默认值是: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 标签设置为 YESCLANG_ADD_INC_PATHS 标签设置为 YES,则 Doxygen 会将每个输入的目录添加到 include 路径中。

默认值是: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 usage 部分,了解如何生成 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 usage 部分,了解如何生成 Doxygen 通常使用的默认尾部。

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

HTML_STYLESHEET

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

另请参见 Doxygen usage 部分,了解如何生成 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 输出中颜色亮度分量的 gamma 校正。小于 100 的值会逐渐使输出变亮,而大于 100 的值会使输出变暗。该值除以 100 是实际应用的 gamma 值,因此 80 代表 gamma 为 0.8,值 220 代表 gamma 为 2.2,100 不改变 gamma。

最小值: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/featuredarticles/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 是一个项目文件,可以被 Microsoft 在 Windows 上的 HTML Help Workshop 读取。2021 年初,微软将原始页面(包括下载链接)下线了(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 Help Compiler (hhc.exe) 的位置(包括文件名的绝对路径)。如果非空,Doxygen 将尝试对生成的 index.hhp 运行 HTML Help Compiler。

必须指定文件的完整路径。

此标签要求 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 Help Project / Namespace

默认值为:org.doxygen.Project

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

QHP_VIRTUAL_FOLDER

QHP_VIRTUAL_FOLDER 标签指定生成 Qt 帮助项目输出时使用的虚拟文件夹名称。更多信息请参见 Qt Help Project / Virtual Folders

默认值为:doc

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

QHP_CUST_FILTER_NAME

如果设置了 QHP_CUST_FILTER_NAME 标签,它将指定要添加的自定义过滤器的名称。更多信息请参见 Qt Help Project / Custom Filters

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

QHP_CUST_FILTER_ATTRS

QHP_CUST_FILTER_ATTRS 标签指定要添加的自定义过滤器的属性列表。更多信息请参见 Qt Help Project / Custom Filters

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

QHP_SECT_FILTER_ATTRS

QHP_SECT_FILTER_ATTRS 标签指定此项目过滤器部分匹配的属性列表。Qt Help Project / Filter Attributes

此标签要求 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 Help 生成的那个)。为此,需要支持 JavaScript、DHTML、CSS 和框架的浏览器(即任何现代浏览器)。Windows 用户使用 HTML help 功能可能会更好。

通过自定义样式表(参见 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 图像,而不是用于 HTML 输出的 PNG 图像。这些图像在缩放分辨率下通常看起来更好。

可能的值有: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_3

默认值为:MathJax_2

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

MATHJAX_FORMAT

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

可能的值为: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.js 脚本。例如,如果 mathjax 目录与 HTML 输出目录位于同一级别,则 MATHJAX_RELPATH 应为 ../mathjax。默认值指向 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-latest/tex.html#tex-and-latex-extensions

MATHJAX_EXTENSIONS     = TeX/AMSmath TeX/AMSsymbols

例如,对于 MathJax 版本 3(参见 http://docs.mathjax.org/en/latest/input/tex/extensions/index.html

MATHJAX_EXTENSIONS     = ams

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

MATHJAX_CODEFILE

MATHJAX_CODEFILE 标签可用于指定一个文件,其中包含 MathJax 代码启动时将使用的 JavaScript 代码片段。更多详细信息请参见 MathJax 网站。例如,要禁用 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 help (GENERATE_HTMLHELP)、Qt help (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 客户端来实现。

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

默认值是:NO

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

EXTERNAL_SEARCH

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

默认值是:NO

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

SEARCHENGINE_URL

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

此标签要求 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 项目,但这些项目都已添加到同一外部搜索索引中。每个项目都需要通过 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
另请参阅
LATEX_MAKEINDEX_CMD 用于生成的输出文件 (.tex) 中的部分。

默认文件为:makeindex

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

LATEX_MAKEINDEX_CMD

LATEX_MAKEINDEX_CMD 标签可用于指定为 $\mbox{\LaTeX}$ 生成索引的命令名称。如果第一个字符不是反斜杠 (\),则会在 $\mbox{\LaTeX}$ 代码中自动添加。

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

默认值为: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 inches), legal (8.5 x 14 inches) 和 executive (7.25 x 10.5 inches)。

默认值为: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 usage 部分,了解如何生成 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 参考文献样式,如果未设置,则使用参考文献样式 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 usage 部分,了解如何生成 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(在批处理模式下,终端上不打印任何内容,错误会滚动显示,如同在每个错误处按下了 <return>;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 usage 部分,了解如何生成 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 将生成可用于生成 PDF 的 Docbook 文件。

默认值是:NO

DOCBOOK_OUTPUT

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

默认目录为:docbook

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

AutoGen Definitions 输出的配置选项

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。有关标签文件用法的更多信息,请参阅 Linking to external documentation 部分。

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

GENERATE_TAGFILE

GENERATE_TAGFILE 后指定文件名时,Doxygen 将基于其读取的输入文件创建一个标签文件。有关标签文件用法的更多信息,请参阅 Linking to external documentation 部分。

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 和朗讯贝尔实验室的图可视化工具包。如果此选项设置为 NO,本节中的其他选项将不起作用。

默认值是:NO

DOT_NUM_THREADS

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

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

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

DOT_COMMON_ATTR

DOT_COMMON_ATTR 是节点、边和子图标签的通用属性。当您想要在 Doxygen 生成的 dot 文件中使用不同的字体时,可以指定 fontname、fontcolor 和 fontsize 属性。详情请参见 Node, Edge and Graph Attributes specification。您需要确保 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 属性中 fontname 指定的字体的路径。

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

CLASS_GRAPH

如果 CLASS_GRAPH 标签设置为 YESGRAPHBUILTIN,则 Doxygen 将为每个文档化的类生成一个图表,显示直接和间接继承关系。如果 CLASS_GRAPH 标签设置为 YESGRAPHHAVE_DOT 也已启用,则将使用 dot 绘制图表。如果 CLASS_GRAPH 标签设置为 YESHAVE_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 来实现。

另请参阅手册中的 Grouping 章节。

默认值是: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 工具的查找路径。如果留空,则假定可以在 path 中找到 dot 工具。

此标签要求标签 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 预处理器替换的一些宏名称,但不会进行完整的宏展开。

转到下一节或返回索引