Как стать автором
Обновить

Автоматизируем проверку орфографии: как написать спелл-чекер для сайта с документацией: bash, Python, контейнеры и *nix

Уровень сложностиСредний
Время на прочтение29 мин
Количество просмотров1.6K
Всего голосов 18: ↑18 и ↓0+19
Комментарии4

Комментарии 4

Сразу найти вменяемую документацию к формату словаря не получалось, в этом не помог и Google

Описание aff есть в manpage для hunspell, причём достаточно подробное и с примерами.

Спасибо :) Как говорится, «слона-то я и не заметил».

Видимо, сработала привычка последних лет сразу идти искать документацию в интернетах, а не лезть в маны. А ведь когда-то я без интернетов собирал генту по распечатанной на рабочем принтере рукокниге и разбирался с ошибками путем чтения логов, размышлений и как раз-таки вкуривания манов… Видимо, старею.

Здравствуйте, спасибо за статью. Я пробежался по ней (внимательно читать и перечитывать буду еще и еще), но пока не понял одной вещи. После сборки в HTML вы безальтернативно проверяете два целых каталога — для русского и английского, то есть в вашей реализации не предусмотрена проверка только файлов из отдельного коммита/пулл-рекаеста, верно? Или я просто пропустил этот фрагмент?

Привет!

Да, все верно. Здесь всегда проверяются полные версии сайта, сгенерированные джекилом. В принципе, сайт не такой уж большой, чтобы это было проблемой, поэтому было выбрано именно такое решение.

Вытащить изменения из пул-реквеста и проверить только их в такой реализации не представляется возможным: в файлах PR'а мы будем видеть исходник, и определить, в каком месте сайта он будет отрендерен как минимум сложно, а как максимум практически невозможно без написания какого-то анализатора. Например, если изменения коснулись, скажем, какого инклуда, который где-то входит в насколько страниц. А у нас, если посмотреть исходники, есть места, где практически ВСЁ построено на множестве таких инклудов (для единообразия страниц самоучителя, например).

Но в целом эту проблему мы уже решаем. Для сайта Deckhouse описанные в статье вариант не подошел в силу огромности самого сайта и времени его генерации: каждый раз дергать полную сборку довольно больно :) Поэтому мы решили пойти как раз по пути проверки исходников, выдергивая только измененные файлы из пул-реквестов. Надеюсь, скоро опишем и новую версию, как закончим и потестим.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий