Mercurial > emacs
changeset 20249:c42156dab61b
(imenu-default-create-index-function):
Test imenu-prev-index-position-function and
imenu-extract-index-name-function for non-nil, not fboundp.
(imenu-add-to-menubar): Likewise.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Tue, 11 Nov 1997 03:54:00 +0000 |
parents | b87f3ba0e1d7 |
children | e29142cee7c3 |
files | lisp/imenu.el |
diffstat | 1 files changed, 16 insertions(+), 16 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/imenu.el Tue Nov 11 03:26:55 1997 +0000 +++ b/lisp/imenu.el Tue Nov 11 03:54:00 1997 +0000 @@ -619,8 +619,8 @@ Their results are gathered into an index alist." ;; These should really be done by setting imenu-create-index-function ;; in these major modes. But save that change for later. - (cond ((and (fboundp imenu-prev-index-position-function) - (fboundp imenu-extract-index-name-function)) + (cond ((and imenu-prev-index-position-function + imenu-extract-index-name-function) (let ((index-alist '()) prev-pos name) (goto-char (point-max)) @@ -902,20 +902,20 @@ NAME is a string used to name the menu bar item. See the command `imenu' for more information." (interactive "sImenu menu item name: ") - (if (or (not (eq imenu-create-index-function - 'imenu-default-create-index-function)) - (and (fboundp imenu-prev-index-position-function) - (fboundp imenu-extract-index-name-function)) - (and imenu-generic-expression)) - (let ((newmap (make-sparse-keymap)) - (menu-bar (lookup-key (current-local-map) [menu-bar]))) - (define-key newmap [menu-bar] - (append (make-sparse-keymap) menu-bar)) - (define-key newmap [menu-bar index] - (cons name (nconc (make-sparse-keymap "Imenu") - (make-sparse-keymap)))) - (use-local-map (append newmap (current-local-map))) - (add-hook 'menu-bar-update-hook 'imenu-update-menubar)) + (if (or (and imenu-prev-index-position-function + imenu-extract-index-name-function) + imenu-generic-expression + (not (eq imenu-create-index-function + 'imenu-default-create-index-function))) + (let ((newmap (make-sparse-keymap)) + (menu-bar (lookup-key (current-local-map) [menu-bar]))) + (define-key newmap [menu-bar] + (append (make-sparse-keymap) menu-bar)) + (define-key newmap [menu-bar index] + (cons name (nconc (make-sparse-keymap "Imenu") + (make-sparse-keymap)))) + (use-local-map (append newmap (current-local-map))) + (add-hook 'menu-bar-update-hook 'imenu-update-menubar)) (error "The mode `%s' does not support Imenu" mode-name))) (defvar imenu-buffer-menubar nil)