Function: gnus-mime-delete-part
gnus-mime-delete-part is an interactive and byte-compiled function
defined in gnus-art.el.gz.
Signature
(gnus-mime-delete-part &optional EVENT)
Documentation
Delete the MIME part under point.
Replace it with some information about the removed part.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-art.el.gz
;; A function like `gnus-summary-save-parts' (`X m', `<MIME> <Extract all
;; parts...>') but with stripping would be nice.
(defun gnus-mime-delete-part (&optional event)
"Delete the MIME part under point.
Replace it with some information about the removed part."
(interactive (list last-nonmenu-event) gnus-article-mode)
(mouse-set-point event)
(gnus-article-check-buffer)
(when (gnus-group-read-only-p)
(error "The current group does not support deleting of parts"))
(when (mm-complicated-handles gnus-article-mime-handles)
(error "\
The current article has a complicated MIME structure, giving up..."))
(when (or gnus-expert-user
(gnus-yes-or-no-p "\
Deleting parts may malfunction or destroy the article; continue? "))
(let* ((data (get-text-property (point) 'gnus-data))
(id (get-text-property (point) 'gnus-part))
(handles gnus-article-mime-handles)
(description
(let ((desc (mm-handle-description data)))
(when desc
(mail-decode-encoded-word-string desc))))
(filename (or (mm-handle-filename data) "(none)"))
(type (mm-handle-media-type data)))
(unless data
(error "No MIME part under point"))
(with-current-buffer (mm-handle-buffer data)
(let ((bsize (buffer-size)))
(erase-buffer)
(insert
(concat
",----\n"
"| The following attachment has been deleted:\n"
"|\n"
"| Type: " type "\n"
"| Filename: " filename "\n"
"| Size (encoded): " (format "%s byte%s\n"
bsize (if (= bsize 1)
""
"s"))
(when description
(concat "| Description: " description "\n"))
"`----\n"))
(setcdr data
(cdr (mm-make-handle
nil '("text/plain" (charset . gnus-decoded)) nil nil
(list "attachment")
(format "Deleted attachment (%s bytes)" bsize))))))
;; (set-buffer gnus-summary-buffer)
(gnus-article-edit-part handles id))))