From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/62098 Path: news.gmane.org!not-for-mail From: Katsumi Yamaoka Newsgroups: gmane.emacs.gnus.general Subject: Re: gnus-summary-wide-reply-with-original ignores following Froms Date: Mon, 27 Feb 2006 16:29:22 +0900 Organization: Emacsen advocacy group Message-ID: References: <87lkx72blh.fsf@jidanni.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: sea.gmane.org 1141025586 18495 80.91.229.2 (27 Feb 2006 07:33:06 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 27 Feb 2006 07:33:06 +0000 (UTC) Cc: Dan Jacobson Original-X-From: ding-owner+m10626@lists.math.uh.edu Mon Feb 27 08:33:03 2006 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from malifon.math.uh.edu ([129.7.128.13]) by ciao.gmane.org with esmtp (Exim 4.43) id 1FDcsI-0005KR-3Z for ding-account@gmane.org; Mon, 27 Feb 2006 08:32:54 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu ident=lists) by malifon.math.uh.edu with smtp (Exim 3.20 #1) id 1FDcsD-00035Z-00; Mon, 27 Feb 2006 01:32:49 -0600 Original-Received: from nas02.math.uh.edu ([129.7.128.40]) by malifon.math.uh.edu with esmtp (Exim 3.20 #1) id 1FDcpA-00035R-00 for ding@lists.math.uh.edu; Mon, 27 Feb 2006 01:29:40 -0600 Original-Received: from quimby.gnus.org ([80.91.224.244]) by nas02.math.uh.edu with esmtp (Exim 4.52) id 1FDcp6-00062V-Em for ding@lists.math.uh.edu; Mon, 27 Feb 2006 01:29:39 -0600 Original-Received: from washington.hostforweb.net ([66.225.201.13]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1FDcp3-0001DA-00 for ; Mon, 27 Feb 2006 08:29:33 +0100 Original-Received: from [205.234.185.198] (port=34735 helo=mail.jpl.org) by washington.hostforweb.net with esmtpa (Exim 4.52) id 1FDcqQ-0002mI-Eb; Mon, 27 Feb 2006 01:30:58 -0600 Original-To: ding@gnus.org X-Face: #kKnN,xUnmKia.'[pp`;Omh}odZK)?7wQSl"4o04=EixTF+V[""w~iNbM9ZL+.b*_CxUmFk B#Fu[*?MZZH@IkN:!"\w%I_zt>[$nm7nQosZ<3eu;B:$Q_:p!',P.c0-_Cy[dz4oIpw0ESA^D*1Lw= L&i*6&( User-Agent: Gnus/5.110004 (No Gnus v0.4) Emacs/22.0.50 (gnu/linux) Cancel-Lock: sha1:mUUzWbhXgl1jHAJTo3li0p5xJHM= X-Hashcash: 1:20:060227:ding@gnus.org::wFuIXO8K+k21ZFyH:00002cNW X-Hashcash: 1:20:060227:jidanni@jidanni.org::CSfJI1wXNTXdz/Ws:0000000000000000000000000000000000000000000YeE X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - washington.hostforweb.net X-AntiAbuse: Original Domain - gnus.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - jpl.org X-Source: X-Source-Args: X-Source-Dir: X-Spam-Score: -2.5 (--) Precedence: bulk Original-Sender: ding-owner@lists.math.uh.edu Xref: news.gmane.org gmane.emacs.gnus.general:62098 Archived-At: --=-=-= >>>>> In Reiner Steib wrote: > On Mon, Jan 23 2006, Dan Jacobson wrote: >> I use 2SW, but the From of the 2nd message is not put into the To list. >> gnus-version: "No Gnus v0.4" > Confirmed. Could someone please investigate? I attached a patch for the latest Gnus CVS trunk. Could you test it with the `SV' command rather than the `SW' command? It seems that the `SW' (wide reply) command has not been designed to gather recipients in all articles to be replied. Instead, the `SV' (very wide reply) command seems to have aimed to do that. However, it has not been achieved, and I think there's no chance of succeeding in the present way[1] either. If I don't misunderstand the difference between `SW' and `SV', the way of my patch will break the deadlock, and will make it possible to integrate `SW' and `SV'. Though, so far I don't have an idea to make `message-widen-reply' and `message-insert-wide-reply' work with several articles as well, and I also don't have an idea of how to make the References header for several articles to be replied eitgher. [1] When performing `very wide reply', `gnus-summary-reply' gathers headers of all articles into a header of a reply message, and then `message-get-reply-headers' (or possibly `message-wide-reply-to-function') parses it. Here's a patch: * gnus-msg.el (gnus-summary-reply): Make recipients very wide for very wide reply. --=-=-= Content-Type: text/x-patch Content-Disposition: inline --- gnus-msg.el~ 2006-02-08 05:42:05 +0000 +++ gnus-msg.el 2006-02-27 07:27:31 +0000 @@ -1084,31 +1084,60 @@ (car yank))) (gnus-article-reply (or article (gnus-summary-article-number))) (gnus-article-yanked-articles yank) - (headers "")) + headers) ;; Stripping headers should be specified with mail-yank-ignored-headers. (when yank (gnus-summary-goto-subject article)) (gnus-setup-message (if yank 'reply-yank 'reply) - (if (not very-wide) - (gnus-summary-select-article) - (dolist (article very-wide) - (gnus-summary-select-article nil nil nil article) - (save-excursion - (set-buffer (gnus-copy-article-buffer)) - (gnus-msg-treat-broken-reply-to) - (save-restriction - (message-narrow-to-head) - (setq headers (concat headers (buffer-string))))))) + (cond ((not very-wide) + (gnus-summary-select-article)) + (message-wide-reply-to-function + (dolist (article very-wide) + (gnus-summary-select-article nil nil nil article) + (save-excursion + (set-buffer (gnus-copy-article-buffer)) + (gnus-msg-treat-broken-reply-to) + (save-restriction + (message-narrow-to-head) + (setq headers (concat headers (buffer-string))))))) + (t ;; (and very-wide (not message-wide-reply-to-function)) + (let (header recipients) + (while very-wide + (gnus-summary-select-article nil nil nil (pop very-wide)) + (with-current-buffer (gnus-copy-article-buffer) + (setq headers (message-get-reply-headers t)) + (while headers + (if (setq header (assq (caar headers) recipients)) + (setcdr header (concat (cdr header) ", " + (cdar headers))) + (push (car headers) recipients)) + (setq headers (cdr headers))))) + ;; Remove duplicates. + (let ((message-use-mail-followup-to 'use) + (message-wide-reply-confirm-recipients nil)) + (mm-with-multibyte-buffer + (while recipients + (erase-buffer) + (insert "To: " (cdar recipients) "\n") + (push (cons (car (pop recipients)) + (mapconcat 'cdr + (message-get-reply-headers t) + ", ")) + headers))))))) (set-buffer (gnus-copy-article-buffer)) (gnus-msg-treat-broken-reply-to gnus-msg-force-broken-reply-to) (save-restriction (message-narrow-to-head) - (when very-wide + (when (stringp headers) (erase-buffer) (insert headers)) (goto-char (point-max))) (mml-quote-region (point) (point-max)) - (message-reply nil wide) + (let ((message-wide-reply-to-function + (if (consp headers) + `(lambda nil ',(nreverse headers)) + message-wide-reply-to-function))) + (message-reply nil wide)) (when yank (gnus-inews-yank-articles yank)) (gnus-summary-handle-replysign))))) --=-=-=--