[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: use-package.el -> Emacs core
From: |
Kaushal Modi |
Subject: |
Re: use-package.el -> Emacs core |
Date: |
Tue, 10 Nov 2015 10:56:08 -0500 |
I would also fit in the cautious category, leaning towards against
(see below for what I mean).
My biggest concern is the duplication and confusion for end-user code.
define-key vs bind-key. As João mentioned in a different context, I
feel this kind of syntactic sugar is probably not OK for end-user
code; providing many options increases the complexity when debugging
code for the user and the maintainer.
My suggestion would be to first merge bind-key into define-key and
sister defuns/macros. If that is feasible, then we can think if
use-package can be merged.
Biggest concerns with bind-key
(1) Plain bind-key macro is not very much different for define-key or
global-set key. I believe its addition is not necessary in the core.
(2) bind-key*, bind-keys, bind-keys* would be good additions but
should they be refactored as define-key* (while retaining the original
define-key arg order) + global-set-key*, define-keys and define-keys*?
(3) How would describe-personal-bindings work? Because if bind-key is
made part of the core, we cannot control which internal package makes
use of it. Write now the only way we know that the user
added/redefined a key is if they made use of one of the bind-key
macros. That luxury will go away once it is part of the core.
About use-package: I also have a opinion that the user will understand
less of how requires, autoloads, eval-after-loads and idle timers work
if they start using use-package as the first thing.
Until we have a solid solution for the above, my vote is against for
both bind-key and use-package.
With that said, would adding bind-key and use-package to GNU Elpa be a
better option?
If we do that,
- There is no concern of duplication and confusion among users that I
mentioned above.
- Maintainers do not have to worry about the use/debug of
use-package+bind-key in the core packages.
- When helping out users debug something, the instructions for
defining keys are pretty consistent: either define-key or
global-set-key (usually the latter) vs the options of
define-key/global-set-key/bind-key/bind-key*/bind-keys/bind-keys*
- Also only the users who know what they are doing would install these packages.
- use-package + bind-key would still reach a wider user-base as not
all users add Melpa to package-archives
- RE: use-package.el -> Emacs core, (continued)
- RE: use-package.el -> Emacs core, Drew Adams, 2015/11/10
- Re: use-package.el -> Emacs core, David Kastrup, 2015/11/10
- Re: use-package.el -> Emacs core, Oleh Krehel, 2015/11/10
- Re: use-package.el -> Emacs core, João Távora, 2015/11/10
- Re: use-package.el -> Emacs core, John Wiegley, 2015/11/10
- Re: use-package.el -> Emacs core, João Távora, 2015/11/10
- Re: use-package.el -> Emacs core, John Wiegley, 2015/11/10
- Re: use-package.el -> Emacs core, João Távora, 2015/11/10
- Re: use-package.el -> Emacs core, John Wiegley, 2015/11/10
- Re: use-package.el -> Emacs core, João Távora, 2015/11/10
- Re: use-package.el -> Emacs core,
Kaushal Modi <=
- Re: use-package.el -> Emacs core, John Wiegley, 2015/11/10
- RE: use-package.el -> Emacs core, Drew Adams, 2015/11/10
- Re: use-package.el -> Emacs core, John Wiegley, 2015/11/10
- Re: use-package.el -> Emacs core, Kaushal Modi, 2015/11/10
- Re: use-package.el -> Emacs core, John Wiegley, 2015/11/10
- RE: use-package.el -> Emacs core, Drew Adams, 2015/11/10
- Re: use-package.el -> Emacs core, John Wiegley, 2015/11/10
- RE: use-package.el -> Emacs core, Drew Adams, 2015/11/10
- Re: use-package.el -> Emacs core, Kaushal Modi, 2015/11/10
- Re: use-package.el -> Emacs core, David Kastrup, 2015/11/10