On 17 Feb 2004, at 06:08, Dallman Ross wrote:
You already have in that action line above everything you need.
"If LISTNAME exists, this is a list message. If LISTNAME
doesn't exist but a list is present in the To: or Cc: line,
it's a courtesy copy."
Granted, but that means generating a list of list addresses somewhere.
As it stands right now, if I subscribe to a new list, procmail keeps
up. I use the same exact .lists_procmailrc file for many different
users, because the recipes in it are completely transparent. I should
cache the list-post/reply addresses of the lists somewhere and then
grep on ^TO_ ?
COMMON_LISTS_OF_MINE = (foo|bar|procmail)
:0
* LISTNAME ?? ^^^^
* $ ^(^To|Cc):(.*\<)?$COMMON_LISTS_OF_MINE
{ HOST = fscking_courtesy_copy_grumble_grumble }
as I said though:
What I want to avoid is writing a recipe that is specific to the
specific mailing list I happen to be subscribed to at the present
moment. (The "Holy Grail" of duplicate message handling, perhaps?)
On 17 Feb 2004, at 07:46, Professional Software Engineering wrote:
Despite having the generic list identifier code, I still have per-list
rulesets, as messages from certain lists are subjected to additional
actions, and are processed in varying order - say, "clean" lists
versus "dirty" ones -- lists which support subscriber-only posting and
those which let any old moron (or spammer) fire a message off at them,
so despite a desire to streamline stuff, I still have a lot of
per-list code in my config.
Once LISTNAME is generated I do have a INCLUDERC on my list
subscription address (this one) to do things like add Reply-To: LIST
headers to lists that don't have them, or mark messages to a list I
archive as already read (unless my domain appears in the References),
but this is OK because I am willing to take special action for those
very few lists since they are lists I read the most (this one, for
example). In short, I don't mind having specific recipes for specific
lists, but trying to write a generic recipe that affects all my lists
and yet has to refer to each list specifically... well, that seems
wrong.
But most lists are set to send replies to the list and don't need
special processing.
I think the only solution I see without a COMMON_LISTS_OF_MINE sort of
solution is something like this:
[ LISTNAME stuff up here ]
:0
* LISTNAME ?? ^^^^
* -1
* 1^1 ^TO@
{
:0 fw
| formail -I"Status: RO"
:0:
dupemail
}
[ msgid.cache check ]
or something.
(not that I've tested that, and frankly, I suspect both the scoring and
the "^TO@" are wrong, c'ast la vie)
--
"Don't be nice. It's Creepy." Tendo Akane
_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail