;ELC ;;; compiled by rms@mole.gnu.ai.mit.edu on Tue Mar 15 01:43:34 1994 ;;; from file /home/fsf/rms/e19/lisp/mh-funcs.el ;;; emacs version 19.22.85. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19"))) (error "`/home/fsf/rms/e19/lisp/mh-funcs.el' was compiled for Emacs 19")) (byte-code "!!" [provide mh-funcs require mh-e] 2) (defvar mh-sortm-args nil "\ Extra arguments to have \\[mh-sort-folder] pass to the \"sortm\" command. For example, '(\"-nolimit\" \"-textfield\" \"subject\") is a useful setting.") (defalias 'mh-burst-digest #[nil "!\f!!!\f\n$\f\"\"!)" [mh-get-msg-num t digest mh-process-or-undo-commands mh-current-folder mh-set-folder-modified-p message "Bursting digest..." mh-exec-cmd "burst" "-inplace" mh-scan-folder format "%d-last" mh-first-msg-num "Bursting digest...done"] 5 "\ Burst apart the current message, which should be a digest. The message is replaced by its table of contents and the letters from the digest are inserted into the folder after that message." nil]) (defalias 'mh-copy-msg #[(dest msg-or-seq) "\n &\n\n #\n #" [mh-exec-cmd "refile" msg-or-seq "-link" "-src" mh-current-folder dest mh-notate 67 mh-cmd-note mh-notate-seq] 7 "\ Copy to another FOLDER the specified MESSAGE(s) without deleting them. Default is the displayed message. If optional prefix argument is provided, then prompt for the message sequence." (list (mh-prompt-for-folder "Copy to" "" t) (if current-prefix-arg (mh-read-seq-default "Copy" t) (mh-get-msg-num t)))]) (defalias 'mh-kill-folder #[nil " \f\"!E\f ! \" \"\" \"!!@! !)!" [mh-do-not-confirm yes-or-no-p format "Remove folder %s? " mh-current-folder folder mh-folder-list mh-set-folder-list mh-set-folder-modified-p t mh-exec-cmd-daemon "rmf" delq assoc message "Folder %s removed" nil get-buffer mh-show-buffer kill-buffer "Folder not removed"] 4 "\ Remove the current folder." nil]) (defalias 'mh-list-folders #[nil "! !ɂ#eb!)" [" *mh-temp*" switch-to-buffer erase-buffer message "Listing folders..." mh-exec-cmd-output "folders" t mh-recursive-folders "-recurse" "-norecurse" "Listing folders...done"] 5 "\ List mail folders." nil]) (defalias 'mh-pack-folder #[(range) " ! !" [mh-pack-folder-1 range mh-goto-cur-msg message "Packing folder...done"] 2 "\ Renumber the messages of a folder to be 1..n. First, offer to execute any outstanding commands for the current folder. If optional prefix argument provided, prompt for the range of messages to display after packing. Otherwise, show the entire folder." (list (if current-prefix-arg (mh-read-msg-range "Range to scan after packing [all]? ") "all"))]) (defalias (quote mh-pack-folder-1) #[(range) " !!! $)\n!" [mh-process-or-undo-commands mh-current-folder message "Packing folder..." mh-set-folder-modified-p t mh-exec-cmd-quiet "folder" "-pack" mh-regenerate-headers range] 5]) (defalias 'mh-pipe-msg #[(command include-headers) "!!!q !eb!`d\f$*" [mh-msg-filename mh-get-msg-num t file-name get-buffer-create " *mh-temp*" erase-buffer insert-file-contents include-headers search-forward "\n\n" shell-command-on-region command nil] 5 "\ Pipe the current message through the given shell COMMAND. If INCLUDE-HEADERS (prefix argument) is provided, send the entire message. Otherwise just send the message's body without the headers." (list (read-string "Shell command on message: ") current-prefix-arg)]) (defalias 'mh-page-digest #[nil "  !\fp!Ǝ!\n#(#,!)#y!*" [selected-window mh-in-show-buffer-saved-window switch-to-buffer-other-window mh-show-buffer mh-bury-show-buffer bury-buffer ((select-window mh-in-show-buffer-saved-window)) move-to-window-line 0 nil case-fold-search search-forward "\n\n" t "From:" error "No more messages in digest" search-backward 2 mh-recenter] 4 "\ Advance displayed message to next digested message." nil]) (defalias 'mh-page-digest-backwards #[nil "  !\fp!Ǝ!\ny#+#/!)#;y!*" [selected-window mh-in-show-buffer-saved-window switch-to-buffer-other-window mh-show-buffer mh-bury-show-buffer bury-buffer ((select-window mh-in-show-buffer-saved-window)) move-to-window-line 0 nil case-fold-search search-backward "\n\n" t "From:" error "No previous message in digest" 2 mh-recenter] 4 "\ Back up displayed message to previous digested message." nil]) (defalias 'mh-print-msg #[(msg-or-seq) "\f!!I\"!\n;-\n\". ?#D\"\"%#\"\n;c\n\"d! x#}\"\"&#܉&###!!)" [msg-or-seq message "Printing message..." "Printing sequence..." format "%s -nobell -clear %s %s | %s" expand-file-name "mhl" mh-lib mh-msg-filename mhl-formfile "-form %s" "" mh-lpr-command-format "%s/%d" mh-current-folder "Sequence from %s" "(scan -clear %s ; %s -nobell -clear %s %s) | %s" mapconcat (lambda (msg) msg) " " mh-msg-filenames print-command mh-print-background mh-exec-cmd-daemon shell-file-name "-c" call-process nil mh-notate 80 mh-cmd-note mh-notate-seq mh-add-msgs-to-seq printed t "Printing message...done" "Printing sequence...done"] 12 "\ Print MESSAGE(s) (default: displayed message) on printer. If optional prefix argument provided, then prompt for the message sequence. The variable mh-lpr-command-format is used to generate the print command. The messages are formatted by mhl. See the variable mhl-formfile." (list (if current-prefix-arg (reverse (mh-seq-to-msgs (mh-read-seq-default "Print" t))) (mh-get-msg-num t)))]) (defalias (quote mh-msg-filenames) #[(msgs &optional folder) "\n#" [mapconcat #[(msg) " \n\"" [mh-msg-filename msg folder] 3] msgs " "] 4]) (defalias 'mh-sort-folder #[(&optional no-args) " !!! \n? #! \"" [mh-process-or-undo-commands mh-current-folder forward mh-next-direction mh-set-folder-modified-p t message "Sorting folder..." mh-exec-cmd "sortm" no-args mh-sortm-args "Sorting folder...done" mh-scan-folder "all"] 4 "\ Sort the messages in the current folder by date. Calls the MH program sortm to do the work. The arguments in the list mh-sortm-args are passed to sortm unless this function is passed an argument." "P"]) (defalias 'mh-undo-folder #[(&rest ignore) "\n!#É \n!*!!!" [mh-do-not-confirm yes-or-no-p "Undo all commands in folder? " nil mh-delete-list mh-refile-list mh-seq-list forward mh-next-direction buffer-file-name buffer-read-only mh-unmark-all-headers t mh-set-folder-modified-p message "Commands not undone." sit-for 2] 3 "\ Undo all commands in current folder." nil]) (defalias 'mh-store-msg #[(dir) "!!!q ! !*" [mh-msg-filename mh-get-msg-num t file-name get-buffer-create " *mh-temp*" erase-buffer insert-file-contents mh-store-buffer dir] 3 "\ Store the file(s) contained in the current message into DIRECTORY. The message can contain a shar file or uuencoded file. Default directory is the last directory used, or initially the value of mh-store-default-directory or the current directory." (list (let ((udir (or mh-store-default-directory default-directory))) (read-file-name "Store message in directory: " udir udir nil)))]) (defalias 'mh-store-buffer #[(dir) " !eb#,#y,#,#0y`)!q !\\ ձ% ձmc)!\"!d&)  qc," [expand-file-name dir re-search-forward "^#![ ]*/bin/sh" nil t "^[^a-z0-9\"]*cut here\\b" 1 "^#" "^: " 0 get-buffer-create "*Store Output*" "sh" command log-buffer start store-directory erase-buffer file-directory-p "mkdir " "\n" call-process "mkdir" "cd " "uudecode" "uudecoding...\n" set-window-start display-buffer file-name-as-directory default-directory call-process-region mh-store-default-directory "\n(mh-store finished)\n"] 7 "\ Store the file(s) contained in the current buffer into DIRECTORY. The buffer can contain a shar file or uuencoded file. Default directory is the last directory used, or initially the value of `mh-store-default-directory' or the current directory." (list (let ((udir (or mh-store-default-directory default-directory))) (read-file-name "Store buffer in directory: " udir udir nil)))])