#mdbook #preprocessor #add #mermaid #data #wavedrom #mdbook-mermaid

bin+lib mdbook-wavedrom

mdbook preprocessor to add mermaid support

1 unstable release

0.10.0 Feb 15, 2022

#18 in #mermaid

27 downloads per month

MPL-2.0 license

110KB
449 lines

mdbook-wavedrom

A preprocessor for mdbook to add wavedrom support. This is based diretly on mdbook-mermaid, and is basically just a search/replace.

It turns this:

```wavedrom
{signal: [
  {name: 'clk', wave: 'p.....|...'},
  {name: 'dat', wave: 'x.345x|=.x', data: ['head', 'body', 'tail', 'data']},
  {name: 'req', wave: '0.1..0|1.0'},
  {},
  {name: 'ack', wave: '1.....|01.'}
]}
```

into this:

Simple Graph

in your book. (Graph provided by wavedrom Live Editor

Installation

If you want to use only this preprocessor, install the tool:

cargo install mdbook-wavedrom

Then let mdbook-wavedrom add the required files and configuration:

mdbook-mermaid install path/to/your/book

This will add the following configuration to your book.toml:

[preprocessor.mermaid]
command = "mdbook-wavedrom"

[output.html]
additional-js = ["wavedrom.min.js", "wavedrom-init.js"]

It will skip any unnecessary changes and detect if mdbook-mermaid was already configured.

Additionally it copies the files mermaid.min.js and mermaid-init.js into your book's directory. You find these files in the src/bin/assets directory. You can modify mermaid-init.js to configure Mermaid, see the Mermaid documentation for all options.

Finally, build your book:

mdbook path/to/book

License

MPL. See LICENSE.
Copyright (c) 2018-2021 Jan-Erik Rediger janerik@fnordig.de

Mermaid is MIT licensed. The bundled assets (mermaid.min.js) are MIT licensed.

Dependencies

~15–27MB
~407K SLoC