Subject: bug#15200: isearch-other-meta-char and shift

From: Juri Linkov <[email-masked]>
Date: Wed, 28 Aug 2013 19:42:28 +0300

> My hope is that these kinds of problems would all disappear if we
> re-implemented isearch using set-temporary-overlay-map, which would save
> us from having to re-read events.

After installing small fixes I'm not closing this report
while trying to re-implement it using set-temporary-overlay-map.

IIUC, the biggest challenge is to add a new argument
to set-temporary-overlay-map that will define a predicate
to decide whether this-command-keys should be applied to
key bindings of the overriding temporary map or passed through
to other less specific keymaps.  This predicate is necessary
when the decision to select a keymap to apply keys
depends on a property put on a bound command's symbol
like isearch-scroll properties.

Such a predicate could be implemented as a hook-like variable
or with the help of add-function like is used now for
isearch-filter-predicate.  Then additional predicates
could be added to the almost empty default function
isearch-other-control-char.