2005-08-29 Reiner Steib <Reiner.Steib@gmx.de>
+ * gnus-sum.el (gnus-summary-mime-map): Added
+ gnus-article-save-part-and-strip, gnus-article-delete-part and
+ gnus-article-jump-to-part.
+
* gnus-art.el (gnus-article-edit-article): Added quiet argument.
(gnus-article-edit-part): Use it.
+ (gnus-article-part-wrapper): Added no-handle argument.
+ (gnus-article-save-part-and-strip, gnus-article-delete-part): New
+ functions.
2005-08-29 Romain Francoise <romain@orebokech.com>
(if action-pair
(funcall (cdr action-pair)))))
-(defun gnus-article-part-wrapper (n function)
+(defun gnus-article-part-wrapper (n function &optional no-handle)
(with-current-buffer gnus-article-buffer
(when (> n (length gnus-article-mime-handle-alist))
(error "No such part"))
(gnus-article-goto-part n)
- (let ((handle (cdr (assq n gnus-article-mime-handle-alist))))
- (funcall function handle))))
+ (if no-handle
+ (funcall function)
+ (let ((handle (cdr (assq n gnus-article-mime-handle-alist))))
+ (funcall function handle)))))
(defun gnus-article-pipe-part (n)
"Pipe MIME part N, which is the numerical prefix."
(interactive "p")
(gnus-article-part-wrapper n 'gnus-mime-inline-part))
+(defun gnus-article-save-part-and-strip (n)
+ "Save MIME part N and replace it with an external body.
+N is the numerical prefix."
+ (interactive "p")
+ (gnus-article-part-wrapper n 'gnus-mime-save-part-and-strip t))
+
+(defun gnus-article-delete-part (n)
+ "Delete MIME part N and add some information about the removed part.
+N is the numerical prefix."
+ (interactive "p")
+ (gnus-article-part-wrapper n 'gnus-mime-delete-part t))
+
(defun gnus-article-mime-match-handle-first (condition)
(if condition
(let (n)
"m" gnus-summary-repair-multipart
"v" gnus-article-view-part
"o" gnus-article-save-part
+ "O" gnus-article-save-part-and-strip
+ "d" gnus-article-delete-part
+ "j" gnus-article-jump-to-part
"c" gnus-article-copy-part
"C" gnus-article-view-part-as-charset
"e" gnus-article-view-part-externally