diff options
Diffstat (limited to 'lisp/use-package/use-package.el')
-rw-r--r-- | lisp/use-package/use-package.el | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/lisp/use-package/use-package.el b/lisp/use-package/use-package.el index 7dba2b5dcf0..2076d5858fa 100644 --- a/lisp/use-package/use-package.el +++ b/lisp/use-package/use-package.el @@ -44,6 +44,7 @@ (require 'diminish nil t) (require 'bytecomp) (eval-when-compile (require 'cl)) +(eval-when-compile (require 'regexp-opt)) (declare-function package-installed-p 'package) @@ -167,6 +168,26 @@ then your byte-compiled init file is as minimal as possible." :type 'boolean :group 'use-package) +(defcustom use-package-enable-imenu-support nil + "If non-nil, adjust `lisp-imenu-generic-expression' to include +support for finding `use-package' and `require' forms. + +Must be set before loading use-package." + :type 'boolean + :group 'use-package) + +(when use-package-enable-imenu-support + (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))) + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Utility functions |