我正在使用ClangFormat。
我希望从此
更新我的ReactiveCocoa代码的样式 [[self.myService indexCase] subscribeNext:^(id response) {
DDLogDebug(@"response : %@", response);
}
error:^(NSError *error) {
[self.dataManager sendError:error];
}];
到这个
[[self.myService indexCase]
subscribeNext:^(id response) {
DDLogDebug(@"response : %@", response);
} error:^(NSError *error) {
[self.dataManager sendError:error];
}];
我应该考虑使用哪些ClangFormat属性来实现这一目标?
我的当前.clang-format
档案:
BasedOnStyle: WebKit
AlignTrailingComments: true
AllowShortFunctionsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: true
BreakBeforeBraces: Linux
ColumnLimit: 120
IndentCaseLabels: true
IndentWidth: 4
KeepEmptyLinesAtTheStartOfBlocks: false
MaxEmptyLinesToKeep: 2
ObjCSpaceAfterProperty: true
ObjCSpaceBeforeProtocolList: true
PointerBindsToType: false
SpacesBeforeTrailingComments: 1
TabWidth: 4
UseTab: Never
答案 0 :(得分:0)
添加:
AllowAllParametersOfDeclarationOnNextLine True
或
BinPackParameters True
答案 1 :(得分:0)
我将//
放在第一个运算符之前来实现此目的。 clang-format将其检测为注释,并在该语句的其余部分的下一行自动启动。您不需要将它放在每一行上,通常第一行足够但有时不行(它还取决于.clang-format
文件中的其他设置)。
所以看起来有点像:
[[self.myService indexCase] //
subscribeNext:^(id response) {
DDLogDebug(@"response : %@", response);
} error:^(NSError *error) {
[self.dataManager sendError:error];
}];
我使用这个技巧让clang-format打破我想要的代码。它有点hacky,甚至可能看起来有些丑陋,但我认为增加可读性的好处比偶尔的空注释语句更有价值,所以它不会伤害我的眼睛。