Doxygen 1.9.1中如何移除树形视图内Markdown文件并调整层级
Doxygen 1.9.1 树形视图层级调整与文件隐藏解决方案
一、实现子页面的正确层级嵌套
你之前在main.md里用\ref引用子页面会导致它处于顶层,正确的做法是在父页面中使用\subpage命令,将子页面直接嵌套到父页面下:
修改示例:
- page1.md 调整为:
\page page1 This is Page 1 Page one has a [subpage](\ref subpageA) \subpage subpageA
这样生成的树形视图中,subpageA会自动成为Page 1的子节点,完全匹配你期望的层级结构。
二、隐藏不需要在树形视图显示的文件
Doxygen 1.9.1中有两种可靠方法实现文件隐藏:
方法1:使用\internal命令
在需要隐藏的文件顶部添加\internal,Doxygen会将其标记为内部内容,不会显示在树形视图中,但仍能通过\ref正常跳转:
\internal \page file1 This is File 1 ...
方法2:配置EXCLUDE_PATTERNS
在Doxygen配置文件中,直接指定不需要索引的文件路径:
EXCLUDE_PATTERNS = file1.md file2.md file3.md file4.md file5.md
这种方式会直接跳过文件的结构索引,适合完全不需要在文档树形结构中出现的文件。
三、文件格式选择:.dox 配合 EXTENSION_MAPPING 完全可行
将Markdown文件改为.dox后缀,并在配置文件中添加:
EXTENSION_MAPPING = dox=md
Doxygen会把.dox文件当作Markdown解析,功能和.md文件完全一致,同时能更灵活地组合Doxygen命令,没有格式兼容问题。
四、分组功能的正确用法(备选归类方案)
如果需要将多个页面归类但不需要严格嵌套层级,可使用\defgroup和\ingroup配合:
- 在父页面定义组:
\defgroup page1_group Page 1 组 \page page1 This is Page 1 \ingroup page1_group
- 在子页面加入对应组:
\page subpageA This is a subpage \ingroup page1_group
这种方式会将同组页面放在一起展示,适合不需要树形嵌套但需要归类的场景。
最终效果验证
调整后生成的树形视图会变为:
|-标题页
|--Page 1
|---subpageA
|--Page 2
所有目标文件(file1-file5)会被隐藏,不会出现在结构中。
内容的提问来源于stack exchange,提问作者lydiash
相关产品推荐
相关产品推荐

