Any non-nil value for a minor mode _variable_ is supposed to indicate an enabled mode. It would appear that this includes the value 0 and negative values. But currently, when set through Custom, such values disable the mode.
I believe that it is definitely better to use `t' to enable a minor mode by default through Custom than a random non-nil value like 0. Otherwise Custom might get confused if something "simplifies" the non-nil value to `t', as I believe `define-minor-mode' does. On the other hand, it is clearly documented that any non-nil value of the variable indicates an enabled mode. I can install the following patch, if we want to change this: ===File ~/custom.el-diff==================================== *** custom.el 05 Mar 2005 21:27:39 -0600 1.81 --- custom.el 08 Apr 2005 22:22:22 -0500 *************** *** 841,848 **** this sets the local binding in that buffer instead." (if custom-local-buffer (with-current-buffer custom-local-buffer ! (funcall variable (or value 0))) ! (funcall variable (or value 0)))) (defun custom-quote (sexp) "Quote SEXP iff it is not self quoting." --- 841,848 ---- this sets the local binding in that buffer instead." (if custom-local-buffer (with-current-buffer custom-local-buffer ! (funcall variable (if value 1 0))) ! (funcall variable (if value 1 0)))) (defun custom-quote (sexp) "Quote SEXP iff it is not self quoting." ============================================================ _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel