all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: phillip.lord@russet.org.uk (Phillip Lord)
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: help-gnu-emacs@gnu.org
Subject: Re: use-package
Date: Wed, 04 May 2016 17:22:41 +0100	[thread overview]
Message-ID: <87y47pg5da.fsf@russet.org.uk> (raw)
In-Reply-To: <jwvpot2eq9l.fsf-monnier+gmane.emacs.help@gnu.org> (Stefan Monnier's message of "Tue, 03 May 2016 18:28:36 -0400")

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



  parent reply	other threads:[~2016-05-04 16:22 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-02 17:07 use-package Uwe Brauer
2016-05-02 18:47 ` use-package Kaushal Modi
2016-05-03 10:47   ` use-package Uwe Brauer
2016-05-03 14:01     ` use-package Kaushal Modi
2016-05-03 22:28       ` use-package Stefan Monnier
2016-05-04  3:33         ` use-package Kaushal Modi
2016-05-04 12:09           ` use-package Stefan Monnier
2016-05-04 16:22         ` Phillip Lord [this message]
2016-05-04 16:44           ` use-package Drew Adams
2016-05-05 13:34             ` use-package Phillip Lord
2016-05-05 14:00               ` use-package Drew Adams
2016-05-05 15:56                 ` use-package Kaushal Modi
2016-05-05 16:12                   ` use-package Drew Adams
2016-05-10  9:20                     ` use-package Phillip Lord
2016-05-10  9:18                   ` use-package Phillip Lord
2016-05-11 11:42                     ` use-package Kaushal Modi
2016-05-12 21:04                       ` use-package Phillip Lord
2016-05-13 11:56                         ` use-package Stefan Monnier
2016-05-14 22:27                           ` use-package Phillip Lord
2016-05-15  3:22                             ` use-package Stefan Monnier
2016-05-13 15:38                         ` use-package Drew Adams
2016-05-16 15:16                           ` use-package Phillip Lord
2016-05-16 16:49                             ` use-package Drew Adams
     [not found]                         ` <mailman.2761.1463153947.7477.help-gnu-emacs@gnu.org>
2016-05-14  7:37                           ` use-package Rusi
2016-05-10  9:13                 ` use-package Phillip Lord
2016-05-05  9:51       ` use-package Uwe Brauer
2016-05-05 13:38         ` use-package Phillip Lord
2016-05-03 22:21 ` use-package Stefan Monnier
2016-05-05 10:15   ` use-package Uwe Brauer
2016-05-05 23:41     ` use-package Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y47pg5da.fsf@russet.org.uk \
    --to=phillip.lord@russet.org.uk \
    --cc=help-gnu-emacs@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.