unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: John Wiegley <johnw@gnu.org>
To: Naoya Yamashita <conao3@gmail.com>
Cc: caiohcs0@gmail.com, emacs-devel@gnu.org, stefankangas@gmail.com,
	monnier@iro.umontreal.ca
Subject: Re: Include leaf in Emacs distribution
Date: Mon, 16 Nov 2020 16:39:48 -0800	[thread overview]
Message-ID: <m27dqk3jfv.fsf@newartisans.com> (raw)
In-Reply-To: <20201116.142953.1427155279543531263.conao3@gmail.com> (Naoya Yamashita's message of "Mon, 16 Nov 2020 14:29:53 +0900 (JST)")

>>>>> Naoya Yamashita <conao3@gmail.com> writes:

> Also, getting back to the DSL of the use-package, I disagreed
> with the following points when I created leaf.

> - use-package without keywords is expanded to require

I chose this because in effect `(use-package foo)` is saying "I want to use
the package foo". What do you suggest for the default expansion?

> - Enabled even if :disabled is set to nil

I'm not sure I understand, do you mean it's disabled even when set to nil?
This sounds like an easy bug to fix.

> - That :custom receives a list instead of a dot pair

:custom is a rather late addition, and I'm open to adding a new :customize
that uses dot pairs, while deprecating :custom.

> - Complete a symbol name that has an incomplete :hook.
> (Users won't be able to do definition jumps, and also, what
> happens if there is a hook that doesn't end in -hook?)

If there's a hook that doesn't end in -hook, you just use whatever that hook's
name is. `use-package` will look for a variable with that name, if no `-hook`
variant exists.

> - that :load-path only supports paths relative to .emacs.d

You can use any path in :load-path.

> - In :bind, the syntax for binding to a local keymap is not well thought
> out, assigning it to a local keymap is difficult to understand, and it is
> incompatible with Elisp indentation.

I would like to move in the direction of deprecated :bind and allowing the
user to opt-in to general, perhaps making general the default at version 3.0.
I agree that local keymaps are not very well thought out, since they came late
in the game.

> These are difficult to solve on the use-package, because there are literally
> thousands of users of the use-package, and even the disruptive changes in
> use-package-3.0 will have an immeasurable impact.

> What do you think? Do you think we can fix a thought or some grammatical
> discrepancy that was appropriate a long time ago with a use-package?

I think, based on the comments above, that much of your suggestions can be
dealt with a way that won't break existing users: support a new :customize,
provide an option for opting in to use general instead of bind-key, etc.

I also think we could provide a "front-end" to new keywords that does let
people use defcustom to add new keywords, and those keywords would be injected
into the existing system, say based on a position keyword specified in the
defcustom. What do you think of that?

> (When you say yes, I'm willing to help. The question is, can the user bear
> this pain?)

Let's see what we can do! I'd almost always rather collaborate than compete.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2



  reply	other threads:[~2020-11-17  0:39 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-08  1:37 Include leaf in Emacs distribution Naoya Yamashita
2020-10-08  9:00 ` Ergus
2020-10-08  9:22   ` Naoya Yamashita
2020-10-10 10:11     ` Eli Zaretskii
2020-10-11  5:24       ` Richard Stallman
2020-10-11  8:39         ` Naoya Yamashita
2020-10-11  9:52           ` Thibaut Verron
2020-10-11 16:50             ` Naoya Yamashita
2020-10-11 17:12               ` Thibaut Verron
2020-10-12  2:10                 ` Naoya Yamashita
2020-10-12 20:23                   ` Ergus via Emacs development discussions.
2020-10-11 17:02           ` Stefan Kangas
2020-10-11 16:51   ` Stefan Kangas
2020-10-12 20:53     ` Mingde (Matthew) Zeng
2020-10-11 17:22 ` Stefan Kangas
2020-10-12  1:35   ` Naoya Yamashita
2020-10-12 22:13     ` Stefan Kangas
2020-10-12 22:19       ` Qiantan Hong
2020-10-12 22:39       ` Caio Henrique
2020-10-13 13:23         ` Stefan Monnier
2020-10-13 14:14           ` Thibaut Verron
2020-10-13 14:29             ` Stefan Monnier
2020-10-13 15:29               ` Thibaut Verron
2020-10-18  9:32                 ` Phil Sainty
2020-10-13 15:25           ` Caio Henrique
2020-10-23  2:37             ` Naoya Yamashita
2020-10-23  3:41               ` John Wiegley
2020-10-23 14:33                 ` Stefan Monnier
2020-10-23 15:53                   ` Naoya Yamashita
2020-10-23 16:46                     ` Warnings in init files (was: Include leaf in Emacs distribution) Stefan Monnier
2020-10-23 18:11                     ` Include leaf in Emacs distribution T.V Raman
2020-10-23 18:41               ` Stefan Kangas
2020-10-23 20:04                 ` John Wiegley
2020-11-16  5:29                   ` Naoya Yamashita
2020-11-17  0:39                     ` John Wiegley [this message]
2020-11-20 11:04                       ` Naoya Yamashita
2020-11-20 11:29                         ` Pankaj Jangid
2020-11-20 15:44                         ` T.V Raman

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=m27dqk3jfv.fsf@newartisans.com \
    --to=johnw@gnu.org \
    --cc=caiohcs0@gmail.com \
    --cc=conao3@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=stefankangas@gmail.com \
    /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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).