2015-11-05 3 views
13

Я использую clang-format для форматирования нашего кода на C++. Я хотел бы иметь пустую строку между объявлением класса и закрывающей скобкой окружающего пространства имен, как так:clang-format: пустая строка между объявлением конца объявления класса и закрытием пространства имен

namespace Foo { 

class Bar { 
}; 

} 

Но лязгом формат изменяет свой код на этот:

namespace Foo { 

class Bar { 
}; 
} 

Она удаляет пустая строка между объявлением класса и закрывающей скобкой пространства имен.

Мой вопрос: есть ли способ предотвратить удаление шрифта в стиле clang?

Это моя текущая конфигурация лязга-формат:

Language: Cpp 
AccessModifierOffset: -4 
AlignAfterOpenBracket: true 
AlignConsecutiveAssignments: false 
AlignEscapedNewlinesLeft: false 
AlignOperands: false 
AlignTrailingComments: false 
AllowAllParametersOfDeclarationOnNextLine: true 
AllowShortBlocksOnASingleLine: false 
AllowShortCaseLabelsOnASingleLine: false 
AllowShortFunctionsOnASingleLine: false 
AllowShortIfStatementsOnASingleLine: false 
AllowShortLoopsOnASingleLine: false 
AlwaysBreakAfterDefinitionReturnType: None 
AlwaysBreakBeforeMultilineStrings: true 
AlwaysBreakTemplateDeclarations: true 
BinPackArguments: true 
BinPackParameters: true 
BreakBeforeBinaryOperators: None 
BreakBeforeBraces: Attach 
BreakBeforeTernaryOperators: false 
BreakConstructorInitializersBeforeComma: false 
ColumnLimit: 80 
CommentPragmas: '^ IWYU pragma:' 
ConstructorInitializerAllOnOneLineOrOnePerLine: true 
ConstructorInitializerIndentWidth: 0 
ContinuationIndentWidth: 4 
Cpp11BracedListStyle: true 
DerivePointerAlignment: true 
DisableFormat: false 
ExperimentalAutoDetectBinPacking: false 
ForEachMacros: [foreach, Q_FOREACH, BOOST_FOREACH] 
IndentCaseLabels: false 
IndentWidth: 4 
IndentWrappedFunctionNames: false 
KeepEmptyLinesAtTheStartOfBlocks: false 
MacroBlockBegin: '' 
MacroBlockEnd: '' 
MaxEmptyLinesToKeep: 1 
NamespaceIndentation: None 
ObjCBlockIndentWidth: 4 
ObjCSpaceAfterProperty: true 
ObjCSpaceBeforeProtocolList: true 
PenaltyBreakBeforeFirstCallParameter: 1 
PenaltyBreakComment: 300 
PenaltyBreakFirstLessLess: 120 
PenaltyBreakString: 1000 
PenaltyExcessCharacter: 1000000 
PenaltyReturnTypeOnItsOwnLine: 200 
PointerAlignment: Left 
SpaceAfterCStyleCast: false 
SpaceBeforeAssignmentOperators: true 
SpaceBeforeParens: ControlStatements 
SpaceInEmptyParentheses: false 
SpacesBeforeTrailingComments: 4 
SpacesInAngles: false 
SpacesInCStyleCastParentheses: false 
SpacesInContainerLiterals: false 
SpacesInParentheses: false 
SpacesInSquareBrackets: false 
Standard: Cpp11 
TabWidth: 4 
UseTab: Never 

ответ

9

Я нашел один способ обойти это: добавить встроенный комментарий к вашему пространству имен закрывающей скобке, следующим образом:

namespace my_namespace { 

class MyClass { 
    int n; 
}; 

} // namespace my_namespace 

 Смежные вопросы

  • Нет связанных вопросов^_^