;;; @ version
;;;
-(defconst emh-version "1.4.0")
+(defconst emh-version "1.8.2")
;;; @ variable
(erase-buffer)
(if mode
(let* ((aname (concat "article-" folder))
- (abuf (get-buffer aname))
- )
+ (abuf (get-buffer aname)))
(if abuf
(progn
(set-buffer abuf)
)
(setq abuf (get-buffer-create aname))
(set-buffer abuf)
+ (set-buffer-multibyte nil)
)
- (let ((coding-system-for-read 'raw-text))
- (insert-file-contents msg-filename)
- )
+ (insert-file-contents-as-raw-text msg-filename)
(set-buffer-modified-p nil)
(setq buffer-read-only t)
(setq buffer-file-name msg-filename)
(mh-show-mode)
- (mime-view-mode nil nil nil
- aname (concat "show-" folder))
+ (mime-display-message (mime-open-entity 'buffer aname)
+ (concat "show-" folder))
(goto-char (point-min))
)
(let ((clean-message-header mh-clean-message-header)
(invisible-headers mh-invisible-headers)
- (visible-headers mh-visible-headers)
- )
+ (visible-headers mh-visible-headers))
;; 1995/9/21
;; modified by ARIURA <ariura@cc.tuat.ac.jp>
;; to support mhl.
(defun emh-header-display ()
(interactive)
(mh-invalidate-show-buffer)
- (let ((mime-view-ignored-field-regexp "^:$")
+ (let (mime-view-ignored-field-list
+ mime-view-visible-field-list
emh-decode-encoded-word)
(mh-header-display)
))
;;; @ for mime-view
;;;
-(set-alist 'mime-raw-buffer-coding-system-alist
- 'mh-show-mode 'no-conversion)
-
-(set-alist 'mime-text-decoder-alist
- 'mh-show-mode 'mime-text-decode-buffer)
-
-(defvar emh-content-header-filter-hook
- (if window-system
- '(emh-highlight-header)
- )
+(defvar emh-display-header-hook (if window-system '(emh-highlight-header))
"Hook for header filtering.")
(autoload 'emh-highlight-header "emh-face")
-(defun emh-content-header-filter ()
- "Header filter for mime-view.
-It is registered to variable `mime-view-content-header-filter-alist'."
- (goto-char (point-min))
- (mime-view-cut-header)
- (eword-decode-header default-mime-charset)
- (run-hooks 'emh-content-header-filter-hook)
+(defun emh-header-presentation-method (entity situation)
+ (mime-insert-decoded-header entity
+ mime-view-ignored-field-list
+ mime-view-visible-field-list)
+ (run-hooks 'emh-display-header-hook)
)
-(set-alist 'mime-view-content-header-filter-alist
- 'mh-show-mode
- (function emh-content-header-filter))
+(set-alist 'mime-header-presentation-method-alist
+ 'mh-show-mode #'emh-header-presentation-method)
+
(defun emh-quitting-method ()
(let ((buf (current-buffer)))
(set-alist 'mime-preview-quitting-method-alist
'mh-show-mode #'emh-quitting-method)
-(set-alist 'mime-view-show-summary-method
- 'mh-show-mode
- (function emh-quitting-method))
+
(defun emh-following-method (buf)
(save-excursion
(goto-char last)
)))
-(set-alist 'mime-view-following-method-alist
- 'mh-show-mode
- (function emh-following-method))
+(set-alist 'mime-preview-following-method-alist
+ 'mh-show-mode #'emh-following-method)
;;; @@ for mime-partial
;;;
-(autoload 'mime-method-to-combine-message/partial-pieces
+(defun emh-request-partial-message ()
+ (let ((msg-filename (mh-msg-filename (mh-get-msg-num t)))
+ (show-buffer mh-show-buffer))
+ (set-buffer (get-buffer-create " *Partial Article*"))
+ (erase-buffer)
+ (setq mime-preview-buffer show-buffer)
+ (insert-file-contents-as-raw-text msg-filename)
+ (mime-parse-buffer)
+ ))
+
+(defun emh-get-folder-buffer ()
+ (let ((buffer-name (buffer-name (current-buffer))))
+ (and (or (string-match "^article-\\(.+\\)$" buffer-name)
+ (string-match "^show-\\(.+\\)$" buffer-name))
+ (substring buffer-name
+ (match-beginning 1) (match-end 1))
+ )))
+
+(autoload 'mime-combine-message/partial-pieces-automatically
"mime-partial"
"Internal method to combine message/partial messages automatically.")
-(ctree-set-calist-strictly
- 'mime-acting-condition
+(mime-add-condition
+ 'action
'((type . message)(subtype . partial)
- (method . mime-method-to-combine-message/partial-pieces)
(major-mode . mh-show-mode)
- (summary-buffer-exp
- . (and (or (string-match "^article-\\(.+\\)$"
- article-buffer)
- (string-match "^show-\\(.+\\)$" article-buffer))
- (substring article-buffer
- (match-beginning 1) (match-end 1))
- ))
+ (method . mime-combine-message/partial-pieces-automatically)
+ (summary-buffer-exp . (emh-get-folder-buffer))
+ (request-partial-message-method . emh-request-partial-message)
))
-(set-alist 'mime-view-partial-message-method-alist
- 'mh-show-mode
- (function
- (lambda ()
- (let ((emh-automatic-mime-preview t))
- (emh-show)
- ))))
-
;;; @ set up
;;;