5 unstable releases
Uses old Rust 2015
0.4.1 | Oct 3, 2018 |
---|---|
0.4.0 | Jan 29, 2018 |
0.3.0 | Mar 20, 2017 |
0.2.1 | Mar 20, 2017 |
0.2.0 | Mar 18, 2017 |
#485 in #markdown
26 downloads per month
Used in waltz_cli
12KB
264 lines
Waltz
Extract code files from Markdown files.
Write guides in Markdown with code blocks that belong in several files, and let waltz extract the code for you so you can build/run/test it easily.
DANGER: Will eat your laundry
This is highly experimental. Has not been tested with real-world code.
Install binary
There are pre-compiled binaries for newer releases that you can find on the releases page.
Alternatively, install it like this:
curl -LSfs https://japaric.github.io/trust/install.sh | sh -s -- --git killercup/waltz
Install manually
Make sure you have Rust and Cargo installed.
$ cargo install --git https://github.com/killercup/waltz
Alternatively, clone this repository and run cargo install --path waltz_cli
.
Usage
Markdown syntax
Write regular Markdown, but add an additional file flag to your code blocks, so they have lang,file=path
after the triple back ticks. (This is the relative path of the file this code should end up in).
Example:
# Getting started
First of all, create a simple `Cargo.toml` file:
```toml,file=Cargo.toml
[package]
authors = ["Pascal Hertleif <killercup@gmail.com>"]
name = "foo"
version = "0.1.0"
```
As Rust library
Add waltz = "0.4"
to your dependencies and use it!
CLI
$ cargo install waltz_cli
$ waltz
[...]
Usage: waltz <input file> [<target directory>]
[...]
$ waltz docs/guides/getting-started.md
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~3–4.5MB
~73K SLoC