]> git.eshelyaron.com Git - emacs.git/commitdiff
* speedbar.el (speedbar-generic-list-tag-p): Allow special
authorLeo Liu <sdl.web@gmail.com>
Wed, 13 Aug 2014 03:21:43 +0000 (11:21 +0800)
committerLeo Liu <sdl.web@gmail.com>
Wed, 13 Aug 2014 03:21:43 +0000 (11:21 +0800)
elements from imenu.

lisp/ChangeLog
lisp/speedbar.el

index a878b936e665c825eed2862d71df6fc013737cc3..0e4a59b8374f7d9284ec0e84b87ed065007ce270 100644 (file)
@@ -1,3 +1,8 @@
+2014-08-13  Leo Liu  <sdl.web@gmail.com>
+
+       * speedbar.el (speedbar-generic-list-tag-p): Allow special
+       elements from imenu.
+
 2014-08-11  Glenn Morris  <rgm@gnu.org>
 
        * subr.el (with-output-to-temp-buffer): Doc fix; from elisp manual.
index 084767893e4aed122045e52df02b560023e4551e..68970407247b5dc10d09d96693320165a326f6df 100644 (file)
@@ -2123,9 +2123,10 @@ cell of the form ( 'DIRLIST . 'FILELIST )."
 ;;  in order to make it look nice.
 ;;
 ;;  A generic list is of the form:
-;;  ( ("name" . marker-or-number)              <-- one tag at this level
-;;    ("name" ("name" . mon) ("name" . mon) )  <-- one group of tags
-;;    ("name" mon ("name" . mon) )             <-- group w/ a position and tags
+;;  ( ("name" . marker-or-number)                <-- one tag at this level
+;;    ("name" marker-or-number goto-fun . args)  <-- one tag at this level
+;;    ("name" ("name" . mon) ("name" . mon) )    <-- one group of tags
+;;    ("name" mon ("name" . mon) )               <-- group w/ a position and tags
 (defun speedbar-generic-list-group-p (sublst)
   "Non-nil if SUBLST is a group.
 Groups may optionally contain a position."
@@ -2156,6 +2157,8 @@ Groups may optionally contain a position."
   (and (stringp (car-safe sublst))
        (or (and (number-or-marker-p (cdr-safe sublst))
                (not (cdr-safe (cdr-safe sublst))))
+           (ignore-errors (and (number-or-marker-p (nth 1 sublst))
+                               (functionp (nth 2 sublst))))
           ;; For semantic/bovine items, this is needed
           (symbolp (car-safe (cdr-safe sublst))))
        ))