如何在源代码预览中压缩/剥离多个空白行



我的doxygen文档显示了每个类成员函数的源代码。我的源代码有时在函数之间包含多个空行。

如何让氧气压剥离这些多个空白行?(而不是在预览中显示它们)

答案(从下面)

下面的答案为我指明了正确的方向:INPUT_FILTER(氧气文档)

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('nnn+', 'nn', original)
  print(compact)

然后我把它添加到过滤器中:

INPUT_FILTER = "python ../DoxyCompact.py"

这也开辟了很多在doxygen读取之前修改源的可能性!

我能想到的唯一方法是定义一些预处理器来去除多个空白行,然后 doxygen 使用文档中的源代码。要定义要对源文件执行的操作(或筛选器),请使用INPUT_FILTER配置文件选项。

警告:以下内容尚未经过测试。

从问题如何在 bash 中用单个空行替换多个空行? 似乎可以使用

sed /^$/d

要去除多个空行,请在配置文件中设置

INPUT_FILTER = sed /^$/d

最新更新