Линтеры
Lint — первоначально — статический анализатор для языка программирования Си, который сообщал о подозрительных или непереносимых на другие платформы выражениях. В начале XXI века термин стал нарицательным для всех программ такого типа. Как инструмент программа лишь анализирует статический исходный код, не скомпилированный в отличие от отладчиков. wiki
Editorconfig
Конфиг файл: .editorconfig
Настраивает вашу IDE, задает размер tab-ов, тип перевода строк и прочее.
Настройка PhpStorm
Как правило, плагин сразу же включен:
ESLint
Конфиг файл: eslint.config.mjs
Команда проверки: npm run lint:eslint
Команда для исправления ошибок: npx eslint . --fix
Настройка PhpStorm
Настройки:
Run for files: {**/*,*}.{js,ts,jsx,tsx,html,vue}
Stylelint
Конфиг файл: stylelint.config.mjs
Команда проверки: npm run lint:stylelint
Настройка PhpStorm
Настройки:
Run for files: {**/*,*}.{scss,css}
Настройка Vscode
Установите следующие плагины Eslint, Stylelint
Откройте файл settings.json
и добавьте следующие строки:
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[njk]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"editor.codeActionsOnSave": {
"source.fixAll.stylelint": "explicit",
"source.fixAll.eslint": "explicit"
},
"stylelint.validate": [
"css",
"postcss",
"scss"
],
"emmet.includeLanguages": {
"njk": "html",
"nunjucks": "html"
},
"files.associations": {
"*.html": "njk"
},
"editor.formatOnSave": true,
"eslint.validate": [
"typescript", "html", "vue", "markdown", "javascript", "njk"
],
"eslint.run": "onSave",
Линтер ругается, как дальше жить?
- Почитать про правило, на которое он ругается. Возможно это все по-делу
- Если вы понимаете почему он ругается, но все равно хочешь так написать, то:
- Подумай, можно ли это написать по-другому
- Если нет, то используй комментарии, чтобы заблокировать проверку линтера (но только для конкретного правила, и для конкретной строки)
- Если причины почему так написано не очевидны, добавь поясняющий комментарий
- Если не понятно почему ругается, похоже на баг и вообще, подойди и к старшему товарищу за помощью (возможно ты прав, и что-то где-то кривовато сконфигурировано)
- Если при сохранении файла линты фиксят файл, но проверка все равно показывает, что есть ошибки, то возможно надо выключить Prettier