代码段1:
enum {
Test
};
代码段2:
enum { Test };
在llvm 4.3.2中,clang-format会将Snippet 2
格式化为Snippet 1
,但是在llvm 4.5.0及更高版本中,clang-format做相反的事情,这意味着它将格式化{{ 1}}插入Snippet 1
。
两个版本都使用相同的格式选项Snippet 2
。
如何使用-style=google
文件控制此行为?我已经尝试了clang格式文档中提到的许多选项,但是它们都不起作用。
答案 0 :(得分:1)
在Clang 12的documentation(我相信尚未发布)中,有一个新样式选项AllowShortEnumsOnASingleLine
应该可以直接控制它。对于代码段1设置为false
,对于代码段2设置为true
。
直到那时,我认为您都无法获得Snippet 1格式。最接近的方法是设置BreakBeforeBraces: Allman
,或者(等效地)设置BreakBeforeBraces: Custom
并设置BraceWrapping
标志AfterEnum: true
。这会给你:
enum
{
Test
};