SwiftLint 的开关大小写格式问题

Switch case formatting issue with SwiftLint

当我执行 Cntrl + i 时,我的 switch case 会自动格式化,如下所示

switch someBool {
    ↓case true:
        print("success")
    ↓case false:
        print("failed")
}

但它会抛出一个 lint 警告 Switch and Case Statement Alignment Violation: Case statements should vertically align with their enclosing switch statement. (switch_case_alignment)

我已经手动格式化如下

switch someBool {
case true:
    print('red')
case false:
    print('blue')
}

但这会随着我的改变而改变 Cntrl+I

欢迎提出任何建议。谢谢。

您可以使用以下复选框调整 Xcode 上的设置。我认为默认情况下它是未选中的,这应该符合 SwiftLint 的默认规则。

当您违反 SwiftLint 规则时,您可以随时访问此页面以获取更多信息:https://realm.github.io/SwiftLint/switch_case_alignment.html

这向您展示了如何修复它。如果你认为你不能轻易修复它,你可以设置一个豁免来告诉 SwiftLint 忽略。

因此您只需将此注释放在 switch 语句上方的行中:

// swiftlint:disable switch_case_alignment