[Mew-dist 2214] [Q] about multipart

Kurosawa Terunobu kuro at example.com
1997年 9月 22日 (月) 17:44:01 JST


お初にお目にかかります。黒沢@イノテックと言います。

現在、SPARCStaion-5 Sunos4.1.4 上の XEmacs 20.2 上で Mew 1.91
を使用しています。どなたからも報告が無いのでこちらの設定ミスか
何かかと思うのですが、上記の環境下でメールに添付された画像を
開く事ができません。具体的には通常 summary 上で multipart を
含むメールを選択すると、更にパートが分かれていくと思います。
確かに Emacs 19.34/Mule 2.3 上では分かれてくれるのですが、
XEmacs 上では M マークが付いているにも関わらず、マルチパートに
分かれてくれません。

そんなに試していないのですが、mew で作成したメールも、eudora
で作成したメールもダメでした。添付ファイルも gif フォーマットや
jpeg フォーマット、あと、au フォーマットの音声ファイルもマルチ
パートに分かれてくれません。テキストファイルや External-Reference 
タイプのマルチパートは大丈夫でした。

これは、mew の設定による現象なのでしょうか、もしくは XEmacs に
よる物なのでしょうか。どなたかおわかりになる人はいないでしょうか。

参考までに、XEmacs 用に使用している初期化ファイルを添付します。
suggestion 等お待ちしております。
 
-------------- next part --------------

;;;;
;;;; TK's Xemacs/MULE configration file
;;;;

;;;===========================================================================
;;; global
;;;---------------------------------------------------------------------------

