+ (let ((rest (memq wl-summary-buffer-display-mime-mode
+ wl-summary-display-mime-mode-list))
+ (elmo-mime-display-as-is-coding-system
+ elmo-mime-display-as-is-coding-system))
+ (if (numberp arg)
+ (setq wl-summary-buffer-display-mime-mode
+ (case arg
+ (1 'mime)
+ (2 'header-only)
+ (3 'as-is)))
+ (if arg
+ ;; Specify coding-system (doesn't change the MIME mode).
+ (setq elmo-mime-display-as-is-coding-system
+ (if (and arg (not (eq wl-summary-buffer-display-mime-mode
+ 'mime)))
+ (or (read-coding-system "Coding system: ")
+ elmo-mime-display-as-is-coding-system)
+ elmo-mime-display-as-is-coding-system))
+ ;; Change the MIME mode.
+ (if (cadr rest)
+ (setq wl-summary-buffer-display-mime-mode (cadr rest))
+ (setq wl-summary-buffer-display-mime-mode
+ (car wl-summary-display-mime-mode-list)))))
+ (wl-summary-redisplay arg)
+ (wl-summary-update-modeline)
+ (message "MIME decoding: %s%s"
+ (upcase (symbol-name wl-summary-buffer-display-mime-mode))
+ (if (and arg
+ (not (numberp arg))
+ (not (eq wl-summary-buffer-display-mime-mode
+ 'mime)))
+ (concat " ("
+ (symbol-name elmo-mime-display-as-is-coding-system)
+ ")")
+ ""))))