;ELC   
;;; Compiled by jmorzins@kamp-krusty.mit.edu on Mon Oct  3 10:37:21 2005
;;; from file /afs/sipb/contrib/emacs/packages/mh-e-7.82/mh-print.el
;;; in Emacs version 21.4.1
;;; with bytecomp version 2.85.4.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`mh-print.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\207" [require cl ps-print mh-utils mh-funcs] 2)
#@180 Control printing of MIME parts.
The three possible states are:
  1. nil to not print inline parts
  2. t to print inline parts
  3. non-zero to print inline parts and attachments
(defvar mh-ps-print-mime nil (#$ . 744))
#@42 MH-E's version of `\[ps-print-color-p]'.
(defvar mh-ps-print-color-option ps-print-color-p (#$ . 970))
#@123 Function to use to spool a buffer.
Sensible choices are the functions `ps-spool-buffer' and
`ps-spool-buffer-with-faces'.
(defvar mh-ps-print-func 'ps-spool-buffer-with-faces (#$ . 1080))
#@31 Send BUFFER to printer queue.
(defalias 'mh-ps-spool-buffer #[(buffer) "\306\307\310\"!\210\212q\210	\311\312\313!\314Q\311\312\315!\314QD\316\311\312\317!\314QD ,\207" [buffer mh-ps-print-color-option ps-right-header ps-left-header ps-print-color-p mh-ps-print-func message format "mh-ps-spool-buffer %s" "(" mh-get-header-field "Subject:" ")" "From:" "/pagenumberstring load" "Date:"] 6 (#$ . 1274)])
#@95 Print MSG.
First the message is decoded in BUFFER before the results are sent to the
printer.
(defalias 'mh-ps-spool-a-msg #[(msg buffer) "\305\306\307	#!\210\n\310\216	\212\311\f\"\210\312\n!\210\313\n!,\207" [msg buffer mh-show-buffer mh-current-folder folder message format "mh-ps-spool-a-msg msg %s buffer %s" nil mh-display-msg mh-ps-spool-buffer kill-buffer] 5 (#$ . 1689)])
#@126 Print the messages in RANGE.

Check the documentation of `mh-interactive-range' to see how RANGE is read in
interactive use.
(defalias 'mh-ps-print-msg #[(range) "\306\307\310\311 #!\210\247\203. \312\313\211#\203\377 \314\n!\315\216\316	\"\210*\317\320\f#\210)\202\377 :\203z @\247\203z A\247\203z \212@b\210\321 \210`AX\203v m\204v \322!\203p \323\313!\314\n!\324\216\316	\"\210*\317\320\f#\210)\325y\210\202G )\202\377 \203\211 9\203\211 \326!\202\227 ;\203\226 \327\"\202\227 \330 \211 \320\211!\203\272 !@\331	\313#\210!A\211!\204\246 *\212eb\210\321 \210`dX\203\376 m\204\376 \322!\203\370 \323\313!\"\332\"\"\203\367 \"\314\n!\333\216\316	\"\210*\317\320\f#\210))\325y\210\202\302 +\334\320!\207" [range msg mh-temp-buffer buffer mh-note-printed mh-cmd-note message format "mh-ps-print-msg range %s keys %s" this-command-keys mh-goto-msg t get-buffer-create ((kill-buffer buffer)) mh-ps-spool-a-msg mh-notate nil beginning-of-line looking-at mh-get-msg-num ((kill-buffer buffer)) 1 mh-seq-to-msgs mh-translate-range make-hash-table cl-puthash gethash ((kill-buffer buffer)) ps-despool mh-scan-valid-regexp mh-current-folder #1=#:seq-hash-table #2=#:msgs #3=#:--dolist-temp--2791 v] 6 (#$ . 2083) (list (mh-interactive-range "Print"))])
#@248 Replacement for `ps-print-preprint'.
The original function does not handle the fact that MH folders are directories
nicely, when generating the default file name. This function works around
that. The function is passed the interactive PREFIX-ARG.
(defalias 'mh-ps-print-preprint #[(prefix-arg) "\302\303\304 \305\306O\"\307	!)\207" [buffer-file-name prefix-arg format "/tmp/%s" buffer-name 1 nil ps-print-preprint] 5 (#$ . 3382)])
#@134 Print to FILE the messages in RANGE.

Check the documentation of `mh-interactive-range' to see how RANGE is read in
interactive use.
(defalias 'mh-ps-print-msg-file #[(file range) "\247\203% \306\307\211#\203\366 \310\n!\311\216\312	\"\210*\313\314\f#\210)\202\366 :\203q @\247\203q A\247\203q \212@b\210\315 \210`AX\203m m\204m \316!\203g \317\307!\310\n!\320\216\312	\"\210*\313\314\f#\210)\321y\210\202> )\202\366 \203\200 9\203\200 \322!\202\216 ;\203\215 \323\"\202\216 \324 \211\314\211\203\261 @\325	\307#\210A\211\204\235 *\212eb\210\315 \210`dX\203\365 m\204\365 \316!\203\357 \317\307!\326\"\203\356 \310\n!\327\216\312	\"\210*\313\314\f#\210))\321y\210\202\271 +\330!\207" [range msg mh-temp-buffer buffer mh-note-printed mh-cmd-note mh-goto-msg t get-buffer-create ((kill-buffer buffer)) mh-ps-spool-a-msg mh-notate nil beginning-of-line looking-at mh-get-msg-num ((kill-buffer buffer)) 1 mh-seq-to-msgs mh-translate-range make-hash-table cl-puthash gethash ((kill-buffer buffer)) ps-despool mh-scan-valid-regexp mh-current-folder #1=#:seq-hash-table #2=#:msgs #3=#:--dolist-temp--2796 v file] 6 (#$ . 3821) (list (mh-ps-print-preprint 1) (mh-interactive-range "Print"))])
#@36 Print current show buffer to FILE.
(defalias 'mh-ps-print-msg-show #[(file) "\306\307\310\311 	$!\210\312\313!\n	\314	!\f\203N \203N \315 \316\f!\210\2030 \317p!\210\320\216\321\"\232\203G \322\f!\210\323!\202J \306\324!*\202Q \306\325!,\207" [file mh-show-buffer mh-current-folder show-window show-buffer folder message format "mh-ps-print-msg-show file %s keys %s mh-show-buffer %s" this-command-keys mh-get-msg-num t get-buffer-window selected-window switch-to-buffer-other-window bury-buffer ((select-window mh-in-show-buffer-saved-window)) mh-msg-filename mh-ps-spool-buffer ps-despool "Current message is not being shown(1)." "Current message is not being shown(2)." msg mh-in-show-buffer-saved-window mh-bury-show-buffer-flag buffer-file-name] 6 (#$ . 5070) (list (mh-ps-print-preprint current-prefix-arg))])
#@52 Toggle whether printing is done with faces or not.
(defalias 'mh-ps-print-toggle-faces #[nil "\301=\203\f \302\303\304!\207\301\303\305!\207" [mh-ps-print-func ps-spool-buffer-with-faces ps-spool-buffer message "Printing without faces" "Printing with faces"] 2 (#$ . 5909) nil])
#@52 Toggle whether color is used in printing messages.
(defalias 'mh-ps-print-toggle-color #[nil "\301=\203\f \302\303\304!\207\302=\203 \305\303\306!\207\301\303\307!\207" [mh-ps-print-color-option nil black-white message "Colors will be printed as black & white." t "Colors will be printed." "Colors will not be printed."] 2 (#$ . 6197) nil])
#@186 Cycle through available choices on how MIME parts should be printed.
The available settings are:
  1. Print only inline MIME parts.
  2. Print all MIME parts.
  3. Print no MIME parts.
(defalias 'mh-ps-print-toggle-mime #[nil "\301=\203\f \302\303\304!\207\302=\203 \305\303\306!\207\301\303\307!\207" [mh-ps-print-mime nil t message "Inline parts will be printed, attachments will not be printed." 1 "Both Inline parts and attachments will be printed." "Neither inline parts nor attachments will be printed."] 2 (#$ . 6551) nil])
#@266 Print RANGE on printer.

Check the documentation of `mh-interactive-range' to see how RANGE is read in
interactive use.

The variable `mh-lpr-command-format' is used to generate the print command.
The messages are formatted by mhl. See the variable `mhl-formfile'.
(defalias 'mh-print-msg #[(range) "\306\307!\210\310	\247\203) \311	\312\211#\203\364 	\313\n\314\312#\210\315\310\f#\210\nB)\202\364 	:\203r 	@\247\203r 	A\247\203r \212	@b\210\316 \210`	AX\203n m\204n \317!\203h \320\312!\313\n\314\312#\210\315\310\f#\210\nB)\321y\210\202B )\202\364 	\203\201 	9\203\201 \322	!\202\217 	;\203\216 \323,	\"\202\217 	\324 -\211.\310\211/\203\262 /@\325\n\312-#\210/A\211/\204\236 *\212eb\210\316 \210`dX\203\363 m\204\363 \317!\203\355 \320\312!0\3260-\"\203\354 0\313\n\314\312#\210\315\310\f#\210\nB))\321y\210\202\272 +\237\211G\321V\203P\327\330\331\332!!\333#1\3342	<\203\334\335,1#\202&	9\205&\334\336,	#\"3\334\33713#45\203C\3406\310\3414$\210\202O\3426\310\211\211\3414&\210+\310\2117\203\2647@\334\343\344\3458\"9\203q\334\3469\"\202r\347\350\n!$:\3342\334\351,\n#\"3\334\352:3#;5\203\236\3406\310\341;$\210\202\252\3426\310\211\211\341;&\210+7A\2117\204Y+\306\353!\207" [msgs range msg mh-note-printed mh-cmd-note mh-scan-valid-regexp message "Printing..." nil mh-goto-msg t mh-add-msgs-to-seq printed mh-notate beginning-of-line looking-at mh-get-msg-num 1 mh-seq-to-msgs mh-translate-range make-hash-table cl-puthash gethash mapconcat identity mh-list-to-string mh-coalesce-msg-list " " format "Folder: %s, Messages: %s" "Folder: %s, Sequence: %s" "scan %s | %s" mh-exec-cmd-daemon "-c" call-process "%s %s %s" expand-file-name "mhl" " -form %s" "" mh-msg-filename "%s/%s" "%s | %s" "Printing...done" mh-current-folder #1=#:seq-hash-table #2=#:msgs #3=#:--dolist-temp--2801 v msgs-string mh-lpr-command-format lpr-command scan-command mh-print-background-flag shell-file-name #4=#:--dolist-temp--2802 mh-lib-progs mhl-formfile mhl-command print-command] 9 (#$ . 7095) (list (mh-interactive-range "Print"))])
(provide 'mh-print)
