如何在doxygen文档中嵌入shell片段

问题描述 投票:3回答:1

安装我的软件包时,用户应该在某种程度上输入类型

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

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

我认为\逐字被取消资格,因为它实际上是代码,对吗?

(我想答案是要解决Dimitri应该在像LaTeX列表包这样的代码块中添加对更多语言的支持,或者至少在此期间为代码添加disableparse选项)

shell syntax-highlighting doxygen
1个回答
0
投票

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.