[mew-dist 20533] Re: IMAP mailbox convention

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2002年 3月 1日 (金) 20:15:13 JST


From: Kazu Yamamoto (山本和彦) <kazu at example.com> さん曰く
Subject: [mew-dist 20525] IMAP mailbox convention
Message-ID: <20020301.185944.39927421.kazu at example.com>
Date: Fri, 01 Mar 2002 18:59:44 +0900 (JST)

> IMAP のメールボックスの名前体系の件ですが、

> Cyrus しか使ったことがないので、他の IMAP サーバで困らないか、思考実験
> をお願いします。

ちょっと長いメールですが、いまだに残っている uw-imap 4.7 BETA の
場合です。

まず、私の環境説明。
本来、uw-imap は ~/ 以下に直接メールボックスを作成すると思うので
すが、私が make したときに、(この方が便利だろうと思い) "~/Imap"
を起点にするように無理やり変更してしまいました。 そのため、通常
メールボックスを指定したときは

%tmp => ~/tmp

となるのですが、私の場合は変則的に

%tmp => ~/Imap/tmp

となります。以下、この場合の説明です。おそらく ~/Imap を ~/ を読
み直すと普通の環境の場合になると思いますが、詳しいわけでも使いこ
なしているわけではないので、嘘を言っていたらごめんなさい。

以下、imap-4.7.BETA/docs/naming.txt: Mailbox Name Conventions か
ら抜粋

I. Special names
I.a. INBOX

The name INBOX is special and refers to primary incoming message
mailbox on the local system.

=> ぼくの場合は /var/mail/shirai (pop と同じ) になる。
=> ~/Imap/mbox があるとそっちが inbox になるようだ。

I.b. #mhinbox (UNIX only)

=> ~/Mail/inbox をさす。~/Mail は ~/Imap/.mh_profile で指定。

II.  Special prefixes

All names which start with a "#" have a "special prefix" which
identifies an alternative namespace.  Special prefixes appear in front
of some additional text which constitutes a suffix.

II.a. #mh/ (UNIX only)

=> ~/Imap/.mh_profile で指定した場所を起点にして
=> %#mh/ml/mew-dist とか使える。ぼくの場合はこれが imap を使う最
=> 大の目的かもしれない。

II.b. #news. (UNIX only)
II.c. #ftp/ (UNIX only)
II.d. #public/ (UNIX only)
II.e. #shared/ (UNIX only)

=> 使ったことがないけど、雰囲気はお分かりかと。

III. Remote names

All names which start with "{" are remote names, and are in the form
	"{" remote_system_name [":" port] [flags] "}" [mailbox_name]
where:
 remote_system_name	Internet domain name or bracketed IP address
			 of server.
 port			optional TCP port number, default is the
			 default port for that service		
 flags			optional flags, one of the following:
  "/service=" service	mailbox access service, default is "imap"
  "/user=" user		remote user name for login on the server
  "/anonymous"		remote access as anonymous user
  "/debug"		record protocol telemetry in application's
			 debug log
  "/secure"		do not transmit a plaintext password over
			 the network
  "/imap", "/imap2", "/imap2bis", "/imap4", "/imap4rev1"
			equivalent to /service=imap
  "/pop3"		equivalent to /service=pop3
  "/nntp"		equivalent to /service=nntp
 mailbox_name		remote mailbox name, default is INBOX

For example:
	{imap.foo.com}INBOX
opens an IMAP connection to system imap.foo.com and selects INBOX.

=> これも使ったことがないけど。へぇ、こんなことが出来るんだぁと
=> 初めて知ったりして ^^;;;


という感じです。Remote names は考えなくても良いカナ?

> (1) case 対応の mew-imap-mailbox-prefix という変数を用意。これを、メー
>     ルボックスの先頭に付けてサーバに渡す。
> 
> (setq mew-imap-mailbox-prefix "INBOX") の場合:
> 
> 	%        → INBOX
> 	%foo     → INBOX.foo  ("." はサーバに教えてもらえる)
> 	%foo.bar → INBOX.foo.bar
> 
> # %inbox は諦める ($inbox も $ だけでいいかも)

これは、(setq mew-imap-mailbox-prefix "") かな。ただし、"%inbox"
は必要です。または、"%" だけなら "%inbox" という決まりを作るか。

## だけど、"%" とか "$" とかいうフォルダ名はちょっと抵抗を感じる
## んですが ^^;;;

> (2) セパレータは、そのままユーザへ表示。ただし、ローカルのキャッシュを
>     作る際は、"/" へ変換し階層的にする。
> 
> 	%foo.bar → ~/Mail/imap/foo/bar

階層的に扱うのは良いと思うのですが、私の環境だと

~/Imap/foo.bar <==> %foo.bar
~/Imap/foo/bar <==> %foo/bar

は別のメールボックスとして扱うことができます。これ、今の Mew で
もできました。オプションで

(setq mew-imap-convert-dot-to-slash nil)

みたいな感じかしら。

> # ニュースもこうする

# こちらは何にも問題ありません。

けど、やっぱり全然使いこなしていないので、uw-imap に詳しい方のフォ
ローが欲しいです。

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



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