;ELC
;;; Compiled
;;; in Emacs version 26.1
;;; with all optimizations.
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310\311\312&\210\313\314\315\316\317\320\311\304&\210\313\321\322\323\317\320\311\304&\210\313\324\325\326\317\320\311\304&\207" [require sieve-manage sieve-mode custom-declare-group sieve nil "Manage sieve scripts." :version "22.1" :group tools custom-declare-variable sieve-new-script "<new script>" "Name of name script indicator." :type string sieve-buffer "*sieve*" "Name of sieve management buffer." sieve-template "require \"fileinto\";\n\n# Example script (remove comment character '#' to make it effective!):\n#\n# if header :contains \"from\" \"coyote\" {\n# discard;\n# } elsif header :contains [\"subject\"] [\"$$$\"] {\n# discard;\n# } else {\n# fileinto \"INBOX\";\n# }\n" "Template sieve script."] 8)
(defvar sieve-manage-buffer nil)
(defvar sieve-buffer-header-end nil)
#@37 The real script name of the buffer.
(defvar sieve-buffer-script-name nil (#$ . 1262))
(make-local-variable 'sieve-buffer-script-name)
#@33 Keymap for `sieve-manage-mode'.
(defvar sieve-manage-mode-map (byte-code "\301 \302\303\304#\210\302\305\304#\210\302\306\307#\210\302\310\311#\210\302\312\313#\210\302\314\315#\210\302\316\315#\210\302\317\320#\210\302\321\320#\210\302\322\320#\210\302\323\320#\210\302\324\315#\210\302\325\326#\210\302\327\326#\210\302\330\331#\210\302\332\333#\210\302\334\335#\210\302\336\337#\210\302\340\326#\210\302\341\342#\210)\207" [map make-sparse-keymap define-key "?" sieve-help "h" "m" sieve-activate "u" sieve-deactivate "\377" sieve-deactivate-all "" sieve-prev-line [up] "" sieve-next-line [down] " " "n" "p" "
" sieve-edit-script "f" "o" sieve-edit-script-other-window "r" sieve-remove "q" sieve-bury-buffer "Q" sieve-manage-quit [(down-mouse-2)] [(down-mouse-3)] sieve-manage-mode-menu] 4) (#$ . 1402))
#@13 Sieve Menu.
(defvar sieve-manage-mode-menu nil (#$ . 2238))
(easy-menu-do-define 'sieve-manage-mode-menu sieve-manage-mode-map "Sieve Menu." '("Manage Sieve" ["Edit script" sieve-edit-script t] ["Activate script" sieve-activate t] ["Deactivate script" sieve-deactivate t]))
(defvar sieve-manage-mode-hook nil)
(byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [sieve-manage-mode-hook variable-documentation put "Hook run after entering Sieve-manage mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp sieve-manage-mode-map definition-name sieve-manage-mode] 4)
(defvar sieve-manage-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\317#\207" [sieve-manage-mode-abbrev-table sieve-manage-mode-map variable-documentation put purecopy "Keymap for `sieve-manage-mode'." boundp sieve-manage-mode-syntax-table definition-name sieve-manage-mode (lambda (#1=#:def-tmp-var) (defvar sieve-manage-mode-syntax-table #1#)) make-syntax-table "Syntax table for `sieve-manage-mode'." (lambda (#1#) (defvar sieve-manage-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `sieve-manage-mode'." derived-mode-parent] 5)
#@173 Mode used for sieve script management.
This mode runs the hook `sieve-manage-mode-hook', as the final or penultimate step
during initialization.
\{sieve-manage-mode-map}
(defalias 'sieve-manage-mode #[nil "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210
\315p!\210\307\316\"\210)\317\320!\207" [delay-mode-hooks major-mode mode-name sieve-manage-mode-map sieve-manage-mode-syntax-table sieve-manage-mode-abbrev-table make-local-variable t kill-all-local-variables sieve-manage-mode "Sieve-manage" use-local-map set-syntax-table buffer-disable-undo easy-menu-add run-mode-hooks sieve-manage-mode-hook local-abbrev-table truncate-lines sieve-manage-mode-menu] 3 (#$ . 3737) nil])
(put 'sieve-manage-mode 'mode-class 'special)
#@45 Quit Manage Sieve and close the connection.
(defalias 'sieve-manage-quit #[nil "\301!\210\302!\210\302p!\207" [sieve-manage-buffer sieve-manage-close kill-buffer] 2 (#$ . 4487) nil])
#@62 Bury the Manage Sieve buffer without closing the connection.
(defalias 'sieve-bury-buffer #[nil "\300 \207" [bury-buffer] 1 (#$ . 4678) nil])
(defalias 'sieve-activate #[(&optional pos) "\304 \305\211\203 \n\230\203 \306\307!\210\310\311 \"\210\312 \"\313 \210\314!\203- \310\315 \"\2024 \310\316 \3178#*\207" [err name sieve-new-script sieve-manage-buffer sieve-script-at-point nil error "No sieve script at point" message "Activating script %s..." sieve-manage-setactive sieve-refresh-scriptlist sieve-manage-ok-p "Activating script %s...done" "Activating script %s...failed: %s" 2] 6 nil "d"])
(defalias 'sieve-deactivate-all #[(&optional pos) "\303 \304\305\306!\210\307\310\n\"\311 \210\312!\203 \305\313!\202# \305\314\3158\"*\207" [err name sieve-manage-buffer sieve-script-at-point nil message "Deactivating scripts..." sieve-manage-setactive "" sieve-refresh-scriptlist sieve-manage-ok-p "Deactivating scripts...done" "Deactivating scripts...failed: %s" 2] 4 nil "d"])
(defalias 'sieve-deactivate 'sieve-deactivate-all)
(defalias 'sieve-remove #[(&optional pos) "\304 \305\211\203 \n\230\203 \306\307!\210\310\311 \"\210\312 \"\313!\204( \306\314\"\210\315 \210\310\316 \"*\207" [err name sieve-new-script sieve-manage-buffer sieve-script-at-point nil error "No sieve script at point" message "Removing sieve script %s..." sieve-manage-deletescript sieve-manage-ok-p "Removing sieve script %s...failed: " sieve-refresh-scriptlist "Removing sieve script %s...done"] 4 nil "d"])
(defalias 'sieve-edit-script #[(&optional pos) "\306 \211\204 \307\310!\210 \230\2047 \311!\312\313\f#\314!\210\315\n!\203. \316\312!\210\2023 \307\317\n\"\210*\202@ \314\320\321!!\210
c\210\322 \210eb\210\323\324\325!!)\207" [name sieve-new-script err newbuf sieve-manage-buffer sieve-template sieve-script-at-point error "No sieve script at point" generate-new-buffer nil sieve-manage-getscript switch-to-buffer sieve-manage-ok-p set-buffer-modified-p "Sieve download failed: %s" get-buffer-create "template.siv" sieve-mode message substitute-command-keys "Press \\[sieve-upload] to upload script to server." sieve-buffer-script-name] 5 nil "d"])
#@138 Turns off sieve-region before executing BODY, then re-enables it after.
Used to bracket operations which move point in the sieve-buffer.
(defalias 'sieve-change-region '(macro . #[(&rest body) "\301\302\303\304\"BB\207" [body progn (sieve-highlight nil) append ((sieve-highlight t))] 5 (#$ . 6857)]))
(put 'sieve-change-region 'lisp-indent-function 0)
(defalias 'sieve-next-line #[(&optional arg) "\204 \301\212y\210\302 )\203 \303\304!\210y\210\303\305!\207\306\307!\207" [arg 1 sieve-script-at-point sieve-highlight nil t message "End of list"] 2 nil nil])
(defalias 'sieve-prev-line #[(&optional arg) "\204 \301\212y\210\302 )\203 \303\304!\210y\210\303\305!\207\306\307!\207" [arg -1 sieve-script-at-point sieve-highlight nil t message "Beginning of list"] 2 nil nil])
#@42 Display help for various sieve commands.
(defalias 'sieve-help #[nil "\301=\203\n \302\303!\207\304\305\306\307!\"\207" [last-command sieve-help describe-function sieve-mode message "%s" substitute-command-keys "`\\[sieve-edit-script]':edit `\\[sieve-activate]':activate `\\[sieve-deactivate]':deactivate `\\[sieve-remove]':remove"] 4 (#$ . 7649) nil])
(defalias 'sieve-setup-buffer #[(server port) "\306\307 \210\310 \210 \206
\n\311\312 #\211c\210*\313\305!\210d\211\207" [buffer-read-only port sieve-manage-default-port server header sieve-buffer-header-end nil erase-buffer buffer-disable-undo format "Server : %s:%s\n\n" make-local-variable] 5])
#@51 Return name of sieve script at point POS, or nil.
(defalias 'sieve-script-at-point #[(&optional pos) "\301\206 `\302\"\207" [pos get-char-property script-name] 3 (#$ . 8313) "d"])
#@62 Turn ON or off highlighting on the current language overlay.
(defalias 'sieve-highlight #[(on) "\301\302`!@\303\203 \304\202 \305#\207" [on overlay-put overlays-at face highlight default] 4 (#$ . 8501)])
#@71 Format and insert LANGUAGE-LIST strings into current buffer at point.
(defalias 'sieve-insert-scripts #[(scripts) "\205E `\304\211A\242 :\203 \305\306 A\"c\210\202# \305\307 \"c\210\310`\"\311\n\312\313#\210\311\n\314 :\203; A\202< |