From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/29298 Path: main.gmane.org!not-for-mail From: dsg@mitre.org (David S. Goldberg) Newsgroups: gmane.emacs.gnus.general Subject: Re: Small complaint about M-g Date: 23 Feb 2000 11:53:58 -0500 Sender: owner-ding@hpc.uh.edu Message-ID: References: <6eitzht09e.fsf@sloth.netpliance.net> NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1035165991 1945 80.91.224.250 (21 Oct 2002 02:06:31 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 21 Oct 2002 02:06:31 +0000 (UTC) Return-Path: Original-Received: from lisa.math.uh.edu (lisa.math.uh.edu [129.7.128.49]) by mailhost.sclp.com (Postfix) with ESMTP id 13FE6D051E for ; Wed, 23 Feb 2000 11:55:03 -0500 (EST) Original-Received: from sina.hpc.uh.edu (lists@Sina.HPC.UH.EDU [129.7.3.5]) by lisa.math.uh.edu (8.9.1/8.9.1) with ESMTP id KAB14350; Wed, 23 Feb 2000 10:54:33 -0600 (CST) Original-Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Wed, 23 Feb 2000 10:54:14 -0600 (CST) Original-Received: from mailhost.sclp.com (postfix@sclp3.sclp.com [204.252.123.139]) by sina.hpc.uh.edu (8.9.3/8.9.3) with ESMTP id KAA19616 for ; Wed, 23 Feb 2000 10:54:01 -0600 (CST) Original-Received: from smtpproxy1.mitre.org (mbunix.mitre.org [129.83.20.100]) by mailhost.sclp.com (Postfix) with ESMTP id D6566D051E for ; Wed, 23 Feb 2000 11:54:02 -0500 (EST) Original-Received: from avsrv1.mitre.org (avsrv1.mitre.org [129.83.20.58]) by smtpproxy1.mitre.org (8.9.3/8.9.3) with ESMTP id LAA13034 for ; Wed, 23 Feb 2000 11:54:00 -0500 (EST) Original-Received: from linus.mitre.org (linus.mitre.org [129.83.10.1]) by smtpsrv1.mitre.org (8.9.3/8.9.3) with ESMTP id LAA15841 for ; Wed, 23 Feb 2000 11:53:54 -0500 (EST) Original-Received: from blackbird.mitre.org (blackbird [129.83.65.14]) by linus.mitre.org (8.9.3/8.9.3) with ESMTP id LAA22603 for ; Wed, 23 Feb 2000 11:53:59 -0500 (EST) Original-Received: (from dsg@localhost) by blackbird.mitre.org (8.9.3/8.9.3) id LAA19561; Wed, 23 Feb 2000 11:53:59 -0500 (EST) X-Authentication-Warning: blackbird.mitre.org: dsg set sender to dsg@mitre.org using -f Mail-Copies-To: never Original-To: The Gnus Mailing List X-Face: GUaHTH@nS>[7,ME@-gYZ4#Wl{z"99k@[[Y8AcP0x1paqu.,z9,XSV1WI>{q3f6^e5(zrit <4fV&VHhmE`uidRqtmG27;si9&r;#KSF~E#$%W8w(xdp)H4tW=\2XOk~3=@oGqqpj;m4xf Ow;y26396&,34@9#~4;@*S;E0cq"LM9N(us4P%F(Nxis'Vvfm9?KufH;:Q$dMa-QWGLR&K d0`LJZE8xb*>^yN>b]_NcU:E=Zn\1=#/(OS2 In-Reply-To: Harry Putnam's message of "22 Feb 2000 19:56:03 -0800" Original-Lines: 43 User-Agent: Gnus/5.0804 (Gnus v5.8.4) XEmacs/21.1 (Biscayne) Precedence: list X-Majordomo: 1.94.jlt7 Xref: main.gmane.org gmane.emacs.gnus.general:29298 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:29298 > My original post was not looking for a way to `tick' articles. I like > the way gnus hides read articles after closing a group. What I > complained mildly about was gnus being so rowdy about doing a rescan > while inside a group. In that instance only, I may not want read > articles to disappear. It was that problem that Jussi's comments > addressed. I have often wanted the same thing and this thread got me to thinking how to do it. I've come up with this bit of advice around gnus-summary-rescan-group. It's slow; the re-marking from ticked to whatever was there before is noticeable, especially when there's lots of stuff in the summary, but it does seem to work. I don't know if it will work in an nnvirtual group since I get the impression that the virtual article numbers might change and I have no idea if it does the right thing in an auto-expire environment which I don't use. Also, it will lose any process-marks that existed previously. I can't find a good way to get around that. I can't use the stack of process-marks (gnus-summary-save/yank-process-marks) because that stack doesn't survive the invocation of gnus-summary-rescan-group and there's no reliable way to get a list of all process marked articles. gnus-summary-work-articles doesn't cut it 100% of the time and I'm not sure it's worth going through a lot of grief to figure it out correctly. So, I've decided I can live with that limitation. If someone wants to improve on this please do so and post it. (defadvice gnus-summary-rescan-group (around save-marks activate) (gnus-uu-mark-all) (let ((dsg-current-article gnus-current-article) (dsg-mark-list (mapcar '(lambda (n) (cons n (gnus-summary-article-mark n))) (gnus-uu-get-list-of-articles nil))) (dsg-work-articles (gnus-summary-work-articles nil))) (mapcar '(lambda (n) (gnus-summary-mark-article n ?!)) dsg-work-articles) ad-do-it (mapcar '(lambda (n) (gnus-summary-mark-article (car n) (cdr n))) dsg-mark-list) (gnus-summary-goto-article dsg-current-article))) -- Dave Goldberg Post: The Mitre Corporation\MS B325\202 Burlington Rd.\Bedford, MA 01730 Phone: 781-271-3887 Email: dsg@mitre.org