« Ulf Jasper's Emacs stuff | トップページ | bunkenhtml~BibTeXの文献リストをHTMLに変換するプログラム~ »

howm と calendar と diary の連携

37.6.1 howm と カレンダの併用 (2004/02/02) という記事。

これは、すばらしい。

私のページ
howm と diary と calendar と
([2004-01-18])
をご覧になって、思いつかれたとのこと。

で、使わせていただいて。(diary-to-howm みたいなやつを作りかけていたけど。)

まず、上記のページのコードを、howm-diary.el として、load-path 上に保存。
次に、.emacs に下を書き加える。
(下は、インデントなど示そうと思い、<pre></pre>してあるんだけど、ココログだとフォントが小さく見えるのかな?)


;; ;;;; howm と diary の連携 はじまり
(autoload 'howm-menu "howm-diary" "howm diary" t)
;;howm のメニューで d でカレンダー
(add-hook 'howm-menu-hook
'(lambda ()
(local-set-key "d" 'calendar)))
;;;;;;;;;;;;
;;;; 2ch から
; M-x calendar から M-x howm-from-calendar でその日を検索。
(defun howm-from-calendar ()
(interactive)
(let* ((mdy (calendar-cursor-to-date t))
(m (car mdy))
(d (second mdy))
(y (third mdy))
;; (key (format-time-string howm-date-format
;; (encode-time 0 0 0 d m y))))
;; オリジナルだと yyyy-mm-dd を検索するので、[yyyy-mm-dd HH:MM] も
;; 検索されて、ちょっとうっとしいので、下のように変更。[2004-02-23]
(key (format "[%s]" (format-time-string howm-date-format
(encode-time 0 0 0 d m y)))))
(howm-keyword-search key)))
(global-set-key "\C-c,f" 'howm-from-calendar)
(add-hook 'initial-calendar-window-hook
'(lambda ()
(local-set-key
"b" 'howm-from-calendar)))
;;; howm と diary の連携 おわり

さらに, howm のメニュー (~/howm/0000-00-00-000000.howm) に以下を追加。

[ diary ] (%sdays 日先まで表示)
%hdiary
-------------------------------------

で、C-c,, で、howm を起動してみると、下のようなエラー。

Symbol's function definition is void: howm-menu-display-number

で、メニューに加える部分を次のようにしたら、つまり、%s を取ったら、OK。その後、手で、14 と入力。

[ diary ] (14 days 日先まで表示)
%hdiary
-------------------------------------

さらに、M-x calendar して、m してみると、下のようなエラー。

Symbol's value as variable is void: howm-schedule-menu-types

で、よくわからないまま、関数 howm-mark-calendar-date の5行目と6行目をコメントアウト。
と、思ったけど、行の入れ替えかな?つまり、下のようにしたら、動いているようだ。

;; (howm-schedule-types
;; howm-schedule-menu-types)
;; 上の2行を下の2行と置き換え。
(howm-schedule-menu-types
howm-schedule-types)

さらに、私の場合、下の3行を書いたファイルを diary-file に #include しているのだが、...。

%%(diary-day-of-year)
%%(diary-sunrise-sunset)
%%(diary-phases-of-moon)

これらを展開した情報も howm のメニューに出てきてしまい、結構じゃまくさい。で、関数 howm-menu-diary の中の let* の中に、 (list-diary-entries-hook 'ignore) を加える。これをしないと、include-other-diary-files が、働いてしまうようだ。

しかし、これは、便利だ。メニューに diary の項目を表示させておいて、その行頭で、リターンすれば、diary-file の当該箇所にジャンプするって、とっても素敵だ。素の calendar/diary では、項目の挿入は簡単なのに、後からエディットしようとすると苦労していたので、革命的にすばらしい。

贅沢を言えば、diary-file 上のすべての項目をこの形式で表示するようなバッファを作るともっと便利かも。

さらに、下のような書式を理解して、しかるべく howm のメニュー上に表示できるとうれしいかも。

Feb 23, 2004@ 予定
Feb 23, 2004+7 todo
Feb 23, 2004! 〆切
Feb 23, 2004-1 覚書

さらに、C-c,, して、d すると、calendar が起動するのも、すばらしい。

|

« Ulf Jasper's Emacs stuff | トップページ | bunkenhtml~BibTeXの文献リストをHTMLに変換するプログラム~ »

emacs 関係」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/11083/164563

この記事へのトラックバック一覧です: howm と calendar と diary の連携:

« Ulf Jasper's Emacs stuff | トップページ | bunkenhtml~BibTeXの文献リストをHTMLに変換するプログラム~ »