From: "Stephen J. Turnbull" <stephen@xemacs.org>
To: Helmut Eller <eller.helmut@gmail.com>
Cc: Artur Malabarba <bruce.connor.am@gmail.com>,
emacs-devel <emacs-devel@gnu.org>
Subject: Re: Package initialization
Date: Mon, 20 Jul 2015 00:52:09 +0900 [thread overview]
Message-ID: <21931.51113.826895.663216@uwakimon.sk.tsukuba.ac.jp> (raw)
In-Reply-To: <m2si8k1uh4.fsf@gmail.com>
Helmut Eller writes:
> I don't see how. Either (require 'slime-autoloads) calls slime-setup or
> not.
In XEmacs it would be considered pollution, and we'd change the XEmacs
version of the package so that the autoloads do not call slime-setup.
XEmacs (and I assume Emacs ;-) is designed to be usable on a multiuser
system, and I have yet to find a package that absolutely everybody
thinks should be enabled. For example, you'd think AUCTeX would be a
no-brainer in this day and age, but as far as I know RMS doesn't use
it, and there is at least one long since inactive XEmacs developer who
didn't use AUCTeX and objected vehemently to making it the default
TeX-mode if available. Ditto cc-mode (although that person did
eventually switch).
Also, any of the schemes that I propose would mean that emacs -u
disables slime except for autoloads (I assume package autoloads can be
defeated some other way, as in XEmacs). This is an important feature
for debugging.
> Calling it lazily when a SLIME related command is invoked the
> first time would kinda work for SLIME, but it would be rather strange
> that say the slime-connect command implicitly adds hooks to
> lisp-mode-hook.
Why is that stranger than saying that slime-setup implicitly adds
hooks to lisp-mode-hook? Or stranger than saying that simply
installing the SLIME package on your system implicitly adds hooks to
lisp-mode-hook?
> In general, lazy initialization would also not work well if those
> autoloaded commands should be bound to keys because before the
> first invocation the keys would not be bound.
Why would you expect them to be bound? The existence of a package
doesn't necessarily mean that the user wants it invoked at startup.
If the user does want those keys bound, I don't see why it's a problem
to have the user put a call to slime-setup in .emacs, or put it on
lisp-mode-hook itself.
If users really object to that, well, you're right -- the XEmacs
policy would not satisfy their requirements. But in a setup where
package installation implies package initialization, putting a call to
slime-setup in .emacs looks quite silly.
What I think would be nice for this kind of situation would be to have
a way for SLIME to add slime-setup to a checklist of defcustom options
for lisp-mode-hook. Then users who do always want slime can use
Customize to enable it "permanently", and it's not in their .emacs.
Since slime-setup should be idempotent, it doesn't hurt to put it in
.emacs even if it would be invoked some other way (including by the
Customized lisp-mode-hook.
next prev parent reply other threads:[~2015-07-19 15:52 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-18 15:56 Package initialization Helmut Eller
2015-07-18 17:16 ` Artur Malabarba
2015-07-18 19:00 ` Helmut Eller
2015-07-18 19:20 ` Artur Malabarba
2015-07-18 22:56 ` Helmut Eller
2015-07-18 23:07 ` Artur Malabarba
2015-07-18 23:29 ` Helmut Eller
2015-07-18 23:48 ` Artur Malabarba
2015-07-19 0:13 ` Stephen J. Turnbull
2015-07-19 7:23 ` Helmut Eller
2015-07-19 8:10 ` Artur Malabarba
2015-07-19 9:58 ` Helmut Eller
2015-07-19 10:07 ` David Kastrup
2015-07-19 10:11 ` Helmut Eller
2015-07-19 10:27 ` David Kastrup
2015-07-19 10:33 ` Helmut Eller
2015-07-19 10:38 ` David Kastrup
2015-07-19 10:41 ` Helmut Eller
2015-07-19 10:51 ` David Kastrup
2015-07-19 10:11 ` Artur Malabarba
2015-07-19 10:14 ` Helmut Eller
2015-07-19 10:35 ` bruce.connor.am
2015-07-19 10:48 ` Helmut Eller
2015-07-19 11:35 ` Artur Malabarba
2015-07-19 10:54 ` David Kastrup
2015-07-19 11:34 ` Artur Malabarba
2015-07-19 12:09 ` David Kastrup
2015-07-19 12:33 ` Artur Malabarba
2015-07-19 16:54 ` Eli Zaretskii
2015-07-19 15:52 ` Stephen J. Turnbull [this message]
2015-07-19 16:37 ` Helmut Eller
2015-07-20 1:30 ` Stephen J. Turnbull
2015-07-20 17:01 ` Helmut Eller
2015-07-20 17:25 ` Chad Brown
2015-07-20 18:12 ` Helmut Eller
2015-07-20 19:09 ` Artur Malabarba
2015-07-20 20:54 ` Dmitry Gutov
2015-07-21 5:59 ` Stephen J. Turnbull
2015-07-21 6:40 ` Helmut Eller
2015-07-25 4:42 ` Alexis
2015-07-19 16:51 ` Eli Zaretskii
2015-07-20 0:11 ` Stefan Monnier
2015-07-20 16:33 ` Helmut Eller
2015-07-20 22:25 ` Stefan Monnier
2015-07-21 5:53 ` Stephen J. Turnbull
2015-07-21 6:45 ` David Kastrup
2015-07-21 6:05 ` Helmut Eller
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=21931.51113.826895.663216@uwakimon.sk.tsukuba.ac.jp \
--to=stephen@xemacs.org \
--cc=bruce.connor.am@gmail.com \
--cc=eller.helmut@gmail.com \
--cc=emacs-devel@gnu.org \
/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.