Commit bff6da3d authored by Stefan Monnier's avatar Stefan Monnier

(auto-insert-mode): Use define-minor-mode.

parent 264f0aa7
......@@ -57,17 +57,6 @@
:group 'convenience)
(defcustom auto-insert-mode nil
"Toggle Auto-insert mode.
Setting this variable directly does not take effect;
use either \\[customize] or the function `auto-insert-mode'."
:set (lambda (symbol value)
(auto-insert-mode (or value 0)))
:initialize 'custom-initialize-default
:type 'boolean
:group 'auto-insert
:require 'autoinsert)
(defcustom auto-insert 'not-modified
"*Controls automatic insertion into newly found empty files.
Possible values:
......@@ -293,26 +282,17 @@ or if CONDITION had no actions, after all other CONDITIONs."
(defun auto-insert-mode (&optional arg)
(define-minor-mode auto-insert-mode
"Toggle Auto-insert mode.
With prefix ARG, turn Auto-insert mode on if and only if ARG is positive.
Returns the new status of Auto-insert mode (non-nil means on).
When Auto-insert mode is enabled, when new files are created you can
insert a template for the file depending on the mode of the buffer."
(interactive "P")
(let ((on-p (if arg
(> (prefix-numeric-value arg) 0)
(not auto-insert-mode))))
(if on-p
(add-hook 'find-file-hooks 'auto-insert)
(remove-hook 'find-file-hooks 'auto-insert))
(if (interactive-p)
(message "Auto-insert now %s." (if on-p "on" "off")))
(setq auto-insert-mode on-p)))
(if auto-insert-mode
(auto-insert-mode 1))
nil nil nil :global t :group 'auto-insert
(if auto-insert-mode
(add-hook 'find-file-hooks 'auto-insert)
(remove-hook 'find-file-hooks 'auto-insert)))
(provide 'autoinsert)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment