Doxygen 树视图仅显示一个 group/module
Doxygen tree-view shows only one group/module
在几个不同的 .h
文件中,我有:
/**
* @defgroup NAME <title>
* <description>
* @{
*/
// ...
/** @} */
也就是我定义了几个组。在生成的 HTML 文档中,所有组都显示在模块下。但是,在树视图层次结构中,仅显示第一组。为什么?
如果我通过 DISABLE_INDEX = NO
启用正常的 模块 菜单,则该菜单包括所有 3 个模块(应该如此)。那么为什么树视图不显示所有 3 个?
我正在使用 Doxygen 1.8.13。
为了完整起见,这里是我的 Doxyfile
仅显示那些与默认值不同的值:
PROJECT_NAME = "cdecl"
PROJECT_BRIEF = "Compose and decipher C (or C++) type declarations or casts, aka ‘‘gibberish.’’"
INPUT = README.md src
EXTENSION_MAPPING = l=C y=C
FILE_PATTERNS = *.c *.h *.l *.md *.y
FILTER_PATTERNS = "*.h=sed s/CDECL_[A-Z]*_INLINE/inline/"
PREDEFINED = __GNUC__ \
WITH_READLINE \
WITH_TERM_COLUMNS
EXCLUDE = src/config.h \
src/lexer.c \
src/literals.h src/literals.c \
src/parser.c src/parser.h
OUTPUT_DIRECTORY = docs
EXTRACT_ALL = YES
EXTRACT_PACKAGE = YES
EXTRACT_STATIC = YES
DISABLE_INDEX = YES
GENERATE_TREEVIEW = YES
ALPHABETICAL_INDEX = NO
ENUM_VALUES_PER_LINE = 1
FORCE_LOCAL_INCLUDES = YES
INTERNAL_DOCS = YES
JAVADOC_AUTOBRIEF = YES
MARKDOWN_SUPPORT = YES
MAX_INITIALIZER_LINES = 0
OPTIMIZE_OUTPUT_FOR_C = YES
QUIET = YES
SHOW_INCLUDE_FILES = NO
SORT_BRIEF_DOCS = YES
TAB_SIZE = 2
TYPEDEF_HIDES_STRUCT = YES
USE_MDFILE_AS_MAINPAGE = README.md
WARN_NO_PARAMDOC = YES
SOURCE_BROWSER = YES
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_LINK_SOURCE = YES
REFERENCES_RELATION = YES
尽管我在浏览器中使用了强制重新加载,但显然 不会 导致 JavaScript 重新加载。这些模块是使用 JavaScript 完成的(为什么??)。所以答案是 Doxygen 或我对它的使用没有任何问题:这是一个愚蠢的浏览器缓存问题。
为了强制重新加载所有内容,我必须清除浏览器缓存才能看到更改。这在写文档的时候真的很烦人。
在几个不同的 .h
文件中,我有:
/**
* @defgroup NAME <title>
* <description>
* @{
*/
// ...
/** @} */
也就是我定义了几个组。在生成的 HTML 文档中,所有组都显示在模块下。但是,在树视图层次结构中,仅显示第一组。为什么?
如果我通过 DISABLE_INDEX = NO
启用正常的 模块 菜单,则该菜单包括所有 3 个模块(应该如此)。那么为什么树视图不显示所有 3 个?
我正在使用 Doxygen 1.8.13。
为了完整起见,这里是我的 Doxyfile
仅显示那些与默认值不同的值:
PROJECT_NAME = "cdecl"
PROJECT_BRIEF = "Compose and decipher C (or C++) type declarations or casts, aka ‘‘gibberish.’’"
INPUT = README.md src
EXTENSION_MAPPING = l=C y=C
FILE_PATTERNS = *.c *.h *.l *.md *.y
FILTER_PATTERNS = "*.h=sed s/CDECL_[A-Z]*_INLINE/inline/"
PREDEFINED = __GNUC__ \
WITH_READLINE \
WITH_TERM_COLUMNS
EXCLUDE = src/config.h \
src/lexer.c \
src/literals.h src/literals.c \
src/parser.c src/parser.h
OUTPUT_DIRECTORY = docs
EXTRACT_ALL = YES
EXTRACT_PACKAGE = YES
EXTRACT_STATIC = YES
DISABLE_INDEX = YES
GENERATE_TREEVIEW = YES
ALPHABETICAL_INDEX = NO
ENUM_VALUES_PER_LINE = 1
FORCE_LOCAL_INCLUDES = YES
INTERNAL_DOCS = YES
JAVADOC_AUTOBRIEF = YES
MARKDOWN_SUPPORT = YES
MAX_INITIALIZER_LINES = 0
OPTIMIZE_OUTPUT_FOR_C = YES
QUIET = YES
SHOW_INCLUDE_FILES = NO
SORT_BRIEF_DOCS = YES
TAB_SIZE = 2
TYPEDEF_HIDES_STRUCT = YES
USE_MDFILE_AS_MAINPAGE = README.md
WARN_NO_PARAMDOC = YES
SOURCE_BROWSER = YES
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_LINK_SOURCE = YES
REFERENCES_RELATION = YES
尽管我在浏览器中使用了强制重新加载,但显然 不会 导致 JavaScript 重新加载。这些模块是使用 JavaScript 完成的(为什么??)。所以答案是 Doxygen 或我对它的使用没有任何问题:这是一个愚蠢的浏览器缓存问题。
为了强制重新加载所有内容,我必须清除浏览器缓存才能看到更改。这在写文档的时候真的很烦人。