help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: req-package


From: Alexander Shukaev
Subject: Re: req-package
Date: Thu, 13 Aug 2015 18:37:11 +0200

>> Consider my previous one:
>> (use-package recentf
>>   :defer
>>   :commands
>>   (recentf-mode)
>>   :config
>>   (with-eval-after-load 'evil
>>     (evil-make-overriding-map recentf-dialog-mode-map 'motion)
>>     (evil-set-initial-state 'recentf-dialog-mode 'motion)
>>     (evil-ex-define-cmd "rfm[enu]" #'recentf-open-files)))
>
> Can you explain what' are the issues here?
>
> I guess one issue is with
>
>    (evil-make-overriding-map recentf-dialog-mode-map 'motion)
>
> since this can only be used after both recentf and evil are loaded.
> But I don't see where use-package req-package helps you with this
> problem (which you instead solve with with-eval-after-load, IIUC).
>
> Can you clarify?

Right now, `use-package' is nothing more, but a convenient way to
structure configurations of packages, especially in terms of autoloads
and deferring. Yes, right now it's more cosmetics and sugar, rather
than something that one cannot live without.  Still, I think there
were plenty of good examples in another thread (with the `:mode'
keyword, for instance).

In this thread, however, we want to go deeper and discuss package
"configuration-time" dependencies (which are not covered by
`use-package' by default), and `req-package' offers some features in
this regard, though I still don't quite understand them
comprehensively.  The biggest issue, that is not solved anywhere
(neither vanilla Emacs nor `use-package' provide facilities for this)
out of the box, is the one that I described two posts earlier with the
example on `a' and `b'.  Did you understand the issue?  If
`req-package' solves it, then this might be a good step forward in
evolving `use-package' and making it a "really" handy tool for
managing complex configurations.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]