normik
nk — линтер оформления отчёта о НИР по ГОСТ 7.32-2017 для исходников LaTeX.
Документация: https://trum-ok.github.io/normik/
Принимает .tex и выдаёт список нарушений с указанием пункта стандарта, файла
и строки.
uv run nk check report.tex
report.tex
1:17 warning G732-6.5.1-reference-word
Нарушение: В ссылке на иллюстрацию использовано сокращение «рис.».
Требуется: При ссылке пишут слово «рисунок» полностью и его номер.
Исправить: Заменить «рис.» на «рисунок» в нужном падеже.
> 1 | Как показано на рис.~\ref{fig:speed}, зависимость линейная.
2 |
3 | \begin{figure}[h]
5:5 error G732-6.5.7-caption-dot
Нарушение: Наименование рисунка заканчивается точкой.
Требуется: Наименование рисунка приводят с прописной буквы без точки в конце.
Исправить: \caption{Зависимость скорости от нагрузки}
3 | \begin{figure}[h]
4 | \includegraphics{plot.png}
> 5 | \caption{Зависимость скорости от нагрузки.}
6 | \label{fig:speed}
7 | \end{figure}
Итого: 1 error, 1 warning, 0 info.
Машинный вывод: --format json, вывод для агента: --format agent
Установка
uv sync
Примеры запуска
Проверить весь каталог с исходниками:
uv run nk check chapters
Получить вывод, который можно скопировать в Claude Code без пояснений:
uv run nk check chapters --format agent
Проверить по профилю кафедры, показывая только ошибки:
uv run nk check report.tex --profile profiles/example-university.toml --severity error
Починить то, что чинится механически — сначала посмотреть, потом применить:
uv run nk check chapters --diff
uv run nk check chapters --fix
Включить линтер на готовой работе: зафиксировать текущие нарушения снимком и дальше видеть только новые:
uv run nk check chapters --write-baseline .nk-baseline.json
uv run nk check chapters --baseline .nk-baseline.json
Команды
| Команда | Назначение |
|---|---|
nk check PATH... |
проверить исходники |
nk rules list |
перечень правил |
nk rules show RULE_ID |
подробности по правилу |
nk rules docs |
пересобрать страницы правил в docs/rules/ |
nk profile show |
итоговый набор правил после применения профиля |
Ключи check, коды возврата и форматы вывода — на странице
Использование.
Документация
| Страница | О чём |
|---|---|
| Использование | команды, ключи, форматы вывода, автоисправление, подавления, снимок |
| Профили | подстройка набора правил под кафедру |
| Правила | страница на каждое правило: почему, пример, настройка |
| Интеграции | CI, хук, передача вывода агенту |
| Как добавить правило | руководство для соавторов |
Исходники документации — в каталоге
docs/; каталог
docs/rules/
генерируется командой uv run nk rules docs и руками не редактируется.
Разработка
make check # ruff, ty, pytest
make docs # перегенерировать правила и собрать сайт
make docs-serve # локальный просмотр на http://127.0.0.1:8000
Metadata
Release files for normik 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| normik-0.1.0.tar.gz | 169.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| normik-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 303.7 kB
Release files / normik-0.1.0.tar.gz
| Download URL | normik-0.1.0.tar.gz |
|---|---|
| Size | 169.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2ae66380acfcf2e0732318d8032c2282faebb27f009126be9ab6a2835b6bb092
|
|
BLAKE2b-256 checksum How to use checksums |
d6dbf19b383e693e9f265b797eae41794dc01e30aca3b161b4da69e3ef70a2a2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.
Transparency logRelease files / normik-0.1.0-py3-none-any.whl
| Download URL | normik-0.1.0-py3-none-any.whl |
|---|---|
| Size | 134.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2095d908c20d4ac5250b09d190155bccef50b56448599e9c6c8b2784bc34bbe2
|
|
BLAKE2b-256 checksum How to use checksums |
1621778f81d8da83e76f193ca0b6e9a37a59d80355c3cb15a192ce1f2468f4ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.
Transparency log