如何配置Clang-format实现结构体数组初始化项每行仅显示一个?
Clang-format 结构体数组初始化项每行单独显示配置方案
你需要在.clang-format配置文件中添加以下配置组合:
BinPackArguments: false
核心控制项,禁止clang-format将同层级的多个初始化项、函数参数打包合并到同一行。AllowShortArraysOnASingleLine: Never
专门针对数组初始化场景的控制项,要求所有数组元素单独成行,不会触发短数组自动合并逻辑,该配置要求clang-format版本≥13。
如果你的clang-format版本低于13,补充添加以下配置即可:
ConstructorInitializerAllOnOneLineOrOnePerLine: true
建议同步调整Cpp11BracedListStyle: true,避免大括号周围出现多余的无用空格。
配置生效后,你的代码会被格式化为预期形式:
sym keywords[] = { {0, 0, "C"}, {0, 0, "T"}, {0, 0, "V"}, {0, 0, "ax"}, {0, 0, "bool"}, {0, 0, "break"}, ... {0, 0, "val"}, {0, 0, "vector"}, {0, 0, "version"}, {0, 0, "void"}, {0, 0, "while"}, };
内容的提问来源于stack exchange,提问作者rwallace
相关产品推荐
相关产品推荐

