[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Bad defcustom in speedbar, or non-interactive message in locate-libr
From: |
Stefan Monnier |
Subject: |
Re: Bad defcustom in speedbar, or non-interactive message in locate-library |
Date: |
Thu, 27 Jan 2005 20:56:29 -0500 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/21.3.50 (gnu/linux) |
> I think that what is happening here is that a default value for
> speedbar-use-imenu-flag, which causes a message to be written to the echo
> area, is being reexecuted repeatedly. I believe that this is a bug, and that
> the defcustom of speedbar-use-imenu-flag needs to be redefined. One possible
> fix (surely not the best) is to wrap the defcustom's init value in (let
> ((executing-kbd-macro t))...) to prevent its locate-library message from
> appearing. (This was why I asked for a way to inhibit messages, which I
> still think is needed as an enhancement.)
A better fix is to remove this horrible call to locate-library and use
(fboundp 'imenu) instead. See patch below,
Stefan
--- speedbar.el 11 nov 2004 17:07:22 -0500 1.60
+++ speedbar.el 27 jan 2005 20:55:51 -0500
@@ -1,6 +1,7 @@
;;; speedbar.el --- quick access to files and tags in a frame
-;;; Copyright (C) 1996, 97, 98, 99, 2000, 01 Free Software Foundation
+;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2005
+;; Free Software Foundation
;; Author: Eric M. Ludlam <address@hidden>
;; Version: 0.11a
@@ -170,6 +171,8 @@
;; - More functions to create buttons and options
;; - Timeout directories we haven't visited in a while.
+;;; Code:
+
(require 'assoc)
(require 'easymenu)
@@ -201,7 +204,6 @@
:prefix "speedbar-"
:group 'speedbar)
-;;; Code:
(defvar speedbar-initial-expansion-mode-alist
'(("buffers" speedbar-buffer-easymenu-definition speedbar-buffers-key-map
speedbar-buffer-buttons)
@@ -373,7 +375,7 @@
(symbol :tag "Property")
(sexp :tag "Value"))))
-(defcustom speedbar-use-imenu-flag (stringp (locate-library "imenu"))
+(defcustom speedbar-use-imenu-flag (fboundp 'imenu)
"*Non-nil means use imenu for file parsing. nil to use etags.
XEmacs prior to 20.4 doesn't support imenu, therefore the default is to
use etags instead. Etags support is not as robust as imenu support."
@@ -3749,7 +3751,7 @@
nil
-(eval-when-compile (if (locate-library "imenu") (require 'imenu)))
+(eval-when-compile (condition-case nil (require 'imenu) (error nil)))
(defun speedbar-fetch-dynamic-imenu (file)
"Load FILE into a buffer, and generate tags using Imenu.
@@ -4359,5 +4361,5 @@
;; run load-time hooks
(run-hooks 'speedbar-load-hook)
-;;; arch-tag: 4477e6d1-f78c-48b9-a503-387d3c9767d5
+;; arch-tag: 4477e6d1-f78c-48b9-a503-387d3c9767d5
;;; speedbar.el ends here
- RE: How to suppress messages?, Drew Adams, 2005/01/27
- Re: How to suppress messages?, John Paul Wallington, 2005/01/27
- RE: How to suppress messages?, Drew Adams, 2005/01/27
- Bad defcustom in speedbar, or non-interactive message in locate-library (was: How to suppress messages?), Drew Adams, 2005/01/27
- RE: Bad defcustom in speedbar, or non-interactive message in locate-library (was: How to suppress messages?), Drew Adams, 2005/01/27
- RE: Bad defcustom in speedbar, or non-interactive message in locate-library (was: How to suppress messages?), Drew Adams, 2005/01/27
- Re: Bad defcustom in speedbar, or non-interactive message in locate-library (was: How to suppress messages?), Eli Zaretskii, 2005/01/28
- RE: Bad defcustom in speedbar, or non-interactive message in locate-library (was: How to suppressmessages?), Drew Adams, 2005/01/28
- Re: Bad defcustom in speedbar, or non-interactive message in locate-library (was: How to suppressmessages?), Eli Zaretskii, 2005/01/29
- Re: Bad defcustom in speedbar, or non-interactive message in locate-library,
Stefan Monnier <=
- RE: Bad defcustom in speedbar, or non-interactive message in locate-library, Drew Adams, 2005/01/28
- RE: How to suppress messages?, T. V. Raman, 2005/01/27