|
| 1 | +--- |
| 2 | +# 语言: None, Cpp, Java, JavaScript, ObjC, Proto, TableGen, TextProto |
| 3 | +Language: Cpp |
| 4 | +# BasedOnStyle: WebKit |
| 5 | +# 访问说明符(public、private等)的偏移 |
| 6 | +AccessModifierOffset: -4 |
| 7 | +# 开括号(开圆括号、开尖括号、开方括号)后的对齐: Align, DontAlign, AlwaysBreak(总是在开括号后换行) |
| 8 | +AlignAfterOpenBracket: AlwaysBreak |
| 9 | +# 连续赋值时,对齐所有等号 |
| 10 | +AlignConsecutiveAssignments: false |
| 11 | +# 连续声明时,对齐所有声明的变量名 |
| 12 | +AlignConsecutiveDeclarations: false |
| 13 | +# 左对齐逃脱换行(使用反斜杠换行)的反斜杠 |
| 14 | +AlignEscapedNewlines: Right |
| 15 | +# 水平对齐二元和三元表达式的操作数 |
| 16 | +AlignOperands: true |
| 17 | +# 对齐连续的尾随的注释 |
| 18 | +AlignTrailingComments: true |
| 19 | +# 允许函数声明的所有参数在放在下一行 |
| 20 | +AllowAllParametersOfDeclarationOnNextLine: false |
| 21 | +# 允许短的块放在同一行 |
| 22 | +AllowShortBlocksOnASingleLine: false |
| 23 | +# 允许短的case标签放在同一行 |
| 24 | +AllowShortCaseLabelsOnASingleLine: false |
| 25 | +# 允许短的函数放在同一行: None, InlineOnly(定义在类中), Empty(空函数), Inline(定义在类中,空函数), All |
| 26 | +AllowShortFunctionsOnASingleLine: Empty |
| 27 | +# 允许短的if语句保持在同一行 |
| 28 | +AllowShortIfStatementsOnASingleLine: false |
| 29 | +# 允许短的循环保持在同一行 |
| 30 | +AllowShortLoopsOnASingleLine: false |
| 31 | +# 总是在定义返回类型后换行(deprecated) |
| 32 | +AlwaysBreakAfterDefinitionReturnType: None |
| 33 | +# 总是在返回类型后换行: None, All, TopLevel(顶级函数,不包括在类中的函数), |
| 34 | +# AllDefinitions(所有的定义,不包括声明), TopLevelDefinitions(所有的顶级函数的定义) |
| 35 | +AlwaysBreakAfterReturnType: None |
| 36 | +# 总是在多行string字面量前换行 |
| 37 | +AlwaysBreakBeforeMultilineStrings: false |
| 38 | +# 总是在template声明后换行 |
| 39 | +AlwaysBreakTemplateDeclarations: true |
| 40 | +# false表示函数实参要么都在同一行,要么都各自一行 |
| 41 | +BinPackArguments: false |
| 42 | +# false表示所有形参要么都在同一行,要么都各自一行 |
| 43 | +BinPackParameters: false |
| 44 | + |
| 45 | +# 在大括号前换行: Attach(始终将大括号附加到周围的上下文), Linux(除函数、命名空间和类定义,与Attach类似), |
| 46 | +# Mozilla(除枚举、函数、记录定义,与Attach类似), Stroustrup(除函数定义、catch、else,与Attach类似), |
| 47 | +# Allman(总是在大括号前换行), GNU(总是在大括号前换行,并对于控制语句的大括号增加额外的缩进), WebKit(在函数前换行), Custom |
| 48 | +# 注:这里认为语句块也属于函数 |
| 49 | +BreakBeforeBraces: Custom |
| 50 | +# 大括号换行,只有当BreakBeforeBraces设置为Custom时才有效 |
| 51 | +BraceWrapping: |
| 52 | + # class定义后面 |
| 53 | + AfterClass: true |
| 54 | + # 控制语句后面 |
| 55 | + AfterControlStatement: false |
| 56 | + # enum定义后面 |
| 57 | + AfterEnum: true |
| 58 | + # 函数定义后面 |
| 59 | + AfterFunction: true |
| 60 | + # 命名空间定义后面 |
| 61 | + AfterNamespace: true |
| 62 | + # ObjC定义后面 |
| 63 | + AfterObjCDeclaration: false |
| 64 | + # struct定义后面 |
| 65 | + AfterStruct: true |
| 66 | + # union定义后面 |
| 67 | + AfterUnion: true |
| 68 | + # extern 定义后面 |
| 69 | + AfterExternBlock: true |
| 70 | + # catch之前 |
| 71 | + BeforeCatch: false |
| 72 | + # else 之前 |
| 73 | + BeforeElse: false |
| 74 | + # 缩进大括号 |
| 75 | + IndentBraces: false |
| 76 | + |
| 77 | +# 在二元运算符前换行: None(在操作符后换行), NonAssignment(在非赋值的操作符前换行), All(在操作符前换行) |
| 78 | +BreakBeforeBinaryOperators: All |
| 79 | + |
| 80 | +# 继承列表的逗号前换行 |
| 81 | +BreakBeforeInheritanceComma: true |
| 82 | +# 继承列表换行 |
| 83 | +#BreakInheritanceList: BeforeColon |
| 84 | +# 在三元运算符前换行 |
| 85 | +BreakBeforeTernaryOperators: true |
| 86 | +# 在构造函数的初始化列表的逗号前换行 |
| 87 | +BreakConstructorInitializersBeforeComma: true |
| 88 | +# 初始化列表前换行 |
| 89 | +BreakConstructorInitializers: BeforeComma |
| 90 | +# Java注解后换行 |
| 91 | +BreakAfterJavaFieldAnnotations: false |
| 92 | + |
| 93 | +BreakStringLiterals: true |
| 94 | +# 每行字符的限制,0表示没有限制 |
| 95 | +ColumnLimit: 160 |
| 96 | +# 描述具有特殊意义的注释的正则表达式,它不应该被分割为多行或以其它方式改变 |
| 97 | +CommentPragmas: '^ IWYU pragma:' |
| 98 | +# 紧凑 命名空间 |
| 99 | +CompactNamespaces: false |
| 100 | +# 构造函数的初始化列表要么都在同一行,要么都各自一行 |
| 101 | +ConstructorInitializerAllOnOneLineOrOnePerLine: true |
| 102 | +# 构造函数的初始化列表的缩进宽度 |
| 103 | +ConstructorInitializerIndentWidth: 4 |
| 104 | +# 延续的行的缩进宽度 |
| 105 | +ContinuationIndentWidth: 4 |
| 106 | +# 去除C++11的列表初始化的大括号{后和}前的空格 |
| 107 | +Cpp11BracedListStyle: false |
| 108 | +# 继承最常用的指针和引用的对齐方式 |
| 109 | +DerivePointerAlignment: false |
| 110 | +# 关闭格式化 |
| 111 | +DisableFormat: false |
| 112 | +# 自动检测函数的调用和定义是否被格式为每行一个参数(Experimental) |
| 113 | +ExperimentalAutoDetectBinPacking: false |
| 114 | +# 固定命名空间注释 |
| 115 | +FixNamespaceComments: true |
| 116 | +# 需要被解读为foreach循环而不是函数调用的宏 |
| 117 | +ForEachMacros: |
| 118 | + - foreach |
| 119 | + - Q_FOREACH |
| 120 | + - BOOST_FOREACH |
| 121 | + |
| 122 | +IncludeBlocks: Preserve |
| 123 | +# 对#include进行排序,匹配了某正则表达式的#include拥有对应的优先级,匹配不到的则默认优先级为INT_MAX(优先级越小排序越靠前), |
| 124 | +# 可以定义负数优先级从而保证某些#include永远在最前面 |
| 125 | +IncludeCategories: |
| 126 | + - Regex: '^"(llvm|llvm-c|clang|clang-c)/' |
| 127 | + Priority: 2 |
| 128 | + - Regex: '^(<|"(gtest|gmock|isl|json)/)' |
| 129 | + Priority: 3 |
| 130 | + - Regex: 'stdafx\.' |
| 131 | + Priority: 1 |
| 132 | + - Regex: '.*' |
| 133 | + Priority: 1 |
| 134 | + |
| 135 | +IncludeIsMainRegex: '(Test)?$' |
| 136 | +# 缩进case标签 |
| 137 | +IndentCaseLabels: false |
| 138 | + |
| 139 | +IndentPPDirectives: None |
| 140 | +# 缩进宽度 |
| 141 | +IndentWidth: 4 |
| 142 | +# 函数返回类型换行时,缩进函数声明或函数定义的函数名 |
| 143 | +IndentWrappedFunctionNames: true |
| 144 | + |
| 145 | +JavaScriptQuotes: Leave |
| 146 | + |
| 147 | +JavaScriptWrapImports: true |
| 148 | +# 保留在块开始处的空行 |
| 149 | +KeepEmptyLinesAtTheStartOfBlocks: true |
| 150 | +# 开始一个块的宏的正则表达式 |
| 151 | +MacroBlockBegin: '' |
| 152 | +# 结束一个块的宏的正则表达式 |
| 153 | +MacroBlockEnd: '' |
| 154 | +# 连续空行的最大数量 |
| 155 | +MaxEmptyLinesToKeep: 1 |
| 156 | + |
| 157 | +# 命名空间的缩进: None, Inner(缩进嵌套的命名空间中的内容), All |
| 158 | +NamespaceIndentation: All |
| 159 | +ObjCBinPackProtocolList: Auto |
| 160 | +# 使用ObjC块时缩进宽度 |
| 161 | +ObjCBlockIndentWidth: 4 |
| 162 | +# 在ObjC的@property后添加一个空格 |
| 163 | +ObjCSpaceAfterProperty: true |
| 164 | +# 在ObjC的protocol列表前添加一个空格 |
| 165 | +ObjCSpaceBeforeProtocolList: true |
| 166 | + |
| 167 | +PenaltyBreakAssignment: 2 |
| 168 | + |
| 169 | +PenaltyBreakBeforeFirstCallParameter: 19 |
| 170 | +# 在一个注释中引入换行的penalty |
| 171 | +PenaltyBreakComment: 300 |
| 172 | +# 第一次在<<前换行的penalty |
| 173 | +PenaltyBreakFirstLessLess: 120 |
| 174 | +# 在一个字符串字面量中引入换行的penalty |
| 175 | +PenaltyBreakString: 1000 |
| 176 | +PenaltyBreakTemplateDeclaration: 10 |
| 177 | +# 对于每个在行字符数限制之外的字符的penalty |
| 178 | +PenaltyExcessCharacter: 1000000 |
| 179 | +# 将函数的返回类型放到它自己的行的penalty |
| 180 | +PenaltyReturnTypeOnItsOwnLine: 60 |
| 181 | +# 指针和引用的对齐: Left, Right, Middle |
| 182 | +PointerAlignment: Right |
| 183 | + |
| 184 | +#RawStringFormats: |
| 185 | +# - Delimiter: pb |
| 186 | +# Language: TextProto |
| 187 | +# BasedOnStyle: google |
| 188 | +# 允许重新排版注释 |
| 189 | +ReflowComments: false |
| 190 | +# 允许排序#include |
| 191 | +SortIncludes: true |
| 192 | + |
| 193 | +SortUsingDeclarations: true |
| 194 | +# 在C风格类型转换后添加空格 |
| 195 | +SpaceAfterCStyleCast: false |
| 196 | +# 模板关键字后面添加空格 |
| 197 | +SpaceAfterTemplateKeyword: true |
| 198 | +# 在赋值运算符之前添加空格 |
| 199 | +SpaceBeforeAssignmentOperators: true |
| 200 | +# 开圆括号之前添加一个空格: Never, ControlStatements, Always |
| 201 | +SpaceBeforeCpp11BracedList: false |
| 202 | +SpaceBeforeCtorInitializerColon: true |
| 203 | +SpaceBeforeInheritanceColon: true |
| 204 | +SpaceBeforeParens: ControlStatements |
| 205 | +SpaceBeforeRangeBasedForLoopColon: true |
| 206 | +# 在空的圆括号中添加空格 |
| 207 | +SpaceInEmptyParentheses: false |
| 208 | +# 在尾随的评论前添加的空格数(只适用于//) |
| 209 | +SpacesBeforeTrailingComments: 1 |
| 210 | +# 在尖括号的<后和>前添加空格 |
| 211 | +SpacesInAngles: false |
| 212 | +# 在容器(ObjC和JavaScript的数组和字典等)字面量中添加空格 |
| 213 | +SpacesInContainerLiterals: true |
| 214 | +# 在C风格类型转换的括号中添加空格 |
| 215 | +SpacesInCStyleCastParentheses: false |
| 216 | +# 在圆括号的(后和)前添加空格 |
| 217 | +SpacesInParentheses: false |
| 218 | +# 在方括号的[后和]前添加空格,lamda表达式和未指明大小的数组的声明不受影响 |
| 219 | +SpacesInSquareBrackets: false |
| 220 | +# 标准: Cpp03, Cpp11, Auto |
| 221 | +Standard: Cpp11 |
| 222 | +# tab宽度 |
| 223 | +TabWidth: 4 |
| 224 | +# 使用tab字符: Never, ForIndentation, ForContinuationAndIndentation, Always |
| 225 | +UseTab: Never |
| 226 | +... |
| 227 | + |
0 commit comments