Google カレンダー連携して howm メニューに表示
Meadow/Emacs memo: メモを書こうに、homw menu に diary を表示する方法がある。
Google calendar と diary の連携は[emacs][google][calendar]Emacs の calendar と Google カレンダーを連携させるをすれば出来るので、この両方をやれば目的を達成できることになる。
が、そのままだと Status とか UID とかいらんものまで表示されてうざいので、howm-menu-diary を以下のように書き換える。
(defun howm-menu-diary () (message "scanning diary...") (delete-region (match-beginning 0) (match-end 0)) (require 'diary-lib) (let* ((now (decode-time (current-time))) (diary-date (list (nth 4 now) (nth 3 now) (nth 5 now))) (diary-display-hook 'ignore) (cbuf (current-buffer)) (howm-diary-entry nil) (howm-diary-entry-day nil) (str nil)) (unwind-protect (setq howm-diary-entry (list-diary-entries diary-date howm-menu-schedule-days)) (save-excursion (set-buffer (find-buffer-visiting diary-file)) (subst-char-in-region (point-min) (point-max) ?\^M ?\n t) (setq selective-display nil))) (while howm-diary-entry (setq howm-diary-entry-day (car howm-diary-entry)) (setq mm (nth 0 (car howm-diary-entry-day))) (setq dd (nth 1 (car howm-diary-entry-day))) (setq yy (nth 2 (car howm-diary-entry-day))) (setq str (replace-regexp-in-string "[\n].*Status:.*$" "" (nth 1 howm-diary-entry-day))) (setq howm-diary-entry (cdr howm-diary-entry)) (insert (format ">>d [%04d-%02d-%02d] %s\n" yy mm dd str)))) (message "scanning diary...done") )
挿入する文字列を一部削除するようにしただけ。