GNU bug report logs - #25318
24.5; Put `M-s' on a prefix keymap in Isearch

Previous Next

Package: emacs;

Reported by: Drew Adams <drew.adams <at> oracle.com>

Date: Sun, 1 Jan 2017 04:58:01 UTC

Severity: wishlist

Tags: wontfix

Found in version 24.5

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Drew Adams <drew.adams <at> oracle.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 25318 <at> debbugs.gnu.org
Subject: bug#25318: 24.5; Put `M-s' on a prefix keymap in Isearch
Date: Sun, 29 Sep 2019 11:45:34 -0700 (PDT)
> > Currently, `isearch-mode-map' has a number of key sequences bound in it
> > that begin with prefix-key `M-s':...
> > Since these keys do not form any _specific_ grouping, I'd propose a
> > name for the keymap such as `isearch-misc-map' (better than nothing).
> 
> As you point out, these commands aren't functional grouping of any kind,
> so I don't think it makes sense to put them on a separate map.  It's not
> like anybody would want to put all those functions somewhere else, which
> is the primary reason to have sub-keymaps.

They are all on the same prefix key.  So yes, there is a good reason why someone might "want to put all those functions somewhere else": to put them on another prefix key.

That's the raison d'etre for a prefix-map variable: to be able to easily reuse or move all of its bindings at once, e.g. to another prefix key.

If there's a reason why each of the commands is on prefix key `M-s' then the same reason applies for putting them on another prefix key - move/reuse them all, together.

Whether one or more of those commands shouldn't really be on the same prefix key is a separate question, for the maintainers of isearch.el to consider.  It's unrelated to the need/desire to grab put all of the `M-s' commands on another (additional or replacement) prefix key.

> > This will let users and other libraries move the prefix keymap to a
> > different prefix key if they want, or define `M-s C-h' to show only the
> > bindings on prefix `M-s', and so on.

Clear, no?  Both the 1st part and the 2nd, regarding `M-s C-h'.  The desire to offer `M-s C-h' is an additional reason to add a prefix-key variable for prefix key `M-s'.

> > As it stands now, a 3rd-party library cannot do what this bug report
> > requests, because there are likely other libraries, which may be loaded
> > before it, and which bind `M-s <whatever' directly in
> > `isearch-mode-map'.  Those bindings would be wiped out by a later
> > binding of `M-s' to a prefix map.

Also clear, no?

> > But if this is done in core Emacs then there will be no such problem
> > (there is no problem if a library binds `M-s <whatever>' directly in
> > `isearch-mode-map' AFTER the prefix map has been placed on
> > `isearch-mode-map).
> 
> So your use case is that you want to bind `M-s' to a prefix map
> out-of-tree?

Sorry, I don't know what "out-of-tree" means.

See above for the reasons for this request.  It's not about wanting to bind `M-s'.  It's about wanting to bind another prefix key.  And it's about providing `M-s C-h'.  The prefix key should have a keymap, usable by users and libraries.




This bug report was last modified 5 years and 237 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.