Org-modeとMS Wordの連携


突然ですが、Microsoft Wordをご存知ですか。とってもお節介で、そのくせ肝心なところに気が回ってなくて、もう本当に素敵です。これだけ素敵なアプリケーションだから「書類はwordで作成してください。」とついお願いしてしまうようなファンがたくさんいるんですね。

こうなると、Org-modeで作った文章もWordにエクスポートしたくなるというのが人情というものです。

Org-modeは7.6からOpenDocumentText形式でのエクスポートをサポートしているので、ワープロソフトとの連携もスムーズに行えます。というわけで、今回はOrg-modeとODTの連携を試してみます。

準備

Org-modeは頻繁にバージョンアップするので、まずは、手元のOrg-modeのバージョンを確認しておきます。(org-version) を評価することで確認できます。バージョンが古ければ、アップデートする必要があります。こちらからダウンロードしてインストールしておきましょう。

Org-modeをインストールしてもODTのエクスポート機能はすぐに使えません。この機能はまだ開発半ばであるということで、contrib扱いとなっていますので、Org-modeのcontribディレクトリの中のlispディレクトリにロードパスを通してからorg-modulesにorg-odtを追加します。

(setq org-modules (append org-modules '(org-odt)))

これで、準備は完了です。

エクスポート

実際にODTでエクスポートしてみます。お題はこの日記にしましょう。この日記もorg2blogを使ってorg-modeで書いているので、そのままエクスポートすればよいです。

せっかくなのでいろいろ試してみましょう。んー例えば画像とか。

http://sheephead.homelinux.org/wp-content/uploads/2011/11/wpid-org-mode-unicorn.png

表とかはどうでしょう

Org-mode AAA BBB
Word CCC DDD
Writer EEE FFF

早速、エクスポート。Org-modeでは、どんな形式のエクスポートでも最初はC-c C-e となってます。そう押したらば、すかさず「o」。これでODT形式のファイルが出力されているはずです。

出力したファイルがこちらになります。
画像や表もうまく出力されてますね。srcブロックもうまく表現されています。これで、Wordのお世話になることもだいぶ減りそうです。

スタイルを変更したい時は、Org-mode/contrib/odt/styles の中にあるxmlに手を加えることになりますが、膨大な量です。少なくとも、事前にODTの仕様についてはある程度理解しておく必要がありそうです。

Org-modeはこの他にもASCII、Freemind、Docbook、iCal等々多くの形式へのエクスポートが可能です。詳しくは、M-x org-info で Exportingの章を参考にしてください。

また、現在有志の方々でOrg-modeのinfoの翻訳作業を進めています。まだ査読作業が残っていますが、英語がつらいという方は参考にされてください。

org-mode-doc-ja/org-ja – GitHub

ちなみに、Exportingの章の翻訳は私が担当しました。原文の方が読みやすい可能性もありますが悪しからず。