Skip to content

Commit ed47143

Browse files
add stylelint
1 parent a98c44f commit ed47143

File tree

9 files changed

+1171
-41
lines changed

9 files changed

+1171
-41
lines changed

.stylelintrc

Lines changed: 231 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,231 @@
1+
{
2+
"syntax": "scss",
3+
"rules": {
4+
"comment-empty-line-before": [ "always", {
5+
"except": ["first-nested"],
6+
"ignore": ["stylelint-commands", "after-comment"],
7+
"message": "Пустая строка перед комментарием"
8+
} ],
9+
"comment-whitespace-inside": [ "always", {
10+
"except": ["first-nested"],
11+
"message": "Требуются пробелы вначале и в конце комментария"
12+
} ],
13+
"rule-empty-line-before": [ "always", {
14+
"except": ["first-nested"],
15+
"ignore": ["after-comment"],
16+
"message": "Пустая строка перед правилом"
17+
} ],
18+
"color-hex-case": ["lower", {
19+
"message": "HEX цвета следует набирать строчными буквами"
20+
}],
21+
"color-named": ["never", {
22+
"message": "Цвета не следует указывать ключевыми словами"
23+
}],
24+
"color-no-invalid-hex": [true, {
25+
"message": "Правильные значения HEX цветов"
26+
}],
27+
"font-family-name-quotes": ["always-where-recommended", {
28+
"message": "Название шрифтов следует брать в кавычки"
29+
}],
30+
"font-weight-notation": ["numeric", {
31+
"message": "Плотность шрифта следует указывать цифровым значением"
32+
}],
33+
"function-calc-no-unspaced-operator": [true, {
34+
"message": "В функции calc() необходимы пробелы вокруг операторов"
35+
}],
36+
"function-comma-newline-after": ["never-multi-line", {
37+
"message": "Агрументы функций на одной строке"
38+
}],
39+
"function-comma-space-after": ["always", {
40+
"message": "Пробел после запятой в функциях"
41+
}],
42+
"function-linear-gradient-no-nonstandard-direction": [true, {
43+
"message": "Стандартный синтаксис градиентов"
44+
}],
45+
"number-leading-zero": ["always", {
46+
"message": "Необходимо явно указывать нуль перед точкой"
47+
}],
48+
"string-quotes": ["double", {
49+
"message": "Кавычки должны быть двойными"
50+
}],
51+
"length-zero-no-unit": [true, {
52+
"message": "Нуль требует указания единиц измерения"
53+
}],
54+
"unit-case": ["lower", {
55+
"message": "Единицы измерения следует указывать строчными буквами"
56+
}],
57+
"unit-no-unknown": [true, {
58+
"message": "Неизвестная единица измерения"
59+
}],
60+
"value-keyword-case": ["lower", {
61+
ignoreProperties: ["$font-family_sans", "$font-family_serif"],
62+
"message": "Значения свойств следует указывать строчными буквами"
63+
}],
64+
"value-list-comma-newline-after": ["never-multi-line", {
65+
"message": "Значения свойств на одной строке"
66+
}],
67+
"value-list-comma-space-after": ["always", {
68+
"message": "При перечислении значениий необходим пробел после запятой"
69+
}],
70+
"shorthand-property-no-redundant-values": [true, {
71+
"message": "Короткая запись значений для универсальных свойств"
72+
}],
73+
"property-case": ["lower", {
74+
"message": "Свойства следует набирать строчными буквами"
75+
}],
76+
"declaration-bang-space-after": ["never", {
77+
"message": "Без пробела после восклицательного знака"
78+
}],
79+
"declaration-bang-space-before": ["always", {
80+
"message": "Пробел перед восклицательным знаком"
81+
}],
82+
"declaration-colon-newline-after": ["always-multi-line", {
83+
"message": "Каждое значение свойства на новой строке"
84+
}],
85+
"declaration-colon-space-after": ["always-single-line", {
86+
"message": "Пробел после двоеточия"
87+
}],
88+
"declaration-colon-space-before": ["never", {
89+
"message": "Без пробела перед двоеточием"
90+
}],
91+
"declaration-no-important": [true, {
92+
"message": "Не следует использовать декларацию !important"
93+
}],
94+
"declaration-block-no-duplicate-properties": [true, {
95+
"message": "Правила не должны дублироваться"
96+
}],
97+
"declaration-block-no-shorthand-property-overrides": [true, {
98+
"message": "Это свойство неочивидно переписывает другое для этого селектора"
99+
}],
100+
"declaration-block-semicolon-newline-after": ["always", {
101+
"message": "Перенос строки после точки с запятой"
102+
}],
103+
"declaration-block-single-line-max-declarations": [1, {
104+
"message": "Одно правило на строку"
105+
}],
106+
"declaration-block-trailing-semicolon": ["always", {
107+
"message": "Точка запятой после каждого правила"
108+
}],
109+
"block-closing-brace-newline-after": ["always", {
110+
ignoreAtRules: ["if", "else"],
111+
"message": "Перенос строки после закрывающей фигурной скобки"
112+
}],
113+
"block-closing-brace-newline-before": ["always", {
114+
"message": "Перенос строки перед закрывающей фигурной скобки"
115+
}],
116+
"block-opening-brace-newline-after": ["always", {
117+
"message": "Перенос строки после открывающей фигурной скобки"
118+
}],
119+
"block-opening-brace-space-before": ["always", {
120+
"message": "Пробел перед открывающей фигурной скобкой"
121+
}],
122+
"selector-attribute-brackets-space-inside": ["never", {
123+
"message": "Без пробелов в селекторе атрибута"
124+
}],
125+
"selector-attribute-operator-space-after": ["never", {
126+
"message": "Без пробелов в селекторе атрибута"
127+
}],
128+
"selector-attribute-operator-space-before": ["never", {
129+
"message": "Без пробелов в селекторе атрибута"
130+
}],
131+
"selector-combinator-space-after": ["always", {
132+
"message": "Пробел перед комбинирующим селектором"
133+
}],
134+
"selector-combinator-space-before": ["always", {
135+
"message": "Пробел после комбинирующего селектора"
136+
}],
137+
"selector-max-compound-selectors": [4, {
138+
"message": "Максимальная сложность составных селекторов - 4"
139+
}],
140+
"selector-pseudo-class-case": ["lower", {
141+
"message": "Псевдоклассы следует набирать строчными буквами"
142+
}],
143+
"selector-pseudo-class-no-unknown": [true, {
144+
"message": "Неизвестный псевдокласс"
145+
}],
146+
"selector-pseudo-class-parentheses-space-inside": ["never", {
147+
"message": "Без пробелов внутри скобок псевдокласс"
148+
}],
149+
"selector-pseudo-element-case": ["lower", {
150+
"message": "Псевдоэлементы следует набирать строчными буквами"
151+
}],
152+
"selector-pseudo-element-no-unknown": [true, {
153+
"message": "Неизвестный псевдоэлемент"
154+
}],
155+
"selector-type-case": ["lower", {
156+
"message": "Селекторы следует набирать строчными буквами"
157+
}],
158+
"selector-type-no-unknown": [true, {
159+
"message": "Неизвестный селектора"
160+
}],
161+
"selector-max-empty-lines": [0, {
162+
"message": "Без пустых строк в селекторах"
163+
}],
164+
"selector-list-comma-newline-after": ["always", {
165+
"message": "Перенос строки после запятой в перечислении селекторов"
166+
}],
167+
"media-feature-colon-space-after": ["always", {
168+
"message": "Пробел после двоеточия в медиа-запросах"
169+
}],
170+
"media-feature-colon-space-before": ["never", {
171+
"message": "Пробел после двоеточия в медиа-запросах"
172+
}],
173+
"at-rule-empty-line-before": ["always", {
174+
"except": ["first-nested"],
175+
"ignore": ["after-comment"],
176+
ignoreAtRules: ["import", 'include', 'else'],
177+
"message": "Пустая строка перед @-директивой"
178+
}],
179+
"at-rule-name-case": ["lower", {
180+
"message": "@-директивы следует набирать строчными буквами"
181+
}],
182+
"at-rule-name-space-after": ["always", {
183+
"message": "Пробел после @-директивы"
184+
}],
185+
"at-rule-semicolon-newline-after": ["always", {
186+
"message": "Перенос строки после @-директивы"
187+
}],
188+
"comment-word-blacklist": [ "/(Хуй|хуй|Хуе|хуе|Хуё|хуё|Бляд|бляд|нах|пидор)/", {
189+
"message": "Культура - это самое важное в том чем мы занимаемся!"
190+
}],
191+
"comment-no-empty": [ true, {
192+
"message": "Комментарий не должен быть пустым"
193+
}],
194+
"no-invalid-double-slash-comments": [ true, {
195+
"message": "Комментарий не должен указываться через двойной слэш"
196+
}],
197+
"block-no-empty": [ true, {
198+
"message": "Блок не должен быть пустым"
199+
}],
200+
"no-descending-specificity": [ true, {
201+
"message": "Не стоит переписывать селекторы с меньшей специфичностью селекторами с большей"
202+
}],
203+
"no-duplicate-at-import-rules": [ true, {
204+
"message": "Импорты не должны дублироваться"
205+
}],
206+
"indentation": [2, {
207+
"message": "Отступ в 2 пробела"
208+
}],
209+
"max-empty-lines": [2, {
210+
"message": "Максимум 2 пустые строки"
211+
}],
212+
"max-nesting-depth": [4, {
213+
"message": "Максимальная глубина вложенности - 4"
214+
}],
215+
"no-duplicate-selectors": [true, {
216+
"message": "Селекторы не должны дублироваться"
217+
}],
218+
"no-eol-whitespace": [true, {
219+
"message": "Без пробелов на конце строки"
220+
}],
221+
"no-empty-source": [true, {
222+
"message": "Не должно быть пустых мест"
223+
}],
224+
"no-extra-semicolons": [true, {
225+
"message": "Только одна точка с запятой в конце строки"
226+
}],
227+
"linebreaks": ["unix", {
228+
"message": "Конец строки должен быть LF (\n)"
229+
}]
230+
}
231+
}

0 commit comments

Comments
 (0)