语法突出显示 - 如何在 doxygen 文档中嵌入 shell 代码段



安装我的软件包时,用户应该在某些时候键入

./wand-new "`cat wandcfg_install.spell`"

或者调用任何配置文件。如果我把这一行放在\code ... \endcode中,doxygen认为它是C++或...无论如何,"新"一词被视为关键字。如何以语义正确的方式避免这种情况?

我认为\逐字是无效的,因为它实际上是代码,对吧?

(我想答案是戳Dimitri应该在像LaTeX列表包这样的代码块中添加对更多语言的支持,或者至少同时为代码添加一个禁用解析选项(

>截至 2017 年 7 月,Doxygen 不再正式支持记录 Shell/Bash 脚本语言,甚至不支持作为扩展。有一个非官方的过滤器叫做bash-doxygen。设置简单:只需下载一个文件和三个标志调整:

  • 编辑将 shell 文件映射到 C 解析器的DoxyfileEXTENSION_MAPPING = sh=C
  • 将 shell 脚本文件名模式设置为 Doxygen 输入,例如例如:FILE_PATTERNS = *.sh
  • INTPUT_FILTERdoxygen-bash.sed FILTER_PATTERN指令你的Doxyfile。如果doxygen-bash.sed在你的$PATH,然后你可以按原样调用它,否则使用sed -n -f /path/to/doxygen-bash.sed --

请注意,由于它使用 C 语言解析,因此存在一些限制,如 bash-doxygen 的主自述文件页面所述,其中之一,至少在我的测试中,code {.sh}识别 shell 语法,但代码块中的所有行都以星号 ( * 开头(,显然是要求所有 Doxygen 文档部分都有以双哈希 (## 开头的行的副作用(。

相关内容

  • 没有找到相关文章

最新更新