Doxygen: Возможно ли удалить имена пространств имен в индексе CHM?

Я работаю над проектом C ++, в котором широко используются пространства имен и doxygen. Я предпочитаю использовать файл CHM, скомпилированный MS HHC, по каталогу HTML по разным причинам. Одним из них является очень удобный поиск по индексу в средстве просмотра CHM.

Но имена вызовов в индексе всегда имеют префикс с их пространствами имен, что вынуждает пользователя файла CHM вводить Namespace :: Sub-Namespace :: […] :: ClassName в поиске.

В связи с этим я изменил следующие настройки в файле конфигурации doxygen (ссылаясь на настройки по умолчанию, поставляемые с инструментом):

SHOW_NAMESPACES        = NO
HIDE_SCOPE_NAMES       = YES

Это удаляет имена пространств имен везде, кроме индекса CHM. (Как) возможно ли избавиться от префиксов пространства имен в индексе CHM?

Спасибо за вашу помощь!

0

Решение

Насколько я знаю и пробовал с небольшим проектом C # ответ — нет.

Одним из решений, которое я вижу на этом этапе, является редактирование index.hhk и скомпилируйте снова с помощью HTMLHelp Workshop. Пожалуйста, посмотрите на ваш index.hhk вы найдете в вашей выходной папке Doxygen HTML.

Файл index.hhk является текстовым файлом и может быть открыт любым текстовым редактором, например, Notepad ++. Имея только несколько пространств имен, вы создаете RegEx для своих нужд и заменяете, например, C_Sharp_CHM:: как показано на скриншоте ниже с НИЧЕГО. Но будьте осторожны при использовании этого и попробуйте, прежде чем перейти к производственному варианту использования.

введите описание изображения здесь

Как видите, index.hhk — это старый формат файла, а не HTML, как сегодня. Обычно каждое ключевое слово индекса имеет ссылку и значение (см. Скриншот, текстовый формат отредактирован здесь для лучшего чтения).

Для компиляции index.hhp вам нужно открыть командную строку, перейти к выходной папке и набрать "%programfiles(x86)%\HTML Help Workshop\hhc" index.hhp на машине с Windows 10

1

Другие решения

Других решений пока нет …