[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#28969: 27.0.50; dired: Confirmation prompt for wildcard not surround
From: |
Kévin Le Gouguec |
Subject: |
bug#28969: 27.0.50; dired: Confirmation prompt for wildcard not surrounded by whitespace |
Date: |
Mon, 15 Jul 2019 21:19:05 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) |
Michael Heerdegen <michael_heerdegen@web.de> writes:
> In my example (in my
> initial report), also the shell did not interpret it as wildcard, but I
> had to say "y" to get it executed. This is very confusing. It would be
> better to ask "confirm - pass literal `*' to the shell?" or so.
Yup, that's what I set out to do in bug#35564. Here is the patch
series, condensed into a single patch for convenience.
0001-Tweak-dired-warning-about-wildcard-characters.patch
Description: Text Data
It is a bit more involved than a simple rewording, mainly because I
could not find a concise sentence that sounded 100%-unambiguous
(e.g. "literal" might be taken to mean "suitably backslash-escaped or
quoted").
> BTW, I had several use cases where * or ?, don't remember, was not
> isolated, and I wanted to answer "n" to still get the substitution by
> the command and was disappointed that Emacs just canceled. Maybe one of
> the suggested patches also improves that, I haven't checked yet.
Allowing the user to substitute non-isolated characters is something
Drew also suggested in bug#35564.
I haven't tackled that yet (haven't met the use-case). What would a
good UI look like? Successive prompting for each non-isolated
character? Something like:
> Substitute highlighted occurrence of `?'? ([y]es, [n]o, [a]bort)
Although note that you can already tell Dired that your '?' is meant to
be substituted, by surrounding it with backquotes. E.g. try to mark
some files, then
! echo 'foo`?`bar'
It's not implemented for '*' though.