# Unexpected diff is shown with -w -b options in effect

2 messages from 2016-07-11 to 2016-07-11. Participants: KES, Johannes Schindelin.
Thread: https://gitlist.dev/t/42818

## KES, 2016-07-11 11:42

Subject: Unexpected diff is shown with -w -b options in effect
Message-ID: <275091468237350@web16g.yandex.ru>
URL: https://gitlist.dev/e/275091468237350%40web16g.yandex.ru

```
Hi

For this diff
diff --git a/app/public/v2/index.html b/app/public/v2/index.html
index f73ba73..3af0c64 100644
--- a/app/public/v2/index.html
+++ b/app/public/v2/index.html
@@ -21,11 +21,15 @@
 </head>
 <body>
 <div id="media-width-detection-element"></div>
-<div id="rowTools" class="eRowTools btn-group btn-group-sm">
-	<div    type="button"              class="eBtnMov btn btn-default">MOV</div>
-	<button type="button" class="eBtnAdd btn btn-default" onclick="rowTools_add_click( this )">ADD</button>
-	<button type="button" class="eBtnDel btn btn-default" onclick="rowTools_del_click( this )">DEL</button>
-	<img src="img/add.png"/>
+<div id="rowTools" class="eRowTools">
+	<div class="eRow_Separator btn-group btn-group-sm">
+		<div    type="button" class="eBtnMov btn btn-default">MOV</div>
+		<button type="button" class="eBtnAdd btn btn-default" onclick="rowTools_add_click( this )">ADD</button>
+		<button type="button" class="eBtnDel btn btn-default" onclick="rowTools_del_click( this )">DEL</button>
+	</div>
+	<div class="eRow_ColAdd">
+		<img src="img/add.png"/>
+	</div>
 </div>
 <div id="colTools" class="eColTools"></div>
 <div class="container-fluid">

I see next:
diff --git a/app/public/v2/index.html b/app/public/v2/index.html
index f73ba73..d415c2d 100644
--- a/app/public/v2/index.html
+++ b/app/public/v2/index.html
@@ -21,12 +21,16 @@
 </head>
 <body>
 <div id="media-width-detection-element"></div>
-<div id="rowTools" class="eRowTools btn-group btn-group-sm">
+<div id="rowTools" class="eRowTools">
+    <div class="eRow_Separator btn-group btn-group-sm">
         <div    type="button" class="eBtnMov btn btn-default">MOV</div>
         <button type="button" class="eBtnAdd btn btn-default" onclick="rowTools_add_click( this )">
         <button type="button" class="eBtnDel btn btn-default" onclick="rowTools_del_click( this )">
+    </div>
+    <div class="eRow_ColAdd">
         <img src="img/add.png"/>
     </div>
+</div>                         <<<<<<<<<<<<<<<<<<<<<<<< IS NOT EXPECTED
 <div id="colTools" class="eColTools"></div>
 <div class="container-fluid">
 <div class="row">

But I expect to see:
diff --git a/app/public/v2/index.html b/app/public/v2/index.html
index f73ba73..d415c2d 100644
--- a/app/public/v2/index.html
+++ b/app/public/v2/index.html
@@ -21,12 +21,16 @@
 </head>
 <body>
 <div id="media-width-detection-element"></div>
-<div id="rowTools" class="eRowTools btn-group btn-group-sm">
+<div id="rowTools" class="eRowTools">
+    <div class="eRow_Separator btn-group btn-group-sm">
         <div    type="button" class="eBtnMov btn btn-default">MOV</div>
         <button type="button" class="eBtnAdd btn btn-default" onclick="rowTools_add_click( this )">
         <button type="button" class="eBtnDel btn btn-default" onclick="rowTools_del_click( this )">
+    </div>
+    <div class="eRow_ColAdd">
         <img src="img/add.png"/>
+     </div>                         <<<<<<<<<<<<<<<<<<<<<< EXPECT THIS
</div>
 <div id="colTools" class="eColTools"></div>
 <div class="container-fluid">
 <div class="row">


This seems to me a bug or should I apply some extra options to get expected behaviour?

PS$ git --version
git version 2.8.1

```

## Johannes Schindelin, 2016-07-11 12:58

Subject: Re: Unexpected diff is shown with -w -b options in effect
Message-ID: <alpine.DEB.2.20.1607111430190.6426@virtualbox>
URL: https://gitlist.dev/e/alpine.DEB.2.20.1607111430190.6426%40virtualbox
In-Reply-To: <275091468237350@web16g.yandex.ru>

```
Hi KES,

On Mon, 11 Jul 2016, KES wrote:

> For this diff
> diff --git a/app/public/v2/index.html b/app/public/v2/index.html
> index f73ba73..3af0c64 100644
> --- a/app/public/v2/index.html
> +++ b/app/public/v2/index.html
> @@ -21,11 +21,15 @@
>  </head>
>  <body>
>  <div id="media-width-detection-element"></div>
> -<div id="rowTools" class="eRowTools btn-group btn-group-sm">
> -	<div    type="button"              class="eBtnMov btn btn-default">MOV</div>
> -	<button type="button" class="eBtnAdd btn btn-default" onclick="rowTools_add_click( this )">ADD</button>
> -	<button type="button" class="eBtnDel btn btn-default" onclick="rowTools_del_click( this )">DEL</button>
> -	<img src="img/add.png"/>
> +<div id="rowTools" class="eRowTools">
> +	<div class="eRow_Separator btn-group btn-group-sm">
> +		<div    type="button" class="eBtnMov btn btn-default">MOV</div>
> +		<button type="button" class="eBtnAdd btn btn-default" onclick="rowTools_add_click( this )">ADD</button>
> +		<button type="button" class="eBtnDel btn btn-default" onclick="rowTools_del_click( this )">DEL</button>
> +	</div>
> +	<div class="eRow_ColAdd">
> +		<img src="img/add.png"/>
> +	</div>
>  </div>
>  <div id="colTools" class="eColTools"></div>
>  <div class="container-fluid">

First of all, I ask you to realize that this diff makes it really, really
tedious to see your problem (too much going on there that is completely
unrelated to the bug: long lines, unnecessarily complex HTML code, too big
of a diff to compare two versions of the diff).

It takes but a little time to clean it up, and then it is so much easier
to make a case.

As to:

> [...]
>          <img src="img/add.png"/>
>      </div>
> +</div>                         <<<<<<<<<<<<<<<<<<<<<<<< IS NOT EXPECTED
>  <div id="colTools" class="eColTools"></div>

vs:

> [...]
>          <img src="img/add.png"/>
> +     </div>                         <<<<<<<<<<<<<<<<<<<<<< EXPECT THIS
>  </div>
>  <div id="colTools" class="eColTools"></div>

You asked for -w *and* for -b, i.e. ignore all white space *and* ignore
white space change. The combination is bogus, of course, as "ignore all
white space" includes "ignore white space change".

If you use only -b, you will see the expected change.

If you use -w, what you saw is actually expected, as git-diff was asked
not to see a difference between the indented vs the unindented </div>: it
really *ignores* all white space in that case. It is not like: ignore all
white space except when there are ambiguous matches.

Ciao,
Johannes

```
