Mercurial > emacs
changeset 100640:40652147be0c
(pmail-swap-buffers-maybe): Variable deleted.
All uses call the function instead.
(pmail-save): Function deleted.
(pmail-mode-map): Don't bind C-x C-s.
(pmail-mode-1): Don't set up write-region-annotate-functions.
(pmail-write-region-annotate): Function deleted.
(pmail-change-major-mode-hook): Set buffer-swapped-with.
(pmail-use-collection-buffer): Likewise.
(pmail-show-message): Likewise.
(pmail-swap-buffers-maybe): Go to pmail-buffer before
testing anything.
(pmail): Call pmail-swap-buffers-maybe only if already in Pmail mode.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 22 Dec 2008 19:54:59 +0000 |
parents | 752b6a20d191 |
children | 413e7b650cf7 |
files | lisp/mail/pmail.el |
diffstat | 1 files changed, 13 insertions(+), 42 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/mail/pmail.el Mon Dec 22 19:48:08 2008 +0000 +++ b/lisp/mail/pmail.el Mon Dec 22 19:54:59 2008 +0000 @@ -92,11 +92,6 @@ (defvar total-messages) (defvar tool-bar-map) -(defvar pmail-buffers-swapped-p nil - "A flag that is non-nil when the message view buffer and the - message collection buffer are swapped, i.e. the Pmail buffer - contains a single decoded message.") - (defvar pmail-header-style 'normal "The current header display style choice, one of 'normal (selected headers) or 'full (all headers).") @@ -872,7 +867,8 @@ (find-file-noselect file-name)))) ;; Insure that the collection and view buffers are in sync and ;; insure that a message is not being edited. - (pmail-swap-buffers-maybe) + (if (eq major-mode 'pmail-mode) + (pmail-swap-buffers-maybe)) (if (eq major-mode 'pmail-edit-mode) (error "Exit Pmail Edit mode before getting new mail")) (or (and existed (> (buffer-size) 0)) @@ -1000,7 +996,6 @@ ;; I find I can't live without the default M-r command -- rms. ;; (define-key pmail-mode-map "\er" 'pmail-search-backwards) (define-key pmail-mode-map "s" 'pmail-expunge-and-save) - (define-key pmail-mode-map "\C-x\C-s" 'pmail-save) (define-key pmail-mode-map "\es" 'pmail-search) (define-key pmail-mode-map "t" 'pmail-toggle-header) (define-key pmail-mode-map "u" 'pmail-undelete-previous-message) @@ -1267,7 +1262,6 @@ (set-syntax-table text-mode-syntax-table) (setq local-abbrev-table text-mode-abbrev-table) ;; First attempt at adding hook functions to support buffer swapping... - (add-hook 'write-region-annotate-functions 'pmail-write-region-annotate nil t) (add-hook 'kill-buffer-hook 'pmail-mode-kill-buffer-hook nil t) (add-hook 'change-major-mode-hook 'pmail-change-major-mode-hook nil t)) @@ -1280,22 +1274,10 @@ (unless buf (generate-new-buffer name)))) -;; Used in write-region-annotate-functions to write Pmail files out -;; correctly. -(defun pmail-write-region-annotate (start end) - ;; When called from write-file (and auto-save), `start' is nil. - ;; When called from M-x write-region, we assume the user wants to save - ;; (part of) the inbox, not the message display data. - (unless (or start (not pmail-buffers-swapped-p)) - ;;(tar-clear-modification-flags) - (set-buffer pmail-view-buffer) - (widen) - nil)) - (defun pmail-change-major-mode-hook () ;; Bring the actual Pmail messages back into the main buffer. (when (pmail-buffers-swapped-p) - (current-buffer) + (setq buffer-swapped-with nil) (buffer-swap-text pmail-view-buffer))) ;; Throw away the summary. ;;(when (buffer-live-p pmail-view-buffer) (kill-buffer pmail-view-buffer))) @@ -1347,7 +1329,6 @@ (user-login-name))))))) (make-local-variable 'pmail-keywords) (set (make-local-variable 'tool-bar-map) pmail-tool-bar-map) - (make-local-variable 'pmail-buffers-swapped-p) ;; this gets generated as needed (setq pmail-keywords nil)) @@ -1420,16 +1401,6 @@ (pmail-select-summary (set-buffer-modified-p nil)) (pmail-show-message))) -(defun pmail-save () - "Save the PMAIL file." - (interactive) - (set-buffer pmail-buffer) - (pmail-swap-buffers-maybe) - (save-buffer) - (if (pmail-summary-exists) - (pmail-select-summary (set-buffer-modified-p nil)) - (pmail-show-message))) - (defun pmail-quit () "Quit out of PMAIL. Hook `pmail-quit-hook' is run after expunging." @@ -2231,9 +2202,9 @@ swapped state, i.e. it currently contains a single decoded message rather than an entire message collection, nil otherwise." (let (result) - (when pmail-buffers-swapped-p + (when (pmail-buffers-swapped-p) (buffer-swap-text pmail-view-buffer) - (setq pmail-buffers-swapped-p nil + (setq buffer-swapped-with nil result pmail-current-message)) result)) @@ -2243,7 +2214,7 @@ display it. Return nil." (let (result) (cond - ((not pmail-buffers-swapped-p) + ((not (pmail-buffers-swapped-p)) (let ((message (or msgnum pmail-current-message))) (pmail-show-message message))) ((and msgnum (/= msgnum pmail-current-message)) @@ -2461,10 +2432,10 @@ (defun pmail-swap-buffers-maybe () "Determine if the Pmail buffer is showing a message. If so restore the actual mbox message collection." - (when pmail-buffers-swapped-p - (with-current-buffer pmail-buffer + (with-current-buffer pmail-buffer + (when (pmail-buffers-swapped-p) (buffer-swap-text pmail-view-buffer) - (setq pmail-buffers-swapped-p nil)))) + (setq buffer-swapped-with nil)))) (defun pmail-show-message-maybe (&optional n no-summary) "Show message number N (prefix argument), counting from start of file. @@ -2583,7 +2554,7 @@ ;; the view buffer/mail buffer contents. (pmail-display-labels) (buffer-swap-text pmail-view-buffer) - (setq pmail-buffers-swapped-p t) + (setq buffer-swapped-with pmail-view-buffer) (run-hooks 'pmail-show-message-hook)) blurb)) @@ -2818,7 +2789,7 @@ (let ((orig-message pmail-current-message) (msg pmail-current-message) (reversep (< n 0)) - (opoint (if pmail-buffers-swapped-p (point))) + (opoint (if (pmail-buffers-swapped-p) (point))) found) (pmail-swap-buffers-maybe) (pmail-maybe-set-message-counters) @@ -3150,7 +3121,7 @@ (when (pmail-expunge-confirmed) (let ((old-total pmail-total-messages) (opoint (with-current-buffer pmail-buffer - (when pmail-buffers-swapped-p + (when (pmail-buffers-swapped-p) (point))))) (pmail-only-expunge dont-show) (if (pmail-summary-exists) @@ -3209,7 +3180,7 @@ (save-excursion (save-restriction (widen) - (if pmail-buffers-swapped-p + (if (pmail-buffers-swapped-p) (narrow-to-region (goto-char (point-min)) (search-forward "\n\n" nil 'move))