Doxygen:是否可以去除 CHM 索引中的命名空间名称?
Doxygen: Is it possible to strip namespace names in CHM index?
我正在开发一个广泛使用名称空间和 doxygen 的 C++ 项目。出于各种原因,我更喜欢使用由 MS HHC 编译的 CHM 文件而不是 HTML 目录。其中之一就是CHM查看器中非常方便的索引搜索。
但是索引中的调用名称总是以它们的命名空间为前缀,这迫使 CHM 文件的用户在搜索中输入 Namespace::Sub-Namespace::[...]::ClassName。
对此,我在doxygen配置文件中修改了如下设置(参考工具自带的默认设置):
SHOW_NAMESPACES = NO
HIDE_SCOPE_NAMES = YES
这将删除除 CHM 索引之外的所有名称空间名称。 (如何)也可以去掉 CHM 索引中的命名空间前缀?
据我所知并尝试过一个小型 C# 项目,答案是 - 不。
我在这个阶段看到的一个解决方案是编辑生成的 index.hhk 并通过 HTMLHelp Workshop 再次编译。请查看您的 index.hhk,您会在 Doxygen HTML 输出子文件夹中找到它。
index.hhk 文件是一个文本文件,可以用任何文本编辑器打开,例如记事本++。只有一些名称空间,您可以根据需要制作 RegEx 并替换例如C_Sharp_CHM::
如下面的屏幕截图所示,什么都没有。但是要小心使用它并在进入生产用例之前尝试。
如您所见,index.hhk 是一种旧文件格式,而不是今天使用的 HTML。通常每个索引关键字都有一个 link 和一个值(见屏幕截图,此处编辑文本格式以便更好地阅读)。
要编译 index.hhp,您需要打开命令提示符,导航到输出文件夹并在 Windows 上键入 "%programfiles(x86)%\HTML Help Workshop\hhc" index.hhp
10台机器。
我正在开发一个广泛使用名称空间和 doxygen 的 C++ 项目。出于各种原因,我更喜欢使用由 MS HHC 编译的 CHM 文件而不是 HTML 目录。其中之一就是CHM查看器中非常方便的索引搜索。
但是索引中的调用名称总是以它们的命名空间为前缀,这迫使 CHM 文件的用户在搜索中输入 Namespace::Sub-Namespace::[...]::ClassName。
对此,我在doxygen配置文件中修改了如下设置(参考工具自带的默认设置):
SHOW_NAMESPACES = NO
HIDE_SCOPE_NAMES = YES
这将删除除 CHM 索引之外的所有名称空间名称。 (如何)也可以去掉 CHM 索引中的命名空间前缀?
据我所知并尝试过一个小型 C# 项目,答案是 - 不。
我在这个阶段看到的一个解决方案是编辑生成的 index.hhk 并通过 HTMLHelp Workshop 再次编译。请查看您的 index.hhk,您会在 Doxygen HTML 输出子文件夹中找到它。
index.hhk 文件是一个文本文件,可以用任何文本编辑器打开,例如记事本++。只有一些名称空间,您可以根据需要制作 RegEx 并替换例如C_Sharp_CHM::
如下面的屏幕截图所示,什么都没有。但是要小心使用它并在进入生产用例之前尝试。
如您所见,index.hhk 是一种旧文件格式,而不是今天使用的 HTML。通常每个索引关键字都有一个 link 和一个值(见屏幕截图,此处编辑文本格式以便更好地阅读)。
要编译 index.hhp,您需要打开命令提示符,导航到输出文件夹并在 Windows 上键入 "%programfiles(x86)%\HTML Help Workshop\hhc" index.hhp
10台机器。