mirror of
https://github.com/arduino/arduino-ide.git
synced 2025-07-08 03:46:33 +00:00
Use unmodified official ClangFormat configuration as base formatter configuration (#1324)
The Arduino IDE's "Auto Format" feature is configured to produce the standard Arduino sketch formatting style by default. The Arduino IDE editor's default settings are compliant with that style. However, the user may adjust the editor settings. In this case, the Arduino IDE automatically adjusts the Auto Format configuration to align with the user's preferences. The formatter configuration is consumed by several other projects in addition to the Arduino IDE. For this reason, the configuration is hosted and maintained in a centralized location, from which it is pulled by all projects that use it. Previously, the adjustment of the Arduino IDE formatter configuration according to the editor settings was integrated into the configuration object itself. This meant that the standardized configuration had to be modified each time it was pulled in to sync from the upstream source. Moving the base formatter configuration object to a dedicated file, separated from the handling and adjustment code allows syncs to be done by simply replacing the existing configuration file with the one automatically generated by the CI system of the repository where the source configuration is hosted.
This commit is contained in:
parent
75e00c2bae
commit
9e2b73a045
@ -147,189 +147,10 @@ function styleJson({
|
|||||||
UseTab,
|
UseTab,
|
||||||
}: ClangFormatOptions): Record<string, unknown> {
|
}: ClangFormatOptions): Record<string, unknown> {
|
||||||
// Source: https://github.com/arduino/tooling-project-assets/tree/main/other/clang-format-configuration
|
// Source: https://github.com/arduino/tooling-project-assets/tree/main/other/clang-format-configuration
|
||||||
|
const defaultConfig = require('../../src/node/default-formatter-config.json');
|
||||||
return {
|
return {
|
||||||
AccessModifierOffset: -2,
|
...defaultConfig,
|
||||||
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,
|
TabWidth,
|
||||||
UseCRLF: false,
|
|
||||||
UseTab,
|
UseTab,
|
||||||
WhitespaceSensitiveMacros: [
|
|
||||||
'STRINGIZE',
|
|
||||||
'PP_STRINGIZE',
|
|
||||||
'BOOST_PP_STRINGIZE',
|
|
||||||
'NS_SWIFT_NAME',
|
|
||||||
'CF_SWIFT_NAME',
|
|
||||||
],
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
193
arduino-ide-extension/src/node/default-formatter-config.json
Normal file
193
arduino-ide-extension/src/node/default-formatter-config.json
Normal file
@ -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"
|
||||||
|
]
|
||||||
|
}
|
@ -13,6 +13,7 @@
|
|||||||
"emitDecoratorMetadata": true,
|
"emitDecoratorMetadata": true,
|
||||||
"module": "commonjs",
|
"module": "commonjs",
|
||||||
"moduleResolution": "node",
|
"moduleResolution": "node",
|
||||||
|
"resolveJsonModule": true,
|
||||||
"target": "ES2017",
|
"target": "ES2017",
|
||||||
"outDir": "lib",
|
"outDir": "lib",
|
||||||
"lib": [
|
"lib": [
|
||||||
|
Loading…
x
Reference in New Issue
Block a user