[mew-dist 28905] Re: 特定フォルダ以下をauto-refileの対象から外すには?
Tatsuo Ishii
ishii at example.com
2009年 3月 9日 (月) 15:18:53 JST
石井です。
> 例えば、以下のように mew-refile-guess-by-folder-not-old() を定義
> して、mew-refile-guess-control に追加すれば OK でしょう。
>
> (defvar mew-refile-guess-by-folder-not-old-alist nil)
>
> (defun mew-refile-guess-by-folder-not-old ()
> (let ((to-cc (mew-header-parse-address-list mew-refile-guess-key-list))
> (proto mew-inherit-refile-proto)
> (case mew-inherit-refile-case)
> alist tmp sep ent ret ml-addr ml-name)
> (when (mew-folder-localp proto)
> (setq sep mew-path-separator)
> (if mew-refile-guess-by-folder-not-old-alist
> (setq alist mew-refile-guess-by-folder-not-old-alist)
> (setq alist (mew-proto-folder-alist proto case))
> (while alist
> (unless (string-match "^\\+Mail-[12][0-9][0-9][0-9]" (car (car alist)))
> (setq tmp (cons (car alist) tmp)))
> (setq alist (cdr alist)))
> (setq alist (nreverse tmp))
> (setq mew-refile-guess-by-folder-not-old-alist alist))
> (dolist (tc to-cc)
> (setq ml-addr (mew-addrstr-parse-address (or tc "")))
> (when ml-addr
> (setq ml-name (mew-addrstr-extract-user ml-addr))
> (setq ent (or (funcall mew-assoc-folder ml-addr alist sep)
> (funcall mew-assoc-folder ml-name alist sep)))
> (mew-addq ret (nth 0 ent))))
> (nreverse ret))))
>
> (setq mew-refile-guess-control
> '(mew-refile-guess-by-alist
> mew-refile-ctrl-throw
> mew-refile-guess-by-newsgroups
> mew-refile-guess-by-folder-not-old ;; 追加
> mew-refile-ctrl-throw
> mew-refile-ctrl-auto-boundary
> mew-refile-guess-by-folder ;; 適当な位置に動かす(消すのもあり)
> mew-refile-guess-by-thread
> mew-refile-ctrl-throw
> mew-refile-guess-by-from-folder
> mew-refile-ctrl-throw
> mew-refile-guess-by-from
> mew-refile-ctrl-throw
> mew-refile-guess-by-default))
>
> これで、M-o のときに +Mail-2008/... が出てくることはなくなると思
> います。
試してみました。mew-refile-guess-by-folderをコメントアウトすることによ
り、+Mail-2008/... が出てこなくなりました。ありがとうございました!
> なお、
>
> (1) 二回目以降は +Mail-XXXX を除いた alist を使いまわしているた
> め、後からフォルダを追加したり、削除したりしたら、Emacs を立
> ち上げ直すか、
> (setq mew-refile-guess-by-folder-not-old-alist nil)
> としないとダメです。
>
> (2) ローカルフォルダ限定です。IMAP にも対応出来ますが、少々面倒
> くさくなるので、もし必要ならまた今度。
了解です。
--
Tatsuo Ishii
SRA OSS, Inc. Japan
Mew-dist メーリングリストの案内