Thread (21 messages) flat view 21 messages, 8 authors, 2016-06-15

Re: [PATCH] attr: map builtin userdiff drivers to well-known extensions

From: Jeff King <hidden>
Date: 2016-06-15 22:52:39

On Fri, Dec 16, 2011 at 12:51:19PM -0500, Mark Levedahl wrote:
On 12/16/2011 06:00 AM, Jeff King wrote:
quoted
+	"*.m diff=objc",
Please don't do this: Matlab files also use .m as a suffix, and there
is little to no compatibility between objective c and Matlab syntax.
Thanks for the feedback. Unlike JSixt's objection, I think this one is
at the heart of the patch: using file extensions to map to file types is
just a heuristic, and that heuristic can be spectacularly wrong.

And that's why we took the conservative approach until now, and simply
left it up to projects to define their own attributes mapping files to
types (even though we provided funcname patterns for some types).

So I think it is really worth weighing the convenience of "user does not
have to bother configuring attributes for each project" versus "we might
get it wrong".

Fortunately, the "might get it wrong" side is pretty easily mitigated by
making .gitattributes file (i.e., the same thing they would have to do
without this mapping heuristic). So the question is not "did we get it
wrong", but "how much worse is the objc funcname pattern versus the
default one for matlab files". I'd be interested to hear results from
Matlab people.

And of course there's the question of how good or bad each heuristic is.
It sounds like ".c" is more likely to be C than ".m" is to be objc, for
example. So maybe the concept is sound, but "*.m" is too overloaded an
extension to make the default list. I dunno.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help