(require 'alist)
(require 'filename)
+(eval-when-compile (require 'mime-text))
+
;;; @ content decoder
;;;
(interactive)
(or mode
(setq mode "play"))
- (let ((entity-info (get-text-property (point) 'mime-view-entity-info)))
+ (let ((entity-info (get-text-property (point) 'mime-view-entity)))
(if entity-info
(let ((the-buf (current-buffer))
(raw-buffer (get-text-property (point) 'mime-view-raw-buffer)))
It decodes the entity to call internal or external method. The method
is selected from variable `mime-acting-condition'. If MODE is
specified, play as it. Default MODE is \"play\"."
- (let ((beg (mime-entity-info-point-min entity-info))
- (end (mime-entity-info-point-max entity-info))
- (c-type (mime-entity-info-media-type entity-info))
- (c-subtype (mime-entity-info-media-subtype entity-info))
- (params (mime-entity-info-parameters entity-info))
- (encoding (mime-entity-info-encoding entity-info))
+ (let ((beg (mime-entity-point-min entity-info))
+ (end (mime-entity-point-max entity-info))
+ (c-type (mime-entity-media-type entity-info))
+ (c-subtype (mime-entity-media-subtype entity-info))
+ (params (mime-entity-parameters entity-info))
+ (encoding (mime-entity-encoding entity-info))
)
(or c-type
(setq c-type 'text
)
(t
(mime-show-echo-buffer
- "No method are specified for %s\n" ctype)
+ "No method are specified for %s\n"
+ (mime-type/subtype-string c-type c-subtype))
))
)
))
(narrow-to-region beg end)
(mime-raw-get-filename cal)
))
- (encoding (cdr (assq 'encoding cal)))
+ (encoding (or (cdr (assq 'encoding cal)) "7bit"))
(filename
(if (and name (not (string-equal name "")))
(expand-file-name name
(or (yes-or-no-p (format "File %s exists. Save anyway? " filename))
(error "")))
(re-search-forward "\n\n")
- (mime-write-decoded-region (match-end 0)(point-max) filename encoding)
+ (mime-write-decoded-region (match-end 0) end filename encoding)
))
;;; @ mail/news message
;;;
-(defun mime-view-quitting-method-for-mime-show-message-mode ()
+(defun mime-preview-quitting-method-for-mime-show-message-mode ()
"Quitting method for mime-view.
It is registered to variable `mime-preview-quitting-method-alist'."
(let ((mother mime-mother-buffer)
;;; @ message/partial
;;;
-(defvar mime-raw-coding-system-alist
- `((mh-show-mode . no-conversion)
- (t . ,(mime-charset-to-coding-system default-mime-charset)))
- "Alist of major-mode vs. corresponding coding-system.")
-
(defun mime-raw-write-region (start end filename)
"Write current region into specified file.
When called from a program, takes three arguments:
START, END and FILENAME. START and END are buffer positions.
-It refer `mime-raw-coding-system-alist' to choose coding-system to
-write."
+It refer `mime-raw-buffer-coding-system-alist' to choose coding-system
+to write."
(let ((coding-system-for-write
(cdr
- (or (assq major-mode mime-raw-coding-system-alist)
- (assq t mime-raw-coding-system-alist)
+ (or (assq major-mode mime-raw-buffer-coding-system-alist)
+ (assq t mime-raw-buffer-coding-system-alist)
))))
(write-region start end filename)
))