Function: gnus-summary-save-in-folder

gnus-summary-save-in-folder is an autoloaded and byte-compiled function defined in gnus-mh.el.gz.

Signature

(gnus-summary-save-in-folder &optional FOLDER)

Documentation

Save this article to MH folder (using rcvstore in MH library).

Optional argument FOLDER specifies folder name.

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/gnus-mh.el.gz
(defun gnus-summary-save-in-folder (&optional folder)
  "Save this article to MH folder (using `rcvstore' in MH library).
Optional argument FOLDER specifies folder name."
  ;; Thanks to yuki@flab.Fujitsu.JUNET and ohm@kaba.junet.
  (mh-find-path)
  (let ((folder
	 (cond ((and (eq folder 'default)
		     gnus-newsgroup-last-folder)
		gnus-newsgroup-last-folder)
	       (folder folder)
	       (t (mh-prompt-for-folder
		   "Save article in"
		   (funcall gnus-folder-save-name gnus-newsgroup-name
			    gnus-current-headers gnus-newsgroup-last-folder)
		   t))))
	(errbuf (gnus-get-buffer-create " *Gnus rcvstore*"))
	;; Find the rcvstore program.
	(exec-path (cond
		    ((and (boundp 'mh-lib-progs) mh-lib-progs)
		     (cons mh-lib-progs exec-path))
		    (mh-lib (cons mh-lib exec-path))
		    (t exec-path))))
    (with-current-buffer gnus-original-article-buffer
      (save-restriction
	(widen)
	(unwind-protect
	    (apply
	     #'call-process-region
	     (point-min) (point-max) "rcvstore" nil errbuf nil folder
	     gnus-rcvstore-options)
	  (set-buffer errbuf)
	  (if (zerop (buffer-size))
	      (message "Article saved in folder: %s" folder)
	    (message "%s" (buffer-string)))
	  (kill-buffer errbuf))))
    (setq gnus-newsgroup-last-folder folder)))