summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJannis Hoffmann <jannis@fehcom.de>2024-07-03 15:52:06 +0200
committerJannis Hoffmann <jannis@fehcom.de>2024-07-03 15:52:06 +0200
commit00be7622c428f279872f84569f098ce16150f8a8 (patch)
treed26128b613cf7d9c8aa6ed65f792037bdb577e5a
parent89b7b67a13ebb7965cc7f13ad0595e2194a2d34c (diff)
add clang-format and editorconfig
-rw-r--r--.clang-format255
-rw-r--r--.editorconfig19
2 files changed, 274 insertions, 0 deletions
diff --git a/.clang-format b/.clang-format
new file mode 100644
index 0000000..fde5d8f
--- /dev/null
+++ b/.clang-format
@@ -0,0 +1,255 @@
+---
+Language: Cpp
+# BasedOnStyle: LLVM
+#AccessModifierOffset: -2
+AlignAfterOpenBracket: AlwaysBreak
+AlignArrayOfStructures: Right
+AlignConsecutiveAssignments:
+ Enabled: false
+ AcrossEmptyLines: false
+ AcrossComments: false
+ AlignCompound: false
+ PadOperators: true
+AlignConsecutiveBitFields:
+ Enabled: false
+ AcrossEmptyLines: false
+ AcrossComments: false
+ AlignCompound: false
+ PadOperators: false
+AlignConsecutiveDeclarations:
+ Enabled: false
+ AcrossEmptyLines: false
+ AcrossComments: false
+ AlignCompound: false
+ PadOperators: false
+AlignConsecutiveMacros:
+ Enabled: true
+ AcrossEmptyLines: false
+ AcrossComments: false
+ AlignCompound: false
+ PadOperators: false
+AlignConsecutiveShortCaseStatements:
+ Enabled: true
+ AcrossEmptyLines: false
+ AcrossComments: false
+ AlignCaseColons: false
+AlignEscapedNewlines: Left
+AlignOperands: Align
+AlignTrailingComments:
+ Kind: Always
+ OverEmptyLines: 0
+AllowAllArgumentsOnNextLine: true
+AllowAllParametersOfDeclarationOnNextLine: true
+AllowShortBlocksOnASingleLine: Always
+AllowShortCaseLabelsOnASingleLine: true
+AllowShortEnumsOnASingleLine: false
+AllowShortFunctionsOnASingleLine: Empty
+AllowShortIfStatementsOnASingleLine: WithoutElse
+#AllowShortLambdasOnASingleLine: All
+AllowShortLoopsOnASingleLine: true
+AlwaysBreakAfterDefinitionReturnType: None
+AlwaysBreakAfterReturnType: None
+AlwaysBreakBeforeMultilineStrings: true
+#AlwaysBreakTemplateDeclarations: MultiLine
+AttributeMacros:
+ - __capability
+BinPackArguments: false
+BinPackParameters: false
+BitFieldColonSpacing: Both
+BraceWrapping:
+ AfterCaseLabel: false
+ AfterClass: false
+ AfterControlStatement: MultiLine
+ AfterEnum: false
+ AfterExternBlock: false
+ AfterFunction: true
+ AfterNamespace: false
+ AfterStruct: false
+ AfterUnion: false
+ BeforeCatch: false
+ BeforeElse: false
+ BeforeLambdaBody: false
+ BeforeWhile: false
+ IndentBraces: false
+ SplitEmptyFunction: false
+ SplitEmptyRecord: true
+ SplitEmptyNamespace: true
+BreakAfterAttributes: Never
+#BreakAfterJavaFieldAnnotations: false
+#BreakArrays: true
+BreakBeforeBinaryOperators: NonAssignment
+#BreakBeforeConceptDeclarations: Always
+BreakBeforeBraces: Custom
+#BreakBeforeInlineASMColon: OnlyMultiline
+BreakBeforeTernaryOperators: true
+BreakConstructorInitializers: AfterColon
+#BreakInheritanceList: BeforeColon
+BreakStringLiterals: true
+ColumnLimit: 105
+CommentPragmas: '^ IWYU pragma:'
+#CompactNamespaces: false
+#ConstructorInitializerIndentWidth: 4
+ContinuationIndentWidth: 4
+#Cpp11BracedListStyle: true
+DerivePointerAlignment: false
+DisableFormat: false
+#EmptyLineAfterAccessModifier: Never
+#EmptyLineBeforeAccessModifier: LogicalBlock
+#ExperimentalAutoDetectBinPacking: false
+#FixNamespaceComments: true
+#ForEachMacros:
+# - foreach
+# - Q_FOREACH
+# - BOOST_FOREACH
+#IfMacros:
+# - KJ_IF_MAYBE
+IncludeBlocks: Regroup
+IncludeCategories:
+ - Regex: '^<(aio|arpa/inet|cpio|dirent|fcntl|fmtmsg|fnmatch|ftw|glob|grp|iconv|langinfo|libgen|monetray|mqueue|ndbm|net/if|netdb|netinet/in|netinet/tcp|nl_types|poll|pthread|pwd|regex|sched|search|semaphores|spawn|strings|stropts|sys/[a-z]*|syslog|tar|termios|trace|ulimit|unistd|utime|utmpx|wordexp)\.h>$'
+ Priority: 2
+ SortPriority: 0
+ CaseSensitive: true
+ - Regex: '^<(assert|complex|ctype|errno|fenv|float|inttypes|iso646|limits|locale|math|setjmp|signal|std[a-z]+|string|tgmath|threads|time|uchar|wchar|wctype)\.h>$'
+ Priority: 3
+ SortPriority: 0
+ CaseSensitive: true
+ - Regex: '^"(alloc|base64|buffer|byte|case|cdbmake|cdbread|close|constmap|direntry|dnsresolv|env|error|exit|fd|fifo|fmt|genalloc|getln|getoptb|iopause|ip|lock|logmsg|ndelay|open|pathexec|prot|readclose|readwrite|rename|scan|seek|select|sig|socket_if|str|stralloc|taia|tai|timeoutconn|timeout|uint_t|wait)\.h"$'
+ Priority: 6
+ SortPriority: 0
+ CaseSensitive: true
+ - Regex: '^<openssl/[a-z_/]+\.h>$'
+ Priority: 5
+ SortPriority: 0
+ CaseSensitive: true
+ - Regex: '^<crypt\.h>$'
+ Priority: 5
+ SortPriority: 0
+ CaseSensitive: true
+ - Regex: '^<[a-z_/]+>$'
+ Priority: 4
+ SortPriority: 0
+ CaseSensitive: true
+ - Regex: '^<.*>$'
+ Priority: 1
+ SortPriority: 0
+ CaseSensitive: true
+ - Regex: '^".*"$'
+ Priority: 7
+ SortPriority: 0
+ CaseSensitive: true
+IncludeIsMainRegex: '(Test)?$'
+IncludeIsMainSourceRegex: ''
+#IndentAccessModifiers: false
+IndentCaseBlocks: false
+IndentCaseLabels: true
+IndentExternBlock: AfterExternBlock
+IndentGotoLabels: true
+IndentPPDirectives: BeforeHash
+#IndentRequiresClause: true
+IndentWidth: 2
+IndentWrappedFunctionNames: false
+InsertBraces: false
+InsertNewlineAtEOF: true
+InsertTrailingCommas: None
+IntegerLiteralSeparator:
+ Binary: 0
+ BinaryMinDigits: 0
+ Decimal: 0
+ DecimalMinDigits: 0
+ Hex: 0
+ HexMinDigits: 0
+#JavaScriptQuotes: Leave
+#JavaScriptWrapImports: true
+KeepEmptyLinesAtTheStartOfBlocks: true
+KeepEmptyLinesAtEOF: false
+#LambdaBodyIndentation: Signature
+LineEnding: LF
+MacroBlockBegin: ''
+MacroBlockEnd: ''
+MaxEmptyLinesToKeep: 2
+#NamespaceIndentation: None
+#ObjCBinPackProtocolList: Auto
+#ObjCBlockIndentWidth: 2
+#ObjCBreakBeforeNestedBlockParam: true
+#ObjCSpaceAfterProperty: false
+#ObjCSpaceBeforeProtocolList: true
+PackConstructorInitializers: Never
+PenaltyBreakAssignment: 2
+PenaltyBreakBeforeFirstCallParameter: 19
+PenaltyBreakComment: 300
+PenaltyBreakFirstLessLess: 120
+PenaltyBreakOpenParenthesis: 1
+PenaltyBreakString: 1000
+PenaltyBreakTemplateDeclaration: 10
+PenaltyExcessCharacter: 1000000
+PenaltyIndentedWhitespace: 1
+PenaltyReturnTypeOnItsOwnLine: 1000
+PointerAlignment: Right
+PPIndentWidth: -1
+QualifierAlignment: Left
+ReferenceAlignment: Left
+ReflowComments: false
+RemoveBracesLLVM: false
+RemoveParentheses: Leave
+RemoveSemicolon: true
+#RequiresClausePosition: OwnLine
+#RequiresExpressionIndentation: OuterScope
+SeparateDefinitionBlocks: Leave
+ShortNamespaceLines: 1
+SortIncludes: CaseInsensitive
+#SortJavaStaticImport: Before
+SortUsingDeclarations: LexicographicNumeric
+SpaceAfterCStyleCast: false
+SpaceAfterLogicalNot: false
+#SpaceAfterTemplateKeyword: true
+SpaceAroundPointerQualifiers: Default
+SpaceBeforeAssignmentOperators: true
+SpaceBeforeCaseColon: false
+#SpaceBeforeCpp11BracedList: false
+#SpaceBeforeCtorInitializerColon: true
+#SpaceBeforeInheritanceColon: true
+#SpaceBeforeJsonColon: false
+SpaceBeforeParens: ControlStatements
+SpaceBeforeParensOptions:
+ AfterControlStatements: true
+ AfterForeachMacros: true
+ AfterFunctionDefinitionName: false
+ AfterFunctionDeclarationName: false
+ AfterIfMacros: true
+ AfterOverloadedOperator: false
+ AfterRequiresInClause: false
+ AfterRequiresInExpression: false
+ BeforeNonEmptyParentheses: false
+#SpaceBeforeRangeBasedForLoopColon: true
+SpaceBeforeSquareBrackets: false
+SpaceInEmptyBlock: false
+SpacesBeforeTrailingComments: 2
+#SpacesInAngles: Never
+SpacesInContainerLiterals: false
+SpacesInLineCommentPrefix:
+ Minimum: 1
+ Maximum: -1
+SpacesInParens: Never
+SpacesInParensOptions:
+ InCStyleCasts: false
+ InConditionalStatements: false
+ InEmptyParentheses: false
+ Other: false
+SpacesInSquareBrackets: false
+Standard: c++20
+#StatementAttributeLikeMacros:
+# - Q_EMIT
+#StatementMacros:
+# - Q_UNUSED
+# - QT_REQUIRE_VERSION
+TabWidth: 8
+UseTab: Never
+#VerilogBreakBetweenInstancePorts: true
+#WhitespaceSensitiveMacros:
+# - BOOST_PP_STRINGIZE
+# - CF_SWIFT_NAME
+# - NS_SWIFT_NAME
+# - PP_STRINGIZE
+# - STRINGIZE
+...
+
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..f489b30
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,19 @@
+# EditorConfig is awesome: https://EditorConfig.org
+
+# top-most EditorConfig file
+root = true
+
+[*]
+end_of_line = lf
+insert_final_newline = true
+charset = utf-8
+
+[*.{c,cpp,h}]
+indent_style = space
+indent_size = 2
+trim_trailing_whitespace = true
+
+[meson.{build,options}]
+indent_style = space
+indent_size = 2
+trim_trailing_whitespace = true