[Mew-dist 09478] Re: expanding shortname in Draft mode

Xin-Zhi Zheng 鄭心知 zhengxz at example.com
1999年 6月 26日 (土) 16:03:30 JST


>> [Mew-dist 09468] expanding shortname in Draft mode で
>> Kazu Yamamoto (山本和彦) (KY) <kazu at example.com> 様が書きました:

 KY> ...Draft モードでの alias の展開についてハックしました。...

さっそく使わせていただいていますm_O_m.


 KY> (3) shortname は登録されておらず、かつドメインが省略されている場合は、
 KY>     mew-mail-domain を補完する
 KY> 	→ オプションで補完を抑制できる

(A) Addrbook や .mew-alias があると,オプションでは 
    shortname 補完の抑制はできません.
    (∵ オプションを見る前に alias-get しているから)
    → とりあえず diff-A.

(B) Addrbook や .mew-alias があると,shortname の補完は 
    mew-mail-domain によるものと異なってくることがあります.
    (E.g., mew-mail-domain 以外が .mew-alias にある時)
    (∵ mew-mail-domain を使う前に alias-get してから)
    → ?(せっせと Addrbook に書いて循環補完を使う?)

 KY> (4) Foo <bar> の bar は shortname ではない。ドメインが省略されている場
 KY>     合は、mew-mail-domain を補完する
 KY> 	→ オプションで補完を抑制できる
 KY> 	→ Draft には Foo <bar at example.com> が残り、PGP には bar at example.com が渡される

PGP の仕組みまでよくわかっていませんので,bar が正規表現にマッ
チする shortname と同値のときに shortname 同様に抑制してはい
けないことがなければ
(∵ オプションで抑制可だから)
→ とりあえずさらに diff-B.

いずれにして,上記 (B) より C-cC-m (C-cC-c) だけでは 
To: shortname の補完と To: Foo <bar> の補完とで相違が生じる
場合があります.
→ ?(そういうもん?)


 KY> これで全員満足ですよね?

はい.ごめんなさいm_O_m:-)
「とりあえず diff-{A,B}」で大抵の場合十分満足に使っています.

--
鄭@東工大

-------------- next part --------------
--- mew-header.el.orig	Fri Jun 25 11:34:25 1999
+++ mew-header.el	Sat Jun 26 15:39:30 1999
@@ -356,8 +356,9 @@
     addr))
 
 (defun mew-addrstr-expand-alias (alias)
-  (if (and mew-addrbook-unexpand-regex
-	   (string-match mew-addrbook-unexpand-regex alias))
+  (if (or (not mew-addrbook-append-domain-p)
+          (and mew-addrbook-unexpand-regex
+	       (string-match mew-addrbook-unexpand-regex alias)))
       (list alias) ;; not expand
     (let ((addrs (mew-alias-get alias)))
       (setq addrs (mapcar (function mew-chop) (mew-split addrs ?,)))
-------------- next part --------------
--- mew-header.el.orig	Sat Jun 26 15:39:30 1999
+++ mew-header.el	Sat Jun 26 15:43:30 1999
@@ -349,7 +349,9 @@
 ;;
 
 (defun mew-addrstr-append-domain (addr)
-  (if mew-addrbook-append-domain-p
+  (if (and mew-addrbook-append-domain-p
+           (not (and mew-addrbook-unexpand-regex
+	             (string-match mew-addrbook-unexpand-regex addr))))
       (if (string-match "@" addr)
 	  addr
 	(concat addr "@" mew-mail-domain))


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