bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#23823: 25.0.95; Reset between highlight buffer/file comparisons


From: Tino Calancha
Subject: bug#23823: 25.0.95; Reset between highlight buffer/file comparisons
Date: Wed, 22 Jun 2016 19:11:27 +0900 (JST)
User-agent: Alpine 2.20 (DEB 67 2015-01-07)


./emacs -r -Q -eval '(progn (with-temp-file "/tmp/foo" (insert "foo")) (switch-to-buffer "bar") (insert "boo"))'
M-: (highlight-compare-with-file "/tmp/foo") RET
C-b C-b DEL f
M-: M-p RET
;; Now current buffer content equals /tmp/foo content
;; but foo is still displayed with face highlight-changes.



In GNU Emacs 25.0.95.2 (x86_64-pc-linux-gnu, GTK+ Version 3.20.6)
Repository revision: 829733104db073f8abd67765eae162e7360281fa

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Following patch fixed it calling
(and highlight-changes-mode (hilit-chg-clear))
each time
(highlight-changes-mode 1)
is called.
It would be better if such reset were performed inside one hook.
Any idea to do this better?


From 18251da925f8f8c6cca50b2a4f56235534c0a479 Mon Sep 17 00:00:00 2001
From: Tino Calancha <f92capac@gmail.com>
Date: Wed, 22 Jun 2016 18:29:13 +0900
Subject: [PATCH] Reset between highlight comparisons

* lisp/hilit-chg.el (highlight-markup-buffers)
(highlight-changes-mode-turn-on): Call hilit-chg-clear before
performing a new comparison (Bug#23823).
---
 lisp/hilit-chg.el | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lisp/hilit-chg.el b/lisp/hilit-chg.el
index 8f042b6..f6eae52 100644
--- a/lisp/hilit-chg.el
+++ b/lisp/hilit-chg.el
@@ -804,8 +804,12 @@ highlight-markup-buffers
       (or file-b
          (setq temp-b (setq file-b (ediff-make-temp-file buf-b nil))))
       (set-buffer buf-a)
+      (when highlight-changes-mode
+        (hilit-chg-clear))
       (highlight-changes-mode 1)
       (or markup-a-only (with-current-buffer buf-b
+                          (when highlight-changes-mode
+                            (hilit-chg-clear))
                          (highlight-changes-mode 1)))
(setq change-info (hilit-chg-get-diff-info buf-a file-a buf-b file-b))

@@ -993,6 +997,8 @@ highlight-changes-mode-turn-on
             (and
              (not (string-match "^[ *]" (buffer-name)))
              (buffer-file-name))))
+          (when highlight-changes-mode
+            (hilit-chg-clear))
          (highlight-changes-mode 1))
        ))

--
2.8.1







reply via email to

[Prev in Thread] Current Thread [Next in Thread]