Eu uso use-package
para organizar o meu init.el
. Percebi que todas as minhas declarações usam :ensure t
. Um exemplo de declaração é:
(use-package auto-complete
:ensure t
:diminish auto-complete-mode
:init (global-auto-complete-mode t))
Como todas as minhas use-package
declarações usam :ensure t
, existe uma maneira de modificar use-package
para incluir implicitamente :ensure t
sem modificar diretamente o use-package.el? Idealmente, eu gostaria de não usar uma função com nome diferente.
Estou um pouco familiarizado com advice-add
, mas minha impressão é que isso é usado para adicionar um gancho ou ambiente a uma função, não para modificar a função ou a macro em si.
elisp-macros
bsamek
fonte
fonte
use-package
na verdade é uma macro Lisp. Provavelmente, você pode criar sua própriamy-use-package
macro, que se expande parause-package
as configurações padrão de sua preferência.:filter-args
conselhos para adicionar palavras-chave como:ensure t
?Respostas:
Com base no comentário do @ politza de que (é claro!) Os conselhos funcionam com macros, encontrei algo que parece funcionar.
Observe que este exemplo está usando as funções de orientação do Emacs 24.4. Ainda não descobri qual seria o equivalente para versões mais antigas do Emacs.
fonte
require
um recurso que o acompanha ou por umeval-when-compile
.A versão mais recente do
use-package
possui o seguinte para habilitar esse comportamento para todos os pacotes:Apenas no caso de alguém ter a mesma pergunta.
fonte