[mew-dist 23875] IMAP LITERAL+
Kazu Yamamoto ( 山本和彦 )
kazu at example.com
2003年 7月 19日 (土) 00:43:16 JST
LITERAL+ を実装したのですが、試す環境がありません。誰か試してみて下さい。
実験できるのは、LITERAL+ をサポートしている IMAP を使っている人です。
LITERAL+ をサポートしているかは、CAPABILITY コマンドで分ります。
% telnet imap-server imap
* OK
xxx capability (← CAPABILITY コマンド、xxx はタグ)
S: * CAPABILITY IMAP4rev1 LITERAL+ (← ここで分る)
S: xxx OK CAPABILITY completed
xxx logout (← コネクションを切る)
Cyrus はサポートしているはずです。
<<<実験目的>>>
LITERAL+ を使って、APPEND が高速になるか確かめる
<<<もうちょっと詳しく>>>
IMAP では、メールをサーバ側にコピーするときに APPEND を使います。
APPEND は、以下のように、メールを送る前にサーバの応答を待つ必要
があります。
RFC 3501 より:
Example: C: A003 APPEND saved-messages (\Seen) {310}
S: + Ready for literal data (← これを待たなきゃいけない)
C: Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
C: From: Fred Foobar <foobar at example.com>
C: Subject: afternoon meeting
C: To: mooch at example.com
C: Message-Id: <B27397-0100000 at example.com>
C: MIME-Version: 1.0
C: Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
C:
C: Hello Joe, do you think we can meet at 3:30 tomorrow?
C:
S: A003 OK APPEND completed
LITERAL+ を使うと待たなくていいです。
Example: C: A003 APPEND saved-messages (\Seen) {310+} (← "+" が重要)
C: Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
C: From: Fred Foobar <foobar at example.com>
C: Subject: afternoon meeting
C: To: mooch at example.com
C: Message-Id: <B27397-0100000 at example.com>
C: MIME-Version: 1.0
C: Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
C:
C: Hello Joe, do you think we can meet at 3:30 tomorrow?
C:
S: A003 OK APPEND completed
これにより、mew-summary-from-local-to-imap (ローカルのフォルダ
をサーバへコピー) が劇的に速くなることが予想されます。(POP から
IMAP へ移行する人には重要。3 日が 2 日ぐらいになる?)
<<<実験>>>
1. (setq mew-imap-literal+ t)
(setq mew-fcc "%backup")
する。
2. メールを書いて送信
3. %backup にメールが保存されていれば OK
よろしくお願いします。
--かず
Mew-dist メーリングリストの案内