Add .editorconfig and .clang-format config files.

This should help contributors to maintain a consistent coding style.
This commit is contained in:
Lewis Baker 2017-09-09 21:54:14 +09:30
parent de0b0f4395
commit bdd7ccc88d
2 changed files with 97 additions and 0 deletions

81
.clang-format Normal file
View File

@ -0,0 +1,81 @@
---
BasedOnStyle: LLVM
---
Language: Cpp
Standard: Cpp11
ColumnLimit: 100
TabWidth: 4
IndentWidth: 4
UseTab: ForContinuationAndIndentation
AccessModifierOffset: -4
AlignAfterOpenBracket: AlwaysBreak
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Left
AlignOperands: false
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: false
AllowShortFunctionsOnASingleLine: InlineOnly
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterReturnType: None
AlwaysBreakTemplateDeclarations: true
BinPackArguments: false
BinPackParameters: false
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Custom
BraceWrapping: {
AfterClass: true,
AfterControlStatement: true,
AfterEnum: true,
AfterFunction: true,
AfterNamespace: true,
AfterStruct: true,
AfterUnion: true,
BeforeCatch: true,
BeforeElse: true,
IndentBraces: false,
#SplitEmptyFunctionBody: false
}
BreakBeforeInheritanceComma: true
BreakBeforeTernaryOperators: true
BreakConstructorInitializers: BeforeComma
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
IncludeCategories:
- Regex: '^<cppcoro/config.hpp>$'
Priority: 1
- Regex: '^<cppcoro/detail/'
Priority: 3
- Regex: '^<cppcoro/'
Priority: 2
- Regex: '^"doctest/'
Priority: 7
- Regex: '^"'
Priority: 4
- Regex: '^<experimental/'
Priority: 6
- Regex: '^<'
Priority: 5
IndentCaseLabels: true
#IndentPPDirectives: AfterHash
IndentWrappedFunctionNames: false
KeepEmptyLinesAtTheStartOfBlocks: false
MaxEmptyLinesToKeep: 1
NamespaceIndentation: All
PointerAlignment: Left
ReflowComments: true
SortIncludes: true
SortUsingDeclarations: true
SpacesInSquareBrackets: false
SpacesInParentheses: false
SpaceInEmptyParentheses: false
SpacesInCStyleCastParentheses: false
SpaceAfterCStyleCast: false
SpacesInAngles: false
SpacesBeforeTrailingComments: 2
SpaceBeforeParens: ControlStatements
SpaceBeforeAssignmentOperators: true
SpaceAfterTemplateKeyword: false

16
.editorconfig Normal file
View File

@ -0,0 +1,16 @@
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
[*.hpp,*.cpp]
indent_style = tab
indent_size = tab
tab_width = 4
[*.cake,*.py]
indent_style = space
indent_size = 2