[mew-dist 28429] To:にドメイン名を書かない場合の補完

FUKANO Akihiro emacs at example.com
2008年 5月 19日 (月) 14:16:03 JST


to: mew-dist

深野と申します。
ソースやドキュメント等を検索したのですが、分からなかったので、どなたか、教えてください。

やりたいこと:
     To: や Cc:  のアドレスで、@以降のドメイン名を書かない(ユーザ名だけしか書かない)
     ときに、ドメイン名をアドレスブックから補完するのを止めたい。

状況の例:
     username at example.com に送信したことがある場合

To:  username
Subject: hoge
From: Comment <user-a at example.com>
X-Mailer: Mew version 5.2.55 on Emacs 22.1 / Mule 5.0 (SAKAKI)

Draftモードで、 C-cC-m して、queue に入ったときに、

To:  username at example.com
Subject: hoge
From: Comment <user-a at example.com>
X-Mailer: Mew version 5.2.55 on Emacs 22.1 / Mule 5.0 (SAKAKI)

送信したことのあるアドレス、username at example.com が補完される。


調べた内容:

ソースを調べて、mew-vars.el に、補完されないオプション mew-addrbook-append-domain-p
があるようなので、nil を設定しても、補完されてしまいます。

mew-vars.el から引用
(defcustom mew-addrbook-append-domain-p t
 "If non-nil, addresses, which do not have domain part in a header,
will be appended (mew-mail-domain) when composing."
 :group 'mew-addrbook
 :type 'boolean)


あと、近い機能では、mew-encode.el に、mew-mail-domain の値を
補完する関数があり、アドレスブック等にない場合、
mew-draft-append-domain-p が nil の場合、エラーになり、
Draftモードになります。


mew-encode.el の引用
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;; To:, Cc:
;;;

(defvar mew-draft-append-domain-p t)

(defun mew-draft-append-domain (addr)
 (if (string-match "@" addr)
     addr
   (if mew-draft-append-domain-p
       (concat addr "@" (mew-mail-domain (mew-tinfo-get-case)))
     (throw 'jump addr))))


--
深野哲洋



Mew-dist メーリングリストの案内