Introduction
You can create graphs in this wiki using in-line dot code. This uses the dot.py parser extenstion to MoinMoin.
To write a graph in-line, you need to use a code block with a specified parser (see HelpOnParsers). For example, the sequence (minus the extra spaces in the code block opening and closing):
{ { {#!dot digraph porting_map { size="6,6"; compound=true; node [shape=box]; subgraph cluster_vesta_umb { label = "vesta_umb"; style=filled; color=lightgrey; node [style=filled,color=white]; subgraph cluster_basics_umb { label = "basics_umb"; style=filled; color=turquoise; node [style=filled,color=white]; basics -> generics; basics -> os; basics [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/basics/basics'] generics [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/basics/generics'] os [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/basics/os'] } basics -> config [ltail=cluster_basics_umb]; basics -> log [ltail=cluster_basics_umb]; config -> srpc; srpc -> fp; log -> fp; fp -> repos; repos -> repos_ui; repos -> cache; repos -> run_tool; repos_ui -> vimports; repos_ui -> repltools; config [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/config'] log [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/log'] srpc [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/srpc'] fp [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/fp'] repos [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/repos'] repos_ui [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/repos_ui'] run_tool [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/run_tool'] cache [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/cache'] vimports [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/vimports'] repltools [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/repltools'] } repos_ui -> eval; cache -> eval; run_tool -> eval; cache -> weeder; repos -> perftools; eval [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/eval'] weeder [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/weeder'] perftools [URL='http://pub.vestasys.org/cgi-bin/vestaweb?path=/vesta/vestasys.org/vesta/perftools'] } } } }
Would be rendered as:
dot syntax
For the full documentaiton on the dot syntax, see:
From the documentation in dot.py
Plain Dot features:
{ { {#!dot digraph G { node [style=filled, fillcolor=white] a -> b -> c -> d -> e -> a // a comment a [URL='http://some.where/a'] // link to an external URL b [URL='MoinMoinLink'] // link to a wiki absolute page c [URL='/Subpage'] // link to a wiki subpage d [URL='#anchor'] // link to an anchor in current page e [fillcolor=blue] } } } }
Extra MoinMoin-ish features:
{ { {#!dot OPTIONS digraph G { node [style=filled, fillcolor=white] a -> b -> c -> d -> e -> a [[Include(MoinMoinPage)]] // include a whole wiki page content [[Include(MoinMoinPage,name)]] // same, but just a named dot section [[Include(,name)]] // include named dot sect of current page [[Set(varname,'value')]] // assign a value to a variable [[Get(varname)]] // expand a variable } } } }
Options:
- name=IDENTIFIER
- name this dot section; used in conjunction with Include.
- show=0|1
- allow to hide a dot section; useful to define hidden named section used as 'libraries' to be included.
- debug=0|1
- when not 0,preceed the image by the expanded dot source.
- help=0|1|2
- when not 0, display 1:short or 2:full help in the page.
And the result will be an attached PNG, displayed at this point in the document. The AttachFile action must therefore be enabled.
If some node in the input contains a URL label, the processor will generate a user-side image map.
Here are some external examples of use of this processor (from the people who created it):
Available Fonts
From msttcorefonts:
- Andale Mono
- Arial Black
- Arial
- Comic Sans MS
- Courier New
- Georgia
- Impact
- Times New Roman
- Trebuchet
- Verdana
From gsfonts:
AvantGarde-Demi
AvantGarde-BookOblique
AvantGarde-DemiOblique
- Bookman-Light
- Bookman-Demi
Bookman-LightItalic
Bookman-DemiItalic
NewCenturySchlbk-Roman
NewCenturySchlbk-Bold
NewCenturySchlbk-Italic
NewCenturySchlbk-BoldItalic
ZapfDingbats
- Helvetica
- Helvetica-Bold
- Helvetica-Oblique
Helvetica-BoldOblique
- Helvetica-Narrow
- Helvetica-Narrow-Bold
- Helvetica-Narrow-Oblique
Helvetica-Narrow-BoldOblique
- Times-Roman
- Times-Bold
- Times-Italic
Times-BoldItalic
- Courier
- Courier-Bold
- Courier-Oblique
Courier-BoldOblique
- Palatino-Roman
- Palatino-Bold
- Palatino-Italic
Palatino-BoldItalic
- Symbol
ZapfChancery-MediumItalic
Rendered sample: