我的代码如下所示:
EXPECT_EQ(
subsystem->previousTouchscreenState,
expectedTouchscreenState
);
当我运行clang-format
时,它将代码段重新格式化为如下所示:
EXPECT_EQ(
subsystem->previousTouchscreenState,
expectedTouchscreenState );
这是相当违反直觉的;我希望我的多行函数调用(尽管EXPECT_EQ
在本例中是一个宏)在它自己的行上有结束圆括号,缩进到函数名的级别,就像它在第一个代码片段中一样。
如何使用clang-format
完成此操作?
多谢了。
3条答案
按热度按时间xxls0lw81#
我希望我的多行函数调用(尽管在本例中EXPECT_EQ是一个宏)在它自己的行上有结束圆括号,缩进到函数名的级别,就像它在第一个代码片段中一样。
如何使用clang-format完成此操作?
似乎还没有增加这一选项;要么等待,要么参与clang开源项目。
编辑:正如Catskul、DCzajkowski和Dwayne在评论中所指出的:已接受https://reviews.llvm.org/D109557
k2arahey2#
我找到了一个变通方法,如果你在最后一个参数的末尾加上一个注解,clang-format(或任何工具)都不应该把右括号折回去。
zour9fqk3#
BAS_BlockIndent(在配置中:BlockIndent)如果参数在一行中放不下,则始终在左括号后换行。右括号将放在新的一行中。例如:
您可以使用
AlignAfterOpenBracket: BlockIndent
更多信息请访问:https://clang.llvm.org/docs/ClangFormatStyleOptions.html📚