Mercurial > emacs
annotate lisp/mail/unrmail.el @ 40596:6187d3d3a28a
*** empty log message ***
author | Miles Bader <miles@gnu.org> |
---|---|
date | Thu, 01 Nov 2001 07:00:07 +0000 |
parents | 01c7199c0ee7 |
children | 433ae412d00f |
rev | line source |
---|---|
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
18383
diff
changeset
|
1 ;;; unrmail.el --- convert Rmail files to mailbox files |
2233
fb0ed5a1d0f3
Add standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
982
diff
changeset
|
2 |
982 | 3 ;;; Copyright (C) 1992 Free Software Foundation, Inc. |
4 | |
38695 | 5 ;; Maintainer: FSF |
2247
2c7997f249eb
Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2233
diff
changeset
|
6 ;; Keywords: mail |
2c7997f249eb
Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
2233
diff
changeset
|
7 |
982 | 8 ;; This file is part of GNU Emacs. |
9 | |
10 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
11 ;; it under the terms of the GNU General Public License as published by | |
12 ;; the Free Software Foundation; either version 2, or (at your option) | |
13 ;; any later version. | |
14 | |
15 ;; GNU Emacs is distributed in the hope that it will be useful, | |
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
18 ;; GNU General Public License for more details. | |
19 | |
20 ;; You should have received a copy of the GNU General Public License | |
14169 | 21 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
22 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
23 ;; Boston, MA 02111-1307, USA. | |
982 | 24 |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
18383
diff
changeset
|
25 ;;; Commentary: |
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
18383
diff
changeset
|
26 |
2233
fb0ed5a1d0f3
Add standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
982
diff
changeset
|
27 ;;; Code: |
fb0ed5a1d0f3
Add standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
982
diff
changeset
|
28 |
982 | 29 (defvar command-line-args-left) ;Avoid 'free variable' warning |
30 | |
31 ;;;###autoload | |
32 (defun batch-unrmail () | |
6618 | 33 "Convert Rmail files to system inbox format. |
982 | 34 Specify the input Rmail file names as command line arguments. |
35 For each Rmail file, the corresponding output file name | |
36 is made by adding `.mail' at the end. | |
37 For example, invoke `emacs -batch -f batch-unrmail RMAIL'." | |
38 ;; command-line-args-left is what is left of the command line (from startup.el) | |
39 (if (not noninteractive) | |
40 (error "`batch-unrmail' is to be used only with -batch")) | |
41 (let ((error nil)) | |
42 (while command-line-args-left | |
43 (or (unrmail (car command-line-args-left) | |
44 (concat (car command-line-args-left) ".mail")) | |
45 (setq error t)) | |
46 (setq command-line-args-left (cdr command-line-args-left))) | |
47 (message "Done") | |
48 (kill-emacs (if error 1 0)))) | |
49 | |
50 ;;;###autoload | |
51 (defun unrmail (file to-file) | |
6618 | 52 "Convert Rmail file FILE to system inbox format file TO-FILE." |
4266
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
53 (interactive "fUnrmail (rmail file): \nFUnrmail into (new mailbox file): ") |
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
54 (let ((message-count 0) |
11177
6a26526998f6
(unrmail): Don't make or switch to a summary buffer.
Richard M. Stallman <rms@gnu.org>
parents:
6618
diff
changeset
|
55 ;; Prevent rmail from making, or switching to, a summary buffer. |
6a26526998f6
(unrmail): Don't make or switch to a summary buffer.
Richard M. Stallman <rms@gnu.org>
parents:
6618
diff
changeset
|
56 (rmail-display-summary nil) |
4266
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
57 (rmail-delete-after-output nil)) |
982 | 58 (rmail file) |
14296
e3e1d7c2e7e5
(unrmail): Default the directory of TO-FILE based on FILE.
Karl Heuer <kwzh@gnu.org>
parents:
14169
diff
changeset
|
59 ;; Default the directory of TO-FILE based on where FILE is. |
e3e1d7c2e7e5
(unrmail): Default the directory of TO-FILE based on FILE.
Karl Heuer <kwzh@gnu.org>
parents:
14169
diff
changeset
|
60 (setq to-file (expand-file-name to-file default-directory)) |
4266
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
61 (message "Writing messages to %s..." to-file) |
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
62 (while (< message-count rmail-total-messages) |
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
63 (rmail-show-message |
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
64 (setq message-count (1+ message-count))) |
13113
ece0744c0bb0
(unrmail): Call rmail-toggle-header.
Richard M. Stallman <rms@gnu.org>
parents:
11177
diff
changeset
|
65 (rmail-toggle-header) |
4266
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
66 (rmail-output to-file 1 t)) |
5a7266ff9af1
(unrmail): Total rewrite.
Richard M. Stallman <rms@gnu.org>
parents:
2247
diff
changeset
|
67 (message "Writing messages to %s...done" to-file))) |
2233
fb0ed5a1d0f3
Add standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
982
diff
changeset
|
68 |
18383 | 69 (provide 'unrmail) |
70 | |
2233
fb0ed5a1d0f3
Add standard library headers.
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
982
diff
changeset
|
71 ;;; unrmail.el ends here |