如何通过clang-format实现rust-fmt风格的函数参数换行格式化效果
实现方案
可以通过配置clang-format实现和rust-fmt一致的参数格式化效果,要求clang-format版本≥14,低版本无法完美支持右括号单独换行的特性,所需配置如下:
AlignAfterOpenBracket: AlwaysBreak:强制函数左括号后直接换行BinPackParameters: false:禁止多个函数声明参数合并到同一行,每个参数单独占一行AllowAllParametersOfDeclarationOnNextLine: false:禁止所有参数挤在左括号后的首行BreakClosingParenthesesOnFunctionDeclaration: true:强制函数声明的右括号单独占一行
如果你使用的clang-format版本低于14,只能通过调整PenaltyBreakBeforeFirstCallParameter、PenaltyExcessCharacter等权重参数尽量接近效果,无法完美实现右括号独立换行的要求,建议升级到14及以上版本获得更符合预期的结果。
内容的提问来源于stack exchange,提问作者doliphin
相关产品推荐
相关产品推荐

