Re: [PATCH] pathspec: rename per-item field has_wildcard to use_wildcard
From: Nguyen Thai Ngoc Duy <hidden>
Date: 2016-06-15 22:51:00
On Thu, Apr 7, 2011 at 6:09 PM, Michael J Gruber [off-list ref] wrote:
Junio, we're in rc phase ;)
He was excited. It's good, we may get this feature sooner :)
quoted
(2) Colon, open parenthesis, a comma separated list of words to name magic, close parenthesis, followed by the path, e.g. these are the long-hand counterparts to the examples in (1) - ":(top)hello.c" - ":(top,noglob)hello.c" - ":(noglob,top)hello.c" - ":(noglob,top):hello.c" - ":()hello.c"Do we need the parentheses? I guess we need them to have the magic start with a non-alpha, otherwise we could do with ":top,noglob:hello.c" (which I like but breaks those with a file named ":top:hello.c").
That has something to do with "easy to parse and catch error", I think. At the moment ":hello/:world" is interpreted as "hello/:world". Without parentheses, we need to look further for colon and may accidentally misinterpret it.
What about these: :/(noglob)hello.c :(top)!hello.c I.e. do we allow combinations?
I think we should. I don't like typing long pathspecs, just because only remember mnemonic for "top" and happen to need "noglob" too.
It seems you accept to break people with files named ":(top)hello.c" but not those with files named ":top:hello.c". Which is OK if it's a conscious decision, of course.
At least once we agree on colon being the magic introducer and general
rules, we can do these earlier in 1.7.x
- warn people that ":hello.c" may change semantics in future
- recommend to escape ("::hello.c" instead of ":hello.c")
--
Duy