Gnus Manual. Node: Washing Mail

PREVExpiring Mail UPGetting Mail NEXTDuplicates

6.3.8: Washing Mail

Mailers and list servers are notorious for doing all sorts of really, really stupid things with mail. ``Hey, RFC822 doesn't explicitly prohibit us from adding the string wE aRe ElItE!!!!!1!! to the end of all lines passing through our server, so let's do that!!!!1!'' Yes, but RFC822 wasn't designed to be read by morons. Things that were considered to be self-evident were not discussed. So. Here we are.

Case in point: The German version of Microsoft Exchange adds `AW: ' to the subjects of replies instead of `Re: '. I could pretend to be shocked and dismayed by this, but I haven't got the energy. It is to laugh.

Gnus provides a plethora of functions for washing articles while displaying them, but it might be nicer to do the filtering before storing the mail to disc. For that purpose, we have three hooks and various functions that can be put in these hooks.

nnmail-prepare-incoming-hook

This hook is called before doing anything with the mail and is meant for grand, sweeping gestures. Functions to be used include:

nnheader-ms-strip-cr

Remove trailing carriage returns from each line. This is default on Emacs running on MS machines.

nnmail-prepare-incoming-header-hook

This hook is called narrowed to each header. It can be used when cleaning up the headers. Functions that can be used include:

nnmail-remove-leading-whitespace

Clear leading white space that ``helpful'' listservs have added to the headers to make them look nice. Aaah.

nnmail-remove-list-identifiers

Some list servers add an identifier---for example, `(idm)'---to the beginning of all Subject headers. I'm sure that's nice for people who use stone age mail readers. This function will remove strings that match the nnmail-list-identifiers regexp, which can also be a list of regexp.

For instance, if you want to remove the `(idm)' and the `nagnagnag' identifiers:

(setq nnmail-list-identifiers
      '("(idm)" "nagnagnag"))
nnmail-remove-tabs

Translate all `TAB' characters into `SPACE' characters.

nnmail-prepare-incoming-message-hook

This hook is called narrowed to each message. Functions to be used include:

article-de-quoted-unreadable

Decode Quoted Readable encoding.

PREVExpiring Mail UPGetting Mail NEXTDuplicates