1a3e0fd82Sopenharmony_ciLanguage: Cpp 2a3e0fd82Sopenharmony_ci# BasedOnStyle: LLVM 3a3e0fd82Sopenharmony_ci# 访问说明符(public、private等)的偏移 4a3e0fd82Sopenharmony_ciAccessModifierOffset: -4 5a3e0fd82Sopenharmony_ci# 开括号(开圆括号、开尖括号、开方括号)后的对齐 6a3e0fd82Sopenharmony_ciAlignAfterOpenBracket: Align 7a3e0fd82Sopenharmony_ci# 连续赋值时,等号对齐 8a3e0fd82Sopenharmony_ciAlignConsecutiveAssignments: false 9a3e0fd82Sopenharmony_ci# 连续赋值时,变量名对齐 10a3e0fd82Sopenharmony_ciAlignConsecutiveDeclarations: false 11a3e0fd82Sopenharmony_ci# 左对齐逃脱换行(使用反斜杠换行)的反斜杠 12a3e0fd82Sopenharmony_ciAlignEscapedNewlinesLeft: true 13a3e0fd82Sopenharmony_ci# 水平对齐二元和三元表达式的操作数 14a3e0fd82Sopenharmony_ciAlignOperands: true 15a3e0fd82Sopenharmony_ci# 对齐连续的尾随的注释 16a3e0fd82Sopenharmony_ciAlignTrailingComments: true 17a3e0fd82Sopenharmony_ci# 允许函数声明的所有参数在放在下一行 18a3e0fd82Sopenharmony_ciAllowAllParametersOfDeclarationOnNextLine: false 19a3e0fd82Sopenharmony_ci# 允许短的块放在同一行 20a3e0fd82Sopenharmony_ciAllowShortBlocksOnASingleLine: false 21a3e0fd82Sopenharmony_ci# 允许短的case标签放在同一行 22a3e0fd82Sopenharmony_ciAllowShortCaseLabelsOnASingleLine: false 23a3e0fd82Sopenharmony_ci# 允许短的函数放在同一行: None, InlineOnly(定义在类中), Empty(空函数), Inline(定义在类中,空函数), All 24a3e0fd82Sopenharmony_ciAllowShortFunctionsOnASingleLine: Empty 25a3e0fd82Sopenharmony_ci# 允许短的if语句保持在同一行 26a3e0fd82Sopenharmony_ciAllowShortIfStatementsOnASingleLine: false 27a3e0fd82Sopenharmony_ci# 允许短的循环保持在同一行 28a3e0fd82Sopenharmony_ciAllowShortLoopsOnASingleLine: false 29a3e0fd82Sopenharmony_ci# 总是在定义返回类型后换行(deprecated) 30a3e0fd82Sopenharmony_ciAlwaysBreakAfterDefinitionReturnType: None 31a3e0fd82Sopenharmony_ci# 总是在返回类型后换行: None, All, TopLevel(顶级函数,不包括在类中的函数), 32a3e0fd82Sopenharmony_ci# AllDefinitions(所有的定义,不包括声明), TopLevelDefinitions(所有的顶级函数的定义) 33a3e0fd82Sopenharmony_ciAlwaysBreakAfterReturnType: None 34a3e0fd82Sopenharmony_ci# 总是在多行string字面量前换行 35a3e0fd82Sopenharmony_ciAlwaysBreakBeforeMultilineStrings: true 36a3e0fd82Sopenharmony_ci# 总是在template声明后换行 37a3e0fd82Sopenharmony_ciAlwaysBreakTemplateDeclarations: false 38a3e0fd82Sopenharmony_ci# false表示函数实参要么都在同一行,要么都各自一行 39a3e0fd82Sopenharmony_ciBinPackArguments: true 40a3e0fd82Sopenharmony_ci# false表示所有形参要么都在同一行,要么都各自一行 41a3e0fd82Sopenharmony_ciBinPackParameters: false 42a3e0fd82Sopenharmony_ci# 大括号换行,只有当BreakBeforeBraces设置为Custom时才有效 43a3e0fd82Sopenharmony_ciBraceWrapping: 44a3e0fd82Sopenharmony_ci AfterClass: false 45a3e0fd82Sopenharmony_ci AfterControlStatement: false 46a3e0fd82Sopenharmony_ci AfterEnum: false 47a3e0fd82Sopenharmony_ci AfterFunction: true 48a3e0fd82Sopenharmony_ci AfterNamespace: false 49a3e0fd82Sopenharmony_ci AfterObjCDeclaration: false 50a3e0fd82Sopenharmony_ci AfterStruct: false 51a3e0fd82Sopenharmony_ci AfterUnion: false 52a3e0fd82Sopenharmony_ci BeforeCatch: false 53a3e0fd82Sopenharmony_ci BeforeElse: false 54a3e0fd82Sopenharmony_ci IndentBraces: false 55a3e0fd82Sopenharmony_ci# 在二元运算符前换行: None(在操作符后换行), NonAssignment(在非赋值的操作符前换行), All(在操作符前换行) 56a3e0fd82Sopenharmony_ciBreakBeforeBinaryOperators: None 57a3e0fd82Sopenharmony_ci# 在大括号前换行: Attach(始终将大括号附加到周围的上下文), Linux(除函数、命名空间和类定义,与Attach类似), 58a3e0fd82Sopenharmony_ci# Mozilla(除枚举、函数、记录定义,与Attach类似), Stroustrup(除函数定义、catch、else,与Attach类似), 59a3e0fd82Sopenharmony_ci# Allman(总是在大括号前换行), GNU(总是在大括号前换行,并对于控制语句的大括号增加额外的缩进), WebKit(在函数前换行), Custom 60a3e0fd82Sopenharmony_ci# 注:这里认为语句块也属于函数 61a3e0fd82Sopenharmony_ciBreakBeforeBraces: Custom 62a3e0fd82Sopenharmony_ci# 在三元运算符前换行 63a3e0fd82Sopenharmony_ciBreakBeforeTernaryOperators: false 64a3e0fd82Sopenharmony_ci# 在构造函数的初始化列表的逗号前换行 65a3e0fd82Sopenharmony_ciBreakConstructorInitializersBeforeComma: false 66a3e0fd82Sopenharmony_ci# 每行字符的限制,0表示没有限制 67a3e0fd82Sopenharmony_ciColumnLimit: 120 68a3e0fd82Sopenharmony_ci# 描述具有特殊意义的注释的正则表达式,它不应该被分割为多行或以其它方式改变 69a3e0fd82Sopenharmony_ciCommentPragmas: "^ IWYU pragma:" 70a3e0fd82Sopenharmony_ci# 构造函数的初始化列表要么都在同一行,要么都各自一行 71a3e0fd82Sopenharmony_ciConstructorInitializerAllOnOneLineOrOnePerLine: true 72a3e0fd82Sopenharmony_ci# 构造函数的初始化列表的缩进宽度 73a3e0fd82Sopenharmony_ciConstructorInitializerIndentWidth: 4 74a3e0fd82Sopenharmony_ci# 延续的行的缩进宽度 75a3e0fd82Sopenharmony_ciContinuationIndentWidth: 4 76a3e0fd82Sopenharmony_ci# 去除C++11的列表初始化的大括号{后和}前的空格 77a3e0fd82Sopenharmony_ciCpp11BracedListStyle: true 78a3e0fd82Sopenharmony_ci# 继承最常用的指针和引用的对齐方式 79a3e0fd82Sopenharmony_ciDerivePointerAlignment: false 80a3e0fd82Sopenharmony_ci# 关闭格式化 81a3e0fd82Sopenharmony_ciDisableFormat: false 82a3e0fd82Sopenharmony_ci# 自动检测函数的调用和定义是否被格式为每行一个参数(Experimental) 83a3e0fd82Sopenharmony_ciExperimentalAutoDetectBinPacking: false 84a3e0fd82Sopenharmony_ci# 需要被解读为foreach循环而不是函数调用的宏 85a3e0fd82Sopenharmony_ciForEachMacros: [foreach, Q_FOREACH, BOOST_FOREACH] 86a3e0fd82Sopenharmony_ci# 对#include进行排序,匹配了某正则表达式的#include拥有对应的优先级,匹配不到的则默认优先级为INT_MAX(优先级越小排序越靠前), 87a3e0fd82Sopenharmony_ci# 可以定义负数优先级从而保证某些#include永远在最前面 88a3e0fd82Sopenharmony_ciIncludeCategories: 89a3e0fd82Sopenharmony_ci - Regex: '^"(llvm|llvm-c|clang|clang-c)/' 90a3e0fd82Sopenharmony_ci Priority: 2 91a3e0fd82Sopenharmony_ci - Regex: '^(<|"(gtest|isl|json)/)' 92a3e0fd82Sopenharmony_ci Priority: 3 93a3e0fd82Sopenharmony_ci - Regex: ".*" 94a3e0fd82Sopenharmony_ci Priority: 1 95a3e0fd82Sopenharmony_ci# 缩进case标签 96a3e0fd82Sopenharmony_ciIndentCaseLabels: true 97a3e0fd82Sopenharmony_ci# 缩进宽度 98a3e0fd82Sopenharmony_ciIndentWidth: 4 99a3e0fd82Sopenharmony_ci# 函数返回类型换行时,缩进函数声明或函数定义的函数名 100a3e0fd82Sopenharmony_ciIndentWrappedFunctionNames: true 101a3e0fd82Sopenharmony_ci# 保留在块开始处的空行 102a3e0fd82Sopenharmony_ciKeepEmptyLinesAtTheStartOfBlocks: true 103a3e0fd82Sopenharmony_ci# 开始一个块的宏的正则表达式 104a3e0fd82Sopenharmony_ciMacroBlockBegin: "" 105a3e0fd82Sopenharmony_ci# 结束一个块的宏的正则表达式 106a3e0fd82Sopenharmony_ciMacroBlockEnd: "" 107a3e0fd82Sopenharmony_ci# 连续空行的最大数量 108a3e0fd82Sopenharmony_ciMaxEmptyLinesToKeep: 1 109a3e0fd82Sopenharmony_ci# 命名空间的缩进: None, Inner(缩进嵌套的命名空间中的内容), All 110a3e0fd82Sopenharmony_ciNamespaceIndentation: None 111a3e0fd82Sopenharmony_ci# 使用ObjC块时缩进宽度 112a3e0fd82Sopenharmony_ciObjCBlockIndentWidth: 4 113a3e0fd82Sopenharmony_ci# 在ObjC的@property后添加一个空格 114a3e0fd82Sopenharmony_ciObjCSpaceAfterProperty: false 115a3e0fd82Sopenharmony_ci# 在ObjC的protocol列表前添加一个空格 116a3e0fd82Sopenharmony_ciObjCSpaceBeforeProtocolList: true 117a3e0fd82Sopenharmony_ci# 在call(后对函数调用换行的penalty 118a3e0fd82Sopenharmony_ciPenaltyBreakBeforeFirstCallParameter: 19 119a3e0fd82Sopenharmony_ci# 在一个注释中引入换行的penalty 120a3e0fd82Sopenharmony_ciPenaltyBreakComment: 300 121a3e0fd82Sopenharmony_ci# 第一次在<<前换行的penalty 122a3e0fd82Sopenharmony_ciPenaltyBreakFirstLessLess: 120 123a3e0fd82Sopenharmony_ci# 在一个字符串字面量中引入换行的penalty 124a3e0fd82Sopenharmony_ciPenaltyBreakString: 1000 125a3e0fd82Sopenharmony_ci# 对于每个在行字符数限制之外的字符的penalt 126a3e0fd82Sopenharmony_ciPenaltyExcessCharacter: 1000000 127a3e0fd82Sopenharmony_ci# 将函数的返回类型放到它自己的行的penalty 128a3e0fd82Sopenharmony_ciPenaltyReturnTypeOnItsOwnLine: 60 129a3e0fd82Sopenharmony_ci# 指针和引用的对齐: Left, Right, Middle 130a3e0fd82Sopenharmony_ciPointerAlignment: Left 131a3e0fd82Sopenharmony_ci# 允许重新排版注释 132a3e0fd82Sopenharmony_ciReflowComments: true 133a3e0fd82Sopenharmony_ci# 允许排序#include 134a3e0fd82Sopenharmony_ciSortIncludes: true 135a3e0fd82Sopenharmony_ci# 在C风格类型转换后添加空格 136a3e0fd82Sopenharmony_ciSpaceAfterCStyleCast: false 137a3e0fd82Sopenharmony_ci# 在赋值运算符之前添加空格 138a3e0fd82Sopenharmony_ciSpaceBeforeAssignmentOperators: true 139a3e0fd82Sopenharmony_ci# 开圆括号之前添加一个空格: Never, ControlStatements, Always 140a3e0fd82Sopenharmony_ciSpaceBeforeParens: ControlStatements 141a3e0fd82Sopenharmony_ci# 在空的圆括号中添加空格 142a3e0fd82Sopenharmony_ciSpaceInEmptyParentheses: false 143a3e0fd82Sopenharmony_ci# 在尾随的评论前添加的空格数(只适用于//) 144a3e0fd82Sopenharmony_ciSpacesBeforeTrailingComments: 1 145a3e0fd82Sopenharmony_ci# 在尖括号的<后和>前添加空格 146a3e0fd82Sopenharmony_ciSpacesInAngles: false 147a3e0fd82Sopenharmony_ci# 在容器(ObjC和JavaScript的数组和字典等)字面量中添加空格 148a3e0fd82Sopenharmony_ciSpacesInContainerLiterals: true 149a3e0fd82Sopenharmony_ci# 在C风格类型转换的括号中添加空格 150a3e0fd82Sopenharmony_ciSpacesInCStyleCastParentheses: false 151a3e0fd82Sopenharmony_ci# 在圆括号的(后和)前添加空格 152a3e0fd82Sopenharmony_ciSpacesInParentheses: false 153a3e0fd82Sopenharmony_ci# 在方括号的[后和]前添加空格,lamda表达式和未指明大小的数组的声明不受影响 154a3e0fd82Sopenharmony_ciSpacesInSquareBrackets: false 155a3e0fd82Sopenharmony_ci# 标准: Cpp03, Cpp11, Auto 156a3e0fd82Sopenharmony_ciStandard: Cpp11 157a3e0fd82Sopenharmony_ci# tab宽度 158a3e0fd82Sopenharmony_ciTabWidth: 4 159a3e0fd82Sopenharmony_ci# 使用tab字符: Never, ForIndentation, ForContinuationAndIndentation, Always 160a3e0fd82Sopenharmony_ciUseTab: Never 161