Permalink
Fetching contributors…
Cannot retrieve contributors at this time
executable file 487 lines (429 sloc) 13.5 KB
exclude: [
".git/**",
"node_modules/**",
"bower_components/**"
]
# Default application configuration that all configurations inherit from.
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: true
max_elements: 1
# Prefer border: 0 over border: none?
# Configure: `zero` or `none`
BorderZero:
enabled: true
convention: zero
# Prefer hexadecimal color codes over color keywords?
ColorKeyword:
enabled: false
# Ensures color literals are used only in variable declarations.
ColorVariable:
enabled: false
# Prefer // comments over /* ... */?
Comment:
enabled: true
# Report @debug statements?
DebugStatement:
enabled: true
# In rulesets, order by: @extend, properties, nested rule sets?
DeclarationOrder:
enabled: true
# Checks for "reason" comments above linter-disabling comments.
DisableLinterReason:
enabled: false
# Report the same property twice in a single rule set?
DuplicateProperty:
enabled: true
# Lint position of @else statements?
# Configure: `same_line` or `new_line`
ElsePlacement:
enabled: true
style: same_line
# Require a blank line between rule, function, and mixin declarations?
# Ignore blocks spanning a single line only?
EmptyLineBetweenBlocks:
enabled: true
ignore_single_line_blocks: true
# Report empty rulesets?
EmptyRule:
enabled: false
# Checks that `@extend` is never used.
ExtendDirective:
enabled: false
# Checks for final newlines at the end of a file.
FinalNewline:
enabled: true
present: true
# Lint hex color length?
# Configure: `short` or `long`
HexLength:
enabled: true
style: short
# Lint case of hex colors?
# Configure: `lowercase` or `uppercase`
HexNotation:
enabled: true
style: lowercase
# Report invalid hexadecimal colors?
HexValidation:
enabled: true
# Checks for the use of an ID selector.
IdSelector:
enabled: false
# Reports the use of !important in properties.
ImportantRule:
enabled: false
# Checks formatting of the basenames of @imported partials
ImportPath:
enabled: true
leading_underscore: false
filename_extension: false
# Checks for consistent indentation of nested declarations and rule sets.
Indentation:
enabled: true
allow_non_nested_indentation: false
character: space # or 'tab'
width: 4
# Lint leading zero on dimension values?
# Configure: `exclude_zero` or `include_zero`
LeadingZero:
enabled: true
style: include_zero
# Report same selector used twice in a single stylesheet?
MergeableSelector:
enabled: true
force_nesting: false
# Checks the format of declared names of functions, mixins, and variables.
# Configure: 'hyphenated_lowercase', 'camel_case', 'snake_case' or a regex pattern
NameFormat:
enabled: true
allow_leading_underscore: true
convention: '[a-z]|-{3}|_{3}|[^_]_[^_]'
# BEM regex from SelectorFormat src
# Checks for rule sets nested deeper than a specified maximum depth.
NestingDepth:
enabled: true
max_depth: 4
# Report @extend unless extending a placeholder?
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
# Report unknown CSS properties? (Ignores vendor prefixes.)
PropertySpelling:
enabled: true
extra_properties: []
# Check for allowed units
PropertyUnits:
enabled: false
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 element selectors qualifying id, classes, or attribute selectors.
QualifyingElement:
enabled: true
allow_element_with_attribute: true
allow_element_with_class: false
allow_element_with_id: false
# Lint selector depth?
# Configure: number of levels (number of combinators + 1), e.g.
# `ul > li > a` is 3 levels.
SelectorDepth:
enabled: true
max_depth: 3
# Checks that selector names use a specified convention
# Configure: 'hyphenated_lowercase', 'strict_BEM', 'hyphenated_BEM', 'snake_case', 'camel_case' or a regex pattern
SelectorFormat:
enabled: true
convention: hyphenated_BEM
# Checks for the use of the shortest form for properties that can be written in shorthand.
Shorthand:
enabled: true
allowed_shorthands: [1, 2, 3]
# Checks that all properties in a rule set are on their own distinct lines.
SingleLinePerProperty:
enabled: true
allow_single_line_rule_sets: false
# Report more than one selector per line?
SingleLinePerSelector:
enabled: true
# Checks for spaces after commas in argument lists.
# Configure: `one_space`, `no_space` or `at_least_one_space`
SpaceAfterComma:
enabled: true
style: one_space
# Lint whitespace between property colon and value?
# Configure: `no_space`, `one_space`, `at_least_one_space`, `one_space_or_newline` or `aligned`
SpaceAfterPropertyColon:
enabled: true
style: one_space
# Report presence of whitespace between property name and colon?
SpaceAfterPropertyName:
enabled: true
# Warns if any space present between the name of a variable and the colon in
# variable assignments.
SpaceAfterVariableName:
enabled: true
# Checks for space around operators on values.
# Configure: `one_space` or `no_space`
SpaceAroundOperator:
enabled: false
style: no_space
# Report lack of space between selector and opening brace?
SpaceBeforeBrace:
enabled: true
style: space # or 'new_line'
allow_single_line_padding: false
# Checks for the presence of spaces between parentheses.
# Configure: number of spaces
SpaceBetweenParens:
enabled: true
spaces: 0
# Lint quote marks for all strings?
# Configure: `single_quotes` or `double_quotes`
StringQuotes:
enabled: false
style: double_quotes
# Report lack of semicolon at the end of the last rule in a ruleset?
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
# Report numeric values with unnecessary fractional portions?
UnnecessaryMantissa:
enabled: true
# Checks for unnecessary uses of the parent reference (&) in nested selectors.
UnnecessaryParentReference:
enabled: true
# Report urls containing a protocol or domain?
UrlFormat:
enabled: true
# Report urls without quotes?
UrlQuotes:
enabled: true
# Reports the use of literals for properties where variables are preferred.
VariableForProperty:
enabled: true
properties: [
font
]
# Checks for vendor prefixes.
VendorPrefixes:
enabled: true
identifier_list: base
additional_identifiers: []
excluded_identifiers: [
-webkit-appearance,
-webkit-overflow-scrolling,
-webkit-tap-highlight-color,
-webkit-text-fill-color
]
# Report units on zero values?
ZeroUnit:
enabled: true
# Use Compass linters?
Compass::*:
enabled: false
# Lint the declaration order of properties?
# Configure: array of properties
PropertySortOrder:
enabled: true
ignore_unspecified: false
min_properties: 2
order:
- content
- quotes
- counter-reset
- counter-increment
- # Positioning
- position
- top
- right
- bottom
- left
- z-index
- float
- clear
- # Display, layout modes & box model
- display
- overflow
- overflow-x
- overflow-y
- clip
- table-layout
- empty-cells
- caption-side
- border-spacing
- border-collapse
- flex-flow
- flex-direction
- flex-wrap
- justify-content
- align-items
- align-content
- flex
- flex-grow
- flex-shrink
- flex-basis
- align-self
- order
- box-sizing
- width
- min-width
- max-width
- height
- min-height
- max-height
- margin
- margin-top
- margin-right
- margin-bottom
- margin-left
- padding
- padding-top
- padding-right
- padding-bottom
- padding-left
- border
- border-width
- border-style
- border-color
- border-top
- border-top-width
- border-top-style
- border-top-color
- border-right
- border-right-width
- border-right-style
- border-right-color
- border-bottom
- border-bottom-width
- border-bottom-style
- border-bottom-color
- border-left
- border-left-width
- border-left-style
- border-left-color
- # Visual styles
- visibility
- opacity
- border-radius
- border-top-left-radius
- border-top-right-radius
- border-bottom-right-radius
- border-bottom-left-radius
- border-image
- border-image-source
- border-image-slice
- border-image-width
- border-image-outset
- border-image-repeat
- background
- background-color
- background-image
- background-repeat
- background-attachment
- background-position
- background-position-x
- background-position-y
- background-origin
- background-size
- background-clip
- box-shadow
- box-decoration-break
- outline
- outline-width
- outline-style
- outline-color
- filter
- # Text styles
- color
- font
- font-family
- font-style
- font-weight
- font-variant
- font-size
- font-size-adjust
- line-height
- letter-spacing
- word-spacing
- direction
- word-wrap
- overflow-wrap
- word-break
- hyphens
- white-space
- text-align
- text-align-last
- text-indent
- text-overflow
- text-transform
- text-decoration
- text-shadow
- text-rendering
- text-size-adjust
- vertical-align
- tab-size
- list-style
- list-style-position
- list-style-type
- list-style-image
- # Transforms
- transform
- transform-function
- transform-origin
- transform-style
- perspective
- perspective-origin
- backface-visibility
- # Transitions and Animations
- transition
- transition-property
- transition-duration
- transition-timing-function
- transition-delay
- animation
- animation-name
- animation-duration
- animation-timing-function
- animation-delay
- animation-iteration-count
- animation-direction
- animation-fill-mode
- animation-play-state
- # Browser UI
- cursor
- user-select
- resize
- pointer-events
- # Non-standard properties
- -webkit-appearance
- -moz-appearance
- -webkit-overflow-scrolling
- -webkit-tap-highlight-color
- -webkit-text-stroke
separate_groups: true