In GNU Emacs 31.0.50 (build 2, x86_64-pc-linux-gnu, X toolkit, cairo version 1.18.0, Xaw3d scroll bars) Repository revision: f1e29506822739208e5706b733cfd713c5f37cfd
Ref: https://lists.gnu.org/archive/html/emacs-devel/2024-09/msg00071.html On carrying out the following steps ``` mkdir /dev/shm/test-foo -pv for i in $(seq 1 40); do ln -sv /foo/$i /dev/shm/test-foo; done (dired "/dev/shm/test-foo") (wdired-change-to-wdired-mode) (replace-regexp "foo" "bar") ``` It is seen that only the files in the visible portion of the buffer are affeceted by the replace-regexp. The attached patch implements the suggestion in https://lists.gnu.org/archive/html/emacs-devel/2024-09/msg00079.html and appears to fix the problem. (However there still seems to be a boostrap related problem with "Match data clobbered by buffer modification hooks" when wdired is first loaded)
>From 05c8405a30a36098c55e4f31a1ec339719ccbcb3 Mon Sep 17 00:00:00 2001 From: Madhu <enom...@net.meer> Date: Wed, 4 Sep 2024 06:55:44 +0530 Subject: [PATCH] * lisp/wdired.el: (wdired-change-to-wdired-mode): call font-lock-ensure so replace-regexp with wdired-search-replace-filenames t works on the whole buffer. --- lisp/wdired.el | 1 + 1 file changed, 1 insertion(+) diff --git a/lisp/wdired.el b/lisp/wdired.el index 4b6a9c14b20..dd8b8640a89 100644 --- a/lisp/wdired.el +++ b/lisp/wdired.el @@ -264,6 +264,7 @@ wdired-change-to-wdired-mode ;; hidden partly, so we remove filename invisibility spec ;; temporarily to ensure filenames are visible for editing. (dired-filename-update-invisibility-spec) + (font-lock-ensure) (run-mode-hooks 'wdired-mode-hook) (message "%s" (substitute-command-keys "Press \\[wdired-finish-edit] when finished \ -- 2.46.0.27.gfa3b914457