calfw-orgを導入したらGoogle Calendarにorgの予定を同期したくなってしまった。calfwがEmacsで動くにしてはあまりにもかっこよかったからである。元々、カレンダーは月単位の升目表示が好みということもある。
パソコンでできるならiPadやiPhoneのカレンダーに同期したくなってしまったのだ。iPhoneはSnapCalだけど(これも月表示で升目に予定が表示されるから)。
Calnedar for iPadやSnapCalは Google Calendar から同期できるからorgから Google Calendar へ同期できれば、OKと考えわけだ。
すぐに思いついたのはDropboxを使う方法だった。
Dropboxにorgからexportしたicsファイルを置いて、それを外部リンクとして Google Calendar に同期する。 Google Calendarは「他のカレンダー」としてicsファイルの取り込むことができる――はず。
楽勝。
そう思ったのだが、思わぬ伏兵があらわれた。
Google Calendarがicsファイルの文字コードをUTF-8として認識してくれない……。これにはまいった。そういう話があるということは知っていたのだが、なんとかなるだろう、とたかをくくっていた。UTF-8だめ。EUCだめ。ShifJISだめ。JISだめ。UTF-8をエスケープしてもだめ。
袋小路にはいってしまった。Google Calendar側で対応してくれなければ、無理だ。そうでないなら自分でサーバを立ち上げるか……(char-setを与えてやればよいらしい)。
ふと他の方法(Google Calendar経由以外)で、iPadへ同期できないだろうか、と考えた。で、設定を見ていたらなんと、Dropboxのicsファイルを直接、読みこめるじゃないか!
設定>メール/連絡先/カレンダー>アカウントと追加>その他>照会するカレンダーを追加
※ずいぶん前からDropbox側の仕様変更によりicsファイルの参照ができなくなってしまっている(2017/06/02記)
で、なんと簡単にDropbox経由でicsファイルをiPadへ取り込めてしまった。リードオンリーだけど、この場合、その方が都合がいい。SnapCalにはそういう機能はないみたいだけど、iPhoneのCalendar経由でicsファイルの予定を取り込むことができた。唯一の欠点はすべての予定がGoogle Calendarに集まらない、ということだけど、どうせパソコンからはGoogle Calendarではなく、org-modeを使うから無問題だ。
Google Calendar=>org-modeはcalfwで可能という話だし。最悪、なんとかなるでしょw