;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:47:48 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/mail/mh-seq.el
;;; in Emacs version 21.3
;;; 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-seq.el' was compiled for Emacs 19.29 or later"))

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


(byte-code "\303\304!\210\305\306!\210\301B\307\301!\204 \310\302B\307\302!\204  \310\310\207" [current-load-list mh-last-seq-used mh-non-seq-mode-line-annotation provide mh-seq require mh-e boundp nil] 2)
#@22 Delete the SEQUENCE.
(defalias 'mh-delete-seq #[(sequence) "\302\303\304	T%\210\305\306\"\210\307!\207" [sequence mh-cmd-note mh-map-to-seq-msgs mh-notate-if-in-one-seq 32 mh-undefine-sequence ("all") mh-delete-seq-locally] 6 (#$ . 832) (list (mh-read-seq-default "Delete" t))])
#@39 List the sequences defined in FOLDER.
(defalias 'mh-list-sequences #[(folder) "	\211\220\212q\210\306 \210\307\310!\210\311\f\312\261\210\n\203k \n@@\313\314\n@A!\315\"\316 \317Z\320\321\322\"\211c\210\203` iV\203O \323c\210\324G!\210\321\325@\"c\210A\211\204@ \323c\210,\nA\211\204 eb\210\307\326!)\221*\207" [mh-temp-buffer mh-seq-list seq-list temp-buffer folder name-spec erase-buffer message "Listing sequences ..." "Sequences in folder " ":\n" sort copy-sequence < window-width 4 nil format "%20s:" "\n" move-to-column " %s" "Listing sequences...done" last-col sorted-seq-msgs name] 6 (#$ . 1121) (list (mh-prompt-for-folder "List sequences in" mh-current-folder t))])
#@72 Display the sequences that contain MESSAGE (default: current message).
(defalias 'mh-msg-is-in-seq #[(message) "\300\301\302\303\304\305\306\"!\307##\207" [message "Message %d is in sequences: %s" mapconcat concat mh-list-to-string mh-seq-containing-msg t " "] 9 (#$ . 1830) (list (mh-get-msg-num t))])
#@122 Restrict display of this folder to just messages in SEQUENCE.
Use \<mh-folder-mode-map>\[mh-widen] to undo this command.
(defalias 'mh-narrow-to-seq #[(sequence) "\306 \307\211\310!\2035 \311 \210d\312\f\"\210\fd}\210\313\314!\210\f\315!\316 \210\317\307!\210\211)\202; \320\321\315!\"\322\n!\210+\207" [buffer-file-name buffer-read-only mh-folder-updating-mod-flag sequence eob mh-mode-line-annotation buffer-modified-p nil mh-seq-to-msgs mh-widen mh-copy-seq-to-point make-variable-buffer-local mh-non-seq-mode-line-annotation symbol-name mh-make-folder-mode-line mh-recenter error "No messages in sequence `%s'" mh-set-folder-modified-p mh-narrowed-to-seq] 4 (#$ . 2142) (list (mh-read-seq "Narrow to" t))])
#@134 Add MESSAGE(s) (default: displayed message) to SEQUENCE.
If optional prefix argument provided, then prompt for the message sequence.
(defalias 'mh-put-msg-in-seq #[(msg-or-seq sequence) "\303!\204 \304\n\247\203 \n\202 \305\n!\"\207" [sequence mh-last-seq-used msg-or-seq mh-internal-seq mh-add-msgs-to-seq mh-seq-to-msgs] 3 (#$ . 2874) (list (if current-prefix-arg (mh-read-seq-default "Add messages from" t) (mh-get-msg-num t)) (mh-read-seq-default "Add to" nil))])
#@72 Remove restrictions from current folder, thereby showing all messages.
(defalias 'mh-widen #[nil "\203 \306 \307\211ed|\210~\210\f\310 \210\311!\210+\307\211\207" [mh-narrowed-to-seq buffer-file-name buffer-read-only mh-folder-updating-mod-flag mh-non-seq-mode-line-annotation mh-mode-line-annotation buffer-modified-p nil mh-make-folder-mode-line mh-set-folder-modified-p] 3 (#$ . 3355) nil])
(defalias 'mh-read-seq-default #[(prompt not-empty) "\304	\n\206 \206 \305\306\307!\307\"@#\207" [prompt not-empty mh-narrowed-to-seq mh-last-seq-used mh-read-seq mh-seq-containing-msg mh-get-msg-num nil] 6])
(defalias 'mh-read-seq #[(prompt not-empty &optional default) "\306\307\310\311	\203 \307\312	\"\202 \313$\314\n!\"\211\315\232\203' \316\317\320!\321\"@\2024 \313\232\2031 	\2024 \322!\323\f!\211\204G \203G \324\325\f\"\210\f+\207" [prompt default mh-seq-list input seq msgs completing-read format "%s %s %s" "sequence:" "[%s] " "" mh-seq-names "%" mh-seq-containing-msg mh-get-msg-num t nil intern mh-seq-to-msgs error "No messages in sequence `%s'" not-empty] 9])
(defalias 'mh-seq-names #[(seq-list) "\301\302\"\207" [seq-list mapcar #[(entry) "\301@!C\207" [entry symbol-name] 2]] 3])
#@35 Rename SEQUENCE to have NEW-NAME.
(defalias 'mh-rename-seq #[(sequence new-name) "\303!\211\204 \304\305\"\210\306\n	A\"\210\307	A\"\210	\n\240)\207" [sequence old-seq new-name mh-find-seq error "Sequence %s does not exist" mh-define-sequence mh-undefine-sequence] 4 (#$ . 4578) (list (mh-read-seq "Old" t) (intern (read-string "New sequence name: ")))])
(defalias 'mh-map-to-seq-msgs #[(func seq &rest args) "\212\304!\211\205! \305	@\306\211#\203 \307\n	@#\210	A\211\204	 \310*\207" [seq msgs func args mh-seq-to-msgs mh-goto-msg t apply nil] 5])
(defalias 'mh-notate-seq #[(seq notation offset) "\303\304	\n$\207" [seq notation offset mh-map-to-seq-msgs mh-notate] 5])
(defalias 'mh-add-to-sequence #[(seq msgs) "\303!?\205 	\205 \304\305\306\n\307\310\311!\312	!&\207" [seq msgs mh-current-folder mh-folder-name-p apply mh-exec-cmd "mark" "-add" "-sequence" symbol-name mh-coalesce-msg-list] 9])
(defalias 'mh-copy-seq-to-point #[(seq location) "\302\303	#\207" [seq location mh-map-to-seq-msgs mh-copy-line-to-point] 4])
(defalias 'mh-copy-line-to-point #[(msg location) "\301 \210\212`\303\304y\210`\nb\210\305p	#+\207" [end beginning-of-line location nil 1 insert-buffer-substring] 4])
