mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-06-16 21:41:27 +00:00
Improvements to sieve script usability
* lisp/net/sieve-mode.el (sieve-mode-menu): Add `sieve-upload-and-kill' to the mode menu. * lisp/net/sieve.el (sieve-manage-mode-menu): Add `sieve-manage-quit' to the mode menu. (sieve-help): Mention quitting in mode help. (sieve-manage-mode): Directly derive from special-mode. (sieve-edit-script): Start off with unmodified buffer. (sieve-upload): Set buffer unmodified after successful upload. Changes are aimed at 1) increasing discoverability of commands and 2) using buffer modification to help users understand what's happening.
This commit is contained in:
parent
64d0648f1d
commit
8961c6b972
1 changed files with 9 additions and 7 deletions
|
|
@ -137,16 +137,15 @@ require \"fileinto\";
|
|||
'("Manage Sieve"
|
||||
["Edit script" sieve-edit-script t]
|
||||
["Activate script" sieve-activate t]
|
||||
["Deactivate script" sieve-deactivate t]))
|
||||
["Deactivate script" sieve-deactivate t]
|
||||
["Quit and close connection" sieve-manage-quit t]))
|
||||
|
||||
(define-derived-mode sieve-manage-mode fundamental-mode "Sieve-manage"
|
||||
(define-derived-mode sieve-manage-mode special-mode "Sieve-manage"
|
||||
"Mode used for sieve script management."
|
||||
(buffer-disable-undo (current-buffer))
|
||||
(setq truncate-lines t)
|
||||
(easy-menu-add sieve-manage-mode-menu sieve-manage-mode-map))
|
||||
|
||||
(put 'sieve-manage-mode 'mode-class 'special)
|
||||
|
||||
;; Commands used in sieve-manage mode:
|
||||
|
||||
(defun sieve-manage-quit ()
|
||||
|
|
@ -215,6 +214,7 @@ require \"fileinto\";
|
|||
(sieve-mode)
|
||||
(setq sieve-buffer-script-name name)
|
||||
(goto-char (point-min))
|
||||
(set-buffer-modified-p nil)
|
||||
(message
|
||||
(substitute-command-keys
|
||||
"Press \\[sieve-upload] to upload script to server."))))
|
||||
|
|
@ -257,7 +257,7 @@ Used to bracket operations which move point in the sieve-buffer."
|
|||
;; would need minor-mode for log-edit-mode
|
||||
(describe-function 'sieve-mode)
|
||||
(message "%s" (substitute-command-keys
|
||||
"`\\[sieve-edit-script]':edit `\\[sieve-activate]':activate `\\[sieve-deactivate]':deactivate `\\[sieve-remove]':remove"))))
|
||||
"`\\[sieve-edit-script]':edit `\\[sieve-activate]':activate `\\[sieve-deactivate]':deactivate `\\[sieve-remove]':remove `\\[sieve-manage-quit]':quit"))))
|
||||
|
||||
;; Create buffer:
|
||||
|
||||
|
|
@ -355,8 +355,10 @@ Used to bracket operations which move point in the sieve-buffer."
|
|||
(or name sieve-buffer-script-name script-name)
|
||||
script sieve-manage-buffer))
|
||||
(if (sieve-manage-ok-p err)
|
||||
(message (substitute-command-keys
|
||||
"Sieve upload done. Use \\[sieve-manage] to manage scripts."))
|
||||
(progn
|
||||
(message (substitute-command-keys
|
||||
"Sieve upload done. Use \\[sieve-manage] to manage scripts."))
|
||||
(set-buffer-modified-p nil))
|
||||
(message "Sieve upload failed: %s" (nth 2 err)))))))
|
||||
|
||||
;;;###autoload
|
||||
|
|
|
|||
Loading…
Reference in a new issue