comparison miscellany/mhe/mh-exit.ml @ 0:bce86c4163a3

Initial revision
author kono
date Mon, 18 Apr 2005 23:46:02 +0900
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:bce86c4163a3
1 ; This file implements the autoloaded "exit" function (not a command) of mhe.
2 (defun
3 (&mh-exit ans retval
4 (temp-use-buffer "cmd-buffer")
5 (setq retval 0)
6 (setq ans (get-response "Preparing to exit. Action? [q, e, u, ?] "
7 "qQeEuU\"
8 "q: quit (don't process) e: exit (after processing) u: undo (don't exit)"))
9 (if (| (= ans 'q') (= ans '\'))
10 (progn
11 (temp-use-buffer "cmd-buffer") (setq ans 'y')
12 (if (> (buffer-size) 0)
13 (setq ans
14 (get-response "Really exit without processing? "
15 "yYnN\" "y for Yes or n for No")))
16 (if (| (= ans 'y') (= ans '\'))
17 (progn
18 (pop-to-buffer (concat "+" mh-folder))
19 (erase-buffer)
20 (setq retval 1)
21 )
22 )
23 )
24 (= ans 'e')
25 (progn
26 (temp-use-buffer "cmd-buffer")
27 (if (!= 0 (buffer-size))
28 (progn
29 (temp-use-buffer "cmd-buffer")
30 (message "Processing deletes and moves...")
31 (beginning-of-file)
32 (split-long-lines)
33 (beginning-of-file) (set-mark) (end-of-file)
34 (progn s
35 (setq s (region-to-string))
36 (send-to-shell s)
37 (setq buffer-is-modified 0)
38 (temp-use-buffer (concat "+" mh-folder))
39 (&mh-make-headers-current)
40 (setq buffer-is-modified 0)
41 (setq retval 1)
42 )
43 )
44 (setq retval 1)
45 )
46 )
47 )
48 (sit-for 10)
49 retval
50 )
51
52 (split-long-lines t s ; make sure no overlong lines in cmd-buffer
53 (beginning-of-file)
54 (while (! (eobp))
55 (next-line)
56 (while
57 (progn (beginning-of-line)
58 (setq t (dot)) (end-of-line) (> (dot) (+ t 200)))
59 (beginning-of-line) (set-mark)
60 (if (looking-at "rmm")
61 (progn (forward-word) (forward-word) (forward-word)
62 (backward-word))
63 (looking-at "filem")
64 (progn (forward-word) (forward-word)
65 (forward-word) (forward-word)
66 (forward-word) (backward-word))
67 )
68 (setq s (region-to-string)) (beginning-of-line)
69 (goto-character (+ (dot) 200)) (backward-word)
70 (delete-previous-character) (newline)
71 (insert-string s)
72 )
73 )
74 (setq buffer-is-modified 0)
75 )
76 )