Как использовать \addtogroup с командой ALIASES?
Я пытаюсь создать собственную команду для облегчения работы с группой. Идея в общем...
ALIASES += opengroup{1}="^^* \addtogroup \1_GROUP ^^ * \{ ^^"
ALIASES += close="\}"
... использовать в файле кода как...
/** \opengroup{LEVEL_1} */
// ...code statements...
/** \close */ // opengroup
... чтобы получить комментарий к результату:
/**
* \addtogroup LEVEL_1_GROUP
* \{
*/
// ...code statements...
/** \} */ // opengroup
Я пробовал с Doxygen 1.8.14. К сожалению, это не работает. Есть идеи?
Изменить: Я думаю, что основной проблемой является команда \addtogroup с ее синтаксисом. Я надеялся очистить это, вставив "^^" для принудительного ввода новой строки, но мне кажется, что doxygen разбирает команду в одной строке вместо того, чтобы разрешить новую строку "^^" на предварительном этапе...
1 ответ
Немного странно С псевдонимом:
ALIASES += opengroup{1}="^^* \addtogroup \1_GROUP ^^ * \\{ ^^"
так с двойной обратной косой чертой (\\
) до открытия фигурной скобки ({
Я получил это работает. Я также работаю с:
ALIASES += opengroup{1}="^^* \addtogroup \1_GROUP ^^ * @{ ^^"
так что похоже, что дополнительный обратный слеш едят в неожиданном месте. \
а также @
должны быть синонимами, но как \
это также побег, так что это довольно сложно.
Замечания:
- я использовал
doxygen -d commentscan
чтобы увидеть замену - Может измениться в будущем, так как я думаю, что это может быть ошибкой.
- Проблема вызвана тем, что
ALIASES
может быть вложенным, и после изменения новая строка рассматривается как входная. Когда нужен буквальный{
,}
или же,
в расширенном выводе нужно избежать их с\
и\
удаляется на ан. Проблема здесь возникает с командами\{
а также\}
как здесь\
служит "индикатором команды". Лучше всего использовать@{
а также@}
в случае, если нужны "блочные команды".\}
в\close
не имеет проблемы, так как не переоценивается.