changeset 24248:fd94cf07b4cc

(makefile-imenu-generic-expression): New var. (makefile-menu-index-function): Function deleted. (makefile-mode): Use makefile-imenu-generic-expression.
author Richard M. Stallman <rms@gnu.org>
date Tue, 02 Feb 1999 03:47:08 +0000
parents 90729d756198
children 20c1dc041c44
files lisp/progmodes/make-mode.el
diffstat 1 files changed, 8 insertions(+), 23 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/progmodes/make-mode.el	Tue Feb 02 02:59:29 1999 +0000
+++ b/lisp/progmodes/make-mode.el	Tue Feb 02 03:47:08 1999 +0000
@@ -280,6 +280,12 @@
    ;; They can make a tab fail to be effective.
    '("^\\( +\\)\t" 1 makefile-space-face)))
 
+(defvar makefile-imenu-generic-expression
+  (list
+   (list "Dependencies" makefile-dependency-regex  1)
+   (list "Macro Assignment" makefile-macroassign-regex 1))
+  "Imenu generic expression for makefile-mode.  See `imenu-generic-expression'.")
+
 ;;; ------------------------------------------------------------
 ;;; The following configurable variables are used in the
 ;;; up-to-date overview .
@@ -556,8 +562,8 @@
   (setq add-log-current-defun-function 'makefile-add-log-defun)
 
   ;; Imenu.
-  (make-local-variable 'imenu-create-index-function)
-  (setq imenu-create-index-function 'makefile-menu-index-function)
+  (make-local-variable 'imenu-generic-expression)
+  (setq imenu-generic-expression makefile-imenu-generic-expression)
 
   ;; Dabbrev.
   (make-local-variable 'dabbrev-abbrev-skip-leading-regexp)
@@ -1505,25 +1511,4 @@
 	    (forward-line -1)))
       (if (stringp found) found))))
 
-;; FIXME it might be nice to have them separated by macro vs target.
-(defun makefile-menu-index-function ()
-  ;; "Generate alist of indices for imenu."
-  (let (alist
-	stupid
-	(re (concat makefile-dependency-regex
-		    "\\|"
-		    makefile-macroassign-regex)))
-    (imenu-progress-message stupid 0)
-    (goto-char (point-min))
-    (while (re-search-forward re nil t)
-      (imenu-progress-message stupid)
-      (let ((n (if (match-beginning 1) 1 5)))
-	(setq alist (cons
-		     (cons (buffer-substring (match-beginning n)
-					     (match-end n))
-			   (match-beginning n))
-		     alist))))
-    (imenu-progress-message stupid 100)
-    (nreverse alist)))
-
 ;;; make-mode.el ends here