[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs/lisp/gnus ChangeLog gnus-util.el
From: |
Glenn Morris |
Subject: |
[Emacs-diffs] emacs/lisp/gnus ChangeLog gnus-util.el |
Date: |
Sun, 15 Feb 2009 00:31:08 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Glenn Morris <gm> 09/02/15 00:31:08
Modified files:
lisp/gnus : ChangeLog gnus-util.el
Log message:
(rmail-insert-rmail-file-header, rmail-count-new-messages)
(rmail-show-message): Remove unnecessary autoloads.
(rmail-default-rmail-file): Remove unnecessary declaration.
(gnus-output-to-rmail): Handle mbox Rmail as well as Babyl Rmail.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/gnus/ChangeLog?cvsroot=emacs&r1=1.797&r2=1.798
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/gnus/gnus-util.el?cvsroot=emacs&r1=1.70&r2=1.71
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/gnus/ChangeLog,v
retrieving revision 1.797
retrieving revision 1.798
diff -u -b -r1.797 -r1.798
--- ChangeLog 14 Feb 2009 05:09:13 -0000 1.797
+++ ChangeLog 15 Feb 2009 00:31:07 -0000 1.798
@@ -1,3 +1,11 @@
+2009-02-15 Glenn Morris <address@hidden>
+
+ * gnus-util.el (rmail-insert-rmail-file-header)
+ (rmail-count-new-messages, rmail-show-message): Remove unnecessary
+ autoloads.
+ (rmail-default-rmail-file): Remove unnecessary declaration.
+ (gnus-output-to-rmail): Handle mbox Rmail as well as Babyl Rmail.
+
2009-02-14 Glenn Morris <address@hidden>
* gnus.el (rmail-default-rmail-file): Remove declaration of deleted
Index: gnus-util.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/gnus/gnus-util.el,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -b -r1.70 -r1.71
--- gnus-util.el 5 Jan 2009 03:22:05 -0000 1.70
+++ gnus-util.el 15 Feb 2009 00:31:07 -0000 1.71
@@ -52,9 +52,6 @@
(autoload 'message-fetch-field "message")
(autoload 'gnus-get-buffer-window "gnus-win")
-(autoload 'rmail-insert-rmail-file-header "rmail")
-(autoload 'rmail-count-new-messages "rmail")
-(autoload 'rmail-show-message "rmail")
(autoload 'nnheader-narrow-to-headers "nnheader")
(autoload 'nnheader-replace-chars-in-string "nnheader")
(autoload 'mail-header-remove-comments "mail-parse")
@@ -1053,31 +1050,45 @@
(autoload 'rmail-summary-displayed "rmail")
(autoload 'rmail-maybe-display-summary "rmail"))))
-(defvar rmail-default-rmail-file)
(defvar mm-text-coding-system)
(declare-function mm-append-to-file "mm-util"
(start end filename &optional codesys inhibit))
(defun gnus-output-to-rmail (filename &optional ask)
- "Append the current article to an Rmail file named FILENAME."
+ "Append the current article to an Rmail file named FILENAME.
+In Emacs 22 this writes Babyl format; in Emacs 23 it writes mbox unless
+FILENAME exists and is Babyl format."
(require 'rmail)
(require 'mm-util)
- ;; Most of these codes are borrowed from rmailout.el.
+ ;; Some of this codes is borrowed from rmailout.el.
(setq filename (expand-file-name filename))
- (setq rmail-default-rmail-file filename)
+ ;; FIXME should we really be messing with this defcustom?
+ ;; It is not needed for the operation of this function.
+ (if (boundp 'rmail-default-rmail-file)
+ (setq rmail-default-rmail-file filename) ; 22
+ (setq rmail-default-file filename)) ; 23
(let ((artbuf (current-buffer))
- (tmpbuf (get-buffer-create " *Gnus-output*")))
+ (tmpbuf (get-buffer-create " *Gnus-output*"))
+ ;; Babyl rmail.el defines this, mbox does not.
+ (babyl (fboundp 'rmail-insert-rmail-file-header)))
(save-excursion
+ ;; Note that we ignore the possibility of visiting a Babyl
+ ;; format buffer in Emacs 23, since Rmail no longer supports that.
(or (get-file-buffer filename)
- (file-exists-p filename)
+ (progn
+ ;; In case someone wants to write to a Babyl file from Emacs 23.
+ (when (file-exists-p filename)
+ (setq babyl (mail-file-babyl-p filename))
+ t))
(if (or (not ask)
(gnus-yes-or-no-p
(concat "\"" filename "\" does not exist, create it? ")))
(let ((file-buffer (create-file-buffer filename)))
(save-excursion
(set-buffer file-buffer)
- (rmail-insert-rmail-file-header)
+ (if (fboundp 'rmail-insert-rmail-file-header)
+ (rmail-insert-rmail-file-header))
(let ((require-final-newline nil)
(coding-system-for-write mm-text-coding-system))
(gnus-write-buffer filename)))
@@ -1086,32 +1097,56 @@
(set-buffer tmpbuf)
(erase-buffer)
(insert-buffer-substring artbuf)
+ (if babyl
(gnus-convert-article-to-rmail)
+ ;; Non-Babyl case copied from gnus-output-to-mail.
+ (goto-char (point-min))
+ (if (looking-at "From ")
+ (forward-line 1)
+ (insert "From nobody " (current-time-string) "\n"))
+ (let (case-fold-search)
+ (while (re-search-forward "^From " nil t)
+ (beginning-of-line)
+ (insert ">"))))
;; Decide whether to append to a file or to an Emacs buffer.
(let ((outbuf (get-file-buffer filename)))
(if (not outbuf)
+ (progn
+ (unless babyl ; from gnus-output-to-mail
+ (let ((buffer-read-only nil))
+ (goto-char (point-max))
+ (forward-char -2)
+ (unless (looking-at "\n\n")
+ (goto-char (point-max))
+ (unless (bolp)
+ (insert "\n"))
+ (insert "\n"))))
(let ((file-name-coding-system nnmail-pathname-coding-system))
- (mm-append-to-file (point-min) (point-max) filename))
+ (mm-append-to-file (point-min) (point-max) filename)))
;; File has been visited, in buffer OUTBUF.
(set-buffer outbuf)
(let ((buffer-read-only nil)
(msg (and (boundp 'rmail-current-message)
(symbol-value 'rmail-current-message))))
;; If MSG is non-nil, buffer is in RMAIL mode.
+ ;; Compare this with rmail-output-to-rmail-buffer in Emacs 23.
(when msg
+ (unless babyl
+ (rmail-swap-buffers-maybe)
+ (rmail-maybe-set-message-counters))
(widen)
(narrow-to-region (point-max) (point-max)))
(insert-buffer-substring tmpbuf)
(when msg
+ (when babyl
(goto-char (point-min))
(widen)
(search-backward "\n\^_")
- (narrow-to-region (point) (point-max))
+ (narrow-to-region (point) (point-max)))
(rmail-count-new-messages t)
(when (rmail-summary-exists)
(rmail-select-summary
(rmail-update-summary)))
- (rmail-count-new-messages t)
(rmail-show-message msg))
(save-buffer)))))
(kill-buffer tmpbuf)))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] emacs/lisp/gnus ChangeLog gnus-util.el,
Glenn Morris <=