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

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

Re: use-package


From: Phillip Lord
Subject: Re: use-package
Date: Wed, 04 May 2016 17:22:41 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux)

Stefan Monnier <monnier@iro.umontreal.ca> writes:

>> use-package speeds up startup times by delaying the loading the packages
>> that you can afford to..
>
> In my point of view, the job that use-package does is only useful when
> the corresponding package is poorly setup to start with.
>
> IOW, if use-package is helpful, usually it indicates a shortcoming in
> the package or in the way the package is installed.

I was curious about that "usually". So I had a quick look at my own
.emacs (I use use-package everywhere in it).

You are just about right -- it's about 50% of my cases that a
use-package form contains what is essentially a fix.

My main use for use-package that I think is good are:

- auto-install from ELPA
- using defer to idle loading.
- switching global modes on as well as loading them
- diminishing these global modes
- configuration -- for example, I have global bindings for org-mode
- lots of hooks
- setting load paths for my own packages which are *not* package
  installed


There are some issue here that could do with long term fixes.

For example, diminishing minor modes -- I think we have overloaded the
functionality of minor modes; many (company say, or eldoc) you either
want on or off. Do I really need mode-line space to be taken up telling
me that company is one? And is the mode-line the only place we can
display this information?

Global binding -- key-binding space is precious in Emacs, but perhaps
with tools like hydra, could allow better use of longer bindings.

Lots of hooks -- I regularly hear new users of Emacs complain "well, it
doesn't go X" where X are things like, for example, info on function
arguments or completion. Emacs does do both of these, but you have to
turn them on; perhaps, core Emacs should be more adventurous with its
defaults.

load-path for my own packages: I develop without installing and eval as
I go, but this means I develop source in one way and users get another.
Perhaps, we need better support given some lisp package source, for
rapidly generating a package and installing it, directly in
Emacs-lisp-mode.

Just some thoughts.

Phil



reply via email to

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