截断 Doxygen 主页中的命名空间

本文关键字:命名空间 主页 Doxygen 截断 | 更新日期: 2023-09-27 18:34:42

我正在编写一个 C# 库,并希望从我的mainpage.md文件链接到某些类的页面。但是,我可以让 Doxygen 在主页的文本中制作链接的唯一方法是编写类的完全限定名称(例如。 com.mycompany.myproject.MyClass (在主页上,这有点难以阅读,而且反复书写真的很痛苦。我希望能够在主页上写MyClass并将其链接到com.mycompany.myproject.MyClass.

无论如何,我的项目中只有一个命名空间:有什么方法可以让主页假设所有名称都隐式在这个命名空间中?在最坏的情况下,有没有一种很好的方法可以在生成过程中从类名中截断命名空间?现在我最好的解决方案是在运行 Doxygen 自己编辑index.html后,用sed运行我的 HTML 文件。

截断 Doxygen 主页中的命名空间

我终于在doxygen的评论中找到了答案:如何从Mainpage.dox创建指向类定义的超链接?

从本质上讲,答案是将我的mainpage.md文件更改为mainpage.dox文件,并用namespace声明包围我的主页,如下所示:

namespace com.mycompany.myproject {
/**
 * {mainpage text here}
 */
}

这使主页位于命名空间内,并指示 Doxygen 在正确的命名空间中查找主页正文中提到的任何类名。

尝试使用 HIDE_SCOPE_NAMES

HIDE_SCOPE_NAMES = YES

http://www.doxygen.nl/manual/config.html#cfg_hide_scope_names

如果HIDE_SCOPE_NAMES标签设置为 NO(默认值(,则 Doxygen 将在 文档。如果设置为"是",则范围将被隐藏。

因此,使用此功能应该允许:

com.mycompany.myproject.MyClass

成为:

 MyClass