有没有办法禁用 clang 格式的"SpacesInBraces"?

Is there a way to disable "SpacesInBraces" in clang-format?

本文关键字:SpacesInBraces 格式 clang 有没有      更新时间:2023-10-16

我想要这个:

int x{ 0 };

看起来像这样:

int x{0};

但我在文档中看不到它的选项。

有:

  • SpacesInAngles
  • 空格容器文字
  • 空格空格
  • 空格矩形括号

但我看不出大括号有这个选项。这在clang格式中可行吗?

编辑:发布的第一个答案使用Cpp11BracedListStyle。这样做的问题在于它可以防止数组中的换行。因此,即使是一个文字数组中的100个元素也不会中断。这副作用太大了,难以下咽。

您可以使用Cpp11BracedListStyle执行此操作。

来自文档:

如果是true,则将支撑列表格式化为最适合C++11支撑列表。

重要区别:

  • 支撑列表中没有空格
  • 右大括号前没有换行符
  • 带有连续缩进的缩进,而不是带有块缩进的缩进