From 743a79af65deb52c211a8fb5b726979454e3f3b5 Mon Sep 17 00:00:00 2001 From: Michael Kifer Date: Wed, 20 Mar 2002 06:36:18 +0000 Subject: * ediff-diff.el (ediff-install-fine-diff-if-necessary): take the current highlighting style into account. (ediff-forward-word-function,ediff-whitespace,ediff-word-1, ediff-word-2,ediff-word-3,ediff-word-4): make them buffer local. * ediff-init.el (ediff-patch-job): new macro. * ediff-mult.el (ediff-make-new-meta-list-header): new API function. (ediff-intersect-directories): use ediff-make-new-meta-list-header. * ediff-ptch.el (ediff-map-patch-buffer): use ediff-make-new-meta-list-header. (ediff-fixup-patch-map): use the meta-list API from ediff-mult.el. * ediff-util.el (ediff-toggle-hilit): fix toggling of highliting. (ediff-select-difference): take highlighting style into account. (ediff-clone-buffer-for-region-comparison): new function. (ediff-inferior-compare-regions): added comparison of current diff regions. * ediff.el (ediff-clone-buffer-for-region-comparison, ediff-clone-buffer-for-window-comparison): moved to ediff-util.el. --- lisp/ediff-diff.el | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'lisp/ediff-diff.el') diff --git a/lisp/ediff-diff.el b/lisp/ediff-diff.el index 7815e632502..31c54636c68 100644 --- a/lisp/ediff-diff.el +++ b/lisp/ediff-diff.el @@ -783,7 +783,10 @@ one optional arguments, diff-number to refine.") ;; Interface to ediff-make-fine-diffs. Checks for auto-refine limit, etc. (defun ediff-install-fine-diff-if-necessary (n) - (cond ((eq ediff-auto-refine 'on) + (cond ((and (eq ediff-auto-refine 'on) + ediff-use-faces + (not (eq ediff-highlighting-style 'off)) + (not (eq ediff-highlighting-style 'ascii))) (if (and (> ediff-auto-refine-limit (- (ediff-get-diff-posn 'A 'end n) @@ -1215,32 +1218,38 @@ delimiter regions")) (defvar ediff-forward-word-function 'ediff-forward-word "*Function to call to move to the next word. Used for splitting difference regions into individual words.") +(make-variable-buffer-local 'ediff-forward-word-function) (defvar ediff-whitespace " \n\t\f" "*Characters constituting white space. These characters are ignored when differing regions are split into words.") +(make-variable-buffer-local 'ediff-whitespace) (defvar ediff-word-1 (ediff-cond-compile-for-xemacs-or-emacs "a-zA-Z---_" "-[:word:]_") "*Characters that constitute words of type 1. More precisely, [ediff-word-1] is a regexp that matches type 1 words. See `ediff-forward-word' for more details.") +(make-variable-buffer-local 'ediff-word-1) (defvar ediff-word-2 "0-9.," "*Characters that constitute words of type 2. More precisely, [ediff-word-2] is a regexp that matches type 2 words. See `ediff-forward-word' for more details.") +(make-variable-buffer-local 'ediff-word-2) (defvar ediff-word-3 "`'?!:;\"{}[]()" "*Characters that constitute words of type 3. More precisely, [ediff-word-3] is a regexp that matches type 3 words. See `ediff-forward-word' for more details.") +(make-variable-buffer-local 'ediff-word-3) (defvar ediff-word-4 (concat "^" ediff-word-1 ediff-word-2 ediff-word-3 ediff-whitespace) "*Characters that constitute words of type 4. More precisely, [ediff-word-4] is a regexp that matches type 4 words. See `ediff-forward-word' for more details.") +(make-variable-buffer-local 'ediff-word-4) ;; Split region along word boundaries. Each word will be on its own line. ;; Output to buffer out-buffer. -- cgit v1.2.3