我正在尝试设置 astyle 以在提交到存储库之前自动格式化代码。到目前为止,我已经配置了我想要的样式参数,并且几乎所有东西都按我想要的方式工作。但是结构初始化有问题。当我在成员中使用运算符进行初始化时,生成的 astyle 缩进与我期望的不匹配。例如,以下代码片段初始化struct test
. 第一个缩进正确,但第二个b
成员缩进了额外的制表符:
struct test {
unsigned char a;
unsigned char b;
};
static struct test test1_var = {
.a = 125,
.b = 0
};
static struct test test2_var = {
.a = 1000 >> 8,
.b = 1000 & 0xFF
};
我用来格式化文件的样式选项是:
--style=linux \
--indent=force-tab=8 \
--pad-comma \
--unpad-paren \
--add-braces \
--max-code-length=120 \
--attach-return-type \
--pad-oper \
--pad-header \
--align-pointer=name \
--indent-after-parens \
--indent-continuation=2
如果我设置--indent-continuation=0
,变量test2_var
会正确缩进,但这会在很多其他地方破坏缩进。
这里的问题是:为什么将结构初始化test2_var
视为延续(对于b
成员),但test1_var
不是?有没有办法让test2_var
缩进的方式与test1_var
不必删除我已经设置的任何样式参数相同?