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

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

Re: PROPOSAL: Repurpose one key and reserve it for third-party packages


From: Gregory Heytings
Subject: Re: PROPOSAL: Repurpose one key and reserve it for third-party packages
Date: Sat, 13 Feb 2021 21:18:55 +0000


Sorry for protracting the conversation, I just think the interpretation of the guideline is important.

Not for the proposal itself.

Well yes, because if packages may bind to C-c *with* the consent of users, the need for a special package map decreases.


As I said, IMO it does not, it can't work as a long-term solution, 26 letters is simply not enough. Anyway, neither I nor you can decide what the "correct" understanding of that guideline is, so I suggest we stop arguing. A proposal has been made, we'll see what the maintainers do with it.


The way I see it is that there is no need for a value like 'best, because this whole idea is that magit wants to bind their keys by default, but it shouldn't bind it to C-c g. If you're going to set magit-define-global-key-bindings to 'best, you might just as well directly bind magit-status to C-c g. I think it would be totally ok for Magit to have the default value set to nil, and then bind to C-c g, but that undermines their entire motivation, as there would be no default binding.


Do you use Magit? Magit binds three commands globally when magit-define-global-key-bindings is t (its default value): magit-status to C-x g, magit-dispatch to C-x M-g, and magit-file-dispatch to C-c M-g. Magit recommends to rebind the last one (magit-file-dispatch) to C-c g, and there is no special value for magit-define-global-key-bindings, and no code elsewhere in Magit, to do that automatically.


Btw., are there any other examples of packages binding global keys by default?


There are indeed (for example Drew's packages), but even if there were none, that wouldn't change anything, because there are lots and lots of packages that recommend their users to install such global bindings manually.



reply via email to

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