Skip to main content

Extract code blocks from markdown

Project description

exdown

Extract and test code blocks from Markdown.

PyPi Version Anaconda Cloud PyPI pyversions GitHub stars PyPi downloads

gh-actions codecov LGTM Code style: black

This is exdown, a tool for extracting code blocks from Markdown files and to create tests from them.

Install with

pip install exdown

and use as

import exdown

blocks = exdown.extract("README.md")

or, to create tests for pytest

import exdown

test_readme = exdown.pytests("README.md")

If you don't want all code blocks to be extracted, you can filter by syntax

exdown.pytests("README.md", syntax_filter="python")

or prefix your code block in the Markdown file with an exdown-skip comment

Lorem ipsum
<!--exdown-skip-->
```python
foo + bar  # not working
```
dolor sit amet.

All functions accept the encoding argument, too.

Broken-up code blocks can be merged into one with the exdown-cont prefix

Lorem ipsum
```
a = 1
```
dolor sit amet
<!--exdown-cont-->
```
# this would otherwise fail since `a` is not defined
a + 1
```

License

exdown is published under the MIT license.

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

exdown-0.8.9.zip (11.2 kB view hashes)

Uploaded Source

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