Crates.io | mdbook-svgbob2 |
lib.rs | mdbook-svgbob2 |
version | 0.3.0 |
source | src |
created_at | 2021-09-28 08:28:45.243158 |
updated_at | 2022-10-03 19:41:52.715062 |
description | Alternative mdbook preprocessor for svgbob. |
homepage | |
repository | https://github.com/Treeniks/mdbook-svgbob2 |
max_upload_size | |
id | 457360 |
size | 82,318 |
A preprocessor for mdbook to convert
svgbob
codeblocks into nice SVG images using
svgbob.
This crate serves as an alternative to mdbook-svgbob which was a big inspiration while writing the code for this crate.
The reason why I created this was that the original uses outdated dependencies and seems to break tables some reason, and it requires the source to have Unix line endings as it breaks with Windows line endings. I also wanted to learn how to write mdbook preprocessors and had a usecase for an updated svgbob integration.
Install with cargo:
cargo install mdbook-svgbob2
Or to install from the git mirror:
cargo install --git https://github.com/matthiasbeyer/mdbook-svgbob2.git
Add this to your cargo.toml:
[preprocessor.svgbob2]
Optionally add any arguments for the svgbob settings:
[preprocessor.svgbob2]
font_size = "14"
font_family = "monospace"
fill_color = "black"
background = "transparent"
stroke_color = "var(--fg)" # variable from the mdbook css files
stroke_width = "2.0"
scale = "8.0"
enhance_circuitries = "true"
include_backdrop = "true"
include_styles = "true"
include_defs = "true"
merge_line_with_shapes = "false"
# this is a non-svgbob custom setting
font_color = "var(--fg)"
The above are the default settings. Most of them are the svgbob defaults, with
the exception of background
and stroke_color
which have been changed to
better fit mdbook.
svgbob currently does not support changing the font color (although there are feature requests for this to be added), and because a pure black font color doesn't work well with different mdbook themes, the ability to change the font color was added.
Simply include svgbob
codeblocks in some chapter:
```svgbob
.---.
/-o-/--
.-/ / /->
( * \/
'-. \
\ /
'
```
and it should display as a nicely rendered svg when rendered with mdbook.