SwiftLint:排除特定规则的文件

eta*_*luz 29 swiftlint

我想在我的.swiftlint.yml文件中做这样的事情:

force_cast:
  severity: warning # explicitly
  excluded:
    - Dog.swift
Run Code Online (Sandbox Code Playgroud)

我有这个代码,我不喜欢我得到的force_try警告:

let cell = tableView.dequeueReusableCellWithIdentifier(Constants.dogViewCellReuseIdentifier,
                                                               forIndexPath: indexPath) as! DogViewCell
Run Code Online (Sandbox Code Playgroud)

我想通过从规则中排除此文件来禁止此文件的警告.

有没有办法做到这一点 ?

ara*_*_86 45

好吧,如果您不希望某些特定规则应用于特定文件,您可以使用@Benno Kress提到的技术.为此,您需要在swift文件中添加注释,如下所示.

规则将被禁用,直到文件结束或者linter看到匹配的启用注释:

// swiftlint:disable <rule1> 

   YOUR CODE WHERE NO rule1 is applied

// swiftlint:enable <rule1>
Run Code Online (Sandbox Code Playgroud)

也可以通过配置swiftlint来跳过某些文件.在您将运行SwiftLint的目录中添加" .swiftlint.yml "文件.

添加以下内容以排除某些文件.让我们说file1,file2 ......等

excluded: 
  - file1
  - file2
  - folder1
  - folder1/ExcludedFile.swift
Run Code Online (Sandbox Code Playgroud)

要禁用某些规则,请将以下内容添加到相同的" .swiftlint.yml "文件中.

disabled_rules: # rule identifiers to exclude from running
  - colon
  - comma
  - control_statement
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅以下链接.

https://swifting.io/blog/2016/03/29/11-swiftlint/

https://github.com/realm/SwiftLint#disable-rules-in-code


Jac*_*ack 14

我只是摆脱 force_cast

步骤1:

cd path-to-your-project
Run Code Online (Sandbox Code Playgroud)

第2步:

touch .swiftlint.yml
Run Code Online (Sandbox Code Playgroud)

第3步: 打开.swiftlint.yml并添加

disabled_rules: # rule identifiers to exclude from running
 - force_cast
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

参考 - https://github.com/realm/SwiftLint#disable-rules-in-code

  • 这是一个隐藏文件,所以运行`open .swiftlint.yml` (2认同)

Ben*_*ess 13

您可以// swiftlint:disable force_cast在文件的开头写入要对此规则进行警告的警告.它会被禁用,直到文件结束或添加行// swiftlint:enable force_cast.

资料来源:https://github.com/realm/SwiftLint#disable-rules-in-code