GNU bug report logs -
#17388
24.4.50; REGRESSION: Ediff - 1) wrong face, 2) incorrect diffing
Previous Next
Reported by: Drew Adams <drew.adams <at> oracle.com>
Date: Fri, 2 May 2014 15:16:02 UTC
Severity: normal
Found in version 24.4.50
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
Message #16 received at 17388-done <at> debbugs.gnu.org (full text, mbox):
> >> See the attached screenshot. The first diff shown, with the gray
> >> highlighting, shows the regression.
>
> I installed the patch below which should fix those problems, thanks.
>
> >> 2. The fine diffs are also not correct. See the same screenshot. For
> >> the first diff, "advertise" and "d-signature-table" should be
> >> highlighted the same as "(defvar " and ")", and for the second diff,
> >> "fil" and "s-alist" should be highlighted the same as "(defvar " and
> >> ")". These are not differences.
>
> You mean you want finer granularity of fine diffs.
Not at all. How do you get that from what I said?
There should be EITHER, (a) as previously, NO fine diffs shown for
other than the current diff OR (b) CORRECT (helpful) fine diffs
shown for the non-current diffs.
In the text you quoted I spoke only of (a): return to the previous
behavior of NOT showing fine diffs except for the current diff.
> >> still a regression wrt prior Emacs versions. With Emacs 24.3, for
> >> instance (using the same Cygwin `diff'), there is no fine diff shown
> >> here. Instead, the diff, which is shown only as a main diff, is between
> >> "file-local-variables-alist" and "filxxxxxxxxxxxxxxxxxxxxxs-alist".
> >> Which is correct.
>
> I don't see that here with Debian's Emacs-24.3, and neither with 23.4.
It's not very clear from the above what you see and do not see,
especially since you apparently did not understand the description.
Do you see a bug for Emacs 24.3 or 23.4? There is none that I see -
the behavior is as I described it. No fine diffs are shown for the
non-current diff highlighting with Emacs 24.3 or 23.4.
Are you sure you are looking at the non-current diffs (the gray ones)?
That's where both bugs are: (1) wrong face (`default'), (2) incorrect
fine diffing.
I just repeated everything, again starting from emacs -Q with the
above recipe, using 24.3. That's 5 times now I've done it (2x for
24.4, 24.3, 1x for 23.4). Same thing - just what I described originally.
> The behavior you describe seems to correspond to ediff-word-mode, IIRC,
> so I assume this is not really a bug/regression but just a pilot error
> on your part. If not, feel free to re-open this bug report, providing
> more details about the problem.
I can no longer reopen bugs - Glenn apparently banned me some time ago.
This has nothing to do with `ediff-word-mode' or pilot error.
What I showed and described was already from emacs -Q. And S. Berman
had no trouble following the recipe and confirming the behavior.
But let me try again.
emacs -Q
Load file `cygwin-mount.el', then `setup-cygwin.el' (from Emacs Wiki).
Cygwin `diff' is apparently irrelevant, but that's what I used anyway.
In foo.el type some text. E.g.:
(defvar advertised-signature-table)
(defvar dir-local-variables-alist)
(defvar dir-locals-file)
(defvar file-local-variables-alist)
(defvar Info-indexed-nodes)
Put the same text in bar.el. Then modify it a bit in bar.el:
(defvar advertiseyyyyyyyyyyyd-signature-table)
(defvar dir-local-variables-alist)
(defvar dir-locals-file)
(defvar filxxxxxxxxxxxxxxs-alist)
(defvar Info-indexed-nodes)
M-x ediff-buffers ; for foo.el and bar.el
Cycle among the two diffs. You will see the screenshot I sent.
Now read the bug report as to what is wrong with what you see,
if it is still not clear why it is a bug (2 bugs).
Stephen Berman's confirmation indicates that Cygwin `diff' is
irrelevant:
> I see both of these problematic highlightings on GNU/Linux builds from
> both the trunk (bzr 117042) and the emacs-24 branch (bzr 117049).
This bug report was last modified 11 years and 79 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.