/
.swiftlint.yml
130 lines (112 loc) · 2.48 KB
/
.swiftlint.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
included:
- CotEditor/Sources
- Tests
opt_in_rules:
- anyobject_protocol
- array_init
- attributes
- closure_end_indentation
- closure_spacing
- collection_alignment
- contains_over_first_not_nil
- discouraged_optional_boolean
- empty_string
- empty_xctest_method
- explicit_init
- extension_access_modifier
- fallthrough
- file_header
- first_where
- identical_operands
- implicit_return
- joined_default_parameter
- last_where
- let_var_whitespace
- multiline_function_chains
- multiline_parameters
- multiline_parameters_brackets
- nimble_operator
- pattern_matching_keywords
- private_outlet
- prohibited_super_call
- quick_discouraged_call
- quick_discouraged_focused_test
- quick_discouraged_pending_test
- redundant_nil_coalescing
- redundant_type_annotation
- required_enum_case
- sorted_first_last
- static_operator
- toggle_bool
- untyped_error_in_catch
- unused_private_declaration
- vertical_parameter_alignment_on_call
- xct_specific_matcher
- yoda_condition
disabled_rules:
- block_based_kvo
- force_cast
- force_try
- nesting
- opening_brace
- pattern_matching_keywords
- trailing_comma
- unused_closure_parameter
- weak_delegate
private_outlet:
allow_private_set: true
trailing_whitespace:
ignores_empty_lines: true
attributes:
always_on_same_line: ["@IBAction", "@objc"]
vertical_whitespace:
max_empty_lines: 4
file_length:
warning: 2000
error: 3000
line_length:
warning: 1000
error: 2000
type_body_length:
warning: 1000
error: 1500
function_body_length:
warning: 90
error: 100
cyclomatic_complexity:
warning: 30
error: 50
large_tuple:
warning: 3
error: 6
identifier_name:
max_length:
warning: 60
error: 100
min_length:
warning: 2
excluded:
- x
- y
- shiftJIS_X0213
- version3_0
custom_rules:
comment_space:
name: "Space After Comment"
regex: '//\S'
match_kinds:
- comment
message: "There should be a space after a comment delimiter."
severity: warning
inline_comment_spaces:
name: "Spaces Before Inline Comment"
regex: '\S ?//'
match_kinds:
- comment
message: "There should be more than 2 spaces before an inline comment."
severity: warning
empty_first_line:
name: "Empty First Line"
regex: '(^[ a-zA-Z ]*(?:protocol|extension|class|struct) (?!(?:var|let))[ a-zA-Z:]*\{\n *\S+)'
message: "There should be an empty line after a declaration"
severity: warning