--- Begin Message ---
Subject: |
28.2; Hard-coded M-sff key binding in dired-aux.el |
Date: |
Sat, 14 Jan 2023 18:44:06 +0200 |
I have set "(dired-isearch-filenames t)", and have rebound "M-s" to
something that is not a keymap (other-window). The problem appears
when I try to "isearch" in a Dired buffer. Then the following code:
(defun dired-isearch-filenames-end ()
"Clean up the Dired file name search after terminating isearch."
(define-key isearch-mode-map "\M-sff" nil)
(dired-isearch-filenames-mode -1)
(remove-hook 'isearch-mode-end-hook #'dired-isearch-filenames-end t)
(unless isearch-suspended
(kill-local-variable 'dired-isearch-filenames)))
runs and fails, because it can not bind to "M-sff". It works when I
change "M-sff" to something that starts with a keymap-binding. This is
also a problem in Emacs 27.
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#60815: 28.2; Hard-coded M-sff key binding in dired-aux.el |
Date: |
Tue, 17 Jan 2023 19:24:10 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) |
>> Oh, my bad! Actually, it is: (define-key isearch-mode-map (kbd "M-s")
>> 'other-window)
>
> And that is the problem: you should bind it in the global map, not in
> isearch-mode-map. The Isearch mode map has several key sequences
> hard-coded that begin with the M-s key, so binding M-s in the Isearch
> keymap is not recommended.
Then I guess this report can be closed, done.
--- End Message ---