[Mew-dist 10555] Re: one more IMAP support.

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
1999年 9月 1日 (水) 17:44:49 JST


caching 入れて下さってありがとうございます。 

From: SAITO Atsunori <sai at example.com> さん曰く
Subject: [Mew-dist 10548] Re: one more IMAP support.
Message-ID: <19990901145145Y.sai at example.com>
Date: Wed, 1 Sep 1999 14:50:24 +0900

西東> > 重森> それから、cache 先は /tmp でなく ~/Mail/@imapserver#user/ のなかの対応
西東> > 重森> フォルダの中にして、Mew が終わっても削除しないというほうが良い気がする
西東> > 重森> のですが、いかがでしょうか。そうしないと IMAP4 の、POP3 の上位互換と
西東> > 重森> して使える、という謳い文句通りになりませんし ^^;
西東> これ賛成です。ローカルにメッセージがあると、頑張ればmew-nmz
西東> も使えるようになりそうだし... 

## も〜〜ぅ、かんべんして下さいませ。

西東> > 重森> # 実用なさっている方の意見はいかがでしょうか?
西東> > 
西東> > どうでしょうか? ^^;;;
西東> 実用? かどうかはあやしいですが、職場のExchangeが5.5になって
西東> IMAPに対応したのをきっかけに、Outlookを捨てて個人利用で使い
西東> 慣れていたmewにしました。 

久しぶりに Wanderlust を立ち上げたら、さすがに負けてますね。しょ
うがないところですが。。。^^;;;

# 最初、IMAP 対策は mew-wl.el を作ろうかと思っていました。:-)

先程のメールに書いた、cache 作成関数を使うと、まぁまぁ勝負にはな
るかも?
Bug Fix と caching している message にカーソルを動かすというのを
付け加えました。~/.emacs にでも書いておけばなかなか便利かもしれ
ません。

-- 
白井秀行 (mailto:shirai at example.com)

以下、再掲

(add-hook 'mew-summary-mode-hook
	  '(lambda ()
	     (define-key mew-summary-mode-map "G" 'mew-summary-remote-get)))

(defun mew-summary-remote-get (&optional arg)
  "Get remote messages to local temporary spool."
  (interactive "P")
  (if arg
      (mew-summary-remote-get-region (region-beginning) (region-end))
    (mew-summary-remote-get-region (point-min) (point-max))))

(defun mew-summary-remote-get-region (beg end)
  (interactive "r")
  (mew-summary-only
   (save-excursion
     (let ((regex "^ *\\([1-9][0-9]*\\)")
	   (fld (mew-summary-folder-name))
	   msgs)
       (if (not (mew-folder-remotep fld))
	   (message "Can't execute here.")
	 (save-excursion
	   (goto-char beg)
	   (while (re-search-forward regex end t)
	     (if (or (mew-summary-marked-p) (mew-in-decode-syntax-p))
		 ()
	       (setq msgs (cons (mew-match 1) msgs)))))
	 (if (null msgs)
	     (message "No message caching.")
	   (setq msgs (nreverse msgs))
	   (message "Caching all messages ... ")
	   (goto-char beg)
	   (beginning-of-line)
	   (mapcar (function
		    (lambda (msg)
		      (if (re-search-forward (concat "^ *" msg) nil t)
			  (beginning-of-line))
		      (mew-summary-im-start
		       mew-prog-imcat fld nil msg nil nil mew-cs-text-for-read 'noinsert)))
		   msgs)
	   (message "Caching all messages ... done")))))))



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