aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Morris2008-09-16 02:45:51 +0000
committerGlenn Morris2008-09-16 02:45:51 +0000
commit0cf1893f3416bd0ef448ac6529a9bec2073e9035 (patch)
tree702228b60e32c5031d8c4c7f508add457a2f6863
parent62d93502dd0639a1364424f649060b05f4d69713 (diff)
downloademacs-0cf1893f3416bd0ef448ac6529a9bec2073e9035.tar.gz
emacs-0cf1893f3416bd0ef448ac6529a9bec2073e9035.zip
Remove file.
-rw-r--r--lisp/mail/mbox-trunk-annotations/rmailsum.el.annotation1706
-rw-r--r--lisp/mail/subdirs.el8
2 files changed, 0 insertions, 1714 deletions
diff --git a/lisp/mail/mbox-trunk-annotations/rmailsum.el.annotation b/lisp/mail/mbox-trunk-annotations/rmailsum.el.annotation
deleted file mode 100644
index afb5270c8f3..00000000000
--- a/lisp/mail/mbox-trunk-annotations/rmailsum.el.annotation
+++ /dev/null
@@ -1,1706 +0,0 @@
11.9 (eric 17-Mar-93): ;;; rmailsum.el --- make summary buffers for the mail reader
21.8 (eric 17-Mar-93):
31.136 (ttn 06-Aug-05): ;; Copyright (C) 1985, 1993, 1994, 1995, 1996, 2000, 2001, 2002, 2003,
41.149 (miles 08-Jan-08): ;; 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
51.2 (eric 30-May-92):
61.3 (eric 16-Jul-92): ;; Maintainer: FSF
71.4 (eric 17-Jul-92): ;; Keywords: mail
81.1 (jimb 30-Nov-90):
91.1 (jimb 30-Nov-90): ;; This file is part of GNU Emacs.
101.1 (jimb 30-Nov-90):
111.151 (gm 06-May-08): ;; GNU Emacs is free software: you can redistribute it and/or modify
121.1 (jimb 30-Nov-90): ;; it under the terms of the GNU General Public License as published by
131.151 (gm 06-May-08): ;; the Free Software Foundation, either version 3 of the License, or
141.151 (gm 06-May-08): ;; (at your option) any later version.
151.1 (jimb 30-Nov-90):
161.1 (jimb 30-Nov-90): ;; GNU Emacs is distributed in the hope that it will be useful,
171.1 (jimb 30-Nov-90): ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
181.1 (jimb 30-Nov-90): ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
191.1 (jimb 30-Nov-90): ;; GNU General Public License for more details.
201.1 (jimb 30-Nov-90):
211.1 (jimb 30-Nov-90): ;; You should have received a copy of the GNU General Public License
221.151 (gm 06-May-08): ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
231.1 (jimb 30-Nov-90):
241.8 (eric 17-Mar-93): ;;; Commentary:
251.8 (eric 17-Mar-93):
261.6 (rms 09-Mar-93): ;; Extended by Bob Weiner of Motorola
271.6 (rms 09-Mar-93): ;; Provided all commands from rmail-mode in rmail-summary-mode and made key
281.6 (rms 09-Mar-93): ;; bindings in both modes wholly compatible.
291.8 (eric 17-Mar-93):
301.8 (eric 17-Mar-93): ;;; Code:
311.6 (rms 09-Mar-93):
321.138 (lektu 29-Aug-05): (defvar msgnum)
331.138 (lektu 29-Aug-05):
341.70 (rms 21-Aug-95): ;; For rmail-select-summary
351.70 (rms 21-Aug-95): (require 'rmail)
361.70 (rms 21-Aug-95):
371.82 (rms 04-Apr-96): ;;;###autoload
381.96 (rms 03-May-97): (defcustom rmail-summary-scroll-between-messages t
391.96 (rms 03-May-97): "*Non-nil means Rmail summary scroll commands move between messages."
401.96 (rms 03-May-97): :type 'boolean
411.96 (rms 03-May-97): :group 'rmail-summary)
421.82 (rms 04-Apr-96):
431.91 (rms 04-Oct-96): ;;;###autoload
441.96 (rms 03-May-97): (defcustom rmail-summary-line-count-flag t
451.127 (jpw 06-Feb-03): "*Non-nil means Rmail summary should show the number of lines in each message."
461.96 (rms 03-May-97): :type 'boolean
471.96 (rms 03-May-97): :group 'rmail-summary)
481.91 (rms 04-Oct-96):
491.55 (rms 07-Oct-94): (defvar rmail-summary-font-lock-keywords
501.122 (eliz 21-Oct-01): '(("^.....D.*" . font-lock-string-face) ; Deleted.
511.122 (eliz 21-Oct-01): ("^.....-.*" . font-lock-type-face) ; Unread.
521.55 (rms 07-Oct-94): ;; Neither of the below will be highlighted if either of the above are:
531.122 (eliz 21-Oct-01): ("^.....[^D-] \\(......\\)" 1 font-lock-keyword-face) ; Date.
541.130 (rms 30-Sep-03): ("{ \\([^\n}]+\\) }" 1 font-lock-comment-face)) ; Labels.
551.55 (rms 07-Oct-94): "Additional expressions to highlight in Rmail Summary mode.")
561.55 (rms 07-Oct-94):
571.134 (rms 03-Jul-05): (defvar rmail-summary-redo
581.134 (rms 03-Jul-05): "(FUNCTION . ARGS) to regenerate this Rmail summary buffer.")
591.134 (rms 03-Jul-05):
601.134 (rms 03-Jul-05): (defvar rmail-summary-overlay nil)
611.134 (rms 03-Jul-05): (put 'rmail-summary-overlay 'permanent-local t)
621.134 (rms 03-Jul-05):
631.134 (rms 03-Jul-05): (defvar rmail-summary-mode-map nil)
641.134 (rms 03-Jul-05):
651.6 (rms 09-Mar-93): ;; Entry points for making a summary buffer.
661.6 (rms 09-Mar-93):
671.6 (rms 09-Mar-93): ;; Regenerate the contents of the summary
681.6 (rms 09-Mar-93): ;; using the same selection criterion as last time.
691.6 (rms 09-Mar-93): ;; M-x revert-buffer in a summary buffer calls this function.
701.6 (rms 09-Mar-93): (defun rmail-update-summary (&rest ignore)
711.6 (rms 09-Mar-93): (apply (car rmail-summary-redo) (cdr rmail-summary-redo)))
721.1 (jimb 30-Nov-90):
731.90 (rms 27-Sep-96): ;;;###autoload
741.1 (jimb 30-Nov-90): (defun rmail-summary ()
751.1 (jimb 30-Nov-90): "Display a summary of all messages, one line per message."
761.1 (jimb 30-Nov-90): (interactive)
771.6 (rms 09-Mar-93): (rmail-new-summary "All" '(rmail-summary) nil))
781.1 (jimb 30-Nov-90):
791.90 (rms 27-Sep-96): ;;;###autoload
801.1 (jimb 30-Nov-90): (defun rmail-summary-by-labels (labels)
811.1 (jimb 30-Nov-90): "Display a summary of all messages with one or more LABELS.
821.1 (jimb 30-Nov-90): LABELS should be a string containing the desired labels, separated by commas."
831.1 (jimb 30-Nov-90): (interactive "sLabels to summarize by: ")
841.1 (jimb 30-Nov-90): (if (string= labels "")
851.1 (jimb 30-Nov-90): (setq labels (or rmail-last-multi-labels
861.1 (jimb 30-Nov-90): (error "No label specified"))))
871.1 (jimb 30-Nov-90): (setq rmail-last-multi-labels labels)
881.1 (jimb 30-Nov-90): (rmail-new-summary (concat "labels " labels)
891.6 (rms 09-Mar-93): (list 'rmail-summary-by-labels labels)
901.1 (jimb 30-Nov-90): 'rmail-message-labels-p
911.1 (jimb 30-Nov-90): (concat ", \\(" (mail-comma-list-regexp labels) "\\),")))
921.1 (jimb 30-Nov-90):
931.90 (rms 27-Sep-96): ;;;###autoload
941.1 (jimb 30-Nov-90): (defun rmail-summary-by-recipients (recipients &optional primary-only)
951.1 (jimb 30-Nov-90): "Display a summary of all messages with the given RECIPIENTS.
961.1 (jimb 30-Nov-90): Normally checks the To, From and Cc fields of headers;
971.1 (jimb 30-Nov-90): but if PRIMARY-ONLY is non-nil (prefix arg given),
981.1 (jimb 30-Nov-90): only look in the To and From fields.
991.6 (rms 09-Mar-93): RECIPIENTS is a string of regexps separated by commas."
1001.1 (jimb 30-Nov-90): (interactive "sRecipients to summarize by: \nP")
1011.1 (jimb 30-Nov-90): (rmail-new-summary
1021.1 (jimb 30-Nov-90): (concat "recipients " recipients)
1031.6 (rms 09-Mar-93): (list 'rmail-summary-by-recipients recipients primary-only)
1041.1 (jimb 30-Nov-90): 'rmail-message-recipients-p
1051.1 (jimb 30-Nov-90): (mail-comma-list-regexp recipients) primary-only))
1061.1 (jimb 30-Nov-90):
1071.90 (rms 27-Sep-96): ;;;###autoload
1081.1 (jimb 30-Nov-90): (defun rmail-summary-by-regexp (regexp)
1091.1 (jimb 30-Nov-90): "Display a summary of all messages according to regexp REGEXP.
1101.1 (jimb 30-Nov-90): If the regular expression is found in the header of the message
1111.1 (jimb 30-Nov-90): \(including in the date and other lines, as well as the subject line),
1121.1 (jimb 30-Nov-90): Emacs will list the header line in the RMAIL-summary."
1131.1 (jimb 30-Nov-90): (interactive "sRegexp to summarize by: ")
1141.1 (jimb 30-Nov-90): (if (string= regexp "")
1151.1 (jimb 30-Nov-90): (setq regexp (or rmail-last-regexp
1161.120 (pj 15-Jul-01): (error "No regexp specified"))))
1171.1 (jimb 30-Nov-90): (setq rmail-last-regexp regexp)
1181.1 (jimb 30-Nov-90): (rmail-new-summary (concat "regexp " regexp)
1191.6 (rms 09-Mar-93): (list 'rmail-summary-by-regexp regexp)
1201.1 (jimb 30-Nov-90): 'rmail-message-regexp-p
1211.1 (jimb 30-Nov-90): regexp))
1221.1 (jimb 30-Nov-90):
1231.6 (rms 09-Mar-93): ;; rmail-summary-by-topic
1241.6 (rms 09-Mar-93): ;; 1989 R.A. Schnitzler
1251.6 (rms 09-Mar-93):
1261.90 (rms 27-Sep-96): ;;;###autoload
1271.6 (rms 09-Mar-93): (defun rmail-summary-by-topic (subject &optional whole-message)
1281.6 (rms 09-Mar-93): "Display a summary of all messages with the given SUBJECT.
1291.6 (rms 09-Mar-93): Normally checks the Subject field of headers;
1301.126 (lektu 04-Feb-03): but if WHOLE-MESSAGE is non-nil (prefix arg given),
1311.6 (rms 09-Mar-93): look in the whole message.
1321.6 (rms 09-Mar-93): SUBJECT is a string of regexps separated by commas."
1331.140 (as 08-Jan-06): (interactive
1341.140 (as 08-Jan-06): (let* ((subject (with-current-buffer rmail-buffer
1351.140 (as 08-Jan-06): (rmail-current-subject)))
1361.140 (as 08-Jan-06): (subject-re (with-current-buffer rmail-buffer
1371.140 (as 08-Jan-06): (rmail-current-subject-regexp)))
1381.140 (as 08-Jan-06): (prompt (concat "Topics to summarize by (regexp"
1391.140 (as 08-Jan-06): (if subject ", default current subject" "")
1401.140 (as 08-Jan-06): "): ")))
1411.140 (as 08-Jan-06): (list (read-string prompt nil nil subject) current-prefix-arg)))
1421.6 (rms 09-Mar-93): (rmail-new-summary
1431.6 (rms 09-Mar-93): (concat "about " subject)
1441.6 (rms 09-Mar-93): (list 'rmail-summary-by-topic subject whole-message)
1451.6 (rms 09-Mar-93): 'rmail-message-subject-p
1461.6 (rms 09-Mar-93): (mail-comma-list-regexp subject) whole-message))
1471.6 (rms 09-Mar-93):
1481.6 (rms 09-Mar-93): (defun rmail-message-subject-p (msg subject &optional whole-message)
1491.6 (rms 09-Mar-93): (save-restriction
1501.6 (rms 09-Mar-93): (goto-char (rmail-msgbeg msg))
1511.105 (rms 01-Nov-98): (search-forward "\n*** EOOH ***\n" (rmail-msgend msg) 'move)
1521.6 (rms 09-Mar-93): (narrow-to-region
1531.6 (rms 09-Mar-93): (point)
1541.12 (rms 31-May-93): (progn (search-forward (if whole-message "\^_" "\n\n")) (point)))
1551.6 (rms 09-Mar-93): (goto-char (point-min))
1561.6 (rms 09-Mar-93): (if whole-message (re-search-forward subject nil t)
1571.119 (gerd 31-May-01): (string-match subject (let ((subj (mail-fetch-field "Subject")))
1581.119 (gerd 31-May-01): (if subj
1591.119 (gerd 31-May-01): (funcall rmail-summary-line-decoder subj)
1601.119 (gerd 31-May-01): ""))))))
1611.13 (rms 03-Jun-93):
1621.90 (rms 27-Sep-96): ;;;###autoload
1631.13 (rms 03-Jun-93): (defun rmail-summary-by-senders (senders)
1641.13 (rms 03-Jun-93): "Display a summary of all messages with the given SENDERS.
1651.13 (rms 03-Jun-93): SENDERS is a string of names separated by commas."
1661.13 (rms 03-Jun-93): (interactive "sSenders to summarize by: ")
1671.13 (rms 03-Jun-93): (rmail-new-summary
1681.13 (rms 03-Jun-93): (concat "senders " senders)
1691.24 (rms 08-Jan-94): (list 'rmail-summary-by-senders senders)
1701.13 (rms 03-Jun-93): 'rmail-message-senders-p
1711.13 (rms 03-Jun-93): (mail-comma-list-regexp senders)))
1721.13 (rms 03-Jun-93):
1731.13 (rms 03-Jun-93): (defun rmail-message-senders-p (msg senders)
1741.13 (rms 03-Jun-93): (save-restriction
1751.13 (rms 03-Jun-93): (goto-char (rmail-msgbeg msg))
1761.13 (rms 03-Jun-93): (search-forward "\n*** EOOH ***\n")
1771.13 (rms 03-Jun-93): (narrow-to-region (point) (progn (search-forward "\n\n") (point)))
1781.13 (rms 03-Jun-93): (string-match senders (or (mail-fetch-field "From") ""))))
1791.1 (jimb 30-Nov-90):
1801.6 (rms 09-Mar-93): ;; General making of a summary buffer.
1811.6 (rms 09-Mar-93):
1821.6 (rms 09-Mar-93): (defvar rmail-summary-symbol-number 0)
1831.6 (rms 09-Mar-93):
1841.134 (rms 03-Jul-05): (defvar rmail-new-summary-line-count)
1851.134 (rms 03-Jul-05):
1861.6 (rms 09-Mar-93): (defun rmail-new-summary (description redo-form function &rest args)
1871.1 (jimb 30-Nov-90): "Create a summary of selected messages.
1881.1 (jimb 30-Nov-90): DESCRIPTION makes part of the mode line of the summary buffer.
1891.1 (jimb 30-Nov-90): For each message, FUNCTION is applied to the message number and ARGS...
1901.1 (jimb 30-Nov-90): and if the result is non-nil, that message is included.
1911.1 (jimb 30-Nov-90): nil for FUNCTION means all messages."
1921.1 (jimb 30-Nov-90): (message "Computing summary lines...")
1931.6 (rms 09-Mar-93): (let (sumbuf mesg was-in-summary)
1941.6 (rms 09-Mar-93): (save-excursion
1951.6 (rms 09-Mar-93): ;; Go to the Rmail buffer.
1961.6 (rms 09-Mar-93): (if (eq major-mode 'rmail-summary-mode)
1971.118 (gerd 08-May-01): (setq was-in-summary t))
1981.118 (gerd 08-May-01): (set-buffer rmail-buffer)
1991.6 (rms 09-Mar-93): ;; Find its summary buffer, or make one.
2001.11 (rms 28-May-93): (setq sumbuf
2011.11 (rms 28-May-93): (if (and rmail-summary-buffer
2021.11 (rms 28-May-93): (buffer-name rmail-summary-buffer))
2031.11 (rms 28-May-93): rmail-summary-buffer
2041.11 (rms 28-May-93): (generate-new-buffer (concat (buffer-name) "-summary"))))
2051.6 (rms 09-Mar-93): (setq mesg rmail-current-message)
2061.6 (rms 09-Mar-93): ;; Filter the messages; make or get their summary lines.
2071.6 (rms 09-Mar-93): (let ((summary-msgs ())
2081.134 (rms 03-Jul-05): (rmail-new-summary-line-count 0))
2091.6 (rms 09-Mar-93): (let ((msgnum 1)
2101.36 (kwzh 09-Apr-94): (buffer-read-only nil)
2111.36 (kwzh 09-Apr-94): (old-min (point-min-marker))
2121.36 (kwzh 09-Apr-94): (old-max (point-max-marker)))
2131.36 (kwzh 09-Apr-94): ;; Can't use save-restriction here; that doesn't work if we
2141.36 (kwzh 09-Apr-94): ;; plan to modify text outside the original restriction.
2151.36 (kwzh 09-Apr-94): (save-excursion
2161.36 (kwzh 09-Apr-94): (widen)
2171.36 (kwzh 09-Apr-94): (goto-char (point-min))
2181.36 (kwzh 09-Apr-94): (while (>= rmail-total-messages msgnum)
2191.36 (kwzh 09-Apr-94): (if (or (null function)
2201.36 (kwzh 09-Apr-94): (apply function (cons msgnum args)))
2211.36 (kwzh 09-Apr-94): (setq summary-msgs
2221.36 (kwzh 09-Apr-94): (cons (cons msgnum (rmail-make-summary-line msgnum))
2231.36 (kwzh 09-Apr-94): summary-msgs)))
2241.36 (kwzh 09-Apr-94): (setq msgnum (1+ msgnum)))
2251.36 (kwzh 09-Apr-94): (setq summary-msgs (nreverse summary-msgs)))
2261.36 (kwzh 09-Apr-94): (narrow-to-region old-min old-max))
2271.11 (rms 28-May-93): ;; Temporarily, while summary buffer is unfinished,
2281.11 (rms 28-May-93): ;; we "don't have" a summary.
2291.11 (rms 28-May-93): (setq rmail-summary-buffer nil)
2301.118 (gerd 08-May-01): (if rmail-enable-mime
2311.118 (gerd 08-May-01): (with-current-buffer rmail-view-buffer
2321.118 (gerd 08-May-01): (setq rmail-summary-buffer nil)))
2331.11 (rms 28-May-93): (save-excursion
2341.11 (rms 28-May-93): (let ((rbuf (current-buffer))
2351.94 (handa 26-Feb-97): (vbuf rmail-view-buffer)
2361.11 (rms 28-May-93): (total rmail-total-messages))
2371.11 (rms 28-May-93): (set-buffer sumbuf)
2381.11 (rms 28-May-93): ;; Set up the summary buffer's contents.
2391.11 (rms 28-May-93): (let ((buffer-read-only nil))
2401.11 (rms 28-May-93): (erase-buffer)
2411.11 (rms 28-May-93): (while summary-msgs
2421.11 (rms 28-May-93): (princ (cdr (car summary-msgs)) sumbuf)
2431.11 (rms 28-May-93): (setq summary-msgs (cdr summary-msgs)))
2441.11 (rms 28-May-93): (goto-char (point-min)))
2451.11 (rms 28-May-93): ;; Set up the rest of its state and local variables.
2461.11 (rms 28-May-93): (setq buffer-read-only t)
2471.11 (rms 28-May-93): (rmail-summary-mode)
2481.11 (rms 28-May-93): (make-local-variable 'minor-mode-alist)
2491.83 (rms 12-Jun-96): (setq minor-mode-alist (list (list t (concat ": " description))))
2501.11 (rms 28-May-93): (setq rmail-buffer rbuf
2511.94 (handa 26-Feb-97): rmail-view-buffer vbuf
2521.11 (rms 28-May-93): rmail-summary-redo redo-form
2531.11 (rms 28-May-93): rmail-total-messages total))))
2541.11 (rms 28-May-93): (setq rmail-summary-buffer sumbuf))
2551.6 (rms 09-Mar-93): ;; Now display the summary buffer and go to the right place in it.
2561.6 (rms 09-Mar-93): (or was-in-summary
2571.70 (rms 21-Aug-95): (progn
2581.70 (rms 21-Aug-95): (if (and (one-window-p)
2591.70 (rms 21-Aug-95): pop-up-windows (not pop-up-frames))
2601.70 (rms 21-Aug-95): ;; If there is just one window, put the summary on the top.
2611.70 (rms 21-Aug-95): (progn
2621.70 (rms 21-Aug-95): (split-window (selected-window) rmail-summary-window-size)
2631.70 (rms 21-Aug-95): (select-window (next-window (frame-first-window)))
2641.70 (rms 21-Aug-95): (pop-to-buffer sumbuf)
2651.70 (rms 21-Aug-95): ;; If pop-to-buffer did not use that window, delete that
2661.70 (rms 21-Aug-95): ;; window. (This can happen if it uses another frame.)
2671.70 (rms 21-Aug-95): (if (not (eq sumbuf (window-buffer (frame-first-window))))
2681.70 (rms 21-Aug-95): (delete-other-windows)))
2691.70 (rms 21-Aug-95): (pop-to-buffer sumbuf))
2701.70 (rms 21-Aug-95): (set-buffer rmail-buffer)
2711.70 (rms 21-Aug-95): ;; This is how rmail makes the summary buffer reappear.
2721.70 (rms 21-Aug-95): ;; We do this here to make the window the proper size.
2731.70 (rms 21-Aug-95): (rmail-select-summary nil)
2741.70 (rms 21-Aug-95): (set-buffer rmail-summary-buffer)))
2751.6 (rms 09-Mar-93): (rmail-summary-goto-msg mesg t t)
2761.69 (rms 17-Aug-95): (rmail-summary-construct-io-menu)
2771.6 (rms 09-Mar-93): (message "Computing summary lines...done")))
2781.6 (rms 09-Mar-93):
2791.6 (rms 09-Mar-93): ;; Low levels of generating a summary.
2801.1 (jimb 30-Nov-90):
2811.1 (jimb 30-Nov-90): (defun rmail-make-summary-line (msg)
2821.1 (jimb 30-Nov-90): (let ((line (or (aref rmail-summary-vector (1- msg))
2831.1 (jimb 30-Nov-90): (progn
2841.134 (rms 03-Jul-05): (setq rmail-new-summary-line-count
2851.134 (rms 03-Jul-05): (1+ rmail-new-summary-line-count))
2861.134 (rms 03-Jul-05): (if (zerop (% rmail-new-summary-line-count 10))
2871.1 (jimb 30-Nov-90): (message "Computing summary lines...%d"
2881.134 (rms 03-Jul-05): rmail-new-summary-line-count))
2891.147 (miles 03-Aug-07): (rmail-make-summary-line-1 msg))))
2901.147 (miles 03-Aug-07): delpos)
2911.1 (jimb 30-Nov-90): ;; Fix up the part of the summary that says "deleted" or "unseen".
2921.147 (miles 03-Aug-07): (string-match "[0-9]+" line)
2931.147 (miles 03-Aug-07): (aset line (match-end 0)
2941.147 (miles 03-Aug-07): (if (rmail-message-deleted-p msg) ?D
2951.1 (jimb 30-Nov-90): (if (= ?0 (char-after (+ 3 (rmail-msgbeg msg))))
2961.147 (miles 03-Aug-07): ?- ?\s)))
2971.1 (jimb 30-Nov-90): line))
2981.1 (jimb 30-Nov-90):
2991.94 (handa 26-Feb-97): ;;;###autoload
3001.96 (rms 03-May-97): (defcustom rmail-summary-line-decoder (function identity)
3011.94 (handa 26-Feb-97): "*Function to decode summary-line.
3021.94 (handa 26-Feb-97):
3031.96 (rms 03-May-97): By default, `identity' is set."
3041.96 (rms 03-May-97): :type 'function
3051.96 (rms 03-May-97): :group 'rmail-summary)
3061.94 (handa 26-Feb-97):
3071.1 (jimb 30-Nov-90): (defun rmail-make-summary-line-1 (msg)
3081.1 (jimb 30-Nov-90): (goto-char (rmail-msgbeg msg))
3091.1 (jimb 30-Nov-90): (let* ((lim (save-excursion (forward-line 2) (point)))
3101.1 (jimb 30-Nov-90): pos
3111.1 (jimb 30-Nov-90): (labels
3121.1 (jimb 30-Nov-90): (progn
3131.1 (jimb 30-Nov-90): (forward-char 3)
3141.1 (jimb 30-Nov-90): (concat
3151.1 (jimb 30-Nov-90): ; (if (save-excursion (re-search-forward ",answered," lim t))
3161.1 (jimb 30-Nov-90): ; "*" "")
3171.1 (jimb 30-Nov-90): ; (if (save-excursion (re-search-forward ",filed," lim t))
3181.1 (jimb 30-Nov-90): ; "!" "")
3191.1 (jimb 30-Nov-90): (if (progn (search-forward ",,") (eolp))
3201.1 (jimb 30-Nov-90): ""
3211.1 (jimb 30-Nov-90): (concat "{"
3221.1 (jimb 30-Nov-90): (buffer-substring (point)
3231.130 (rms 30-Sep-03): (progn (end-of-line)
3241.130 (rms 30-Sep-03): (backward-char)
3251.130 (rms 30-Sep-03): (if (looking-at ",")
3261.130 (rms 30-Sep-03): (point)
3271.130 (rms 30-Sep-03): (1+ (point)))))
3281.130 (rms 30-Sep-03): " } ")))))
3291.1 (jimb 30-Nov-90): (line
3301.1 (jimb 30-Nov-90): (progn
3311.1 (jimb 30-Nov-90): (forward-line 1)
3321.1 (jimb 30-Nov-90): (if (looking-at "Summary-line: ")
3331.1 (jimb 30-Nov-90): (progn
3341.1 (jimb 30-Nov-90): (goto-char (match-end 0))
3351.141 (rms 26-Jan-06): (buffer-substring (point)
3361.141 (rms 26-Jan-06): (progn (forward-line 1) (point))))))))
3371.1 (jimb 30-Nov-90): ;; Obsolete status lines lacking a # should be flushed.
3381.1 (jimb 30-Nov-90): (and line
3391.1 (jimb 30-Nov-90): (not (string-match "#" line))
3401.1 (jimb 30-Nov-90): (progn
3411.1 (jimb 30-Nov-90): (delete-region (point)
3421.1 (jimb 30-Nov-90): (progn (forward-line -1) (point)))
3431.1 (jimb 30-Nov-90): (setq line nil)))
3441.1 (jimb 30-Nov-90): ;; If we didn't get a valid status line from the message,
3451.1 (jimb 30-Nov-90): ;; make a new one and put it in the message.
3461.1 (jimb 30-Nov-90): (or line
3471.1 (jimb 30-Nov-90): (let* ((case-fold-search t)
3481.1 (jimb 30-Nov-90): (next (rmail-msgend msg))
3491.1 (jimb 30-Nov-90): (beg (if (progn (goto-char (rmail-msgbeg msg))
3501.1 (jimb 30-Nov-90): (search-forward "\n*** EOOH ***\n" next t))
3511.1 (jimb 30-Nov-90): (point)
3521.1 (jimb 30-Nov-90): (forward-line 1)
3531.1 (jimb 30-Nov-90): (point)))
3541.1 (jimb 30-Nov-90): (end (progn (search-forward "\n\n" nil t) (point))))
3551.1 (jimb 30-Nov-90): (save-restriction
3561.1 (jimb 30-Nov-90): (narrow-to-region beg end)
3571.1 (jimb 30-Nov-90): (goto-char beg)
3581.1 (jimb 30-Nov-90): (setq line (rmail-make-basic-summary-line)))
3591.1 (jimb 30-Nov-90): (goto-char (rmail-msgbeg msg))
3601.1 (jimb 30-Nov-90): (forward-line 2)
3611.1 (jimb 30-Nov-90): (insert "Summary-line: " line)))
3621.1 (jimb 30-Nov-90): (setq pos (string-match "#" line))
3631.1 (jimb 30-Nov-90): (aset rmail-summary-vector (1- msg)
3641.94 (handa 26-Feb-97): (funcall rmail-summary-line-decoder
3651.121 (gerd 05-Oct-01): (concat (format "%5d " msg)
3661.94 (handa 26-Feb-97): (substring line 0 pos)
3671.94 (handa 26-Feb-97): labels
3681.94 (handa 26-Feb-97): (substring line (1+ pos)))))
3691.94 (handa 26-Feb-97): ))
3701.1 (jimb 30-Nov-90):
3711.112 (gerd 03-Apr-00): ;;;###autoload
3721.112 (gerd 03-Apr-00): (defcustom rmail-user-mail-address-regexp nil
3731.112 (gerd 03-Apr-00): "*Regexp matching user mail addresses.
3741.112 (gerd 03-Apr-00): If non-nil, this variable is used to identify the correspondent
3751.112 (gerd 03-Apr-00): when receiving new mail. If it matches the address of the sender,
3761.112 (gerd 03-Apr-00): the recipient is taken as correspondent of a mail.
3771.112 (gerd 03-Apr-00): If nil \(default value\), your `user-login-name' and `user-mail-address'
3781.112 (gerd 03-Apr-00): are used to exclude yourself as correspondent.
3791.112 (gerd 03-Apr-00):
3801.112 (gerd 03-Apr-00): Usually you don't have to set this variable, except if you collect mails
3811.112 (gerd 03-Apr-00): sent by you under different user names.
3821.125 (lektu 02-Jul-02): Then it should be a regexp matching your mail addresses.
3831.112 (gerd 03-Apr-00):
3841.112 (gerd 03-Apr-00): Setting this variable has an effect only before reading a mail."
3851.112 (gerd 03-Apr-00): :type '(choice (const :tag "None" nil) regexp)
3861.112 (gerd 03-Apr-00): :group 'rmail-retrieve
3871.112 (gerd 03-Apr-00): :version "21.1")
3881.112 (gerd 03-Apr-00):
3891.1 (jimb 30-Nov-90): (defun rmail-make-basic-summary-line ()
3901.1 (jimb 30-Nov-90): (goto-char (point-min))
3911.1 (jimb 30-Nov-90): (concat (save-excursion
3921.1 (jimb 30-Nov-90): (if (not (re-search-forward "^Date:" nil t))
3931.1 (jimb 30-Nov-90): " "
3941.1 (jimb 30-Nov-90): (cond ((re-search-forward "\\([^0-9:]\\)\\([0-3]?[0-9]\\)\\([- \t_]+\\)\\([adfjmnos][aceopu][bcglnprtvy]\\)"
3951.1 (jimb 30-Nov-90): (save-excursion (end-of-line) (point)) t)
3961.1 (jimb 30-Nov-90): (format "%2d-%3s"
3971.132 (lektu 16-May-05): (string-to-number (buffer-substring
3981.132 (lektu 16-May-05): (match-beginning 2)
3991.132 (lektu 16-May-05): (match-end 2)))
4001.1 (jimb 30-Nov-90): (buffer-substring
4011.1 (jimb 30-Nov-90): (match-beginning 4) (match-end 4))))
4021.1 (jimb 30-Nov-90): ((re-search-forward "\\([^a-z]\\)\\([adfjmnos][acepou][bcglnprtvy]\\)\\([-a-z \t_]*\\)\\([0-9][0-9]?\\)"
4031.1 (jimb 30-Nov-90): (save-excursion (end-of-line) (point)) t)
4041.1 (jimb 30-Nov-90): (format "%2d-%3s"
4051.132 (lektu 16-May-05): (string-to-number (buffer-substring
4061.132 (lektu 16-May-05): (match-beginning 4)
4071.132 (lektu 16-May-05): (match-end 4)))
4081.1 (jimb 30-Nov-90): (buffer-substring
4091.1 (jimb 30-Nov-90): (match-beginning 2) (match-end 2))))
4101.86 (miles 02-Jul-96): ((re-search-forward "\\(19\\|20\\)\\([0-9][0-9]\\)-\\([01][0-9]\\)-\\([0-3][0-9]\\)"
4111.86 (miles 02-Jul-96): (save-excursion (end-of-line) (point)) t)
4121.86 (miles 02-Jul-96): (format "%2s%2s%2s"
4131.86 (miles 02-Jul-96): (buffer-substring
4141.86 (miles 02-Jul-96): (match-beginning 2) (match-end 2))
4151.86 (miles 02-Jul-96): (buffer-substring
4161.86 (miles 02-Jul-96): (match-beginning 3) (match-end 3))
4171.86 (miles 02-Jul-96): (buffer-substring
4181.86 (miles 02-Jul-96): (match-beginning 4) (match-end 4))))
4191.1 (jimb 30-Nov-90): (t "??????"))))
4201.1 (jimb 30-Nov-90): " "
4211.1 (jimb 30-Nov-90): (save-excursion
4221.128 (rms 09-Apr-03): (let* ((from (and (re-search-forward "^From:[ \t]*" nil t)
4231.128 (rms 09-Apr-03): (mail-strip-quoted-names
4241.128 (rms 09-Apr-03): (buffer-substring
4251.128 (rms 09-Apr-03): (1- (point))
4261.128 (rms 09-Apr-03): ;; Get all the lines of the From field
4271.128 (rms 09-Apr-03): ;; so that we get a whole comment if there is one,
4281.128 (rms 09-Apr-03): ;; so that mail-strip-quoted-names can discard it.
4291.128 (rms 09-Apr-03): (let ((opoint (point)))
4301.128 (rms 09-Apr-03): (while (progn (forward-line 1)
4311.128 (rms 09-Apr-03): (looking-at "[ \t]")))
4321.128 (rms 09-Apr-03): ;; Back up over newline, then trailing spaces or tabs
4331.128 (rms 09-Apr-03): (forward-char -1)
4341.128 (rms 09-Apr-03): (skip-chars-backward " \t")
4351.128 (rms 09-Apr-03): (point))))))
4361.128 (rms 09-Apr-03): len mch lo)
4371.128 (rms 09-Apr-03): (if (or (null from)
4381.128 (rms 09-Apr-03): (string-match
4391.128 (rms 09-Apr-03): (or rmail-user-mail-address-regexp
4401.128 (rms 09-Apr-03): (concat "^\\("
4411.128 (rms 09-Apr-03): (regexp-quote (user-login-name))
4421.128 (rms 09-Apr-03): "\\($\\|@\\)\\|"
4431.128 (rms 09-Apr-03): (regexp-quote
4441.128 (rms 09-Apr-03): ;; Don't lose if run from init file
4451.128 (rms 09-Apr-03): ;; where user-mail-address is not
4461.128 (rms 09-Apr-03): ;; set yet.
4471.128 (rms 09-Apr-03): (or user-mail-address
4481.128 (rms 09-Apr-03): (concat (user-login-name) "@"
4491.128 (rms 09-Apr-03): (or mail-host-address
4501.128 (rms 09-Apr-03): (system-name)))))
4511.128 (rms 09-Apr-03): "\\>\\)"))
4521.128 (rms 09-Apr-03): from))
4531.128 (rms 09-Apr-03): ;; No From field, or it's this user.
4541.128 (rms 09-Apr-03): (save-excursion
4551.128 (rms 09-Apr-03): (goto-char (point-min))
4561.128 (rms 09-Apr-03): (if (not (re-search-forward "^To:[ \t]*" nil t))
4571.128 (rms 09-Apr-03): nil
4581.128 (rms 09-Apr-03): (setq from
4591.128 (rms 09-Apr-03): (concat "to: "
4601.128 (rms 09-Apr-03): (mail-strip-quoted-names
4611.128 (rms 09-Apr-03): (buffer-substring
4621.128 (rms 09-Apr-03): (point)
4631.128 (rms 09-Apr-03): (progn (end-of-line)
4641.128 (rms 09-Apr-03): (skip-chars-backward " \t")
4651.128 (rms 09-Apr-03): (point)))))))))
4661.128 (rms 09-Apr-03): (if (null from)
4671.128 (rms 09-Apr-03): " "
4681.1 (jimb 30-Nov-90): (setq len (length from))
4691.1 (jimb 30-Nov-90): (setq mch (string-match "[@%]" from))
4701.1 (jimb 30-Nov-90): (format "%25s"
4711.1 (jimb 30-Nov-90): (if (or (not mch) (<= len 25))
4721.1 (jimb 30-Nov-90): (substring from (max 0 (- len 25)))
4731.1 (jimb 30-Nov-90): (substring from
4741.40 (rms 06-May-94): (setq lo (cond ((< (- mch 14) 0) 0)
4751.40 (rms 06-May-94): ((< len (+ mch 11))
4761.1 (jimb 30-Nov-90): (- len 25))
4771.40 (rms 06-May-94): (t (- mch 14))))
4781.1 (jimb 30-Nov-90): (min len (+ lo 25))))))))
4791.92 (rms 04-Oct-96): (if rmail-summary-line-count-flag
4801.91 (rms 04-Oct-96): (save-excursion
4811.91 (rms 04-Oct-96): (save-restriction
4821.91 (rms 04-Oct-96): (widen)
4831.91 (rms 04-Oct-96): (let ((beg (rmail-msgbeg msgnum))
4841.91 (rms 04-Oct-96): (end (rmail-msgend msgnum))
4851.91 (rms 04-Oct-96): lines)
4861.91 (rms 04-Oct-96): (save-excursion
4871.91 (rms 04-Oct-96): (goto-char beg)
4881.91 (rms 04-Oct-96): ;; Count only lines in the reformatted header,
4891.91 (rms 04-Oct-96): ;; if we have reformatted it.
4901.91 (rms 04-Oct-96): (search-forward "\n*** EOOH ***\n" end t)
4911.91 (rms 04-Oct-96): (setq lines (count-lines (point) end)))
4921.91 (rms 04-Oct-96): (format (cond
4931.91 (rms 04-Oct-96): ((<= lines 9) " [%d]")
4941.91 (rms 04-Oct-96): ((<= lines 99) " [%d]")
4951.91 (rms 04-Oct-96): ((<= lines 999) " [%3d]")
4961.91 (rms 04-Oct-96): (t "[%d]"))
4971.91 (rms 04-Oct-96): lines))))
4981.91 (rms 04-Oct-96): " ")
4991.79 (erik 26-Feb-96): " #" ;The # is part of the format.
5001.1 (jimb 30-Nov-90): (if (re-search-forward "^Subject:" nil t)
5011.1 (jimb 30-Nov-90): (progn (skip-chars-forward " \t")
5021.1 (jimb 30-Nov-90): (buffer-substring (point)
5031.1 (jimb 30-Nov-90): (progn (end-of-line)
5041.1 (jimb 30-Nov-90): (point))))
5051.1 (jimb 30-Nov-90): (re-search-forward "[\n][\n]+" nil t)
5061.1 (jimb 30-Nov-90): (buffer-substring (point) (progn (end-of-line) (point))))
5071.1 (jimb 30-Nov-90): "\n"))
5081.6 (rms 09-Mar-93):
5091.6 (rms 09-Mar-93): ;; Simple motion in a summary buffer.
5101.1 (jimb 30-Nov-90):
5111.1 (jimb 30-Nov-90): (defun rmail-summary-next-all (&optional number)
5121.1 (jimb 30-Nov-90): (interactive "p")
5131.7 (rms 13-Mar-93): (forward-line (if number number 1))
5141.59 (rms 15-Oct-94): ;; It doesn't look nice to move forward past the last message line.
5151.59 (rms 15-Oct-94): (and (eobp) (> number 0)
5161.59 (rms 15-Oct-94): (forward-line -1))
5171.7 (rms 13-Mar-93): (display-buffer rmail-buffer))
5181.1 (jimb 30-Nov-90):
5191.1 (jimb 30-Nov-90): (defun rmail-summary-previous-all (&optional number)
5201.1 (jimb 30-Nov-90): (interactive "p")
5211.7 (rms 13-Mar-93): (forward-line (- (if number number 1)))
5221.59 (rms 15-Oct-94): ;; It doesn't look nice to move forward past the last message line.
5231.59 (rms 15-Oct-94): (and (eobp) (< number 0)
5241.59 (rms 15-Oct-94): (forward-line -1))
5251.7 (rms 13-Mar-93): (display-buffer rmail-buffer))
5261.1 (jimb 30-Nov-90):
5271.1 (jimb 30-Nov-90): (defun rmail-summary-next-msg (&optional number)
5281.6 (rms 09-Mar-93): "Display next non-deleted msg from rmail file.
5291.6 (rms 09-Mar-93): With optional prefix argument NUMBER, moves forward this number of non-deleted
5301.6 (rms 09-Mar-93): messages, or backward if NUMBER is negative."
5311.1 (jimb 30-Nov-90): (interactive "p")
5321.1 (jimb 30-Nov-90): (forward-line 0)
5331.15 (rms 04-Jun-93): (and (> number 0) (end-of-line))
5341.1 (jimb 30-Nov-90): (let ((count (if (< number 0) (- number) number))
5351.1 (jimb 30-Nov-90): (search (if (> number 0) 're-search-forward 're-search-backward))
5361.6 (rms 09-Mar-93): (non-del-msg-found nil))
5371.6 (rms 09-Mar-93): (while (and (> count 0) (setq non-del-msg-found
5381.143 (eliz 11-Mar-06): (or (funcall search "^.....[^D]" nil t)
5391.6 (rms 09-Mar-93): non-del-msg-found)))
5401.7 (rms 13-Mar-93): (setq count (1- count))))
5411.15 (rms 04-Jun-93): (beginning-of-line)
5421.127 (jpw 06-Feb-03): (display-buffer rmail-view-buffer))
5431.1 (jimb 30-Nov-90):
5441.1 (jimb 30-Nov-90): (defun rmail-summary-previous-msg (&optional number)
5451.127 (jpw 06-Feb-03): "Display previous non-deleted msg from rmail file.
5461.127 (jpw 06-Feb-03): With optional prefix argument NUMBER, moves backward this number of
5471.127 (jpw 06-Feb-03): non-deleted messages."
5481.1 (jimb 30-Nov-90): (interactive "p")
5491.1 (jimb 30-Nov-90): (rmail-summary-next-msg (- (if number number 1))))
5501.1 (jimb 30-Nov-90):
5511.6 (rms 09-Mar-93): (defun rmail-summary-next-labeled-message (n labels)
5521.127 (jpw 06-Feb-03): "Show next message with LABELS. Defaults to last labels used.
5531.6 (rms 09-Mar-93): With prefix argument N moves forward N messages with these labels."
5541.6 (rms 09-Mar-93): (interactive "p\nsMove to next msg with labels: ")
5551.88 (kwzh 13-Jul-96): (let (msg)
5561.88 (kwzh 13-Jul-96): (save-excursion
5571.88 (kwzh 13-Jul-96): (set-buffer rmail-buffer)
5581.88 (kwzh 13-Jul-96): (rmail-next-labeled-message n labels)
5591.88 (kwzh 13-Jul-96): (setq msg rmail-current-message))
5601.88 (kwzh 13-Jul-96): (rmail-summary-goto-msg msg)))
5611.6 (rms 09-Mar-93):
5621.6 (rms 09-Mar-93): (defun rmail-summary-previous-labeled-message (n labels)
5631.127 (jpw 06-Feb-03): "Show previous message with LABELS. Defaults to last labels used.
5641.6 (rms 09-Mar-93): With prefix argument N moves backward N messages with these labels."
5651.6 (rms 09-Mar-93): (interactive "p\nsMove to previous msg with labels: ")
5661.88 (kwzh 13-Jul-96): (let (msg)
5671.88 (kwzh 13-Jul-96): (save-excursion
5681.88 (kwzh 13-Jul-96): (set-buffer rmail-buffer)
5691.88 (kwzh 13-Jul-96): (rmail-previous-labeled-message n labels)
5701.88 (kwzh 13-Jul-96): (setq msg rmail-current-message))
5711.88 (kwzh 13-Jul-96): (rmail-summary-goto-msg msg)))
5721.64 (rms 05-Feb-95):
5731.64 (rms 05-Feb-95): (defun rmail-summary-next-same-subject (n)
5741.64 (rms 05-Feb-95): "Go to the next message in the summary having the same subject.
5751.64 (rms 05-Feb-95): With prefix argument N, do this N times.
5761.64 (rms 05-Feb-95): If N is negative, go backwards."
5771.64 (rms 05-Feb-95): (interactive "p")
5781.140 (as 08-Jan-06): (let ((forward (> n 0))
5791.140 (as 08-Jan-06): search-regexp i found)
5801.140 (as 08-Jan-06): (with-current-buffer rmail-buffer
5811.140 (as 08-Jan-06): (setq search-regexp (rmail-current-subject-regexp)
5821.140 (as 08-Jan-06): i rmail-current-message))
5831.64 (rms 05-Feb-95): (save-excursion
5841.64 (rms 05-Feb-95): (while (and (/= n 0)
5851.64 (rms 05-Feb-95): (if forward
5861.64 (rms 05-Feb-95): (not (eobp))
5871.64 (rms 05-Feb-95): (not (bobp))))
5881.64 (rms 05-Feb-95): (let (done)
5891.64 (rms 05-Feb-95): (while (and (not done)
5901.64 (rms 05-Feb-95): (if forward
5911.64 (rms 05-Feb-95): (not (eobp))
5921.64 (rms 05-Feb-95): (not (bobp))))
5931.64 (rms 05-Feb-95): ;; Advance thru summary.
5941.64 (rms 05-Feb-95): (forward-line (if forward 1 -1))
5951.64 (rms 05-Feb-95): ;; Get msg number of this line.
5961.132 (lektu 16-May-05): (setq i (string-to-number
5971.64 (rms 05-Feb-95): (buffer-substring (point)
5981.121 (gerd 05-Oct-01): (min (point-max) (+ 6 (point))))))
5991.64 (rms 05-Feb-95): ;; See if that msg has desired subject.
6001.64 (rms 05-Feb-95): (save-excursion
6011.64 (rms 05-Feb-95): (set-buffer rmail-buffer)
6021.64 (rms 05-Feb-95): (save-restriction
6031.64 (rms 05-Feb-95): (widen)
6041.64 (rms 05-Feb-95): (goto-char (rmail-msgbeg i))
6051.64 (rms 05-Feb-95): (search-forward "\n*** EOOH ***\n")
6061.64 (rms 05-Feb-95): (let ((beg (point)) end)
6071.64 (rms 05-Feb-95): (search-forward "\n\n")
6081.64 (rms 05-Feb-95): (setq end (point))
6091.64 (rms 05-Feb-95): (goto-char beg)
6101.64 (rms 05-Feb-95): (setq done (re-search-forward search-regexp end t))))))
6111.64 (rms 05-Feb-95): (if done (setq found i)))
6121.64 (rms 05-Feb-95): (setq n (if forward (1- n) (1+ n)))))
6131.64 (rms 05-Feb-95): (if found
6141.64 (rms 05-Feb-95): (rmail-summary-goto-msg found)
6151.64 (rms 05-Feb-95): (error "No %s message with same subject"
6161.64 (rms 05-Feb-95): (if forward "following" "previous")))))
6171.64 (rms 05-Feb-95):
6181.64 (rms 05-Feb-95): (defun rmail-summary-previous-same-subject (n)
6191.64 (rms 05-Feb-95): "Go to the previous message in the summary having the same subject.
6201.64 (rms 05-Feb-95): With prefix argument N, do this N times.
6211.64 (rms 05-Feb-95): If N is negative, go forwards instead."
6221.64 (rms 05-Feb-95): (interactive "p")
6231.64 (rms 05-Feb-95): (rmail-summary-next-same-subject (- n)))
6241.6 (rms 09-Mar-93):
6251.6 (rms 09-Mar-93): ;; Delete and undelete summary commands.
6261.6 (rms 09-Mar-93):
6271.95 (rms 16-Apr-97): (defun rmail-summary-delete-forward (&optional count)
6281.6 (rms 09-Mar-93): "Delete this message and move to next nondeleted one.
6291.6 (rms 09-Mar-93): Deleted messages stay in the file until the \\[rmail-expunge] command is given.
6301.95 (rms 16-Apr-97): A prefix argument serves as a repeat count;
6311.95 (rms 16-Apr-97): a negative argument means to delete and move backward."
6321.95 (rms 16-Apr-97): (interactive "p")
6331.97 (rms 19-May-97): (unless (numberp count) (setq count 1))
6341.95 (rms 16-Apr-97): (let (end del-msg
6351.95 (rms 16-Apr-97): (backward (< count 0)))
6361.95 (rms 16-Apr-97): (while (/= count 0)
6371.95 (rms 16-Apr-97): (rmail-summary-goto-msg)
6381.95 (rms 16-Apr-97): (with-current-buffer rmail-buffer
6391.95 (rms 16-Apr-97): (rmail-delete-message)
6401.95 (rms 16-Apr-97): (setq del-msg rmail-current-message))
6411.23 (rms 30-Dec-93): (rmail-summary-mark-deleted del-msg)
6421.23 (rms 30-Dec-93): (while (and (not (if backward (bobp) (eobp)))
6431.25 (rms 08-Jan-94): (save-excursion (beginning-of-line)
6441.53 (rms 27-Sep-94): (looking-at " *[0-9]+D")))
6451.60 (rms 15-Oct-94): (forward-line (if backward -1 1)))
6461.60 (rms 15-Oct-94): ;; It looks ugly to move to the empty line at end of buffer.
6471.60 (rms 15-Oct-94): (and (eobp) (not backward)
6481.95 (rms 16-Apr-97): (forward-line -1))
6491.95 (rms 16-Apr-97): (setq count
6501.95 (rms 16-Apr-97): (if (> count 0) (1- count) (1+ count))))))
6511.1 (jimb 30-Nov-90):
6521.95 (rms 16-Apr-97): (defun rmail-summary-delete-backward (&optional count)
6531.6 (rms 09-Mar-93): "Delete this message and move to previous nondeleted one.
6541.95 (rms 16-Apr-97): Deleted messages stay in the file until the \\[rmail-expunge] command is given.
6551.95 (rms 16-Apr-97): A prefix argument serves as a repeat count;
6561.95 (rms 16-Apr-97): a negative argument means to delete and move forward."
6571.95 (rms 16-Apr-97): (interactive "p")
6581.95 (rms 16-Apr-97): (rmail-summary-delete-forward (- count)))
6591.6 (rms 09-Mar-93):
6601.6 (rms 09-Mar-93): (defun rmail-summary-mark-deleted (&optional n undel)
6611.76 (kwzh 24-Jan-96): ;; Since third arg is t, this only alters the summary, not the Rmail buf.
6621.10 (rms 25-May-93): (and n (rmail-summary-goto-msg n t t))
6631.10 (rms 25-May-93): (or (eobp)
6641.63 (rms 20-Jan-95): (not (overlay-get rmail-summary-overlay 'face))
6651.10 (rms 25-May-93): (let ((buffer-read-only nil))
6661.10 (rms 25-May-93): (skip-chars-forward " ")
6671.10 (rms 25-May-93): (skip-chars-forward "[0-9]")
6681.10 (rms 25-May-93): (if undel
6691.10 (rms 25-May-93): (if (looking-at "D")
6701.10 (rms 25-May-93): (progn (delete-char 1) (insert " ")))
6711.10 (rms 25-May-93): (delete-char 1)
6721.10 (rms 25-May-93): (insert "D"))))
6731.6 (rms 09-Mar-93): (beginning-of-line))
6741.6 (rms 09-Mar-93):
6751.6 (rms 09-Mar-93): (defun rmail-summary-mark-undeleted (n)
6761.6 (rms 09-Mar-93): (rmail-summary-mark-deleted n t))
6771.6 (rms 09-Mar-93):
6781.6 (rms 09-Mar-93): (defun rmail-summary-deleted-p (&optional n)
6791.6 (rms 09-Mar-93): (save-excursion
6801.6 (rms 09-Mar-93): (and n (rmail-summary-goto-msg n nil t))
6811.6 (rms 09-Mar-93): (skip-chars-forward " ")
6821.6 (rms 09-Mar-93): (skip-chars-forward "[0-9]")
6831.6 (rms 09-Mar-93): (looking-at "D")))
6841.1 (jimb 30-Nov-90):
6851.6 (rms 09-Mar-93): (defun rmail-summary-undelete (&optional arg)
6861.6 (rms 09-Mar-93): "Undelete current message.
6871.6 (rms 09-Mar-93): Optional prefix ARG means undelete ARG previous messages."
6881.6 (rms 09-Mar-93): (interactive "p")
6891.6 (rms 09-Mar-93): (if (/= arg 1)
6901.6 (rms 09-Mar-93): (rmail-summary-undelete-many arg)
6911.26 (rms 26-Jan-94): (let ((buffer-read-only nil)
6921.26 (rms 26-Jan-94): (opoint (point)))
6931.6 (rms 09-Mar-93): (end-of-line)
6941.6 (rms 09-Mar-93): (cond ((re-search-backward "\\(^ *[0-9]*\\)\\(D\\)" nil t)
6951.6 (rms 09-Mar-93): (replace-match "\\1 ")
6961.6 (rms 09-Mar-93): (rmail-summary-goto-msg)
6971.118 (gerd 08-May-01): (if rmail-enable-mime
6981.118 (gerd 08-May-01): (set-buffer rmail-buffer)
6991.118 (gerd 08-May-01): (pop-to-buffer rmail-buffer))
7001.6 (rms 09-Mar-93): (and (rmail-message-deleted-p rmail-current-message)
7011.6 (rms 09-Mar-93): (rmail-undelete-previous-message))
7021.118 (gerd 08-May-01): (if rmail-enable-mime
7031.118 (gerd 08-May-01): (pop-to-buffer rmail-view-buffer))
7041.26 (rms 26-Jan-94): (pop-to-buffer rmail-summary-buffer))
7051.26 (rms 26-Jan-94): (t (goto-char opoint))))))
7061.1 (jimb 30-Nov-90):
7071.6 (rms 09-Mar-93): (defun rmail-summary-undelete-many (&optional n)
7081.6 (rms 09-Mar-93): "Undelete all deleted msgs, optional prefix arg N means undelete N prev msgs."
7091.6 (rms 09-Mar-93): (interactive "P")
7101.6 (rms 09-Mar-93): (save-excursion
7111.6 (rms 09-Mar-93): (set-buffer rmail-buffer)
7121.6 (rms 09-Mar-93): (let* ((init-msg (if n rmail-current-message rmail-total-messages))
7131.6 (rms 09-Mar-93): (rmail-current-message init-msg)
7141.6 (rms 09-Mar-93): (n (or n rmail-total-messages))
7151.6 (rms 09-Mar-93): (msgs-undeled 0))
7161.6 (rms 09-Mar-93): (while (and (> rmail-current-message 0)
7171.6 (rms 09-Mar-93): (< msgs-undeled n))
7181.6 (rms 09-Mar-93): (if (rmail-message-deleted-p rmail-current-message)
7191.6 (rms 09-Mar-93): (progn (rmail-set-attribute "deleted" nil)
7201.6 (rms 09-Mar-93): (setq msgs-undeled (1+ msgs-undeled))))
7211.6 (rms 09-Mar-93): (setq rmail-current-message (1- rmail-current-message)))
7221.6 (rms 09-Mar-93): (set-buffer rmail-summary-buffer)
7231.6 (rms 09-Mar-93): (setq rmail-current-message init-msg msgs-undeled 0)
7241.6 (rms 09-Mar-93): (while (and (> rmail-current-message 0)
7251.6 (rms 09-Mar-93): (< msgs-undeled n))
7261.6 (rms 09-Mar-93): (if (rmail-summary-deleted-p rmail-current-message)
7271.6 (rms 09-Mar-93): (progn (rmail-summary-mark-undeleted rmail-current-message)
7281.6 (rms 09-Mar-93): (setq msgs-undeled (1+ msgs-undeled))))
7291.6 (rms 09-Mar-93): (setq rmail-current-message (1- rmail-current-message))))
7301.6 (rms 09-Mar-93): (rmail-summary-goto-msg)))
7311.6 (rms 09-Mar-93):
7321.1 (jimb 30-Nov-90): ;; Rmail Summary mode is suitable only for specially formatted data.
7331.1 (jimb 30-Nov-90): (put 'rmail-summary-mode 'mode-class 'special)
7341.1 (jimb 30-Nov-90):
7351.1 (jimb 30-Nov-90): (defun rmail-summary-mode ()
7361.6 (rms 09-Mar-93): "Rmail Summary Mode is invoked from Rmail Mode by using \\<rmail-mode-map>\\[rmail-summary].
7371.6 (rms 09-Mar-93): As commands are issued in the summary buffer, they are applied to the
7381.6 (rms 09-Mar-93): corresponding mail messages in the rmail buffer.
7391.1 (jimb 30-Nov-90):
7401.6 (rms 09-Mar-93): All normal editing commands are turned off.
7411.21 (rms 23-Nov-93): Instead, nearly all the Rmail mode commands are available,
7421.21 (rms 23-Nov-93): though many of them move only among the messages in the summary.
7431.6 (rms 09-Mar-93):
7441.21 (rms 23-Nov-93): These additional commands exist:
7451.21 (rms 23-Nov-93):
7461.21 (rms 23-Nov-93): \\[rmail-summary-undelete-many] Undelete all or prefix arg deleted messages.
7471.21 (rms 23-Nov-93): \\[rmail-summary-wipe] Delete the summary and go to the Rmail buffer.
7481.21 (rms 23-Nov-93):
7491.21 (rms 23-Nov-93): Commands for sorting the summary:
7501.21 (rms 23-Nov-93):
7511.21 (rms 23-Nov-93): \\[rmail-summary-sort-by-date] Sort by date.
7521.21 (rms 23-Nov-93): \\[rmail-summary-sort-by-subject] Sort by subject.
7531.21 (rms 23-Nov-93): \\[rmail-summary-sort-by-author] Sort by author.
7541.21 (rms 23-Nov-93): \\[rmail-summary-sort-by-recipient] Sort by recipient.
7551.21 (rms 23-Nov-93): \\[rmail-summary-sort-by-correspondent] Sort by correspondent.
7561.33 (kwzh 07-Apr-94): \\[rmail-summary-sort-by-lines] Sort by lines.
7571.117 (gerd 07-May-01): \\[rmail-summary-sort-by-labels] Sort by labels."
7581.1 (jimb 30-Nov-90): (interactive)
7591.1 (jimb 30-Nov-90): (kill-all-local-variables)
7601.1 (jimb 30-Nov-90): (setq major-mode 'rmail-summary-mode)
7611.1 (jimb 30-Nov-90): (setq mode-name "RMAIL Summary")
7621.1 (jimb 30-Nov-90): (setq truncate-lines t)
7631.1 (jimb 30-Nov-90): (setq buffer-read-only t)
7641.1 (jimb 30-Nov-90): (set-syntax-table text-mode-syntax-table)
7651.6 (rms 09-Mar-93): (make-local-variable 'rmail-buffer)
7661.94 (handa 26-Feb-97): (make-local-variable 'rmail-view-buffer)
7671.6 (rms 09-Mar-93): (make-local-variable 'rmail-total-messages)
7681.6 (rms 09-Mar-93): (make-local-variable 'rmail-current-message)
7691.6 (rms 09-Mar-93): (setq rmail-current-message nil)
7701.6 (rms 09-Mar-93): (make-local-variable 'rmail-summary-redo)
7711.6 (rms 09-Mar-93): (setq rmail-summary-redo nil)
7721.6 (rms 09-Mar-93): (make-local-variable 'revert-buffer-function)
7731.58 (simon 12-Oct-94): (make-local-variable 'font-lock-defaults)
7741.58 (simon 12-Oct-94): (setq font-lock-defaults '(rmail-summary-font-lock-keywords t))
7751.34 (kwzh 07-Apr-94): (rmail-summary-enable)
7761.133 (lute 26-May-05): (run-mode-hooks 'rmail-summary-mode-hook))
7771.1 (jimb 30-Nov-90):
7781.34 (kwzh 07-Apr-94): ;; Summary features need to be disabled during edit mode.
7791.34 (kwzh 07-Apr-94): (defun rmail-summary-disable ()
7801.35 (kwzh 07-Apr-94): (use-local-map text-mode-map)
7811.77 (simon 25-Jan-96): (remove-hook 'post-command-hook 'rmail-summary-rmail-update t)
7821.35 (kwzh 07-Apr-94): (setq revert-buffer-function nil))
7831.34 (kwzh 07-Apr-94):
7841.34 (kwzh 07-Apr-94): (defun rmail-summary-enable ()
7851.35 (kwzh 07-Apr-94): (use-local-map rmail-summary-mode-map)
7861.77 (simon 25-Jan-96): (add-hook 'post-command-hook 'rmail-summary-rmail-update nil t)
7871.35 (kwzh 07-Apr-94): (setq revert-buffer-function 'rmail-update-summary))
7881.34 (kwzh 07-Apr-94):
7891.89 (rms 19-Sep-96): (defvar rmail-summary-put-back-unseen nil
7901.89 (rms 19-Sep-96): "Used for communicating between calls to `rmail-summary-rmail-update'.
7911.89 (rms 19-Sep-96): If it moves to a message within an Incremental Search, and removes
7921.89 (rms 19-Sep-96): the `unseen' attribute from that message, it sets this flag
7931.89 (rms 19-Sep-96): so that if the next motion between messages is in the same Incremental
7941.89 (rms 19-Sep-96): Search, the `unseen' attribute is restored.")
7951.89 (rms 19-Sep-96):
7961.7 (rms 13-Mar-93): ;; Show in Rmail the message described by the summary line that point is on,
7971.7 (rms 13-Mar-93): ;; but only if the Rmail buffer is already visible.
7981.6 (rms 09-Mar-93): ;; This is a post-command-hook in summary buffers.
7991.6 (rms 09-Mar-93): (defun rmail-summary-rmail-update ()
8001.37 (kwzh 19-Apr-94): (let (buffer-read-only)
8011.37 (kwzh 19-Apr-94): (save-excursion
8021.37 (kwzh 19-Apr-94): ;; If at end of buffer, pretend we are on the last text line.
8031.37 (kwzh 19-Apr-94): (if (eobp)
8041.37 (kwzh 19-Apr-94): (forward-line -1))
8051.37 (kwzh 19-Apr-94): (beginning-of-line)
8061.37 (kwzh 19-Apr-94): (skip-chars-forward " ")
8071.132 (lektu 16-May-05): (let ((msg-num (string-to-number (buffer-substring
8081.132 (lektu 16-May-05): (point)
8091.132 (lektu 16-May-05): (progn (skip-chars-forward "0-9")
8101.132 (lektu 16-May-05): (point))))))
8111.89 (rms 19-Sep-96): ;; Always leave `unseen' removed
8121.89 (rms 19-Sep-96): ;; if we get out of isearch mode.
8131.89 (rms 19-Sep-96): ;; Don't let a subsequent isearch restore that `unseen'.
8141.89 (rms 19-Sep-96): (if (not isearch-mode)
8151.89 (rms 19-Sep-96): (setq rmail-summary-put-back-unseen nil))
8161.89 (rms 19-Sep-96):
8171.37 (kwzh 19-Apr-94): (or (eq rmail-current-message msg-num)
8181.100 (kwzh 16-Oct-97): (let ((window (get-buffer-window rmail-view-buffer t))
8191.37 (kwzh 19-Apr-94): (owin (selected-window)))
8201.89 (rms 19-Sep-96): (if isearch-mode
8211.89 (rms 19-Sep-96): (save-excursion
8221.89 (rms 19-Sep-96): (set-buffer rmail-buffer)
8231.89 (rms 19-Sep-96): ;; If we first saw the previous message in this search,
8241.89 (rms 19-Sep-96): ;; and we have gone to a different message while searching,
8251.89 (rms 19-Sep-96): ;; put back `unseen' on the former one.
8261.102 (kwzh 04-Jun-98): (if rmail-summary-put-back-unseen
8271.103 (kwzh 22-Jun-98): (rmail-set-attribute "unseen" t
8281.103 (kwzh 22-Jun-98): rmail-current-message))
8291.89 (rms 19-Sep-96): ;; Arrange to do that later, for the new current message,
8301.89 (rms 19-Sep-96): ;; if it still has `unseen'.
8311.89 (rms 19-Sep-96): (setq rmail-summary-put-back-unseen
8321.89 (rms 19-Sep-96): (rmail-message-labels-p msg-num ", ?\\(unseen\\),")))
8331.89 (rms 19-Sep-96): (setq rmail-summary-put-back-unseen nil))
8341.89 (rms 19-Sep-96):
8351.89 (rms 19-Sep-96): ;; Go to the desired message.
8361.37 (kwzh 19-Apr-94): (setq rmail-current-message msg-num)
8371.89 (rms 19-Sep-96):
8381.89 (rms 19-Sep-96): ;; Update the summary to show the message has been seen.
8391.37 (kwzh 19-Apr-94): (if (= (following-char) ?-)
8401.37 (kwzh 19-Apr-94): (progn
8411.37 (kwzh 19-Apr-94): (delete-char 1)
8421.37 (kwzh 19-Apr-94): (insert " ")))
8431.89 (rms 19-Sep-96):
8441.37 (kwzh 19-Apr-94): (if window
8451.37 (kwzh 19-Apr-94): ;; Using save-window-excursion would cause the new value
8461.14 (rms 03-Jun-93): ;; of point to get lost.
8471.14 (rms 03-Jun-93): (unwind-protect
8481.14 (rms 03-Jun-93): (progn
8491.14 (rms 03-Jun-93): (select-window window)
8501.56 (rms 11-Oct-94): (rmail-show-message msg-num t))
8511.37 (kwzh 19-Apr-94): (select-window owin))
8521.49 (rms 26-Aug-94): (if (buffer-name rmail-buffer)
8531.49 (rms 26-Aug-94): (save-excursion
8541.49 (rms 26-Aug-94): (set-buffer rmail-buffer)
8551.63 (rms 20-Jan-95): (rmail-show-message msg-num t))))))
8561.63 (rms 20-Jan-95): (rmail-summary-update-highlight nil)))))
8571.145 (gm 07-Jun-07):
8581.145 (gm 07-Jun-07): (defun rmail-summary-save-buffer ()
8591.145 (gm 07-Jun-07): "Save the buffer associated with this RMAIL summary."
8601.145 (gm 07-Jun-07): (interactive)
8611.145 (gm 07-Jun-07): (save-window-excursion
8621.145 (gm 07-Jun-07): (save-excursion
8631.145 (gm 07-Jun-07): (switch-to-buffer rmail-buffer)
8641.145 (gm 07-Jun-07): (save-buffer))))
8651.145 (gm 07-Jun-07):
8661.6 (rms 09-Mar-93):
8671.6 (rms 09-Mar-93): (if rmail-summary-mode-map
8681.6 (rms 09-Mar-93): nil
8691.6 (rms 09-Mar-93): (setq rmail-summary-mode-map (make-keymap))
8701.6 (rms 09-Mar-93): (suppress-keymap rmail-summary-mode-map)
8711.98 (rms 04-Aug-97):
8721.98 (rms 04-Aug-97): (define-key rmail-summary-mode-map [mouse-2] 'rmail-summary-mouse-goto-message)
8731.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "a" 'rmail-summary-add-label)
8741.84 (rms 22-Jun-96): (define-key rmail-summary-mode-map "b" 'rmail-summary-bury)
8751.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "c" 'rmail-summary-continue)
8761.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "d" 'rmail-summary-delete-forward)
8771.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\C-d" 'rmail-summary-delete-backward)
8781.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "e" 'rmail-summary-edit-current-message)
8791.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "f" 'rmail-summary-forward)
8801.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "g" 'rmail-summary-get-new-mail)
8811.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "h" 'rmail-summary)
8821.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "i" 'rmail-summary-input)
8831.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "j" 'rmail-summary-goto-msg)
8841.110 (gerd 12-Dec-99): (define-key rmail-summary-mode-map "\C-m" 'rmail-summary-goto-msg)
8851.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "k" 'rmail-summary-kill-label)
8861.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "l" 'rmail-summary-by-labels)
8871.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\e\C-h" 'rmail-summary)
8881.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\e\C-l" 'rmail-summary-by-labels)
8891.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\e\C-r" 'rmail-summary-by-recipients)
8901.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\e\C-s" 'rmail-summary-by-regexp)
8911.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\e\C-t" 'rmail-summary-by-topic)
8921.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "m" 'rmail-summary-mail)
8931.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\M-m" 'rmail-summary-retry-failure)
8941.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "n" 'rmail-summary-next-msg)
8951.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\en" 'rmail-summary-next-all)
8961.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\e\C-n" 'rmail-summary-next-labeled-message)
8971.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "o" 'rmail-summary-output-to-rmail-file)
8981.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\C-o" 'rmail-summary-output)
8991.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "p" 'rmail-summary-previous-msg)
9001.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\ep" 'rmail-summary-previous-all)
9011.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\e\C-p" 'rmail-summary-previous-labeled-message)
9021.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "q" 'rmail-summary-quit)
9031.101 (rms 23-May-98): (define-key rmail-summary-mode-map "Q" 'rmail-summary-wipe)
9041.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "r" 'rmail-summary-reply)
9051.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "s" 'rmail-summary-expunge-and-save)
9061.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\es" 'rmail-summary-search)
9071.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "t" 'rmail-summary-toggle-header)
9081.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "u" 'rmail-summary-undelete)
9091.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\M-u" 'rmail-summary-undelete-many)
9101.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "x" 'rmail-summary-expunge)
9111.101 (rms 23-May-98): (define-key rmail-summary-mode-map "w" 'rmail-summary-output-body)
9121.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "." 'rmail-summary-beginning-of-message)
9131.137 (eliz 12-Aug-05): (define-key rmail-summary-mode-map "/" 'rmail-summary-end-of-message)
9141.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "<" 'rmail-summary-first-message)
9151.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map ">" 'rmail-summary-last-message)
9161.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map " " 'rmail-summary-scroll-msg-up)
9171.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "\177" 'rmail-summary-scroll-msg-down)
9181.6 (rms 09-Mar-93): (define-key rmail-summary-mode-map "?" 'describe-mode)
9191.64 (rms 05-Feb-95): (define-key rmail-summary-mode-map "\C-c\C-n" 'rmail-summary-next-same-subject)
9201.64 (rms 05-Feb-95): (define-key rmail-summary-mode-map "\C-c\C-p" 'rmail-summary-previous-same-subject)
9211.18 (rms 22-Jun-93): (define-key rmail-summary-mode-map "\C-c\C-s\C-d"
9221.18 (rms 22-Jun-93): 'rmail-summary-sort-by-date)
9231.18 (rms 22-Jun-93): (define-key rmail-summary-mode-map "\C-c\C-s\C-s"
9241.18 (rms 22-Jun-93): 'rmail-summary-sort-by-subject)
9251.18 (rms 22-Jun-93): (define-key rmail-summary-mode-map "\C-c\C-s\C-a"
9261.18 (rms 22-Jun-93): 'rmail-summary-sort-by-author)
9271.18 (rms 22-Jun-93): (define-key rmail-summary-mode-map "\C-c\C-s\C-r"
9281.18 (rms 22-Jun-93): 'rmail-summary-sort-by-recipient)
9291.18 (rms 22-Jun-93): (define-key rmail-summary-mode-map "\C-c\C-s\C-c"
9301.18 (rms 22-Jun-93): 'rmail-summary-sort-by-correspondent)
9311.18 (rms 22-Jun-93): (define-key rmail-summary-mode-map "\C-c\C-s\C-l"
9321.18 (rms 22-Jun-93): 'rmail-summary-sort-by-lines)
9331.33 (kwzh 07-Apr-94): (define-key rmail-summary-mode-map "\C-c\C-s\C-k"
9341.117 (gerd 07-May-01): 'rmail-summary-sort-by-labels)
9351.145 (gm 07-Jun-07): (define-key rmail-summary-mode-map "\C-x\C-s" 'rmail-summary-save-buffer)
9361.6 (rms 09-Mar-93): )
9371.6 (rms 09-Mar-93):
9381.17 (rms 22-Jun-93): ;;; Menu bar bindings.
9391.17 (rms 22-Jun-93):
9401.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar] (make-sparse-keymap))
9411.17 (rms 22-Jun-93):
9421.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar classify]
9431.17 (rms 22-Jun-93): (cons "Classify" (make-sparse-keymap "Classify")))
9441.17 (rms 22-Jun-93):
9451.49 (rms 26-Aug-94): (define-key rmail-summary-mode-map [menu-bar classify output-menu]
9461.49 (rms 26-Aug-94): '("Output (Rmail Menu)..." . rmail-summary-output-menu))
9471.49 (rms 26-Aug-94):
9481.49 (rms 26-Aug-94): (define-key rmail-summary-mode-map [menu-bar classify input-menu]
9491.68 (kwzh 30-May-95): '("Input Rmail File (menu)..." . rmail-input-menu))
9501.49 (rms 26-Aug-94):
9511.51 (rms 19-Sep-94): (define-key rmail-summary-mode-map [menu-bar classify input-menu]
9521.51 (rms 19-Sep-94): '(nil))
9531.51 (rms 19-Sep-94):
9541.51 (rms 19-Sep-94): (define-key rmail-summary-mode-map [menu-bar classify output-menu]
9551.51 (rms 19-Sep-94): '(nil))
9561.51 (rms 19-Sep-94):
9571.101 (rms 23-May-98): (define-key rmail-summary-mode-map [menu-bar classify output-body]
9581.101 (rms 23-May-98): '("Output (body)..." . rmail-summary-output-body))
9591.101 (rms 23-May-98):
9601.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar classify output-inbox]
9611.47 (rms 02-Aug-94): '("Output (inbox)..." . rmail-summary-output))
9621.17 (rms 22-Jun-93):
9631.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar classify output]
9641.47 (rms 02-Aug-94): '("Output (Rmail)..." . rmail-summary-output-to-rmail-file))
9651.17 (rms 22-Jun-93):
9661.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar classify kill-label]
9671.47 (rms 02-Aug-94): '("Kill Label..." . rmail-summary-kill-label))
9681.17 (rms 22-Jun-93):
9691.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar classify add-label]
9701.47 (rms 02-Aug-94): '("Add Label..." . rmail-summary-add-label))
9711.17 (rms 22-Jun-93):
9721.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar summary]
9731.17 (rms 22-Jun-93): (cons "Summary" (make-sparse-keymap "Summary")))
9741.17 (rms 22-Jun-93):
9751.85 (rms 25-Jun-96): (define-key rmail-summary-mode-map [menu-bar summary senders]
9761.85 (rms 25-Jun-96): '("By Senders..." . rmail-summary-by-senders))
9771.85 (rms 25-Jun-96):
9781.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar summary labels]
9791.47 (rms 02-Aug-94): '("By Labels..." . rmail-summary-by-labels))
9801.17 (rms 22-Jun-93):
9811.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar summary recipients]
9821.47 (rms 02-Aug-94): '("By Recipients..." . rmail-summary-by-recipients))
9831.17 (rms 22-Jun-93):
9841.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar summary topic]
9851.47 (rms 02-Aug-94): '("By Topic..." . rmail-summary-by-topic))
9861.17 (rms 22-Jun-93):
9871.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar summary regexp]
9881.47 (rms 02-Aug-94): '("By Regexp..." . rmail-summary-by-regexp))
9891.17 (rms 22-Jun-93):
9901.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar summary all]
9911.17 (rms 22-Jun-93): '("All" . rmail-summary))
9921.17 (rms 22-Jun-93):
9931.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar mail]
9941.17 (rms 22-Jun-93): (cons "Mail" (make-sparse-keymap "Mail")))
9951.17 (rms 22-Jun-93):
9961.45 (rms 02-Aug-94): (define-key rmail-summary-mode-map [menu-bar mail rmail-summary-get-new-mail]
9971.44 (rms 31-Jul-94): '("Get New Mail" . rmail-summary-get-new-mail))
9981.44 (rms 31-Jul-94):
9991.46 (rms 02-Aug-94): (define-key rmail-summary-mode-map [menu-bar mail lambda]
10001.44 (rms 31-Jul-94): '("----"))
10011.42 (rms 29-Jul-94):
10021.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar mail continue]
10031.17 (rms 22-Jun-93): '("Continue" . rmail-summary-continue))
10041.44 (rms 31-Jul-94):
10051.44 (rms 31-Jul-94): (define-key rmail-summary-mode-map [menu-bar mail resend]
10061.57 (rms 11-Oct-94): '("Re-send..." . rmail-summary-resend))
10071.17 (rms 22-Jun-93):
10081.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar mail forward]
10091.17 (rms 22-Jun-93): '("Forward" . rmail-summary-forward))
10101.17 (rms 22-Jun-93):
10111.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar mail retry]
10121.17 (rms 22-Jun-93): '("Retry" . rmail-summary-retry-failure))
10131.17 (rms 22-Jun-93):
10141.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar mail reply]
10151.17 (rms 22-Jun-93): '("Reply" . rmail-summary-reply))
10161.17 (rms 22-Jun-93):
10171.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar mail mail]
10181.17 (rms 22-Jun-93): '("Mail" . rmail-summary-mail))
10191.17 (rms 22-Jun-93):
10201.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar delete]
10211.17 (rms 22-Jun-93): (cons "Delete" (make-sparse-keymap "Delete")))
10221.17 (rms 22-Jun-93):
10231.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar delete expunge/save]
10241.17 (rms 22-Jun-93): '("Expunge/Save" . rmail-summary-expunge-and-save))
10251.17 (rms 22-Jun-93):
10261.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar delete expunge]
10271.17 (rms 22-Jun-93): '("Expunge" . rmail-summary-expunge))
10281.17 (rms 22-Jun-93):
10291.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar delete undelete]
10301.17 (rms 22-Jun-93): '("Undelete" . rmail-summary-undelete))
10311.17 (rms 22-Jun-93):
10321.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar delete delete]
10331.17 (rms 22-Jun-93): '("Delete" . rmail-summary-delete-forward))
10341.17 (rms 22-Jun-93):
10351.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move]
10361.17 (rms 22-Jun-93): (cons "Move" (make-sparse-keymap "Move")))
10371.17 (rms 22-Jun-93):
10381.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move search-back]
10391.47 (rms 02-Aug-94): '("Search Back..." . rmail-summary-search-backward))
10401.17 (rms 22-Jun-93):
10411.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move search]
10421.47 (rms 02-Aug-94): '("Search..." . rmail-summary-search))
10431.17 (rms 22-Jun-93):
10441.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move previous]
10451.17 (rms 22-Jun-93): '("Previous Nondeleted" . rmail-summary-previous-msg))
10461.17 (rms 22-Jun-93):
10471.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move next]
10481.17 (rms 22-Jun-93): '("Next Nondeleted" . rmail-summary-next-msg))
10491.17 (rms 22-Jun-93):
10501.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move last]
10511.17 (rms 22-Jun-93): '("Last" . rmail-summary-last-message))
10521.17 (rms 22-Jun-93):
10531.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move first]
10541.17 (rms 22-Jun-93): '("First" . rmail-summary-first-message))
10551.17 (rms 22-Jun-93):
10561.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move previous]
10571.17 (rms 22-Jun-93): '("Previous" . rmail-summary-previous-all))
10581.17 (rms 22-Jun-93):
10591.17 (rms 22-Jun-93): (define-key rmail-summary-mode-map [menu-bar move next]
10601.17 (rms 22-Jun-93): '("Next" . rmail-summary-next-all))
10611.17 (rms 22-Jun-93):
10621.98 (rms 04-Aug-97): (defun rmail-summary-mouse-goto-message (event)
10631.98 (rms 04-Aug-97): "Select the message whose summary line you click on."
10641.98 (rms 04-Aug-97): (interactive "@e")
10651.98 (rms 04-Aug-97): (goto-char (posn-point (event-end event)))
10661.98 (rms 04-Aug-97): (rmail-summary-goto-msg))
10671.76 (kwzh 24-Jan-96):
10681.98 (rms 04-Aug-97): (defun rmail-summary-goto-msg (&optional n nowarn skip-rmail)
10691.98 (rms 04-Aug-97): "Go to message N in the summary buffer and the Rmail buffer.
10701.98 (rms 04-Aug-97): If N is nil, use the message corresponding to point in the summary
10711.98 (rms 04-Aug-97): and move to that message in the Rmail buffer.
10721.76 (kwzh 24-Jan-96):
10731.98 (rms 04-Aug-97): If NOWARN, don't say anything if N is out of range.
10741.98 (rms 04-Aug-97): If SKIP-RMAIL, don't do anything to the Rmail buffer."
10751.1 (jimb 30-Nov-90): (interactive "P")
10761.1 (jimb 30-Nov-90): (if (consp n) (setq n (prefix-numeric-value n)))
10771.1 (jimb 30-Nov-90): (if (eobp) (forward-line -1))
10781.1 (jimb 30-Nov-90): (beginning-of-line)
10791.54 (rms 06-Oct-94): (let* ((obuf (current-buffer))
10801.54 (rms 06-Oct-94): (buf rmail-buffer)
10811.54 (rms 06-Oct-94): (cur (point))
10821.54 (rms 06-Oct-94): message-not-found
10831.132 (lektu 16-May-05): (curmsg (string-to-number
10841.54 (rms 06-Oct-94): (buffer-substring (point)
10851.121 (gerd 05-Oct-01): (min (point-max) (+ 6 (point))))))
10861.54 (rms 06-Oct-94): (total (save-excursion (set-buffer buf) rmail-total-messages)))
10871.29 (rms 19-Mar-94): ;; If message number N was specified, find that message's line
10881.29 (rms 19-Mar-94): ;; or set message-not-found.
10891.29 (rms 19-Mar-94): ;; If N wasn't specified or that message can't be found.
10901.29 (rms 19-Mar-94): ;; set N by default.
10911.1 (jimb 30-Nov-90): (if (not n)
10921.1 (jimb 30-Nov-90): (setq n curmsg)
10931.1 (jimb 30-Nov-90): (if (< n 1)
10941.1 (jimb 30-Nov-90): (progn (message "No preceding message")
10951.1 (jimb 30-Nov-90): (setq n 1)))
10961.131 (eliz 01-Nov-03): (if (and (> n total)
10971.131 (eliz 01-Nov-03): (> total 0))
10981.1 (jimb 30-Nov-90): (progn (message "No following message")
10991.1 (jimb 30-Nov-90): (goto-char (point-max))
11001.76 (kwzh 24-Jan-96): (rmail-summary-goto-msg nil nowarn skip-rmail)))
11011.1 (jimb 30-Nov-90): (goto-char (point-min))
11021.121 (gerd 05-Oct-01): (if (not (re-search-forward (format "^%5d[^0-9]" n) nil t))
11031.1 (jimb 30-Nov-90): (progn (or nowarn (message "Message %d not found" n))
11041.1 (jimb 30-Nov-90): (setq n curmsg)
11051.29 (rms 19-Mar-94): (setq message-not-found t)
11061.1 (jimb 30-Nov-90): (goto-char cur))))
11071.1 (jimb 30-Nov-90): (beginning-of-line)
11081.1 (jimb 30-Nov-90): (skip-chars-forward " ")
11091.1 (jimb 30-Nov-90): (skip-chars-forward "0-9")
11101.1 (jimb 30-Nov-90): (save-excursion (if (= (following-char) ?-)
11111.1 (jimb 30-Nov-90): (let ((buffer-read-only nil))
11121.1 (jimb 30-Nov-90): (delete-char 1)
11131.1 (jimb 30-Nov-90): (insert " "))))
11141.63 (rms 20-Jan-95): (rmail-summary-update-highlight message-not-found)
11151.1 (jimb 30-Nov-90): (beginning-of-line)
11161.6 (rms 09-Mar-93): (if skip-rmail
11171.6 (rms 09-Mar-93): nil
11181.22 (rms 23-Dec-93): (let ((selwin (selected-window)))
11191.22 (rms 23-Dec-93): (unwind-protect
11201.22 (rms 23-Dec-93): (progn (pop-to-buffer buf)
11211.22 (rms 23-Dec-93): (rmail-show-message n))
11221.50 (rms 13-Sep-94): (select-window selwin)
11231.50 (rms 13-Sep-94): ;; The actions above can alter the current buffer. Preserve it.
11241.50 (rms 13-Sep-94): (set-buffer obuf))))))
11251.63 (rms 20-Jan-95):
11261.63 (rms 20-Jan-95): ;; Update the highlighted line in an rmail summary buffer.
11271.63 (rms 20-Jan-95): ;; That should be current. We highlight the line point is on.
11281.63 (rms 20-Jan-95): ;; If NOT-FOUND is non-nil, we turn off highlighting.
11291.63 (rms 20-Jan-95): (defun rmail-summary-update-highlight (not-found)
11301.63 (rms 20-Jan-95): ;; Make sure we have an overlay to use.
11311.63 (rms 20-Jan-95): (or rmail-summary-overlay
11321.63 (rms 20-Jan-95): (progn
11331.63 (rms 20-Jan-95): (make-local-variable 'rmail-summary-overlay)
11341.63 (rms 20-Jan-95): (setq rmail-summary-overlay (make-overlay (point) (point)))))
11351.63 (rms 20-Jan-95): ;; If this message is in the summary, use the overlay to highlight it.
11361.63 (rms 20-Jan-95): ;; Otherwise, don't highlight anything.
11371.63 (rms 20-Jan-95): (if not-found
11381.63 (rms 20-Jan-95): (overlay-put rmail-summary-overlay 'face nil)
11391.63 (rms 20-Jan-95): (move-overlay rmail-summary-overlay
11401.63 (rms 20-Jan-95): (save-excursion (beginning-of-line)
11411.63 (rms 20-Jan-95): (skip-chars-forward " ")
11421.63 (rms 20-Jan-95): (point))
11431.63 (rms 20-Jan-95): (save-excursion (end-of-line) (point)))
11441.63 (rms 20-Jan-95): (overlay-put rmail-summary-overlay 'face 'highlight)))
11451.6 (rms 09-Mar-93):
11461.1 (jimb 30-Nov-90): (defun rmail-summary-scroll-msg-up (&optional dist)
11471.61 (rms 20-Nov-94): "Scroll the Rmail window forward.
11481.61 (rms 20-Nov-94): If the Rmail window is displaying the end of a message,
11491.61 (rms 20-Nov-94): advance to the next message."
11501.1 (jimb 30-Nov-90): (interactive "P")
11511.61 (rms 20-Nov-94): (if (eq dist '-)
11521.61 (rms 20-Nov-94): (rmail-summary-scroll-msg-down nil)
11531.94 (handa 26-Feb-97): (let ((rmail-buffer-window (get-buffer-window rmail-view-buffer)))
11541.61 (rms 20-Nov-94): (if rmail-buffer-window
11551.61 (rms 20-Nov-94): (if (let ((rmail-summary-window (selected-window)))
11561.61 (rms 20-Nov-94): (select-window rmail-buffer-window)
11571.61 (rms 20-Nov-94): (prog1
11581.61 (rms 20-Nov-94): ;; Is EOB visible in the buffer?
11591.61 (rms 20-Nov-94): (save-excursion
11601.61 (rms 20-Nov-94): (let ((ht (window-height (selected-window))))
11611.61 (rms 20-Nov-94): (move-to-window-line (- ht 2))
11621.61 (rms 20-Nov-94): (end-of-line)
11631.61 (rms 20-Nov-94): (eobp)))
11641.61 (rms 20-Nov-94): (select-window rmail-summary-window)))
11651.82 (rms 04-Apr-96): (if (not rmail-summary-scroll-between-messages)
11661.82 (rms 04-Apr-96): (error "End of buffer")
11671.82 (rms 04-Apr-96): (rmail-summary-next-msg (or dist 1)))
11681.94 (handa 26-Feb-97): (let ((other-window-scroll-buffer rmail-view-buffer))
11691.61 (rms 20-Nov-94): (scroll-other-window dist)))
11701.93 (rms 14-Dec-96): ;; If it isn't visible at all, show the beginning.
11711.93 (rms 14-Dec-96): (rmail-summary-beginning-of-message)))))
11721.1 (jimb 30-Nov-90):
11731.1 (jimb 30-Nov-90): (defun rmail-summary-scroll-msg-down (&optional dist)
11741.61 (rms 20-Nov-94): "Scroll the Rmail window backward.
11751.93 (rms 14-Dec-96): If the Rmail window is now displaying the beginning of a message,
11761.93 (rms 14-Dec-96): move to the previous message."
11771.1 (jimb 30-Nov-90): (interactive "P")
11781.61 (rms 20-Nov-94): (if (eq dist '-)
11791.61 (rms 20-Nov-94): (rmail-summary-scroll-msg-up nil)
11801.118 (gerd 08-May-01): (let ((rmail-buffer-window (get-buffer-window rmail-view-buffer)))
11811.61 (rms 20-Nov-94): (if rmail-buffer-window
11821.61 (rms 20-Nov-94): (if (let ((rmail-summary-window (selected-window)))
11831.61 (rms 20-Nov-94): (select-window rmail-buffer-window)
11841.61 (rms 20-Nov-94): (prog1
11851.61 (rms 20-Nov-94): ;; Is BOB visible in the buffer?
11861.61 (rms 20-Nov-94): (save-excursion
11871.61 (rms 20-Nov-94): (move-to-window-line 0)
11881.61 (rms 20-Nov-94): (beginning-of-line)
11891.61 (rms 20-Nov-94): (bobp))
11901.61 (rms 20-Nov-94): (select-window rmail-summary-window)))
11911.82 (rms 04-Apr-96): (if (not rmail-summary-scroll-between-messages)
11921.82 (rms 04-Apr-96): (error "Beginning of buffer")
11931.82 (rms 04-Apr-96): (rmail-summary-previous-msg (or dist 1)))
11941.118 (gerd 08-May-01): (let ((other-window-scroll-buffer rmail-view-buffer))
11951.61 (rms 20-Nov-94): (scroll-other-window-down dist)))
11961.93 (rms 14-Dec-96): ;; If it isn't visible at all, show the beginning.
11971.93 (rms 14-Dec-96): (rmail-summary-beginning-of-message)))))
11981.1 (jimb 30-Nov-90):
11991.6 (rms 09-Mar-93): (defun rmail-summary-beginning-of-message ()
12001.6 (rms 09-Mar-93): "Show current message from the beginning."
12011.6 (rms 09-Mar-93): (interactive)
12021.137 (eliz 12-Aug-05): (rmail-summary-show-message 'BEG))
12031.137 (eliz 12-Aug-05):
12041.137 (eliz 12-Aug-05): (defun rmail-summary-end-of-message ()
12051.137 (eliz 12-Aug-05): "Show bottom of current message."
12061.137 (eliz 12-Aug-05): (interactive)
12071.137 (eliz 12-Aug-05): (rmail-summary-show-message 'END))
12081.137 (eliz 12-Aug-05):
12091.137 (eliz 12-Aug-05): (defun rmail-summary-show-message (where)
12101.137 (eliz 12-Aug-05): "Show current mail message.
12111.137 (eliz 12-Aug-05): Position it according to WHERE which can be BEG or END"
12121.93 (rms 14-Dec-96): (if (and (one-window-p) (not pop-up-frames))
12131.93 (rms 14-Dec-96): ;; If there is just one window, put the summary on the top.
12141.118 (gerd 08-May-01): (let ((buffer rmail-view-buffer))
12151.93 (rms 14-Dec-96): (split-window (selected-window) rmail-summary-window-size)
12161.93 (rms 14-Dec-96): (select-window (frame-first-window))
12171.118 (gerd 08-May-01): (pop-to-buffer rmail-view-buffer)
12181.93 (rms 14-Dec-96): ;; If pop-to-buffer did not use that window, delete that
12191.93 (rms 14-Dec-96): ;; window. (This can happen if it uses another frame.)
12201.93 (rms 14-Dec-96): (or (eq buffer (window-buffer (next-window (frame-first-window))))
12211.93 (rms 14-Dec-96): (delete-other-windows)))
12221.118 (gerd 08-May-01): (pop-to-buffer rmail-view-buffer))
12231.137 (eliz 12-Aug-05): (cond
12241.137 (eliz 12-Aug-05): ((eq where 'BEG)
12251.137 (eliz 12-Aug-05): (goto-char (point-min))
12261.137 (eliz 12-Aug-05): (search-forward "\n\n"))
12271.137 (eliz 12-Aug-05): ((eq where 'END)
12281.137 (eliz 12-Aug-05): (goto-char (point-max))
12291.137 (eliz 12-Aug-05): (recenter (1- (window-height))))
12301.137 (eliz 12-Aug-05): )
12311.6 (rms 09-Mar-93): (pop-to-buffer rmail-summary-buffer))
12321.84 (rms 22-Jun-96):
12331.84 (rms 22-Jun-96): (defun rmail-summary-bury ()
12341.84 (rms 22-Jun-96): "Bury the Rmail buffer and the Rmail summary buffer."
12351.84 (rms 22-Jun-96): (interactive)
12361.84 (rms 22-Jun-96): (let ((buffer-to-bury (current-buffer)))
12371.84 (rms 22-Jun-96): (let (window)
12381.84 (rms 22-Jun-96): (while (setq window (get-buffer-window rmail-buffer))
12391.84 (rms 22-Jun-96): (set-window-buffer window (other-buffer rmail-buffer)))
12401.84 (rms 22-Jun-96): (bury-buffer rmail-buffer))
12411.84 (rms 22-Jun-96): (switch-to-buffer (other-buffer buffer-to-bury))
12421.84 (rms 22-Jun-96): (bury-buffer buffer-to-bury)))
12431.6 (rms 09-Mar-93):
12441.1 (jimb 30-Nov-90): (defun rmail-summary-quit ()
12451.6 (rms 09-Mar-93): "Quit out of Rmail and Rmail summary."
12461.1 (jimb 30-Nov-90): (interactive)
12471.6 (rms 09-Mar-93): (rmail-summary-wipe)
12481.1 (jimb 30-Nov-90): (rmail-quit))
12491.1 (jimb 30-Nov-90):
12501.6 (rms 09-Mar-93): (defun rmail-summary-wipe ()
12511.6 (rms 09-Mar-93): "Kill and wipe away Rmail summary, remaining within Rmail."
12521.1 (jimb 30-Nov-90): (interactive)
12531.6 (rms 09-Mar-93): (save-excursion (set-buffer rmail-buffer) (setq rmail-summary-buffer nil))
12541.118 (gerd 08-May-01): (let ((local-rmail-buffer rmail-view-buffer))
12551.6 (rms 09-Mar-93): (kill-buffer (current-buffer))
12561.6 (rms 09-Mar-93): ;; Delete window if not only one.
12571.6 (rms 09-Mar-93): (if (not (eq (selected-window) (next-window nil 'no-minibuf)))
12581.6 (rms 09-Mar-93): (delete-window))
12591.21 (rms 23-Nov-93): ;; Switch windows to the rmail buffer, or switch to it in this window.
12601.21 (rms 23-Nov-93): (pop-to-buffer local-rmail-buffer)))
12611.6 (rms 09-Mar-93):
12621.6 (rms 09-Mar-93): (defun rmail-summary-expunge ()
12631.6 (rms 09-Mar-93): "Actually erase all deleted messages and recompute summary headers."
12641.6 (rms 09-Mar-93): (interactive)
12651.6 (rms 09-Mar-93): (save-excursion
12661.6 (rms 09-Mar-93): (set-buffer rmail-buffer)
12671.115 (gerd 12-Dec-00): (when (rmail-expunge-confirmed)
12681.114 (gerd 04-Dec-00): (rmail-only-expunge)))
12691.6 (rms 09-Mar-93): (rmail-update-summary))
12701.6 (rms 09-Mar-93):
12711.6 (rms 09-Mar-93): (defun rmail-summary-expunge-and-save ()
12721.6 (rms 09-Mar-93): "Expunge and save RMAIL file."
12731.6 (rms 09-Mar-93): (interactive)
12741.6 (rms 09-Mar-93): (save-excursion
12751.6 (rms 09-Mar-93): (set-buffer rmail-buffer)
12761.115 (gerd 12-Dec-00): (when (rmail-expunge-confirmed)
12771.114 (gerd 04-Dec-00): (rmail-only-expunge)))
12781.15 (rms 04-Jun-93): (rmail-update-summary)
12791.15 (rms 04-Jun-93): (save-excursion
12801.14 (rms 03-Jun-93): (set-buffer rmail-buffer)
12811.28 (kwzh 09-Feb-94): (save-buffer))
12821.28 (kwzh 09-Feb-94): (set-buffer-modified-p nil))
12831.6 (rms 09-Mar-93):
12841.99 (rms 27-Aug-97): (defun rmail-summary-get-new-mail (&optional file-name)
12851.99 (rms 27-Aug-97): "Get new mail and recompute summary headers.
12861.99 (rms 27-Aug-97):
12871.99 (rms 27-Aug-97): Optionally you can specify the file to get new mail from. In this case,
12881.99 (rms 27-Aug-97): the file of new mail is not changed or deleted. Noninteractively, you can
12891.99 (rms 27-Aug-97): pass the inbox file name as an argument. Interactively, a prefix
12901.99 (rms 27-Aug-97): argument says to read a file name and use that file as the inbox."
12911.99 (rms 27-Aug-97): (interactive
12921.99 (rms 27-Aug-97): (list (if current-prefix-arg
12931.99 (rms 27-Aug-97): (read-file-name "Get new mail from file: "))))
12941.15 (rms 04-Jun-93): (let (msg)
12951.15 (rms 04-Jun-93): (save-excursion
12961.15 (rms 04-Jun-93): (set-buffer rmail-buffer)
12971.99 (rms 27-Aug-97): (rmail-get-new-mail file-name)
12981.15 (rms 04-Jun-93): ;; Get the proper new message number.
12991.15 (rms 04-Jun-93): (setq msg rmail-current-message))
13001.15 (rms 04-Jun-93): ;; Make sure that message is displayed.
13011.73 (rms 30-Nov-95): (or (zerop msg)
13021.73 (rms 30-Nov-95): (rmail-summary-goto-msg msg))))
13031.6 (rms 09-Mar-93):
13041.6 (rms 09-Mar-93): (defun rmail-summary-input (filename)
13051.6 (rms 09-Mar-93): "Run Rmail on file FILENAME."
13061.6 (rms 09-Mar-93): (interactive "FRun rmail on RMAIL file: ")
13071.15 (rms 04-Jun-93): ;; We switch windows here, then display the other Rmail file there.
13081.15 (rms 04-Jun-93): (pop-to-buffer rmail-buffer)
13091.15 (rms 04-Jun-93): (rmail filename))
13101.6 (rms 09-Mar-93):
13111.6 (rms 09-Mar-93): (defun rmail-summary-first-message ()
13121.6 (rms 09-Mar-93): "Show first message in Rmail file from summary buffer."
13131.6 (rms 09-Mar-93): (interactive)
13141.134 (rms 03-Jul-05): (with-no-warnings
13151.134 (rms 03-Jul-05): (beginning-of-buffer)))
13161.6 (rms 09-Mar-93):
13171.6 (rms 09-Mar-93): (defun rmail-summary-last-message ()
13181.6 (rms 09-Mar-93): "Show last message in Rmail file from summary buffer."
13191.6 (rms 09-Mar-93): (interactive)
13201.134 (rms 03-Jul-05): (with-no-warnings
13211.134 (rms 03-Jul-05): (end-of-buffer))
13221.6 (rms 09-Mar-93): (forward-line -1))
13231.6 (rms 09-Mar-93):
13241.148 (dann 27-Nov-07): (declare-function rmail-abort-edit "rmailedit" ())
13251.148 (dann 27-Nov-07): (declare-function rmail-cease-edit "rmailedit"())
13261.148 (dann 27-Nov-07): (declare-function rmail-set-label "rmailkwd" (l state &optional n))
13271.148 (dann 27-Nov-07): (declare-function rmail-output-read-file-name "rmailout" ())
13281.148 (dann 27-Nov-07): (declare-function rmail-output-read-rmail-file-name "rmailout" ())
13291.148 (dann 27-Nov-07): (declare-function mail-send-and-exit "sendmail" (&optional arg))
13301.148 (dann 27-Nov-07):
13311.6 (rms 09-Mar-93): (defvar rmail-summary-edit-map nil)
13321.6 (rms 09-Mar-93): (if rmail-summary-edit-map
13331.6 (rms 09-Mar-93): nil
13341.6 (rms 09-Mar-93): (setq rmail-summary-edit-map
13351.19 (rms 12-Nov-93): (nconc (make-sparse-keymap) text-mode-map))
13361.6 (rms 09-Mar-93): (define-key rmail-summary-edit-map "\C-c\C-c" 'rmail-cease-edit)
13371.6 (rms 09-Mar-93): (define-key rmail-summary-edit-map "\C-c\C-]" 'rmail-abort-edit))
13381.6 (rms 09-Mar-93):
13391.6 (rms 09-Mar-93): (defun rmail-summary-edit-current-message ()
13401.6 (rms 09-Mar-93): "Edit the contents of this message."
13411.6 (rms 09-Mar-93): (interactive)
13421.6 (rms 09-Mar-93): (pop-to-buffer rmail-buffer)
13431.6 (rms 09-Mar-93): (rmail-edit-current-message)
13441.6 (rms 09-Mar-93): (use-local-map rmail-summary-edit-map))
13451.6 (rms 09-Mar-93):
13461.6 (rms 09-Mar-93): (defun rmail-summary-cease-edit ()
13471.6 (rms 09-Mar-93): "Finish editing message, then go back to Rmail summary buffer."
13481.6 (rms 09-Mar-93): (interactive)
13491.6 (rms 09-Mar-93): (rmail-cease-edit)
13501.6 (rms 09-Mar-93): (pop-to-buffer rmail-summary-buffer))
13511.6 (rms 09-Mar-93):
13521.6 (rms 09-Mar-93): (defun rmail-summary-abort-edit ()
13531.6 (rms 09-Mar-93): "Abort edit of current message; restore original contents.
13541.6 (rms 09-Mar-93): Go back to summary buffer."
13551.6 (rms 09-Mar-93): (interactive)
13561.6 (rms 09-Mar-93): (rmail-abort-edit)
13571.6 (rms 09-Mar-93): (pop-to-buffer rmail-summary-buffer))
13581.6 (rms 09-Mar-93):
13591.17 (rms 22-Jun-93): (defun rmail-summary-search-backward (regexp &optional n)
13601.17 (rms 22-Jun-93): "Show message containing next match for REGEXP.
13611.17 (rms 22-Jun-93): Prefix argument gives repeat count; negative argument means search
13621.17 (rms 22-Jun-93): backwards (through earlier messages).
13631.17 (rms 22-Jun-93): Interactively, empty argument means use same regexp used last time."
13641.17 (rms 22-Jun-93): (interactive
13651.17 (rms 22-Jun-93): (let* ((reversep (>= (prefix-numeric-value current-prefix-arg) 0))
13661.17 (rms 22-Jun-93): (prompt
13671.139 (rfrancoi 24-Sep-05): (concat (if reversep "Reverse " "") "Rmail search (regexp"))
13681.17 (rms 22-Jun-93): regexp)
13691.139 (rfrancoi 24-Sep-05): (setq prompt
13701.139 (rfrancoi 24-Sep-05): (concat prompt
13711.139 (rfrancoi 24-Sep-05): (if rmail-search-last-regexp
13721.139 (rfrancoi 24-Sep-05): (concat ", default "
13731.139 (rfrancoi 24-Sep-05): rmail-search-last-regexp "): ")
13741.139 (rfrancoi 24-Sep-05): "): ")))
13751.17 (rms 22-Jun-93): (setq regexp (read-string prompt))
13761.17 (rms 22-Jun-93): (cond ((not (equal regexp ""))
13771.17 (rms 22-Jun-93): (setq rmail-search-last-regexp regexp))
13781.17 (rms 22-Jun-93): ((not rmail-search-last-regexp)
13791.17 (rms 22-Jun-93): (error "No previous Rmail search string")))
13801.17 (rms 22-Jun-93): (list rmail-search-last-regexp
13811.17 (rms 22-Jun-93): (prefix-numeric-value current-prefix-arg))))
13821.17 (rms 22-Jun-93): ;; Don't use save-excursion because that prevents point from moving
13831.17 (rms 22-Jun-93): ;; properly in the summary buffer.
13841.17 (rms 22-Jun-93): (let ((buffer (current-buffer)))
13851.17 (rms 22-Jun-93): (unwind-protect
13861.17 (rms 22-Jun-93): (progn
13871.17 (rms 22-Jun-93): (set-buffer rmail-buffer)
13881.17 (rms 22-Jun-93): (rmail-search regexp (- n)))
13891.17 (rms 22-Jun-93): (set-buffer buffer))))
13901.17 (rms 22-Jun-93):
13911.6 (rms 09-Mar-93): (defun rmail-summary-search (regexp &optional n)
13921.6 (rms 09-Mar-93): "Show message containing next match for REGEXP.
13931.6 (rms 09-Mar-93): Prefix argument gives repeat count; negative argument means search
13941.6 (rms 09-Mar-93): backwards (through earlier messages).
13951.6 (rms 09-Mar-93): Interactively, empty argument means use same regexp used last time."
13961.6 (rms 09-Mar-93): (interactive
13971.6 (rms 09-Mar-93): (let* ((reversep (< (prefix-numeric-value current-prefix-arg) 0))
13981.6 (rms 09-Mar-93): (prompt
13991.139 (rfrancoi 24-Sep-05): (concat (if reversep "Reverse " "") "Rmail search (regexp"))
14001.6 (rms 09-Mar-93): regexp)
14011.139 (rfrancoi 24-Sep-05): (setq prompt
14021.139 (rfrancoi 24-Sep-05): (concat prompt
14031.139 (rfrancoi 24-Sep-05): (if rmail-search-last-regexp
14041.139 (rfrancoi 24-Sep-05): (concat ", default "
14051.139 (rfrancoi 24-Sep-05): rmail-search-last-regexp "): ")
14061.139 (rfrancoi 24-Sep-05): "): ")))
14071.6 (rms 09-Mar-93): (setq regexp (read-string prompt))
14081.6 (rms 09-Mar-93): (cond ((not (equal regexp ""))
14091.6 (rms 09-Mar-93): (setq rmail-search-last-regexp regexp))
14101.6 (rms 09-Mar-93): ((not rmail-search-last-regexp)
14111.6 (rms 09-Mar-93): (error "No previous Rmail search string")))
14121.6 (rms 09-Mar-93): (list rmail-search-last-regexp
14131.6 (rms 09-Mar-93): (prefix-numeric-value current-prefix-arg))))
14141.17 (rms 22-Jun-93): ;; Don't use save-excursion because that prevents point from moving
14151.17 (rms 22-Jun-93): ;; properly in the summary buffer.
14161.17 (rms 22-Jun-93): (let ((buffer (current-buffer)))
14171.17 (rms 22-Jun-93): (unwind-protect
14181.17 (rms 22-Jun-93): (progn
14191.17 (rms 22-Jun-93): (set-buffer rmail-buffer)
14201.17 (rms 22-Jun-93): (rmail-search regexp n))
14211.17 (rms 22-Jun-93): (set-buffer buffer))))
14221.6 (rms 09-Mar-93):
14231.6 (rms 09-Mar-93): (defun rmail-summary-toggle-header ()
14241.6 (rms 09-Mar-93): "Show original message header if pruned header currently shown, or vice versa."
14251.6 (rms 09-Mar-93): (interactive)
14261.118 (gerd 08-May-01): (save-window-excursion
14271.6 (rms 09-Mar-93): (set-buffer rmail-buffer)
14281.66 (rms 31-Mar-95): (rmail-toggle-header))
14291.66 (rms 31-Mar-95): ;; Inside save-excursion, some changes to point in the RMAIL buffer are lost.
14301.66 (rms 31-Mar-95): ;; Set point to point-min in the RMAIL buffer, if it is visible.
14311.118 (gerd 08-May-01): (let ((window (get-buffer-window rmail-view-buffer)))
14321.66 (rms 31-Mar-95): (if window
14331.66 (rms 31-Mar-95): ;; Using save-window-excursion would lose the new value of point.
14341.66 (rms 31-Mar-95): (let ((owin (selected-window)))
14351.66 (rms 31-Mar-95): (unwind-protect
14361.66 (rms 31-Mar-95): (progn
14371.66 (rms 31-Mar-95): (select-window window)
14381.66 (rms 31-Mar-95): (goto-char (point-min)))
14391.66 (rms 31-Mar-95): (select-window owin))))))
14401.66 (rms 31-Mar-95):
14411.6 (rms 09-Mar-93):
14421.6 (rms 09-Mar-93): (defun rmail-summary-add-label (label)
14431.6 (rms 09-Mar-93): "Add LABEL to labels associated with current Rmail message.
14441.6 (rms 09-Mar-93): Completion is performed over known labels when reading."
14451.14 (rms 03-Jun-93): (interactive (list (save-excursion
14461.14 (rms 03-Jun-93): (set-buffer rmail-buffer)
14471.14 (rms 03-Jun-93): (rmail-read-label "Add label"))))
14481.6 (rms 09-Mar-93): (save-excursion
14491.6 (rms 09-Mar-93): (set-buffer rmail-buffer)
14501.6 (rms 09-Mar-93): (rmail-add-label label)))
14511.6 (rms 09-Mar-93):
14521.6 (rms 09-Mar-93): (defun rmail-summary-kill-label (label)
14531.6 (rms 09-Mar-93): "Remove LABEL from labels associated with current Rmail message.
14541.6 (rms 09-Mar-93): Completion is performed over known labels when reading."
14551.14 (rms 03-Jun-93): (interactive (list (save-excursion
14561.14 (rms 03-Jun-93): (set-buffer rmail-buffer)
14571.14 (rms 03-Jun-93): (rmail-read-label "Kill label"))))
14581.6 (rms 09-Mar-93): (save-excursion
14591.6 (rms 09-Mar-93): (set-buffer rmail-buffer)
14601.6 (rms 09-Mar-93): (rmail-set-label label nil)))
14611.6 (rms 09-Mar-93):
14621.6 (rms 09-Mar-93): ;;;; *** Rmail Summary Mailing Commands ***
14631.6 (rms 09-Mar-93):
14641.116 (gerd 12-Mar-01): (defun rmail-summary-override-mail-send-and-exit ()
14651.127 (jpw 06-Feb-03): "Replace bindings to `mail-send-and-exit' with `rmail-summary-send-and-exit'."
14661.116 (gerd 12-Mar-01): (use-local-map (copy-keymap (current-local-map)))
14671.116 (gerd 12-Mar-01): (dolist (key (where-is-internal 'mail-send-and-exit))
14681.116 (gerd 12-Mar-01): (define-key (current-local-map) key 'rmail-summary-send-and-exit)))
14691.116 (gerd 12-Mar-01):
14701.6 (rms 09-Mar-93): (defun rmail-summary-mail ()
14711.6 (rms 09-Mar-93): "Send mail in another window.
14721.6 (rms 09-Mar-93): While composing the message, use \\[mail-yank-original] to yank the
14731.6 (rms 09-Mar-93): original message into it."
14741.6 (rms 09-Mar-93): (interactive)
14751.65 (rms 19-Feb-95): (let ((window (get-buffer-window rmail-buffer)))
14761.65 (rms 19-Feb-95): (if window
14771.65 (rms 19-Feb-95): (select-window window)
14781.65 (rms 19-Feb-95): (set-buffer rmail-buffer)))
14791.65 (rms 19-Feb-95): (rmail-start-mail nil nil nil nil nil (current-buffer))
14801.116 (gerd 12-Mar-01): (rmail-summary-override-mail-send-and-exit))
14811.6 (rms 09-Mar-93):
14821.6 (rms 09-Mar-93): (defun rmail-summary-continue ()
14831.6 (rms 09-Mar-93): "Continue composing outgoing message previously being composed."
14841.6 (rms 09-Mar-93): (interactive)
14851.65 (rms 19-Feb-95): (let ((window (get-buffer-window rmail-buffer)))
14861.65 (rms 19-Feb-95): (if window
14871.65 (rms 19-Feb-95): (select-window window)
14881.65 (rms 19-Feb-95): (set-buffer rmail-buffer)))
14891.27 (kwzh 31-Jan-94): (rmail-start-mail t))
14901.6 (rms 09-Mar-93):
14911.6 (rms 09-Mar-93): (defun rmail-summary-reply (just-sender)
14921.6 (rms 09-Mar-93): "Reply to the current message.
14931.6 (rms 09-Mar-93): Normally include CC: to all other recipients of original message;
14941.27 (kwzh 31-Jan-94): prefix argument means ignore them. While composing the reply,
14951.27 (kwzh 31-Jan-94): use \\[mail-yank-original] to yank the original message into it."
14961.6 (rms 09-Mar-93): (interactive "P")
14971.118 (gerd 08-May-01): (let ((window (get-buffer-window rmail-view-buffer)))
14981.65 (rms 19-Feb-95): (if window
14991.65 (rms 19-Feb-95): (select-window window)
15001.118 (gerd 08-May-01): (set-buffer rmail-view-buffer)))
15011.27 (kwzh 31-Jan-94): (rmail-reply just-sender)
15021.116 (gerd 12-Mar-01): (rmail-summary-override-mail-send-and-exit))
15031.6 (rms 09-Mar-93):
15041.6 (rms 09-Mar-93): (defun rmail-summary-retry-failure ()
15051.6 (rms 09-Mar-93): "Edit a mail message which is based on the contents of the current message.
15061.6 (rms 09-Mar-93): For a message rejected by the mail system, extract the interesting headers and
15071.6 (rms 09-Mar-93): the body of the original message; otherwise copy the current message."
15081.6 (rms 09-Mar-93): (interactive)
15091.65 (rms 19-Feb-95): (let ((window (get-buffer-window rmail-buffer)))
15101.65 (rms 19-Feb-95): (if window
15111.65 (rms 19-Feb-95): (select-window window)
15121.65 (rms 19-Feb-95): (set-buffer rmail-buffer)))
15131.27 (kwzh 31-Jan-94): (rmail-retry-failure)
15141.116 (gerd 12-Mar-01): (rmail-summary-override-mail-send-and-exit))
15151.6 (rms 09-Mar-93):
15161.6 (rms 09-Mar-93): (defun rmail-summary-send-and-exit ()
15171.6 (rms 09-Mar-93): "Send mail reply and return to summary buffer."
15181.6 (rms 09-Mar-93): (interactive)
15191.6 (rms 09-Mar-93): (mail-send-and-exit t))
15201.6 (rms 09-Mar-93):
15211.20 (rms 14-Nov-93): (defun rmail-summary-forward (resend)
15221.20 (rms 14-Nov-93): "Forward the current message to another user.
15231.20 (rms 14-Nov-93): With prefix argument, \"resend\" the message instead of forwarding it;
15241.20 (rms 14-Nov-93): see the documentation of `rmail-resend'."
15251.20 (rms 14-Nov-93): (interactive "P")
15261.6 (rms 09-Mar-93): (save-excursion
15271.65 (rms 19-Feb-95): (let ((window (get-buffer-window rmail-buffer)))
15281.65 (rms 19-Feb-95): (if window
15291.65 (rms 19-Feb-95): (select-window window)
15301.65 (rms 19-Feb-95): (set-buffer rmail-buffer)))
15311.20 (rms 14-Nov-93): (rmail-forward resend)
15321.116 (gerd 12-Mar-01): (rmail-summary-override-mail-send-and-exit)))
15331.57 (rms 11-Oct-94):
15341.57 (rms 11-Oct-94): (defun rmail-summary-resend ()
15351.127 (jpw 06-Feb-03): "Resend current message using `rmail-resend'."
15361.57 (rms 11-Oct-94): (interactive)
15371.57 (rms 11-Oct-94): (save-excursion
15381.65 (rms 19-Feb-95): (let ((window (get-buffer-window rmail-buffer)))
15391.65 (rms 19-Feb-95): (if window
15401.65 (rms 19-Feb-95): (select-window window)
15411.65 (rms 19-Feb-95): (set-buffer rmail-buffer)))
15421.57 (rms 11-Oct-94): (call-interactively 'rmail-resend)))
15431.6 (rms 09-Mar-93):
15441.6 (rms 09-Mar-93): ;; Summary output commands.
15451.6 (rms 09-Mar-93):
15461.108 (kwzh 13-Jun-99): (defun rmail-summary-output-to-rmail-file (&optional file-name n)
15471.6 (rms 09-Mar-93): "Append the current message to an Rmail file named FILE-NAME.
15481.6 (rms 09-Mar-93): If the file does not exist, ask if it should be created.
15491.6 (rms 09-Mar-93): If file is being visited, the message is appended to the Emacs
15501.104 (kwzh 10-Sep-98): buffer visiting that file.
15511.104 (kwzh 10-Sep-98):
15521.104 (kwzh 10-Sep-98): A prefix argument N says to output N consecutive messages
15531.104 (kwzh 10-Sep-98): starting with the current one. Deleted messages are skipped and don't count."
15541.107 (rms 04-Jan-99): (interactive
15551.107 (rms 04-Jan-99): (progn (require 'rmailout)
15561.107 (rms 04-Jan-99): (list (rmail-output-read-rmail-file-name)
15571.107 (rms 04-Jan-99): (prefix-numeric-value current-prefix-arg))))
15581.109 (kwzh 15-Jun-99): (let ((i 0) prev-msg)
15591.126 (lektu 04-Feb-03): (while
15601.109 (kwzh 15-Jun-99): (and (< i n)
15611.109 (kwzh 15-Jun-99): (progn (rmail-summary-goto-msg)
15621.109 (kwzh 15-Jun-99): (not (eq prev-msg
15631.109 (kwzh 15-Jun-99): (setq prev-msg
15641.126 (lektu 04-Feb-03): (with-current-buffer rmail-buffer
15651.109 (kwzh 15-Jun-99): rmail-current-message))))))
15661.107 (rms 04-Jan-99): (setq i (1+ i))
15671.107 (rms 04-Jan-99): (with-current-buffer rmail-buffer
15681.107 (rms 04-Jan-99): (let ((rmail-delete-after-output nil))
15691.107 (rms 04-Jan-99): (rmail-output-to-rmail-file file-name 1)))
15701.107 (rms 04-Jan-99): (if rmail-delete-after-output
15711.107 (rms 04-Jan-99): (rmail-summary-delete-forward nil)
15721.107 (rms 04-Jan-99): (if (< i n)
15731.107 (rms 04-Jan-99): (rmail-summary-next-msg 1))))))
15741.107 (rms 04-Jan-99):
15751.107 (rms 04-Jan-99): (defun rmail-summary-output (&optional file-name n)
15761.107 (rms 04-Jan-99): "Append this message to Unix mail file named FILE-NAME.
15771.107 (rms 04-Jan-99):
15781.107 (rms 04-Jan-99): A prefix argument N says to output N consecutive messages
15791.107 (rms 04-Jan-99): starting with the current one. Deleted messages are skipped and don't count."
15801.107 (rms 04-Jan-99): (interactive
15811.107 (rms 04-Jan-99): (progn (require 'rmailout)
15821.107 (rms 04-Jan-99): (list (rmail-output-read-file-name)
15831.107 (rms 04-Jan-99): (prefix-numeric-value current-prefix-arg))))
15841.124 (rms 23-Feb-02): (let ((i 0) prev-msg)
15851.124 (rms 23-Feb-02): (while
15861.124 (rms 23-Feb-02): (and (< i n)
15871.124 (rms 23-Feb-02): (progn (rmail-summary-goto-msg)
15881.124 (rms 23-Feb-02): (not (eq prev-msg
15891.124 (rms 23-Feb-02): (setq prev-msg
15901.124 (rms 23-Feb-02): (with-current-buffer rmail-buffer
15911.124 (rms 23-Feb-02): rmail-current-message))))))
15921.107 (rms 04-Jan-99): (setq i (1+ i))
15931.107 (rms 04-Jan-99): (with-current-buffer rmail-buffer
15941.107 (rms 04-Jan-99): (let ((rmail-delete-after-output nil))
15951.107 (rms 04-Jan-99): (rmail-output file-name 1)))
15961.107 (rms 04-Jan-99): (if rmail-delete-after-output
15971.107 (rms 04-Jan-99): (rmail-summary-delete-forward nil)
15981.107 (rms 04-Jan-99): (if (< i n)
15991.107 (rms 04-Jan-99): (rmail-summary-next-msg 1))))))
16001.49 (rms 26-Aug-94):
16011.49 (rms 26-Aug-94): (defun rmail-summary-output-menu ()
16021.49 (rms 26-Aug-94): "Output current message to another Rmail file, chosen with a menu.
16031.49 (rms 26-Aug-94): Also set the default for subsequent \\[rmail-output-to-rmail-file] commands.
16041.49 (rms 26-Aug-94): The variables `rmail-secondary-file-directory' and
16051.49 (rms 26-Aug-94): `rmail-secondary-file-regexp' control which files are offered in the menu."
16061.49 (rms 26-Aug-94): (interactive)
16071.49 (rms 26-Aug-94): (save-excursion
16081.49 (rms 26-Aug-94): (set-buffer rmail-buffer)
16091.49 (rms 26-Aug-94): (let ((rmail-delete-after-output nil))
16101.49 (rms 26-Aug-94): (call-interactively 'rmail-output-menu)))
16111.24 (rms 08-Jan-94): (if rmail-delete-after-output
16121.25 (rms 08-Jan-94): (rmail-summary-delete-forward nil)))
16131.51 (rms 19-Sep-94):
16141.51 (rms 19-Sep-94): (defun rmail-summary-construct-io-menu ()
16151.51 (rms 19-Sep-94): (let ((files (rmail-find-all-files rmail-secondary-file-directory)))
16161.71 (rms 06-Sep-95): (if files
16171.51 (rms 19-Sep-94): (progn
16181.51 (rms 19-Sep-94): (define-key rmail-summary-mode-map [menu-bar classify input-menu]
16191.126 (lektu 04-Feb-03): (cons "Input Rmail File"
16201.126 (lektu 04-Feb-03): (rmail-list-to-menu "Input Rmail File"
16211.71 (rms 06-Sep-95): files
16221.51 (rms 19-Sep-94): 'rmail-summary-input)))
16231.51 (rms 19-Sep-94): (define-key rmail-summary-mode-map [menu-bar classify output-menu]
16241.126 (lektu 04-Feb-03): (cons "Output Rmail File"
16251.126 (lektu 04-Feb-03): (rmail-list-to-menu "Output Rmail File"
16261.71 (rms 06-Sep-95): files
16271.71 (rms 06-Sep-95): 'rmail-summary-output-to-rmail-file))))
16281.71 (rms 06-Sep-95): (define-key rmail-summary-mode-map [menu-bar classify input-menu]
16291.71 (rms 06-Sep-95): '("Input Rmail File" . rmail-disable-menu))
16301.71 (rms 06-Sep-95): (define-key rmail-summary-mode-map [menu-bar classify output-menu]
16311.71 (rms 06-Sep-95): '("Output Rmail File" . rmail-disable-menu)))))
16321.51 (rms 19-Sep-94):
16331.101 (rms 23-May-98): (defun rmail-summary-output-body (&optional file-name)
16341.101 (rms 23-May-98): "Write this message body to the file FILE-NAME.
16351.101 (rms 23-May-98): FILE-NAME defaults, interactively, from the Subject field of the message."
16361.101 (rms 23-May-98): (interactive)
16371.101 (rms 23-May-98): (save-excursion
16381.101 (rms 23-May-98): (set-buffer rmail-buffer)
16391.101 (rms 23-May-98): (let ((rmail-delete-after-output nil))
16401.101 (rms 23-May-98): (if file-name
16411.101 (rms 23-May-98): (rmail-output-body-to-file file-name)
16421.101 (rms 23-May-98): (call-interactively 'rmail-output-body-to-file))))
16431.101 (rms 23-May-98): (if rmail-delete-after-output
16441.101 (rms 23-May-98): (rmail-summary-delete-forward nil)))
16451.18 (rms 22-Jun-93):
16461.18 (rms 22-Jun-93): ;; Sorting messages in Rmail Summary buffer.
16471.18 (rms 22-Jun-93):
16481.18 (rms 22-Jun-93): (defun rmail-summary-sort-by-date (reverse)
16491.18 (rms 22-Jun-93): "Sort messages of current Rmail summary by date.
16501.18 (rms 22-Jun-93): If prefix argument REVERSE is non-nil, sort them in reverse order."
16511.18 (rms 22-Jun-93): (interactive "P")
16521.18 (rms 22-Jun-93): (rmail-sort-from-summary (function rmail-sort-by-date) reverse))
16531.18 (rms 22-Jun-93):
16541.18 (rms 22-Jun-93): (defun rmail-summary-sort-by-subject (reverse)
16551.18 (rms 22-Jun-93): "Sort messages of current Rmail summary by subject.
16561.18 (rms 22-Jun-93): If prefix argument REVERSE is non-nil, sort them in reverse order."
16571.18 (rms 22-Jun-93): (interactive "P")
16581.18 (rms 22-Jun-93): (rmail-sort-from-summary (function rmail-sort-by-subject) reverse))
16591.18 (rms 22-Jun-93):
16601.18 (rms 22-Jun-93): (defun rmail-summary-sort-by-author (reverse)
16611.18 (rms 22-Jun-93): "Sort messages of current Rmail summary by author.
16621.18 (rms 22-Jun-93): If prefix argument REVERSE is non-nil, sort them in reverse order."
16631.18 (rms 22-Jun-93): (interactive "P")
16641.18 (rms 22-Jun-93): (rmail-sort-from-summary (function rmail-sort-by-author) reverse))
16651.18 (rms 22-Jun-93):
16661.18 (rms 22-Jun-93): (defun rmail-summary-sort-by-recipient (reverse)
16671.18 (rms 22-Jun-93): "Sort messages of current Rmail summary by recipient.
16681.18 (rms 22-Jun-93): If prefix argument REVERSE is non-nil, sort them in reverse order."
16691.18 (rms 22-Jun-93): (interactive "P")
16701.18 (rms 22-Jun-93): (rmail-sort-from-summary (function rmail-sort-by-recipient) reverse))
16711.18 (rms 22-Jun-93):
16721.18 (rms 22-Jun-93): (defun rmail-summary-sort-by-correspondent (reverse)
16731.18 (rms 22-Jun-93): "Sort messages of current Rmail summary by other correspondent.
16741.18 (rms 22-Jun-93): If prefix argument REVERSE is non-nil, sort them in reverse order."
16751.18 (rms 22-Jun-93): (interactive "P")
16761.18 (rms 22-Jun-93): (rmail-sort-from-summary (function rmail-sort-by-correspondent) reverse))
16771.18 (rms 22-Jun-93):
16781.18 (rms 22-Jun-93): (defun rmail-summary-sort-by-lines (reverse)
16791.18 (rms 22-Jun-93): "Sort messages of current Rmail summary by lines of the message.
16801.18 (rms 22-Jun-93): If prefix argument REVERSE is non-nil, sort them in reverse order."
16811.18 (rms 22-Jun-93): (interactive "P")
16821.18 (rms 22-Jun-93): (rmail-sort-from-summary (function rmail-sort-by-lines) reverse))
16831.18 (rms 22-Jun-93):
16841.117 (gerd 07-May-01): (defun rmail-summary-sort-by-labels (reverse labels)
16851.117 (gerd 07-May-01): "Sort messages of current Rmail summary by labels.
16861.33 (kwzh 07-Apr-94): If prefix argument REVERSE is non-nil, sort them in reverse order.
16871.33 (kwzh 07-Apr-94): KEYWORDS is a comma-separated list of labels."
16881.33 (kwzh 07-Apr-94): (interactive "P\nsSort by labels: ")
16891.33 (kwzh 07-Apr-94): (rmail-sort-from-summary
16901.33 (kwzh 07-Apr-94): (function (lambda (reverse)
16911.117 (gerd 07-May-01): (rmail-sort-by-labels reverse labels)))
16921.33 (kwzh 07-Apr-94): reverse))
16931.33 (kwzh 07-Apr-94):
16941.18 (rms 22-Jun-93): (defun rmail-sort-from-summary (sortfun reverse)
16951.18 (rms 22-Jun-93): "Sort Rmail messages from Summary buffer and update it after sorting."
16961.18 (rms 22-Jun-93): (require 'rmailsort)
16971.30 (kwzh 30-Mar-94): (let ((selwin (selected-window)))
16981.30 (kwzh 30-Mar-94): (unwind-protect
16991.30 (kwzh 30-Mar-94): (progn (pop-to-buffer rmail-buffer)
17001.30 (kwzh 30-Mar-94): (funcall sortfun reverse))
17011.30 (kwzh 30-Mar-94): (select-window selwin))))
17021.2 (eric 30-May-92):
17031.113 (fx 25-May-00): (provide 'rmailsum)
17041.113 (fx 25-May-00):
17051.150 (monnier 10-Apr-08): ;; arch-tag: 556079ee-75c1-47f5-9884-2e0a0bc6c5a1
17061.2 (eric 30-May-92): ;;; rmailsum.el ends here
diff --git a/lisp/mail/subdirs.el b/lisp/mail/subdirs.el
deleted file mode 100644
index 79a738c93d1..00000000000
--- a/lisp/mail/subdirs.el
+++ /dev/null
@@ -1,8 +0,0 @@
1;; -*- no-byte-compile: t -*-
2;; In load-path, after this directory should come
3;; certain of its subdirectories. Here we specify them.
4(normal-top-level-add-to-load-path '("mbox-trunk-annotations" "mbox-changes" ))
5;; Local Variables:
6;; version-control: never
7;; no-byte-compile: t
8;; End: