blockdiag is a Python tool to generate block-diagram image file from spec-text file.
Setup
by easy_install
Make environment:
easy_install blockdiag
by buildout
Make environment:
hg clone http://bitbucket.org/tk0miya/blockdiag
cd blockdiag
python bootstrap.py
bin/buildout
Copy and modify ini file. example:
cp < blockdiag installed path >/blockdiag/examples/simple.diag .
vi simple.diag
Please refer to spec-text setting sample section for the format of the simpla.diag configuration file.
spec-text setting sample
Few examples are available.
simple.diag
simple.diag is simply define nodes and transitions by dot-like text format:
diagram admin {
top_page -> config -> config_edit -> config_confirm -> top_page;
}
screen.diag
screen.diag is more complexly sample. diaglam nodes have a alternative label and some transitions:
diagram admin {
top_page [label = "Top page"];
foo_index [label = "List of FOOs"];
foo_detail [label = "Detail FOO"];
foo_add [label = "Add FOO"];
foo_add_confirm [label = "Add FOO (confirm)"];
foo_edit [label = "Edit FOO"];
foo_edit_confirm [label = "Edit FOO (confirm)"];
foo_delete_confirm [label = "Delete FOO (confirm)"];
bar_detail [label = "Detail of BAR"];
bar_edit [label = "Edit BAR"];
bar_edit_confirm [label = "Edit BAR (confirm)"];
logout;
top_page -> foo_index;
top_page -> bar_detail;
foo_index -> foo_detail;
foo_detail -> foo_edit;
foo_detail -> foo_delete_confirm;
foo_index -> foo_add -> foo_add_confirm -> foo_index;
foo_index -> foo_edit -> foo_edit_confirm -> foo_index;
foo_index -> foo_delete_confirm -> foo_index;
bar_detail -> bar_edit -> bar_edit_confirm -> bar_detail;
}
Usage
Execute blockdiag command:
blockdiag simple.diag
ls simple.png
simple.png
Features:
- Generate block-diagram from dot like text (basic feature).
- Multilingualization for node-label (utf-8 only).
What is new in this release:
- Fix bugs
What is new in version 1.2.3:
- Fix bugs
What is new in version 1.2.0:
- Optimize algorithm for rendering shadow
- Add options to docutils directive
- Fix bugs
What is new in version 1.1.8:
- Add --ignore-pil option
- Fix bugs
What is new in version 1.1.7:
- Add diagram attribute: shadow_style
- Add font path for centos 6.2
- Add a setting 'antialias' in the configuration file
- Fix bugs
What is new in version 1.1.6:
- Support for readthedocs.org
- reST directive supports :caption: option
- Fix bugs
What is new in version 1.1.5:
- Embed source code to SVG document as description
- Fix bugs
What is new in version 1.1.4:
- Add new edge.hstyles: oneone, onemany, manyone, manymany
- Add edge attribute: description (for build description-tables)
- Fix bugs
What is new in version 1.1.3:
- Add new edge type for data-models (thanks to David Lang)
- Add --no-transparency option
- Fix bugs
Requirements:
- Python
- PIL
- funcparserlib
- setuptools or distriubte
Comments not found