Low-Level Threading
...................
`gnus-parse-headers-hook'
Hook run before parsing any headers.
`gnus-alter-header-function'
If non-`nil', this function will be called to allow alteration of
article header structures. The function is called with one
parameter, the article header vector, which it may alter in any
way. For instance, if you have a mail-to-news gateway which
alters the `Message-ID's in systematic ways (by adding prefixes
and such), you can use this variable to un-scramble the
`Message-ID's so that they are more meaningful. Here's one
example:
(setq gnus-alter-header-function 'my-alter-message-id)
(defun my-alter-message-id (header)
(let ((id (mail-header-id header)))
(when (string-match
"\\(<[^<>@]*\\)\\.?cygnus\\..*@\\([^<>@]*>\\)" id)
(mail-header-set-id
(concat (match-string 1 id) "@" (match-string 2 id))
header))))