-
Notifications
You must be signed in to change notification settings - Fork 2
/
scss_lint.yml
300 lines (239 loc) · 8.26 KB
/
scss_lint.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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
# http://www.rubydoc.info/github/brigade/scss-lint/SCSSLint/Linter/
scss_files: "**/*.scss"
plugin_directories: ['.scss-linters']
# List of gem names to load custom linters from (make sure they are already installed)
plugin_gems: []
linters:
# Checks spacing of ! declarations, like !important and !default
BangFormat:
enabled: true
space_before_bang: true
space_after_bang: false
# Checks for BEM selectors with more elements than a specified maximum number
BemDepth:
enabled: false
max_elements: 1
# Enforce a particular value for empty borders
BorderZero:
enabled: true
convention: zero # or `none`
# Checks for uses of chained classes
ChainedClasses:
enabled: false
# Checks for uses of a color keyword instead of the preferred hexadecimal form
ColorKeyword:
enabled: true
# Ensures color literals are used only in variable declarations
ColorVariable:
enabled: true
# Checks for uses of renderable comments (/* … */)
Comment:
enabled: true
style: silent
# Superclass for linters that apply to codebases using the Compass framework
Compass::*:
enabled: false
# Checks for leftover `@debug` statements
DebugStatement:
enabled: true
# Checks the order of nested items within a rule set
DeclarationOrder:
enabled: true
# Checks for “reason” comments above linter-disabling comments
DisableLinterReason:
enabled: false
# Checks for a property declared twice in a rule set
DuplicateProperty:
enabled: true
# Checks where `@else` and `@else if` directives are placed with respect to the previous curly brace
ElsePlacement:
enabled: true
style: same_line # or 'new_line'
# Reports the lack of empty lines between block defintions
EmptyLineBetweenBlocks:
enabled: true
ignore_single_line_blocks: true
# Checks for rules with no content
EmptyRule:
enabled: true
# Checks that `@extend` is never used
ExtendDirective:
enabled: false
# Checks for final newlines at the end of a file
FinalNewline:
enabled: true
present: true
# Checks that hexadecimal colors are written in the desired number of characters
HexLength:
enabled: true
style: short # or 'long'
# Checks if hexadecimal colors are written lowercase / uppercase
HexNotation:
enabled: true
style: lowercase # or 'uppercase'
# Checks for invalid hexadecimal colors
HexValidation:
enabled: true
# Checks for the use of an ID selector
IdSelector:
enabled: false
# Checks formatting of the basenames of @imported partials
ImportPath:
enabled: true
leading_underscore: false
filename_extension: false
# Reports the use of !important in properties
ImportantRule:
enabled: false
# Checks for consistent indentation of nested declarations and rule sets
Indentation:
enabled: true
allow_non_nested_indentation: false
character: space # or 'tab'
width: 2
# Checks for unnecessary leading zeros in numeric values with decimal points
LeadingZero:
enabled: true
style: exclude_zero # or 'include_zero'
# Checks for rule sets that can be merged with other rule sets
MergeableSelector:
enabled: true
force_nesting: true
# Checks the format of declared names of functions, mixins, and variables
NameFormat:
enabled: true
allow_leading_underscore: true
convention: hyphenated_lowercase # or 'camel_case', or 'snake_case', or a regex pattern
# Checks for rule sets nested deeper than a specified maximum depth
NestingDepth:
enabled: false
max_depth: 5
ignore_parent_selectors: false
# Checks that `@extend` is always used with a placeholder selector
PlaceholderInExtend:
enabled: true
# Checks that the number of properties in a rule set is under a defined limit
PropertyCount:
enabled: false
include_nested: false
max_properties: 10
# Checks the declaration order of properties
PropertySortOrder:
enabled: false
ignore_unspecified: false
min_properties: 2
separate_groups: false
# Checks for misspelled properties
PropertySpelling:
enabled: true
extra_properties: []
disabled_properties: []
# Check for allowed units
PropertyUnits:
enabled: true
global: [
'ch', 'em', 'ex', 'rem', # Font-relative lengths
'cm', 'in', 'mm', 'pc', 'pt', 'px', 'q', # Absolute lengths
'vh', 'vw', 'vmin', 'vmax', # Viewport-percentage lengths
'deg', 'grad', 'rad', 'turn', # Angle
'ms', 's', # Duration
'Hz', 'kHz', # Frequency
'dpi', 'dpcm', 'dppx', # Resolution
'%'] # Other
properties: {}
# Checks for the use of double colons with pseudo elements
PseudoElement:
enabled: false
# Checks for element selectors qualifying id, classe, or attribute selectors
QualifyingElement:
enabled: true
allow_element_with_attribute: false
allow_element_with_class: false
allow_element_with_id: false
# Checks for selectors with large depths of applicability
SelectorDepth:
enabled: false
max_depth: 5
# Checks that selector names use a specified convention
SelectorFormat:
enabled: false
convention: hyphenated_lowercase # or 'strict_BEM', or 'hyphenated_BEM', or 'snake_case', or 'camel_case', or a regex pattern
# Checks for the use of the shortest form for properties that can be written in shorthand
Shorthand:
enabled: true
allowed_shorthands: [1, 2, 3, 4]
# Checks that all properties in a rule set are on their own distinct lines
SingleLinePerProperty:
enabled: true
allow_single_line_rule_sets: true
# Checks that selector sequences are split over multiple lines by comma
SingleLinePerSelector:
enabled: true
# Checks for spaces after commas in argument lists
SpaceAfterComma:
enabled: true
style: one_space # or 'no_space', or 'at_least_one_space'
# Checks for spaces following the colon that separates a property's name from its value
SpaceAfterPropertyColon:
enabled: true
style: one_space # or 'no_space', or 'at_least_one_space', or 'aligned'
# Checks for spaces following the name of a property and before the colon separating the property's name from its value
SpaceAfterPropertyName:
enabled: true
# Checks for spaces following the name of a variable and before the colon separating the variables's name from its value
SpaceAfterVariableName:
enabled: true
# Checks for space around operators on values
SpaceAroundOperator:
enabled: true
style: one_space # or 'at_least_one_space', or 'no_space'
# Checks for the presence of a single space before an opening brace
SpaceBeforeBrace:
enabled: true
style: space # or 'new_line'
allow_single_line_padding: false
# Checks for the presence of spaces between parentheses
SpaceBetweenParens:
enabled: true
spaces: 0
# Checks the type of quotes used in string literals
StringQuotes:
enabled: true
style: single_quotes # or double_quotes
# Checks for a trailing semicolon on statements within rule sets
TrailingSemicolon:
enabled: true
# Checks for trailing whitespace on a line
TrailingWhitespace:
enabled: true
# Checks for unnecessary trailing zeros in numeric values with decimal points
TrailingZero:
enabled: true
# Checks for explicitly transitioned properties instead of transition all
TransitionAll:
enabled: false
# Checks for the unnecessary inclusion of a zero-value mantissa in numbers. (e.g. `4.0` could be written as just `4`)
UnnecessaryMantissa:
enabled: true
# Checks for unnecessary uses of the parent reference (&) in nested selectors
UnnecessaryParentReference:
enabled: true
# Checks the format of URLs for unnecessary protocols or domains
UrlFormat:
enabled: true
# Checks for quotes in URLs
UrlQuotes:
enabled: true
# Reports the use of literals for properties where variables are prefered
VariableForProperty:
enabled: false
properties: []
# Checks for vendor prefixes
VendorPrefix:
enabled: false
identifier_list: base
additional_identifiers: []
excluded_identifiers: []
# Checks for unnecessary units on zero values
ZeroUnit:
enabled: true