Function: gnus-mime-view-part-as-charset
gnus-mime-view-part-as-charset is an interactive and byte-compiled
function defined in gnus-art.el.gz.
Signature
(gnus-mime-view-part-as-charset &optional HANDLE ARG EVENT)
Documentation
Insert the MIME part under point into the current buffer using the specified charset.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-art.el.gz
(defun gnus-mime-view-part-as-charset (&optional handle arg event)
"Insert the MIME part under point into the current buffer using the
specified charset."
(interactive (list nil current-prefix-arg last-nonmenu-event)
gnus-article-mode)
(save-excursion
(mouse-set-point event)
(gnus-article-check-buffer)
(let ((handle (or handle (get-text-property (point) 'gnus-data)))
(fun (get-text-property (point) 'gnus-callback))
(gnus-newsgroup-ignored-charsets 'gnus-all)
charset form preferred parts)
(when handle
(when (prog1
(and fun
(setq charset
(or (cdr (assq
arg
gnus-summary-show-article-charset-alist))
(read-coding-system "Charset: "))))
(if (mm-handle-undisplayer handle)
(mm-remove-part handle)))
(gnus-mime-set-charset-parameters handle charset)
(when (and (consp (setq form (cdr-safe fun)))
(setq form (ignore-errors
(assq 'gnus-mime-display-alternative form)))
(setq preferred (caddr form))
(progn
(when (eq (car preferred) 'quote)
(setq preferred (cadr preferred)))
(not (equal preferred
(get-text-property (point) 'gnus-data))))
(setq parts (get-text-property (point) 'gnus-part))
(setq parts (cdr (assq parts
gnus-article-mime-handle-alist)))
(equal (mm-handle-media-type parts) "multipart/alternative")
(setq parts (reverse (cdr parts))))
(setcar (cddr form)
(list 'quote (or (cadr (member preferred parts))
(car parts)))))
(funcall fun handle))))))