我使用Doxygen来记录C ++代码,并为代码编写了大量的Doxygen doc。在一个地方,我在代码中列出了一个组列表,并希望它显示如下:
- Control Module:控制一切的模块
- Slave Module:作为Control Module
的奴隶的模块
我的文档来源如下:
- @ref CM:控制一切的模块
的从属模块
- @ref SM:作为@CM
但是,问题:Doxygen似乎将参考名称读作CM
,而不是echo "${NOUN}s"
,因此无法找到参考。所以,不知怎的,我需要告诉Doxygen参考名称的结尾。 (例如,如果我使用Bash,并希望用" s"作为后缀来回显变量字符串,我会使用{{1}}。)
作为一种解决方法,我可以在名称和后续冒号之间添加一个空格,但这会使得生成的文档难以阅读,我希望避免使用它。
在Special Commands下,Doxygen手册包含以下有希望的信息:
某些命令有一个或多个参数。每个论点都有一定的 范围:
- 如果< sharp>使用大括号参数是单个单词。
- 如果使用(圆形)大括号,则参数会一直延伸到行的末尾 哪个命令被找到了。
- 如果使用{curly}大括号参数 延伸到下一段。段落由空白分隔 线或部分指示器。
好的,这一切都很好,但是文档没有说明,而且我无法弄明白, 这些大括号应该去哪里。只围绕论点?围绕整个命令和论点?两者都没有用,我也无法提出一种有效的替代方案。
那么,我如何指出Doxygen参考名称的结尾?如果支撑是答案,他们会去哪里?
答案 0 :(得分:2)
这适用于Doxygen版本1.8.11:
\ref name "":
显然,空字符串会触发回退以使用之前的name参数。
答案 1 :(得分:1)
您引用的Doxygen文档描述了使用Doxygen解析的 Doxygen文档而不是 sources 的语法。
换句话说,如果< sharp>在描述命令时使用大括号,它只需一个单词;等等。
查看@ref
的文档:
\ref <name> ["(text)"]
name
参数位于“尖括号”中,所以它只是一个单词。不幸的是,Doxygen似乎将:
解释为该词的一部分。你最好的选择是引入一个空间:
@ref CM : the ...
您还可以尝试零宽度字符是否会破坏单词识别:
@ref CM‌: the ...