gnus: Low-Level Threading
3.9.1.4 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))))