You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

264 lines
7.2 KiB

  1. # Linter Documentation:
  2. # https://github.com/brigade/scss-lint/blob/v0.42.2/lib/scss_lint/linter/README.md
  3. scss_files: 'app/javascript/styles/**/*.scss'
  4. exclude:
  5. - app/javascript/styles/reset.scss
  6. linters:
  7. # Reports when you use improper spacing around ! (the "bang") in !default,
  8. # !global, !important, and !optional flags.
  9. BangFormat:
  10. enabled: false
  11. # Whether or not to prefer `border: 0` over `border: none`.
  12. BorderZero:
  13. enabled: false
  14. # Reports when you define a rule set using a selector with chained classes
  15. # (a.k.a. adjoining classes).
  16. ChainedClasses:
  17. enabled: false
  18. # Prefer hexadecimal color codes over color keywords.
  19. # (e.g. `color: green` is a color keyword)
  20. ColorKeyword:
  21. enabled: false
  22. # Prefer color literals (keywords or hexadecimal codes) to be used only in
  23. # variable declarations. They should be referred to via variables everywhere
  24. # else.
  25. ColorVariable:
  26. enabled: true
  27. # Which form of comments to prefer in CSS.
  28. Comment:
  29. enabled: false
  30. # Reports @debug statements (which you probably left behind accidentally).
  31. DebugStatement:
  32. enabled: false
  33. # Rule sets should be ordered as follows:
  34. # - @extend declarations
  35. # - @include declarations without inner @content
  36. # - properties, @include declarations with inner @content
  37. # - nested rule sets.
  38. DeclarationOrder:
  39. enabled: false
  40. # `scss-lint:disable` control comments should be preceded by a comment
  41. # explaining why these linters are being disabled for this file.
  42. # See https://github.com/brigade/scss-lint#disabling-linters-via-source for
  43. # more information.
  44. DisableLinterReason:
  45. enabled: true
  46. # Reports when you define the same property twice in a single rule set.
  47. DuplicateProperty:
  48. enabled: false
  49. # Separate rule, function, and mixin declarations with empty lines.
  50. EmptyLineBetweenBlocks:
  51. enabled: true
  52. # Reports when you have an empty rule set.
  53. EmptyRule:
  54. enabled: true
  55. # Reports when you have an @extend directive.
  56. ExtendDirective:
  57. enabled: false
  58. # Files should always have a final newline. This results in better diffs
  59. # when adding lines to the file, since SCM systems such as git won't
  60. # think that you touched the last line.
  61. FinalNewline:
  62. enabled: false
  63. # HEX colors should use three-character values where possible.
  64. HexLength:
  65. enabled: false
  66. # HEX color values should use lower-case colors to differentiate between
  67. # letters and numbers, e.g. `#E3E3E3` vs. `#e3e3e3`.
  68. HexNotation:
  69. enabled: true
  70. # Avoid using ID selectors.
  71. IdSelector:
  72. enabled: false
  73. # The basenames of @imported SCSS partials should not begin with an
  74. # underscore and should not include the filename extension.
  75. ImportPath:
  76. enabled: false
  77. # Avoid using !important in properties. It is usually indicative of a
  78. # misunderstanding of CSS specificity and can lead to brittle code.
  79. ImportantRule:
  80. enabled: false
  81. # Indentation should always be done in increments of 2 spaces.
  82. Indentation:
  83. enabled: true
  84. width: 2
  85. # Don't write leading zeros for numeric values with a decimal point.
  86. LeadingZero:
  87. enabled: false
  88. # Reports when you define the same selector twice in a single sheet.
  89. MergeableSelector:
  90. enabled: false
  91. # Functions, mixins, variables, and placeholders should be declared
  92. # with all lowercase letters and hyphens instead of underscores.
  93. NameFormat:
  94. enabled: false
  95. # Avoid nesting selectors too deeply.
  96. NestingDepth:
  97. enabled: false
  98. # Always use placeholder selectors in @extend.
  99. PlaceholderInExtend:
  100. enabled: false
  101. # Sort properties in a strict order.
  102. PropertySortOrder:
  103. enabled: false
  104. # Reports when you use an unknown or disabled CSS property
  105. # (ignoring vendor-prefixed properties).
  106. PropertySpelling:
  107. enabled: false
  108. # Configure which units are allowed for property values.
  109. PropertyUnits:
  110. enabled: false
  111. # Pseudo-elements, like ::before, and ::first-letter, should be declared
  112. # with two colons. Pseudo-classes, like :hover and :first-child, should
  113. # be declared with one colon.
  114. PseudoElement:
  115. enabled: true
  116. # Avoid qualifying elements in selectors (also known as "tag-qualifying").
  117. QualifyingElement:
  118. enabled: false
  119. # Don't write selectors with a depth of applicability greater than 3.
  120. SelectorDepth:
  121. enabled: false
  122. # Selectors should always use hyphenated-lowercase, rather than camelCase or
  123. # snake_case.
  124. SelectorFormat:
  125. enabled: false
  126. convention: hyphenated_lowercase
  127. # Prefer the shortest shorthand form possible for properties that support it.
  128. Shorthand:
  129. enabled: true
  130. # Each property should have its own line, except in the special case of
  131. # single line rulesets.
  132. SingleLinePerProperty:
  133. enabled: true
  134. allow_single_line_rule_sets: true
  135. # Split selectors onto separate lines after each comma, and have each
  136. # individual selector occupy a single line.
  137. SingleLinePerSelector:
  138. enabled: true
  139. # Commas in lists should be followed by a space.
  140. SpaceAfterComma:
  141. enabled: false
  142. # Properties should be formatted with a single space separating the colon
  143. # from the property's value.
  144. SpaceAfterPropertyColon:
  145. enabled: true
  146. # Properties should be formatted with no space between the name and the
  147. # colon.
  148. SpaceAfterPropertyName:
  149. enabled: true
  150. # Variables should be formatted with a single space separating the colon
  151. # from the variable's value.
  152. SpaceAfterVariableColon:
  153. enabled: true
  154. # Variables should be formatted with no space between the name and the
  155. # colon.
  156. SpaceAfterVariableName:
  157. enabled: false
  158. # Operators should be formatted with a single space on both sides of an
  159. # infix operator.
  160. SpaceAroundOperator:
  161. enabled: true
  162. # Opening braces should be preceded by a single space.
  163. SpaceBeforeBrace:
  164. enabled: true
  165. # Parentheses should not be padded with spaces.
  166. SpaceBetweenParens:
  167. enabled: false
  168. # Enforces that string literals should be written with a consistent form
  169. # of quotes (single or double).
  170. StringQuotes:
  171. enabled: false
  172. # Property values, @extend, @include, and @import directives, and variable
  173. # declarations should always end with a semicolon.
  174. TrailingSemicolon:
  175. enabled: true
  176. # Reports lines containing trailing whitespace.
  177. TrailingWhitespace:
  178. enabled: true
  179. # Don't write trailing zeros for numeric values with a decimal point.
  180. TrailingZero:
  181. enabled: false
  182. # Don't use the `all` keyword to specify transition properties.
  183. TransitionAll:
  184. enabled: false
  185. # Numeric values should not contain unnecessary fractional portions.
  186. UnnecessaryMantissa:
  187. enabled: false
  188. # Do not use parent selector references (&) when they would otherwise
  189. # be unnecessary.
  190. UnnecessaryParentReference:
  191. enabled: false
  192. # URLs should be valid and not contain protocols or domain names.
  193. UrlFormat:
  194. enabled: true
  195. # URLs should always be enclosed within quotes.
  196. UrlQuotes:
  197. enabled: true
  198. # Properties, like color and font, are easier to read and maintain
  199. # when defined using variables rather than literals.
  200. VariableForProperty:
  201. enabled: false
  202. # Avoid vendor prefixes. Or rather: don't write them yourself.
  203. VendorPrefix:
  204. enabled: false
  205. # Omit length units on zero values, e.g. `0px` vs. `0`.
  206. ZeroUnit:
  207. enabled: true