Subject: bug#11482: 24.0.96; Keep `M-s' as a prefix key for search (conflict with Gnus)

From: "Drew Adams" <[email-masked]>
Date: Wed, 16 May 2012 21:44:50 -0700

> >> Gnus could bind `gnus-summary-search-article-forward' to `M-s M-s'.
> >> It is still easy to type.
> >
> > Obviously not what I was hoping for, since, as I say, 
> > Icicles uses `M-s M-s' as a prefix key for all of its many
> > (Icicles) search commands.
> 
> For Icicles you could use a key prefix with Icicles specific 
> mnemonics like `M-s I'.

Certainly I could.  But `M-s M-s' is a _lot_ more convenient for a prefix key
than is fiddling around with first Meta then Shift (then...).  Which is why I
chose it.  As I said, there are a lot of Icicles search keys on that prefix.
Here's a taste:

M-s M-s C-l     icicle-search-pages
M-s M-s ,       icicle-tags-search
M-s M-s D       icicle-search-defs-full
M-s M-s I       icicle-imenu-full
M-s M-s J       icicle-search-bookmarks-together
M-s M-s O       icicle-search-overlay-property
M-s M-s T       icicle-search-text-property
M-s M-s X       icicle-search-xml-element-text-node
M-s M-s b       icicle-search-buffer
M-s M-s c       icicle-search-char-property
M-s M-s d       icicle-search-defs
M-s M-s f       icicle-search-file
M-s M-s i       icicle-imenu
M-s M-s j       icicle-search-bookmark
M-s M-s k       icicle-search-keywords
M-s M-s l       icicle-search-lines
M-s M-s o       icicle-occur
M-s M-s p       icicle-search-paragraphs
M-s M-s s       icicle-search-sentences
M-s M-s t       icicle-search-thing
M-s M-s w       icicle-search-word
M-s M-s x       icicle-search-xml-element
M-s M-s M-s     icicle-search-generic

Plus `M-s M-s m', which is a mode-specific Icicles search.  For example, in
Dired mode it searches the marked files, including those (marked in other Dired
buffers) in the marked subdirs, recursively.  In the `*Bookmark List*' it
searches the targets of the marked bookmarks.  In Ibuffer mode it searches the
marked buffers.  And so on.

That's a pretty good use of `M-s M-s' as a prefix key, I think.  IOW, there are
not just one or two keys on the prefix.

And Icicles was first! ;-)  Certainly there is nothing special about Gnus, that
it should get awarded the `M-s M-s' prize...

Anyway, I'd probably sooner keep `M-s M-s' as the default value of the prefix
key for Icicles users.  As I said, it's very easy for a user to customize the
existing option to change the prefix key if need be.  And it's not clear that
most Icicles users will use Gnus anyway. ;-)

> > But it does satisfy the bug report, at least: it does not 
> > make `M-s' a simple command binding.
> 
> There are more currently conflicting modes listed in 
> admin/FOR-RELEASE:
> 
>   ** Check for modes which bind M-s that conflicts with a new 
>      global binding M-s and change key bindings where necessary.
>      The current list of modes:
> 
>   2. Minibuffer binds `M-s' to `next-matching-history-element'
>      (not useful any more since C-s can now search in the history).

I don't see #2 as a problem at all.  We're talking top-level bindings, or should
be.  The only possible conflict for #2 is wrt Isearch in the minibuffer.  I
don't think that should be a criterion here.

The others you mention are all conflicts of the same sort as Gnus, and should,
IMO, be changed from `M-s' to something else.

> Like the proposed keybinding `M-s M-s' for Gnus,

Which I am not in favor of...  I mention it as an existing conflict and suddenly
it's a proposal for Gnus?

> the minibuffer could rebind `next-matching-history-element'
> to `M-s M-s'. 

There is no need to rebind the minibuffer's current use of `M-s', IMO.

> And perhaps Shell could bind `comint-history-isearch-forward-regexp' to `M-s 
> M-s' as well.

So now you want to completely appropriate the key I complained about Gnus
conflicting with, creating even more conflicts for Icicles?  Gee, thanks.

I suppose I should take comfort in the adage that imitation is a form of
flattery.  But I would prefer that Emacs just leave `M-s M-s' well enough alone.

> However, I have doubts about rebinding `rmail-search' to `M-s M-s'...

I suggest to leave `M-s M-s' alone - no default binding, and just take care of
this bug, which is about NOT binding commands to `M-s', now that it is a prefix
key for search.