Clang-Format块和ColumnLimit 0

时间:2015-03-30 15:25:37

标签: ios objective-c xcode clang-format

我在使用clang-format和block时遇到了一些麻烦。我想使用尾随块维护以下格式的方法调用:

[self presentViewController:alertController animated:YES completion:^{
    NSLog(@"Output");
    // Do something
}];

我已将ColumnLimit设置为0,它可以在任何地方使用,但它的副作用是不在块内格式化任何内容(if语句,其他调用等)。我可以找到格式化块内代码的唯一方法是将ColumnLimit设置为>但是,即使我将它设置为像100000这样的巨大的东西,它也会为每个参数添加中断,这是我不想要的:

[self presentViewController:alertController
               animated:YES
             completion:^{
                 NSLog(@"Output");
                 // Do something
             }];

因此,我想要的组合是对块内的代码进行适当格式化,而不涉及方法调用的任何其他内容。

我的clang-format配置:

Language: Cpp

ColumnLimit: 0
AllowShortBlocksOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortLoopsOnASingleLine: false
KeepEmptyLinesAtTheStartOfBlocks: false
MaxEmptyLinesToKeep: 1
IndentWidth: 4
TabWidth: 4
UseTab: Never
PointerAlignment: Right
DerivePointerAlignment: false
ObjCSpaceAfterProperty: true
BreakBeforeBraces: Stroustrup
AllowShortIfStatementsOnASingleLine: false
BreakBeforeTernaryOperators: false
IndentCaseLabels: true
AllowShortCaseLabelsOnASingleLine: false
AlignTrailingComments: true
BinPackParameters: false
BinPackArguments: false
AllowShortFunctionsOnASingleLine: false
IndentWrappedFunctionNames: false
ObjCSpaceBeforeProtocolList: true
SpacesInParentheses: false
SpacesInAngles:  false
SpaceInEmptyParentheses: false
SpacesInCStyleCastParentheses: false
SpacesInContainerLiterals: true
SpaceBeforeAssignmentOperators: true
SpacesBeforeTrailingComments: 1
ObjCBlockIndentWidth: 4

Clang格式版本为3.6。

任何帮助都会很棒,不确定是否可以实现。

0 个答案:

没有答案