emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: obsolete comment in tool-bar.el


From: Luc Teirlinck
Subject: Re: obsolete comment in tool-bar.el
Date: Tue, 12 Jul 2005 22:02:52 -0500 (CDT)

Richard Stallman wrote:

   I am not sure that method would work well, but maybe it would.
   However, sticking with the present approach is safer.
   We know it can't ignore errors for variables we did not intend
   that for.

I agree.  The alternative might, at the very least, require compiler
defvars at many places.

I propose to remove the useless autoload for tooltip-mode, which fixes
one of the reported bugs, to apply the patch below to easy-mmode.el,
which fixes the other reported bug and to reinstate
custom-initialize-safe-default as the :initialize function for
tooltip-mode and blink-cursor-mode, as well as to keep recommending
the two new :initialize functions for use in similar cases.  I could
install all of that, if desired.

Unfortunately, I can not reinstate the use of
`custom-reevaluate-setting' for tooltip-mode in startup.el.  Unless we
would be willing to load tooltip.el even on systems where it makes no
sense, we just have to live with the code duplication here.  (That
would also apply to other proposed solutions.)

Here is the required patch to easy-mmode.el.  Stefan opposed a similar
patch earlier, but the objections he then stated (that loading a file
would have side effects) do not apply to custom-initialize-safe-default.

===File ~/easy-mmode-diff===================================
*** easy-mmode.el       04 Jul 2005 12:44:35 -0500      1.67
--- easy-mmode.el       12 Jul 2005 21:14:49 -0500      
***************
*** 142,147 ****
--- 142,148 ----
    (let* ((mode-name (symbol-name mode))
         (pretty-name (easy-mmode-pretty-mode-name mode lighter))
         (globalp nil)
+        (initialize nil)
         (group nil)
         (extra-args nil)
         (extra-keywords nil)
***************
*** 159,164 ****
--- 160,166 ----
        (:lighter (setq lighter (pop body)))
        (:global (setq globalp (pop body)))
        (:extra-args (setq extra-args (pop body)))
+       (:initialize (setq initialize (list :initialize (pop body))))
        (:group (setq group (nconc group (list :group (pop body)))))
        (:require (setq require (pop body)))
        (:keymap (setq keymap (pop body)))
***************
*** 167,172 ****
--- 169,178 ----
      (setq keymap-sym (if (and keymap (symbolp keymap)) keymap
                       (intern (concat mode-name "-map"))))
  
+     (unless initialize
+       (setq initialize
+           '(:initialize 'custom-initialize-default)))
+ 
      (unless group
        ;; We might as well provide a best-guess default group.
        (setq group
***************
*** 196,202 ****
            `(defcustom ,mode ,init-value
               ,(format base-doc-string pretty-name mode mode)
               :set 'custom-set-minor-mode
!              :initialize 'custom-initialize-default
               ,@group
               :type 'boolean
               ,@(cond
--- 202,208 ----
            `(defcustom ,mode ,init-value
               ,(format base-doc-string pretty-name mode mode)
               :set 'custom-set-minor-mode
!              ,@initialize
               ,@group
               :type 'boolean
               ,@(cond
============================================================




reply via email to

[Prev in Thread] Current Thread [Next in Thread]