|
From: | Dmitry Gutov |
Subject: | bug#41890: 28.0.50; [PATCH]: Add bindings for project.el |
Date: | Thu, 18 Jun 2020 01:23:25 +0300 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 |
On 17.06.2020 19:33, Eli Zaretskii wrote:
On 17.06.2020 17:27, Eli Zaretskii wrote:I mean it isn't preloaded, but is loaded on demand.Okay, but... the commands in the keymap will all be autoloaded. So whenever somebody calls them, the aforementioned optional package will get loaded. I'm not sure what the practical issue with that is.I don't see how this is related to the issue at hand. All I'm saying is that a package, including its key bindings, shouldn't be loaded until some of its feature is invoked.
But if we autoload the bindings definition forms, wouldn't that have essentially the same effect?
Therefore, the best place for a package's keybindings is in the package itself. What you describe seems to fit this principle.
Okay.
The issue on the other side (keeping the keymap definition in project.el) is that it's an ELPA package as well. And so far we've said that ELPA packages shouldn't significantly modify a user's Emacs just by the virtue of being installed.We could make the keybindings autoloaded without having them defined them when the package loads, couldn't we? By having the define-key on the same line as the autoload cookie, like bookmark.el does.
That would generally be considered problematic because the keymap would take effect right after the user updates to the newest version of project.el. Because package.el also compiles and evaluates autoloads.
Anyway, I'll apply this patch now, but we can continue this discussion.
[Prev in Thread] | Current Thread | [Next in Thread] |