【发布时间】:2012-04-25 15:32:23
【问题描述】:
我的 doxygen 文档显示了每个类成员函数的源代码。 我的源代码有时会在函数之间包含多个空行。
如何让 doxygen compact 或 strip 这些多个空行? (而不是在预览中显示它们)
回答(从下方)
下面的答案为我指明了正确的方向:INPUT_FILTER (doxygen documentation)
INPUT_FILTER 标记可用于指定 doxygen 应调用的程序来过滤每个输入文件。 Doxygen 将通过执行(通过 popen())命令来调用过滤程序:
<filter> <input-file>
其中是 INPUT_FILTER 标记的值,并且是输入文件的名称。然后 Doxygen 将使用过滤器程序写入标准输出的输出。
我很快写了一个 python 脚本(我在 Win7 上)来做'压缩':
import re
import sys
if len(sys.argv) != 2:
exit()
with open(sys.argv[1]) as f:
original = f.read()
compact = re.sub('\n\n\n+', '\n\n', original)
print(compact)
然后我将它添加到过滤器中:
INPUT_FILTER = "python ../DoxyCompact.py"
这也为在 doxygen 读取之前修改源代码提供了很多可能性!
【问题讨论】:
-
您是否有不想使用Sphinx的具体原因?
-
我使用的是 Win7 64 位机器,我真的努力设置它。最后我用了 doxygen,效果很好……