私の場合、howm のディレクトリを複数切替えて使ったり、また howm をCVSで管理し、このCVSリポジトリを複数マシンで Dropbox を使用して共有したりしている。
そこで、howm ディレクトリを切り替えたり、CVSでアップデートした事により diary ファイルの内容が変ったと時、カレンダーの表示が変らないのである。「r (cfw:refresh-calendar-buffer)」コマンドでも変化しない。
・calfw-howm.el
(defun cfw:install-howm-schedules ()「howm-after-save-hook」に「cfw:howm-schedule-cache-clear」が設定されているので、howm で普通に予定を書き込んだ場合は、キャッシュがクリアされ、あらためて予定がカレンダーに読み込まれ、その予定がカレンダーに表示される。
(interactive)
"howmスケジュールからデータを取って表示する。"
(add-to-list 'cfw:contents-functions 'cfw:howm-schedule-period-to-calendar)
(add-hook 'howm-after-save-hook 'cfw:howm-schedule-cache-clear)
(add-to-list 'howm-menu-allow 'cfw:howm-schedule-inline)
)
そこで、「r (cfw:refresh-calendar-buffer)」コマンドを実行する時に、常に「cfw:howm-schedule-cache-clear」を実行する事とした。
・~/.emacs
(defadvice cfw:refresh-calendar-buffer (before refresh-calendar activate)これで、「r (cfw:refresh-calendar-buffer)」コマンドを実行すれば、常に最新のスケジュールがカレンダーに表示される事となる。
(cfw:howm-schedule-cache-clear))
0 件のコメント:
コメントを投稿