> I'm not so sure about that. With your example I get this diff without setting diff.natvis.xfuncname: So, to make sure we are on the same page, I removed the diff.natvis.xfuncname from the .gitconfig and .git/config. My output was: C:\Users\adrianh\Documents\tmp>git diff diff --git a/test.natvis b/test.natvis index 93fd5b4..351301f 100644 --- a/test.natvis +++ b/test.natvis @@ -18,6 +18,7 @@ <!-- test text --> + <Item Name="added var">added_var</Item> <Item Name="var2">var2</Item> So I didn't get the default output that your specified. I've been modifying the .gitconfig file directly, but I tried your command: git config diff.natvis.xfuncname "^[\t ]*<Type[\t ]+Name=\"([^\"]+)\".*$" and still had the same results. I.e. NOTHING. :( On Wed, Feb 8, 2017 at 1:37 PM, René Scharfe <l.s.r@xxxxxx> wrote: > Am 08.02.2017 um 18:11 schrieb Jack Adrian Zappa: >> Thanks Rene, but you seem to have missed the point. NOTHING is >> working. No matter what I put there, it doesn't seem to get matched. > > I'm not so sure about that. With your example I get this diff without > setting diff.natvis.xfuncname: > > diff --git a/a.natvis b/a.natvis > index 7f9bdf5..bc3c090 100644 > --- a/a.natvis > +++ b/a.natvis > @@ -19,7 +19,7 @@ xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010"> > > > <!-- Non-blank line --> > - <Item Name="added var">added_var</Item> > + <Item Name="added var">added_vars</Item> > > > <Item Name="var2">var2</Item> > > Note the XML namespace in the hunk header. It's put there by the > default rule because "xmlns" starts at the beginning of the line. Your > diff has nothing there, which means the default rule is not used, i.e. > your user-defined rule is in effect. > > Come to think of it, this line break in the middle of the AutoVisualizer > tab might have been added by your email client unintentionally, so that > we use different test files, which then of course results in different > diffs. Is that the case? > > Anyway, if I run the following two commands: > > $ git config diff.natvis.xfuncname "^[\t ]*<Type[\t ]+Name=\"([^\"]+)\".*$" > $ echo '*.natvis diff=natvis' >.gitattributes > > ... then I get this, both on Linux (git version 2.11.1) and on Windows > (git version 2.11.1.windows.1): > > diff --git a/a.natvis b/a.natvis > index 7f9bdf5..bc3c090 100644 > --- a/a.natvis > +++ b/a.natvis > @@ -19,7 +19,7 @@ test > > > <!-- Non-blank line --> > - <Item Name="added var">added_var</Item> > + <Item Name="added var">added_vars</Item> > > > <Item Name="var2">var2</Item> > >> Just to be sure, I tested your regex and again it didn't work. > > At this point I'm out of ideas, sorry. :( The only way I was able to > break it was due to mistyping the extension as "netvis" several times > for some reason. > > René