我的 C++ 代码中有以下行:
std::cout << "done" << "\n";
clang-format 分为哪几种
std::cout << "done"
<< "\n";
无论如何。我编辑了以“Break”或“Align”开头的每个选项:
AlignAfterOpenBracket: DontAlign
AlignArrayOfStructures: None
AlignConsecutiveMacros: 'false'
AlignConsecutiveAssignments: 'false'
AlignConsecutiveBitFields: 'false'
AlignConsecutiveDeclarations: 'false'
AlignEscapedNewlines: DontAlign
AlignOperands: DontAlign
AlignTrailingComments: 'false'
BreakBeforeBinaryOperators: None
BreakBeforeConceptDeclarations: false
BreakBeforeBraces: Attach
BreakBeforeInheritanceComma: false
BreakInheritanceList: AfterComma
BreakBeforeTernaryOperators: false
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: AfterColon
BreakStringLiterals: false
我怎样才能让它不这样做?版本是14.0.0
clang-format 总是错误地将
<<
后跟字符串文字放在单独的行上。 这是一个已知错误,于 2020 年 2 月首次报告。
您的配置适用于以下语句:
// doesn't get split over multiple lines
int x = 3 << 5;
对于这样的代码,
BreakBeforeBinaryOperators: None
确实有效。
但是,当 <<
后跟字符串文字时,无论如何,clang-format 都会将其放在单独的行上。