[mew-dist 22140] Re: text/plainでbase64な添付ファイルの保存

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2002年 10月 30日 (水) 19:10:27 JST


From: Hideyuki SHIRAI (白井秀行) <shirai at example.com> 曰く
Subject: [mew-dist 22137] Re: text/plainでbase64な添付ファイルの保存
Message-ID: <20021030.172255.126141380.shirai at example.com>
Date: Wed, 30 Oct 2002 17:22:55 +0900 (JST)

> > > これを改行コードも変えずに、つまりbase64のデコードだけをした
> > > そのままの状態で保存する方法はないでしょうか。
> 
> これだと、パッチの前の
> 
>        (mew-insert-message fld msg mew-cs-text-for-read nil)
>        (mew-dinfo-set limit 'no-cs-conv t alt)
>        (mew-decode-for-edit)
> 
> の部分で、すでに text の改行コードは保存されないのではないでしょ
> うか。
> 
> # と、この前ここまで考えて面倒くさそうだからやめたのでした。
> 
> だけど、以前は binary を指定すると emacs-mule で出力されていまし
> たが、それが直るため、パッチ自体は有効だと思います。

かずさんのパッチ+以下のパッチでどうでしょうか。

## なにも指定しなくても、そのままの文字コード+改行コードで出力
## されるようになりますけど。

-- 
白井秀行 (mailto:shirai at example.com)

Index: mew-decode.el
===================================================================
RCS file: /cvsroot/shirai/mew/mew/mew-decode.el,v
retrieving revision 1.64
diff -u -r1.64 mew-decode.el
--- mew-decode.el	29 Aug 2002 00:45:05 -0000	1.64
+++ mew-decode.el	30 Oct 2002 10:05:30 -0000
@@ -459,7 +459,8 @@
 	    ;; Emacs 20
 	    (setq decoded (base64-decode-region beg (point-max)))
 	  (error (setq decoded nil))) ;; Emacs 21
-	(when (and decoded linebasep)
+	(when (and decoded linebasep
+		   (not (eq (mew-dinfo-get-decode-text) 'keep-lf)))
 	  (goto-char beg)
 	  (mew-crlf-to-lf)))
       ;; base64-decode-region may fail if garbage exists.
Index: mew-edit.el
===================================================================
RCS file: /cvsroot/shirai/mew/mew/mew-edit.el,v
retrieving revision 1.79
diff -u -r1.79 mew-edit.el
--- mew-edit.el	30 Oct 2002 09:46:28 -0000	1.79
+++ mew-edit.el	30 Oct 2002 10:05:30 -0000
@@ -253,7 +253,7 @@
        (set-buffer buf)
        (mew-erase-buffer)
        (mew-insert-message fld msg mew-cs-text-for-read nil)
-       (mew-dinfo-set limit 'no-cs-conv t alt)
+       (mew-dinfo-set limit 'keep-lf t alt)
        (mew-decode-for-edit)
        ;;
        (setq syntax (mew-syntax-get-entry mew-decode-syntax nums))



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