拆分参数而不是声明



我试图让clang-format听从我的命令,并绊倒了一点。 我希望我的 C 函数声明的格式为:

sensor_t *sensor_enable_alarm(sensor_t *sensor, 
float lo_thresh, 
float hi_thresh);

但是使用我当前的设置,CLANG 格式希望将其格式化为:

sensor_t *
sensor_enable_alarm(sensor_t *sensor, float lo_thresh, float hi_thresh);

我已经通过以下方式从llvm初始化了我的.clang格式:

clang-format -style=llvm -dump-config > .clang-format

并将BinPackParameters修改为假:

BinPackParameters: false

我需要对 .clang 格式进行哪些额外的调整?

这可以通过将PenaltyReturnTypeOnItsOwnLine设置为较大的值来完成。LLVM 样式的默认值为60。尝试200,这是GoogleMozillaChromium样式的默认值。

例如,clang-format -style='{BasedOnStyle: LLVM, BinPackParameters: false, PenaltyReturnTypeOnItsOwnLine: 200}' yourfile.cpp给出以下输出:

sensor_t *sensor_enable_alarm(sensor_t *sensor,
float lo_thresh,
float hi_thresh);

与往常一样,请参阅文档以获取更多信息。然而,不幸的是,真的没有太多东西可以解释"惩罚"值。

最新更新