*** dist/vm-mime.el.dist Tue Jul 27 10:52:38 1999 --- vm-mime.el Mon Aug 2 12:38:20 1999 *************** *** 766,767 **** --- 766,772 ---- (t (vm-mime-error "Unsupported MIME version: %s" version))) + ;; deal with known losers + ;; Content-Type: text + (cond ((string-match "^text$" (car type)) + (setq type '("text/plain" "charset=us-ascii") + qtype '("text/plain" "charset=us-ascii")))) (cond ((and m (not passing-message-only) (null type)) *************** *** 792,794 **** ((null (string-match "[^/ ]+/[^/ ]+" (car type))) ! (vm-mime-error "Malformed MIME content type: %s" (car type))) ((and (string-match "^multipart/\\|^message/" (car type)) --- 797,800 ---- ((null (string-match "[^/ ]+/[^/ ]+" (car type))) ! (vm-mime-error "Malformed MIME content type: %s" ! (car type))) ((and (string-match "^multipart/\\|^message/" (car type)) *************** *** 1279,1288 **** (defun vm-mime-find-external-viewer (type) ! (let ((e-alist vm-mime-external-content-types-alist) ! (matched nil)) ! (while (and e-alist (not matched)) ! (if (and (vm-mime-types-match (car (car e-alist)) type) ! (cdr (car e-alist))) ! (setq matched (cdr (car e-alist))) ! (setq e-alist (cdr e-alist)))) ! matched )) (fset 'vm-mime-can-display-external 'vm-mime-find-external-viewer) --- 1285,1300 ---- (defun vm-mime-find-external-viewer (type) ! (catch 'done ! (let ((list vm-mime-external-content-type-exceptions) ! (matched nil)) ! (while list ! (if (vm-mime-types-match (car list) type) ! (throw 'done nil) ! (setq list (cdr list)))) ! (setq list vm-mime-external-content-types-alist) ! (while (and list (not matched)) ! (if (and (vm-mime-types-match (car (car list)) type) ! (cdr (car list))) ! (setq matched (cdr (car list))) ! (setq list (cdr list)))) ! matched ))) (fset 'vm-mime-can-display-external 'vm-mime-find-external-viewer) *************** *** 2388,2390 **** (defun vm-mime-display-body-using-external-viewer (button) ! (let ((layout (vm-extent-property button 'vm-mime-layout))) (goto-char (vm-extent-start-position button)) --- 2400,2403 ---- (defun vm-mime-display-body-using-external-viewer (button) ! (let ((layout (vm-extent-property button 'vm-mime-layout)) ! (vm-mime-external-content-type-exceptions nil)) (goto-char (vm-extent-start-position button)) *************** *** 3124,3126 **** (buffer-read-only nil) ! (m (vm-mm-layout-body-end layout)) newid new-layout) --- 3137,3139 ---- (buffer-read-only nil) ! (m (vm-mm-layout-message layout)) newid new-layout) *** dist/vm-startup.el.dist Tue Jul 27 10:52:40 1999 --- vm-startup.el Mon Aug 2 16:51:40 1999 *************** *** 317,319 **** ! This is VM 6.73. --- 317,319 ---- ! This is VM 6.74. *** dist/vm-vars.el.dist Tue Jul 27 10:52:42 1999 --- vm-vars.el Mon Aug 2 12:30:10 1999 *************** *** 754,755 **** --- 754,769 ---- + (defvar vm-mime-external-content-type-exceptions nil + "*List of MIME content types that should not be displayed externally + without a manual request from the user. This is an exception list + for the types specified in `vm-mime-external-content-types-alist'; + types listed there will not be displayed using the specified viewer + unless you explicitly request it by menu or `$ e' from the keyboard. + + The value should be a list of strings. Example: + + (setq vm-mime-external-content-type-exceptions '(\"text/html\")) + + If a top-level type is listed without a subtype, all subtypes of + that type are assumed to be included.") + (defvar vm-mime-delete-viewer-processes t *** dist/vm-version.el.dist Tue Jul 27 10:52:42 1999 --- vm-version.el Mon Aug 2 16:51:40 1999 *************** *** 4,6 **** ! (defconst vm-version "6.73" "Version number of VM.") --- 4,6 ---- ! (defconst vm-version "6.74" "Version number of VM.")