Execute codeblocks inside of markdown
Project description
DarkMark
Runs codeblocks marked with the darkmark, and inserts the results.
DarkMark uses tree-sitter to identify codeblocks. Currently it only supports python codeblocks in markdown files and runs them with ipython. Handy for writing docs/blog posts so you can stay right in your markdown editor of choice and get the outputs in line. No need to jump into a whole other tool just to do live execution.
Installation
pip install darkmark
❯ darkmark --help
Usage: darkmark [OPTIONS] COMMAND [ARGS]...
run code blocks in markdown
╭─ Options ──────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --install-completion [bash|zsh|fish|powershell|pwsh] Install completion for the specified shell. │
│ [default: None] │
│ --show-completion [bash|zsh|fish|powershell|pwsh] Show completion for the specified shell, to copy │
│ it or customize the installation. │
│ [default: None] │
│ --help Show this message and exit. │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ─────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ run │
│ sexp │
│ tui │
│ watch │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Usage
Mark your codeblocks with the darkmark.
```python {.python .darkmark}
r = requests.get('https://waylonwalker.com')
r.status_code
```
Then run darkmark <file>.md
and darkmark will insert the results of the codeblock.
``` {.console .darkmark_output}
200
```
Automatic imports
Automatic imports are provided by pyflyby.
Supported Languages
Currently the only language supported is python.
- python
Example
Running darkmark watch <file.md>
updates the file on save.
License
darkmark
is distributed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.