Mercurial > emacs
annotate lisp/mail/mh-funcs.el @ 49376:ed922baa8df3
(decode-coding-region-as-inserted-from-file): New function.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Wed, 22 Jan 2003 02:33:07 +0000 |
parents | 30c4902b654d |
children |
rev | line source |
---|---|
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
1 ;;; mh-funcs.el --- MH-E functions not everyone will use right away |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
2 |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
3 ;; Copyright (C) 1993, 1995, 2001, 2002 Free Software Foundation, Inc. |
6365 | 4 |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
5 ;; Author: Bill Wohler <wohler@newt.com> |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
6 ;; Maintainer: Bill Wohler <wohler@newt.com> |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
7 ;; Keywords: mail |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
8 ;; See: mh-e.el |
6365 | 9 |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
14169
diff
changeset
|
10 ;; This file is part of GNU Emacs. |
6365 | 11 |
11333 | 12 ;; GNU Emacs is free software; you can redistribute it and/or modify |
6365 | 13 ;; it under the terms of the GNU General Public License as published by |
14 ;; the Free Software Foundation; either version 2, or (at your option) | |
15 ;; any later version. | |
16 | |
11333 | 17 ;; GNU Emacs is distributed in the hope that it will be useful, |
6365 | 18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of |
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
20 ;; GNU General Public License for more details. | |
21 | |
22 ;; You should have received a copy of the GNU General Public License | |
14169 | 23 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
24 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
25 ;; Boston, MA 02111-1307, USA. | |
6365 | 26 |
27 ;;; Commentary: | |
28 | |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
29 ;; Internal support for MH-E package. |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
30 ;; Putting these functions in a separate file lets MH-E start up faster, |
14169 | 31 ;; since less Lisp code needs to be loaded all at once. |
6365 | 32 |
11332 | 33 ;;; Change Log: |
34 | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
35 ;; $Id: mh-funcs.el,v 1.36 2002/12/23 05:52:07 satyaki Exp $ |
11332 | 36 |
6365 | 37 ;;; Code: |
38 | |
39 (require 'mh-e) | |
40 | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
41 ;;; Customization |
11332 | 42 |
6365 | 43 (defvar mh-sortm-args nil |
44 "Extra arguments to have \\[mh-sort-folder] pass to the \"sortm\" command. | |
11332 | 45 The arguments are passed to sortm if \\[mh-sort-folder] is given a |
46 prefix argument. Normally default arguments to sortm are specified in the | |
47 MH profile. | |
6365 | 48 For example, '(\"-nolimit\" \"-textfield\" \"subject\") is a useful setting.") |
49 | |
11332 | 50 (defvar mh-note-copied "C" |
51 "String whose first character is used to notate copied messages.") | |
52 | |
53 (defvar mh-note-printed "P" | |
54 "String whose first character is used to notate printed messages.") | |
55 | |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
56 ;;; Functions |
11332 | 57 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
58 ;;;###mh-autoload |
6365 | 59 (defun mh-burst-digest () |
60 "Burst apart the current message, which should be a digest. | |
11332 | 61 The message is replaced by its table of contents and the messages from the |
6365 | 62 digest are inserted into the folder after that message." |
63 (interactive) | |
64 (let ((digest (mh-get-msg-num t))) | |
65 (mh-process-or-undo-commands mh-current-folder) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
66 (mh-set-folder-modified-p t) ; lock folder while bursting |
6365 | 67 (message "Bursting digest...") |
68 (mh-exec-cmd "burst" mh-current-folder digest "-inplace") | |
11332 | 69 (with-mh-folder-updating (t) |
70 (beginning-of-line) | |
71 (delete-region (point) (point-max))) | |
72 (mh-regenerate-headers (format "%d-last" digest) t) | |
73 (mh-goto-cur-msg) | |
6365 | 74 (message "Bursting digest...done"))) |
75 | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
76 ;;;###mh-autoload |
11332 | 77 (defun mh-copy-msg (msg-or-seq folder) |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
78 "Copy the specified MSG-OR-SEQ to another FOLDER without deleting them. |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
79 Default is the displayed message. If optional prefix argument is provided, |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
80 then prompt for the message sequence." |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
81 (interactive (list (cond |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
82 ((mh-mark-active-p t) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
83 (mh-region-to-msg-list (region-beginning) (region-end))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
84 (current-prefix-arg |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
85 (mh-read-seq-default "Copy" t)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
86 (t |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
87 (mh-get-msg-num t))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
88 (mh-prompt-for-folder "Copy to" "" t))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
89 (mh-exec-cmd "refile" |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
90 (cond ((numberp msg-or-seq) msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
91 ((listp msg-or-seq) msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
92 (t (mh-coalesce-msg-list (mh-seq-to-msgs msg-or-seq)))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
93 "-link" "-src" mh-current-folder folder) |
6365 | 94 (if (numberp msg-or-seq) |
11332 | 95 (mh-notate msg-or-seq mh-note-copied mh-cmd-note) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
96 (mh-notate-seq msg-or-seq mh-note-copied mh-cmd-note))) |
6365 | 97 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
98 ;;;###mh-autoload |
6365 | 99 (defun mh-kill-folder () |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
100 "Remove the current folder and all included messages. |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
101 Removes all of the messages (files) within the specified current folder, |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
102 and then removes the folder (directory) itself. |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
103 The value of `mh-folder-list-change-hook' is a list of functions to be called, |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
104 with no arguments, after the folders has been removed." |
6365 | 105 (interactive) |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
106 (if (yes-or-no-p (format "Remove folder %s (and all included messages)?" |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
107 mh-current-folder)) |
6365 | 108 (let ((folder mh-current-folder)) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
109 (if (null mh-folder-list) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
110 (mh-set-folder-list)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
111 (mh-set-folder-modified-p t) ; lock folder to kill it |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
112 (mh-exec-cmd-daemon "rmf" folder) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
113 (setq mh-folder-list |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
114 (delq (assoc folder mh-folder-list) mh-folder-list)) |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
115 (when (boundp 'mh-speed-folder-map) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
116 (mh-speed-invalidate-map folder)) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
117 (run-hooks 'mh-folder-list-change-hook) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
118 (message "Folder %s removed" folder) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
119 (mh-set-folder-modified-p nil) ; so kill-buffer doesn't complain |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
120 (if (get-buffer mh-show-buffer) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
121 (kill-buffer mh-show-buffer)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
122 (if (get-buffer folder) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
123 (kill-buffer folder))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
124 (message "Folder not removed"))) |
6365 | 125 |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
126 ;; Avoid compiler warning... |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
127 (defvar view-exit-action) |
6365 | 128 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
129 ;;;###mh-autoload |
6365 | 130 (defun mh-list-folders () |
131 "List mail folders." | |
132 (interactive) | |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
133 (let ((temp-buffer mh-temp-folders-buffer)) |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
134 (with-output-to-temp-buffer temp-buffer |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
135 (save-excursion |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
136 (set-buffer temp-buffer) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
137 (erase-buffer) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
138 (message "Listing folders...") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
139 (mh-exec-cmd-output "folders" t (if mh-recursive-folders-flag |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
140 "-recurse" |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
141 "-norecurse")) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
142 (goto-char (point-min)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
143 (view-mode 1) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
144 (setq view-exit-action 'kill-buffer) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
145 (message "Listing folders...done"))))) |
6365 | 146 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
147 ;;;###mh-autoload |
6365 | 148 (defun mh-pack-folder (range) |
149 "Renumber the messages of a folder to be 1..n. | |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
150 First, offer to execute any outstanding commands for the current folder. If |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
151 optional prefix argument provided, prompt for the RANGE of messages to display |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
152 after packing. Otherwise, show the entire folder." |
6365 | 153 (interactive (list (if current-prefix-arg |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
154 (mh-read-msg-range mh-current-folder t) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
155 '("all")))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
156 (let ((threaded-flag (memq 'unthread mh-view-ops))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
157 (mh-pack-folder-1 range) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
158 (mh-goto-cur-msg) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
159 (when mh-index-data |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
160 (mh-index-update-maps mh-current-folder)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
161 (cond (threaded-flag (mh-toggle-threads)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
162 (mh-index-data (mh-index-insert-folder-headers)))) |
6365 | 163 (message "Packing folder...done")) |
164 | |
165 (defun mh-pack-folder-1 (range) | |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
166 "Close and pack the current folder. |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
167 Display the given RANGE of messages after packing. If RANGE is nil, show the |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
168 entire folder." |
6365 | 169 (mh-process-or-undo-commands mh-current-folder) |
170 (message "Packing folder...") | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
171 (mh-set-folder-modified-p t) ; lock folder while packing |
6365 | 172 (save-excursion |
11332 | 173 (mh-exec-cmd-quiet t "folder" mh-current-folder "-pack" |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
174 "-norecurse" "-fast")) |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
175 (mh-reset-threads-and-narrowing) |
6365 | 176 (mh-regenerate-headers range)) |
177 | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
178 ;;;###mh-autoload |
6365 | 179 (defun mh-pipe-msg (command include-headers) |
180 "Pipe the current message through the given shell COMMAND. | |
181 If INCLUDE-HEADERS (prefix argument) is provided, send the entire message. | |
182 Otherwise just send the message's body without the headers." | |
183 (interactive | |
184 (list (read-string "Shell command on message: ") current-prefix-arg)) | |
11332 | 185 (let ((msg-file-to-pipe (mh-msg-filename (mh-get-msg-num t))) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
186 (message-directory default-directory)) |
6365 | 187 (save-excursion |
11332 | 188 (set-buffer (get-buffer-create mh-temp-buffer)) |
6365 | 189 (erase-buffer) |
11332 | 190 (insert-file-contents msg-file-to-pipe) |
6365 | 191 (goto-char (point-min)) |
192 (if (not include-headers) (search-forward "\n\n")) | |
11332 | 193 (let ((default-directory message-directory)) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
194 (shell-command-on-region (point) (point-max) command nil))))) |
6365 | 195 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
196 ;;;###mh-autoload |
6365 | 197 (defun mh-page-digest () |
198 "Advance displayed message to next digested message." | |
199 (interactive) | |
200 (mh-in-show-buffer (mh-show-buffer) | |
201 ;; Go to top of screen (in case user moved point). | |
202 (move-to-window-line 0) | |
203 (let ((case-fold-search nil)) | |
204 ;; Search for blank line and then for From: | |
205 (or (and (search-forward "\n\n" nil t) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
206 (re-search-forward "^From:" nil t)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
207 (error "No more messages in digest"))) |
6365 | 208 ;; Go back to previous blank line, then forward to the first non-blank. |
209 (search-backward "\n\n" nil t) | |
210 (forward-line 2) | |
211 (mh-recenter 0))) | |
212 | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
213 ;;;###mh-autoload |
6365 | 214 (defun mh-page-digest-backwards () |
215 "Back up displayed message to previous digested message." | |
216 (interactive) | |
217 (mh-in-show-buffer (mh-show-buffer) | |
218 ;; Go to top of screen (in case user moved point). | |
219 (move-to-window-line 0) | |
220 (let ((case-fold-search nil)) | |
221 (beginning-of-line) | |
222 (or (and (search-backward "\n\n" nil t) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
223 (re-search-backward "^From:" nil t)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
224 (error "No previous message in digest"))) |
6365 | 225 ;; Go back to previous blank line, then forward to the first non-blank. |
226 (if (search-backward "\n\n" nil t) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
227 (forward-line 2)) |
6365 | 228 (mh-recenter 0))) |
229 | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
230 ;;;###mh-autoload |
6365 | 231 (defun mh-print-msg (msg-or-seq) |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
232 "Print MSG-OR-SEQ (default: displayed message) on printer. |
6365 | 233 If optional prefix argument provided, then prompt for the message sequence. |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
234 The variable `mh-lpr-command-format' is used to generate the print command. |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
235 The messages are formatted by mhl. See the variable `mhl-formfile'." |
6365 | 236 (interactive (list (if current-prefix-arg |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
237 (reverse (mh-seq-to-msgs |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
238 (mh-read-seq-default "Print" t))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
239 (mh-get-msg-num t)))) |
6365 | 240 (if (numberp msg-or-seq) |
241 (message "Printing message...") | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
242 (message "Printing sequence...")) |
6365 | 243 (let ((print-command |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
244 (if (numberp msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
245 (format "%s -nobell -clear %s %s | %s" |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
246 (expand-file-name "mhl" mh-lib-progs) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
247 (mh-msg-filename msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
248 (if (stringp mhl-formfile) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
249 (format "-form %s" mhl-formfile) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
250 "") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
251 (format mh-lpr-command-format |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
252 (if (numberp msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
253 (format "%s/%d" mh-current-folder |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
254 msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
255 (format "Sequence from %s" mh-current-folder)))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
256 (format "(scan -clear %s ; %s -nobell -clear %s %s) | %s" |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
257 (mapconcat (function (lambda (msg) msg)) msg-or-seq " ") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
258 (expand-file-name "mhl" mh-lib-progs) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
259 (if (stringp mhl-formfile) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
260 (format "-form %s" mhl-formfile) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
261 "") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
262 (mh-msg-filenames msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
263 (format mh-lpr-command-format |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
264 (if (numberp msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
265 (format "%s/%d" mh-current-folder |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
266 msg-or-seq) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
267 (format "Sequence from %s" |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
268 mh-current-folder))))))) |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
269 (if mh-print-background-flag |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
270 (mh-exec-cmd-daemon shell-file-name "-c" print-command) |
6365 | 271 (call-process shell-file-name nil nil nil "-c" print-command)) |
272 (if (numberp msg-or-seq) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
273 (mh-notate msg-or-seq mh-note-printed mh-cmd-note) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
274 (mh-notate-seq msg-or-seq mh-note-printed mh-cmd-note)) |
6365 | 275 (mh-add-msgs-to-seq msg-or-seq 'printed t) |
276 (if (numberp msg-or-seq) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
277 (message "Printing message...done") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
278 (message "Printing sequence...done")))) |
6365 | 279 |
280 (defun mh-msg-filenames (msgs &optional folder) | |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
281 "Return a list of file names for MSGS in FOLDER (default current folder)." |
6365 | 282 (mapconcat (function (lambda (msg) (mh-msg-filename msg folder))) msgs " ")) |
283 | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
284 ;;;###mh-autoload |
11332 | 285 (defun mh-sort-folder (&optional extra-args) |
6365 | 286 "Sort the messages in the current folder by date. |
287 Calls the MH program sortm to do the work. | |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
288 The arguments in the list `mh-sortm-args' are passed to sortm if the optional |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
289 argument EXTRA-ARGS is given." |
6365 | 290 (interactive "P") |
291 (mh-process-or-undo-commands mh-current-folder) | |
292 (setq mh-next-direction 'forward) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
293 (mh-set-folder-modified-p t) ; lock folder while sorting |
6365 | 294 (message "Sorting folder...") |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
295 (let ((threaded-flag (memq 'unthread mh-view-ops))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
296 (mh-exec-cmd "sortm" mh-current-folder (if extra-args mh-sortm-args)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
297 (when mh-index-data |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
298 (mh-index-update-maps mh-current-folder)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
299 (message "Sorting folder...done") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
300 (mh-reset-threads-and-narrowing) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
301 (mh-scan-folder mh-current-folder "all") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
302 (cond (threaded-flag (mh-toggle-threads)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
303 (mh-index-data (mh-index-insert-folder-headers))))) |
6365 | 304 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
305 ;;;###mh-autoload |
6365 | 306 (defun mh-undo-folder (&rest ignore) |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
307 "Undo all pending deletes and refiles in current folder. |
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
308 Argument IGNORE is deprecated." |
6365 | 309 (interactive) |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
310 (cond ((or mh-do-not-confirm-flag |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
311 (yes-or-no-p "Undo all commands in folder? ")) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
312 (setq mh-delete-list nil |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
313 mh-refile-list nil |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
314 mh-seq-list nil |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
315 mh-next-direction 'forward) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
316 (with-mh-folder-updating (nil) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
317 (mh-unmark-all-headers t))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
318 (t |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
319 (message "Commands not undone.") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
320 (sit-for 2)))) |
6365 | 321 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
322 ;;;###mh-autoload |
11332 | 323 (defun mh-store-msg (directory) |
6365 | 324 "Store the file(s) contained in the current message into DIRECTORY. |
325 The message can contain a shar file or uuencoded file. | |
326 Default directory is the last directory used, or initially the value of | |
47730
2568d5a27317
Upgraded to mh-e version 6.1.1.
Bill Wohler <wohler@newt.com>
parents:
38414
diff
changeset
|
327 `mh-store-default-directory' or the current directory." |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
328 (interactive (list (let ((udir (or mh-store-default-directory |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
329 default-directory))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
330 (read-file-name "Store message in directory: " |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
331 udir udir nil)))) |
11332 | 332 (let ((msg-file-to-store (mh-msg-filename (mh-get-msg-num t)))) |
6365 | 333 (save-excursion |
11332 | 334 (set-buffer (get-buffer-create mh-temp-buffer)) |
6365 | 335 (erase-buffer) |
11332 | 336 (insert-file-contents msg-file-to-store) |
337 (mh-store-buffer directory)))) | |
6365 | 338 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
339 ;;;###mh-autoload |
11332 | 340 (defun mh-store-buffer (directory) |
6365 | 341 "Store the file(s) contained in the current buffer into DIRECTORY. |
342 The buffer can contain a shar file or uuencoded file. | |
343 Default directory is the last directory used, or initially the value of | |
344 `mh-store-default-directory' or the current directory." | |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
345 (interactive (list (let ((udir (or mh-store-default-directory |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
346 default-directory))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
347 (read-file-name "Store buffer in directory: " |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
348 udir udir nil)))) |
11332 | 349 (let ((store-directory (expand-file-name directory)) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
350 (sh-start (save-excursion |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
351 (goto-char (point-min)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
352 (if (re-search-forward |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
353 "^#![ \t]*/bin/sh\\|^#\\|^: " nil t) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
354 (progn |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
355 ;; The "cut here" pattern was removed from above |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
356 ;; because it seemed to hurt more than help. |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
357 ;; But keep this to make it easier to put it back. |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
358 (if (looking-at "^[^a-z0-9\"]*cut here\\b") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
359 (forward-line 1)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
360 (beginning-of-line) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
361 (if (looking-at "^[#:]....+\n\\( ?\n\\)?end$") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
362 nil ;most likely end of a uuencode |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
363 (point)))))) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
364 (log-buffer (get-buffer-create "*Store Output*")) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
365 (command "sh") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
366 (uudecode-filename "(unknown filename)")) |
11332 | 367 (if (not sh-start) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
368 (save-excursion |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
369 (goto-char (point-min)) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
370 (if (re-search-forward "^begin [0-7]+ " nil t) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
371 (setq uudecode-filename |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
372 (buffer-substring (point) |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
373 (progn (end-of-line) (point))))))) |
6365 | 374 (save-excursion |
375 (set-buffer log-buffer) | |
376 (erase-buffer) | |
377 (if (not (file-directory-p store-directory)) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
378 (progn |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
379 (insert "mkdir " directory "\n") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
380 (call-process "mkdir" nil log-buffer t store-directory))) |
11332 | 381 (insert "cd " directory "\n") |
382 (setq mh-store-default-directory directory) | |
383 (if (not sh-start) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
384 (progn |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
385 (setq command "uudecode") |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
386 (insert uudecode-filename " being uudecoded...\n")))) |
6365 | 387 (set-window-start (display-buffer log-buffer) 0) ;watch progress |
11332 | 388 (let (value) |
389 (let ((default-directory (file-name-as-directory store-directory))) | |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
390 (setq value (call-process-region sh-start (point-max) command |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
391 nil log-buffer t))) |
11332 | 392 (set-buffer log-buffer) |
393 (mh-handle-process-error command value)) | |
6365 | 394 (insert "\n(mh-store finished)\n"))) |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
395 |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
396 |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
397 |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
398 ;;; Help Functions |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
399 |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
400 (defun mh-ephem-message (string) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
401 "Display STRING in the minibuffer momentarily." |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
402 (message "%s" string) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
403 (sit-for 5) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
404 (message "")) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
405 |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
406 ;;;###mh-autoload |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
407 (defun mh-help () |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
408 "Display cheat sheet for the MH-Folder commands in minibuffer." |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
409 (interactive) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
410 (mh-ephem-message |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
411 (substitute-command-keys |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
412 (mapconcat 'identity (cdr (assoc nil mh-help-messages)) "")))) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
413 |
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
414 ;;;###mh-autoload |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
415 (defun mh-prefix-help () |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
416 "Display cheat sheet for the commands of the current prefix in minibuffer." |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
417 (interactive) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
418 ;; We got here because the user pressed a `?', but he pressed a prefix key |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
419 ;; before that. Since the the key vector starts at index 0, the index of the |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
420 ;; last keystroke is length-1 and thus the second to last keystroke is at |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
421 ;; length-2. We use that information to obtain a suitable prefix character |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
422 ;; from the recent keys. |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
423 (let* ((keys (recent-keys)) |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
424 (prefix-char (elt keys (- (length keys) 2)))) |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
425 (mh-ephem-message |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
426 (substitute-command-keys |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
427 (mapconcat 'identity (cdr (assoc prefix-char mh-help-messages)) ""))))) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
428 |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
429 (provide 'mh-funcs) |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
430 |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
431 ;;; Local Variables: |
49120
30c4902b654d
Upgraded to MH-E version 7.1.
Bill Wohler <wohler@newt.com>
parents:
48595
diff
changeset
|
432 ;;; indent-tabs-mode: nil |
48595
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
433 ;;; sentence-end-double-space: nil |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
434 ;;; End: |
8aaba207e44b
Upgraded to MH-E version 7.0.
Bill Wohler <wohler@newt.com>
parents:
47730
diff
changeset
|
435 |
38414
67b464da13ec
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
14169
diff
changeset
|
436 ;;; mh-funcs.el ends here |