Skip to content
This repository was archived by the owner on Aug 23, 2025. It is now read-only.
This repository was archived by the owner on Aug 23, 2025. It is now read-only.

:hook forms not equivalent #1074

@just-walk

Description

@just-walk

When adding julia-snail-mode to the julia-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.

(use-package julia-snail
  :ensure t
  :custom
  (julia-snail-terminal-type :eat)
  :hook (julia-mode . julia-snail-mode)
)

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 case julia-snail-mode should be appended to julia-mode-hook.

(use-package julia-snail
  :ensure t
  :custom
  (julia-snail-terminal-type :eat)
  :hook julia-mode
)

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?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions