コンソール上でアスキーアートのフロー図を生成できるコマンド

ふと、コンソール上でアスキーアートでフロー図を作成する方法ってあるのかなと調べてみたところ、vim以外だと2つほど見かけたので記述してみる。

1.groffを用いる

manページの作成などに用いられるgroffを用いることで、roffのフォーマットを使ってアスキーアートでフロー図を簡単に生成できるらしい。
以下、実行例。

blacknon@BS-PUB-UBUNTU-01:~$ cat ascii.roff
.PS
box "box1";
line
box "box2";
.PE
blacknon@BS-PUB-UBUNTU-01:~$ groff -T ascii -p ascii.roff | head -5
+------+     +------+
|      +-----|      |
| box1 |     |box2  |
+------+     +------+
blacknon@BS-PUB-UBUNTU-01:~$ groff -T ascii -p <(echo -e '.PS\nbox "box1";\nline\nbox "box2";\n.PE') | head -5
+------+     +------+
|      +-----|      |
| box1 |     |box2  |
+------+     +------+
Sponsored Links

2.graph-easyを用いる

perlで書かれているツールで、graph-easyというコマンドを使うことで、特定のフォーマットで記述された内容をパイプで渡してアスキーアートのフローチャートを生成させることができるようだ。
Ubuntuであればaptからインストールが行える。

blacknon@BS-PUB-UBUNTU-01:~$ echo "[box1] -- test --> [box2-1],[box2-2]" | graph-easy
+--------+  test   +--------+
|  box1  | ------> | box2-1 |
+--------+         +--------+
|
| test
v
+--------+
| box2-2 |
+--------+

 

もっと細かく指定可能で、
日本語だとこちら、及びこちらの情報が参考になるので、細かい使い方についてはそちらを参考にするといいだろう。

 


Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。

*