uncrustify:我可以控制它决定分开线的位置吗?

uncrustify: can I control where it decides to break apart lines?

我一直在尝试 uncrustify,虽然我已经从它的可配置性中学到了很多东西,但我发现它偶尔会决定以我不同意的方式分开线条。

一些例子:

void functionWithLongName(int parameter1, int parameter2, int parameter3, int parameter4) {
}

..变成:

void functionWithLongName(int parameter1, int parameter2, int parameter3, int
                          parameter4) {
}

我希望它是:

void functionWithLongName(int parameter1, int parameter2, int parameter3,
                          int parameter4) {
}

...因为我希望它不要拆分类型和变量名称,以及任何限定符。

另一个例子:

ClassName::ClassName(int importantValue) : memberVariable1(0), memberVariable2(importantValue), memberVariable3(0) {}

...变成:

ClassName::ClassName(int importantValue) : memberVariable1(0), memberVariable2(
        importantValue), memberVariable3(0) {}

但我不希望它在这些初始值设定项之一的括号之间中断。我更喜欢这样的东西:

ClassName::ClassName(int importantValue) : memberVariable1(0),
    memberVariable2(importantValue), memberVariable3(0) {}

通过 crustify 的文档,我没有找到让我指定它的设置。有办法吗?

如果有帮助,here is my current uncrustify config file.

看来问题是将 ls_code_width 设置为 true。一旦我将其设置为 false,uncrustify 现在似乎会尝试保持分组。