12345678910111213141516171819202122232425262728293031323334353637 |
- # .clang-format
- # 这是一个尝试接近 Qt 风格的配置。
- # Qt 的风格比较独特,可能需要结合 Clang-Format 的其他选项和手动调整。
- BasedOnStyle: Google # Google 风格的控制流大括号是同行的,作为起点。
- # 也可以尝试 BasedOnStyle: LLVM
- IndentWidth: 4
- UseTab: Never
- ColumnLimit: 100 # 建议行宽
- # Qt 类和函数的大括号在新行,控制流语句的大括号同行。
- # Clang-Format 的 BreakBeforeBraces 选项很难完美匹配这种混合风格。
- # AttachStyle: 用于控制流语句的大括号行为,通常与 K&R 风格(同行)一致。
- # 对于类和函数,你可能需要更复杂的 Clang-Format 配置,或者接受一点偏差。
- # 默认的 BasedOnStyle: Google 或 LLVM 已经把控制流语句的大括号放在同行了。
- BreakBeforeBraces: Attach # 用于 if/for/while 等控制流语句,使其大括号与语句同行
- # 对于类、函数、命名空间等大括号的控制:
- # Qt 风格中,类、函数、命名空间的大括号是新一行的。
- # Clang-Format 没有一个直接的 BreakBeforeBraces 选项来完美匹配这种组合。
- # Default/Custom 会根据情况进行调整。
- # 通常,当你设置 BreakBeforeBraces: Attach 时,类和函数的大括号会默认在新行。
- # 这是一个需要你测试和验证的部分。
- AlignTrailingComments: true # 尾随注释的对齐
- # 指针/引用符
- PointerAndReferenceBindsToType: false # * 和 & 紧贴变量名 (e.g., int *x)
- # 或 true 如果你喜欢紧贴类型 (e.g., int* x),Qt 官方更常用前者,但后者也常见。
- # 注意:Qt 官方指南里是这样写的:`char *ptr;` 但实际代码中 `char* ptr;` 也大量存在。
- # 其他常见的 Q_PROPERTY 相关的对齐
- AllowShortBlocksOnASingleLine: Empty # {} 可以放在一行
- # 确保在项目中安装了 Clang-Format VS Code 扩展,并设置为保存时格式化。
|