# BlogLiterately-diagrams: Include images in blog posts with inline diagrams code

[ bsd3, library, program, web ] [ Propose Tags ]

A plugin for BlogLiterately (http://hackage.haskell.org/package/BlogLiterately) which turns inline diagrams code into images. This library also provides an executable, BlogLiteratelyD, providing a standard instance of BlogLiterately extended with support for inline diagrams code. For most users it should suffice to simply use BlogLiteratelyD in place of BlogLiterately.

To use it, include code blocks with the dia or dia-def class (using pandoc's special extended Markdown syntax (http://johnmacfarlane.net/pandoc/demo/example9/pandocs-markdown.html), or BlogLiterately's extended syntax for tagged code blocks (http://byorgey.wordpress.com/blogliterately/)), like so:

    [dia-def]
-- This block produces no output but its
-- declarations will be in scope in all the
-- rest of the diagram blocks.

gSq = square 1 # fc green

NOTE: Square brackets below should be replaced
by curly braces.  Haddock chokes on curly
braces.

Here is a green square:

[.dia width='200']
dia = gSq


Green squares like gSq[.dia height='16']
and blue circles like circle 1 # fc blue[.dia height='16']
are extremely important.

Note that attributes like width and height can also be specified, but be sure to put the numbers in quotes or else they will not parse properly.

Running this through BlogLiteratelyD (after replacing square brackets with curly braces) should result in HTML that looks something like this:

In addition to simple diagrams, IO actions producing diagrams may also be used. In that case the IO action will simply be run, and the resulting diagram rendered. This can be useful, for example, when producing a diagram built from some external data or using randomness.

## Modules

[Index] [Quick Jump]