[mew-dist 28128] Re: hook 追加のお願い (mew-nmz)
Hideyuki SHIRAI ( 白井秀行 )
shirai at example.com
2008年 2月 25日 (月) 23:15:14 JST
白井です。
From: Tatsuya Kinoshita <tats at example.com> さん曰く
Subject: [mew-dist 28125] Re: hook 追加のお願い (mew-nmz)
Message-ID: <20080225.220141.24134545.tats%nobody at example.com>
Date: Mon, 25 Feb 2008 22:01:41 +0900 (JST)
> mew-imap-folder-alistが使われていますが、mew-imap-trash-folder
> がnilの場合のことが考慮されていないのではないでしょうか。
ほとんど考えていません ^^;; 、以前、同様の指摘を受けて別の部分は
対応したことがあります。
> `k/'で検索してみると、下記のようなエラーになります。
>
> Debugger entered--Lisp error: (args-out-of-range "" 1 0)
> mew-folder-string("")
> mew-expand-folder2("gmail:")
> mew-expand-folder("gmail:")
> [...]
> mew-nmz-gather-indexed-folder("gmail" (("%inbox") (nil) ("%queue")) imap)
エラーになっている mew-nmz-gather-indexed-folder の引数って、
(mew-imap-folder-alist "gmail") => '(("%inbox") (nil) ("%queue"))
ということでして、確かに imap-trash-folder => nil で
mew-imap-folder-alist() の最後の部分が帰ってくると、
'(("%inbox") (nil) ("%queue")) となるようです。
だけど、mew-imap.el で
(defun mew-imap-folder-alist (&optional case no-load)
(unless case (setq case mew-case-default))
....
(if alist
alist
(delete nil
(list
(mew-folder-func mew-imap-inbox-folder)
(mew-folder-func (mew-imap-trash-folder case))
(mew-folder-func (mew-imap-queue-folder case))))))))
というコードを見る限りは、trash の (nil) はもともと消すのが正解
の様な感じです。ちょっとかっこ悪いけど、こういうことかしら?
(delete '(nil)
(list
(mew-folder-func mew-imap-inbox-folder)
(mew-folder-func (mew-imap-trash-folder case))
(mew-folder-func (mew-imap-queue-folder case)))))
=> '(("%inbox") ("%queue"))
--
白井秀行 (mailto:shirai at example.com)
Mew-dist メーリングリストの案内