Emacs org-modeを使ってみる: (25) iCalendarにエクスポート

このエントリーをはてなブックマークに追加

今回は,iCalendar形式にエクスポートする方法についてまとめてみる.
なおUbuntu 8.04 LTSとEmacs22上で, org-6.34c (2010年1月10日リリース)の利用を前提にしている.

orgファイルをiCalendar形式にエクスポート

orgファイルを開いて,「C-c C-e i」とタイプすると, iCalendar形式で保存される.
場所については,「:LOCATION:」プロパティで設定しておく.
デフォールトの設定だと,通常の時間設定のみがエクスポートされる.例えば,以下のファイルの場合,「第1ORG会議」に対する<2010-02-26 金 13:30-14:30>と「第2ORG会議」に対する<2010-02-26 金 13:30-14:30>のみが VEVENTとしてエクスポートされ,その他のDEADLINEやSCHEDULEDはエクスポートされない.

* ORG会議
** 第1回ORG会議 [/] <2010-02-26 金 13:30-14:30>			    :PROJECT:
   :PROPERTIES:
   :LOCATION: 第1会議室
   :END:
*** TODO [#A] 資料準備
    DEADLINE: <2010-02-25 木> SCHEDULED: <2010-02-22 月>
*** TODO [#B] 開催通知
    DEADLINE: <2010-02-25 木> SCHEDULED: <2010-02-24 水>
** 第2回ORG会議 <2010-03-05 金 13:30-14:30>
*** WAIT 出席確認 [1/3]
    DEADLINE: <2010-03-01 月>
    - [X] 一郎
    - [ ] 二郎
    - [ ] 三郎

TODO項目をエクスポートするには,以下のように設定しておく.

(setq org-icalendar-include-todo t)

上の例の場合,「資料準備」,「開催通知」,「出席確認」が VTODOとしてエクスポートされる.
以下は,エクスポートしたicsファイルをSunbirdで開いた所である.


全orgファイルのエクスポート

「C-c C-e c」とタイプすると, ~/org/ ディレクトリ中の全orgファイルを一つのiCalendarファイルにエクスポートできる(org-agenda-filesの設定).
エクスポートで作成されるファイル名は,~/org.ics である. org-combined-agenda-icalendar-file 変数の値の設定で変更できる.