From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/13916 Path: main.gmane.org!not-for-mail From: Wes Hardaker Newsgroups: gmane.emacs.gnus.general Subject: new agent feature: catchup undownloadable. Date: 11 Feb 1998 10:47:22 -0800 Organization: U.C.Davis, Information Technology - D.C.A.S. Sender: owner-ding@hpc.uh.edu Message-ID: NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII X-Trace: main.gmane.org 1035153195 11855 80.91.224.250 (20 Oct 2002 22:33:15 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sun, 20 Oct 2002 22:33:15 +0000 (UTC) Return-Path: Original-Received: from xemacs.org (xemacs.cs.uiuc.edu [128.174.252.16]) by altair.xemacs.org (8.8.8/8.8.8) with ESMTP id MAA03142 for ; Wed, 11 Feb 1998 12:11:50 -0800 Original-Received: from gizmo.hpc.uh.edu (gizmo.hpc.uh.edu [129.7.102.31]) by xemacs.org (8.8.5/8.8.5) with ESMTP id OAA16710 for ; Wed, 11 Feb 1998 14:08:31 -0600 (CST) Original-Received: from sina.hpc.uh.edu (sina.hpc.uh.edu [129.7.3.5]) by gizmo.hpc.uh.edu (8.7.6/8.7.3) with ESMTP id OAN14357; Wed, 11 Feb 1998 14:44:28 -0600 Original-Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Wed, 11 Feb 1998 14:07:08 -0600 (CST) Original-Received: from claymore.vcinet.com (claymore.vcinet.com [208.205.12.23]) by sina.hpc.uh.edu (8.7.3/8.7.3) with SMTP id OAA15758 for ; Wed, 11 Feb 1998 14:06:36 -0600 (CST) Original-Received: (qmail 5807 invoked by uid 504); 11 Feb 1998 20:06:31 -0000 Original-Received: (qmail 5802 invoked from network); 11 Feb 1998 20:06:29 -0000 Original-Received: from des.castles.com (hardaker@208.214.166.35) by claymore.vcinet.com with SMTP; 11 Feb 1998 20:06:29 -0000 Original-Received: (from hardaker@localhost) by des.castles.com (8.8.6/8.8.6) id MAA09204; Wed, 11 Feb 1998 12:01:42 -0800 Original-To: ding@gnus.org X-Face: #qW^}a%m*T^{A:Cp}$R\"38+d}41-Z}uU8,r%F#c#s:~Nzp0G9](s?,K49KJ]s"*7gvRgA SrAvQc4@/}L7Qc=w{)]ACO\R{LF@S{pXfojjjGg6c;q6{~C}CxC^^&~(F]`1W)%9j/iS/ IM",B1M.?{w8ckLTYD'`|kTr\i\cgY)P4 X-url: http://dcas.ucdavis.edu/~hardaker X-Mailer: Quassia Gnus v0.23/XEmacs 20.3 - "Vatican City" Original-Xref: des.castles.com queue:13 Original-Lines: 156 Precedence: list X-Majordomo: 1.94.jlt7 Xref: main.gmane.org gmane.emacs.gnus.general:13916 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:13916 Patch below to make the regular catchup routines catch up undownloadable subjects as well (I get tired of having to type 'J c' before 'c'. Side effect: find-next-subject finds undownloadable ones too (it probably should, since they are technically 'unread'. Just because you aren't able to read them doesn't mean you don't want to go there to mark it for later downloading). -- "Ninjas aren't dangerous. They're more afraid of you than you are of them." Index: gnus-sum.el =================================================================== RCS file: /home/hardaker/src/cvsroot/qgnus/gnus-sum.el,v retrieving revision 1.1.1.9 retrieving revision 1.5 diff -c -r1.1.1.9 -r1.5 *** gnus-sum.el 1998/02/11 17:52:07 1.1.1.9 --- gnus-sum.el 1998/02/11 18:44:23 1.5 *************** *** 766,771 **** --- 766,776 ---- The function is called with one parameter, the article header vector, which it may alter in any way.") + (defcustom gnus-next-unread-finds-undownloadable t + "*If non-nil, finding the next unread article finds undownloadables ones too." + :group 'gnus-summary-various + :type 'boolean) + ;;; Internal variables (defvar gnus-scores-exclude-files nil) *************** *** 2032,2037 **** --- 2037,2045 ---- (defmacro gnus-data-pseudo-p (data) `(consp (nth 3 ,data))) + (defmacro gnus-data-undownloaded-p (data) + `(= (nth 1 ,data) gnus-undownloaded-mark)) + (defmacro gnus-data-find (number) `(assq ,number gnus-newsgroup-data)) *************** *** 3872,3889 **** (defun gnus-articles-to-read (group &optional read-all) ;; Find out what articles the user wants to read. ! (let* ((articles ;; Select all articles if `read-all' is non-nil, or if there ;; are no unread articles. ! (if (or read-all ! (and (zerop (length gnus-newsgroup-marked)) ! (zerop (length gnus-newsgroup-unreads))) ! (eq (gnus-group-find-parameter group 'display) ! 'all)) ! (gnus-uncompress-range (gnus-active group)) (sort (append gnus-newsgroup-dormant gnus-newsgroup-marked (copy-sequence gnus-newsgroup-unreads)) ! '<))) (scored-list (gnus-killed-articles gnus-newsgroup-killed articles)) (scored (length scored-list)) (number (length articles)) --- 3880,3907 ---- (defun gnus-articles-to-read (group &optional read-all) ;; Find out what articles the user wants to read. ! (let* ((display (gnus-group-find-parameter group 'display)) ! tmparticles ! (articles ;; Select all articles if `read-all' is non-nil, or if there ;; are no unread articles. ! (cond ! ((or read-all ! (and (zerop (length gnus-newsgroup-marked)) ! (zerop (length gnus-newsgroup-unreads))) ! (eq display 'all)) ! (gnus-uncompress-range (gnus-active group))) ! ((eq display 'not-expired) ! (setq articles (gnus-uncompress-range (gnus-active group))) ! (setq tmparticles gnus-newsgroup-expirable) ! (while (not (null tmparticles)) ! (setq articles (delq (car tmparticles) articles)) ! (setq tmparticles (cdr tmparticles))) ! articles) ! (t (sort (append gnus-newsgroup-dormant gnus-newsgroup-marked (copy-sequence gnus-newsgroup-unreads)) ! '<)))) (scored-list (gnus-killed-articles gnus-newsgroup-killed articles)) (scored (length scored-list)) (number (length articles)) *************** *** 4761,4767 **** (if unread (progn (while arts ! (when (gnus-data-unread-p (car arts)) (setq result (car arts) arts nil)) (setq arts (cdr arts))) --- 4779,4788 ---- (if unread (progn (while arts ! (when (or ! (gnus-data-unread-p (car arts)) ! (and gnus-next-unread-finds-undownloadable ! (gnus-data-undownloaded-p (car arts)))) (setq result (car arts) arts nil)) (setq arts (cdr arts))) *************** *** 4784,4790 **** (if unread (progn (while arts ! (when (gnus-data-unread-p (car arts)) (setq result (car arts) arts nil)) (setq arts (cdr arts))) --- 4805,4814 ---- (if unread (progn (while arts ! (when (or ! (gnus-data-unread-p (car arts)) ! (and gnus-next-unread-finds-undownloadable ! (gnus-data-undownloaded-p (car arts)))) (setq result (car arts) arts nil)) (setq arts (cdr arts))) *************** *** 5386,5392 **** (t (let ((data gnus-newsgroup-data)) (while (and data ! (not (gnus-data-unread-p (car data)))) (setq data (cdr data))) (when data (goto-char (gnus-data-pos (car data))) --- 5410,5419 ---- (t (let ((data gnus-newsgroup-data)) (while (and data ! (not (or ! (gnus-data-unread-p (car data)) ! (and gnus-next-unread-finds-undownloadable ! (gnus-data-undownloaded-p (car data)))))) (setq data (cdr data))) (when data (goto-char (gnus-data-pos (car data)))