mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-16 17:24:23 +00:00
Improve imenu support
Instead of using defvar for lisp-mode-symbol-regexp, wait until lisp-mode is loaded and check for its existence to avoid making use-package the place where this variable is declared.
This commit is contained in:
parent
ff0a5e281d
commit
75bdb87833
1 changed files with 11 additions and 13 deletions
|
|
@ -177,19 +177,17 @@ Must be set before loading use-package."
|
|||
:group 'use-package)
|
||||
|
||||
(when use-package-enable-imenu-support
|
||||
;; Not defined in Emacs 24
|
||||
(defvar lisp-mode-symbol-regexp
|
||||
"\\(?:\\sw\\|\\s_\\|\\\\.\\)+")
|
||||
(add-to-list
|
||||
'lisp-imenu-generic-expression
|
||||
(list "Package"
|
||||
(purecopy (concat "^\\s-*("
|
||||
(eval-when-compile
|
||||
(regexp-opt
|
||||
'("use-package" "require")
|
||||
t))
|
||||
"\\s-+\\(" lisp-mode-symbol-regexp "\\)"))
|
||||
2)))
|
||||
(eval-after-load 'lisp-mode
|
||||
`(let ((sym-regexp (or (bound-and-true-p lisp-mode-symbol-regexp)
|
||||
"\\(?:\\sw\\|\\s_\\|\\\\.\\)+")))
|
||||
(add-to-list
|
||||
'lisp-imenu-generic-expression
|
||||
(list "Packages"
|
||||
(concat "^\\s-*("
|
||||
,(eval-when-compile
|
||||
(regexp-opt '("use-package" "require") t))
|
||||
"\\s-+\\(" sym-regexp "\\)")
|
||||
2)))))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;
|
||||
|
|
|
|||
Loading…
Reference in a new issue