|
|
1.1 ! root 1: ; This autoloaded file implements the "m" command of mhe. We call "comp" to ! 2: ; compose the message into buffer "draft", and then when we are ready to ! 3: ; send it we call "send" to do the evil deed. ! 4: (defun ! 5: (&mh-send actn exfl sm ! 6: (save-window-excursion ! 7: (&mh-save-killbuffer) ! 8: (message "Composing a message...") (sit-for 0) ! 9: (error-occured ! 10: (unlink-file (concat mh-path "/draft"))) ! 11: (pop-to-buffer (concat "+" mh-folder)) ! 12: (setq sm mode-line-format) ! 13: (delete-other-windows) ! 14: (pop-to-buffer "draft") (erase-buffer) ! 15: (if (file-exists ! 16: (concat mh-path "/components")) ! 17: (insert-file (concat mh-path "/components")) ! 18: (insert-file (concat mh-progs "/components")) ! 19: ) ! 20: (write-named-file (concat mh-path "/draft")) ! 21: (local-bind-to-key "exit-emacs" "\\") ! 22: (mail-mode) (header-line-position) ! 23: (sit-for 0) (setq exfl 0) ! 24: (while (= exfl 0) ! 25: (error-occured ! 26: (save-window-excursion ! 27: (pop-to-buffer (concat "+" mh-folder)) ! 28: (setq mode-line-format ! 29: "{%b} ^X^C exits to top level %M") ! 30: (pop-to-buffer "draft") ! 31: (setq mode-line-format ! 32: (concat "{%b} %[%p of " ! 33: mh-path "/draft%] " ! 34: "(^X^C to exit) %M")) ! 35: (&mh-restore-killbuffer) ! 36: (recursive-edit) ! 37: (&mh-save-killbuffer) ! 38: (setq mode-line-format ! 39: (concat "{%b} %[%p of " ! 40: mh-path "/draft%] %M")) ! 41: (pop-to-buffer (concat "+" mh-folder)) ! 42: (setq mode-line-format " ") ! 43: ) ! 44: ) ! 45: (setq actn (get-response "Ready to send. Action? (m, q, e, or ?) " "mMqQeE\" ! 46: "m: mail it, q: quit, e: resume editing, ?: this msg.")) ! 47: (if (= actn 'm') ! 48: (progn (message "Sending...") (sit-for 0) ! 49: (write-current-file) ! 50: (setq buffer-is-modified 0) ! 51: (send-to-shell ! 52: (concat mh-progs "/send -noverbose " ! 53: mh-path "/draft" ! 54: )) ! 55: (setq exfl 1) ! 56: ) ! 57: (= actn 'q') ! 58: (progn ! 59: (&mh-restore-killbuffer) ! 60: (pop-to-buffer (concat "+" mh-folder)) ! 61: (delete-other-windows) ! 62: (setq mode-line-format sm) ! 63: (error-message "Message not sent; its text remains in buffer 'draft'") ! 64: ) ! 65: ) ! 66: ) ! 67: ) ! 68: (&mh-restore-killbuffer) ! 69: (pop-to-buffer (concat "+" mh-folder)) (delete-other-windows) ! 70: (setq mode-line-format sm) ! 71: (pop-to-buffer "draft") (previous-window) ! 72: ) ! 73: )
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.