Thread (4 messages) flat view 4 messages, 2 authors, 2016-06-15

Re: [PATCH] diff: add --ignore-blank-lines option

From: Antoine Pelisse <hidden>
Date: 2016-06-15 22:57:27

On Sun, May 26, 2013 at 10:35 PM, Johannes Sixt [off-list ref] wrote:
Am 26.05.2013 19:58, schrieb Antoine Pelisse:
quoted
The goal of the patch is to introduce the GNU diff
-B/--ignore-blank-lines as closely as possible. The short option is not
available because it's already used for "break-rewrites".

When this option is used, git-diff will not create hunks that simply
adds or removes empty lines, but will still show empty lines
addition/suppression if they are close enough to "valuable" changes.
So when an addition or removal of a blank line appears in a hunk that
also has non-blank-line changes, the addition or removal is not treated
specially?
Exactly.
How is a blank line defined? What happens if a line that has only
whitespace is added or removed?
xdl_blankline() is the best description of what I considered a blank line.
If no --ignore-space-* option is given, it's a line that starts and
ends with '\n'.
If any --ignore-space-* option is given, it's a line that has any
number of isspace(3)-defined characters, followed by '\n'.
I'm thinking of diffs of files with CRLF
Good you did, because I didn't ;-)
line breaks, where the CR would count as whitespace in the line, I think.
With the current implementation, an empty line with CRLF will not show
as a blank line if no space option is given. As CR is a space
according to isspace(3), the line will be removed with any space
option.
quoted
+--ignore-blank-lines::
+     Ignore changes whose lines are all blank.
I think this is too terse and does not convey what the option really does.
That's the description from GNU diff man page. But indeed it could be
more precise.
quoted
+test_expect_success 'ignore-blank-lines: only new lines' '
+     seq 5 >x &&
Please use test_seq instead of seq in all new tests.
Will fix.
-- Hannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help