blockdiag シリーズの trac plugin を書いた
blockdiag シリーズがすごく良かったので trac で使うべくプラグインを書きました。
github で公開しています。
0.1.0 には日本語を含むソースを書くと wiki をレンダリングできない残念なバグがあるので既にインストールして頂いた方は 0.1.1 にアップデートしてください。
既に TracBlockDiagPlugin がありましたが、たまに画像が表示されないことがあったので自分で作ることにしました。今のところマクロ構文は TracBlockDiagPlugin を踏襲しています。
バグや要望があれば連絡いただけると助かります。もちろん fork して改造してくださっても結構です。pull requests を頂ければ大変喜びます。
ここにはインストール方法や使い方などを書いておきます。なんか README の邦訳みたいになっていますが、日本語ネイティブなのでむしろ README の英語があやしすぎます。
特徴
TracBlockdiag の特徴など。
インストール
インストールは普通の trac plugin と変わりません。
リポジトリを clone します。git-flow を使っているので master ブランチは常にリリース版です。安心してお使いください。
$ git clone https://github.com/yosisa/TracBlockdiag.git
$ cd TracBlockdiag
システムワイドに入れるには以下のようにします。
$ python setup.py install
特定の trac env に入れるなら egg を作ってコピーします。
$ python setup.py bdist_egg $ cp dist/*.egg /path/to/tracenv/plugins
管理画面や trac.ini でプラグインを有効にしてください。
プラグインのインストールが終わったら、使いたい blockdiag シリーズをインストールします。
全部使いたい場合は以下のようにすればいいです。
$ pip install blockdiag seqdiag actdiag nwdiag
nwdiag を使うなら cisco の追加 shape が素敵なのでこれも入れておきましょう。 ::
$ pip install blockdiagcontrib-cisco
以上でインストールは終了です。
使い方
trac 0.12 向けの説明です。0.11 な方は README_ を参照してください。
マクロ構文は以下のようになっています。type のデフォルトは png です。
{{{#!(block|seq|act|nw|rack)diag [type=(png|svg)] [IMG_TAG_ATTR=VALUE ...]
*DIAG_SOURCE_TEXT
}}}
具体例
{{{#!blockdiag
{
A -> B -> C;
B -> D;
}
}}}
これは blockdiag を使って png 画像を生成します。
{{{#!blockdiag type=svg width=800px
{
A -> B -> C;
B -> D;
}
}}}
width=800px は img タグにくっつきます。height とかももちろん指定できます。
以上です。それでは、楽しい blockdiag life を!