+2001-01-09 01:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * mm-decode.el (mm-interactively-view-part): Don't copy-sequence
+ handle.
+ * gnus-art.el (gnus-mime-view-part): Copy it.
+ (gnus-mime-view-part-as-type): Add into gnus-article-mime-handles.
+
+2001-01-09 Michael Downes <mjd@ams.org>
+
+ * gnus-sum.el (gnus-summary-read-group-1): More useful message.
+
2001-01-08 23:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
* nnmail.el (nnmail-get-new-mail): Find group only if file is not
(gnus-article-check-buffer)
(let ((data (get-text-property (point) 'gnus-data)))
(when data
+ (push (setq data (copy-sequence data)) gnus-article-mime-handles)
(mm-interactively-view-part data))))
(defun gnus-mime-view-part-as-type-internal ()
(def-type (and name (mm-default-file-encoding name))))
(and def-type (cons def-type 0))))
-(defun gnus-mime-view-part-as-type (mime-type)
+(defun gnus-mime-view-part-as-type (&optional mime-type)
"Choose a MIME media type, and view the part as such."
- (interactive
- (list (completing-read
- "View as MIME type: "
- (mapcar #'list (mailcap-mime-types))
- nil nil
- (gnus-mime-view-part-as-type-internal))))
+ (interactive)
+ (unless mime-type
+ (setq mime-type (completing-read
+ "View as MIME type: "
+ (mapcar #'list (mailcap-mime-types))
+ nil nil
+ (gnus-mime-view-part-as-type-internal))))
(gnus-article-check-buffer)
(let ((handle (get-text-property (point) 'gnus-data)))
(when handle
- (gnus-mm-display-part
- (mm-make-handle (mm-handle-buffer handle)
- (cons mime-type (cdr (mm-handle-type handle)))
- (mm-handle-encoding handle)
- (mm-handle-undisplayer handle)
- (mm-handle-disposition handle)
- (mm-handle-description handle)
- (mm-handle-cache handle)
- (mm-handle-id handle))))))
-
+ (setq handle
+ (mm-make-handle (mm-handle-buffer handle)
+ (cons mime-type (cdr (mm-handle-type handle)))
+ (mm-handle-encoding handle)
+ (mm-handle-undisplayer handle)
+ (mm-handle-disposition handle)
+ (mm-handle-description handle)
+ (mm-handle-cache handle)
+ (mm-handle-id handle)))
+ (push handle gnus-article-mime-handles)
+ (gnus-mm-display-part handle))))
+
(defun gnus-mime-copy-part (&optional handle)
"Put the the MIME part under point into a new buffer."
(interactive)
(gnus-group-jump-to-group group)
(gnus-group-next-unread-group 1))
(gnus-handle-ephemeral-exit quit-config)))
- (gnus-message 3 "Can't select group")
+ (let ((grpinfo (gnus-get-info group)))
+ (if (null (gnus-info-read grpinfo))
+ (gnus-message 3 "Group %s contains no messages" group)
+ (gnus-message 3 "Can't select group")))
nil)
;; The user did a `C-g' while prompting for number of articles,
;; so we exit this group.
(error "No method given"))
(if (string-match "^[^% \t]+$" method)
(setq method (concat method " %s")))
- (mm-display-external (copy-sequence handle) method)))
+ (mm-display-external handle method)))
(defun mm-preferred-alternative (handles &optional preferred)
"Say which of HANDLES are preferred."