Function: message-cancel-news
message-cancel-news is an interactive and byte-compiled function
defined in message.el.gz.
Signature
(message-cancel-news &optional ARG)
Documentation
Cancel an article you posted.
If ARG, allow editing of the cancellation message.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/message.el.gz
;;;###autoload
(defun message-cancel-news (&optional arg)
"Cancel an article you posted.
If ARG, allow editing of the cancellation message."
(interactive "P")
(unless (message-news-p)
(error "This is not a news article; canceling is impossible"))
(let (from newsgroups message-id distribution buf)
(save-excursion
;; Get header info from original article.
(save-restriction
(message-narrow-to-head-1)
(setq from (message-fetch-field "from")
newsgroups (message-fetch-field "newsgroups")
message-id (message-fetch-field "message-id" t)
distribution (message-fetch-field "distribution")))
;; Make sure that this article was written by the user.
(unless (message-is-yours-p)
(error "This article is not yours"))
(when (yes-or-no-p "Do you really want to cancel this article? ")
;; Make control message.
(if arg
(message-news)
(setq buf (set-buffer (gnus-get-buffer-create " *message cancel*"))))
(erase-buffer)
(insert "Newsgroups: " newsgroups "\n"
"From: " from "\n"
"Subject: cancel " message-id "\n"
"Control: cancel " message-id "\n"
(if distribution
(concat "Distribution: " distribution "\n")
"")
mail-header-separator "\n"
message-cancel-message)
(run-hooks 'message-cancel-hook)
(unless arg
(message "Canceling your article...")
(if (let ((message-syntax-checks
'dont-check-for-anything-just-trust-me))
(funcall message-send-news-function))
(message "Canceling your article...done"))
(kill-buffer buf))))))