[Mew-dist 179] Re: display application/octet-stream part

Yoshitsugu Mito mit at example.com
1996年 11月 26日 (火) 21:34:05 JST


※ "後" こと gotoh at example.com さんの
   Message-Id: <199611250853.RAA02273 at example.com>
   『[Mew-dist 156] Re: display application/octet-stream part』からの引用です。

後> ちょっとだけ追っかけてみました。(以下該当部分?)

どうもありがとうございました。(_ _)
info を見ながらを追っかけてみました。^^;

後> mew-summary-display-part の中で、Content-Type: に応じたsyntaxを得て、
後> programを用意していますが、例えば C-c . などで表示する時は program 
後> には強制的に (setq program 'mew-mime-text/plain)  できれば、
後> とりあえずは満足な動作になりそう。。。

おかげさまで、私にはとっても満足な動作になりました。

後> と思い簡単な実験はしたけど、charsetの問題も出てきちゃいます。
後> charsetを仮定すべきか、guessするべきかとか、
後> 強制表示用の syntaxを別定義しておくべきかとか。。。
後> ちょっと時間がないので挫折しました。:-(

charset は必要ないと思いますので指定しませんでした。

※ "山" こと kazu at example.com さんの
   Message-Id: <26137.848932875 at example.com>
   『[Mew-dist 164] Re: display application/octet-stream part』からの引用です。

山> 今の Mew では EUC を attach しても ISO-2022-JP に変換してくれるので大
山> 丈夫です。EUC のまま送ることに意味があるなら、application/octet-stream 
山> がいいでしょう。

EUC のまま送ることに意味があるなら、base64 でエンコード し、
application/octet-stream で送るほうがいい...ですよね?
# EUC のファイルを attach して octet-stream にしても 
# mew-draft-make-mime(C-cC-m) した時点で ISO-2022-JP に変換
# されちゃいますよね?私のところだけでしょうか?

※ "小" こと shuhei-k at example.com さんの
   Message-Id: <19961125203619U.shuhei-k at example.com>
   『[Mew-dist 162] Re: display application/octet-stream part』からの引用です。

小>   mime-editor/insert-file は変数 mime-file-types の値に基いて、
小> filename より CT や CTE を決定しています。Mew の場合に相当するのは
小> mew-mime-content-type ですね。

Mew だとタイプを T で変更できますよね。tm にもそういうのがあ
るのかなぁと思って、ちょっと書いてみたんですが...。

まぁ、そうそうしょっちゅう使うこともないと思いますんでどうで
もいいんですが、一応後藤さんから教えていただいた部分を修正し
た diff を付けますので、lisper の方々に添削していただければ
と思います。よろしくお願いします。(_ _)
-- 
11/26 21:32頃
NECソフトウェア新潟  水戸嘉嗣
mailto:mit at example.com

-------------- next part --------------
--- mew-summary.el.back	Tue Nov 26 08:51:46 1996
+++ mew-summary.el	Tue Nov 26 20:12:14 1996
@@ -90,6 +90,7 @@
   (define-key mew-summary-mode-map "\ea"  'mew-summary-toggle-analysis)
   (define-key mew-summary-mode-map "\C-c\C-x" 'mew-summary-x-face)
   (define-key mew-summary-mode-map "\C-c\C-q" 'mew-kill-buffer)
+  (define-key mew-summary-mode-map "\C-c." 'mew-summary-display-force)
   (cond
    (mew-emacs19-p
     (mew-menu-define 
@@ -701,6 +702,21 @@
      )
     ))
 
+(defun mew-summary-display-force (cancel-force)
+  (interactive "P")
+  (let*  ((ofld-msg (mew-current-get 'message))
+	  (part (mew-summary-part-number))
+	  (buf (buffer-name))
+	  (force t))
+    (if part
+	(progn
+	  (if cancel-force (setq force nil))
+	  (set-buffer (mew-buffer-message))
+	  (mew-summary-display-part
+	   (mew-cache-mime-syntax (mew-cache-hit ofld-msg)) part nil force)
+	  (set-buffer buf)))
+    (call-interactively 'mew-summary-display)))
+
 (defun mew-summary-multipart-delete ()
   (let ((buf (current-buffer)))
     (if (null (marker-position mew-current-marker))
@@ -790,13 +806,14 @@
     hit ;; return value
     ))
 
-(defun mew-summary-display-part (fullpart num &optional non-erase)
+(defun mew-summary-display-part (fullpart num &optional non-erase force)
 ;; called in message buffer
 ;; return t to next part
   (let* ((syntax  (mew-syntax-get-entry-strnum fullpart num))
 	 (begin   (mew-syntax-get-begin  syntax))
 	 (end     (mew-syntax-get-end    syntax))
-	 (ctl     (mew-syntax-get-ct syntax))
+	 (ctl     (if force '("text/plain")
+		    (mew-syntax-get-ct syntax)))
 	 (ct      (car ctl))
 	 (params  (cdr ctl))
 	 (attr    (mew-content-attr ct mew-mime-content-type))


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