Mercurial > emacs
changeset 23985:9cdc05332687
(rmail-summary-output-to-rmail-file):
Use rmail-output-read-rmail-file-name to read the file name.
Always call rmail-output-to-rmail-file noninteractively.
When count > 1, do the loop here.
Handle rmail-delete-after-output here.
(rmail-summary-output): Similar changes.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 04 Jan 1999 01:36:00 +0000 |
parents | 2bc2b506f787 |
children | 2c996615e2e9 |
files | lisp/mail/rmailsum.el |
diffstat | 1 files changed, 36 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/mail/rmailsum.el Sun Jan 03 16:36:41 1999 +0000 +++ b/lisp/mail/rmailsum.el Mon Jan 04 01:36:00 1999 +0000 @@ -1456,7 +1456,7 @@ ;; Summary output commands. -(defun rmail-summary-output-to-rmail-file (&optional file-name) +(defun rmail-summary-output-to-rmail-file (&optional file-name &optional n) "Append the current message to an Rmail file named FILE-NAME. If the file does not exist, ask if it should be created. If file is being visited, the message is appended to the Emacs @@ -1464,11 +1464,41 @@ A prefix argument N says to output N consecutive messages starting with the current one. Deleted messages are skipped and don't count." - (interactive) - (with-current-buffer rmail-buffer - (if file-name - (rmail-output-to-rmail-file file-name) - (call-interactively 'rmail-output-to-rmail-file)))) + (interactive + (progn (require 'rmailout) + (list (rmail-output-read-rmail-file-name) + (prefix-numeric-value current-prefix-arg)))) + (let ((i 0)) + (while (< i n) + (setq i (1+ i)) + (rmail-summary-goto-msg) + (with-current-buffer rmail-buffer + (let ((rmail-delete-after-output nil)) + (rmail-output-to-rmail-file file-name 1))) + (if rmail-delete-after-output + (rmail-summary-delete-forward nil) + (if (< i n) + (rmail-summary-next-msg 1)))))) + +(defun rmail-summary-output (&optional file-name n) + "Append this message to Unix mail file named FILE-NAME. + +A prefix argument N says to output N consecutive messages +starting with the current one. Deleted messages are skipped and don't count." + (interactive + (progn (require 'rmailout) + (list (rmail-output-read-file-name) + (prefix-numeric-value current-prefix-arg)))) + (let ((i 0)) + (while (< i n) + (setq i (1+ i)) + (with-current-buffer rmail-buffer + (let ((rmail-delete-after-output nil)) + (rmail-output file-name 1))) + (if rmail-delete-after-output + (rmail-summary-delete-forward nil) + (if (< i n) + (rmail-summary-next-msg 1)))))) (defun rmail-summary-output-menu () "Output current message to another Rmail file, chosen with a menu. @@ -1483,17 +1513,6 @@ (if rmail-delete-after-output (rmail-summary-delete-forward nil))) -(defun rmail-summary-output (&optional file-name) - "Append this message to Unix mail file named FILE-NAME. - -A prefix argument N says to output N consecutive messages -starting with the current one. Deleted messages are skipped and don't count." - (interactive) - (with-current-buffer rmail-buffer - (if file-name - (rmail-output file-name) - (call-interactively 'rmail-output)))) - (defun rmail-summary-construct-io-menu () (let ((files (rmail-find-all-files rmail-secondary-file-directory))) (if files