Emacs bug report logs - #267
dired-do-query-replace-regex replace ALL

Previous Next

Package: emacs;

Reported by: xah lee <xah <at> xahlee.org>

Date: Sat, 17 May 2008 10:35:03 UTC

Severity: wishlist

To reply to this bug, email your comments to 267 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#267; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to xah lee <xah <at> xahlee.org>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: xah lee <xah <at> xahlee.org>
To: emacs-pretest-bug <at> gnu.org
Subject: 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  <at>  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
  xah <at> xahlee.org
∑ http://xahlee.org/

Severity set to `wishlist' from `normal' Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Tue, 01 Jul 2008 01:05:06 GMT) Full text and rfc822 format available.

Previous Next


Emacs bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.