comparison lisp/ediff-init.el @ 21940:f7e788ea680b

new version
author Michael Kifer <kifer@cs.stonybrook.edu>
date Mon, 04 May 1998 22:42:59 +0000
parents 984881b316fc
children ace3a9c44f3a
comparison
equal deleted inserted replaced
21939:e9014d2166a4 21940:f7e788ea680b
30 (defvar ediff-grab-mouse) 30 (defvar ediff-grab-mouse)
31 (defvar ediff-mouse-pixel-position) 31 (defvar ediff-mouse-pixel-position)
32 (defvar ediff-mouse-pixel-threshold) 32 (defvar ediff-mouse-pixel-threshold)
33 (defvar ediff-whitespace) 33 (defvar ediff-whitespace)
34 (defvar ediff-multiframe) 34 (defvar ediff-multiframe)
35 (defvar ediff-use-toolbar-p)
35 36
36 (and noninteractive 37 (and noninteractive
37 (eval-when-compile 38 (eval-when-compile
38 (load "ange-ftp" 'noerror))) 39 (load "ange-ftp" 'noerror)))
39 ;; end pacifier 40 ;; end pacifier
57 ;; in XEmacs: device-type is tty on tty and stream in batch. 58 ;; in XEmacs: device-type is tty on tty and stream in batch.
58 (defun ediff-window-display-p () 59 (defun ediff-window-display-p ()
59 (and (ediff-device-type) (not (memq (ediff-device-type) '(tty pc stream))))) 60 (and (ediff-device-type) (not (memq (ediff-device-type) '(tty pc stream)))))
60 61
61 ;; test if supports faces 62 ;; test if supports faces
62 ;; ediff-force-faces is for those devices that support faces, but we don't know
63 ;; this yet
64 (defun ediff-has-face-support-p () 63 (defun ediff-has-face-support-p ()
65 (cond ((ediff-window-display-p)) 64 (cond ((ediff-window-display-p))
66 (ediff-force-faces) 65 (ediff-force-faces)
67 (ediff-emacs-p (memq (ediff-device-type) '(pc))) 66 (ediff-emacs-p (memq (ediff-device-type) '(pc)))
68 (ediff-xemacs-p (memq (ediff-device-type) '(tty pc))))) 67 (ediff-xemacs-p (memq (ediff-device-type) '(tty pc)))))
69 68
70 69 (defun ediff-has-toolbar-support-p ()
70 (and ediff-xemacs-p
71 (featurep 'toolbar)
72 (console-on-window-system-p)))
73
74 (defun ediff-use-toolbar-p ()
75 (and (ediff-has-toolbar-support-p) ;Can it do it ?
76 (boundp 'ediff-use-toolbar-p)
77 ediff-use-toolbar-p)) ;Does the user want it ?
78
71 ;; Defines SYMBOL as an advertised local variable. 79 ;; Defines SYMBOL as an advertised local variable.
72 ;; Performs a defvar, then executes `make-variable-buffer-local' on 80 ;; Performs a defvar, then executes `make-variable-buffer-local' on
73 ;; the variable. Also sets the `permanent-local' property, 81 ;; the variable. Also sets the `permanent-local' property,
74 ;; so that `kill-all-local-variables' (called by major-mode setting 82 ;; so that `kill-all-local-variables' (called by major-mode setting
75 ;; commands) won't destroy Ediff control variables. 83 ;; commands) won't destroy Ediff control variables.
524 :type 'string 532 :type 'string
525 :tag "Region after-flag in the middle of line" 533 :tag "Region after-flag in the middle of line"
526 :group 'ediff) 534 :group 'ediff)
527 535
528 536
529 (ediff-defvar-local ediff-use-faces t 537 (ediff-defvar-local ediff-use-faces nil "")
538 (defcustom ediff-use-faces t
530 "If t, differences are highlighted using faces, if device supports faces. 539 "If t, differences are highlighted using faces, if device supports faces.
531 If nil, differences are highlighted using ASCII flags, ediff-before-flag 540 If nil, differences are highlighted using ASCII flags, ediff-before-flag
532 and ediff-after-flag. On a non-window system, differences are always 541 and ediff-after-flag. On a non-window system, differences are always
533 highlighted using ASCII flags. 542 highlighted using ASCII flags."
534 This variable can be set either in .emacs or toggled interactively. 543 :type 'boolean
535 Use `setq-default' if setting it in .emacs") 544 :group 'ediff-highlighting)
536 545
537 ;; this indicates that diff regions are word-size, so fine diffs are 546 ;; this indicates that diff regions are word-size, so fine diffs are
538 ;; permanently nixed; used in ediff-windows-wordwise and ediff-regions-wordwise 547 ;; permanently nixed; used in ediff-windows-wordwise and ediff-regions-wordwise
539 (ediff-defvar-local ediff-word-mode nil "") 548 (ediff-defvar-local ediff-word-mode nil "")
540 ;; Name of the job (ediff-files, ediff-windows, etc.) 549 ;; Name of the job (ediff-files, ediff-windows, etc.)
567 Supplying a prefix argument to the quit command `q' temporarily reverses the 576 Supplying a prefix argument to the quit command `q' temporarily reverses the
568 meaning of this variable." 577 meaning of this variable."
569 :type 'boolean 578 :type 'boolean
570 :group 'ediff) 579 :group 'ediff)
571 580
572 (ediff-defvar-local ediff-highlight-all-diffs t 581 (ediff-defvar-local ediff-highlight-all-diffs nil "")
582 (defcustom ediff-highlight-all-diffs t
573 "If nil, only the selected differences are highlighted. 583 "If nil, only the selected differences are highlighted.
574 This variable can be set either in .emacs or toggled interactively, using 584 Otherwise, all difference regions are highlighted, but the selected region is
575 ediff-toggle-hilit. Use `setq-default' to set it.") 585 shown in brighter colors."
586 :type 'boolean
587 :group 'ediff-highlighting)
576 588
577 ;; A var local to each control panel buffer. Indicates highlighting style 589 ;; A var local to each control panel buffer. Indicates highlighting style
578 ;; in effect for this buffer: `face', `ascii', nil -- temporarily 590 ;; in effect for this buffer: `face', `ascii', nil -- temporarily
579 ;; unhighlighted, `off' -- turned off \(on a dumb terminal only\). 591 ;; unhighlighted, `off' -- turned off \(on a dumb terminal only\).
580 (ediff-defvar-local ediff-highlighting-style nil "") 592 (ediff-defvar-local ediff-highlighting-style nil "")
817 (diff-num ; non-current 829 (diff-num ; non-current
818 (format "Difference region %S -- non-current" (1+ diff-num))) 830 (format "Difference region %S -- non-current" (1+ diff-num)))
819 (t "")) ; none 831 (t "")) ; none
820 )) 832 ))
821 833
822 ;;(defun ediff-set-face (ground face color)
823 ;; "Set face foreground/background."
824 ;; (if (ediff-has-face-support-p)
825 ;; (if (ediff-valid-color-p color)
826 ;; (if (eq ground 'foreground)
827 ;; (set-face-foreground face color)
828 ;; (set-face-background face color))
829 ;; (cond ((memq face
830 ;; '(ediff-current-diff-face-A
831 ;; ediff-current-diff-face-B
832 ;; ediff-current-diff-face-C
833 ;; ediff-current-diff-face-Ancestor))
834 ;; (copy-face 'highlight face))
835 ;; ((memq face
836 ;; '(ediff-fine-diff-face-A
837 ;; ediff-fine-diff-face-B
838 ;; ediff-fine-diff-face-C
839 ;; ediff-fine-diff-face-Ancestor))
840 ;; (copy-face 'secondary-selection face)
841 ;; (set-face-underline-p face t))
842 ;; ((memq face
843 ;; '(ediff-even-diff-face-A
844 ;; ediff-odd-diff-face-A
845 ;; ediff-even-diff-face-B ediff-odd-diff-face-B
846 ;; ediff-even-diff-face-C ediff-odd-diff-face-C
847 ;; ediff-even-diff-face-Ancestor
848 ;; ediff-odd-diff-face-Ancestor))
849 ;; (copy-face 'secondary-selection face))))
850 ;; ))
851 834
852 (defun ediff-set-face-pixmap (face pixmap) 835 (defun ediff-set-face-pixmap (face pixmap)
853 "Set face pixmap on a monochrome display." 836 "Set face pixmap on a monochrome display."
854 (if (and (ediff-window-display-p) (not (ediff-color-display-p))) 837 (if (and (ediff-window-display-p) (not (ediff-color-display-p)))
855 (condition-case nil 838 (condition-case nil
861 (defun ediff-hide-face (face) 844 (defun ediff-hide-face (face)
862 (if (and (ediff-has-face-support-p) ediff-emacs-p) 845 (if (and (ediff-has-face-support-p) ediff-emacs-p)
863 (add-to-list 'facemenu-unlisted-faces face))) 846 (add-to-list 'facemenu-unlisted-faces face)))
864 847
865 848
866 ;;(defvar ediff-current-diff-face-A
867 ;; (if (ediff-has-face-support-p)
868 ;; (progn
869 ;; (make-face 'ediff-current-diff-face-A)
870 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-A)
871 ;; (cond ((ediff-color-display-p)
872 ;; (ediff-set-face
873 ;; 'foreground 'ediff-current-diff-face-A "firebrick")
874 ;; (ediff-set-face
875 ;; 'background 'ediff-current-diff-face-A "pale green"))
876 ;; (t
877 ;; (if ediff-xemacs-p
878 ;; (copy-face 'modeline 'ediff-current-diff-face-A)
879 ;; (copy-face 'highlight 'ediff-current-diff-face-A))
880 ;; )))
881 ;; 'ediff-current-diff-face-A))
882 ;; "Face for highlighting the selected difference in buffer A.")
883 849
884 (defface ediff-current-diff-face-A 850 (defface ediff-current-diff-face-A
885 '((((class color)) (:foreground "firebrick" :background "pale green")) 851 '((((class color)) (:foreground "firebrick" :background "pale green"))
886 (t (:inverse-video t))) 852 (t (:inverse-video t)))
887 "Face for highlighting the selected difference in buffer A." 853 "Face for highlighting the selected difference in buffer A."
901 (not (ediff-color-display-p))) 867 (not (ediff-color-display-p)))
902 (copy-face 'modeline 'ediff-current-diff-face-A)) 868 (copy-face 'modeline 'ediff-current-diff-face-A))
903 869
904 870
905 871
906 ;;(defvar ediff-current-diff-face-B
907 ;; (if (ediff-has-face-support-p)
908 ;; (progn
909 ;; (make-face 'ediff-current-diff-face-B)
910 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-B)
911 ;; (cond ((ediff-color-display-p)
912 ;; (ediff-set-face
913 ;; 'foreground 'ediff-current-diff-face-B "DarkOrchid")
914 ;; (ediff-set-face
915 ;; 'background 'ediff-current-diff-face-B "Yellow"))
916 ;; (t
917 ;; (if ediff-xemacs-p
918 ;; (copy-face 'modeline 'ediff-current-diff-face-B)
919 ;; (copy-face 'highlight 'ediff-current-diff-face-B))
920 ;; )))
921 ;; 'ediff-current-diff-face-B))
922 ;; "Face for highlighting the selected difference in buffer B.")
923
924 (defface ediff-current-diff-face-B 872 (defface ediff-current-diff-face-B
925 '((((class color)) (:foreground "DarkOrchid" :background "Yellow")) 873 '((((class color)) (:foreground "DarkOrchid" :background "Yellow"))
926 (t (:inverse-video t))) 874 (t (:inverse-video t)))
927 "Face for highlighting the selected difference in buffer B." 875 "Face for highlighting the selected difference in buffer B."
928 :group 'ediff-highlighting) 876 :group 'ediff-highlighting)
939 (if (and ediff-xemacs-p 887 (if (and ediff-xemacs-p
940 (ediff-has-face-support-p) 888 (ediff-has-face-support-p)
941 (not (ediff-color-display-p))) 889 (not (ediff-color-display-p)))
942 (copy-face 'modeline 'ediff-current-diff-face-B)) 890 (copy-face 'modeline 'ediff-current-diff-face-B))
943 891
944 ;;(defvar ediff-current-diff-face-C
945 ;; (if (ediff-has-face-support-p)
946 ;; (progn
947 ;; (make-face 'ediff-current-diff-face-C)
948 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-C)
949 ;; (cond ((ediff-color-display-p)
950 ;; (ediff-set-face
951 ;; 'foreground 'ediff-current-diff-face-C "Navy")
952 ;; (ediff-set-face
953 ;; 'background 'ediff-current-diff-face-C "Pink"))
954 ;; (t
955 ;; (if ediff-xemacs-p
956 ;; (copy-face 'modeline 'ediff-current-diff-face-C)
957 ;; (copy-face 'highlight 'ediff-current-diff-face-C))
958 ;; )))
959 ;; 'ediff-current-diff-face-C))
960 ;; "Face for highlighting the selected difference in buffer C.")
961 892
962 (defface ediff-current-diff-face-C 893 (defface ediff-current-diff-face-C
963 '((((class color)) (:foreground "Navy" :background "Pink")) 894 '((((class color)) (:foreground "Navy" :background "Pink"))
964 (t (:inverse-video t))) 895 (t (:inverse-video t)))
965 "Face for highlighting the selected difference in buffer C." 896 "Face for highlighting the selected difference in buffer C."
977 (if (and ediff-xemacs-p 908 (if (and ediff-xemacs-p
978 (ediff-has-face-support-p) 909 (ediff-has-face-support-p)
979 (not (ediff-color-display-p))) 910 (not (ediff-color-display-p)))
980 (copy-face 'modeline 'ediff-current-diff-face-C)) 911 (copy-face 'modeline 'ediff-current-diff-face-C))
981 912
982 ;;(defvar ediff-current-diff-face-Ancestor
983 ;; (if (ediff-has-face-support-p)
984 ;; (progn
985 ;; (make-face 'ediff-current-diff-face-Ancestor)
986 ;; (or (face-differs-from-default-p 'ediff-current-diff-face-Ancestor)
987 ;; (copy-face
988 ;; 'ediff-current-diff-face-C 'ediff-current-diff-face-Ancestor))
989 ;; 'ediff-current-diff-face-Ancestor))
990 ;; "Face for highlighting the selected difference in the ancestor buffer.")
991 913
992 (defface ediff-current-diff-face-Ancestor 914 (defface ediff-current-diff-face-Ancestor
993 '((((class color)) (:foreground "Black" :background "VioletRed")) 915 '((((class color)) (:foreground "Black" :background "VioletRed"))
994 (t (:inverse-video t))) 916 (t (:inverse-video t)))
995 "Face for highlighting the selected difference in buffer Ancestor." 917 "Face for highlighting the selected difference in buffer Ancestor."
1007 (if (and ediff-xemacs-p 929 (if (and ediff-xemacs-p
1008 (ediff-has-face-support-p) 930 (ediff-has-face-support-p)
1009 (not (ediff-color-display-p))) 931 (not (ediff-color-display-p)))
1010 (copy-face 'modeline 'ediff-current-diff-face-Ancestor)) 932 (copy-face 'modeline 'ediff-current-diff-face-Ancestor))
1011 933
1012 ;;(defvar ediff-fine-diff-pixmap "gray3"
1013 ;; "Pixmap to use for highlighting fine differences.")
1014 ;;(defvar ediff-odd-diff-pixmap "gray1"
1015 ;; "Pixmap to use for highlighting odd differences.")
1016 ;;(defvar ediff-even-diff-pixmap "Stipple"
1017 ;; "Pixmap to use for highlighting even differences.")
1018
1019 ;;(defvar ediff-fine-diff-face-A
1020 ;; (if (ediff-has-face-support-p)
1021 ;; (progn
1022 ;; (make-face 'ediff-fine-diff-face-A)
1023 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-A)
1024 ;; (cond ((ediff-color-display-p)
1025 ;; (ediff-set-face 'foreground 'ediff-fine-diff-face-A
1026 ;; "Navy")
1027 ;; (ediff-set-face 'background 'ediff-fine-diff-face-A
1028 ;; "sky blue"))
1029 ;; (t
1030 ;; (set-face-underline-p 'ediff-fine-diff-face-A t)
1031 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-A
1032 ;; ediff-fine-diff-pixmap)
1033 ;; )))
1034 ;; 'ediff-fine-diff-face-A))
1035 ;; "Face for highlighting the refinement of the selected diff in buffer A.")
1036
1037 934
1038 (defface ediff-fine-diff-face-A 935 (defface ediff-fine-diff-face-A
1039 '((((class color)) (:foreground "Navy" :background "sky blue")) 936 '((((class color)) (:foreground "Navy" :background "sky blue"))
1040 (t (:underline t :stipple "gray3"))) 937 (t (:underline t :stipple "gray3")))
1041 "Face for highlighting the refinement of the selected diff in buffer A." 938 "Face for highlighting the refinement of the selected diff in buffer A."
1047 DO NOT CHANGE this variable. Instead, use the customization 944 DO NOT CHANGE this variable. Instead, use the customization
1048 widget to customize the actual face object `ediff-fine-diff-face-A' 945 widget to customize the actual face object `ediff-fine-diff-face-A'
1049 this variable represents.") 946 this variable represents.")
1050 (ediff-hide-face 'ediff-fine-diff-face-A) 947 (ediff-hide-face 'ediff-fine-diff-face-A)
1051 948
1052 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1053 ;;;; This means that some user 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-A "gray3"))
1058
1059 ;;(defvar ediff-fine-diff-face-B
1060 ;; (if (ediff-has-face-support-p)
1061 ;; (progn
1062 ;; (make-face 'ediff-fine-diff-face-B)
1063 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-B)
1064 ;; (cond ((ediff-color-display-p)
1065 ;; (ediff-set-face 'foreground 'ediff-fine-diff-face-B "Black")
1066 ;; (ediff-set-face 'background 'ediff-fine-diff-face-B "cyan"))
1067 ;; (t
1068 ;; (set-face-underline-p 'ediff-fine-diff-face-B t)
1069 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-B
1070 ;; ediff-fine-diff-pixmap)
1071 ;; )))
1072 ;; 'ediff-fine-diff-face-B))
1073 ;; "Face for highlighting the refinement of the selected diff in buffer B.")
1074
1075 (defface ediff-fine-diff-face-B 949 (defface ediff-fine-diff-face-B
1076 '((((class color)) (:foreground "Black" :background "cyan")) 950 '((((class color)) (:foreground "Black" :background "cyan"))
1077 (t (:underline t :stipple "gray3"))) 951 (t (:underline t :stipple "gray3")))
1078 "Face for highlighting the refinement of the selected diff in buffer B." 952 "Face for highlighting the refinement of the selected diff in buffer B."
1079 :group 'ediff-highlighting) 953 :group 'ediff-highlighting)
1084 DO NOT CHANGE this variable. Instead, use the customization 958 DO NOT CHANGE this variable. Instead, use the customization
1085 widget to customize the actual face object `ediff-fine-diff-face-B' 959 widget to customize the actual face object `ediff-fine-diff-face-B'
1086 this variable represents.") 960 this variable represents.")
1087 (ediff-hide-face 'ediff-fine-diff-face-B) 961 (ediff-hide-face 'ediff-fine-diff-face-B)
1088 962
1089 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1090 ;;;; This means that some user customization may be trashed.
1091 ;;(if (and ediff-xemacs-p
1092 ;; (ediff-has-face-support-p)
1093 ;; (not (ediff-color-display-p)))
1094 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-B "gray3"))
1095
1096 ;;(defvar ediff-fine-diff-face-C
1097 ;; (if (ediff-has-face-support-p)
1098 ;; (progn
1099 ;; (make-face 'ediff-fine-diff-face-C)
1100 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-C)
1101 ;; (cond ((ediff-color-display-p)
1102 ;; (ediff-set-face 'foreground 'ediff-fine-diff-face-C "black")
1103 ;; (ediff-set-face
1104 ;; 'background 'ediff-fine-diff-face-C "Turquoise"))
1105 ;; (t
1106 ;; (set-face-underline-p 'ediff-fine-diff-face-C t)
1107 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-C
1108 ;; ediff-fine-diff-pixmap)
1109 ;; )))
1110 ;; 'ediff-fine-diff-face-C))
1111 ;; "Face for highlighting the refinement of the selected diff in buffer C.")
1112
1113 (defface ediff-fine-diff-face-C 963 (defface ediff-fine-diff-face-C
1114 '((((class color)) (:foreground "Black" :background "Turquoise")) 964 '((((class color)) (:foreground "Black" :background "Turquoise"))
1115 (t (:underline t :stipple "gray3"))) 965 (t (:underline t :stipple "gray3")))
1116 "Face for highlighting the refinement of the selected diff in buffer C." 966 "Face for highlighting the refinement of the selected diff in buffer C."
1117 :group 'ediff-highlighting) 967 :group 'ediff-highlighting)
1121 "Face for highlighting the fine differences in buffer C. 971 "Face for highlighting the fine differences in buffer C.
1122 DO NOT CHANGE this variable. Instead, use the customization 972 DO NOT CHANGE this variable. Instead, use the customization
1123 widget to customize the actual face object `ediff-fine-diff-face-C' 973 widget to customize the actual face object `ediff-fine-diff-face-C'
1124 this variable represents.") 974 this variable represents.")
1125 (ediff-hide-face 'ediff-fine-diff-face-C) 975 (ediff-hide-face 'ediff-fine-diff-face-C)
1126
1127 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1128 ;;;; This means that some user customization may be trashed.
1129 ;;(if (and ediff-xemacs-p
1130 ;; (ediff-has-face-support-p)
1131 ;; (not (ediff-color-display-p)))
1132 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-C "gray3"))
1133
1134 ;;(defvar ediff-fine-diff-face-Ancestor
1135 ;; (if (ediff-has-face-support-p)
1136 ;; (progn
1137 ;; (make-face 'ediff-fine-diff-face-Ancestor)
1138 ;; (ediff-hide-face 'ediff-fine-diff-face-Ancestor)
1139 ;; (or (face-differs-from-default-p 'ediff-fine-diff-face-Ancestor)
1140 ;; (progn
1141 ;; (copy-face
1142 ;; 'ediff-fine-diff-face-C 'ediff-fine-diff-face-Ancestor)
1143 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-Ancestor
1144 ;; ediff-fine-diff-pixmap))
1145 ;; )))
1146 ;; "Face highlighting refinements of the selected diff in ancestor buffer.
1147 ;;Presently, this is not used, as difference regions are not refined in the
1148 ;;ancestor buffer.")
1149 976
1150 (defface ediff-fine-diff-face-Ancestor 977 (defface ediff-fine-diff-face-Ancestor
1151 '((((class color)) (:foreground "Black" :background "Green")) 978 '((((class color)) (:foreground "Black" :background "Green"))
1152 (t (:underline t :stipple "gray3"))) 979 (t (:underline t :stipple "gray3")))
1153 "Face for highlighting the refinement of the selected diff in the ancestor buffer. 980 "Face for highlighting the refinement of the selected diff in the ancestor buffer.
1161 DO NOT CHANGE this variable. Instead, use the customization 988 DO NOT CHANGE this variable. Instead, use the customization
1162 widget to customize the actual face object `ediff-fine-diff-face-Ancestor' 989 widget to customize the actual face object `ediff-fine-diff-face-Ancestor'
1163 this variable represents.") 990 this variable represents.")
1164 (ediff-hide-face 'ediff-fine-diff-face-Ancestor) 991 (ediff-hide-face 'ediff-fine-diff-face-Ancestor)
1165 992
1166 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1167 ;;;; This means that some user customization may be trashed.
1168 ;;(if (and ediff-xemacs-p
1169 ;; (ediff-has-face-support-p)
1170 ;; (not (ediff-color-display-p)))
1171 ;; (ediff-set-face-pixmap 'ediff-fine-diff-face-Ancestor "gray3"))
1172
1173 ;;(defvar ediff-even-diff-face-A
1174 ;; (if (ediff-has-face-support-p)
1175 ;; (progn
1176 ;; (make-face 'ediff-even-diff-face-A)
1177 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-A)
1178 ;; (cond ((ediff-color-display-p)
1179 ;; (ediff-set-face
1180 ;; 'foreground 'ediff-even-diff-face-A "black")
1181 ;; (ediff-set-face
1182 ;; 'background 'ediff-even-diff-face-A "light grey"))
1183 ;; (t
1184 ;; (copy-face 'italic 'ediff-even-diff-face-A)
1185 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-A
1186 ;; ediff-even-diff-pixmap)
1187 ;; )))
1188 ;; 'ediff-even-diff-face-A))
1189 ;; "Face used for highlighting even-numbered differences in buffer A.")
1190
1191 (defface ediff-even-diff-face-A 993 (defface ediff-even-diff-face-A
1192 '((((class color)) (:foreground "Black" :background "light grey")) 994 '((((class color)) (:foreground "Black" :background "light grey"))
1193 (t (:italic t :stipple "Stipple"))) 995 (t (:italic t :stipple "Stipple")))
1194 "Face for highlighting even-numbered non-current differences in buffer A." 996 "Face for highlighting even-numbered non-current differences in buffer A."
1195 :group 'ediff-highlighting) 997 :group 'ediff-highlighting)
1200 DO NOT CHANGE this variable. Instead, use the customization 1002 DO NOT CHANGE this variable. Instead, use the customization
1201 widget to customize the actual face object `ediff-even-diff-face-A' 1003 widget to customize the actual face object `ediff-even-diff-face-A'
1202 this variable represents.") 1004 this variable represents.")
1203 (ediff-hide-face 'ediff-even-diff-face-A) 1005 (ediff-hide-face 'ediff-even-diff-face-A)
1204 1006
1205 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1206 ;;;; This means that some user customization may be trashed.
1207 ;;(if (and ediff-xemacs-p
1208 ;; (ediff-has-face-support-p)
1209 ;; (not (ediff-color-display-p)))
1210 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-A "Stipple"))
1211
1212 ;;(defvar ediff-even-diff-face-B
1213 ;; (if (ediff-has-face-support-p)
1214 ;; (progn
1215 ;; (make-face 'ediff-even-diff-face-B)
1216 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-B)
1217 ;; (cond ((ediff-color-display-p)
1218 ;; (ediff-set-face
1219 ;; 'foreground 'ediff-even-diff-face-B "White")
1220 ;; (ediff-set-face
1221 ;; 'background 'ediff-even-diff-face-B "Gray"))
1222 ;; (t
1223 ;; (copy-face 'italic 'ediff-even-diff-face-B)
1224 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-B
1225 ;; ediff-even-diff-pixmap)
1226 ;; )))
1227 ;; 'ediff-even-diff-face-B))
1228 ;; "Face used for highlighting even-numbered differences in buffer B.")
1229
1230 (defface ediff-even-diff-face-B 1007 (defface ediff-even-diff-face-B
1231 '((((class color)) (:foreground "White" :background "Grey")) 1008 '((((class color)) (:foreground "White" :background "Grey"))
1232 (t (:italic t :stipple "Stipple"))) 1009 (t (:italic t :stipple "Stipple")))
1233 "Face for highlighting even-numbered non-current differences in buffer B." 1010 "Face for highlighting even-numbered non-current differences in buffer B."
1234 :group 'ediff-highlighting) 1011 :group 'ediff-highlighting)
1239 DO NOT CHANGE this variable. Instead, use the customization 1016 DO NOT CHANGE this variable. Instead, use the customization
1240 widget to customize the actual face object `ediff-even-diff-face-B' 1017 widget to customize the actual face object `ediff-even-diff-face-B'
1241 this variable represents.") 1018 this variable represents.")
1242 (ediff-hide-face 'ediff-even-diff-face-B) 1019 (ediff-hide-face 'ediff-even-diff-face-B)
1243 1020
1244 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1245 ;;;; This means that some user customization may be trashed.
1246 ;;(if (and ediff-xemacs-p
1247 ;; (ediff-has-face-support-p)
1248 ;; (not (ediff-color-display-p)))
1249 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-B "Stipple"))
1250
1251 ;;(defvar ediff-even-diff-face-C
1252 ;; (if (ediff-has-face-support-p)
1253 ;; (progn
1254 ;; (make-face 'ediff-even-diff-face-C)
1255 ;; (ediff-hide-face 'ediff-even-diff-face-C)
1256 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-C)
1257 ;; (progn
1258 ;; (copy-face 'ediff-even-diff-face-A 'ediff-even-diff-face-C)
1259 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-C
1260 ;; ediff-even-diff-pixmap)))
1261 ;; 'ediff-even-diff-face-C))
1262 ;; "Face used for highlighting even-numbered differences in buffer C.")
1263
1264 (defface ediff-even-diff-face-C 1021 (defface ediff-even-diff-face-C
1265 '((((class color)) (:foreground "Black" :background "light grey")) 1022 '((((class color)) (:foreground "Black" :background "light grey"))
1266 (t (:italic t :stipple "Stipple"))) 1023 (t (:italic t :stipple "Stipple")))
1267 "Face for highlighting even-numbered non-current differences in buffer C." 1024 "Face for highlighting even-numbered non-current differences in buffer C."
1268 :group 'ediff-highlighting) 1025 :group 'ediff-highlighting)
1273 DO NOT CHANGE this variable. Instead, use the customization 1030 DO NOT CHANGE this variable. Instead, use the customization
1274 widget to customize the actual face object `ediff-even-diff-face-C' 1031 widget to customize the actual face object `ediff-even-diff-face-C'
1275 this variable represents.") 1032 this variable represents.")
1276 (ediff-hide-face 'ediff-even-diff-face-C) 1033 (ediff-hide-face 'ediff-even-diff-face-C)
1277 1034
1278 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1279 ;;;; This means that some user customization may be trashed.
1280 ;;(if (and ediff-xemacs-p
1281 ;; (ediff-has-face-support-p)
1282 ;; (not (ediff-color-display-p)))
1283 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-C "Stipple"))
1284
1285 ;;(defvar ediff-even-diff-face-Ancestor
1286 ;; (if (ediff-has-face-support-p)
1287 ;; (progn
1288 ;; (make-face 'ediff-even-diff-face-Ancestor)
1289 ;; (ediff-hide-face 'ediff-even-diff-face-Ancestor)
1290 ;; (or (face-differs-from-default-p 'ediff-even-diff-face-Ancestor)
1291 ;; (progn
1292 ;; (copy-face
1293 ;; 'ediff-even-diff-face-C 'ediff-even-diff-face-Ancestor)
1294 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-Ancestor
1295 ;; ediff-even-diff-pixmap)))
1296 ;; 'ediff-even-diff-face-Ancestor))
1297 ;; "Face highlighting even-numbered differences in the ancestor buffer.")
1298
1299 (defface ediff-even-diff-face-Ancestor 1035 (defface ediff-even-diff-face-Ancestor
1300 '((((class color)) (:foreground "White" :background "Grey")) 1036 '((((class color)) (:foreground "White" :background "Grey"))
1301 (t (:italic t :stipple "Stipple"))) 1037 (t (:italic t :stipple "Stipple")))
1302 "Face for highlighting even-numbered non-current differences in the ancestor buffer." 1038 "Face for highlighting even-numbered non-current differences in the ancestor buffer."
1303 :group 'ediff-highlighting) 1039 :group 'ediff-highlighting)
1308 DO NOT CHANGE this variable. Instead, use the customization 1044 DO NOT CHANGE this variable. Instead, use the customization
1309 widget to customize the actual face object `ediff-even-diff-face-Ancestor' 1045 widget to customize the actual face object `ediff-even-diff-face-Ancestor'
1310 this variable represents.") 1046 this variable represents.")
1311 (ediff-hide-face 'ediff-even-diff-face-Ancestor) 1047 (ediff-hide-face 'ediff-even-diff-face-Ancestor)
1312 1048
1313 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1314 ;;;; This means that some user customization may be trashed.
1315 ;;(if (and ediff-xemacs-p
1316 ;; (ediff-has-face-support-p)
1317 ;; (not (ediff-color-display-p)))
1318 ;; (ediff-set-face-pixmap 'ediff-even-diff-face-Ancestor "Stipple"))
1319
1320 ;; Association between buffer types and even-diff-face symbols 1049 ;; Association between buffer types and even-diff-face symbols
1321 (defconst ediff-even-diff-face-alist 1050 (defconst ediff-even-diff-face-alist
1322 '((A . ediff-even-diff-face-A) 1051 '((A . ediff-even-diff-face-A)
1323 (B . ediff-even-diff-face-B) 1052 (B . ediff-even-diff-face-B)
1324 (C . ediff-even-diff-face-C) 1053 (C . ediff-even-diff-face-C)
1325 (Ancestor . ediff-even-diff-face-Ancestor))) 1054 (Ancestor . ediff-even-diff-face-Ancestor)))
1326
1327 ;;(defvar ediff-odd-diff-face-A
1328 ;; (if (ediff-has-face-support-p)
1329 ;; (progn
1330 ;; (make-face 'ediff-odd-diff-face-A)
1331 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-A)
1332 ;; (cond ((ediff-color-display-p)
1333 ;; (ediff-set-face
1334 ;; 'foreground 'ediff-odd-diff-face-A "White")
1335 ;; (ediff-set-face
1336 ;; 'background 'ediff-odd-diff-face-A "Gray"))
1337 ;; (t
1338 ;; (copy-face 'italic 'ediff-odd-diff-face-A)
1339 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-A
1340 ;; ediff-odd-diff-pixmap)
1341 ;; )))
1342 ;; 'ediff-odd-diff-face-A))
1343 ;; "Face used for highlighting odd-numbered differences in buffer A.")
1344 1055
1345 (defface ediff-odd-diff-face-A 1056 (defface ediff-odd-diff-face-A
1346 '((((class color)) (:foreground "White" :background "Grey")) 1057 '((((class color)) (:foreground "White" :background "Grey"))
1347 (t (:italic t :stipple "gray1"))) 1058 (t (:italic t :stipple "gray1")))
1348 "Face for highlighting odd-numbered non-current differences in buffer A." 1059 "Face for highlighting odd-numbered non-current differences in buffer A."
1354 DO NOT CHANGE this variable. Instead, use the customization 1065 DO NOT CHANGE this variable. Instead, use the customization
1355 widget to customize the actual face object `ediff-odd-diff-face-A' 1066 widget to customize the actual face object `ediff-odd-diff-face-A'
1356 this variable represents.") 1067 this variable represents.")
1357 (ediff-hide-face 'ediff-odd-diff-face-A) 1068 (ediff-hide-face 'ediff-odd-diff-face-A)
1358 1069
1359 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1360 ;;;; This means that some user customization may be trashed.
1361 ;;(if (and ediff-xemacs-p
1362 ;; (ediff-has-face-support-p)
1363 ;; (not (ediff-color-display-p)))
1364 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-A "gray1"))
1365
1366 ;;(defvar ediff-odd-diff-face-B
1367 ;; (if (ediff-has-face-support-p)
1368 ;; (progn
1369 ;; (make-face 'ediff-odd-diff-face-B)
1370 ;; (ediff-hide-face 'ediff-odd-diff-face-B)
1371 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-B)
1372 ;; (cond ((ediff-color-display-p)
1373 ;; (ediff-set-face
1374 ;; 'foreground 'ediff-odd-diff-face-B "Black")
1375 ;; (ediff-set-face
1376 ;; 'background 'ediff-odd-diff-face-B "light grey"))
1377 ;; (t
1378 ;; (copy-face 'italic 'ediff-odd-diff-face-B)
1379 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-B
1380 ;; ediff-odd-diff-pixmap)
1381 ;; )))
1382 ;; 'ediff-odd-diff-face-B))
1383 ;; "Face used for highlighting odd-numbered differences in buffer B.")
1384 1070
1385 (defface ediff-odd-diff-face-B 1071 (defface ediff-odd-diff-face-B
1386 '((((class color)) (:foreground "Black" :background "light grey")) 1072 '((((class color)) (:foreground "Black" :background "light grey"))
1387 (t (:italic t :stipple "gray1"))) 1073 (t (:italic t :stipple "gray1")))
1388 "Face for highlighting odd-numbered non-current differences in buffer B." 1074 "Face for highlighting odd-numbered non-current differences in buffer B."
1394 DO NOT CHANGE this variable. Instead, use the customization 1080 DO NOT CHANGE this variable. Instead, use the customization
1395 widget to customize the actual face object `ediff-odd-diff-face-B' 1081 widget to customize the actual face object `ediff-odd-diff-face-B'
1396 this variable represents.") 1082 this variable represents.")
1397 (ediff-hide-face 'ediff-odd-diff-face-B) 1083 (ediff-hide-face 'ediff-odd-diff-face-B)
1398 1084
1399 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1400 ;;;; This means that some user customization may be trashed.
1401 ;;(if (and ediff-xemacs-p
1402 ;; (ediff-has-face-support-p)
1403 ;; (not (ediff-color-display-p)))
1404 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-B "gray1"))
1405
1406 ;;(defvar ediff-odd-diff-face-C
1407 ;; (if (ediff-has-face-support-p)
1408 ;; (progn
1409 ;; (make-face 'ediff-odd-diff-face-C)
1410 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-C)
1411 ;; (progn
1412 ;; (copy-face 'ediff-odd-diff-face-A 'ediff-odd-diff-face-C)
1413 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-C
1414 ;; ediff-odd-diff-pixmap)))
1415 ;; 'ediff-odd-diff-face-C))
1416 ;; "Face used for highlighting odd-numbered differences in buffer C.")
1417
1418 (defface ediff-odd-diff-face-C 1085 (defface ediff-odd-diff-face-C
1419 '((((class color)) (:foreground "White" :background "Grey")) 1086 '((((class color)) (:foreground "White" :background "Grey"))
1420 (t (:italic t :stipple "gray1"))) 1087 (t (:italic t :stipple "gray1")))
1421 "Face for highlighting odd-numbered non-current differences in buffer C." 1088 "Face for highlighting odd-numbered non-current differences in buffer C."
1422 :group 'ediff-highlighting) 1089 :group 'ediff-highlighting)
1427 DO NOT CHANGE this variable. Instead, use the customization 1094 DO NOT CHANGE this variable. Instead, use the customization
1428 widget to customize the actual face object `ediff-odd-diff-face-C' 1095 widget to customize the actual face object `ediff-odd-diff-face-C'
1429 this variable represents.") 1096 this variable represents.")
1430 (ediff-hide-face 'ediff-odd-diff-face-C) 1097 (ediff-hide-face 'ediff-odd-diff-face-C)
1431 1098
1432 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1433 ;;;; This means that some user customization may be trashed.
1434 ;;(if (and ediff-xemacs-p
1435 ;; (ediff-has-face-support-p)
1436 ;; (not (ediff-color-display-p)))
1437 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-C "gray1"))
1438
1439 ;;(defvar ediff-odd-diff-face-Ancestor
1440 ;; (if (ediff-has-face-support-p)
1441 ;; (progn
1442 ;; (make-face 'ediff-odd-diff-face-Ancestor)
1443 ;; (or (face-differs-from-default-p 'ediff-odd-diff-face-Ancestor)
1444 ;; (progn
1445 ;; (copy-face 'ediff-odd-diff-face-C 'ediff-odd-diff-face-Ancestor)
1446 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-Ancestor
1447 ;; ediff-odd-diff-pixmap)))
1448 ;; 'ediff-odd-diff-face-Ancestor))
1449 ;; "Face used for highlighting even-numbered differences in the ancestor buffer.")
1450
1451 (defface ediff-odd-diff-face-Ancestor 1099 (defface ediff-odd-diff-face-Ancestor
1452 '((((class color)) (:foreground "Black" :background "light grey")) 1100 '((((class color)) (:foreground "Black" :background "light grey"))
1453 (t (:italic t :stipple "gray1"))) 1101 (t (:italic t :stipple "gray1")))
1454 "Face for highlighting odd-numbered non-current differences in the ancestor buffer." 1102 "Face for highlighting odd-numbered non-current differences in the ancestor buffer."
1455 :group 'ediff-highlighting) 1103 :group 'ediff-highlighting)
1459 "Face for highlighting odd-numbered non-current differences in buffer Ancestor. 1107 "Face for highlighting odd-numbered non-current differences in buffer Ancestor.
1460 DO NOT CHANGE this variable. Instead, use the customization 1108 DO NOT CHANGE this variable. Instead, use the customization
1461 widget to customize the actual face object `ediff-odd-diff-face-Ancestor' 1109 widget to customize the actual face object `ediff-odd-diff-face-Ancestor'
1462 this variable represents.") 1110 this variable represents.")
1463 (ediff-hide-face 'ediff-odd-diff-face-Ancestor) 1111 (ediff-hide-face 'ediff-odd-diff-face-Ancestor)
1464
1465 ;;;; Until custom.el for XEmacs starts supporting :stipple we do this.
1466 ;;;; This means that some user customization may be trashed.
1467 ;;(if (and ediff-xemacs-p
1468 ;; (ediff-has-face-support-p)
1469 ;; (not (ediff-color-display-p)))
1470 ;; (ediff-set-face-pixmap 'ediff-odd-diff-face-Ancestor "gray1"))
1471 1112
1472 ;; Association between buffer types and odd-diff-face symbols 1113 ;; Association between buffer types and odd-diff-face symbols
1473 (defconst ediff-odd-diff-face-alist 1114 (defconst ediff-odd-diff-face-alist
1474 '((A . ediff-odd-diff-face-A) 1115 '((A . ediff-odd-diff-face-A)
1475 (B . ediff-odd-diff-face-B) 1116 (B . ediff-odd-diff-face-B)
1546 1187
1547 (defcustom ediff-autostore-merges 'group-jobs-only 1188 (defcustom ediff-autostore-merges 'group-jobs-only
1548 "*Save the results of merge jobs automatically. 1189 "*Save the results of merge jobs automatically.
1549 Nil means don't save automatically. t means always save. Anything but nil or t 1190 Nil means don't save automatically. t means always save. Anything but nil or t
1550 means save automatically only if the merge job is part of a group of jobs, such 1191 means save automatically only if the merge job is part of a group of jobs, such
1551 as `ediff-merge-directories' or `ediff-merge-directory-revisions'." 1192 as `ediff-merge-directory' or `ediff-merge-directory-revisions'."
1552 :type '(choice (const nil) (const t) (const group-jobs-only)) 1193 :type '(choice (const nil) (const t) (const group-jobs-only))
1553 :group 'ediff-merge) 1194 :group 'ediff-merge)
1554 (make-variable-buffer-local 'ediff-autostore-merges) 1195 (make-variable-buffer-local 'ediff-autostore-merges)
1555 1196
1556 ;; file where the result of the merge is to be saved. used internally 1197 ;; file where the result of the merge is to be saved. used internally