diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2021-10-22 20:39:50 +0200 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2021-10-22 21:51:02 +0200 |
commit | 63544c3a9d4a11efde8d214a4936ae3e24e1c6c8 (patch) | |
tree | 5341d1465266d1c5ed023d027854026cc955917c | |
parent | 3bebbcacdbe7922af97fd8b26ef30c19eee94ba0 (diff) |
clang-format: Sync config with LLVM 13
Disable minimum amount of spaces in comment prefix for now, as it otherwise
modifies the whole codebase. That's something we probably want to use as it
matches our convention, but we should look into fully converting these
comments to our style guide at the same time.
-rw-r--r-- | .clang-format | 95 | ||||
-rwxr-xr-x | misc/hooks/pre-commit-clang-format | 6 |
2 files changed, 81 insertions, 20 deletions
diff --git a/.clang-format b/.clang-format index 1c26421a7f..9ddb19e57c 100644 --- a/.clang-format +++ b/.clang-format @@ -1,31 +1,41 @@ -# Commented out parameters are those with the same value as base LLVM style +# Commented out parameters are those with the same value as base LLVM style. # We can uncomment them if we want to change their value, or enforce the -# chosen value in case the base style changes (last sync: Clang 6.0.1). +# chosen value in case the base style changes (last sync: Clang 13.0). --- ### General config, applies to all languages ### BasedOnStyle: LLVM AccessModifierOffset: -4 AlignAfterOpenBracket: DontAlign -# AlignConsecutiveAssignments: false -# AlignConsecutiveDeclarations: false +# AlignArrayOfStructures: None +# AlignConsecutiveMacros: None +# AlignConsecutiveAssignments: None +# AlignConsecutiveBitFields: None +# AlignConsecutiveDeclarations: None # AlignEscapedNewlines: Right -# AlignOperands: true +# AlignOperands: Align AlignTrailingComments: false +# AllowAllArgumentsOnNextLine: true +# AllowAllConstructorInitializersOnNextLine: true AllowAllParametersOfDeclarationOnNextLine: false -# AllowShortBlocksOnASingleLine: false +# AllowShortEnumsOnASingleLine: true +# AllowShortBlocksOnASingleLine: Never # AllowShortCaseLabelsOnASingleLine: false AllowShortFunctionsOnASingleLine: Inline -# AllowShortIfStatementsOnASingleLine: false +# AllowShortLambdasOnASingleLine: All +# AllowShortIfStatementsOnASingleLine: Never # AllowShortLoopsOnASingleLine: false # AlwaysBreakAfterDefinitionReturnType: None # AlwaysBreakAfterReturnType: None # AlwaysBreakBeforeMultilineStrings: false -# AlwaysBreakTemplateDeclarations: false +# AlwaysBreakTemplateDeclarations: MultiLine +# AttributeMacros: +# - __capability # BinPackArguments: true # BinPackParameters: true # BraceWrapping: +# AfterCaseLabel: false # AfterClass: false -# AfterControlStatement: false +# AfterControlStatement: Never # AfterEnum: false # AfterFunction: false # AfterNamespace: false @@ -35,13 +45,17 @@ AllowShortFunctionsOnASingleLine: Inline # AfterExternBlock: false # BeforeCatch: false # BeforeElse: false +# BeforeLambdaBody: false +# BeforeWhile: false # IndentBraces: false # SplitEmptyFunction: true # SplitEmptyRecord: true # SplitEmptyNamespace: true # BreakBeforeBinaryOperators: None +# BreakBeforeConceptDeclarations: true # BreakBeforeBraces: Attach # BreakBeforeInheritanceComma: false +# BreakInheritanceList: BeforeColon BreakBeforeTernaryOperators: false # BreakConstructorInitializersBeforeComma: false BreakConstructorInitializers: AfterColon @@ -53,14 +67,19 @@ ConstructorInitializerAllOnOneLineOrOnePerLine: true ConstructorInitializerIndentWidth: 8 ContinuationIndentWidth: 8 Cpp11BracedListStyle: false +# DeriveLineEnding: true # DerivePointerAlignment: false # DisableFormat: false +# EmptyLineAfterAccessModifier: Never +# EmptyLineBeforeAccessModifier: LogicalBlock # ExperimentalAutoDetectBinPacking: false # FixNamespaceComments: true # ForEachMacros: # - foreach # - Q_FOREACH # - BOOST_FOREACH +# IfMacros: +# - KJ_IF_MAYBE # IncludeBlocks: Preserve IncludeCategories: - Regex: '".*"' @@ -70,13 +89,21 @@ IncludeCategories: - Regex: '^<.*' Priority: 3 # IncludeIsMainRegex: '(Test)?$' +# IncludeIsMainSourceRegex: '' +# IndentAccessModifiers: false IndentCaseLabels: true +# IndentCaseBlocks: false +# IndentGotoLabels: true # IndentPPDirectives: None +# IndentExternBlock: AfterExternBlock +# IndentRequires: false IndentWidth: 4 # IndentWrappedFunctionNames: false +# InsertTrailingCommas: None # JavaScriptQuotes: Leave # JavaScriptWrapImports: true KeepEmptyLinesAtTheStartOfBlocks: false +# LambdaBodyIndentation: Signature # MacroBlockBegin: '' # MacroBlockEnd: '' # MaxEmptyLinesToKeep: 1 @@ -86,38 +113,72 @@ KeepEmptyLinesAtTheStartOfBlocks: false # PenaltyBreakComment: 300 # PenaltyBreakFirstLessLess: 120 # PenaltyBreakString: 1000 +# PenaltyBreakTemplateDeclaration: 10 # PenaltyExcessCharacter: 1000000 # PenaltyReturnTypeOnItsOwnLine: 60 +# PenaltyIndentedWhitespace: 0 # PointerAlignment: Right -# RawStringFormats: -# - Delimiter: pb -# Language: TextProto -# BasedOnStyle: google +# PPIndentWidth: -1 +# ReferenceAlignment: Pointer # ReflowComments: true -# SortIncludes: true +# ShortNamespaceLines: 1 +# SortIncludes: CaseSensitive +# SortJavaStaticImport: Before # SortUsingDeclarations: true # SpaceAfterCStyleCast: false +# SpaceAfterLogicalNot: false # SpaceAfterTemplateKeyword: true # SpaceBeforeAssignmentOperators: true +# SpaceBeforeCaseColon: false +# SpaceBeforeCpp11BracedList: false +# SpaceBeforeCtorInitializerColon: true +# SpaceBeforeInheritanceColon: true # SpaceBeforeParens: ControlStatements +# SpaceAroundPointerQualifiers: Default +# SpaceBeforeRangeBasedForLoopColon: true # SpaceInEmptyParentheses: false # SpacesBeforeTrailingComments: 1 -# SpacesInAngles: false +# SpaceInEmptyBlock: false +# SpaceInEmptyParentheses: false +# SpacesBeforeTrailingComments: 1 +# SpacesInAngles: Never +# SpacesInContainerLiterals: true +# SpacesInConditionalStatement: false # SpacesInContainerLiterals: true # SpacesInCStyleCastParentheses: false +## Godot TODO: We'll want to use a min of 1, but we need to see how to fix +## our comment capitalization at the same time. +SpacesInLineCommentPrefix: + Minimum: 0 + Maximum: -1 # SpacesInParentheses: false # SpacesInSquareBrackets: false +# SpaceBeforeSquareBrackets: false +# BitFieldColonSpacing: Both +# StatementAttributeLikeMacros: +# - Q_EMIT +# StatementMacros: +# - Q_UNUSED +# - QT_REQUIRE_VERSION TabWidth: 4 +# UseCRLF: false UseTab: Always +# WhitespaceSensitiveMacros: +# - STRINGIZE +# - PP_STRINGIZE +# - BOOST_PP_STRINGIZE +# - NS_SWIFT_NAME +# - CF_SWIFT_NAME --- ### C++ specific config ### Language: Cpp -Standard: Cpp11 +Standard: c++17 --- ### ObjC specific config ### Language: ObjC -Standard: Cpp11 +# ObjCBinPackProtocolList: Auto ObjCBlockIndentWidth: 4 +# ObjCBreakBeforeNestedBlockParam: true # ObjCSpaceAfterProperty: false # ObjCSpaceBeforeProtocolList: true --- diff --git a/misc/hooks/pre-commit-clang-format b/misc/hooks/pre-commit-clang-format index 81bc412944..3112f1af5f 100755 --- a/misc/hooks/pre-commit-clang-format +++ b/misc/hooks/pre-commit-clang-format @@ -77,10 +77,10 @@ fi # To get consistent formatting, we recommend contributors to use the same # clang-format version as CI. RECOMMENDED_CLANG_FORMAT_MAJOR_MIN="11" -RECOMMENDED_CLANG_FORMAT_MAJOR_MAX="12" +RECOMMENDED_CLANG_FORMAT_MAJOR_MAX="13" if [ ! -x "$CLANG_FORMAT" ] ; then - message="Error: clang-format executable not found. Please install clang-format $RECOMMENDED_CLANG_FORMAT_MAJOR.x.x." + message="Error: clang-format executable not found. Please install clang-format $RECOMMENDED_CLANG_FORMAT_MAJOR_MAX." if [ ! -t 1 ] ; then if [ -x "$ZENITY" ] ; then @@ -108,7 +108,7 @@ CLANG_FORMAT_VERSION="$(clang-format --version | sed "s/[^0-9\.]*\([0-9\.]*\).*/ CLANG_FORMAT_MAJOR="$(echo "$CLANG_FORMAT_VERSION" | cut -d. -f1)" if [[ "$CLANG_FORMAT_MAJOR" -lt "$RECOMMENDED_CLANG_FORMAT_MAJOR_MIN" || "$CLANG_FORMAT_MAJOR" -gt "$RECOMMENDED_CLANG_FORMAT_MAJOR_MAX" ]]; then - echo "Warning: Your clang-format binary is the wrong version ($CLANG_FORMAT_VERSION, expected between $RECOMMENDED_CLANG_FORMAT_MAJOR_MIN.x.x and $RECOMMENDED_CLANG_FORMAT_MAJOR_MAX.x.x)." + echo "Warning: Your clang-format binary is the wrong version ($CLANG_FORMAT_VERSION, expected between $RECOMMENDED_CLANG_FORMAT_MAJOR_MIN and $RECOMMENDED_CLANG_FORMAT_MAJOR_MAX)." echo " Consider upgrading or downgrading clang-format as formatting may not be applied correctly." fi |