将blockdiag系列集成到trac wiki中
TracBlockdiag的Python项目详细描述
简介
trac blockdiag是一个trac插件,它将blockdiag系列集成到wiki页面中。 它为blockdiag、seqdiag、actdiag、nwdiag和rackdiag提供wiki宏。
这个软件是在麻省理工学院的许可下提供的。
功能
tracblockdiag有几个特性。
- 几乎支持blockdiag功能(不支持fontmap)。
- 支持png/svg输出(svg仅支持trac 0.12)。
- 最快的wiki呈现。
- 多线程/进程安全。
- 检查已安装的blockdiag系列并仅提供支持的宏。
- 不要创建临时文件。
要求
- python>;=2.5
- trac=0.11
如果需要所有功能,则必须使用TRAC 0.12或更高版本。
安装
首先,克隆存储库。
$ git clone https://github.com/yosisa/TracBlockdiag.git $ cd TracBlockdiag
然后,您可以全局安装
# python setup.py install
或者安装到特定的trac环境。
$ python setup.py bdist_egg $ cp dist/*.egg /path/to/tracenv/plugins
此外,必须安装要集成的blockdiag系列。 例如,下面的命令将安装所有blockdiag系列 (RackDiag当前包含在NWDiag中)。
$ pip install blockdiag seqdiag actdiag nwdiag
也可以使用blockdiag插件。 如果你需要一个插件,你只需安装它。 例如,下面的命令将安装新形状。
$ pip install blockdiagcontrib-cisco
用法
如果您不熟悉blockdiag,应该先阅读blockdiag documentation。
对于trac 0.12或更高
这样的宏摘要:
{{{#!(block|seq|act|nw|rack)diag [type=(png|svg)] [IMG_TAG_ATTR=VALUE ...] *DIAG_SOURCE_TEXT }}}
您可以将blockdiag源文本作为wiki宏编写,如下所示。
{{{#!blockdiag { A -> B -> C; B -> D; } }}}
可以指定输出格式和宽度。
{{{#!blockdiag type=svg width=800px { A -> B -> C; B -> D; } }}}
对于trac 0.11
这样的宏摘要:
{{{ #!(block|seq|act|nw|rack)diag *DIAG_SOURCE_TEXT }}}
在trac 0.11中,不支持宏参数。 因此,所有的图表都是用默认类型选项中指定的格式生成的。
您可以将blockdiag源文本作为wiki宏编写,如下所示。
{{{ #!blockdiag { A -> B -> C; B -> D; } }}}
选项
TracBlockDiag有几个配置参数。 这些参数在trac.ini配置文件的[tracblockdiag]部分中指定。 这些参数定义如下。
name | type | default | description |
---|---|---|---|
font | string array | (auto) | Paths to font file which are used in PNG generation. |
cachetime | int | 300 | Time in seconds which the plugin caches a generated diagram in. |
gc_interval | int | 100 | The number of diagram generation. Unused cache is cleared every this count. |
default_type | string | svg | Default diagram type to generate. |
syntax_check | bool | True | Check syntax of source text and show error insted of 500 response. Note that when using syntax check, the performance is slightly down. |
fallback | bool | False | Fallback to png image when a browser is not support svg. Note that using fallback causes double image generation because major browsers request png image whether svg rendering succeeded or not. So, enabling this option may causes high load. |
历史记录
- 0.2.1(2012-02-26)
- 从pypi修复安装问题
- 0.2.0(2012-01-21)
- 将默认类型从PNG更改为SVG
- 为默认类型添加选项
- 添加选项以启用语法检查以查看详细错误
- 如果浏览器不支持SVG,则支持回退到PNG
- 修复在一页中有多个图表时生成错误图表的错误
- 0.1.1(2012-01-12)
- 修复源文本包含Unicode时的错误
- 修复在PNG渲染时绘制错误字体的错误
- 0.1.0(2012-01-11)
- 首次发布