Fix :hook in 'use-package'
* lisp/use-package/use-package-core.el (use-package-handler/:hook): Support mode variables in :hook declarations. (Bug#72993)
This commit is contained in:
parent
c1cd036d27
commit
e4dc6711b0
1 changed files with 10 additions and 7 deletions
|
@ -1376,13 +1376,16 @@ enable gathering statistics."
|
|||
(when fun
|
||||
(mapcar
|
||||
#'(lambda (sym)
|
||||
(if (boundp sym)
|
||||
`(add-hook (quote ,sym) (function ,fun))
|
||||
`(add-hook
|
||||
(quote ,(intern
|
||||
(concat (symbol-name sym)
|
||||
use-package-hook-name-suffix)))
|
||||
(function ,fun))))
|
||||
(let ((symname (symbol-name sym)))
|
||||
(if (and (boundp sym)
|
||||
;; Mode variables are usually bound, but
|
||||
;; their hooks are named FOO-mode-hook.
|
||||
(not (string-suffix-p "-mode" symname)))
|
||||
`(add-hook (quote ,sym) (function ,fun))
|
||||
`(add-hook
|
||||
(quote ,(intern
|
||||
(concat symname use-package-hook-name-suffix)))
|
||||
(function ,fun)))))
|
||||
(use-package-hook-handler-normalize-mode-symbols syms)))))
|
||||
(use-package-normalize-commands args))))
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue