From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/66496 Path: news.gmane.org!not-for-mail From: jidanni@jidanni.org Newsgroups: gmane.emacs.gnus.general Subject: introducing Per-Group Fetch Intervals Date: Sat, 15 Mar 2008 10:59:45 +0800 Message-ID: <877ig4pu8u.fsf_-_@jidanni.org> References: <86iqzuvhax.fsf@lifelogs.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1205550081 2240 80.91.229.12 (15 Mar 2008 03:01:21 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 15 Mar 2008 03:01:21 +0000 (UTC) To: ding@gnus.org Original-X-From: ding-owner+M14985@lists.math.uh.edu Sat Mar 15 04:01:49 2008 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.50) id 1JaMea-0004p4-Ow for ding-account@gmane.org; Sat, 15 Mar 2008 04:01:49 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1JaMcw-0000Lw-OS; Fri, 14 Mar 2008 22:00:06 -0500 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1JaMcu-0000Ld-0m for ding@lists.math.uh.edu; Fri, 14 Mar 2008 22:00:04 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtp (Exim 4.67) (envelope-from ) id 1JaMco-0000No-3F for ding@lists.math.uh.edu; Fri, 14 Mar 2008 22:00:03 -0500 Original-Received: from lax-green-bigip-5.dreamhost.com ([208.113.200.5] helo=blingymail-a2.g.dreamhost.com) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1JaMcu-0004dP-00 for ; Sat, 15 Mar 2008 04:00:04 +0100 Original-Received: from jidanni1 (122-127-41-142.dynamic.hinet.net [122.127.41.142]) by blingymail-a2.g.dreamhost.com (Postfix) with ESMTP id ADF7A404B5 for ; Fri, 14 Mar 2008 19:59:50 -0700 (PDT) X-Spam-Score: -0.5 (/) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:66496 Archived-At: Gentlemen, it would just be a http://en.wikipedia.org/wiki/Small_matter_of_programming to utilize "technology" similar to (info "(gnus)Group Timestamp") to implement per-group fetch intervals. (Note however that Group Timestamps track when YOU last READ a group, not when GNUS last FETCHED a group, which I am talking about here.) One could set each per-group fetch interval just the same way one sets group levels currently, in units of seconds, or in sec,min,hours,days,etc. However per-group fetch intervals would give a much finer control than group levels. Indeed, one could even use both at the same time. The per-group fetch intervals could even be as fancy as WWWOFFLE: Refresh [newsgroup] when the following four conditions are all true: The month is: + [_] January + [_] February... The day of the month is: (default: any day, example: 1,3,5-10) The day of the week is: + [_] Sunday + [_] Monday... The hour of the day (24hr clock) is: (default: once per day, example: 6,9-18,20) "I'm only interested in reading the hurricane news group during the hurricane season." "The Holmesian Report only comes out on Wednesdays. No use in checking other times." "I hate that grinding sound my computer makes when getting nnrss groups. Wouldn't once a day be enough for them? Sure slows down checking my email. Don't tell me to put them on a different group level, as I would surely forget about them." How would per-group fetch intervals work? Well, when the user presses "g" (gnus-group-get-new-news), for each group, we see if the time of last fetching of this group + this group's per-group fetch interval < the current time. If so, then we fetch the group and update its timestamp. If not, then we don't fetch the group: if there were 38 unread articles in that group before we hit "g", there will be 38 after. (gnus-group-get-new-news 'ignore-all-fetch-intervals) would give the behavior of the current "g" key. TZ> If the functionality you describe is added, it should be optional. Yes Ted, the default fetch interval for each group would be 1 second. (0 seconds means never fetch: "I'm bored with the Florentine architecture newsgroup, and wish to get no new articles, but there's a couple articles I haven't finished reading or whatever...") Implementors: please remember to add a new item to gnus-group-line-format for the per-group fetch intervals. Anyways, glad everybody likes my idea. Be sure to have the code on my desk by next week. Over and out.