0.1.4 |
|
---|---|
0.1.3 |
|
0.1.2 |
|
0.1.1 |
|
0.1.0 |
|
#58 in #tangle
13KB
281 lines
md-tangle
A command line tool to tangle code blocks in markdown file to source code file.
Getting Start
To build the program, nightly rust toolchain is needed.
rustup
is the tool to help programmers install rust toolchains.
- One can get rustup from :: https://rustup.rs
Then do:
rustup install nightly
cargo +nightly install md-tangle
usage
USAGE:
md-tangle [FLAGS] [PATH]...
FLAGS:
-r, --recursive recursively traverse <DIR>
-h, --help Prints help information
-V, --version Prints version information
ARGS:
<PATH>... <PATH> can be <FILE> or <DIR>
ignore non unicode <PATH>
ignore non `.md` files
ignore `.md` files without tangle property
Example
In file engine.md
- Add tangle property-line
---
tangle: lib.rs
---
- The following code block will be tangled into
lib.rs
``` rust
fn tangle (string: &str) -> Result {
let mut result = String::new ();
let mut lines = string.lines ();
while let Some (line) = lines.next () {
if block_begin_line_p (line) {
tangle_collect (&mut result, &mut lines)?;
}
}
Ok (result)
}
```
- For a complete example,
see this directory
where
engine.md
is tangled tolib.rs
Related Project
- org-tangle -- same tool for org file.
Dependencies
~1.5MB
~25K SLoC