Skip to main content

svgbob extension for Python Markdown

Project description

logo

markdown-svgbob

This is an extension for Python Markdown which renders diagrams using svgbob.

You can try it out using the Svgbob Editor or the AsciiGrid Editor.

Project/Repo:

MIT License Supported Python Versions CalVer v202104.1017 PyPI Version PyPI Downloads

Code Quality/CI:

GitHub CI Status GitLab CI Status Type Checked with mypy Code Coverage Code Style: sjfmt

Name role since until
Manuel Barkhau (mbarkhau@gmail.com) author/maintainer 2019-04 -

Install

$ pip install markdown-svgbob

This package includes the following binaries:

  • svgbob_0.4.1_x86_64-Darwin
  • svgbob_0.4.1_x86_64-Linux
  • svgbob_0.4.1_x86_64-Windows

If you are on another platform, or want to use a more recent version of svgbob_cli, you will need to install rust and then svgbob via cargo.

$ curl https://sh.rustup.rs -sSf | sh   # see https://rustup.rs/
$ cargo install svgbob_cli

This extension will always use the installed version of svgbob if it is available.

Usage

In your markdown text you can define the block:

```bob
         .---.
    /-o-/--
 .-/ / /->
( *  \/
 '-.  \
    \ /
     '
```

The info string bob is chosen to match spongedown.

Development/Testing

$ git clone https://gitlab.com/mbarkhau/markdown-svgbob
$ cd markdown-svgbob
$ make install
$ make lint mypy test

MkDocs Integration

In your mkdocs.yml add this to markdown_extensions.

markdown_extensions:
  - markdown_svgbob:
      tag_type: inline_svg
      bg_color: white
      fg_color: black
      min_char_width: 80

Valid options for tag_type are inline_svg (the default), img_utf8_svg and img_base64_svg.

The option min_char_width allows you to create diagrams of a uniform scale.

Changelog for https://gitlab.com/mbarkhau/markdown-svgbob

v202104.1016

  • Fix: Close file descriptiors of Popen
  • Add support for blocks with extra backticks

v202103.1015

v202006.0015

  • Fix: bg_color not updated in some cases

v202001.0013-beta

  • Fix #2: Ignore trailing whitespace after closing fence.

v202001.0012-beta

  • Add: min_char_width option. Allows diagrams in a document to have a uniform scale.

v202001.0011-beta

  • Fix: Bad image substitution when markdown has multiple diagrams

v202001.0009-beta

  • Fix: Bad parsing of fences

v201907.0008-beta

  • Fix: use PEP 508 environment marker to not always install the typing package. Fixes gitlab#1

v201905.0007-beta

  • Add: bg_color and fg_color options

v201905.0006-beta

  • Fix: better error reporting
  • Fix: cleanup temp dir

v201904.0004-beta

  • Initial release

Project details


Download files

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

Source Distribution

markdown-svgbob-202104.1017.tar.gz (2.9 MB view details)

Uploaded Source

Built Distribution

markdown_svgbob-202104.1017-py2.py3-none-any.whl (4.4 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file markdown-svgbob-202104.1017.tar.gz.

File metadata

  • Download URL: markdown-svgbob-202104.1017.tar.gz
  • Upload date:
  • Size: 2.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/54.1.2 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for markdown-svgbob-202104.1017.tar.gz
Algorithm Hash digest
SHA256 1ee360464804fd44d82a0615249f8888d0d75af2ccad3bf494caaacf5fe5ce5e
MD5 8cbd0f4c3bac3cc0db312dc2e38308d5
BLAKE2b-256 388604cdf63b0010e1ca736fdfb85adb19a02edd3c12d972b8463e412e18099b

See more details on using hashes here.

File details

Details for the file markdown_svgbob-202104.1017-py2.py3-none-any.whl.

File metadata

  • Download URL: markdown_svgbob-202104.1017-py2.py3-none-any.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/54.1.2 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for markdown_svgbob-202104.1017-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f78daf47d69077dec2832bac67510e3e71e5a4cc70bd68f3c654795845f72d62
MD5 d9fb5b9eb7e906a092aac636497b0a79
BLAKE2b-256 bc7d720cfeda9e896972fb09b85020675ea2b3dc0546e865d20872e28ed6e39d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page