emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] scratch/add-vdiff b840935 202/258: Use more specific faces for re


From: Justin Burkett
Subject: [elpa] scratch/add-vdiff b840935 202/258: Use more specific faces for refinements
Date: Wed, 17 May 2017 08:13:51 -0400 (EDT)

branch: scratch/add-vdiff
commit b84093517aaa7988c8ef7248bb9aaf7ecd7d0a22
Author: justbur <address@hidden>
Commit: justbur <address@hidden>

    Use more specific faces for refinements
    
    * Distinguish between refining additions and changes.
    * Inherit from diff-refine-added and diff-refine-changed
---
 vdiff.el | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/vdiff.el b/vdiff.el
index f2b57f1..1ca4de3 100644
--- a/vdiff.el
+++ b/vdiff.el
@@ -170,9 +170,14 @@ indicate the subtraction location in the fringe."
   "Face for subtraction fringe indicators"
   :group 'vdiff)
 
-(defface vdiff-word-changed-face
-  '((t :inherit highlight))
-  "Face for word changes within a hunk"
+(defface vdiff-refine-changed
+  '((t :inherit diff-refine-changed))
+  "Face for word changes within a change hunk"
+  :group 'vdiff)
+
+(defface vdiff-refine-added
+  '((t :inherit diff-refine-added))
+  "Face for word changes within an addition hunk"
   :group 'vdiff)
 
 (defface vdiff-target-face
@@ -693,6 +698,10 @@ SYNTAX-CODE."
          (word-syn (or syntax-code
                        vdiff-default-refinement-syntax-code))
          (not-word-syn (concat "^" word-syn))
+         (type (overlay-get ovr 'vdiff-type))
+         (face (if (eq type 'addition)
+                   'vdiff-refine-added
+                 'vdiff-refine-changed))
          instructions ovr-ins)
     (when (and ovr
                target-ovr
@@ -723,7 +732,7 @@ SYNTAX-CODE."
                            (point)))))
                   (cl-incf current-word-n (length words))
                   (overlay-put word-ovr 'vdiff t)
-                  (overlay-put word-ovr 'face 'vdiff-word-changed-face)
+                  (overlay-put word-ovr 'face face)
                   (overlay-put word-ovr 'vdiff-refinement t)
                   (skip-syntax-forward not-word-syn))))))))))
 



reply via email to

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