-
Notifications
You must be signed in to change notification settings - Fork 17
Добавляет линтер для маркдауна #94
base: master
Are you sure you want to change the base?
Conversation
Спасибо за пулреквест :) Надо призвать людей и попросить разобраться |
package.json
Outdated
@@ -10,10 +10,12 @@ | |||
"lint": "npm run lint:eslint && npm run prettier", | |||
"lint:eslint": "eslint --ext .js,jsx .", | |||
"lint:fix": "npm run lint:eslint -- --fix", | |||
"lint-md": "remark . ", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Предлагаю другой нейминг:
lint
линтит всё: и JS, и MDlint:eslint
линтит JSlint:fix-js
фиксит JSlint:remark
линтит MDlint:fix-md
фиксит MD
Так более единообразно и понятно, что происходит.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А ещё глаз зацепился за концевой пробел в "remark . "
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Новая идея, так ещё понятнее:
lint
линтит всё: и JS, и MDlint:eslint
линтит JSlint:remark
линтит MDfix:eslint
фиксит JSfix:remark
фиксит MD
Чтобы сразу было понятно, где линт, а где фикс.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Хороший нейминг, я бы добавил только
fix
фиксит все: и JS, и MD
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Понятно, зачем линтить всё — это просто справочная информация. Но вот фиксить всё я бы не стал, это всё-таки перезаписывает файлы и лучше сделать по частям.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Согласен, это операция с побочными эффектами, лучше дать максимум ручного контроля.
@b0gok А что именно не работает при фиксе? Если я запускаю на единичный файл
получается
И ещё если я в настройках задаю для болда |
FYI: хотелось бы для болда |
Для курсива уже стоит |
Учитывая, что |
@pepelsbey |
В общем мне кажется у них чето неработает. Они сами в
На деле если поменять strong на |
Я решил, что он не работает совсем как раз из-за шапки, потому что в одной из итераций он заменял С настройкой strong я ошибся, там будут два знака |
Closes #61
Сделано
Для линтинга маркдауна добавлен пакет remark-lint, который использует под капотом remark. Для автоматического исправления используется remark-stringify.
Конфигурация для
remark-lint
находится в файле .remarkrc.js.Раздел
plugins
является аналогом разделаrules
вeslint
Для автоматического исправления части ошибок используется команда
remark . -o
В результате которой запускается
remark-stringify
Подробнее
Сейчас добавлены 2 набора правил:
Для понимания что конкретно там за правила используются они расписаны в .remarkrc.js.
Проблемы
lint-md:fix
не учитываются настройки из .remarkrc.js дляremark-stringify
Дополнительно
Можно исправлять js внутри маркдауна с помощью eslint-plugin-markdown