【发布时间】:2014-07-02 13:07:28
【问题描述】:
Similar 之前有人问过问题,但它们对我想做的事情没有帮助:
我想重新格式化现有的 Objective-C 代码(数百个文件)。对于纯 Apple 风格的格式,uncrustify 似乎可以满足我的要求。但是对于一些项目,我需要一种不同的风格,我还没有找到如何配置 uncrustify 的方法。在这种风格中,长方法调用看起来像这样(请不要讨论您是否喜欢这种风格;不建议使用其他风格):
[self
longMethod:arg1
withLots:arg2
ofArguments:arg3
aBlock:^{
[self doSomething];
}
andAnotherBlock:^{
[self doSomethingElse];
}
];
当方法调用超过 80 或 100 个字符的行长度时,将完成此包装。每行缩进一级,并且只包含一个参数和选择器部分,直到对应的:。因此,这些行不是冒号对齐的。
如果行长度低于 80 或 100 个字符,则不进行换行:
[self shortMethod:withAnArgument];
是否有可以调整以支持这种风格的代码格式化程序?如果是这样,哪个更重要的是,如何?
【问题讨论】:
-
这个问题不是题外话,因为它与About page 中明确提到的开发工具有关(另请参阅meta.stackoverflow.com)。另请参阅on-topic page in the FAQs:这不是关于意见,而是关于事实:工具可以做到或不能。如果可以的话,我想知道怎么做。
-
我回去重新阅读了指南,也无法想象这是多么离题。
-
看到比纯 C 语言有 80 个字符的限制总是让我的眼睛受伤。由于 IBM 打孔卡而强制执行字符限制并且仅因为 C 中的函数名称不能超过 8 个字符而工作...对于 Obj-C,包装结果是一种非常奇怪的格式,我认为您不会找到支持它的格式化程序。格式越陌生,找到格式化程序的可能性就越小。
-
@Sulthan:看我的问题:请不要讨论你是否喜欢这种风格;不建议使用其他样式。这就像在 C 中讨论 K&R 与 Allman 风格一样无用。
标签: objective-c code-formatting