Open just-walk opened 8 months ago
Saw a similar thing with symex-mode and emacs-lisp-mode where
(use-package symex
:ensure t
:hook (emacs-lisp-mode . symex-mode))
→ emacs-lisp-mode-hook = (symex-mode)
but
(use-package symex
:ensure t
:hook emacs-lisp-mode)
→ emacs-lisp-mode-hook = (symex symex-mode)
When adding
julia-snail-mode
to thejulia-mode
hook, different forms of the use-package syntax that should have "equivalent" behavior are in fact different. (https://www.gnu.org/software/emacs/manual/html_mono/use-package.html#Hooks)This first form does what I would expect it to do.
The variable
julia-mode-hook
then evaluates to(julia-snail-mode)
.This second form shortens the hook declaration. By the documentation, this should append
-mode
to the package name and add it to the hook specified. In this casejulia-snail-mode
should be appended tojulia-mode-hook
.Instead, variable
julia-mode-hook
evaluates to(julia-snail)
.What's going on? Is this a bug in use-package, or am I misunderstanding the docs?