Function: sieve-edit-script
sieve-edit-script is an interactive and byte-compiled function defined
in sieve.el.gz.
Signature
(sieve-edit-script &optional POS)
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/net/sieve.el.gz
(defun sieve-edit-script (&optional _pos)
(interactive)
(let ((name (sieve-script-at-point)))
(unless name
(error "No sieve script at point"))
(if (not (string-equal name sieve-new-script))
(let ((newbuf (generate-new-buffer name))
err)
(setq err (sieve-manage-getscript name newbuf sieve-manage-buffer))
(switch-to-buffer newbuf)
(if (sieve-manage-ok-p err)
(set-buffer-modified-p nil)
(error "Sieve download failed: %s" err)))
(switch-to-buffer (get-buffer-create "template.siv"))
(insert sieve-template)
(setq name (read-string "Name for new script: "))
(when (string-match "\\.sieve\\'" name)
;; The server will append .sieve to the script name.
(setq name (replace-match "" t t name))))
(sieve-mode)
(setq sieve-buffer-script-name name)
(goto-char (point-min))
(set-buffer-modified-p nil)
(message "Press %s to upload script to server."
(substitute-command-keys "\\[sieve-upload]"))))