On Thu, Oct 4, 2012 at 4:34 PM, Michael Haggerty <[email protected]> wrote:
On Thu, Oct 4, 2012 at 4:34 PM, Michael Haggerty <[email protected]> wrote:
> Given that there is no obvious interpretation for what a construct like
> "x**y" would mean, and many plausible guesses (most of which sound
> rather useless), I suggest that we forbid it. This will make the
> feature easier to explain and make .gitignore files that use it easier
> to understand.
Yep, sounds like a good short term plan.
> As for the implementation, it is quite easy to textually convert a glob
> pattern, including "**" parts, into a regexp.
Or we could introduce regexp syntax as an alternative and let users
choose (and pay associated price). Patterns starting with // are never
matched (we don't normalize paths in .gitignore). Any patterns started
with "//regex:" is followed by regex. Reject all other // patterns for
future use.
> _filename_char_pattern = r'[^/]'
> _glob_patterns = [
> ('?', _filename_char_pattern),
> ('/**', r'(/.+)?'),
> ('**/', r'(.+/)?'),
> ('*', _filename_char_pattern + r'*'),
> ]
I don't fully understand the rest (never been a big fan of python) but
what about bracket expressions like [!abc] and [:alnum:]?
--
Duy
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html