Я работаю над проектом C ++, в котором широко используются пространства имен и doxygen. Я предпочитаю использовать файл CHM, скомпилированный MS HHC, по каталогу 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 является текстовым файлом и может быть открыт любым текстовым редактором, например, Notepad ++. Имея только несколько пространств имен, вы создаете RegEx для своих нужд и заменяете, например, C_Sharp_CHM::
как показано на скриншоте ниже с НИЧЕГО. Но будьте осторожны при использовании этого и попробуйте, прежде чем перейти к производственному варианту использования.
Как видите, index.hhk — это старый формат файла, а не HTML, как сегодня. Обычно каждое ключевое слово индекса имеет ссылку и значение (см. Скриншот, текстовый формат отредактирован здесь для лучшего чтения).
Для компиляции index.hhp вам нужно открыть командную строку, перейти к выходной папке и набрать "%programfiles(x86)%\HTML Help Workshop\hhc" index.hhp
на машине с Windows 10
Других решений пока нет …