Skip to main content

gostpadi

Рисовалка блок-схем. Скармливаешь main.c — получаешь готовую схему: все линии под 90° и одной толщины, if и switch расходятся ветками, return уводит стрелку в «End». Рисовать руками не приходится.

схема из кода C

Работает и в обратную сторону: короткий текстовый файл .gvn — и та же схема без кода.

switch

Установка

Достаточно uv, ничего ставить не нужно:

curl -LsSf https://astral.sh/uv/install.sh | sh     # Linux / macOS

Схема из кода одной командой, без клонирования:

uv run https://raw.githubusercontent.com/sehaxe/gostpadi/main/gostpadi.py main.c

Классический вариант:

git clone https://github.com/sehaxe/gostpadi && cd gostpadi
pip install matplotlib
python gostpadi.py main.c

Как пользоваться

gostpadi main.c                 # -> main.png, вписано в А4
gostpadi main.c --show          # показать схему в терминале
gostpadi main.c -o scheme.svg   # векторный SVG для Word/LaTeX
gostpadi main.c --auto          # размер по схеме, без ужимания
gostpadi main.c --gvn           # сохранить текст схемы (можно править)

Понимает: printf/scanf (сами параллелограммы), присваивания, if/else, switch/case/default (кейсы висят на линии из нижнего угла ромба), return (ветка уходит в «End»). Объявления переменных выбрасываются. Циклов и else if пока нет — утилита скажет сама.

Хочешь управлять каждой строкой — пиши .gvn руками: строка = блок, ветки — отступ в 4 пробела. Примеры в examples/.

Опции

опция что делает
-o ФАЙЛ имя результата (.png или .svg)
--show нарисовать схему прямо в терминале
--auto канвас по размеру схемы, без ужимания
--gvn сохранить текст схемы
--scale=N масштаб
--font=N кегль (12)
--lw=N толщина всех линий (1.4)
--dpi=N плотность пикселей (200)
--template заготовка схемы

Проверка

uv run --with matplotlib python selftest.py

Прогоняет все вариации и сверяет геометрию с эталоном (tests/baseline.json).

Лицензия

MIT — LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gostpadi-1.0.0.tar.gz (197.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gostpadi-1.0.0-py3-none-any.whl (20.8 kB view details)

Uploaded Python 3

File details

Details for the file gostpadi-1.0.0.tar.gz.

File metadata

  • Download URL: gostpadi-1.0.0.tar.gz
  • Upload date:
  • Size: 197.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gostpadi-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2f531a4c5ed3c05809453afbfb3aaad4f7a25346b2888be9ef68a9fac41a5372
MD5 14b99f704409bad7dc0fc8a39936152e
BLAKE2b-256 ebe4ff4bd82a054d7aa1d78750185e2eb9ec7530a61f2a3731020f8dcc3193d5

See more details on using hashes here.

File details

Details for the file gostpadi-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: gostpadi-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 20.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gostpadi-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cfdf0aba4e5f03d2ddf8aba7a4e86e5e8570a1ab8d516228f21d29a40152c643
MD5 43de7a5770529e4f8b80976ad8d95a4f
BLAKE2b-256 433374dbf01da362ac53067b1448040d19f67c5dfed380d0f355f21d238d7d14

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.1

2 files

This release

1.0.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page