# This is for clang-format >= 9.0. # # clang-format --version # clang-format version 9.0.1 (Red Hat 9.0.1-2.module+el8.2.0+5494+7b8075cf) # # 详细说明见: https://clang.llvm.org/docs/ClangFormatStyleOptions.html # 部分参数会随版本变化. --- Language: Cpp # 基于 WebKit 的风格, https://www.webkit.org/coding/coding-style.html BasedOnStyle: WebKit # 以下各选项按字母排序 # public/protected/private 不缩进 AccessModifierOffset: -4 # 参数过长时统一换行 AlignAfterOpenBracket: AlwaysBreak # clang-format >= 13 required, map 之类的内部列对齐 # AlignArrayOfStructures: Left # 换行符统一在 ColumnLimit 最右侧 AlignEscapedNewlines: Right # 不允许短代码块单行, 即不允许单行代码: if (x) return; AllowShortBlocksOnASingleLine: false # 只允许 Inline 函数单行 AllowShortFunctionsOnASingleLine: Inline # 模板声明换行 AlwaysBreakTemplateDeclarations: Yes # 左开括号不换行 BreakBeforeBraces: Custom BraceWrapping: AfterCaseLabel: false AfterClass: false # BraceWrappingAfterControlStatementStyle: MultiLine AfterEnum: false AfterFunction: false AfterNamespace: false AfterStruct: false AfterUnion: false AfterExternBlock: false BeforeCatch: false BeforeElse: false BeforeLambdaBody: false BeforeWhile: false IndentBraces: false SplitEmptyFunction: false SplitEmptyRecord: false SplitEmptyNamespace: false # 构造函数初始化时在 `,` 前换行, 和 `:` 对齐显得整齐 BreakConstructorInitializers: BeforeComma # 继承过长需要换行时也在 `,` 前 BreakInheritanceList: BeforeComma # 列宽 120 ColumnLimit: 120 # c++11 括号内起始/结束无空格, false 会加上 Cpp11BracedListStyle: false # 命名空间后的注释会修正为: // namespace_name FixNamespaceComments: true #switch case的缩进 IndentCaseLabels: true #允许单行case AllowShortCaseLabelsOnASingleLine: true # clang-format >= 13 required, lambda 函数内部缩进级别和外部一致, 默认会增加一级缩进 # LambdaBodyIndentation: OuterScope # 命名空间不缩进 NamespaceIndentation: None # PPIndentWidth: 2 # */& 靠近变量, 向右靠 PointerAlignment: Right # c++11 使用 {} 构造时和变量加个空格 SpaceBeforeCpp11BracedList: true # 继承时 `:` 前加空格 SpaceBeforeInheritanceColon: true # () 前不加空格, do/for/if/switch/while 除外 SpaceBeforeParens: ControlStatements # 空 {} 中不加空格 SpaceInEmptyBlock: false Standard: C++11 # Tab 占 4 位 TabWidth: 4 # 不使用 TAB UseTab: Never --- Language: Java --- Language: JavaScript ...