vale
Давайте перейдем к чему-нибудь поинтереснее. Представим, что в вашей дизайн-систему уже есть редполитика и в ней вы раскрываете тему типографирования текстов:
- вы или Вы
- е или ё
- наращивание числительных
- какие-то запрещенные слова
- тире, минус и дефис
- неразрывный пробел
- тонкий пробел
- знак ₽
- телефонный номер
- кавычки
- написание дат и прочее-прочее
Встает вопрос контролирования описанных правил. И тут на помощь приходит линтер vale. Это открытый, бесплатный инструмент командной строки для проверки стиля и качества текстов, исходного кода и документации. Он позволяет применять собственные или готовые редакторские гайды к любым текстам, чтобы поддерживать единый стиль написания в команде или проекте.
Для начала давайте придумаем какое-нибудь правило для редполитки, например, символы валют (₽, $, €, ¥) должны писаться через неразрывный пробел от числа.Иностранные примеры использования Vale
Установим линтер и настроим проверку правила, а для этого напишем промт:
Установи vale: https://vale.sh/docs/install.
Напиши первое правило для линтера: символы валют ₽, $, €, ¥ должны писаться через неразрывный пробел от числа. Уровень правила = error.
Проверять будем только файлы .md.
Запускать будем аналогично другим линтерам, поэтому добавь настройку в lint-staged.
Не добавляй инструкцию по использованию.
Реализовывать будем в рамках созданной ранее задачи:
Агент будет устанавливать vale через пакетный менеджер brew. Поэтому он сначала установит его, а затем продолжит решение задачи, но в итоге справится с ней. Он создаст файл конфигурации .vale.ini:
Добавит зависимость в package.json:
И создаст файл для проверки нашего правила:
Проверим работу линтера. Для этого в файл intro.md последней строкой добавим ошибочное написание валют:
Попробуйте закоммитить изменения, выполнив команды:
git add .
git commit -m "test vale"
Система запустит проверку и линтер vale упадет с ошибкой:
Давайте немного разберемся, что тут происходит.
Вся работа линтера строится вокруг таких вот правил. Vale располагает гибкой настройкой областей применения, например, можно применять правило только для заголовков, списков или параграфов. Можно подключать чужие правила или создавать свои. Можно использовать формулы и переменные. Такие правила называются стилями и хранятся в папке styles. Больше про настройку читайте в официальной документации.
Теперь исправьте ошибки и повторите коммит.
Супер! В файле intro.md нет ошибок, а все изменения закоммичены: