]> sipb.mit.edu Git - ikiwiki.git/blob - doc/plugins/contrib/mscgen.mdwn
Added mscgen plugin.
[ikiwiki.git] / doc / plugins / contrib / mscgen.mdwn
1 [[!template id=plugin name=mscgen author="[[TerryGolubiewski]]"]
2 [[!tag type/widget]]
3
4 This plugin provides the mscgen [[ikiwiki/directive]].
5 This directive allows embedding [mscgen](http://www.mcternan.me.uk/mscgen/)
6 message sequence chart graphs in a page.
7
8 Here's an mscgen source example.
9
10     \[[!msc src="""
11       arcgradient = 8;
12
13       a [label="Client"],b [label="Server"];
14
15       a=>b [label="data1"];
16       a-xb [label="data2"];
17       a=>b [label="data3"];
18       a<=b [label="ack1, nack2"];
19       a=>b [label="data2", arcskip="1"];
20       |||;
21       a<=b [label="ack3"];
22       |||;
23     """]]
24
25 Security implications: to be determined
26
27 [[!if test="enabled(mscgen)" then="""
28 And here's the resulting graph.
29
30 [[!msc src="""
31   arcgradient = 8;
32
33   a [label="Client"],b [label="Server"];
34
35   a=>b [label="data1"];
36   a-xb [label="data2"];
37   a=>b [label="data3"];
38   a<=b [label="ack1, nack2"];
39   a=>b [label="data2", arcskip="1"];
40   |||;
41   a<=b [label="ack3"];
42   |||;
43 """]]
44
45 """]]
46
47 This plugin uses the [[!cpan Digest::SHA]] perl module.
48
49 This plugin borrows heavily from the [[graphviz|plugins/graphviz]] plugin written by [[JoshTriplett]].
50
51
52 [[!mscgen src=
53 mscgen is