我试图配置clang格式,以便通常大括号将从他们自己的行开始:
void func()
{
if (...)
{
printf("Ta Da\n");
}
}
但我希望它是这样的,当大括号是空的时候,它将被保存在一行中。 (主要用于ctors):
Bar::Bar(int val):
_val(val)
{}
目前看起来像这样:
Bar::Bar(int val):
_val(val)
{
}
有什么想法吗?
(编辑使情况更加清晰)
答案 0 :(得分:2)
答案 1 :(得分:2)
更新:欢乐! Clang 5.0或更高版本现在可以使用自定义BreakBeforeBraces
。
请参阅documentation中的SplitEmptyFunction
。
配置示例:
BreakBeforeBraces: Custom
BraceWrapping:
SplitEmptyFunction: false
不幸的是, 不可能 用Clang 4.0 来实现当前的clang-format选项(从Clang 4.0开始)。
来源:我有同样的问题。在研究了每个记录的选项以及许多调整尝试之后,我无法做到这一点。根据我的经验,clang-format并不像人们希望的那样灵活。只要您想要退出预定义的样式并根据自己的喜好调整内容,它就不会削减它。