ZAMM

Build Status

This is a literate programming code generation tool for the Yin and Yang crates.

It builds an intermediate code-generation binary from the provided Markdown file (yin.md by default) and runs the binary in the current directory.

Install

sh cargo install zamm

Note that on Windows, you will need to follow the instructions here to set up OpenSSL.

Usage

```text zamm 0.0.1 Amos Ng me@amos.ng Literate code generation for Yin and Yang.

USAGE: zamm

FLAGS: -h, --help Prints help information -V, --version Prints version information

SUBCOMMANDS: build Generate code from an input file clean Clean up autogenerated files help Prints this message or the help of the given subcommand(s) release Prepare repo for a Cargo release test Make sure the project will pass CI tests ```

You can look at the yin.md for both Yin and Yang for examples on this literate programming style.

To use this tool, simply navigate to the project directory and run

sh zamm build

The code will be generated inside the current directory.

Overriding the main input file

To add overrides to the main input file, create another README file named zamm_override.md. This can be useful for using a local version of Yin or Yang to build the other one, without having the local path committed to Git. The Cargo equivalent is here, although that requires changes to the same file and therefore cannot be Git-ignored quite as easily.