Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: zmv -W/-w in subdirs, possibly patch
- X-seq: zsh-workers 27247
- From: Peter Stephenson <p.w.stephenson@xxxxxxxxxxxx>
- To: zsh-workers <zsh-workers@xxxxxxxxxx>
- Subject: Re: zmv -W/-w in subdirs, possibly patch
- Date: Sun, 6 Sep 2009 19:48:21 +0100
- In-reply-to: <237967ef0909051629x73f79a43v49d9baa573c5b19@xxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
- References: <237967ef0909051629x73f79a43v49d9baa573c5b19@xxxxxxxxxxxxxx>
On Sun, 6 Sep 2009 01:29:50 +0200
Mikael Magnusson <mikachu@xxxxxxxxx> wrote:
> My question is: Why was the / there in the first place? Would the
> above patch break any existing usecases?
> (in case it is hard to spot, the patch removes the only / on the
> line). If it does break some weird complex
> pattern, maybe I would argue that you should not use -w then.
I've a suspicion this was supposed to catch **/. This might even work.
Index: Functions/Misc/zmv
===================================================================
RCS file: /cvsroot/zsh/zsh/Functions/Misc/zmv,v
retrieving revision 1.14
diff -u -r1.14 zmv
--- Functions/Misc/zmv 11 May 2008 11:23:31 -0000 1.14
+++ Functions/Misc/zmv 6 Sep 2009 18:44:18 -0000
@@ -187,7 +187,7 @@
# Well, this seems to work.
# The tricky bit is getting all forms of [...] correct, but as long
# as we require inactive bits to be backslashed its not so bad.
- find='(#m)((\*\*#/|[*?]|<[0-9]#-[0-9]#>|\[(^|)(\]|)(\[:[a-z]##:\]|\\?|[^\]])##\])\##|?\###)'
+ find='(#m)((\*\*##/|[*?]|<[0-9]#-[0-9]#>|\[(^|)(\]|)(\[:[a-z]##:\]|\\?|[^\]])##\])\##|?\###)'
tmp="${pat//${~find}/$[++cnt]}"
if [[ $cnt = 0 ]]; then
print -r -- "$myname: warning: no wildcards were found in search pattern" >&2
--
Peter Stephenson <p.w.stephenson@xxxxxxxxxxxx>
Web page now at http://homepage.ntlworld.com/p.w.stephenson/
Messages sorted by:
Reverse Date,
Date,
Thread,
Author