From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/37862 Path: main.gmane.org!not-for-mail From: Harry Putnam Newsgroups: gmane.emacs.gnus.general Subject: Prevent B c/B m from createing dups in target group Date: 17 Aug 2001 08:40:14 -0700 Message-ID: NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1035173541 17827 80.91.224.250 (21 Oct 2002 04:12:21 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 21 Oct 2002 04:12:21 +0000 (UTC) Return-Path: Return-Path: Original-Received: (qmail 2351 invoked from network); 17 Aug 2001 15:40:17 -0000 Original-Received: from mail.networkone.net (209.144.112.246) by gnus.org with SMTP; 17 Aug 2001 15:40:17 -0000 Original-Received: (qmail 429 invoked from network); 17 Aug 2001 15:40:16 -0000 Original-Received: from unknown (HELO reader.local.lan) (209.144.117.151) by mail.networkone.net with SMTP; 17 Aug 2001 15:40:16 -0000 Original-Received: (from reader@localhost) by reader.local.lan (8.11.2/8.11.0) id f7HFeEs11513; Fri, 17 Aug 2001 08:40:14 -0700 X-Authentication-Warning: reader.local.lan: reader set sender to reader@newsguy.com using -f Original-To: ding@gnus.org User-Agent: Gnus/5.090003 (Oort Gnus v0.03) Emacs/21.0.104 Original-Lines: 53 Xref: main.gmane.org gmane.emacs.gnus.general:37862 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:37862 [ ALERT Repost from gnu.emacs.gnus - possible windbag length ] There are those of us who do a fair amount of copying of messages from one group to another. Maybe editing beforehand or maybe not. I keep quite a few messages that I have added keywords header to in such groups as nnml:t.security, or nnml:t.networking. These groups catch copies of posts or mail I thought to be particularly pertinent to the subject and wanted to save for later reference. Some times I edit them sometimes not. Some are whole threads that were copied a piece at a time as the thread was developing. Inevitabley there comes a point where you've forgotten what has been copied and what not. I found as many as four layers of copies in some groups. Partly due to absentmindedness but also there is no built in functionality in gnus to prevent this. Near as I can tell. I've often thought to try to figure out how to make gnus compare a message ID or group of messages ids to those already in the group. Most often (in my case) this would not be large numbers. Probably below 200 in nearly every case. Some kind of hook to run when `B c' or `B m' is being used that would initiate a function that took the message ID of message under point or messages marked with # and compared each message id to those in the group. I'd like to see a message that tells me some of these are duplicates and offers to move only the unique ones or to go ahead with the dups as I wish. Remberering from 4-5 years ago with gnus-agents' name sake Forte agent, this was a feature in Forte agent. Being generally lisp impaired, what I'm asking for here is general outline of things to look into to get an understanding of what has to happen to create this kind of functionality. What functions to hook into. In general terms, how to get started coding something like this. I can image writing such stuff in awk, not even very difficult in plain shell scripting with korn/bash arrays and for loops. But have no clue how to pass the message-ids to such scripting and imagine it would be smarter to use lisp functions for the tasks all the way through. Maybe no more complicated than telling gnus to keep a Message-ID cache on per group basis, then code a comparison routine that gets called by the user or is hooked into `B c', `B m'. Any tips to get started or places to start po[ou]ring(?) over the code will be appreciated.