org-modeでditaaを使う

org-modeでditaaを使えるようにしたいので使い方を勉強することにした。ditaaはアスキーアートを書いたテキストをちゃんとした図に変換してくれるツールだ。

Table of Contents

1 ditaaのインストール

肝心のditaaが入っていないといけない。

http://ditaa.sourceforge.net/

ダウンロードしたzipを展開してjarファイルを好きなところに置き、その jarファイルへのパスを org-ditaa-jar-path に設定する。

Javaで作られているのでJREが必要だと思う。

org-babel-load-languages の設定にditaaを加えておくのを忘れないこと。

ちなみに、これを記述している時点のEmacsとOrgModeのバージョンは次の通り。

emacs-version
GNU Emacs 23.3.1 (i386-mingw-nt6.1.7601) of 2011-08-15 on GNUPACK
org-version
Org-mode version 7.8.03

2 org-mode内での書き方

#+begin_src ditaa :file ditaa_example1.png
 /-----------------\
 | Summer Triangle |
 | cBLU            |
 | o Vega          |
 | o Deneb         |
 | o Altair        |
 \-----------------/
#+end_src

ditaa_example1.png

:file とか :cmdline とかの意味や、その他のオプションについては org-modeドキュメントの 14 Working with source code を参照すること。

ちなみに、org-mode内で#+begin_src~#+end_srcを入力するには、行頭で <s TAB と打つと良い。

3 日本語

日本語だと1文字と数えられてしまう関係でうまく動作しないらしい。

自分で空白を挿入するか、特定の文字の後に自動的に空白を挿入するよう改造するかすると良いらしい。

4 そもそもditaaってどう書くのさ

ditaaのサイトをよく見るべし。

http://ditaa.sourceforge.net/

  • 矢印: < > ^ v
  • 線: + - |
  • 丸角: / \
  • 接点: *
  • 箇条書き: o
  • cRGB(RGBは16進数字)やcBLU、cREDで色
  • 境界部分を埋めるには -E オプションをつける

といったところを押さえておけばだいたいOKだろうか。

#+begin_src ditaa :file ditaa_example2.png :cmdline -E
  +--------+---------+
  | AAA    |  111    |
  +--------+---------+
  | BBB    |  222    |-----------\
  +--------+---------+           |
                                 |
                                 v
                             +-------+
                             |       |
                             +-------+
#+end_src

ditaa_example2.png

Date: 2012-05-22

Author: AKIYAMA Kouhei

Org version 7.8.03 with Emacs version 23

Validate XHTML 1.0