我正在尝试创建自定义命令以简化组的处理。这个想法总的来说...
ALIASES += opengroup{1}="^^* \addtogroup \1_GROUP ^^ * \{ ^^"
ALIASES += close="\}"
...在代码文件中用作...
/** \opengroup{LEVEL_1} */
// ...code statements...
/** \close */ // opengroup
...以获取doxygen结果注释:
/**
* \addtogroup LEVEL_1_GROUP
* \{
*/
// ...code statements...
/** \} */ // opengroup
我尝试使用Doxygen 1.8.14。不幸的是,这不起作用。有什么想法吗?
编辑: 我认为根本问题是\ addtogroup命令及其语法。我的希望是通过插入'^^'来强制换行来清除此问题,但是在我看来doxygen正在将命令解析为一行,而不是在预步骤中解决了'^^'新行... < / p>
答案 0 :(得分:0)
有点奇怪。使用别名:
ALIASES += opengroup{1}="^^* \addtogroup \1_GROUP ^^ * \\{ ^^"
所以在花括号(\\
)打开前加上双反斜杠({
)可以使它工作。
我也可以使用它:
ALIASES += opengroup{1}="^^* \addtogroup \1_GROUP ^^ * @{ ^^"
所以看起来多余的反斜杠在意外的地方被吃掉了。 \
和@
应该是同义词,但是由于\
也是一个转义字符,因此通常很棘手。
注意:
doxygen -d commentscan
来查看替换项ALIASES
可以嵌套并且在更改后将新字符串视为输入这一事实引起的。当需要在扩展输出中使用文字{
,}
或,
时,必须用\
对其进行转义,并且\
在en处被删除。这里的问题出现在命令\{
和\}
上,因为这里\
充当“命令指示符”。如果需要“阻止命令”,最好使用@{
和@}
。 \}
中的\close
没有问题,因为它没有重新评估。