mime-edit.el

Katsumi Yamaoka yamaoka @ jpl.org
2004年 4月 23日 (金) 11:10:05 JST


こんにちは山岡です。

>>>>> In [emacs-mime-ja : No.01722]
>>>>>	SATO Jun <jun @ svgw.rd.casio.co.jp> wrote:

> J佐藤です。

> mh-eで添付ファイルを送ろうとしたらエラーになったの
> で、適当に修正してみました。

> # 最近のEmacsのmh-eはnmhじゃないとちゃんと動作しない
> # みたいなんですが、nmhの日本語パッチなんてのはどこ
> # かにあるんでしょうか?

mh-e は使わなくなって久しいのでよくわからないんですが、ちょっと
試した限り問題無いようでした。

> --- mime-edit.el.orig	Fri Nov 24 21:32:57 2000
> +++ mime-edit.el	Fri Apr 23 09:54:44 2004
> @@ -2099,8 +2099,10 @@
>  	  (mime-delete-field "Content-Type")
>  	  (mime-delete-field "Content-Transfer-Encoding"))
>  	;; Then, insert Content-Type and Content-Transfer-Encoding fields.
> -	(mail-position-on-field "Content-Type")
> -	(insert contype)
> +	(if (string= "" (mh-get-header-field "Content-Type"))
> +	    (progn
> +	      (mail-position-on-field "Content-Type")
> +	      (insert contype)))
>  	(if encoding
>  	    (progn
>  	      (mail-position-on-field "Content-Transfer-Encoding")

これは、すでに Content-Type が存在している場合に、フィールドの末
尾に `contype' が追加されてしまうのを防ぐ対策だと思うのですが、
この直前に (mime-delete-field "Content-Type") が行なわれています。
それがうまく機能しないとしたら draft バッファにおける
mail-header-separator の値が不適切な場合が考えられるのですが、い
かがですか?  emh-setup.el では "--------" という固定値を与えてい
る一方、mime-edit.el にはこんなコメントがあります。

;; In case of MH-E, you need the following hook definition:
;;
;; (add-hook 'mh-letter-mode-hook
;;           (function
;;            (lambda ()
;;              (turn-on-mime-edit)
;;              (make-local-variable 'mail-header-separator)
;;              (setq mail-header-separator "--------")
;;              ))))

ちなみにこれは mh-mail-header-separator の値でもありますが、どち
らも素の MH の個人設定を受け継がせないといけないんですよね(?)。

;; そもそも、すでに Content-Type が存在している場合というのが想
;; 像できないので、外しているかもしれませんが。

> @@ -2558,7 +2560,7 @@
>  (defun mime-edit-pgp-enclose-buffer ()
>    (let ((beg (save-excursion
>  	       (goto-char (point-min))
> -	       (if (search-forward (concat "\n" mail-header-separator "\n"))
> +	       (if (search-forward (concat "\n" mail-header-separator "\n") nil t)
>  		   (match-end 0)
>  		 )))
>  	)

この元のコードも、そこに (concat "\n" mail-header-separator "\n")
が常に存在していることを想定しているものだとすれば、やはり
mail-header-separator の値が合っていないのではないかと疑ってしま
います。
-- 
Katsumi Yamaoka <yamaoka @ jpl.org>




More information about the Emacs-mime-ja mailing list