Mercurial > hg > xemacs-beta
comparison lisp/ediff/ediff-init.el @ 181:bfd6434d15b3 r20-3b17
Import from CVS: tag r20-3b17
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:53:19 +0200 |
parents | 2d532a89d707 |
children | acd284d43ca1 |
comparison
equal
deleted
inserted
replaced
180:add28d59e586 | 181:bfd6434d15b3 |
---|---|
95 ;; Ancestor buffer | 95 ;; Ancestor buffer |
96 (ediff-defvar-local ediff-ancestor-buffer nil "") | 96 (ediff-defvar-local ediff-ancestor-buffer nil "") |
97 ;; The Ediff control buffer | 97 ;; The Ediff control buffer |
98 (ediff-defvar-local ediff-control-buffer nil "") | 98 (ediff-defvar-local ediff-control-buffer nil "") |
99 | 99 |
100 | |
101 ;; Association between buff-type and ediff-buffer-* | |
102 (defconst ediff-buffer-alist | |
103 '((?A . ediff-buffer-A) | |
104 (?B . ediff-buffer-B) | |
105 (?C . ediff-buffer-C))) | |
106 | |
100 ;;; Macros | 107 ;;; Macros |
101 (defmacro ediff-odd-p (arg) | 108 (defmacro ediff-odd-p (arg) |
102 (` (eq (logand (, arg) 1) 1))) | 109 (` (eq (logand (, arg) 1) 1))) |
103 | 110 |
104 (defmacro ediff-buffer-live-p (buf) | 111 (defmacro ediff-buffer-live-p (buf) |
121 (` (cond ((memq (, arg) '(?a ?A)) 'A) | 128 (` (cond ((memq (, arg) '(?a ?A)) 'A) |
122 ((memq (, arg) '(?b ?B)) 'B) | 129 ((memq (, arg) '(?b ?B)) 'B) |
123 ((memq (, arg) '(?c ?C)) 'C) | 130 ((memq (, arg) '(?c ?C)) 'C) |
124 ) | 131 ) |
125 )) | 132 )) |
126 | 133 |
134 | |
135 ;; A-list is supposed to be of the form (A . symb) (B . symb)...) | |
136 ;; where the first part of any association is a buffer type and the second is | |
137 ;; an appropriate symbol. Given buffer-type, this function returns the | |
138 ;; symbol. This is used to avoid using `intern' | |
139 (defsubst ediff-get-symbol-from-alist (buf-type alist) | |
140 (cdr (assoc buf-type alist))) | |
141 | |
142 (defconst ediff-difference-vector-alist | |
143 '((A . ediff-difference-vector-A) | |
144 (B . ediff-difference-vector-B) | |
145 (C . ediff-difference-vector-C) | |
146 (Ancestor . ediff-difference-vector-Ancestor))) | |
147 | |
127 (defmacro ediff-get-difference (n buf-type) | 148 (defmacro ediff-get-difference (n buf-type) |
128 (` (aref | 149 (` (aref |
129 (symbol-value | 150 (symbol-value |
130 (intern (format "ediff-difference-vector-%S" (, buf-type)))) (, n)))) | 151 (ediff-get-symbol-from-alist |
152 (, buf-type) ediff-difference-vector-alist)) | |
153 (, n)))) | |
131 | 154 |
132 ;; Tell if it has been previously determined that the region has | 155 ;; Tell if it has been previously determined that the region has |
133 ;; no diffs other than the white space and newlines | 156 ;; no diffs other than the white space and newlines |
134 ;; The argument, N, is the diff region number used by Ediff to index the | 157 ;; The argument, N, is the diff region number used by Ediff to index the |
135 ;; diff vector. It is 1 less than the number seen by the user. | 158 ;; diff vector. It is 1 less than the number seen by the user. |
187 | 210 |
188 (defmacro ediff-get-fine-diff-vector (n buf-type) | 211 (defmacro ediff-get-fine-diff-vector (n buf-type) |
189 (` (ediff-get-fine-diff-vector-from-diff-record | 212 (` (ediff-get-fine-diff-vector-from-diff-record |
190 (ediff-get-difference (, n) (, buf-type))))) | 213 (ediff-get-difference (, n) (, buf-type))))) |
191 | 214 |
192 ;; Macro to switch to BUFFER, evaluate FORMS, returns to original buffer. | 215 ;; Macro to switch to BUFFER, evaluate BODY, returns to original buffer. |
193 ;; Differs from `save-excursion' in that it doesn't save the point and mark. | 216 ;; Doesn't save the point and mark. |
194 ;; This is essentially `emerge-eval-in-buffer' with the test for live buffers." | 217 ;; This is `with-current-buffer' with the added test for live buffers." |
195 (defmacro ediff-eval-in-buffer (buffer &rest forms) | 218 (defmacro ediff-with-current-buffer (buffer &rest body) |
196 (` (let ((StartBuffer (current-buffer))) | 219 (` (if (ediff-buffer-live-p (, buffer)) |
197 (if (ediff-buffer-live-p (, buffer)) | 220 (save-current-buffer |
198 (unwind-protect | 221 (set-buffer (, buffer)) |
199 (progn | 222 (,@ body)) |
200 (set-buffer (, buffer)) | 223 (or (eq this-command 'ediff-quit) |
201 (,@ forms)) | 224 (error ediff-KILLED-VITAL-BUFFER)) |
202 (set-buffer StartBuffer)) | 225 ))) |
203 (or (eq this-command 'ediff-quit) | 226 |
204 (error ediff-KILLED-VITAL-BUFFER)) | |
205 )))) | |
206 | |
207 | 227 |
208 (defsubst ediff-multiframe-setup-p () | 228 (defsubst ediff-multiframe-setup-p () |
209 (and (ediff-window-display-p) ediff-multiframe)) | 229 (and (ediff-window-display-p) ediff-multiframe)) |
210 | 230 |
211 (defmacro ediff-narrow-control-frame-p () | 231 (defmacro ediff-narrow-control-frame-p () |
559 ;; The original values of ediff-protected-variables for buffer C | 579 ;; The original values of ediff-protected-variables for buffer C |
560 (ediff-defvar-local ediff-buffer-values-orig-C nil "") | 580 (ediff-defvar-local ediff-buffer-values-orig-C nil "") |
561 ;; The original values of ediff-protected-variables for buffer Ancestor | 581 ;; The original values of ediff-protected-variables for buffer Ancestor |
562 (ediff-defvar-local ediff-buffer-values-orig-Ancestor nil "") | 582 (ediff-defvar-local ediff-buffer-values-orig-Ancestor nil "") |
563 | 583 |
584 ;; association between buff-type and ediff-buffer-values-orig-* | |
585 (defconst ediff-buffer-values-orig-alist | |
586 '((A . ediff-buffer-values-orig-A) | |
587 (B . ediff-buffer-values-orig-B) | |
588 (C . ediff-buffer-values-orig-C) | |
589 (Ancestor . ediff-buffer-values-orig-Ancestor))) | |
590 | |
564 ;; Buffer-local variables to be saved then restored during Ediff sessions | 591 ;; Buffer-local variables to be saved then restored during Ediff sessions |
565 (defconst ediff-protected-variables '( | 592 (defconst ediff-protected-variables '( |
566 ;;buffer-read-only | 593 ;;buffer-read-only |
567 mode-line-format)) | 594 mode-line-format)) |
568 | 595 |
583 ;; different from the other two (used only in 3-way jobs. | 610 ;; different from the other two (used only in 3-way jobs. |
584 (ediff-defvar-local ediff-difference-vector-A nil "") | 611 (ediff-defvar-local ediff-difference-vector-A nil "") |
585 (ediff-defvar-local ediff-difference-vector-B nil "") | 612 (ediff-defvar-local ediff-difference-vector-B nil "") |
586 (ediff-defvar-local ediff-difference-vector-C nil "") | 613 (ediff-defvar-local ediff-difference-vector-C nil "") |
587 (ediff-defvar-local ediff-difference-vector-Ancestor nil "") | 614 (ediff-defvar-local ediff-difference-vector-Ancestor nil "") |
615 ;; A-list of diff vector types associated with buffer types | |
616 (defconst ediff-difference-vector-alist | |
617 '((A . ediff-difference-vector-A) | |
618 (B . ediff-difference-vector-B) | |
619 (C . ediff-difference-vector-C) | |
620 (Ancestor . ediff-difference-vector-Ancestor))) | |
588 | 621 |
589 ;; [ status status status ...] | 622 ;; [ status status status ...] |
590 ;; Each status: [state-of-merge state-of-ancestor] | 623 ;; Each status: [state-of-merge state-of-ancestor] |
591 ;; state-of-merge is default-A, default-B, prefer-A, or prefer-B. It | 624 ;; state-of-merge is default-A, default-B, prefer-A, or prefer-B. It |
592 ;; indicates the way a diff region was created in buffer C. | 625 ;; indicates the way a diff region was created in buffer C. |
674 (error "%S: Invalid op in ediff-check-version" op)))) | 707 (error "%S: Invalid op in ediff-check-version" op)))) |
675 (cond ((memq op '(= > >=)) nil) | 708 (cond ((memq op '(= > >=)) nil) |
676 ((memq op '(< <=)) t)))) | 709 ((memq op '(< <=)) t)))) |
677 | 710 |
678 | 711 |
679 ;;;; warn if it is a wrong version of emacs | |
680 ;;(if (or (ediff-check-version '< 19 35 'emacs) | |
681 ;; (ediff-check-version '< 19 15 'xemacs)) | |
682 ;; (progn | |
683 ;; (with-output-to-temp-buffer ediff-msg-buffer | |
684 ;; (switch-to-buffer ediff-msg-buffer) | |
685 ;; (insert | |
686 ;; (format " | |
687 ;; | |
688 ;;This version of Ediff requires | |
689 ;; | |
690 ;;\t Emacs 19.35 and higher | |
691 ;;\t OR | |
692 ;;\t XEmacs 19.15 and higher | |
693 ;; | |
694 ;;It is unlikely to work under Emacs version %s | |
695 ;;that you are using... " emacs-version)) | |
696 ;; (if noninteractive | |
697 ;; () | |
698 ;; (beep 1) | |
699 ;; (beep 1) | |
700 ;; (insert "\n\nType any key to continue...") | |
701 ;; (ediff-read-event))) | |
702 ;; (kill-buffer ediff-msg-buffer))) | |
703 | 712 |
704 ;; A fix for NeXT Step | 713 ;; A fix for NeXT Step |
705 ;; Should probably be eliminated in later versions. | 714 ;; Should probably be eliminated in later versions. |
706 (if (and (ediff-window-display-p) (eq (ediff-device-type) 'ns)) | 715 (if (and (ediff-window-display-p) (eq (ediff-device-type) 'ns)) |
707 (progn | 716 (progn |
741 (fset 'ediff-display-pixel-width | 750 (fset 'ediff-display-pixel-width |
742 (symbol-function 'x-display-pixel-width)) | 751 (symbol-function 'x-display-pixel-width)) |
743 (fset 'ediff-display-pixel-height | 752 (fset 'ediff-display-pixel-height |
744 (symbol-function 'x-display-pixel-height)))) | 753 (symbol-function 'x-display-pixel-height)))) |
745 | 754 |
755 ;; A-list of current-diff-overlay symbols asssociated with buf types | |
756 (defconst ediff-current-diff-overlay-alist | |
757 '((A . ediff-current-diff-overlay-A) | |
758 (B . ediff-current-diff-overlay-B) | |
759 (C . ediff-current-diff-overlay-C) | |
760 (Ancestor . ediff-current-diff-overlay-Ancestor))) | |
761 | |
762 ;; A-list of current-diff-face-* symbols asssociated with buf types | |
763 (defconst ediff-current-diff-face-alist | |
764 '((A . ediff-current-diff-face-A) | |
765 (B . ediff-current-diff-face-B) | |
766 (C . ediff-current-diff-face-C) | |
767 (Ancestor . ediff-current-diff-face-Ancestor))) | |
768 | |
746 | 769 |
747 (defun ediff-make-current-diff-overlay (type) | 770 (defun ediff-make-current-diff-overlay (type) |
748 (if (ediff-has-face-support-p) | 771 (if (ediff-has-face-support-p) |
749 (let ((overlay (intern (format "ediff-current-diff-overlay-%S" type))) | 772 (let ((overlay (ediff-get-symbol-from-alist |
773 type ediff-current-diff-overlay-alist)) | |
750 (buffer (ediff-get-buffer type)) | 774 (buffer (ediff-get-buffer type)) |
751 (face (face-name | 775 (face (face-name |
752 (symbol-value | 776 (symbol-value |
753 (intern (format "ediff-current-diff-face-%S" type)))))) | 777 (ediff-get-symbol-from-alist |
778 type ediff-current-diff-face-alist))))) | |
754 (set overlay | 779 (set overlay |
755 (ediff-make-bullet-proof-overlay (point-max) (point-max) buffer)) | 780 (ediff-make-bullet-proof-overlay (point-max) (point-max) buffer)) |
756 (ediff-set-overlay-face (symbol-value overlay) face) | 781 (ediff-set-overlay-face (symbol-value overlay) face) |
757 (ediff-overlay-put (symbol-value overlay) 'ediff ediff-control-buffer)) | 782 (ediff-overlay-put (symbol-value overlay) 'ediff ediff-control-buffer)) |
758 )) | 783 )) |
777 (diff-num ; non-current | 802 (diff-num ; non-current |
778 (format "Difference region %S -- non-current" (1+ diff-num))) | 803 (format "Difference region %S -- non-current" (1+ diff-num))) |
779 (t "")) ; none | 804 (t "")) ; none |
780 )) | 805 )) |
781 | 806 |
782 (defun ediff-set-face (ground face color) | 807 ;;(defun ediff-set-face (ground face color) |
783 "Set face foreground/background." | 808 ;; "Set face foreground/background." |
784 (if (ediff-has-face-support-p) | 809 ;; (if (ediff-has-face-support-p) |
785 (if (ediff-valid-color-p color) | 810 ;; (if (ediff-valid-color-p color) |
786 (if (eq ground 'foreground) | 811 ;; (if (eq ground 'foreground) |
787 (set-face-foreground face color) | 812 ;; (set-face-foreground face color) |
788 (set-face-background face color)) | 813 ;; (set-face-background face color)) |
789 (cond ((memq face | 814 ;; (cond ((memq face |
790 '(ediff-current-diff-face-A | 815 ;; '(ediff-current-diff-face-A |
791 ediff-current-diff-face-B | 816 ;; ediff-current-diff-face-B |
792 ediff-current-diff-face-C | 817 ;; ediff-current-diff-face-C |
793 ediff-current-diff-face-Ancestor)) | 818 ;; ediff-current-diff-face-Ancestor)) |
794 (copy-face 'highlight face)) | 819 ;; (copy-face 'highlight face)) |
795 ((memq face | 820 ;; ((memq face |
796 '(ediff-fine-diff-face-A | 821 ;; '(ediff-fine-diff-face-A |
797 ediff-fine-diff-face-B | 822 ;; ediff-fine-diff-face-B |
798 ediff-fine-diff-face-C | 823 ;; ediff-fine-diff-face-C |
799 ediff-fine-diff-face-Ancestor)) | 824 ;; ediff-fine-diff-face-Ancestor)) |
800 (copy-face 'secondary-selection face) | 825 ;; (copy-face 'secondary-selection face) |
801 (set-face-underline-p face t)) | 826 ;; (set-face-underline-p face t)) |
802 ((memq face | 827 ;; ((memq face |
803 '(ediff-even-diff-face-A | 828 ;; '(ediff-even-diff-face-A |
804 ediff-odd-diff-face-A | 829 ;; ediff-odd-diff-face-A |
805 ediff-even-diff-face-B ediff-odd-diff-face-B | 830 ;; ediff-even-diff-face-B ediff-odd-diff-face-B |
806 ediff-even-diff-face-C ediff-odd-diff-face-C | 831 ;; ediff-even-diff-face-C ediff-odd-diff-face-C |
807 ediff-even-diff-face-Ancestor | 832 ;; ediff-even-diff-face-Ancestor |
808 ediff-odd-diff-face-Ancestor)) | 833 ;; ediff-odd-diff-face-Ancestor)) |
809 (copy-face 'secondary-selection face)))) | 834 ;; (copy-face 'secondary-selection face)))) |
810 )) | 835 ;; )) |
811 | 836 |
812 (defun ediff-set-face-pixmap (face pixmap) | 837 (defun ediff-set-face-pixmap (face pixmap) |
813 "Set face pixmap on a monochrome display." | 838 "Set face pixmap on a monochrome display." |
814 (if (and (ediff-window-display-p) (not (ediff-color-display-p))) | 839 (if (and (ediff-window-display-p) (not (ediff-color-display-p))) |
815 (condition-case nil | 840 (condition-case nil |
820 | 845 |
821 (defun ediff-hide-face (face) | 846 (defun ediff-hide-face (face) |
822 (if (and (ediff-has-face-support-p) ediff-emacs-p) | 847 (if (and (ediff-has-face-support-p) ediff-emacs-p) |
823 (add-to-list 'facemenu-unlisted-faces face))) | 848 (add-to-list 'facemenu-unlisted-faces face))) |
824 | 849 |
825 (defvar ediff-current-diff-face-A | 850 (defgroup ediff-highlighting nil |
826 (if (ediff-has-face-support-p) | 851 "Hilighting of difference regions in Ediff" |
827 (progn | 852 :prefix "ediff-" |
828 (make-face 'ediff-current-diff-face-A) | 853 :group 'ediff) |
829 (ediff-hide-face 'ediff-current-diff-face-A) | 854 |
830 (or (face-differs-from-default-p 'ediff-current-diff-face-A) | 855 ;;(defvar ediff-current-diff-face-A |
831 (cond ((ediff-color-display-p) | 856 ;; (if (ediff-has-face-support-p) |
832 (ediff-set-face | 857 ;; (progn |
833 'foreground 'ediff-current-diff-face-A "firebrick") | 858 ;; (make-face 'ediff-current-diff-face-A) |
834 (ediff-set-face | 859 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-A) |
835 'background 'ediff-current-diff-face-A "pale green")) | 860 ;; (cond ((ediff-color-display-p) |
836 (t | 861 ;; (ediff-set-face |
837 (if ediff-xemacs-p | 862 ;; 'foreground 'ediff-current-diff-face-A "firebrick") |
838 (copy-face 'modeline 'ediff-current-diff-face-A) | 863 ;; (ediff-set-face |
839 (copy-face 'highlight 'ediff-current-diff-face-A)) | 864 ;; 'background 'ediff-current-diff-face-A "pale green")) |
840 ))) | 865 ;; (t |
841 'ediff-current-diff-face-A)) | 866 ;; (if ediff-xemacs-p |
842 "Face for highlighting the selected difference in buffer A.") | 867 ;; (copy-face 'modeline 'ediff-current-diff-face-A) |
843 | 868 ;; (copy-face 'highlight 'ediff-current-diff-face-A)) |
844 (defvar ediff-current-diff-face-B | 869 ;; ))) |
845 (if (ediff-has-face-support-p) | 870 ;; 'ediff-current-diff-face-A)) |
846 (progn | 871 ;; "Face for highlighting the selected difference in buffer A.") |
847 (make-face 'ediff-current-diff-face-B) | 872 |
848 (ediff-hide-face 'ediff-current-diff-face-B) | 873 (defface ediff-current-diff-face-A |
849 (or (face-differs-from-default-p 'ediff-current-diff-face-B) | 874 '((((class color)) (:foreground "firebrick" :background "pale green")) |
850 (cond ((ediff-color-display-p) | 875 (t (:inverse-video t))) |
851 (ediff-set-face | 876 "Face for highlighting the selected difference in buffer A." |
852 'foreground 'ediff-current-diff-face-B "DarkOrchid") | 877 :group 'ediff-highlighting) |
853 (ediff-set-face | 878 ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
854 'background 'ediff-current-diff-face-B "Yellow")) | 879 ;; this variable is set to nil, then again to the appropriate face. |
855 (t | 880 (defvar ediff-current-diff-face-A 'ediff-current-diff-face-A) |
856 (if ediff-xemacs-p | 881 (ediff-hide-face 'ediff-current-diff-face-A) |
857 (copy-face 'modeline 'ediff-current-diff-face-B) | 882 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
858 (copy-face 'highlight 'ediff-current-diff-face-B)) | 883 ;; This means that some user customization may be trashed. |
859 ))) | 884 (if (and ediff-xemacs-p |
860 'ediff-current-diff-face-B)) | 885 (ediff-has-face-support-p) |
861 "Face for highlighting the selected difference in buffer B.") | 886 (not (ediff-color-display-p))) |
887 (copy-face 'modeline 'ediff-current-diff-face-A)) | |
888 | |
889 | |
890 | |
891 ;;(defvar ediff-current-diff-face-B | |
892 ;; (if (ediff-has-face-support-p) | |
893 ;; (progn | |
894 ;; (make-face 'ediff-current-diff-face-B) | |
895 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-B) | |
896 ;; (cond ((ediff-color-display-p) | |
897 ;; (ediff-set-face | |
898 ;; 'foreground 'ediff-current-diff-face-B "DarkOrchid") | |
899 ;; (ediff-set-face | |
900 ;; 'background 'ediff-current-diff-face-B "Yellow")) | |
901 ;; (t | |
902 ;; (if ediff-xemacs-p | |
903 ;; (copy-face 'modeline 'ediff-current-diff-face-B) | |
904 ;; (copy-face 'highlight 'ediff-current-diff-face-B)) | |
905 ;; ))) | |
906 ;; 'ediff-current-diff-face-B)) | |
907 ;; "Face for highlighting the selected difference in buffer B.") | |
862 | 908 |
863 | 909 (defface ediff-current-diff-face-B |
864 (defvar ediff-current-diff-face-C | 910 '((((class color)) (:foreground "DarkOrchid" :background "Yellow")) |
865 (if (ediff-has-face-support-p) | 911 (t (:inverse-video t))) |
866 (progn | 912 "Face for highlighting the selected difference in buffer B." |
867 (make-face 'ediff-current-diff-face-C) | 913 :group 'ediff-highlighting) |
868 (ediff-hide-face 'ediff-current-diff-face-C) | 914 ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
869 (or (face-differs-from-default-p 'ediff-current-diff-face-C) | 915 ;; this variable is set to nil, then again to the appropriate face. |
870 (cond ((ediff-color-display-p) | 916 (defvar ediff-current-diff-face-B 'ediff-current-diff-face-B) |
871 (ediff-set-face | 917 (ediff-hide-face 'ediff-current-diff-face-B) |
872 'foreground 'ediff-current-diff-face-C "Navy") | 918 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
873 (ediff-set-face | 919 ;; This means that some user customization may be trashed. |
874 'background 'ediff-current-diff-face-C "Pink")) | 920 (if (and ediff-xemacs-p |
875 (t | 921 (ediff-has-face-support-p) |
876 (if ediff-xemacs-p | 922 (not (ediff-color-display-p))) |
877 (copy-face 'modeline 'ediff-current-diff-face-C) | 923 (copy-face 'modeline 'ediff-current-diff-face-B)) |
878 (copy-face 'highlight 'ediff-current-diff-face-C)) | 924 |
879 ))) | 925 ;;(defvar ediff-current-diff-face-C |
880 'ediff-current-diff-face-C)) | 926 ;; (if (ediff-has-face-support-p) |
881 "Face for highlighting the selected difference in buffer C.") | 927 ;; (progn |
882 | 928 ;; (make-face 'ediff-current-diff-face-C) |
883 (defvar ediff-current-diff-face-Ancestor | 929 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-C) |
884 (if (ediff-has-face-support-p) | 930 ;; (cond ((ediff-color-display-p) |
885 (progn | 931 ;; (ediff-set-face |
886 (make-face 'ediff-current-diff-face-Ancestor) | 932 ;; 'foreground 'ediff-current-diff-face-C "Navy") |
887 (ediff-hide-face 'ediff-current-diff-face-Ancestor) | 933 ;; (ediff-set-face |
888 (or (face-differs-from-default-p 'ediff-current-diff-face-Ancestor) | 934 ;; 'background 'ediff-current-diff-face-C "Pink")) |
889 (copy-face | 935 ;; (t |
890 'ediff-current-diff-face-C 'ediff-current-diff-face-Ancestor)) | 936 ;; (if ediff-xemacs-p |
891 'ediff-current-diff-face-Ancestor)) | 937 ;; (copy-face 'modeline 'ediff-current-diff-face-C) |
892 "Face for highlighting the selected difference in the ancestor buffer.") | 938 ;; (copy-face 'highlight 'ediff-current-diff-face-C)) |
893 | 939 ;; ))) |
894 (defvar ediff-fine-diff-pixmap "gray3" | 940 ;; 'ediff-current-diff-face-C)) |
895 "Pixmap to use for highlighting fine differences.") | 941 ;; "Face for highlighting the selected difference in buffer C.") |
896 (defvar ediff-odd-diff-pixmap "gray1" | 942 |
897 "Pixmap to use for highlighting odd differences.") | 943 (defface ediff-current-diff-face-C |
898 (defvar ediff-even-diff-pixmap "Stipple" | 944 '((((class color)) (:foreground "Navy" :background "Pink")) |
899 "Pixmap to use for highlighting even differences.") | 945 (t (:inverse-video t))) |
900 | 946 "Face for highlighting the selected difference in buffer C." |
901 (defvar ediff-fine-diff-face-A | 947 :group 'ediff-highlighting) |
902 (if (ediff-has-face-support-p) | 948 ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
903 (progn | 949 ;; this variable is set to nil, then again to the appropriate face. |
904 (make-face 'ediff-fine-diff-face-A) | 950 (defvar ediff-current-diff-face-C 'ediff-current-diff-face-C) |
905 (ediff-hide-face 'ediff-fine-diff-face-A) | 951 (ediff-hide-face 'ediff-current-diff-face-C) |
906 (or (face-differs-from-default-p 'ediff-fine-diff-face-A) | 952 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
907 (cond ((ediff-color-display-p) | 953 ;; This means that some user customization may be trashed. |
908 (ediff-set-face 'foreground 'ediff-fine-diff-face-A | 954 (if (and ediff-xemacs-p |
909 "Navy") | 955 (ediff-has-face-support-p) |
910 (ediff-set-face 'background 'ediff-fine-diff-face-A | 956 (not (ediff-color-display-p))) |
911 "sky blue")) | 957 (copy-face 'modeline 'ediff-current-diff-face-C)) |
912 (t | 958 |
913 (set-face-underline-p 'ediff-fine-diff-face-A t) | 959 ;;(defvar ediff-current-diff-face-Ancestor |
914 (ediff-set-face-pixmap 'ediff-fine-diff-face-A | 960 ;; (if (ediff-has-face-support-p) |
915 ediff-fine-diff-pixmap) | 961 ;; (progn |
916 ))) | 962 ;; (make-face 'ediff-current-diff-face-Ancestor) |
917 'ediff-fine-diff-face-A)) | 963 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-Ancestor) |
918 "Face for highlighting the refinement of the selected diff in buffer A.") | 964 ;; (copy-face |
919 | 965 ;; 'ediff-current-diff-face-C 'ediff-current-diff-face-Ancestor)) |
920 (defvar ediff-fine-diff-face-B | 966 ;; 'ediff-current-diff-face-Ancestor)) |
921 (if (ediff-has-face-support-p) | 967 ;; "Face for highlighting the selected difference in the ancestor buffer.") |
922 (progn | 968 |
923 (make-face 'ediff-fine-diff-face-B) | 969 (defface ediff-current-diff-face-Ancestor |
924 (ediff-hide-face 'ediff-fine-diff-face-B) | 970 '((((class color)) (:foreground "Black" :background "VioletRed")) |
925 (or (face-differs-from-default-p 'ediff-fine-diff-face-B) | 971 (t (:inverse-video t))) |
926 (cond ((ediff-color-display-p) | 972 "Face for highlighting the selected difference in buffer Ancestor." |
927 (ediff-set-face 'foreground 'ediff-fine-diff-face-B "Black") | 973 :group 'ediff-highlighting) |
928 (ediff-set-face 'background 'ediff-fine-diff-face-B "cyan")) | 974 ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
929 (t | 975 ;; this variable is set to nil, then again to the appropriate face. |
930 (set-face-underline-p 'ediff-fine-diff-face-B t) | 976 (defvar ediff-current-diff-face-Ancestor 'ediff-current-diff-face-Ancestor) |
931 (ediff-set-face-pixmap 'ediff-fine-diff-face-B | 977 (ediff-hide-face 'ediff-current-diff-face-Ancestor) |
932 ediff-fine-diff-pixmap) | 978 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. |
933 ))) | 979 ;; This means that some user customization may be trashed. |
934 'ediff-fine-diff-face-B)) | 980 (if (and ediff-xemacs-p |
935 "Face for highlighting the refinement of the selected diff in buffer B.") | 981 (ediff-has-face-support-p) |
982 (not (ediff-color-display-p))) | |
983 (copy-face 'modeline 'ediff-current-diff-face-Ancestor)) | |
984 | |
985 ;;(defvar ediff-fine-diff-pixmap "gray3" | |
986 ;; "Pixmap to use for highlighting fine differences.") | |
987 ;;(defvar ediff-odd-diff-pixmap "gray1" | |
988 ;; "Pixmap to use for highlighting odd differences.") | |
989 ;;(defvar ediff-even-diff-pixmap "Stipple" | |
990 ;; "Pixmap to use for highlighting even differences.") | |
991 | |
992 ;;(defvar ediff-fine-diff-face-A | |
993 ;; (if (ediff-has-face-support-p) | |
994 ;; (progn | |
995 ;; (make-face 'ediff-fine-diff-face-A) | |
996 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-A) | |
997 ;; (cond ((ediff-color-display-p) | |
998 ;; (ediff-set-face 'foreground 'ediff-fine-diff-face-A | |
999 ;; "Navy") | |
1000 ;; (ediff-set-face 'background 'ediff-fine-diff-face-A | |
1001 ;; "sky blue")) | |
1002 ;; (t | |
1003 ;; (set-face-underline-p 'ediff-fine-diff-face-A t) | |
1004 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-A | |
1005 ;; ediff-fine-diff-pixmap) | |
1006 ;; ))) | |
1007 ;; 'ediff-fine-diff-face-A)) | |
1008 ;; "Face for highlighting the refinement of the selected diff in buffer A.") | |
1009 | |
1010 | |
1011 (defface ediff-fine-diff-face-A | |
1012 '((((class color)) (:foreground "Navy" :background "sky blue")) | |
1013 (t (:underline t :stipple "gray3"))) | |
1014 "Face for highlighting the refinement of the selected diff in buffer A." | |
1015 :group 'ediff-highlighting) | |
1016 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1017 ;; this variable is set to nil, then again to the appropriate face. | |
1018 (defvar ediff-fine-diff-face-A 'ediff-fine-diff-face-A) | |
1019 (ediff-hide-face 'ediff-fine-diff-face-A) | |
1020 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1021 ;; This means that some use customization may be trashed. | |
1022 (if (and ediff-xemacs-p | |
1023 (ediff-has-face-support-p) | |
1024 (not (ediff-color-display-p))) | |
1025 (ediff-set-face-pixmap 'ediff-fine-diff-face-A "gray3")) | |
1026 | |
1027 ;;(defvar ediff-fine-diff-face-B | |
1028 ;; (if (ediff-has-face-support-p) | |
1029 ;; (progn | |
1030 ;; (make-face 'ediff-fine-diff-face-B) | |
1031 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-B) | |
1032 ;; (cond ((ediff-color-display-p) | |
1033 ;; (ediff-set-face 'foreground 'ediff-fine-diff-face-B "Black") | |
1034 ;; (ediff-set-face 'background 'ediff-fine-diff-face-B "cyan")) | |
1035 ;; (t | |
1036 ;; (set-face-underline-p 'ediff-fine-diff-face-B t) | |
1037 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-B | |
1038 ;; ediff-fine-diff-pixmap) | |
1039 ;; ))) | |
1040 ;; 'ediff-fine-diff-face-B)) | |
1041 ;; "Face for highlighting the refinement of the selected diff in buffer B.") | |
1042 | |
1043 (defface ediff-fine-diff-face-B | |
1044 '((((class color)) (:foreground "Black" :background "cyan")) | |
1045 (t (:underline t :stipple "gray3"))) | |
1046 "Face for highlighting the refinement of the selected diff in buffer B." | |
1047 :group 'ediff-highlighting) | |
1048 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1049 ;; this variable is set to nil, then again to the appropriate face. | |
1050 (defvar ediff-fine-diff-face-B 'ediff-fine-diff-face-B) | |
1051 (ediff-hide-face 'ediff-fine-diff-face-B) | |
1052 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1053 ;; This means that some use customization may be trashed. | |
1054 (if (and ediff-xemacs-p | |
1055 (ediff-has-face-support-p) | |
1056 (not (ediff-color-display-p))) | |
1057 (ediff-set-face-pixmap 'ediff-fine-diff-face-B "gray3")) | |
936 | 1058 |
937 (defvar ediff-fine-diff-face-C | 1059 ;;(defvar ediff-fine-diff-face-C |
938 (if (ediff-has-face-support-p) | 1060 ;; (if (ediff-has-face-support-p) |
939 (progn | 1061 ;; (progn |
940 (make-face 'ediff-fine-diff-face-C) | 1062 ;; (make-face 'ediff-fine-diff-face-C) |
941 (ediff-hide-face 'ediff-fine-diff-face-C) | 1063 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-C) |
942 (or (face-differs-from-default-p 'ediff-fine-diff-face-C) | 1064 ;; (cond ((ediff-color-display-p) |
943 (cond ((ediff-color-display-p) | 1065 ;; (ediff-set-face 'foreground 'ediff-fine-diff-face-C "black") |
944 (ediff-set-face 'foreground 'ediff-fine-diff-face-C "black") | 1066 ;; (ediff-set-face |
945 (ediff-set-face | 1067 ;; 'background 'ediff-fine-diff-face-C "Turquoise")) |
946 'background 'ediff-fine-diff-face-C "Turquoise")) | 1068 ;; (t |
947 (t | 1069 ;; (set-face-underline-p 'ediff-fine-diff-face-C t) |
948 (set-face-underline-p 'ediff-fine-diff-face-C t) | 1070 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-C |
949 (ediff-set-face-pixmap 'ediff-fine-diff-face-C | 1071 ;; ediff-fine-diff-pixmap) |
950 ediff-fine-diff-pixmap) | 1072 ;; ))) |
951 ))) | 1073 ;; 'ediff-fine-diff-face-C)) |
952 'ediff-fine-diff-face-C)) | 1074 ;; "Face for highlighting the refinement of the selected diff in buffer C.") |
953 "Face for highlighting the refinement of the selected diff in buffer C.") | 1075 |
954 | 1076 (defface ediff-fine-diff-face-C |
955 (defvar ediff-fine-diff-face-Ancestor | 1077 '((((class color)) (:foreground "Black" :background "Turquoise")) |
956 (if (ediff-has-face-support-p) | 1078 (t (:underline t :stipple "gray3"))) |
957 (progn | 1079 "Face for highlighting the refinement of the selected diff in buffer C." |
958 (make-face 'ediff-fine-diff-face-Ancestor) | 1080 :group 'ediff-highlighting) |
959 (ediff-hide-face 'ediff-fine-diff-face-Ancestor) | 1081 ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
960 (or (face-differs-from-default-p 'ediff-fine-diff-face-Ancestor) | 1082 ;; this variable is set to nil, then again to the appropriate face. |
961 (progn | 1083 (defvar ediff-fine-diff-face-C 'ediff-fine-diff-face-C) |
962 (copy-face | 1084 (ediff-hide-face 'ediff-fine-diff-face-C) |
963 'ediff-fine-diff-face-C 'ediff-fine-diff-face-Ancestor) | 1085 ;; Until custom.el for XEmacs starts supporting :stipple we do this. |
964 (ediff-set-face-pixmap 'ediff-fine-diff-face-Ancestor | 1086 ;; This means that some use customization may be trashed. |
965 ediff-fine-diff-pixmap)) | 1087 (if (and ediff-xemacs-p |
966 ))) | 1088 (ediff-has-face-support-p) |
967 "Face highlighting refinements of the selected diff in ancestor buffer. | 1089 (not (ediff-color-display-p))) |
968 Presently, this is not used, as difference regions are not refined in the | 1090 (ediff-set-face-pixmap 'ediff-fine-diff-face-C "gray3")) |
969 ancestor buffer.") | 1091 |
1092 ;;(defvar ediff-fine-diff-face-Ancestor | |
1093 ;; (if (ediff-has-face-support-p) | |
1094 ;; (progn | |
1095 ;; (make-face 'ediff-fine-diff-face-Ancestor) | |
1096 ;; (ediff-hide-face 'ediff-fine-diff-face-Ancestor) | |
1097 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-Ancestor) | |
1098 ;; (progn | |
1099 ;; (copy-face | |
1100 ;; 'ediff-fine-diff-face-C 'ediff-fine-diff-face-Ancestor) | |
1101 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-Ancestor | |
1102 ;; ediff-fine-diff-pixmap)) | |
1103 ;; ))) | |
1104 ;; "Face highlighting refinements of the selected diff in ancestor buffer. | |
1105 ;;Presently, this is not used, as difference regions are not refined in the | |
1106 ;;ancestor buffer.") | |
1107 | |
1108 (defface ediff-fine-diff-face-Ancestor | |
1109 '((((class color)) (:foreground "Black" :background "Green")) | |
1110 (t (:underline t :stipple "gray3"))) | |
1111 "Face for highlighting the refinement of the selected diff in the ancestor buffer. | |
1112 At present, this face is not used and no fine differences are computed for the | |
1113 ancestor buffer." | |
1114 :group 'ediff-highlighting) | |
1115 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1116 ;; this variable is set to nil, then again to the appropriate face. | |
1117 (defvar ediff-fine-diff-face-Ancestor 'ediff-fine-diff-face-Ancestor) | |
1118 (ediff-hide-face 'ediff-fine-diff-face-Ancestor) | |
1119 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1120 ;; This means that some use customization may be trashed. | |
1121 (if (and ediff-xemacs-p | |
1122 (ediff-has-face-support-p) | |
1123 (not (ediff-color-display-p))) | |
1124 (ediff-set-face-pixmap | |
1125 'ediff-fine-diff-face-Ancestor "gray3")) | |
970 | 1126 |
971 (defvar ediff-even-diff-face-A | 1127 ;;(defvar ediff-even-diff-face-A |
972 (if (ediff-has-face-support-p) | 1128 ;; (if (ediff-has-face-support-p) |
973 (progn | 1129 ;; (progn |
974 (make-face 'ediff-even-diff-face-A) | 1130 ;; (make-face 'ediff-even-diff-face-A) |
975 (ediff-hide-face 'ediff-even-diff-face-A) | 1131 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-A) |
976 (or (face-differs-from-default-p 'ediff-even-diff-face-A) | 1132 ;; (cond ((ediff-color-display-p) |
977 (cond ((ediff-color-display-p) | 1133 ;; (ediff-set-face |
978 (ediff-set-face | 1134 ;; 'foreground 'ediff-even-diff-face-A "black") |
979 'foreground 'ediff-even-diff-face-A "black") | 1135 ;; (ediff-set-face |
980 (ediff-set-face | 1136 ;; 'background 'ediff-even-diff-face-A "light grey")) |
981 'background 'ediff-even-diff-face-A "light grey")) | 1137 ;; (t |
982 (t | 1138 ;; (copy-face 'italic 'ediff-even-diff-face-A) |
983 (copy-face 'italic 'ediff-even-diff-face-A) | 1139 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-A |
984 (ediff-set-face-pixmap 'ediff-even-diff-face-A | 1140 ;; ediff-even-diff-pixmap) |
985 ediff-even-diff-pixmap) | 1141 ;; ))) |
986 ))) | 1142 ;; 'ediff-even-diff-face-A)) |
987 'ediff-even-diff-face-A)) | 1143 ;; "Face used for highlighting even-numbered differences in buffer A.") |
988 "Face used to highlight even-numbered differences in buffer A.") | 1144 |
1145 (defface ediff-even-diff-face-A | |
1146 '((((class color)) (:foreground "Black" :background "light grey")) | |
1147 (t (:italic t :stipple "Stipple"))) | |
1148 "Face for highlighting even-numbered non-current differences in buffer A." | |
1149 :group 'ediff-highlighting) | |
1150 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1151 ;; this variable is set to nil, then again to the appropriate face. | |
1152 (defvar ediff-even-diff-face-A 'ediff-even-diff-face-A) | |
1153 (ediff-hide-face 'ediff-even-diff-face-A) | |
1154 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1155 ;; This means that some use customization may be trashed. | |
1156 (if (and ediff-xemacs-p | |
1157 (ediff-has-face-support-p) | |
1158 (not (ediff-color-display-p))) | |
1159 (ediff-set-face-pixmap 'ediff-even-diff-face-A "Stipple")) | |
989 | 1160 |
990 (defvar ediff-even-diff-face-B | 1161 ;;(defvar ediff-even-diff-face-B |
991 (if (ediff-has-face-support-p) | 1162 ;; (if (ediff-has-face-support-p) |
992 (progn | 1163 ;; (progn |
993 (make-face 'ediff-even-diff-face-B) | 1164 ;; (make-face 'ediff-even-diff-face-B) |
994 (ediff-hide-face 'ediff-even-diff-face-B) | 1165 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-B) |
995 (or (face-differs-from-default-p 'ediff-even-diff-face-B) | 1166 ;; (cond ((ediff-color-display-p) |
996 (cond ((ediff-color-display-p) | 1167 ;; (ediff-set-face |
997 (ediff-set-face | 1168 ;; 'foreground 'ediff-even-diff-face-B "White") |
998 'foreground 'ediff-even-diff-face-B "White") | 1169 ;; (ediff-set-face |
999 (ediff-set-face | 1170 ;; 'background 'ediff-even-diff-face-B "Gray")) |
1000 'background 'ediff-even-diff-face-B "Gray")) | 1171 ;; (t |
1001 (t | 1172 ;; (copy-face 'italic 'ediff-even-diff-face-B) |
1002 (copy-face 'italic 'ediff-even-diff-face-B) | 1173 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-B |
1003 (ediff-set-face-pixmap 'ediff-even-diff-face-B | 1174 ;; ediff-even-diff-pixmap) |
1004 ediff-even-diff-pixmap) | 1175 ;; ))) |
1005 ))) | 1176 ;; 'ediff-even-diff-face-B)) |
1006 'ediff-even-diff-face-B)) | 1177 ;; "Face used for highlighting even-numbered differences in buffer B.") |
1007 "Face used to highlight even-numbered differences in buffer B.") | 1178 |
1179 (defface ediff-even-diff-face-B | |
1180 '((((class color)) (:foreground "White" :background "Grey")) | |
1181 (t (:italic t :stipple "Stipple"))) | |
1182 "Face for highlighting even-numbered non-current differences in buffer B." | |
1183 :group 'ediff-highlighting) | |
1184 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1185 ;; this variable is set to nil, then again to the appropriate face. | |
1186 (defvar ediff-even-diff-face-B 'ediff-even-diff-face-B) | |
1187 (ediff-hide-face 'ediff-even-diff-face-B) | |
1188 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1189 ;; This means that some use customization may be trashed. | |
1190 (if (and ediff-xemacs-p | |
1191 (ediff-has-face-support-p) | |
1192 (not (ediff-color-display-p))) | |
1193 (ediff-set-face-pixmap 'ediff-even-diff-face-B "Stipple")) | |
1008 | 1194 |
1009 (defvar ediff-even-diff-face-C | 1195 ;;(defvar ediff-even-diff-face-C |
1010 (if (ediff-has-face-support-p) | 1196 ;; (if (ediff-has-face-support-p) |
1011 (progn | 1197 ;; (progn |
1012 (make-face 'ediff-even-diff-face-C) | 1198 ;; (make-face 'ediff-even-diff-face-C) |
1013 (ediff-hide-face 'ediff-even-diff-face-C) | 1199 ;; (ediff-hide-face 'ediff-even-diff-face-C) |
1014 (or (face-differs-from-default-p 'ediff-even-diff-face-C) | 1200 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-C) |
1015 (progn | 1201 ;; (progn |
1016 (copy-face 'ediff-even-diff-face-A 'ediff-even-diff-face-C) | 1202 ;; (copy-face 'ediff-even-diff-face-A 'ediff-even-diff-face-C) |
1017 (ediff-set-face-pixmap 'ediff-even-diff-face-C | 1203 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-C |
1018 ediff-even-diff-pixmap))) | 1204 ;; ediff-even-diff-pixmap))) |
1019 'ediff-even-diff-face-C)) | 1205 ;; 'ediff-even-diff-face-C)) |
1020 "Face used to highlight even-numbered differences in buffer C.") | 1206 ;; "Face used for highlighting even-numbered differences in buffer C.") |
1021 | 1207 |
1022 (defvar ediff-even-diff-face-Ancestor | 1208 (defface ediff-even-diff-face-C |
1023 (if (ediff-has-face-support-p) | 1209 '((((class color)) (:foreground "Black" :background "light grey")) |
1024 (progn | 1210 (t (:italic t :stipple "Stipple"))) |
1025 (make-face 'ediff-even-diff-face-Ancestor) | 1211 "Face for highlighting even-numbered non-current differences in buffer C." |
1026 (ediff-hide-face 'ediff-even-diff-face-Ancestor) | 1212 :group 'ediff-highlighting) |
1027 (or (face-differs-from-default-p 'ediff-even-diff-face-Ancestor) | 1213 ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
1028 (progn | 1214 ;; this variable is set to nil, then again to the appropriate face. |
1029 (copy-face | 1215 (defvar ediff-even-diff-face-C 'ediff-even-diff-face-C) |
1030 'ediff-even-diff-face-C 'ediff-even-diff-face-Ancestor) | 1216 (ediff-hide-face 'ediff-even-diff-face-C) |
1031 (ediff-set-face-pixmap 'ediff-even-diff-face-Ancestor | 1217 ;; Until custom.el for XEmacs starts supporting :stipple we do this. |
1032 ediff-even-diff-pixmap))) | 1218 ;; This means that some use customization may be trashed. |
1033 'ediff-even-diff-face-Ancestor)) | 1219 (if (and ediff-xemacs-p |
1034 "Face highlighting even-numbered differences in the ancestor buffer.") | 1220 (ediff-has-face-support-p) |
1035 | 1221 (not (ediff-color-display-p))) |
1036 (defvar ediff-odd-diff-face-A | 1222 (ediff-set-face-pixmap 'ediff-even-diff-face-C "Stipple")) |
1037 (if (ediff-has-face-support-p) | 1223 |
1038 (progn | 1224 ;;(defvar ediff-even-diff-face-Ancestor |
1039 (make-face 'ediff-odd-diff-face-A) | 1225 ;; (if (ediff-has-face-support-p) |
1040 (ediff-hide-face 'ediff-odd-diff-face-A) | 1226 ;; (progn |
1041 (or (face-differs-from-default-p 'ediff-odd-diff-face-A) | 1227 ;; (make-face 'ediff-even-diff-face-Ancestor) |
1042 (cond ((ediff-color-display-p) | 1228 ;; (ediff-hide-face 'ediff-even-diff-face-Ancestor) |
1043 (ediff-set-face | 1229 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-Ancestor) |
1044 'foreground 'ediff-odd-diff-face-A "White") | 1230 ;; (progn |
1045 (ediff-set-face | 1231 ;; (copy-face |
1046 'background 'ediff-odd-diff-face-A "Gray")) | 1232 ;; 'ediff-even-diff-face-C 'ediff-even-diff-face-Ancestor) |
1047 (t | 1233 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-Ancestor |
1048 (copy-face 'italic 'ediff-odd-diff-face-A) | 1234 ;; ediff-even-diff-pixmap))) |
1049 (ediff-set-face-pixmap 'ediff-odd-diff-face-A | 1235 ;; 'ediff-even-diff-face-Ancestor)) |
1050 ediff-odd-diff-pixmap) | 1236 ;; "Face highlighting even-numbered differences in the ancestor buffer.") |
1051 ))) | 1237 |
1052 'ediff-odd-diff-face-A)) | 1238 (defface ediff-even-diff-face-Ancestor |
1053 "Face used to highlight odd-numbered differences in buffer A.") | 1239 '((((class color)) (:foreground "White" :background "Grey")) |
1240 (t (:italic t :stipple "Stipple"))) | |
1241 "Face for highlighting even-numbered non-current differences in the ancestor buffer." | |
1242 :group 'ediff-highlighting) | |
1243 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1244 ;; this variable is set to nil, then again to the appropriate face. | |
1245 (defvar ediff-even-diff-face-Ancestor 'ediff-even-diff-face-Ancestor) | |
1246 (ediff-hide-face 'ediff-even-diff-face-Ancestor) | |
1247 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1248 ;; This means that some use customization may be trashed. | |
1249 (if (and ediff-xemacs-p | |
1250 (ediff-has-face-support-p) | |
1251 (not (ediff-color-display-p))) | |
1252 (ediff-set-face-pixmap | |
1253 'ediff-even-diff-face-Ancestor "Stipple")) | |
1254 | |
1255 ;; Association between buffer types and even-diff-face symbols | |
1256 (defconst ediff-even-diff-face-alist | |
1257 '((A . ediff-even-diff-face-A) | |
1258 (B . ediff-even-diff-face-B) | |
1259 (C . ediff-even-diff-face-C) | |
1260 (Ancestor . ediff-even-diff-face-Ancestor))) | |
1261 | |
1262 ;;(defvar ediff-odd-diff-face-A | |
1263 ;; (if (ediff-has-face-support-p) | |
1264 ;; (progn | |
1265 ;; (make-face 'ediff-odd-diff-face-A) | |
1266 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-A) | |
1267 ;; (cond ((ediff-color-display-p) | |
1268 ;; (ediff-set-face | |
1269 ;; 'foreground 'ediff-odd-diff-face-A "White") | |
1270 ;; (ediff-set-face | |
1271 ;; 'background 'ediff-odd-diff-face-A "Gray")) | |
1272 ;; (t | |
1273 ;; (copy-face 'italic 'ediff-odd-diff-face-A) | |
1274 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-A | |
1275 ;; ediff-odd-diff-pixmap) | |
1276 ;; ))) | |
1277 ;; 'ediff-odd-diff-face-A)) | |
1278 ;; "Face used for highlighting odd-numbered differences in buffer A.") | |
1279 | |
1280 (defface ediff-odd-diff-face-A | |
1281 '((((class color)) (:foreground "White" :background "Grey")) | |
1282 (t (:italic t :stipple "gray1"))) | |
1283 "Face for highlighting odd-numbered non-current differences in buffer A." | |
1284 :group 'ediff-highlighting) | |
1285 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1286 ;; this variable is set to nil, then again to the appropriate face. | |
1287 (defvar ediff-odd-diff-face-A 'ediff-odd-diff-face-A) | |
1288 (ediff-hide-face 'ediff-odd-diff-face-A) | |
1289 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1290 ;; This means that some use customization may be trashed. | |
1291 (if (and ediff-xemacs-p | |
1292 (ediff-has-face-support-p) | |
1293 (not (ediff-color-display-p))) | |
1294 (ediff-set-face-pixmap 'ediff-odd-diff-face-A "gray1")) | |
1054 | 1295 |
1055 (defvar ediff-odd-diff-face-B | 1296 ;;(defvar ediff-odd-diff-face-B |
1056 (if (ediff-has-face-support-p) | 1297 ;; (if (ediff-has-face-support-p) |
1057 (progn | 1298 ;; (progn |
1058 (make-face 'ediff-odd-diff-face-B) | 1299 ;; (make-face 'ediff-odd-diff-face-B) |
1059 (ediff-hide-face 'ediff-odd-diff-face-B) | 1300 ;; (ediff-hide-face 'ediff-odd-diff-face-B) |
1060 (or (face-differs-from-default-p 'ediff-odd-diff-face-B) | 1301 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-B) |
1061 (cond ((ediff-color-display-p) | 1302 ;; (cond ((ediff-color-display-p) |
1062 (ediff-set-face | 1303 ;; (ediff-set-face |
1063 'foreground 'ediff-odd-diff-face-B "Black") | 1304 ;; 'foreground 'ediff-odd-diff-face-B "Black") |
1064 (ediff-set-face | 1305 ;; (ediff-set-face |
1065 'background 'ediff-odd-diff-face-B "light grey")) | 1306 ;; 'background 'ediff-odd-diff-face-B "light grey")) |
1066 (t | 1307 ;; (t |
1067 (copy-face 'italic 'ediff-odd-diff-face-B) | 1308 ;; (copy-face 'italic 'ediff-odd-diff-face-B) |
1068 (ediff-set-face-pixmap 'ediff-odd-diff-face-B | 1309 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-B |
1069 ediff-odd-diff-pixmap) | 1310 ;; ediff-odd-diff-pixmap) |
1070 ))) | 1311 ;; ))) |
1071 'ediff-odd-diff-face-B)) | 1312 ;; 'ediff-odd-diff-face-B)) |
1072 "Face used to highlight odd-numbered differences in buffer B.") | 1313 ;; "Face used for highlighting odd-numbered differences in buffer B.") |
1314 | |
1315 (defface ediff-odd-diff-face-B | |
1316 '((((class color)) (:foreground "Black" :background "light grey")) | |
1317 (t (:italic t :stipple "gray1"))) | |
1318 "Face for highlighting odd-numbered non-current differences in buffer B." | |
1319 :group 'ediff-highlighting) | |
1320 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1321 ;; this variable is set to nil, then again to the appropriate face. | |
1322 (defvar ediff-odd-diff-face-B 'ediff-odd-diff-face-B) | |
1323 (ediff-hide-face 'ediff-odd-diff-face-B) | |
1324 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1325 ;; This means that some use customization may be trashed. | |
1326 (if (and ediff-xemacs-p | |
1327 (ediff-has-face-support-p) | |
1328 (not (ediff-color-display-p))) | |
1329 (ediff-set-face-pixmap 'ediff-odd-diff-face-B "gray1")) | |
1073 | 1330 |
1074 (defvar ediff-odd-diff-face-C | 1331 ;;(defvar ediff-odd-diff-face-C |
1075 (if (ediff-has-face-support-p) | 1332 ;; (if (ediff-has-face-support-p) |
1076 (progn | 1333 ;; (progn |
1077 (make-face 'ediff-odd-diff-face-C) | 1334 ;; (make-face 'ediff-odd-diff-face-C) |
1078 (ediff-hide-face 'ediff-odd-diff-face-C) | 1335 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-C) |
1079 (or (face-differs-from-default-p 'ediff-odd-diff-face-C) | 1336 ;; (progn |
1080 (progn | 1337 ;; (copy-face 'ediff-odd-diff-face-A 'ediff-odd-diff-face-C) |
1081 (copy-face 'ediff-odd-diff-face-A 'ediff-odd-diff-face-C) | 1338 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-C |
1082 (ediff-set-face-pixmap 'ediff-odd-diff-face-C | 1339 ;; ediff-odd-diff-pixmap))) |
1083 ediff-odd-diff-pixmap))) | 1340 ;; 'ediff-odd-diff-face-C)) |
1084 'ediff-odd-diff-face-C)) | 1341 ;; "Face used for highlighting odd-numbered differences in buffer C.") |
1085 "Face used to highlight odd-numbered differences in buffer C.") | 1342 |
1086 | 1343 (defface ediff-odd-diff-face-C |
1087 (defvar ediff-odd-diff-face-Ancestor | 1344 '((((class color)) (:foreground "White" :background "Grey")) |
1088 (if (ediff-has-face-support-p) | 1345 (t (:italic t :stipple "gray1"))) |
1089 (progn | 1346 "Face for highlighting odd-numbered non-current differences in buffer C." |
1090 (make-face 'ediff-odd-diff-face-Ancestor) | 1347 :group 'ediff-highlighting) |
1091 (ediff-hide-face 'ediff-odd-diff-face-Ancestor) | 1348 ;; An internal variable. Ediff takes the face from here. When unhighlighting, |
1092 (or (face-differs-from-default-p 'ediff-odd-diff-face-Ancestor) | 1349 ;; this variable is set to nil, then again to the appropriate face. |
1093 (progn | 1350 (defvar ediff-odd-diff-face-C 'ediff-odd-diff-face-C) |
1094 (copy-face 'ediff-odd-diff-face-C 'ediff-odd-diff-face-Ancestor) | 1351 (ediff-hide-face 'ediff-odd-diff-face-C) |
1095 (ediff-set-face-pixmap 'ediff-odd-diff-face-Ancestor | 1352 ;; Until custom.el for XEmacs starts supporting :stipple we do this. |
1096 ediff-odd-diff-pixmap))) | 1353 ;; This means that some use customization may be trashed. |
1097 'ediff-odd-diff-face-Ancestor)) | 1354 (if (and ediff-xemacs-p |
1098 "Face used to highlight even-numbered differences in the ancestor buffer.") | 1355 (ediff-has-face-support-p) |
1356 (not (ediff-color-display-p))) | |
1357 (ediff-set-face-pixmap 'ediff-odd-diff-face-C "gray1")) | |
1358 | |
1359 ;;(defvar ediff-odd-diff-face-Ancestor | |
1360 ;; (if (ediff-has-face-support-p) | |
1361 ;; (progn | |
1362 ;; (make-face 'ediff-odd-diff-face-Ancestor) | |
1363 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-Ancestor) | |
1364 ;; (progn | |
1365 ;; (copy-face 'ediff-odd-diff-face-C 'ediff-odd-diff-face-Ancestor) | |
1366 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-Ancestor | |
1367 ;; ediff-odd-diff-pixmap))) | |
1368 ;; 'ediff-odd-diff-face-Ancestor)) | |
1369 ;; "Face used for highlighting even-numbered differences in the ancestor buffer.") | |
1370 | |
1371 (defface ediff-odd-diff-face-Ancestor | |
1372 '((((class color)) (:foreground "Black" :background "light grey")) | |
1373 (t (:italic t :stipple "gray1"))) | |
1374 "Face for highlighting odd-numbered non-current differences in the ancestor buffer." | |
1375 :group 'ediff-highlighting) | |
1376 ;; An internal variable. Ediff takes the face from here. When unhighlighting, | |
1377 ;; this variable is set to nil, then again to the appropriate face. | |
1378 (defvar ediff-odd-diff-face-Ancestor 'ediff-odd-diff-face-Ancestor) | |
1379 (ediff-hide-face 'ediff-odd-diff-face-Ancestor) | |
1380 ;; Until custom.el for XEmacs starts supporting :stipple we do this. | |
1381 ;; This means that some use customization may be trashed. | |
1382 (if (and ediff-xemacs-p | |
1383 (ediff-has-face-support-p) | |
1384 (not (ediff-color-display-p))) | |
1385 (ediff-set-face-pixmap 'ediff-odd-diff-face-Ancestor "gray1")) | |
1386 | |
1387 ;; Association between buffer types and odd-diff-face symbols | |
1388 (defconst ediff-odd-diff-face-alist | |
1389 '((A . ediff-odd-diff-face-A) | |
1390 (B . ediff-odd-diff-face-B) | |
1391 (C . ediff-odd-diff-face-C) | |
1392 (Ancestor . ediff-odd-diff-face-Ancestor))) | |
1393 | |
1394 ;; A-list of fine-diff face symbols associated with buffer types | |
1395 (defconst ediff-fine-diff-face-alist | |
1396 '((A . ediff-fine-diff-face-A) | |
1397 (B . ediff-fine-diff-face-B) | |
1398 (C . ediff-fine-diff-face-C) | |
1399 (Ancestor . ediff-fine-diff-face-Ancestor))) | |
1099 | 1400 |
1100 ;; Help echo | 1401 ;; Help echo |
1101 (put 'ediff-fine-diff-face-A 'ediff-help-echo | 1402 (put 'ediff-fine-diff-face-A 'ediff-help-echo |
1102 "A `refinement' of the current difference region") | 1403 "A `refinement' of the current difference region") |
1103 (put 'ediff-fine-diff-face-B 'ediff-help-echo | 1404 (put 'ediff-fine-diff-face-B 'ediff-help-echo |
1116 "Overlay for the current difference region in buffer B.") | 1417 "Overlay for the current difference region in buffer B.") |
1117 (ediff-defvar-local ediff-current-diff-overlay-C nil | 1418 (ediff-defvar-local ediff-current-diff-overlay-C nil |
1118 "Overlay for the current difference region in buffer C.") | 1419 "Overlay for the current difference region in buffer C.") |
1119 (ediff-defvar-local ediff-current-diff-overlay-Ancestor nil | 1420 (ediff-defvar-local ediff-current-diff-overlay-Ancestor nil |
1120 "Overlay for the current difference region in the ancestor buffer.") | 1421 "Overlay for the current difference region in the ancestor buffer.") |
1121 | 1422 |
1122 ;; Compute priority of ediff overlay. | 1423 ;; Compute priority of ediff overlay. |
1123 (defun ediff-highest-priority (start end buffer) | 1424 (defun ediff-highest-priority (start end buffer) |
1124 (let ((pos (max 1 (1- start))) | 1425 (let ((pos (max 1 (1- start))) |
1125 ovr-list) | 1426 ovr-list) |
1126 (if ediff-xemacs-p | 1427 (if ediff-xemacs-p |
1127 (1+ ediff-shadow-overlay-priority) | 1428 (1+ ediff-shadow-overlay-priority) |
1128 (ediff-eval-in-buffer buffer | 1429 (ediff-with-current-buffer buffer |
1129 (while (< pos (min (point-max) (1+ end))) | 1430 (while (< pos (min (point-max) (1+ end))) |
1130 (setq ovr-list (append (overlays-at pos) ovr-list)) | 1431 (setq ovr-list (append (overlays-at pos) ovr-list)) |
1131 (setq pos (next-overlay-change pos))) | 1432 (setq pos (next-overlay-change pos))) |
1132 (1+ (apply '+ | 1433 (1+ (apply '+ |
1133 (mapcar (function | 1434 (mapcar (function |
1238 (kill-buffer (get-buffer buf)))) | 1539 (kill-buffer (get-buffer buf)))) |
1239 | 1540 |
1240 (defsubst ediff-background-face (buf-type dif-num) | 1541 (defsubst ediff-background-face (buf-type dif-num) |
1241 ;; The value of dif-num is always 1- the one that user sees. | 1542 ;; The value of dif-num is always 1- the one that user sees. |
1242 ;; This is why even face is used when dif-num is odd. | 1543 ;; This is why even face is used when dif-num is odd. |
1243 (intern (format (if (ediff-odd-p dif-num) | 1544 (ediff-get-symbol-from-alist |
1244 "ediff-even-diff-face-%S" | 1545 buf-type (if (ediff-odd-p dif-num) |
1245 "ediff-odd-diff-face-%S") | 1546 ediff-even-diff-face-alist |
1246 buf-type))) | 1547 ediff-odd-diff-face-alist) |
1548 )) | |
1247 | 1549 |
1248 | 1550 |
1249 ;; activate faces on diff regions in buffer | 1551 ;; activate faces on diff regions in buffer |
1250 (defun ediff-paint-background-regions-in-one-buffer (buf-type unhighlight) | 1552 (defun ediff-paint-background-regions-in-one-buffer (buf-type unhighlight) |
1251 (let ((diff-vector | 1553 (let ((diff-vector |
1252 (eval (intern (format "ediff-difference-vector-%S" buf-type)))) | 1554 (eval (ediff-get-symbol-from-alist |
1555 buf-type ediff-difference-vector-alist))) | |
1253 overl diff-num) | 1556 overl diff-num) |
1254 (mapcar (function | 1557 (mapcar (function |
1255 (lambda (rec) | 1558 (lambda (rec) |
1256 (setq overl (ediff-get-diff-overlay-from-diff-record rec) | 1559 (setq overl (ediff-get-diff-overlay-from-diff-record rec) |
1257 diff-num (ediff-overlay-get overl 'ediff-diff-num)) | 1560 diff-num (ediff-overlay-get overl 'ediff-diff-num)) |
1277 'Ancestor unhighlight)) | 1580 'Ancestor unhighlight)) |
1278 | 1581 |
1279 (defun ediff-highlight-diff-in-one-buffer (n buf-type) | 1582 (defun ediff-highlight-diff-in-one-buffer (n buf-type) |
1280 (if (ediff-buffer-live-p (ediff-get-buffer buf-type)) | 1583 (if (ediff-buffer-live-p (ediff-get-buffer buf-type)) |
1281 (let* ((buff (ediff-get-buffer buf-type)) | 1584 (let* ((buff (ediff-get-buffer buf-type)) |
1282 (last (ediff-eval-in-buffer buff (point-max))) | 1585 (last (ediff-with-current-buffer buff (point-max))) |
1283 (begin (ediff-get-diff-posn buf-type 'beg n)) | 1586 (begin (ediff-get-diff-posn buf-type 'beg n)) |
1284 (end (ediff-get-diff-posn buf-type 'end n)) | 1587 (end (ediff-get-diff-posn buf-type 'end n)) |
1285 (xtra (if (equal begin end) 1 0)) | 1588 (xtra (if (equal begin end) 1 0)) |
1286 (end-hilit (min last (+ end xtra))) | 1589 (end-hilit (min last (+ end xtra))) |
1287 (current-diff-overlay | 1590 (current-diff-overlay |
1288 (symbol-value | 1591 (symbol-value |
1289 (intern (format "ediff-current-diff-overlay-%S" buf-type))))) | 1592 (ediff-get-symbol-from-alist |
1593 buf-type ediff-current-diff-overlay-alist)))) | |
1290 | 1594 |
1291 (if ediff-xemacs-p | 1595 (if ediff-xemacs-p |
1292 (ediff-move-overlay current-diff-overlay begin end-hilit) | 1596 (ediff-move-overlay current-diff-overlay begin end-hilit) |
1293 (ediff-move-overlay current-diff-overlay begin end-hilit buff)) | 1597 (ediff-move-overlay current-diff-overlay begin end-hilit buff)) |
1294 (ediff-overlay-put current-diff-overlay 'priority | 1598 (ediff-overlay-put current-diff-overlay 'priority |
1303 | 1607 |
1304 (defun ediff-unhighlight-diff-in-one-buffer (buf-type) | 1608 (defun ediff-unhighlight-diff-in-one-buffer (buf-type) |
1305 (if (ediff-buffer-live-p (ediff-get-buffer buf-type)) | 1609 (if (ediff-buffer-live-p (ediff-get-buffer buf-type)) |
1306 (let ((current-diff-overlay | 1610 (let ((current-diff-overlay |
1307 (symbol-value | 1611 (symbol-value |
1308 (intern (format "ediff-current-diff-overlay-%S" buf-type)))) | 1612 (ediff-get-symbol-from-alist |
1613 buf-type ediff-current-diff-overlay-alist))) | |
1309 (overlay | 1614 (overlay |
1310 (ediff-get-diff-overlay ediff-current-difference buf-type)) | 1615 (ediff-get-diff-overlay ediff-current-difference buf-type)) |
1311 ) | 1616 ) |
1312 | 1617 |
1313 (ediff-move-overlay current-diff-overlay 1 1) | 1618 (ediff-move-overlay current-diff-overlay 1 1) |
1324 (defun ediff-unhighlight-diffs-totally-in-one-buffer (buf-type) | 1629 (defun ediff-unhighlight-diffs-totally-in-one-buffer (buf-type) |
1325 (ediff-unselect-and-select-difference -1) | 1630 (ediff-unselect-and-select-difference -1) |
1326 (if (and (ediff-has-face-support-p) ediff-use-faces) | 1631 (if (and (ediff-has-face-support-p) ediff-use-faces) |
1327 (let* ((inhibit-quit t) | 1632 (let* ((inhibit-quit t) |
1328 (current-diff-overlay-var | 1633 (current-diff-overlay-var |
1329 (intern (format "ediff-current-diff-overlay-%S" buf-type))) | 1634 (ediff-get-symbol-from-alist |
1635 buf-type ediff-current-diff-overlay-alist)) | |
1330 (current-diff-overlay (symbol-value current-diff-overlay-var))) | 1636 (current-diff-overlay (symbol-value current-diff-overlay-var))) |
1331 (ediff-paint-background-regions 'unhighlight) | 1637 (ediff-paint-background-regions 'unhighlight) |
1332 (if (ediff-overlayp current-diff-overlay) | 1638 (if (ediff-overlayp current-diff-overlay) |
1333 (ediff-delete-overlay current-diff-overlay)) | 1639 (ediff-delete-overlay current-diff-overlay)) |
1334 (set current-diff-overlay-var nil) | 1640 (set current-diff-overlay-var nil) |
1555 (defun ediff-whitespace-diff-region-p (n buf-type) | 1861 (defun ediff-whitespace-diff-region-p (n buf-type) |
1556 (or (and (eq buf-type 'C) (not ediff-3way-job)) | 1862 (or (and (eq buf-type 'C) (not ediff-3way-job)) |
1557 (ediff-empty-diff-region-p n buf-type) | 1863 (ediff-empty-diff-region-p n buf-type) |
1558 (let ((beg (ediff-get-diff-posn buf-type 'beg n)) | 1864 (let ((beg (ediff-get-diff-posn buf-type 'beg n)) |
1559 (end (ediff-get-diff-posn buf-type 'end n))) | 1865 (end (ediff-get-diff-posn buf-type 'end n))) |
1560 (ediff-eval-in-buffer (ediff-get-buffer buf-type) | 1866 (ediff-with-current-buffer (ediff-get-buffer buf-type) |
1561 (save-excursion | 1867 (save-excursion |
1562 (goto-char beg) | 1868 (goto-char beg) |
1563 (skip-chars-forward ediff-whitespace) | 1869 (skip-chars-forward ediff-whitespace) |
1564 (>= (point) end)))))) | 1870 (>= (point) end)))))) |
1565 | 1871 |
1630 str)))) | 1936 str)))) |
1631 | 1937 |
1632 | 1938 |
1633 | 1939 |
1634 (defsubst ediff-get-region-contents (n buf-type ctrl-buf &optional start end) | 1940 (defsubst ediff-get-region-contents (n buf-type ctrl-buf &optional start end) |
1635 (ediff-eval-in-buffer | 1941 (ediff-with-current-buffer |
1636 (ediff-eval-in-buffer ctrl-buf (ediff-get-buffer buf-type)) | 1942 (ediff-with-current-buffer ctrl-buf (ediff-get-buffer buf-type)) |
1637 (buffer-substring | 1943 (buffer-substring |
1638 (or start (ediff-get-diff-posn buf-type 'beg n ctrl-buf)) | 1944 (or start (ediff-get-diff-posn buf-type 'beg n ctrl-buf)) |
1639 (or end (ediff-get-diff-posn buf-type 'end n ctrl-buf))))) | 1945 (or end (ediff-get-diff-posn buf-type 'end n ctrl-buf))))) |
1640 | 1946 |
1641 ;; If ediff modified mode line, strip the modification | 1947 ;; If ediff modified mode line, strip the modification |
1676 fname)) | 1982 fname)) |
1677 | 1983 |
1678 | 1984 |
1679 ;;; Local Variables: | 1985 ;;; Local Variables: |
1680 ;;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun) | 1986 ;;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun) |
1681 ;;; eval: (put 'ediff-eval-in-buffer 'lisp-indent-hook 1) | 1987 ;;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1) |
1682 ;;; eval: (put 'ediff-eval-in-buffer 'edebug-form-spec '(form body)) | 1988 ;;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body)) |
1683 ;;; End: | 1989 ;;; End: |
1684 | 1990 |
1685 (provide 'ediff-init) | 1991 (provide 'ediff-init) |
1686 | 1992 |
1687 | 1993 |