* add scss_lint to Gemfile * add .scss-lint.yml * fix warnings of scss-lint * chmod -x styles/variables.scss * Enable CodeClimate SCSS Lint checks
		
			
				
	
	
		
			265 lines
		
	
	
		
			7.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			265 lines
		
	
	
		
			7.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # Linter Documentation:
 | |
| # https://github.com/brigade/scss-lint/blob/v0.42.2/lib/scss_lint/linter/README.md
 | |
| 
 | |
| scss_files: 'app/javascript/styles/**/*.scss'
 | |
| 
 | |
| exclude:
 | |
|   - app/javascript/styles/reset.scss
 | |
| 
 | |
| linters:
 | |
|   # Reports when you use improper spacing around ! (the "bang") in !default,
 | |
|   # !global, !important, and !optional flags.
 | |
|   BangFormat:
 | |
|     enabled: false
 | |
| 
 | |
|   # Whether or not to prefer `border: 0` over `border: none`.
 | |
|   BorderZero:
 | |
|     enabled: false
 | |
| 
 | |
|   # Reports when you define a rule set using a selector with chained classes
 | |
|   # (a.k.a. adjoining classes).
 | |
|   ChainedClasses:
 | |
|     enabled: false
 | |
| 
 | |
|   # Prefer hexadecimal color codes over color keywords.
 | |
|   # (e.g. `color: green` is a color keyword)
 | |
|   ColorKeyword:
 | |
|     enabled: false
 | |
| 
 | |
|   # Prefer color literals (keywords or hexadecimal codes) to be used only in
 | |
|   # variable declarations. They should be referred to via variables everywhere
 | |
|   # else.
 | |
|   ColorVariable:
 | |
|     enabled: true
 | |
| 
 | |
|   # Which form of comments to prefer in CSS.
 | |
|   Comment:
 | |
|     enabled: false
 | |
| 
 | |
|   # Reports @debug statements (which you probably left behind accidentally).
 | |
|   DebugStatement:
 | |
|     enabled: false
 | |
| 
 | |
|   # Rule sets should be ordered as follows:
 | |
|   # - @extend declarations
 | |
|   # - @include declarations without inner @content
 | |
|   # - properties, @include declarations with inner @content
 | |
|   # - nested rule sets.
 | |
|   DeclarationOrder:
 | |
|     enabled: false
 | |
| 
 | |
|   # `scss-lint:disable` control comments should be preceded by a comment
 | |
|   # explaining why these linters are being disabled for this file.
 | |
|   # See https://github.com/brigade/scss-lint#disabling-linters-via-source for
 | |
|   # more information.
 | |
|   DisableLinterReason:
 | |
|     enabled: true
 | |
| 
 | |
|   # Reports when you define the same property twice in a single rule set.
 | |
|   DuplicateProperty:
 | |
|     enabled: false
 | |
| 
 | |
|   # Separate rule, function, and mixin declarations with empty lines.
 | |
|   EmptyLineBetweenBlocks:
 | |
|     enabled: true
 | |
| 
 | |
|   # Reports when you have an empty rule set.
 | |
|   EmptyRule:
 | |
|     enabled: true
 | |
| 
 | |
|   # Reports when you have an @extend directive.
 | |
|   ExtendDirective:
 | |
|     enabled: false
 | |
| 
 | |
|   # Files should always have a final newline. This results in better diffs
 | |
|   # when adding lines to the file, since SCM systems such as git won't
 | |
|   # think that you touched the last line.
 | |
|   FinalNewline:
 | |
|     enabled: false
 | |
| 
 | |
|   # HEX colors should use three-character values where possible.
 | |
|   HexLength:
 | |
|     enabled: false
 | |
| 
 | |
|   # HEX color values should use lower-case colors to differentiate between
 | |
|   # letters and numbers, e.g. `#E3E3E3` vs. `#e3e3e3`.
 | |
|   HexNotation:
 | |
|     enabled: true
 | |
| 
 | |
|   # Avoid using ID selectors.
 | |
|   IdSelector:
 | |
|     enabled: false
 | |
| 
 | |
|   # The basenames of @imported SCSS partials should not begin with an
 | |
|   # underscore and should not include the filename extension.
 | |
|   ImportPath:
 | |
|     enabled: false
 | |
| 
 | |
|   # Avoid using !important in properties. It is usually indicative of a
 | |
|   # misunderstanding of CSS specificity and can lead to brittle code.
 | |
|   ImportantRule:
 | |
|     enabled: false
 | |
| 
 | |
|   # Indentation should always be done in increments of 2 spaces.
 | |
|   Indentation:
 | |
|     enabled: true
 | |
|     width: 2
 | |
| 
 | |
|   # Don't write leading zeros for numeric values with a decimal point.
 | |
|   LeadingZero:
 | |
|     enabled: false
 | |
| 
 | |
|   # Reports when you define the same selector twice in a single sheet.
 | |
|   MergeableSelector:
 | |
|     enabled: false
 | |
| 
 | |
|   # Functions, mixins, variables, and placeholders should be declared
 | |
|   # with all lowercase letters and hyphens instead of underscores.
 | |
|   NameFormat:
 | |
|     enabled: false
 | |
| 
 | |
|   # Avoid nesting selectors too deeply.
 | |
|   NestingDepth:
 | |
|     enabled: false
 | |
| 
 | |
|   # Always use placeholder selectors in @extend.
 | |
|   PlaceholderInExtend:
 | |
