Как настроить параметры стиля Clang-Format, чтобы не допустить разрыв строки до перехвата?

Поэтому в настоящее время я использую следующий стиль:

{
BasedOnStyle: "LLVM",
IndentWidth: 4,
UseTab: false,
ColumnLimit: 150,
Standard: "Cpp11",
BreakBeforeBraces: "Attach",
BreakBeforeBinaryOperators: false,
AlwaysBreakTemplateDeclarations: true,
AllowShortLoopsOnASingleLine: false,
AllowShortIfStatementsOnASingleLine: false,
AllowAllParametersOfDeclarationOnNextLine: true,
SpacesInParentheses: true,
SpacesBeforeTrailingComments: 1,
SpaceInEmptyParentheses: false,
SpaceAfterControlStatementKeyword: true,
PointerBindsToType: true,
MaxEmptyLinesToKeep: 1,
IndentFunctionDeclarationAfterType: true,
IndentCaseLabels: true,
ExperimentalAutoDetectBinPacking: true,
DerivePointerBinding: true,
Cpp11BracedListStyle: false,
ConstructorInitializerAllOnOneLineOrOnePerLine: true,
BreakConstructorInitializersBeforeComma: true
}

и получить

try {
}
catch ( ... ) {
}

Пока хочу получить

try {
} catch ( ... ) {
}

Кто-нибудь может сказать, какой Вариант стиля Clang-Format несет ответственность за такое поведение?

2

Решение

BreakBeforeBraces должен, насколько я понимаю, влиять на поведение, которое вас интересует. Attach выглядит как правильный вариант из этого описания на странице параметров стиля, на которую вы ссылались. Единственная причина, по которой я вижу, что он не работает — это то, что BreakBeforeBraces ожидает BraceBreakingStyle ENUM. Попробуй без Attach строка.

BreakBeforeBraces: Attach

или же

BreakBeforeBraces: BS_Attach
2

Другие решения

Поддержка блоков try-catch была добавлена ​​только недавно. Если вы обновитесь до текущей версии, это должно быть исправлено.

1

По вопросам рекламы [email protected]