netpbmとpbmtobrailleを使ってLinuxコンソール上でフローチャート作成

ぼーっとネットサーフィンをしていたところ、Linuxコンソール上でフローチャートを作ることができるコマンドとして「pbmtobraille」というものがあったので試してみることにした。
なお、このコマンドは点字フォントでフローを表現するので、ちゃんと点字を表現できるターミナルで利用する必要がある。今回は、Ubuntu 14.04 LTSでこれを実際に使ってみる事にする。

1.インストール

事前に、一緒に使うコマンドが入っている「netpbm」をインストールする。

sudo apt-get install netpbm ivtools-bin

それでは、実際に「pbmtobraille」をインストールしよう。
インストールといってもgccでコンパイルして「/usr/bin」に置くだけだ。

wget https://www.ibm.com/developerworks/community/blogs/HermannSW/resource/BLOGS_UPLOADED_IMAGES/pbmtobraille.2.zip
unzip -d pbmtobraille pbmtobraille.2.zip
cd pbmtobraille
gcc pbmtobraille.c -o pbmtobraille
sudo cp pbmtobraille /usr/bin/

これでインストールができた。

2.実際に使ってみる

さて、それでは実際にコマンドを使ってみよう。
最初は、簡単に「@」という文字を表現させてみよう。「-neg」を付与すると、白抜きで表現してくれる。

pbmtext "@" | pnmcrop | pbmtobraille
pbmtext "@" | pnmcrop | pbmtobraille -neg

確かに、点字フォントで文字が表されている。
次に、実際にフローチャートを作ってみよう。dotコマンドを最初に実行させることで、フローチャートの作成が行える。
※sample.txtのコマンドのままだと、どうもUbuntu 14.04 LTSではうまく動作しなかった。途中で使っている「pnmtopgm」コマンドだと、パイプで渡しても「 <(〜)」で渡してもうまく動作しなかったので、一度ファイルに書き出している。

echo 'digraph { Foo -> Bar }' | dot -Tpng | pngtopnm > test.pnm
pnmtopgm test.pnm | pgmtopbm | pbmtobraille

確かにフローチャートができた。
このコマンド、厳密にはpngファイルとかを点字でコンソール上に表示させるっていうコマンドなので、そのへんの画像ファイルをそのまま使ってもコンソール上に表示させられるようだ。

…そもそも、コンソール上に作成したフロー図とか誰に見せるんだろとか思わなくもないけど、きっとどこかで役に立つ!…かもしれない