[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Ignore patterns should not be case sensitive (usability)

From: Deven T. Corzine <deven_at_ties.org>
Date: Sun, 23 Mar 2008 10:09:25 -0400

Karl Fogel wrote:
> Most of my patterns are extension-based: "*.foo" and the like. A few
> are explicit filenames, but I certainly agree that extensions are the
> common case.
>

My first inclination was to say that case-sensitivity was more
appropriate, because many filesystems are case-sensitive. (How does
Subversion handle case-insensitive local filesystems, by the way?)

Upon further reflection, it occurred to me that ignore patterns are a
generalization, and frequently used for extensions that identify the
file type, and the same extension/type relationship is likely to exist
without regard to case variations, which argues in favor of
case-insensitivity.

Since using a pattern like "*.[Tt][Xx][Tt]" is awkward and inconvenient,
harder to remember and use, and likely to be the preferred usage, I'll
take a page from Perl 6 design philosophy and suggest optimizing for the
common case (Huffman-coding style) while allowing the uncommon case --
my suggestion is to have bare letters in the pattern be
case-insensitive, but letters in character classes be case-sensitive.
This is a little funky, but it means that "*.txt" could match any case,
while "*.[t][x][t]" would only match the lower-case extension. It's a
little confusing to have differing case-sensitivity in different
contexts in the glob, but probably less confusing than the current
behavior, in the grand scheme of things.

Thoughts?

Deven

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-03-23 15:29:49 CET

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.