Hi Joachim,
I am not sure whether the following is a bug or
rather a feature request or a question. Anyway, I
am currently reviewing kdiff3 and xxdiff, and
during that process I stumbled over the following
issues.
Upon comparing files I often wish to focus on
"essential differences" by ignoring whitespace
differences. kdiff3 provides the "Show White
Space" option for this. (As far as I can see, the
"---" button changes only the way whitespace
differences are displayed.) Unfortunately, even if
I turn off the "Show White Space" option,
whitespace is still marked by a grey background in
the text window for lines showing essential
differences. This is illustrated by the two files
a.txt and b.txt attached to this entry (see lines
6-8). This grey background vanishes only for lines
featuring no essential differences, see lines 2-4.
I would expect the grey background to vanish
irrespective of whether a line shows essential
differences or not.
Furthermore, sometimes I am not interested in the
exact number of whitespace characters: All
contiguous sequences of one ore more whitespace
characters are equivalent in such a case, see
lines 3-4 and 7-8 of the two attached files.
Whitespace characters may even include line
breaks, see lines 12-13. As far as I can see,
kdiff3 cannot handle this type of comparison. I
experimented a bit with line matching preprocessor
commands like "perl -p -e 's/ +/ /g'", but I did
not succeed. Perhaps I am missing something.
One of the areas where xxdiff excels is at
whitespace processing. It offers four respective
options
- ignore trailing blanks = diff -b
- ignore whitespace = diff -w
- ignore horizontal whitespace
- ignore per-hunk whitespace
by the help of which the user can fine-tune the
display and/or conflict processing of whitespace.
Both of the problems described above can be solved
using these options.
xxdiff, however, has also some disadvantages as
compared to kdiff3. Hence, I currently end up
using both tools in different situations.
Cheers,
Stephan
PS: I am using KDIFF3 0.9.91 on a SuSE 10.2 x86
32bit system (KDE 3.5.5 release 45.4; actually, I
am using fvwm2).
a.txt and b.txt