textlint
Решила таки поиграться. https://textlint.github.io/ и https://github.com/textlint/textlint. Написан на javascript, ставится через npm. Как и proselint, годится для использования с flycheck в emacs. Можно писать свои проверки и плагины. Но вообще их немного, да и я писать пока не пробовала.
https://textlint.github.io/docs/getting-started.html
Живет и работает внутри конкретного проекта. Пока это у меня заметки и сад.
npm init --yes npm install textlint npm install textlint-rule-no-todo
В .gitignore добавила node_modules/
, а вот package.json
и package-lock.json
коммитятся. Вроде, так норм по опыту 11ty.
npx textlint --init
command create .textlintrc.json file from installed rules.
npx textlint --init
Но вообще, можно и вручную.
Положила в ~/bin/
, чтоб textlint запускался и получал аргументы от flycheck.
#!/bin/bash npx textlint $@
Мейби тут лучше $*
(параметры одной строкой вместо массива) вместо $@
, но пока работает как есть.
Добавила в конфиг, чтобы после vale срабатывал textlint. (https://www.flycheck.org/en/latest/user/syntax-checkers.html#configuring-checker-chains)
(flycheck-add-next-checker 'vale 'textlint)
Проверяшка на todo, в смысле, текст, на который должно реагировать правило. Срабатывает, ага.
TODO: проверить
[ ]
TODO
Про конфигурирование textlint
Severity config of rules
severity : "<warning|error>" - Default: "error"
{ "rules": { "no-todo": { "severity" : "warning" } } }
It means that
- enable "no-todo" rule
- found thing match the rule and show warning message(exit status is 0)
ссылки.
- https://github.com/textlint/textlint
- Кажется, нерабочий плагинчик https://github.com/kijimaD/textlint-plugin-org – поддержка org. Хз, в чём выражается. В ссылки из ридми техтлинта не вписан.
чтоб проверяшка согласилась хоть как-то проверять org, указала org как одно из расширений для markdown в конфиге:
"plugins": { "@textlint/markdown": { "extensions": [".org", "md"] } },
- https://github.com/textlint/textlint#supported-file-formats – здесь, собстна, немногочисленные плагинчики по форматам.