[mew-dist 26295] Re: IMAP sync vs. trash
Shun-ichi TAHARA ( 田原 俊一 )
jado at example.com
2005年 5月 17日 (火) 11:04:30 JST
From: Shun-ichi TAHARA (田原 俊一) <jado at example.com>
Message-Id: <20050513.133032.249991856.jado at example.com>
> 例えば %inbox に対して、別クライアントでメールを削除した後、%inbox で
> s sync とすると、既に削除されたメールが %inbox から消えますが、この際
> に消えたメールが +trash (IMAPフォルダでなくローカルフォルダ) に移され
> ています。
>
> この動作を止める(安全性を考えると、デフォルトは今のままでいいと思いま
> すが) ことは可能でしょうか?
ちょっとやってみました。adviceだとこんな感じ。
----
(defvar mew-trash-folder-for-remote-sync "+sync"
"*The trash folder used while doing \"s sync\" in remote folder.")
(defadvice mew-net-folder-sync (around mew-remote-sync activate)
"Use `mew-trash-folder-for-remote-sync' instead of `mew-trash-folder'."
(let ((mew-trash-folder mew-trash-folder-for-remote-sync))
ad-do-it))
(defadvice mew-decode-rfc822-header (around mew-remote-sync activate)
(if (and mew-trash-folder-for-remote-sync
(string= (mew-cinfo-get-fld) mew-trash-folder-for-remote-sync))
(let ((mew-trash-folder mew-trash-folder-for-remote-sync))
ad-do-it)
ad-do-it))
----
デフォルトでは、s sync で消えたメッセージは +sync に落ちます。
(setq mew-trash-folder-for-remote-sync "+trash") だと従来の動作、
(setq mew-trash-folder-for-remote-sync nil) だと、即座に消えます。
mew-decode-header への advice は、mew-trash-folder の外だと
"Too large, truncated (the `T' mark). ..."
の表示が出てしまうので当てたものです。
# これはパッチにした方が判りやすかったか…
_______________________________
田原 俊一 jado at example.com, shunichi_tahara at example.com
http://flowernet.gr.jp/jado/
FingerPrint: 16 9E 70 3B 05 86 5D 08 B8 4C 47 3A E7 E9 8E D9
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
Mew-dist メーリングリストの案内