From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Drew Adams <drew.adams@oracle.com>
Cc: 17388-done@debbugs.gnu.org, Michael Kifer <kifer@cs.stonybrook.edu>
Subject: bug#17388: 24.4.50; REGRESSION: Ediff - 1) wrong face, 2) incorrect diffing
Date: Fri, 02 May 2014 22:27:53 -0400 [thread overview]
Message-ID: <jwvwqe3mx1m.fsf-monnier+emacsbugs@gnu.org> (raw)
In-Reply-To: <87wqe43t55.fsf@rosalinde.fritz.box> (Stephen Berman's message of "Fri, 02 May 2014 20:57:58 +0200")
>> 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.
>> 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.
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.
Stefan
=== modified file 'lisp/ChangeLog'
--- lisp/ChangeLog 2014-05-02 11:11:35 +0000
+++ lisp/ChangeLog 2014-05-03 02:10:48 +0000
@@ -1,3 +1,13 @@
+2014-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/ediff-diff.el (ediff-set-fine-diff-properties-in-one-buffer):
+ Use nil rather than `default' for the "default" appearance (bug#17388).
+ * vc/ediff-util.el (ediff-inferior-compare-regions)
+ (ediff-toggle-autorefine, ediff-unselect-difference): Don't use
+ a misleading `default' value when it's really a boolean.
+ * vc/ediff-init.el (ediff-set-overlay-face): Don't set help-echo if the
+ overlay is not visible.
+
2014-05-02 Leo Liu <sdl.web@gmail.com>
* emacs-lisp/cl-macs.el (cl-deftype): Fix indentation.
=== modified file 'lisp/vc/ediff-diff.el'
--- lisp/vc/ediff-diff.el 2014-04-14 02:21:12 +0000
+++ lisp/vc/ediff-diff.el 2014-05-03 01:49:01 +0000
@@ -818,10 +818,9 @@
n &optional default)
(let ((fine-diff-vector (ediff-get-fine-diff-vector n buf-type))
(face (if default
- 'default
+ nil
(ediff-get-symbol-from-alist
- buf-type ediff-fine-diff-face-alist)
- )))
+ buf-type ediff-fine-diff-face-alist))))
(mapc (lambda (overl)
(ediff-set-overlay-face overl face))
fine-diff-vector)))
=== modified file 'lisp/vc/ediff-init.el'
--- lisp/vc/ediff-init.el 2014-04-10 19:15:01 +0000
+++ lisp/vc/ediff-init.el 2014-05-03 02:05:06 +0000
@@ -807,7 +807,7 @@
(defun ediff-set-overlay-face (extent face)
(ediff-overlay-put extent 'face face)
- (ediff-overlay-put extent 'help-echo 'ediff-region-help-echo))
+ (ediff-overlay-put extent 'help-echo (if face 'ediff-region-help-echo)))
(defun ediff-region-help-echo (extent-or-window &optional overlay _point)
(unless overlay
=== modified file 'lisp/vc/ediff-util.el'
--- lisp/vc/ediff-util.el 2014-04-10 19:15:01 +0000
+++ lisp/vc/ediff-util.el 2014-05-03 01:46:35 +0000
@@ -958,7 +958,7 @@
(message "Auto-refining is OFF")
(setq ediff-auto-refine 'off))
(t ;; nix 'em
- (ediff-set-fine-diff-properties ediff-current-difference 'default)
+ (ediff-set-fine-diff-properties ediff-current-difference t)
(message "Refinements are HIDDEN")
(setq ediff-auto-refine 'nix))
))
@@ -2973,7 +2973,7 @@
))
;; unhighlight fine diffs
- (ediff-set-fine-diff-properties ediff-current-difference 'default)
+ (ediff-set-fine-diff-properties ediff-current-difference t)
(run-hooks 'ediff-unselect-hook))))
@@ -3492,7 +3492,7 @@
(if (ediff-valid-difference-p ediff-current-difference)
(progn
- (ediff-set-fine-diff-properties ediff-current-difference 'default)
+ (ediff-set-fine-diff-properties ediff-current-difference t)
(ediff-unhighlight-diff)))
(ediff-paint-background-regions 'unhighlight)
next prev parent reply other threads:[~2014-05-03 2:27 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-02 15:15 bug#17388: 24.4.50; REGRESSION: Ediff - 1) wrong face, 2) incorrect diffing Drew Adams
2014-05-02 18:57 ` Stephen Berman
2014-05-03 2:27 ` Stefan Monnier [this message]
2014-05-03 3:11 ` Drew Adams
2014-05-03 6:48 ` Eli Zaretskii
[not found] <<eb90ee40-d0cb-46f0-8ce1-1759d110cbbd@default>
[not found] ` <<87wqe43t55.fsf@rosalinde.fritz.box>
[not found] ` <<jwvwqe3mx1m.fsf-monnier+emacsbugs@gnu.org>
[not found] ` <<111c9271-6a23-426e-adb2-ff5520c02806@default>
[not found] ` <<83a9az1hok.fsf@gnu.org>
2014-05-03 14:01 ` Drew Adams
2014-05-03 16:42 ` Eli Zaretskii
[not found] ` <8613042fc3be4f9995e33e38d4f079f0@HUBCAS1.cs.stonybrook.edu>
2014-05-03 15:57 ` Michael Kifer
2014-05-03 20:41 ` Drew Adams
2014-05-04 3:54 ` Stefan Monnier
2014-05-04 7:16 ` Drew Adams
[not found] ` <<bbf71aaa-f669-4542-a8d1-b7ff9d40d66e@default>
[not found] ` <<83y4yizue3.fsf@gnu.org>
2014-05-03 20:56 ` Drew Adams
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwvwqe3mx1m.fsf-monnier+emacsbugs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=17388-done@debbugs.gnu.org \
--cc=drew.adams@oracle.com \
--cc=kifer@cs.stonybrook.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).