Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: updated _zstyle and cleanup of related stuff

"Bart Schaefer" wrote:
> See the thread beginning with zsh-workers/15950.

I think we can do (#q) as proposed there, except as I already said, I'd
prefer simply to ignore (#q) where it isn't treated as a glob qualifier,
i.e. gets through to the pattern code, since it means you no longer need to
rewrite glob patterns to test against the filenames, which I consider a
highly desirable feature.  Causing an error if the (#q) gets through to the
pattern code would be fairly simple, however.  Scanning for (#q)'s not at
the end and causing an error in the top-level globbing code instead is the
hack I want to avoid, but I could do it if pushed; then the globbing code
would be safe but the pattern code could still ignore (#q)'s.

The natural rule for bareglobs is that they work if and only if they appear
at the end, if and only if BAREGLOBQUAL is set, so (.)(#q*) is just one
qualifier, but (#q*)(.) is two.  However, I wouldn't recommend combining
the two forms anyway, so I don't think this needs a big discussion, just a
reasonable rule.

The only hairy bit of implementing this is that we'll need an extra level
of logic to handle the logical and of different qualifiers.  As I said, I
don't think the rule of applying them `as if they appeared in a single
list' is rational --- treating (#q/,*)(#qW) as (#q/,*W) doesn't seem to
make sense to me.

Peter Stephenson <pws@xxxxxxx>                  Software Engineer
CSR Ltd., Science Park, Milton Road,
Cambridge, CB4 0WH, UK                          Tel: +44 (0)1223 392070

The information transmitted is intended only for the person or
entity to which it is addressed and may contain confidential 
and/or privileged material. 
Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by 
persons or entities other than the intended recipient is 
If you received this in error, please contact the sender and 
delete the material from any computer.

Messages sorted by: Reverse Date, Date, Thread, Author