bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#267: dired-do-query-replace-regex replace ALL


From: xah lee
Subject: bug#267: dired-do-query-replace-regex replace ALL
Date: Sat, 17 May 2008 03:26:26 -0700


Emacs suggestion:

when in dired mode in the processing of doing dired-do-query-replace- regexp (shortcut Q), it offers the ability to do replacement without asking on the current file, by pressing the ! key, but it would be nice to have:

(1) the ability to do ALL replacements on ALL files without further asking.
(2) the ability to not do any replacement on the current file.

I use dired-do-query-replace-regexp few times a week, typically on tens of files, but maybe once in a month i do it over hundreds or thuosands of files on a website.

Often, after some replacement, it becomes obvious that it is safe to do ALL replacement for ALL files. When this is needed, typically i can just hold down the ! key. But when the number of files is hundreds or more, typically there will be seveal 5 second delays where i assume emacs is doing garbage collection. The bottom line is that, holding down ! is not a good solution because i end up having to wait a total of maybe 20 or 30 seconds during the whole operation.

For this reason, i often abort the operation, then switch to a perl or python script i've written that does blind find/replace on all files. This will finish the job on thousands of files within 5 seconds. But I couldn't reply on this since often i need interactively see and confirm the replacements, which emacs provides. (emacs also lets me view the change file afterwards or decide to save them...etc, which i won't be able to do with perl...)

So, it would be nice, if emacs's dired-do-query-replace-regexp offer the option to do all replacement on all files.

Perhaps this can be introduced as pressing the @ key.

For suggestion item (2), the scenario is that sometimes i have a big file and it is apparent that i don't want any replacement to happen on that file. As things are, i have to repeatedly pressing n while paying attention not to go over to the next file. This is a tiring process.

dired-do-query-replace-regexp is very nice and i've been using it for 2 years. For just tens of files the above isn't a problem. But when doing few hundred files, and on tens of replacement pairs (i.e. using dired-do-query-replace-regexp tens of times, each time on hundreds of files), the above features seems a very good one to have. It seems also a logical feature complementating the various recursive edit and edit-replacement-text currently provided by emacs.

PS some background... I'm doing on static websites, which has few hundred or thousand files, such as systimatically changing a style markup, etc. In the past 2 days, i spent entire 2 days using dired-do- query-replace-regexp (in combination with perl and python script).

Thanks.

  Xah
  address@hidden
∑ http://xahlee.org/

reply via email to

[Prev in Thread] Current Thread [Next in Thread]