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é