Hi Stefan! I tried you solution and it works perfectly! Just make sure to save the keymap after the call to "(run-hooks 'isearch-mode-hook)", as this is where packages like "folding" installs its keymap. Juri and Stefan: While looking around the isearch code, I came up with a theory why multi-buffer search in change-log-mode no longer works. isearch adds its hook to the LOCAL pre-command-hook. As change-log-mode search change buffer and the hook is not installed in the new buffer, the user can't exit isearch. Sincerely, Anders Lindgren On Wed, Dec 4, 2013 at 5:31 AM, Stefan Monnier wrote: > > folding.el performs such initialization in > `folding-isearch-hook-function': > > > > (funcall (symbol-function 'set) > > 'overriding-terminal-local-map > folding-isearch-mode-map) > > Maybe folding.el is out of luck and will need to be updated. > > An alternative is to make isearch record the > overriding-terminal-local-map that was set "at the beginning" (which > should be folding-isearch-mode-map for the folding-isearch and > isearch-mode-map in the normal isearch), and then > change the check to > > ((not (eq overriding-terminal-local-map > isearch-saved-overriding-local-map)) > > But depending on how folding-isearch-mode-map is defined this may not be > sufficient, and changes to folding.el will be needed. > > > Stefan >