[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Reply-To: emacs-w3m@namazu.org, non-subscriber



このメーリングリストのメールには通常

Reply-To: emacs-w3m@xxxxxxxxxx

というヘッダーが付いてきます。でも、メーリングリストを講読してい
ない人 (non-subscriber) から来たメールが配送されるときは、

Reply-To: emacs-w3m@xxxxxxxxxx, non-subscriber

となり、そういうメールに対してメーリングリストを講読している人が
Reply-To を尊重するメイラーで返信すると、それらの二つのアドレス
が宛先に含まれます。これは一見合理的なのですが、ちょっと問題があ
るのです。

その返信がメーリングリストに配信されるときは

Reply-To: emacs-w3m@xxxxxxxxxx

というヘッダーが付きます。すると、この二通目の返信にさらに返信し
ても、最初の non-subscriber には届きません。また、non-subscriber
が受け取るメールに Reply-To は付いていないので、それを受け取った
non-subscriber がさらに返信するときには、往々にしてメーリングリ
ストのアドレスが宛先に含まれません。

この問題の最良の解は、メーリングリストのサーバーが、常にすべての
宛先を Reply-To ヘッダーに含めてしまうことではないでしょうか?
そんなことができるのかどうかわかりませんが。^^;;

次善の策として、それと似たことを Gnus にやらせるコードを書いてみ
ました。もっとスマートなやり方があるかもしれません。

(defun my-message-add-reply-to-emacs-w3m ()
  "Add a proper Reply-To header to the message sent to non-subscribers."
  (let ((cc (message-fetch-field "cc"))
	reply-to)
    (if (and message-reply-headers
	     cc
	     (setq cc (mail-extract-address-components cc t))
	     (not (cdr cc))
	     (equal "emacs-w3m@xxxxxxxxxx" (nth 1 (car cc)))
	     (gnus-buffer-live-p gnus-article-copy)
	     (save-excursion
	       (set-buffer gnus-article-copy)
	       (article-narrow-to-head)
	       (setq reply-to (message-fetch-field "reply-to"))))
	(progn
	  (goto-char (point-min))
	  (insert "Reply-To: " reply-to "\n")))))

(add-hook 'message-header-setup-hook
	  'my-message-add-reply-to-emacs-w3m)