;;--------------
;; library path
;;--------------
(setq load-path (append load-path '("~/lib/lisp")))
(setq site-lisp-path "/usr/local/lib/xemacs/site-lisp/")
(setq load-path (cons (expand-file-name 
		       (concat site-lisp-path "misc"))
		      load-path))
(setq version-depend-path "/usr/local/lib/xemacs-20.2/")

;;--------------
;; load library
;;--------------

;;----------
;; key code
;;----------
(cond
 (
  (eq window-system 'x)
  (define-key function-key-map [backspace] [8])
  (put 'backspace 'ascii-character 8)
  (define-key function-key-map [delete] [4])
  (put 'delete 'ascii-character 4)
  )
 (load "term/keyswap")
 (
  (null window-system)
  (load "term/keyswap")
  )
 )
(global-set-key "\C-h" 'delete-backward-char)
(global-set-key "\C-?" 'delete-char)

;;------------
;; kanji code
;;------------
(cond
 (
  (boundp 'MULE) 
  (setq display-coding-system *euc-japan*)
  (setq keyboard-coding-system *euc-japan*)
  (setq default-file-coding-system *euc-japan*)
;;  (define-program-coding-system nil ".*scan.*" (cons *junet* *junet*))
;;  (define-program-coding-system nil ".*inc.*" (cons *junet* *junet*))
  (setq buffer-file-coding-system-alist
	'(("\\.\\(el\\|emacs\\|info\\(-[0-9]+\\)?\\|texi\\)$" . iso-2022-8)
	  ("\\(ChangeLog\\|CHANGES-beta\\)$" . iso-2022-8)
	  ("\\.\\(gz\\|Z\\)$" . binary)
	  ("/spool/mail/.*$" . convert-mbox-coding-system)))))
 ;;----------
;; font set
;;----------
(set-face-font
 'default
 '(
   ;; Japanese
   "-*-fixed-medium-r-*--14-*-jisx0201.1976-*"
   "-*-fixed-medium-r-*--14-*-jisx0208.1983-*"
   "-*-fixed-medium-r-*--14-*-jisx0212*-*"
   "-*-fixed-medium-r-*--*-jisx0201.1976-*"
   "-*-fixed-medium-r-*--*-jisx0208.1983-*"
   "-*-fixed-medium-r-*--*-jisx0212*-*"
   ;; Europa
   "-*-fixed-medium-r-*--14-*-iso8859-1"
   "-*-fixed-medium-r-*--*-iso8859-1"
   "-*-fixed-medium-r-*--*-iso8859-2"
   "-*-fixed-medium-r-*--*-iso8859-3"
   "-*-fixed-medium-r-*--*-iso8859-4"
   "-*-fixed-medium-r-*--*-iso8859-7"
   "-*-fixed-medium-r-*--*-iso8859-8"
   "-*-fixed-medium-r-*--*-iso8859-5"
   "-*-fixed-medium-r-*--*-iso8859-9"
   ;; Chinese fonts
   "-*-*-medium-r-*--*-gb2312.1980-*"
   "-*-fixed-medium-r-*--*-cns11643*-*"
   "-*-fixed-medium-r-*--*-big5*-*"
   "-*-fixed-medium-r-*--*-sisheng_cwnn-0"
   ;; Korean
   "-*-mincho-medium-r-*--*-ksc5601.1987-*"
   ;; Thai
   "-*-fixed-medium-r-*--*-tis620.2529-1"
   )
 'global '(mule-fonts))
;;----------
;; colorize
;;----------
(setq font-lock-support-mode 'fast-lock-mode
      fast-lock-cache-directories '("~/.emacs-flc")
      font-lock-maximum-decoration t
      font-lock-face-attributes
      '((font-lock-comment-face       "Yellow")
	(font-lock-string-face        "Green")
	(font-lock-keyword-face       "Pink" nil t nil nil)
	(font-lock-function-name-face "Cyan" nil nil nil t)
	(font-lock-variable-name-face "Wheat" nil t nil nil)
	(font-lock-type-face          "Cyan" nil t nil nil)
	(font-lock-reference-face     "Turquoise" nil nil nil t)
	(font-lock-blue               "Cyan" nil nil nil nil)
	(font-lock-red                "Red" nil nil nil nil)
	(font-lock-default     	      "White" nil nil nil nil)))
(setq global-font-lock-mode t)
;;------
;; misc
;;------
(setq default-major-mode 'text-mode)
(setq tex-mode-hook
      '(lambda () (auto-fill-mode 1)))
(set-default 'fill-column 80)
;; autosave
(setq auto-save-interval 80)
;;reduce Garbage Collection
(setq gc-cons-threshold 400000)
;; Ok, Here I'll try to use balloon-help
(require 'balloon-help)
(balloon-help-mode 1)
;;;---------------------------------------------------------------------------
;;; end global
;;;===========================================================================

;;;===========================================================================
;;; packages
;;;---------------------------------------------------------------------------

;;-------
;; canna
;;-------
(if (and (boundp 'CANNA) CANNA)
    (progn
;;;      (setq server-list "tma01")	; Wnn;
;;;      (setq cserver-list "tma01") ; cWnn;
;;;      (setq kserver-list "tma01") ; kWnn;
      (setq canna-server "tma01") ; canna
;;;      (cond ((boundp 'egg-version);
;;;	     (require 'can-n-egg);
;;;	     (can-n-egg));
;;;	    (t;
;;;	     (require 'canna);
      ;;(setq canna-underline t);
      (load-library "canna")
      (canna)
      (setq canna-use-color t)
      (setq display-minibuffer-mode-in-minibuffer t)
      (global-unset-key "\C-o")
      (global-unset-key "\C-\ ")
      (global-unset-key "\S-\ ")
      ;;(global-set-key "\C-\ " 'canna-toggle-japanese-mode)
      ;;(define-key global-map '(shift space) 'canna-toggle-japanese-mode)
      (define-key global-map "\C-\ " 'canna-toggle-japanese-mode)
      ;;(global-set-key [\C-_] 'canna-undo)
      (setq canna-save-undo-text-predicate
	    '(lambda (s) (> (length (car s)) 2)) );
      (setq canna-undo-hook
	    '(lambda () (message "Undo...");
	       (canna-do-function canna-func-henkan)) );
      ))

;;-----
;; mew
;;----
;; Site configuration
(setq load-path (cons (expand-file-name 
		       (concat site-lisp-path "mew"))
		       load-path))
(autoload 'mew "mew" nil t)
(autoload 'mew-send "mew" nil t)
(setq mew-mail-domain-list '("design.innotech.co.jp"))
;;(setq mew-icon-directory (cons (concat version-depend-path "mew")))
(setq mew-icon-directory "/usr/local/lib/xemacs-20.2/etc/mew")
(setq exec-path (cons (expand-file-name
		       (concat site-lisp-path "mew"))
		      exec-path))
(setq mew-draft-mode-hook 
      '(lambda ()(global-set-key "\C-c\C-o" 'insert-signature-eref)))
(setq mew-highlight-lines-use t)
(setq mew-underline-lines-use t)
(setq mew-ask-range nil)
(setq mew-field-invisible
      '(">Received:" "Received:" "Return-Path:" "Sender:" "Errors-To:"
	"Resent-Date:" "Message-Id:" "Resent-Message-Id:"
	"Resent-Sender:" "Resent-Reply-To:" "Delivery-Date:")
      )
(setq mew-header-max-depth 200)
(setq mew-header-alist
      '(("X-fingerprint:" . "F1 AC 4E 4B D8 78 B5 42  6F 44 DB CD 29 AD 68 57")
	))
(setq mew-ext-anon-ftp-method 'http)

;; Window tips
(cond
 ((eq window-system 'x)
  (cond
   ((string-match "^19" emacs-version)
    (setq hilit-mode-enable-list  nil
          hilit-background-mode   'light
          hilit-inhibit-hooks     nil
          hilit-inhibit-rebinding nil)
    (require 'hilit19)
    ;;
    (add-hook 'mew-message-hook
              'hilit-rehighlight-buffer-quietly)
    (hilit-set-mode-patterns 
     '(mew-message-mode)
     '(("^Subject:.*$" nil msg-subject)
       ("^From:.*$" nil msg-from)
       ("^X-.*:.*$" nil msg-quote)
       ("^>.*$" nil msg-quote)
       ("^[A-Za-z][A-Za-z0-9-]+:" nil msg-header)))
    ;;
    (add-hook 'mew-draft-mode-hook
              'hilit-rehighlight-buffer-quietly)
    (hilit-set-mode-patterns 
     '(mew-draft-mode)
     '(("^Subject:.*$" nil msg-subject)
       ("^From:.*$" nil msg-from)
       ("^>.*$" nil msg-quote)
       ("^[A-Za-z][A-Za-z0-9-]+:" nil msg-header)))
    )
   )
  (cond
   ((string-match "XEmacs" emacs-version)
;    (add-hook 'mew-message-hook
;             (function 
;              (lambda ()
;                (if mew-xemacs-p
;                    (highlight-headers (point-min) (point-max) nil)))))
    (require 'highlight-headers)
    (set-face-foreground 'message-headers "blue")
    (set-face-foreground 'message-highlighted-header-contents "firebrick")
    (set-face-foreground 'message-header-contents "purple")
    (set-face-foreground 'message-cited-text "red")
    (setq highlight-headers-hack-x-face-p t);; X-Face
;    (setq highlight-headers-highlight-citation-too nil)
    )
   )
  )
 (t
  ;; Command line (emacs/mule/xemacs -nw)
  (setq mew-demo nil)
  )
 )

;; for Xemacs
(cond
 ((string-match "XEmacs" emacs-version)
  (setq zmacs-regions nil)
  (setq url-be-asynchronous t)
  (setq-default buffer-file-coding-system 'iso-2022-jp)
  (setq keyboard-coding-system    'iso-2022-jp)
  (setq terminal-coding-system    'iso-2022-jp)
  (add-menu-item '("Apps") "Read Mail (Mew)" 'mew t "Read Mail (VM)...")
  (add-menu-item '("Apps") "Send Mail (Mew)" 'mew-send t "Read Mail (VM)...")
  (delete-menu-item '("Apps" "Read Mail (VM)..."))
  (delete-menu-item '("Apps" "Read Mail (MH)..."))
  (delete-menu-item '("Apps" "Send mail..."))
  (setq toolbar-mail-reader 'Mew)
  (setq toolbar-mail-commands-alist
        (cons '(Mew . mew) toolbar-mail-commands-alist))
  )
 )

;; colorize
(progn
  ;;
  ;; font lock for mew summary mode
  ;;
  (setq mew-summary-font-lock-keywords
	(list
	 '("^[ \t]+[0-9]+\\*.*" . font-lock-string-face)
	 '("^[ \t]+[0-9]+ at example.com*"  . font-lock-reference-face)
	 '("^[ \t]+[0-9]+D.*"  . font-lock-keyword-face)
	 '("^[ \t]+[0-9]+o.*"  . font-lock-comment-face)
	 '("^[ \t]+[0-9]+ .*"  . font-lock-type-face)))
  (add-hook 'mew-summary-mode-hook
	    '(lambda ()
	       (make-local-variable 'font-lock-defaults)
	       (setq font-lock-defaults '(mew-summary-font-lock-keywords t))
	       (turn-on-font-lock)))
  (setq mew-font-lock-keywords
	(list
	 '("^\\(From\\|Sender\\):"
	   . font-lock-keyword-face)
	 '("^Subject:.*"
	   . font-lock-type-face)
	 '("^\\(To\\|Apparently-To\\|Cc\\):"
	   . font-lock-string-face)
	 '("^X-.*:.*$"
	   . font-lock-reference-face)
	 '("^\\(#\\|#\\).*"
	   . font-lock-variable-name-face)
	 '("\\(^[^ \t\n ]*[|>]\\) .*"
	   . font-lock-comment-face)))
  (add-hook 'mew-message-mode-hook
	    '(lambda ()
	       (make-local-variable 'font-lock-defaults)
	       (setq font-lock-defaults '(mew-font-lock-keywords t))
	       (turn-on-font-lock)))
  (add-hook 'mew-draft-mode-hook
	    '(lambda ()
	       (make-local-variable 'font-lock-defaults)
	       (setq font-lock-defaults '(mew-font-lock-keywords t))
	       (turn-on-font-lock)))
  )

;; default address
(setq mew-fcc "send")
(setq mew-cc "tma_techs, tma_sales")
(setq mew-from "Kurosawa Terunobu <kuro at example.com>")

;; citation tip
(setq mew-cite-fields '("From:" "Subject:" "Date:"))
(setq mew-cite-format "From: %s\nSubject: %s\nDate: %s\n")
(setq mew-cite-prefix-function 'mew-cite-prefix-username)
;;(setq mail-yank-prefix "> ")

;; auto folder  
(setq  mew-auto-folder-alist
       '(
	 ("To:"
	  ("tmai.com$" . "+work/tma/app")
	  ("KYL06417 at example.com" . "+work/customer/shin_dengen/tomita")
	  ("^mule-gateway at example.com$" . "+private/mailing_list/mule")
	  ("^fvwm-users-jp at example.com$" . "+private/mailing_list/fvwm")
	  ("zaurus at example.com" . "+private/mailing_list/zaurus")
	  ("^tma at example.com$" . "+work/innotech/tma_group")
	  )
	 ("From:" 
	  ("@tmai.com$" . "+work/tma/app")
	  )
	 ("Subject:"
	  ("^\\[inetdb" . "+private/mailing_list/internet_database")
	  ("^\\[G-BRAIN" . "+private/mailing_list/global-brain")
	  ("^\\[Mew-dist" . "+private/mailing_list/mew")
	  ("^\\[Canna" . "+private/mailing_list/canna")
	  ("^\\[zaurus" . "+private/mailing_list/zaurus-sh")
	  ("^\\[PS-ML" . "+private/mailing_list/playstation")
	  ("^\\[inetdb" . "+private/mailing_list/internet_database")
	  ("^\\[dfsj" . "+private/mailing_list/dfsj")
	  )
	 ("Newsgroups:"
	  ("^nifty\\.\\([^ ]+\\)" . "+Nifty/\\1")
	  (".*"         . "+rec/news")
	  )
	 ))

;; yet another print function for mew
(setq mew-print-function (function mew-print-buffer))
;; define print out command
(setq mew-print-command-format 
      "mailprt -v folder_name=%s -v message_number=%s -v part_number=%s %s")
;; define region which is printed out
(defun mew-print-region(start end message-number folder-name part-number)
  (interactive "r")
  (let ((tmpfile (make-temp-name "lpr")))
    (write-region start end tmpfile)
    (shell-command 
     (format mew-print-command-format message-number 
             folder-name part-number tmpfile))
    (delete-file tmpfile)))
;; define buffer which is printed out
(defun mew-print-buffer (message-number folder-name part-number)
  (interactive)
  (mew-print-region (point-min) (point-max)
                    folder-name message-number part-number))
;; Over define with Mew's original print out routine
;; we should get folder name and folder number at just now
(defun mew-summary-print ()
  (interactive)
  ;; getting number
  ;; notice number is charactor
  (setq message-number (nthcdr 1 (mew-current-get 'message)))
  ;; getting folder name
  (setq folder-name (nth 0 (mew-current-get 'message)))
  ;; getting part number
  (setq part-number (mew-current-get 'part))
  (mew-summary-display)
  (save-excursion
    (set-buffer (mew-buffer-message))
    (save-restriction
      (widen)
      (if (mew-y-or-n-p "Print this message? ")
          (mew-print-buffer message-number folder-name part-number)))
    ))

;;-------
;; c-sig
;;-------
;; http://www.threeweb.ad.jp/~kshibata/c-sig/
(autoload 'add-signature "c-sig" "c-sig" t)
(autoload 'delete-signature "c-sig" "c-sig" t)
(autoload 'insert-signature-eref "c-sig" "c-sig" t)
(autoload 'insert-signature-automatically "c-sig" "c-sig" t)
(autoload 'insert-signature-randomly "c-sig" "c-sig" t)
;;(setq sig-insert-end t)
(setq sig-alist-file "~/share/mail/signature/.signature.alist")
(setq sig-insert-end t)

;;----
;; w3
;;----
(setq load-path (cons (expand-file-name 
		       (concat site-lisp-path "w3"))
		       load-path))
(autoload 'w3-preview-this-buffer "w3" "WWW Previewer" t)
(autoload 'w3-follow-url-at-point "w3" "Find document at pt" t)
(autoload 'w3 "w3" "WWW Browser" t)
(autoload 'w3-open-local "w3" "Open local file for WWW browsing" t)
(autoload 'w3-fetch "w3" "Open remote file for WWW browsing" t)
(autoload 'w3-use-hotlist "w3" "Use shortcuts to view WWW docs" t)
(autoload 'w3-show-hotlist "w3" "Use shortcuts to view WWW docs" t)
(autoload 'w3-follow-link "w3" "Follow a hypertext link." t)
(autoload 'w3-batch-fetch "w3" "Batch retrieval of URLs" t)
(autoload 'url-get-url-at-point "url" "Find the url under the cursor" nil)
(autoload 'url-file-attributes  "url" "File attributes of a URL" nil)
(autoload 'url-popup-info "url" "Get info on a URL" t)
(autoload 'url-retrieve   "url" "Retrieve a URL" nil)
(autoload 'url-buffer-visiting "url" "Find buffer visiting a URL." nil)
(autoload 'gopher-dispatch-object "gopher" "Fetch gopher dir" t)
(setq url-proxy-services 
      '(("http"     . "http://fw.innotech.co.jp:8080")
	("ftp"      . "http://fw.innotech.co.jp:8080")
	("no_proxy" . "^.*design\.innotech\.co.jp")
	))
(setq w3-default-homepage "~/lib/datas/homepage/myhome.html")
(setq w3-hotlist-file "~/.w3/hotlist")
(setq url-personal-mail-address "kuro at example.com")
(setq w3-delay-image-loads t)
(setq w3-style-ie-compatibility t)
(setq w3-track-mouse t)
(setq url-uncompressor-alist nil)
(setq w3-use-forms-index t)
(add-hook 'mew-draft-mode-hook
	  (lambda ()
	    (setq mail-header-separator "----")))
(autoload 'mail-to "sendmail" "Move point to end of To-field." t)
(autoload 'mail-subject "sendmail" "Move point to end of Subject-field." t)
(setq url-mail-command 'mew-send)

;;-------
;; yatex
;;-------
(setq load-path (cons (expand-file-name 
		       (concat site-lisp-path "yatex"))
		      load-path))
(setq auto-mode-alist
      (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist)
      )
(setq auto-mode-alist
      (cons (cons "\\.sty$" 'yatex-mode) auto-mode-alist)
      )
(setq YaTeX-kanji-code 3)
(autoload 'yatex-mode "yatex" "Yet Another TeX mode" t)
;;(autoload 'yatex-mode "yatexuser" "Yet Another TeX mode additional functions" t)
(setq tex-command "platex")
;;(setq dvi2-command "xdvi -fg black -bg white -s 3  -p 400 -display
;;     (getenv "DISPLAY")")
(setq dvi2-command "xdvi")
;;(setq dviprint-command-format "jdvi2kps +3 -d 400 %f %t %s | lpr -h")
(setq dviprint-command-format "dvips %s")
(setq makeindex-command "mendex")
;; yahtml
(setq auto-mode-alist
      (cons (cons "\\.html$" 'yahtml-mode) auto-mode-alist))
(autoload 'yahtml-mode "yahtml" "Yet Another HTML mode" t)
(setq yahtml-www-browser "netscape")
;;Write your favorite browser.  But netscape is advantageous.
(setq yahtml-path-url-alist
      '(("/tma011/kuro/lib/datas/homepage/myhome.html")))

;;;---------------------------------------------------------------------------
;;; end packages
;;;===========================================================================


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