mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-27 19:31:38 +00:00
(makefile-imenu-generic-expression): New var.
(makefile-menu-index-function): Function deleted. (makefile-mode): Use makefile-imenu-generic-expression.
This commit is contained in:
parent
e6c0f51910
commit
db85e69ca4
@ -280,6 +280,12 @@ not be enclosed in { } or ( )."
|
||||
;; 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 @@ makefile-special-targets-list:
|
||||
(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 @@ If it isn't in one, return nil."
|
||||
(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
|
||||
|
Loading…
Reference in New Issue
Block a user