Skip to content

Use unmodified official ClangFormat configuration as base formatter configuration #1324

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Aug 16, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
183 changes: 2 additions & 181 deletions arduino-ide-extension/src/node/clang-formatter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -147,189 +147,10 @@ function styleJson({
UseTab,
}: ClangFormatOptions): Record<string, unknown> {
// Source: https://github.com/arduino/tooling-project-assets/tree/main/other/clang-format-configuration
const defaultConfig = require('../../src/node/default-formatter-config.json');
return {
AccessModifierOffset: -2,
AlignAfterOpenBracket: 'Align',
AlignArrayOfStructures: 'None',
AlignConsecutiveAssignments: 'None',
AlignConsecutiveBitFields: 'None',
AlignConsecutiveDeclarations: 'None',
AlignConsecutiveMacros: 'None',
AlignEscapedNewlines: 'DontAlign',
AlignOperands: 'Align',
AlignTrailingComments: true,
AllowAllArgumentsOnNextLine: true,
AllowAllConstructorInitializersOnNextLine: true,
AllowAllParametersOfDeclarationOnNextLine: true,
AllowShortBlocksOnASingleLine: 'Always',
AllowShortCaseLabelsOnASingleLine: true,
AllowShortEnumsOnASingleLine: true,
AllowShortFunctionsOnASingleLine: 'Empty',
AllowShortIfStatementsOnASingleLine: 'AllIfsAndElse',
AllowShortLambdasOnASingleLine: 'Empty',
AllowShortLoopsOnASingleLine: true,
AlwaysBreakAfterDefinitionReturnType: 'None',
AlwaysBreakAfterReturnType: 'None',
AlwaysBreakBeforeMultilineStrings: false,
AlwaysBreakTemplateDeclarations: 'No',
AttributeMacros: ['__capability'],
BasedOnStyle: 'LLVM',
BinPackArguments: true,
BinPackParameters: true,
BitFieldColonSpacing: 'Both',
BraceWrapping: {
AfterCaseLabel: false,
AfterClass: false,
AfterControlStatement: 'Never',
AfterEnum: false,
AfterFunction: false,
AfterNamespace: false,
AfterObjCDeclaration: false,
AfterStruct: false,
AfterUnion: false,
AfterExternBlock: false,
BeforeCatch: false,
BeforeElse: false,
BeforeLambdaBody: false,
BeforeWhile: false,
IndentBraces: false,
SplitEmptyFunction: true,
SplitEmptyRecord: true,
SplitEmptyNamespace: true,
},
BreakAfterJavaFieldAnnotations: false,
BreakBeforeBinaryOperators: 'NonAssignment',
BreakBeforeBraces: 'Attach',
BreakBeforeConceptDeclarations: false,
BreakBeforeInheritanceComma: false,
BreakBeforeTernaryOperators: true,
BreakConstructorInitializers: 'BeforeColon',
BreakConstructorInitializersBeforeComma: false,
BreakInheritanceList: 'BeforeColon',
BreakStringLiterals: false,
ColumnLimit: 0,
CommentPragmas: '',
CompactNamespaces: false,
ConstructorInitializerAllOnOneLineOrOnePerLine: false,
ConstructorInitializerIndentWidth: 2,
ContinuationIndentWidth: 2,
Cpp11BracedListStyle: false,
DeriveLineEnding: true,
DerivePointerAlignment: true,
DisableFormat: false,
EmptyLineAfterAccessModifier: 'Leave',
EmptyLineBeforeAccessModifier: 'Leave',
ExperimentalAutoDetectBinPacking: false,
FixNamespaceComments: false,
ForEachMacros: ['foreach', 'Q_FOREACH', 'BOOST_FOREACH'],
IfMacros: ['KJ_IF_MAYBE'],
IncludeBlocks: 'Preserve',
IncludeCategories: [
{
Regex: '^"(llvm|llvm-c|clang|clang-c)/',
Priority: 2,
SortPriority: 0,
CaseSensitive: false,
},
{
Regex: '^(<|"(gtest|gmock|isl|json)/)',
Priority: 3,
SortPriority: 0,
CaseSensitive: false,
},
{ Regex: '.*', Priority: 1, SortPriority: 0, CaseSensitive: false },
],
IncludeIsMainRegex: '',
IncludeIsMainSourceRegex: '',
IndentAccessModifiers: false,
IndentCaseBlocks: true,
IndentCaseLabels: true,
IndentExternBlock: 'Indent',
IndentGotoLabels: false,
IndentPPDirectives: 'None',
IndentRequires: true,
IndentWidth: 2,
IndentWrappedFunctionNames: false,
InsertTrailingCommas: 'None',
JavaScriptQuotes: 'Leave',
JavaScriptWrapImports: true,
KeepEmptyLinesAtTheStartOfBlocks: true,
LambdaBodyIndentation: 'Signature',
Language: 'Cpp',
MacroBlockBegin: '',
MacroBlockEnd: '',
MaxEmptyLinesToKeep: 100000,
NamespaceIndentation: 'None',
ObjCBinPackProtocolList: 'Auto',
ObjCBlockIndentWidth: 2,
ObjCBreakBeforeNestedBlockParam: true,
ObjCSpaceAfterProperty: false,
ObjCSpaceBeforeProtocolList: true,
PPIndentWidth: -1,
PackConstructorInitializers: 'BinPack',
PenaltyBreakAssignment: 1,
PenaltyBreakBeforeFirstCallParameter: 1,
PenaltyBreakComment: 1,
PenaltyBreakFirstLessLess: 1,
PenaltyBreakOpenParenthesis: 1,
PenaltyBreakString: 1,
PenaltyBreakTemplateDeclaration: 1,
PenaltyExcessCharacter: 1,
PenaltyIndentedWhitespace: 1,
PenaltyReturnTypeOnItsOwnLine: 1,
PointerAlignment: 'Right',
QualifierAlignment: 'Leave',
ReferenceAlignment: 'Pointer',
ReflowComments: false,
RemoveBracesLLVM: false,
SeparateDefinitionBlocks: 'Leave',
ShortNamespaceLines: 0,
SortIncludes: 'Never',
SortJavaStaticImport: 'Before',
SortUsingDeclarations: false,
SpaceAfterCStyleCast: false,
SpaceAfterLogicalNot: false,
SpaceAfterTemplateKeyword: false,
SpaceAroundPointerQualifiers: 'Default',
SpaceBeforeAssignmentOperators: true,
SpaceBeforeCaseColon: false,
SpaceBeforeCpp11BracedList: false,
SpaceBeforeCtorInitializerColon: true,
SpaceBeforeInheritanceColon: true,
SpaceBeforeParens: 'ControlStatements',
SpaceBeforeParensOptions: {
AfterControlStatements: true,
AfterForeachMacros: true,
AfterFunctionDefinitionName: false,
AfterFunctionDeclarationName: false,
AfterIfMacros: true,
AfterOverloadedOperator: false,
BeforeNonEmptyParentheses: false,
},
SpaceBeforeRangeBasedForLoopColon: true,
SpaceBeforeSquareBrackets: false,
SpaceInEmptyBlock: false,
SpaceInEmptyParentheses: false,
SpacesBeforeTrailingComments: 2,
SpacesInAngles: 'Leave',
SpacesInCStyleCastParentheses: false,
SpacesInConditionalStatement: false,
SpacesInContainerLiterals: false,
SpacesInLineCommentPrefix: { Minimum: 0, Maximum: -1 },
SpacesInParentheses: false,
SpacesInSquareBrackets: false,
Standard: 'Auto',
StatementAttributeLikeMacros: ['Q_EMIT'],
StatementMacros: ['Q_UNUSED', 'QT_REQUIRE_VERSION'],
...defaultConfig,
TabWidth,
UseCRLF: false,
UseTab,
WhitespaceSensitiveMacros: [
'STRINGIZE',
'PP_STRINGIZE',
'BOOST_PP_STRINGIZE',
'NS_SWIFT_NAME',
'CF_SWIFT_NAME',
],
};
}
193 changes: 193 additions & 0 deletions arduino-ide-extension/src/node/default-formatter-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,193 @@
{
"AccessModifierOffset": -2,
"AlignAfterOpenBracket": "Align",
"AlignArrayOfStructures": "None",
"AlignConsecutiveAssignments": "None",
"AlignConsecutiveBitFields": "None",
"AlignConsecutiveDeclarations": "None",
"AlignConsecutiveMacros": "None",
"AlignEscapedNewlines": "DontAlign",
"AlignOperands": "Align",
"AlignTrailingComments": true,
"AllowAllArgumentsOnNextLine": true,
"AllowAllConstructorInitializersOnNextLine": true,
"AllowAllParametersOfDeclarationOnNextLine": true,
"AllowShortBlocksOnASingleLine": "Always",
"AllowShortCaseLabelsOnASingleLine": true,
"AllowShortEnumsOnASingleLine": true,
"AllowShortFunctionsOnASingleLine": "Empty",
"AllowShortIfStatementsOnASingleLine": "AllIfsAndElse",
"AllowShortLambdasOnASingleLine": "Empty",
"AllowShortLoopsOnASingleLine": true,
"AlwaysBreakAfterDefinitionReturnType": "None",
"AlwaysBreakAfterReturnType": "None",
"AlwaysBreakBeforeMultilineStrings": false,
"AlwaysBreakTemplateDeclarations": "No",
"AttributeMacros": ["__capability"],
"BasedOnStyle": "LLVM",
"BinPackArguments": true,
"BinPackParameters": true,
"BitFieldColonSpacing": "Both",
"BraceWrapping": {
"AfterCaseLabel": false,
"AfterClass": false,
"AfterControlStatement": "Never",
"AfterEnum": false,
"AfterFunction": false,
"AfterNamespace": false,
"AfterObjCDeclaration": false,
"AfterStruct": false,
"AfterUnion": false,
"AfterExternBlock": false,
"BeforeCatch": false,
"BeforeElse": false,
"BeforeLambdaBody": false,
"BeforeWhile": false,
"IndentBraces": false,
"SplitEmptyFunction": true,
"SplitEmptyRecord": true,
"SplitEmptyNamespace": true
},
"BreakAfterJavaFieldAnnotations": false,
"BreakBeforeBinaryOperators": "NonAssignment",
"BreakBeforeBraces": "Attach",
"BreakBeforeConceptDeclarations": false,
"BreakBeforeInheritanceComma": false,
"BreakBeforeTernaryOperators": true,
"BreakConstructorInitializers": "BeforeColon",
"BreakConstructorInitializersBeforeComma": false,
"BreakInheritanceList": "BeforeColon",
"BreakStringLiterals": false,
"ColumnLimit": 0,
"CommentPragmas": "",
"CompactNamespaces": false,
"ConstructorInitializerAllOnOneLineOrOnePerLine": false,
"ConstructorInitializerIndentWidth": 2,
"ContinuationIndentWidth": 2,
"Cpp11BracedListStyle": false,
"DeriveLineEnding": true,
"DerivePointerAlignment": true,
"DisableFormat": false,
"EmptyLineAfterAccessModifier": "Leave",
"EmptyLineBeforeAccessModifier": "Leave",
"ExperimentalAutoDetectBinPacking": false,
"FixNamespaceComments": false,
"ForEachMacros": ["foreach", "Q_FOREACH", "BOOST_FOREACH"],
"IfMacros": ["KJ_IF_MAYBE"],
"IncludeBlocks": "Preserve",
"IncludeCategories": [
{
"Regex": "^\"(llvm|llvm-c|clang|clang-c)/",
"Priority": 2,
"SortPriority": 0,
"CaseSensitive": false
},
{
"Regex": "^(<|\"(gtest|gmock|isl|json)/)",
"Priority": 3,
"SortPriority": 0,
"CaseSensitive": false
},
{
"Regex": ".*",
"Priority": 1,
"SortPriority": 0,
"CaseSensitive": false
}
],
"IncludeIsMainRegex": "",
"IncludeIsMainSourceRegex": "",
"IndentAccessModifiers": false,
"IndentCaseBlocks": true,
"IndentCaseLabels": true,
"IndentExternBlock": "Indent",
"IndentGotoLabels": false,
"IndentPPDirectives": "None",
"IndentRequires": true,
"IndentWidth": 2,
"IndentWrappedFunctionNames": false,
"InsertTrailingCommas": "None",
"JavaScriptQuotes": "Leave",
"JavaScriptWrapImports": true,
"KeepEmptyLinesAtTheStartOfBlocks": true,
"LambdaBodyIndentation": "Signature",
"Language": "Cpp",
"MacroBlockBegin": "",
"MacroBlockEnd": "",
"MaxEmptyLinesToKeep": 100000,
"NamespaceIndentation": "None",
"ObjCBinPackProtocolList": "Auto",
"ObjCBlockIndentWidth": 2,
"ObjCBreakBeforeNestedBlockParam": true,
"ObjCSpaceAfterProperty": false,
"ObjCSpaceBeforeProtocolList": true,
"PPIndentWidth": -1,
"PackConstructorInitializers": "BinPack",
"PenaltyBreakAssignment": 1,
"PenaltyBreakBeforeFirstCallParameter": 1,
"PenaltyBreakComment": 1,
"PenaltyBreakFirstLessLess": 1,
"PenaltyBreakOpenParenthesis": 1,
"PenaltyBreakString": 1,
"PenaltyBreakTemplateDeclaration": 1,
"PenaltyExcessCharacter": 1,
"PenaltyIndentedWhitespace": 1,
"PenaltyReturnTypeOnItsOwnLine": 1,
"PointerAlignment": "Right",
"QualifierAlignment": "Leave",
"ReferenceAlignment": "Pointer",
"ReflowComments": false,
"RemoveBracesLLVM": false,
"SeparateDefinitionBlocks": "Leave",
"ShortNamespaceLines": 0,
"SortIncludes": "Never",
"SortJavaStaticImport": "Before",
"SortUsingDeclarations": false,
"SpaceAfterCStyleCast": false,
"SpaceAfterLogicalNot": false,
"SpaceAfterTemplateKeyword": false,
"SpaceAroundPointerQualifiers": "Default",
"SpaceBeforeAssignmentOperators": true,
"SpaceBeforeCaseColon": false,
"SpaceBeforeCpp11BracedList": false,
"SpaceBeforeCtorInitializerColon": true,
"SpaceBeforeInheritanceColon": true,
"SpaceBeforeParens": "ControlStatements",
"SpaceBeforeParensOptions": {
"AfterControlStatements": true,
"AfterForeachMacros": true,
"AfterFunctionDefinitionName": false,
"AfterFunctionDeclarationName": false,
"AfterIfMacros": true,
"AfterOverloadedOperator": false,
"BeforeNonEmptyParentheses": false
},
"SpaceBeforeRangeBasedForLoopColon": true,
"SpaceBeforeSquareBrackets": false,
"SpaceInEmptyBlock": false,
"SpaceInEmptyParentheses": false,
"SpacesBeforeTrailingComments": 2,
"SpacesInAngles": "Leave",
"SpacesInCStyleCastParentheses": false,
"SpacesInConditionalStatement": false,
"SpacesInContainerLiterals": false,
"SpacesInLineCommentPrefix": {
"Minimum": 0,
"Maximum": -1
},
"SpacesInParentheses": false,
"SpacesInSquareBrackets": false,
"Standard": "Auto",
"StatementAttributeLikeMacros": ["Q_EMIT"],
"StatementMacros": ["Q_UNUSED", "QT_REQUIRE_VERSION"],
"TabWidth": 2,
"UseCRLF": false,
"UseTab": "Never",
"WhitespaceSensitiveMacros": [
"STRINGIZE",
"PP_STRINGIZE",
"BOOST_PP_STRINGIZE",
"NS_SWIFT_NAME",
"CF_SWIFT_NAME"
]
}
1 change: 1 addition & 0 deletions arduino-ide-extension/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
"emitDecoratorMetadata": true,
"module": "commonjs",
"moduleResolution": "node",
"resolveJsonModule": true,
"target": "ES2017",
"outDir": "lib",
"lib": [
Expand Down