Swiftlint 下划线名称 swift
Swiftlint underscore name swift
我在我的项目中使用 swiftlint
。项目名称是 ABC xx
,它可以与 swiftlint 一起正常工作。现在我决定在我的应用程序中包含 Unitest
并且我必须将 @testable import ABC_xx
导入到 swift 测试文件中 class ABC_xxTests: XCTestCase {
而不是我在 Swiftlinter 中收到错误 Type Name Violation: Type name should only contain alphanumeric characters: 'ABC_xxTests' (type_name)
如何对这个错误进行排序
您可以禁用指定文件夹的规则,在您的情况下是 ABC_xxTests 文件夹。在 .swiftlint.yml
配置文件中,您可以使用 'excluded' 属性。如果您还没有创建 swiftlint 配置文件,您可以创建一个名称为 .swiftlint.yml
的配置文件并将其放在您的项目根文件夹中。
添加这行:
excluded:
- ABC_xxTests
以下 swiftlint 规则允许在您的 Swift class 名称中使用下划线:
type_name:
allowed_symbols: "_"
编辑:
如果你想为变量名也启用下划线使用:
identifier_name:
allowed_symbols: "_"
除了@carmine 的回答之外,在向 .swiftlint.yml
中的任何规则添加属性时,请记住以下两点:
- 应该换行
- 并且前面应该有一个白色 space。
在我的例子中,我忽略了 allowed_symbols
之前的白色 space。所以 linting 没有工作。当我加白色space时,就成功了
在.swiftlint.yml:
中对变量名使用下划线
variable_name:
allowed_symbols: "_"
我在我的项目中使用 swiftlint
。项目名称是 ABC xx
,它可以与 swiftlint 一起正常工作。现在我决定在我的应用程序中包含 Unitest
并且我必须将 @testable import ABC_xx
导入到 swift 测试文件中 class ABC_xxTests: XCTestCase {
而不是我在 Swiftlinter 中收到错误 Type Name Violation: Type name should only contain alphanumeric characters: 'ABC_xxTests' (type_name)
如何对这个错误进行排序
您可以禁用指定文件夹的规则,在您的情况下是 ABC_xxTests 文件夹。在 .swiftlint.yml
配置文件中,您可以使用 'excluded' 属性。如果您还没有创建 swiftlint 配置文件,您可以创建一个名称为 .swiftlint.yml
的配置文件并将其放在您的项目根文件夹中。
添加这行:
excluded:
- ABC_xxTests
以下 swiftlint 规则允许在您的 Swift class 名称中使用下划线:
type_name:
allowed_symbols: "_"
编辑: 如果你想为变量名也启用下划线使用:
identifier_name:
allowed_symbols: "_"
除了@carmine 的回答之外,在向 .swiftlint.yml
中的任何规则添加属性时,请记住以下两点:
- 应该换行
- 并且前面应该有一个白色 space。
在我的例子中,我忽略了 allowed_symbols
之前的白色 space。所以 linting 没有工作。当我加白色space时,就成功了
在.swiftlint.yml:
中对变量名使用下划线variable_name:
allowed_symbols: "_"