|     enabled: false
 | |
| 
 | |
|   # Sort properties in a strict order.
 | |
|   PropertySortOrder:
 | |
|     enabled: false
 | |
| 
 | |
|   # Reports when you use an unknown or disabled CSS property
 | |
|   # (ignoring vendor-prefixed properties).
 | |
|   PropertySpelling:
 | |
|     enabled: false
 | |
| 
 | |
|   # Configure which units are allowed for property values.
 | |
|   PropertyUnits:
 | |
|     enabled: false
 | |
| 
 | |
|   # Pseudo-elements, like ::before, and ::first-letter, should be declared
 | |
|   # with two colons. Pseudo-classes, like :hover and :first-child, should
 | |
|   # be declared with one colon.
 | |
|   PseudoElement:
 | |
|     enabled: true
 | |
| 
 | |
|   # Avoid qualifying elements in selectors (also known as "tag-qualifying").
 | |
|   QualifyingElement:
 | |
|     enabled: false
 | |
| 
 | |
|   # Don't write selectors with a depth of applicability greater than 3.
 | |
|   SelectorDepth:
 | |
|     enabled: false
 | |
| 
 | |
|   # Selectors should always use hyphenated-lowercase, rather than camelCase or
 | |
|   # snake_case.
 | |
|   SelectorFormat:
 | |
|     enabled: false
 | |
|     convention: hyphenated_lowercase
 | |
| 
 | |
|   # Prefer the shortest shorthand form possible for properties that support it.
 | |
|   Shorthand:
 | |
|     enabled: true
 | |
| 
 | |
|   # Each property should have its own line, except in the special case of
 | |
|   # single line rulesets.
 | |
|   SingleLinePerProperty:
 | |
|     enabled: true
 | |
|     allow_single_line_rule_sets: true
 | |
| 
 | |
|   # Split selectors onto separate lines after each comma, and have each
 | |
|   # individual selector occupy a single line.
 | |
|   SingleLinePerSelector:
 | |
|     enabled: true
 | |
| 
 | |
|   # Commas in lists should be followed by a space.
 | |
|   SpaceAfterComma:
 | |
|     enabled: false
 | |
| 
 | |
|   # Properties should be formatted with a single space separating the colon
 | |
|   # from the property's value.
 | |
|   SpaceAfterPropertyColon:
 | |
|     enabled: true
 | |
| 
 | |
|   # Properties should be formatted with no space between the name and the
 | |
|   # colon.
 | |
|   SpaceAfterPropertyName:
 | |
|     enabled: true
 | |
| 
 | |
|   # Variables should be formatted with a single space separating the colon
 | |
|   # from the variable's value.
 | |
|   SpaceAfterVariableColon:
 | |
|     enabled: true
 | |
| 
 | |
|   # Variables should be formatted with no space between the name and the
 | |
|   # colon.
 | |
|   SpaceAfterVariableName:
 | |
|     enabled: false
 | |
| 
 | |
|   # Operators should be formatted with a single space on both sides of an
 | |
|   # infix operator.
 | |
|   SpaceAroundOperator:
 | |
|     enabled: true
 | |
| 
 | |
|   # Opening braces should be preceded by a single space.
 | |
|   SpaceBeforeBrace:
 | |
|     enabled: true
 | |
| 
 | |
|   # Parentheses should not be padded with spaces.
 | |
|   SpaceBetweenParens:
 | |
|     enabled: false
 | |
| 
 | |
|   # Enforces that string literals should be written with a consistent form
 | |
|   # of quotes (single or double).
 | |
|   StringQuotes:
 | |
|     enabled: false
 | |
| 
 | |
|   # Property values, @extend, @include, and @import directives, and variable
 | |
|   # declarations should always end with a semicolon.
 | |
|   TrailingSemicolon:
 | |
|     enabled: true
 | |
| 
 | |
|   # Reports lines containing trailing whitespace.
 | |
|   TrailingWhitespace:
 | |
|     enabled: true
 | |
| 
 | |
|   # Don't write trailing zeros for numeric values with a decimal point.
 | |
|   TrailingZero:
 | |
|     enabled: false
 | |
| 
 | |
|   # Don't use the `all` keyword to specify transition properties.
 | |
|   TransitionAll:
 | |
|     enabled: false
 | |
| 
 | |
|   # Numeric values should not contain unnecessary fractional portions.
 | |
|   UnnecessaryMantissa:
 | |
|     enabled: false
 | |
| 
 | |
|   # Do not use parent selector references (&) when they would otherwise
 | |
|   # be unnecessary.
 | |
|   UnnecessaryParentReference:
 | |
|     enabled: false
 | |
| 
 | |
|   # URLs should be valid and not contain protocols or domain names.
 | |
|   UrlFormat:
 | |
|     enabled: true
 | |
| 
 | |
|   # URLs should always be enclosed within quotes.
 | |
|   UrlQuotes:
 | |
|     enabled: true
 | |
| 
 | |
|   # Properties, like color and font, are easier to read and maintain
 | |
|   # when defined using variables rather than literals.
 | |
|   VariableForProperty:
 | |
|     enabled: false
 | |
| 
 | |
|   # Avoid vendor prefixes. Or rather: don't write them yourself.
 | |
|   VendorPrefix:
 | |
|     enabled: false
 | |
| 
 | |
|   # Omit length units on zero values, e.g. `0px` vs. `0`.
 | |
|   ZeroUnit:
 | |
|     enabled: true
 |