diff options
author | Justin Burkett <justin@burkett.cc> | 2016-06-13 09:45:27 -0400 |
---|---|---|
committer | Justin Burkett <justin@burkett.cc> | 2016-06-13 09:45:27 -0400 |
commit | d34fb2bdc9ad3c4d8e98d55ff677405b7b6f1d4d (patch) | |
tree | d883250a3edcbc808c0b78f1f004d5f1f5ea30d7 /lisp/use-package/use-package.el | |
parent | 153b542421c9c87e4a694f1df05c37970dee1d1c (diff) | |
download | emacs-d34fb2bdc9ad3c4d8e98d55ff677405b7b6f1d4d.tar.gz emacs-d34fb2bdc9ad3c4d8e98d55ff677405b7b6f1d4d.tar.bz2 emacs-d34fb2bdc9ad3c4d8e98d55ff677405b7b6f1d4d.zip |
Add imenu support for use-package forms
Also add require forms and group both under menu "Package".
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 |