[Mew-dist 07225] namazu.el for mew

Takeshi ITOH titou at example.com
1999年 1月 21日 (木) 01:56:53 JST


伊藤@Bitsです。

namazu[1]を使って ~/Mail 以下を検索できるようにしています。Emacsの
インターフェースとして namazu.el が提供されていますが、これを mew
と連携できるように考えてみました。

namazu.el では検索結果が次の様な形で表示されます。カーソルは一覧の
中のパス名の先頭に位置するという仕組になっています。見たいメッセー
ジのところで M-x namazu-mew-folder すると該当するフォルダのサマリー
モードでメッセージを表示します。

1> 3. Re: [linux-users:43116]ノートに最適のメーラー (score: 1)
2>    From: Takeshi ITOH <tito at example.com>
3>    Date: Tue, 12 Jan 1999 09:27:36 +0900
4> 	伊藤@Bitsです。なんかこんなフォローばっかです。 とりあえず 
5> 	1.93 にしてみてはいかがでしょうか。速くなってますよ。 この問題
6> 	は開発者も認識していますから、いずれ改善されると思います。 で
7> 	私は mew を基本に
8>/home/tito/Mail/Backup/1231 size (1,857 bytes)

で以下の様な関数を書いてみたのですが、いかがでしょうか。

1.mew をあらかじめ起動しておく必要がある。
2.mew-summary-goto-folder したときに Summary の更新がかかりRage: (update)が
  聞かれてしまう(場合がある)。ただ単に目的のメッセージを表示するにはど
  うしたらよいか。
3.summary mode から *namazu* に戻るのに'l'キーを割りあてている。こ
  れを'q'にしたい。一方(namazuからviewerとして呼びだされる summary
  mode ではなくmewとしての)summary mode での mew-summary-suspend(又
  は prom-summary-exit)もつぶしたくない。

などの問題があります。

何かうまい方法などあれば教えてください。(もっと、まともなコードが書
ければ contrib へ収録をお願いするのですが。)


(defvar namazu-output-url-pattern-mew
  "^/.*Mail/\\(.*\\)/\\([0-9]+\\) \\(size ([^)]*)\\)"
  "pattern of MH folder and message")

(defun namazu-mew-folder ()
  "show pointed message at mew summary"
  (interactive)
  (if (re-search-forward namazu-output-url-pattern-mew nil t)
      (let ((folder (buffer-substring (match-beginning 1) (match-end 1)))
	    (message (and (match-beginning 2)
			 (buffer-substring 
		  (match-beginning 2) (match-end 2)))))
	(setq namazu-mew-window-config (current-window-configuration))
	(beginning-of-line)
	(sit-for 0)
	(mew-summary-goto-folder nil (concat "+" folder))
	(mew-summary-jump-message message)
	(mew-summary-show))))

(defun namazu-mew-last ()
  ""
  (interactive)
  (set-window-configuration namazu-mew-window-config))


(add-hook 'mew-summary-mode-hook
  '(lambda () (define-key mew-summary-mode-map "l" 'namazu-mew-last)))

[1]Namazu,日本語全文検索
  http://saturn.aichi-u.ac.jp/%7Eccsatoru/Namazu/
-- 
(株)ビッツ マイコン開発部ファーム課
伊藤 剛 titou at example.com



Mew-dist メーリングリストの案内