我有一个包含bash、python和C文件的项目,我只想在doxygen文档中打印bash文件的内容。
我使用的是Doxygen 1.9.4,我的Doxyfile有以下修改后的设置:
JAVADOC_AUTOBRIEF = YES
PYTHON_DOCSTRING = NO
OPTIMIZE_OUTPUT_JAVA = YES
EXTENSION_MAPPING = sh=C
EXTRACT_ALL = YES
SORT_BRIEF_DOCS = YES
INPUT = .
FILTER_PATTERNS = *.sh="sh_filter"
FILE_PATTERNS += *.sh
sh_filter文件具有以下内容
#!/bin/bash
echo "verbatim"
echo "$(cat $1)"
echo "endverbatim"
运行doxygen后,工作目录中bash文件的文件引用中没有任何内容。
如何将文件内容逐字打印?
注释有点长。所请求的构造是非常不寻常的,因为通常的目的是记录例程/变量/类/命名空间等,并用代码支持这一点。在这种情况下,要求只是显示文件的内容。我发现最好的解决方案是创建这样的过滤器:
#!/bin/bash
echo "/** file"
echo "details verbinclude $1 */"
echo "$(cat $1)"
并将以下内容添加到doxygen设置文件中:
EXTENSION_MAPPING = sh=C
INPUT = .
FILTER_PATTERNS = *.sh="./sh_filter"
FILE_PATTERNS += *.sh
EXAMPLE_PATH = .
(不同的路径取决于当地情况(