unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
To: "Emacs-Devel" <emacs-devel@gnu.org>
Subject: `Q' in Dired - be able to skip the rest of one file and move on to the next
Date: Tue, 1 Jan 2008 23:34:14 -0800	[thread overview]
Message-ID: <DHEEKFAFJEFOJHLCFPFDKEFCCDAA.drew.adams@oracle.com> (raw)

Let me know if I'm overlooking something, but AFAIK:

`Q' in Dired just runs query-replace-regexp over the marked files. In
effect, it treats all of those files together as one big file. That means,
for instance, that you cannot use it to easily confirm a couple changes in
one file and then skip the other occurrences in that file, move on to the
next file, and so on.

AFAICT, you must always visit each occurrence in one file before moving on
to the next file. (Or else you can of course quit altogether, unmark the
file you're through with, and then hit `Q' again.)

Is this correct? If so, what do you use for this? I used to use `Q' quite a
lot, but it's been a while. I guess I'm so used to Icicles that I've gotten
spoiled. (In Icicles, you can directly access search hits that you might
want to replace, without going through them in order, and you can remove
selected hits from consideration, including all those remaining for a given
file.)

What about adding something to `Q' that lets you move on to the next file,
without quitting query-replacing altogether?

I suggested a while back that you be able to do replacement using `grep'
output, and IIRC Kim implemented that, so I guess that using that feature
together with `grep-find' would provide something like what I'm suggesting,
but it would still be good to be able to do it from within `Q'.

I'm surprised that this isn't already available (if it isn't), since it
seems like a natural extension of query-replace to multiple files: You can
skip the rest of a normal query-replace, so you should be able to skip q-r
for the rest of a file, but without quitting q-r altogether.

             reply	other threads:[~2008-01-02  7:34 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-02  7:34 Drew Adams [this message]
2008-01-03  9:50 ` `Q' in Dired - be able to skip the rest of one file and move on to the next Richard Stallman
2008-01-03 10:11   ` Andreas Schwab
2008-01-03 10:27     ` Miles Bader
2008-01-03 16:17       ` Drew Adams
2008-01-03 15:56   ` Luc Teirlinck
2008-01-03 16:18     ` `Q' in Dired - be able to skip the rest of one file and move onto " Drew Adams
2008-01-03 21:32       ` Juri Linkov
2008-01-04  2:11         ` Bastien
2008-07-15  0:27           ` Juri Linkov
2008-07-15  7:38             ` Lennart Borgman (gmail)
2008-07-20  0:33               ` Juri Linkov
2008-01-05  5:54       ` Richard Stallman
2008-01-08  0:21         ` Juri Linkov
2008-01-08  0:33           ` Drew Adams
2008-01-08 19:08             ` Richard Stallman
2008-01-09  0:48             ` Juri Linkov
2008-01-09  1:47               ` Drew Adams
2008-01-08  2:12           ` Luc Teirlinck
2008-01-09  0:54             ` Juri Linkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DHEEKFAFJEFOJHLCFPFDKEFCCDAA.drew.adams@oracle.com \
    --to=drew.adams@oracle.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).