(set-buffer (mime-entity-buffer entity))
mime-raw-message-info))))
-(defsubst mime-entity-situation (entity)
+(defun mime-entity-situation (entity)
"Return situation of ENTITY."
(append (or (mime-entity-content-type entity)
(make-mime-content-type 'text 'plain))
+ (let ((d (mime-entity-content-disposition entity)))
+ (cons (cons 'disposition-type
+ (mime-content-disposition-type d))
+ (mapcar (function
+ (lambda (param)
+ (let ((name (car param)))
+ (cons (cond ((string= name "filename")
+ 'filename)
+ ((string= name "creation-date")
+ 'creation-date)
+ ((string= name "modification-date")
+ 'modification-date)
+ ((string= name "read-date")
+ 'read-date)
+ ((string= name "size")
+ 'size)
+ (t (cons 'disposition (car param))))
+ (cdr param)))))
+ (mime-content-disposition-parameters d))
+ ))
(list (cons 'encoding (mime-entity-encoding entity))
(cons 'major-mode
(save-excursion
(setq entries (cdr entries))
)))
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . t)(subtype . t)(mode . "extract")
-;; (method . mime-method-to-save)))
+(ctree-set-calist-strictly
+ 'mime-acting-condition
+ '((type . application)(subtype . octet-stream)
+ (mode . "play")
+ (method . mime-method-to-detect)
+ ))
+
(ctree-set-calist-with-default
'mime-acting-condition
'((mode . "extract")
(method . mime-method-to-save)))
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . text)(subtype . plain)(mode . "play")
-;; (method "tm-plain" nil 'file "" 'encoding 'mode 'name)
-;; ))
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . text)(subtype . plain)(mode . "print")
-;; (method "tm-plain" nil 'file "" 'encoding 'mode 'name)
-;; ))
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . text)(subtype . html)(mode . "play")
-;; (method "tm-html" nil 'file "" 'encoding 'mode 'name)
-;; ))
(ctree-set-calist-strictly
'mime-acting-condition
'((type . text)(subtype . x-rot13-47)(mode . "play")
(method . mime-method-to-display-caesar)
))
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . audio)(subtype . basic)(mode . "play")
-;; (method "tm-au" nil 'file "" 'encoding 'mode 'name)
-;; ))
-
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . image)(mode . "play")
-;; (method "tm-image" nil 'file "" 'encoding 'mode 'name)
-;; ))
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . image)(mode . "print")
-;; (method "tm-image" nil 'file "" 'encoding 'mode 'name)
-;; ))
-
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . video)(subtype . mpeg)(mode . "play")
-;; (method "tm-mpeg" nil 'file "" 'encoding 'mode 'name)
-;; ))
-
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . application)(subtype . postscript)(mode . "play")
-;; (method "tm-ps" nil 'file "" 'encoding 'mode 'name)
-;; ))
-;; (ctree-set-calist-strictly
-;; 'mime-acting-condition
-;; '((type . application)(subtype . postscript)(mode . "print")
-;; (method "tm-ps" nil 'file "" 'encoding 'mode 'name)
-;; ))
-
(ctree-set-calist-strictly
'mime-acting-condition
'((type . message)(subtype . rfc822)(mode . "play")
. mime-preview-quitting-method-for-mime-show-message-mode))
"Alist of major-mode vs. quitting-method of mime-view.")
-(defvar mime-view-over-to-previous-method-alist nil)
-(defvar mime-view-over-to-next-method-alist nil)
+(defvar mime-preview-over-to-previous-method-alist nil
+ "Alist of major-mode vs. over-to-previous-method of mime-view.")
-(defvar mime-view-show-summary-method nil
- "Alist of major-mode vs. show-summary-method.")
+(defvar mime-preview-over-to-next-method-alist nil
+ "Alist of major-mode vs. over-to-next-method of mime-view.")
;;; @ following method
(define-key mime-view-mode-map
"q" (function mime-preview-quit))
(define-key mime-view-mode-map
- "h" (function mime-preview-show-summary))
- (define-key mime-view-mode-map
"\C-c\C-x" (function mime-preview-kill-buffer))
;; (define-key mime-view-mode-map
;; "<" (function beginning-of-buffer))
(defun mime-preview-move-to-previous ()
"Move to previous entity.
If there is no previous entity, it calls function registered in
-variable `mime-view-over-to-previous-method-alist'."
+variable `mime-preview-over-to-previous-method-alist'."
(interactive)
(while (null (get-text-property (point) 'mime-view-entity))
(backward-char)
(mime-preview-move-to-previous)
)
(let ((f (assq (mime-preview-original-major-mode)
- mime-view-over-to-previous-method-alist)))
+ mime-preview-over-to-previous-method-alist)))
(if f
(funcall (cdr f))
))
(defun mime-preview-move-to-next ()
"Move to next entity.
If there is no previous entity, it calls function registered in
-variable `mime-view-over-to-next-method-alist'."
+variable `mime-preview-over-to-next-method-alist'."
(interactive)
(while (null (get-text-property (point) 'mime-view-entity))
(forward-char)
(mime-preview-move-to-next)
))
(let ((f (assq (mime-preview-original-major-mode)
- mime-view-over-to-next-method-alist)))
+ mime-preview-over-to-next-method-alist)))
(if f
(funcall (cdr f))
))
(defun mime-preview-scroll-up-entity (&optional h)
"Scroll up current entity.
If reached to (point-max), it calls function registered in variable
-`mime-view-over-to-next-method-alist'."
+`mime-preview-over-to-next-method-alist'."
(interactive)
(or h
(setq h (1- (window-height)))
)
(if (= (point) (point-max))
(let ((f (assq (mime-preview-original-major-mode)
- mime-view-over-to-next-method-alist)))
+ mime-preview-over-to-next-method-alist)))
(if f
(funcall (cdr f))
))
(defun mime-preview-scroll-down-entity (&optional h)
"Scroll down current entity.
If reached to (point-min), it calls function registered in variable
-`mime-view-over-to-previous-method-alist'."
+`mime-preview-over-to-previous-method-alist'."
(interactive)
(or h
(setq h (1- (window-height)))
)
(if (= (point) (point-min))
(let ((f (assq (mime-preview-original-major-mode)
- mime-view-over-to-previous-method-alist)))
+ mime-preview-over-to-previous-method-alist)))
(if f
(funcall (cdr f))
))
(funcall (cdr r))
)))
-(defun mime-preview-show-summary ()
- "Show summary.
-It calls function registered in variable
-`mime-view-show-summary-method'."
- (interactive)
- (let ((r (assq (mime-preview-original-major-mode)
- mime-view-show-summary-method)))
- (if r
- (funcall (cdr r))
- )))
-
(defun mime-preview-kill-buffer ()
(interactive)
(kill-buffer (current-buffer))