From: yamaoka Date: Thu, 20 Nov 2003 23:05:49 +0000 (+0000) Subject: Synch to Gnus 200311201619. X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e4dab25a765733fc1659f74ad59daaadc0d36fd8;p=elisp%2Fgnus.git- Synch to Gnus 200311201619. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c2e70d5..ade3500 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,11 @@ +2003-11-20 Teodor Zlatanov + + * spam.el (spam-ham-copy-or-move-routine): add respooling + support, not working well yet + + * gnus.el (ham-process-destination): make 'respool option the + only one, so it can't be chosen together with other groups + 2003-11-19 Teodor Zlatanov * gnus-registry.el (gnus-registry-track-extra): make it a set of diff --git a/lisp/gnus.el b/lisp/gnus.el index 0262463..e87781b 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -2013,9 +2013,7 @@ mail groups." :tag "Destination for ham articles at summary exit from a spam group" (string :tag "Move to a group") (repeat :tag "Move to multiple groups" - (choice - (string :tag "Destination group") - (const :tag "Respool" respool))) + (string :tag "Destination group")) (const :tag "Respool" respool) (const :tag "Do nothing" nil)) :function-document @@ -2039,9 +2037,7 @@ mail groups, and only works in spam groups." :tag "Destination for ham articles at summary exit from spam group" (string :tag "Move to a group") (repeat :tag "Move to multiple groups" - (choice - (string :tag "Destination group") - (const :tag "Respool" respool))) + (string :tag "Destination group")) (const :tag "Respool" respool) (const :tag "Expire" nil)))) :parameter-document diff --git a/lisp/spam.el b/lisp/spam.el index 1d8beb1..4280e26 100644 --- a/lisp/spam.el +++ b/lisp/spam.el @@ -600,12 +600,17 @@ spamoracle database." (backend-supports-deletions (gnus-check-backend-function 'request-move-article gnus-newsgroup-name)) - article mark todo deletep) + (respool-method (gnus-find-method-for-group gnus-newsgroup-name)) + article mark todo deletep respool) (dolist (article articles) (when (spam-group-ham-mark-p gnus-newsgroup-name (gnus-summary-article-mark article)) (push article todo))) + (when (member 'respool groups) + (setq respool t) ; boolean for later + (setq groups '("fake"))) ; when respooling, groups are dynamic so fake it + ;; now do the actual move (dolist (group groups) (when (and todo (stringp group)) @@ -614,12 +619,14 @@ spamoracle database." (gnus-summary-mark-article article gnus-unread-mark)) (gnus-summary-set-process-mark article)) - (if (or (not backend-supports-deletions) - (> (length groups) 1)) - (progn - (gnus-summary-copy-article nil group) - (setq deletep t)) - (gnus-summary-move-article nil group)))) + (if respool ; respooling is with a "fake" group + (gnus-summary-respool-article nil respool-method) + (if (or (not backend-supports-deletions) ; else, we are not respooling + (> (length groups) 1)) + (progn ; if copying, copy and set deletep + (gnus-summary-copy-article nil group) + (setq deletep t)) + (gnus-summary-move-article nil group))))) ; else move articles ;; now delete the articles, unless a) copy is t, and there was a copy done ;; b) a move was done to a single group diff --git a/texi/ChangeLog b/texi/ChangeLog index 5029c51..e9bf8cb 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,12 @@ +2003-11-20 Teodor Zlatanov + + * gnus.texi (Debugging IMAP): minor corrections + +2003-11-20 Reiner Steib + + * gnus.texi (Finding the Parent): nnml does supports fetching by + MID. + 2003-11-20 Simon Josefsson * gnus.texi (Debugging IMAP): Add. diff --git a/texi/gnus-ja.texi b/texi/gnus-ja.texi index 27f41e3..5a12f93 100644 --- a/texi/gnus-ja.texi +++ b/texi/gnus-ja.texi @@ -9016,11 +9016,10 @@ gnus でメールを読むことの有利な点は、単純なバグを素晴らしい不条理に置き ほとんどのメールバックエンドは @code{Message-ID} での取得が可能ですが、 あまり優雅な方法でやっているわけではありません。@code{nnmbox}, -@code{nnbabyl} および @code{nnmaildir} はどのグループからの記事も位置を -得ることができますが、@code{nnml}, @code{nnfolder} およ -び @code{nnimap} は現在のグループに投稿した記事の位置しか得る事ができま -せん。(その他のものは時間がかかりすぎます。) @code{nnmh} では全く不可能 -です。 +@code{nnbabyl}, @code{nnmaildir} および @code{nnml} はどのグループからの +記事も位置を得ることができますが、@code{nnfolder} と @code{nnimap} は現 +在のグループに投稿した記事の位置しか得る事ができません。(その他のものは +時間がかかりすぎます。) @code{nnmh} では全く不可能です。 @node Alternative Approaches @section 代替手段 @@ -15622,28 +15621,31 @@ ACL は Access Control List (使用制限一覧) の略です。@acronym{I @cindex IMAP debugging @cindex protocol dump (IMAP) -@acronym{IMAP} は少なくとも @acronym{NNTP} や @acronym{POP3} と比べると -複雑なプロトコルです。たぶんその理由のために、実装上のバグが無いとは言い -切れません。あなたが奇妙な振る舞いに出会ったとしたら、サーバーか Gnus の -どちらかにバグがある可能性があります。あなたが一般的なネットワーク・プロ -トコルに精通しているならば、Gnus とサーバーの間でやりとりされるプロトコ -ル・ダンプを読むことによって、おそらくいくつかの手掛かりを抽出することが -できるでしょう。精通していなくても、プロトコルのやりとりを IMAP に関する -バグ報告に含めることは、その問題の解決にとって重要かもしれません。 +@acronym{IMAP} は @acronym{NNTP} や @acronym{POP3} よりもっと複雑なプロ +トコルです。実装上のバグが無いとは言い切れないので、私たちは、すぐにそれ +らを直すために最善を尽くします。あなたが奇妙な振る舞いに出会ったとしたら、 +サーバーか gnus のどちらかにバグがある可能性があります。 + +あなたが一般的なネットワーク・プロトコルに精通しているならば、Gnus とサー +バーの間でやりとりされるプロトコル・ダンプを読むことによって、おそらくい +くつかの手掛かりを抽出することができるでしょう。精通していなくても、プロ +トコル・ダンプを IMAP に関するバグ報告に含めれば、その問題の解決にとって +重要なデータで私たちを助けます。したがって、gnus の IMAP バグを報告する +ときに、プロトコル・ダンプを含めることを強く奨励します。 @vindex imap-log -このプロトコル・ダンプは大きなバッファを作りがちなので、ディフォルトでは -作らないようになっています。作るようにするには、@code{imap-log} を以下の -ように切り換えて下さい: +プロトコル・ダンプは、それを有効にしているとたくさんのデータを生成するの +で、ディフォルトでは無効になっています。有効にするには、以下のよう +に @code{imap-log} を設定して下さい: @lisp (setq imap-log t) @end lisp -これは @code{imap.el} パッケージに、サーバーに送られるすべてのものと、す -べての受け取るものをダンプさせます。その出力は @samp{*imap-log*} という -バッファに格納されます。ときに @code{BAD} という札が付けられる、エラーメッ -セージを探して下さい。 +これは @code{imap.el} パッケージに、サーバーとのやりとりを何でも記録させ +ます。その記録は @samp{*imap-log*} というバッファに格納されます。ときと +して @code{BAD} という札が付けられる、エラーメッセージを探して下さい。で +も、バグを提出するときは、すべてのデータを含めるようにして下さい。 @node Other Sources @section その他のグループ源 diff --git a/texi/gnus.texi b/texi/gnus.texi index 57b083e..80eccc0 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -9622,10 +9622,10 @@ then ask Google if that fails: (nnweb "google" (nnweb-type google)))) @end lisp -Most of the mail back ends support fetching by @code{Message-ID}, but -do not do a particularly excellent job at it. That is, @code{nnmbox}, -@code{nnbabyl}, and @code{nnmaildir} are able to locate articles from -any groups, while @code{nnml}, @code{nnfolder}, and @code{nnimap} are +Most of the mail back ends support fetching by @code{Message-ID}, but do +not do a particularly excellent job at it. That is, @code{nnmbox}, +@code{nnbabyl}, @code{nnmaildir}, @code{nnml}, are able to locate +articles from any groups, while @code{nnfolder}, and @code{nnimap} are only able to locate articles that have been posted to the current group. (Anything else would be too time consuming.) @code{nnmh} does not support this at all. @@ -16437,30 +16437,34 @@ tool and should be used only if you are sure what the effects are. @cindex IMAP debugging @cindex protocol dump (IMAP) -@acronym{IMAP} is a complex protocol, at least compared to -@acronym{NNTP} or @acronym{POP3}. Perhaps for that reason, -implementation bugs are not unlikely. If you encounter an odd -behaviour, chances are that either the server or Gnus is buggy. If -you are familiar with network protocols in general, you will probably -be able to extract some clues from reading the protocol dump of the +@acronym{IMAP} is a complex protocol, more so than @acronym{NNTP} or +@acronym{POP3}. Implementation bugs are not unlikely, and we do our +best to fix them right away. If you encounter odd behaviour, chances +are that either the server or Gnus is buggy. + +If you are familiar with network protocols in general, you will +probably be able to extract some clues from the protocol dump of the exchanges between Gnus and the server. Even if you are not familiar -with network protocols, including the protocol exchange in -@acronym{IMAP}-related bug reports may be critical for solving the -problem. +with network protocols, when you include the protocol dump in +@acronym{IMAP}-related bug reports you are helping us with data +critical to solving the problem. Therefore, we strongly encourage you +to include the protocol dump when reporting IMAP bugs in Gnus. + @vindex imap-log -Because this protocol dump generates potentially large buffers, it is -not enabled by default. You can enable it by toggling @code{imap-log} -as follows: +Because the protocol dump, when enabled, generates lots of data, it is +disabled by default. You can enable it by setting @code{imap-log} as +follows: @lisp (setq imap-log t) @end lisp -This instructs the @code{imap.el} package to dump everything sent to -the server, and everything received from the server. The output is -stored in the buffer @samp{*imap-log*}. Look for error messages, -which sometimes are tagged with the keyword @code{BAD}. +This instructs the @code{imap.el} package to log any exchanges with +the server. The log is stored in the buffer @samp{*imap-log*}. Look +for error messages, which sometimes are tagged with the keyword +@code{BAD} - but when submitting a bug, make sure to include all the +data. @node Other Sources @section Other Sources