(auto-insert-mode): Use define-minor-mode.
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 29 Sep 2000 22:14:58 +0000 (22:14 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 29 Sep 2000 22:14:58 +0000 (22:14 +0000)
lisp/autoinsert.el

index 59430ca..9ba77ad 100644 (file)
   :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."
                                      auto-insert-alist))))))
 
 ;;;###autoload
-(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)