[Mew-Win32 00707] Re: fiber 1.1.1.

Kyotaro HORIGUCHI kyota at example.com
1998年 6月 25日 (木) 11:52:59 JST


堀口@早いもの ともうします. 

At Thu, 25 Jun 1998 10:29:57 +0900, : Kazumi HARA <hara at example.com> wrote in <19980625102832F.hara at example.com>
> > さぁ、Mew-dist にパッチを投げるのは、早い者勝ちです(^^;
>
> 私はきびしいですねぇ (^^;;
> 自分用の「汚い&とりつくろった」その場しのぎしか出来ませんから ^^;;

  というわけで, 私が Meadow1.01改(^^;) & mew-1.93b40 で自分用に汚
 く取り繕ったやつを提供します. なにしているかというと,

    1. mew-encode.el で call-process を行うときにファイル名の漢字
       コードを file-name-coding-system に変換している.

    2. mew-decode.el で Content-desposotionヘッダの中のBエンコー
       ド文字列のデコードと文字コードの変換を行っている.

    3. mew-mime.el で, テンポラリファイルを消さないようにしている.
       (Word 起動前に消えてしまうもので^^:.. でも mew終了時には消
       えるようです. 新しい fiber とまじめに連携取れば解決は出来
       そうですね.)

    4. mew-summary.el で, 作成するテンポラリファイルに元ファイル
       と同じ拡張子をつける. (おかげでテンポラリファイルが2倍でき
       てしまいますが, 気にしなければおっけです.)

   これで, Outlook とか Eudora なんかのメイラで添付された 
  Word/Excel ファイルも C-c C-e で起動します. もちろん 
  \HKEY_LOCAL_MACHINE\SOFTWARE\GNU\Fiber\ExecuteUnknownExtは1にす
  る必要があります.

> # 他に困っている人がきれいにしてくれるかしら??

  これは他の人にお任せします^^:
--
ほりぐちきょうたろう.

-------------- next part --------------
*** mew-encode.el.orig	Tue Jun 23 11:07:55 1998
--- mew-encode.el	Wed Jun 24 20:47:55 1998
***************
*** 257,263 ****
  	;; Encoded file is always in us-ascii domain. So just insert it.
  	(mew-piolet mew-cs-autoconv mew-cs-noconv
  	 (apply (function call-process) mew-prog-mime-encode 
! 		file t nil encopts)
  	 )
        (if file ;; not buffered	 
  	  ;; Probably 7bit text based object like phantom body of 
--- 257,266 ----
  	;; Encoded file is always in us-ascii domain. So just insert it.
  	(mew-piolet mew-cs-autoconv mew-cs-noconv
  	 (apply (function call-process) mew-prog-mime-encode 
!   	    (if (not (eq nil file-name-coding-system))
!  		(encode-coding-string file file-name-coding-system)
!  	      file)
!  	    t nil encopts)
  	 )
        (if file ;; not buffered	 
  	  ;; Probably 7bit text based object like phantom body of 
*** mew-decode.el.orig	Mon Jun 08 20:46:31 1998
--- mew-decode.el	Wed Jun 24 20:47:55 1998
***************
*** 129,135 ****
  		()
  	      (setq n (nth 0 attr))
  	      (setq act (nth 2 attr))
! 	      (setq value (buffer-substring med (1- (point))))
  	      (cond
  	       ((equal act 'analyze)
  		(setq value (mew-header-syntax-list value))) ;; list
--- 129,157 ----
  		()
  	      (setq n (nth 0 attr))
  	      (setq act (nth 2 attr))
! 
! ;; To deal 'Content-desposition' header containing kanji-string correctly(?),
! ;;  decode header lines previously analyzing. It may cause some trouble.
! 	      (setq value 
! 		    (decode-coding-string (buffer-substring med (1- (point)))
! 					  mew-cs-autoconv))
! ;; ###############################################3
! ;; some mailer encodes kanji-filename by B-encoding.
! ;;   this change may cause trouble :-p
! 	      (if (not (eq value nil))
! 		  (let ((start 0) (tail))
! 		    (while (setq start 
! 				 (string-match mew-header-decode-regex 
! 					       value start))
! 		      (setq tail (+ 2 (match-end 3))
! 			    value 
! 			    (concat (substring value 0 start )
! 				    (mew-header-decode (match-string 1 value) 
! 						       (match-string 2 value)
! 						       (match-string 3 value))
! 				    (substring value tail))))))
! ;; ###############################################3
! 
  	      (cond
  	       ((equal act 'analyze)
  		(setq value (mew-header-syntax-list value))) ;; list
*** mew-mime.el.orig	Tue Jun 23 11:07:59 1998
--- mew-mime.el	Wed Jun 24 20:47:55 1998
***************
*** 68,74 ****
  
  (defun mew-mime-start-process-sentinel (process event)
    (let ((al (assoc process mew-process-file-alist)))
!     (if (cdr al) (delete-file (cdr al)))
      (setq mew-process-file-alist (delete al mew-process-file-alist))
      ))
  
--- 68,74 ----
  
  (defun mew-mime-start-process-sentinel (process event)
    (let ((al (assoc process mew-process-file-alist)))
! ;;    (if (cdr al) (delete-file (cdr al)))
      (setq mew-process-file-alist (delete al mew-process-file-alist))
      ))
  
*** mew-summary.el.orig	Tue Jun 23 11:08:05 1998
--- mew-summary.el	Wed Jun 24 20:47:55 1998
***************
*** 850,855 ****
--- 850,864 ----
  	    (if (not (mew-which program exec-path))
  		(message "Program %s is not found" program)
  	      (setq file (mew-make-temp-name))
+    	      (if (and (or (not (null fname))  (not (null cd)))
+    		       (string-match "..*\\(\\.[^.][^.]*$\\)$" 
+    				     (if (null cd) fname cd)))
+    		  (progn
+    		    (if (not (file-exists-p file))
+    			(write-region 1 1 file))
+    		    (setq file (concat file 
+    				       (match-string 1 (if (null cd)
+   							   fname cd))))))
  	      (set-buffer (mew-current-get 'cache))
  	      ;; NEVER use call-process-region for privacy reasons
  	      (if (mew-member-case-equal ct mew-mime-content-type-text-list)


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