GNU缩进问题与GNU代码风格

时间:2016-05-20 12:26:06

标签: c indentation gnu osx-elcapitan gnu-indent

由于命令indent,我使用brew安装了brew install gnu-indent所以现在我已经在我的MacOS X上安装了gnu-indent-2.2.10,非常好。我的问题是当我想使用GNU代码样式缩进文件时。

我的意思是我想转换它:

while (foo) {
}

进入这个:

while (foo) 
  {
  }

因此,根据文档,我使用参数indent启动了-bl -bli2,以使GNU代码样式具有2个空格,通过这些空格缩进大括号,但实际得到的是:

while (foo) 
{
}

就像我在-bl -bli0之后使用-bli之后所做的那样,得到了相同的结果。

换句话说,假设test.c的内容是:

while (foo) {
}

如果我启动indent test.c -st -bl -bli2 > test.out,那么test.out就在我身边:

while (foo)
{
}

我是否遗漏了某些内容或GNU indent中的错误?

更新

它似乎与Mac OS X相关,因为它在Debian 8 GNU indent 2.2.11Ubuntu 14.04 GNU indent 2.2.11上按预期工作, 2.2.10-2

1 个答案:

答案 0 :(得分:3)

我终于意识到我没有使用brew中的indent版本,而是来自XCode,问题来自XCode的版本,它不像{{1} }}。如果我使用GNU indent而不是gindent启动相同的命令,它会按预期工作。我的意思是如果我启动indent,我会得到预期的结果:

gindent test.c -st -bl -bli2 > test.out