Annotation of 43BSDReno/contrib/mh/miscellany/mhe/mh-repl.ml, revision 1.1

1.1     ! root        1: ;  This autoloaded file implements the "r" command of mhe
        !             2: (defun     
        !             3:     (&mh-repl actn exfl sm fn annotate ft
        !             4:        (save-window-excursion 
        !             5:            (error-occured
        !             6:                (&mh-save-killbuffer)
        !             7:                (temp-use-buffer (concat "+" mh-folder))
        !             8:                (setq fn (&mh-get-fname))
        !             9:                (setq annotate mh-annotate)
        !            10:                (setq ft mh-folder-title)
        !            11:                (temp-use-buffer "message")
        !            12:                (setq mode-string "mhe")
        !            13:                (setq sm mode-line-format)
        !            14:                (message  "Replying to message " (&mh-get-msgnum) "...")
        !            15:                (sit-for 0)
        !            16:                (pop-to-buffer "message")
        !            17:                (if (error-occured (read-file fn))
        !            18:                    (error-message "Message " fn " does not exist!"))
        !            19:                (pop-to-buffer "reply") (erase-buffer)
        !            20:                (insert-string "One moment, please....")
        !            21:                (unlink-file (concat mh-path "/reply"))
        !            22:                (error-occured 
        !            23:                    (send-to-shell 
        !            24:                        (concat mh-progs "/repl -build +" ft " "
        !            25:                                (&mh-get-msgnum))
        !            26:                    ))
        !            27:                (show-shell-errors)
        !            28:            )
        !            29:            (if (file-exists (concat mh-path "/reply"))
        !            30:                (read-file (concat mh-path "/reply"))
        !            31:                (error-message "Reply failed: cannot construct header"
        !            32:                    " (file " mh-path "/reply)")
        !            33:            )
        !            34:            (pop-to-buffer "reply")
        !            35:            (local-bind-to-key "exit-emacs" "\\")
        !            36:            (mail-mode) (end-of-file)
        !            37:            (setq exfl 0)
        !            38:            (while (= exfl 0)
        !            39:                   (error-occured
        !            40:                           (pop-to-buffer "message")
        !            41:                           (setq mode-line-format
        !            42:                                 "{%b}          %[^X^C exits to top level%]          %M")
        !            43:                           (pop-to-buffer "reply")
        !            44:                           (setq mode-line-format
        !            45:                                 (concat "{%b}"
        !            46:                                         "%[%p of " mh-path "/reply"
        !            47:                                         "%]    (^X^C exits to top level)     %M"))
        !            48:                           (&mh-restore-killbuffer)
        !            49:                           (recursive-edit)
        !            50:                           (setq mode-line-format
        !            51:                                 (concat "%[%p of " mh-path "/reply%]           %M"))
        !            52:                           (pop-to-buffer "message")
        !            53:                           (setq mode-line-format sm)
        !            54:                           (sit-for 0)
        !            55:                   )
        !            56:                   (setq actn (get-response "Ready to send. Action? (m, q, e, or ?) " "mMqQeE\" 
        !            57:                                  "m: mail it, q: quit, e: resume editing, ?: this msg."))
        !            58:                   (if (= actn 'm')
        !            59:                       (progn (message "Sending...") (sit-for 0)
        !            60:                              (pop-to-buffer "reply")
        !            61:                              (write-current-file)
        !            62:                              (send-to-shell 
        !            63:                                  (concat mh-progs "/send -noverbose "
        !            64:                                          mh-path "/reply"
        !            65:                                  ))
        !            66:                              (pop-to-buffer "message")
        !            67:                              (if annotate
        !            68:                                  (annotate "Replied")
        !            69:                              )
        !            70:                              (setq exfl 1))
        !            71:                       (= actn 'q')
        !            72:                       (progn
        !            73:                             (&mh-restore-killbuffer)
        !            74:                             (pop-to-buffer (concat "+" mh-folder))
        !            75:                             (delete-other-windows)
        !            76:                             (setq mode-line-format sm)
        !            77:                             (error-message "Message not sent; its text remains in buffer 'reply'")
        !            78:                       )
        !            79:                   )
        !            80:            )
        !            81:        )
        !            82:        (pop-to-buffer (concat "+" mh-folder)) (delete-other-windows)
        !            83:        (pop-to-buffer "message")
        !            84:        (setq mode-line-format sm) (previous-window)
        !            85:     )
        !            86: )

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.