101 lines
3.0 KiB
YAML
101 lines
3.0 KiB
YAML
# Based on https://gist.github.com/YodaEmbedding/c2c77dc693d11f3734d78489f9a6eea4
|
|
# Attempts to format C++ similar to rustfmt, with some modifications
|
|
|
|
AccessModifierOffset: -2
|
|
AlignAfterOpenBracket: BlockIndent
|
|
AlignConsecutiveMacros: false
|
|
AlignConsecutiveAssignments: false
|
|
AlignConsecutiveDeclarations: false
|
|
AlignEscapedNewlines: DontAlign
|
|
AlignOperands: false
|
|
AlignTrailingComments: false
|
|
AllowAllArgumentsOnNextLine: false
|
|
AllowAllParametersOfDeclarationOnNextLine: false
|
|
AllowShortBlocksOnASingleLine: Empty
|
|
AllowShortCaseLabelsOnASingleLine: false
|
|
AllowShortFunctionsOnASingleLine: Empty
|
|
AllowShortIfStatementsOnASingleLine: Never
|
|
AllowShortLambdasOnASingleLine: All
|
|
AllowShortLoopsOnASingleLine: false
|
|
AlwaysBreakAfterReturnType: None
|
|
AlwaysBreakBeforeMultilineStrings: true
|
|
AlwaysBreakTemplateDeclarations: Yes
|
|
BinPackArguments: false
|
|
BinPackParameters: false
|
|
BreakBeforeBinaryOperators: NonAssignment
|
|
BreakBeforeBraces: Attach
|
|
BreakBeforeTernaryOperators: true
|
|
BreakConstructorInitializers: AfterColon
|
|
BreakInheritanceList: AfterColon
|
|
BreakStringLiterals: false
|
|
CompactNamespaces: false
|
|
ConstructorInitializerIndentWidth: 4
|
|
ContinuationIndentWidth: 4
|
|
Cpp11BracedListStyle: true
|
|
DerivePointerAlignment: false
|
|
FixNamespaceComments: true
|
|
IncludeBlocks: Regroup
|
|
IncludeCategories:
|
|
- Regex: '^<ext/.*\.h>'
|
|
Priority: 2
|
|
SortPriority: 0
|
|
CaseSensitive: false
|
|
- Regex: '^<.*\.h>'
|
|
Priority: 1
|
|
SortPriority: 0
|
|
CaseSensitive: false
|
|
- Regex: '^<.*'
|
|
Priority: 2
|
|
SortPriority: 0
|
|
CaseSensitive: false
|
|
- Regex: '.*'
|
|
Priority: 3
|
|
SortPriority: 0
|
|
CaseSensitive: false
|
|
IncludeIsMainRegex: '([-_](test|unittest))?$'
|
|
IndentCaseLabels: true
|
|
IndentPPDirectives: BeforeHash
|
|
IndentWidth: 4
|
|
IndentWrappedFunctionNames: false
|
|
KeepEmptyLinesAtTheStartOfBlocks: false
|
|
MaxEmptyLinesToKeep: 1
|
|
NamespaceIndentation: All
|
|
PackConstructorInitializers: CurrentLine
|
|
PointerAlignment: Left
|
|
ReferenceAlignment: Left
|
|
ReflowComments: false
|
|
SeparateDefinitionBlocks: Leave
|
|
SortIncludes: true
|
|
SortUsingDeclarations: true
|
|
SpaceAfterCStyleCast: false
|
|
SpaceAfterLogicalNot: false
|
|
SpaceAfterTemplateKeyword: false
|
|
SpaceBeforeAssignmentOperators: true
|
|
SpaceBeforeCpp11BracedList: true
|
|
SpaceBeforeCtorInitializerColon: true
|
|
SpaceBeforeInheritanceColon: true
|
|
SpaceBeforeParens: ControlStatements
|
|
SpaceBeforeRangeBasedForLoopColon: true
|
|
SpaceInEmptyParentheses: false
|
|
SpacesBeforeTrailingComments: 1
|
|
SpacesInAngles: false
|
|
SpacesInCStyleCastParentheses: false
|
|
SpacesInContainerLiterals: false
|
|
SpacesInParentheses: false
|
|
SpacesInSquareBrackets: false
|
|
Standard: c++20
|
|
TabWidth: 4
|
|
UseTab: Always
|
|
ColumnLimit: 120
|
|
PenaltyBreakAssignment: 50
|
|
PenaltyBreakBeforeFirstCallParameter: 40
|
|
PenaltyBreakComment: 10
|
|
PenaltyBreakFirstLessLess: 100
|
|
PenaltyBreakOpenParenthesis: 50
|
|
PenaltyBreakScopeResolution: 80
|
|
PenaltyBreakString: 100
|
|
PenaltyBreakTemplateDeclaration: 100
|
|
PenaltyExcessCharacter: 100
|
|
PenaltyIndentedWhitespace: 50
|
|
PenaltyReturnTypeOnItsOwnLine: 70
|