message: Mailing Lists
1.11 Mailing Lists
==================
Sometimes while posting to mailing lists, the poster needs to direct
followups to the post to specific places. The Mail-Followup-To (MFT)
was created to enable just this. Three example scenarios where this is
useful:
• A mailing list poster can use MFT to express that responses should
be sent to just the list, and not the poster as well. This will
happen if the poster is already subscribed to the list.
• A mailing list poster can use MFT to express that responses should
be sent to the list and the poster as well. This will happen if
the poster is not subscribed to the list.
• If a message is posted to several mailing lists, MFT may also be
used to direct the following discussion to one list only, because
discussions that are spread over several lists tend to be
fragmented and very difficult to follow.
Gnus honors the MFT header in other’s messages (i.e., while following
up to someone else’s post) and also provides support for generating
sensible MFT headers for outgoing messages as well.
1.11.1 Composing a correct MFT header automagically
---------------------------------------------------
The first step in getting Gnus to automagically generate a MFT header in
posts you make is to give Gnus a list of the mailing lists addresses you
are subscribed to. You can do this in more than one way. The following
variables would come in handy.
‘message-subscribed-addresses’
This should be a list of addresses the user is subscribed to. Its
default value is ‘nil’. Example:
(setq message-subscribed-addresses
'("ding@gnus.org" "bing@noose.org"))
‘message-subscribed-regexps’
This should be a list of regexps denoting the addresses of mailing
lists subscribed to. Default value is ‘nil’. Example: If you want
to achieve the same result as above:
(setq message-subscribed-regexps
'("\\(ding@gnus\\)\\|\\(bing@noose\\)\\.org")
‘message-subscribed-address-functions’
This can be a list of functions to be called (one at a time!!) to
determine the value of MFT headers. It is advisable that these
functions not take any arguments. Default value is ‘nil’.
There is a pre-defined function in Gnus that is a good candidate
for this variable. ‘gnus-find-subscribed-addresses’ is a function
that returns a list of addresses corresponding to the groups that
have the ‘subscribed’ (Group Parameters (gnus)Group
Parameters.) group parameter set to a non-‘nil’ value. This is how
you would do it.
(setq message-subscribed-address-functions
'(gnus-find-subscribed-addresses))
‘message-subscribed-address-file’
You might be one organized human freak and have a list of addresses
of all subscribed mailing lists in a separate file! Then you can
just set this variable to the name of the file and life would be
good.
You can use one or more of the above variables. All their values are
“added” in some way that works :-)
Now you are all set. Just start composing a message as you normally
do. And just send it; as always. Just before the message is sent out,
Gnus’ MFT generation thingy kicks in and checks if the message already
has a MFT field. If there is one, it is left alone. (Except if it’s
empty; in that case, the field is removed and is not replaced with an
automatically generated one. This lets you disable MFT generation on a
per-message basis.) If there is none, then the list of recipient
addresses (in the To: and Cc: headers) is checked to see if one of them
is a list address you are subscribed to. If none of them is a list
address, then no MFT is generated; otherwise, a MFT is added to the
other headers and set to the value of all addresses in To: and Cc:
Hm. “So”, you ask, “what if I send an email to a list I am not
subscribed to? I want my MFT to say that I want an extra copy.” (This
is supposed to be interpreted by others the same way as if there were no
MFT, but you can use an explicit MFT to override someone else’s
to-address group parameter.) The function
‘message-generate-unsubscribed-mail-followup-to’ might come in handy.
It is bound to ‘C-c C-f C-a’ by default. In any case, you can insert a
MFT of your own choice; ‘C-c C-f C-m’ (‘message-goto-mail-followup-to’)
will help you get started.
1.11.2 Honoring an MFT post
---------------------------
When you followup to a post on a mailing list, and the post has a MFT
header, Gnus’ action will depend on the value of the variable
‘message-use-mail-followup-to’. This variable can be one of:
‘use’
Always honor MFTs. The To: and Cc: headers in your followup will
be derived from the MFT header of the original post. This is the
default.
‘nil’
Always dishonor MFTs (just ignore the darned thing)
‘ask’
Gnus will prompt you for an action.
It is considered good netiquette to honor MFT, as it is assumed the
fellow who posted a message knows where the followups need to go better
than you do.