diff options
Diffstat (limited to 'lisp/ediff-init.el')
-rw-r--r-- | lisp/ediff-init.el | 83 |
1 files changed, 39 insertions, 44 deletions
diff --git a/lisp/ediff-init.el b/lisp/ediff-init.el index e669f108884..a99e643f0e0 100644 --- a/lisp/ediff-init.el +++ b/lisp/ediff-init.el @@ -37,17 +37,8 @@ (defvar ediff-multiframe) (defvar ediff-use-toolbar-p) (defvar mswindowsx-bitmap-file-path) - -(and noninteractive - (eval-when-compile - (load "ange-ftp" 'noerror))) ;; end pacifier -;; Is it XEmacs? -(defconst ediff-xemacs-p (featurep 'xemacs)) -;; Is it Emacs? -(defconst ediff-emacs-p (not ediff-xemacs-p)) - ;; This is used to avoid compilation warnings. When emacs/xemacs forms can ;; generate compile time warnings, we use this macro. ;; In this case, the macro will expand into the form that is appropriate to the @@ -78,8 +69,8 @@ that Ediff doesn't know about.") (cond ((ediff-window-display-p)) (ediff-force-faces) ((ediff-color-display-p)) - (ediff-emacs-p (memq (ediff-device-type) '(pc))) - (ediff-xemacs-p (memq (ediff-device-type) '(tty pc))) + ((featurep 'emacs) (memq (ediff-device-type) '(pc))) + ((featurep 'xemacs) (memq (ediff-device-type) '(tty pc))) )) ;; toolbar support for emacs hasn't been implemented in ediff @@ -102,7 +93,7 @@ that Ediff doesn't know about.") (boundp 'ediff-use-toolbar-p) ediff-use-toolbar-p)) ;Does the user want it ? -;; Defines SYMBOL as an advertised local variable. +;; Defines VAR as an advertised local variable. ;; Performs a defvar, then executes `make-variable-buffer-local' on ;; the variable. Also sets the `permanent-local' property, ;; so that `kill-all-local-variables' (called by major-mode setting @@ -110,6 +101,8 @@ that Ediff doesn't know about.") ;; ;; Plagiarised from `emerge-defvar-local' for XEmacs. (defmacro ediff-defvar-local (var value doc) + "Defines VAR as a local variable." + (declare (indent defun)) `(progn (defvar ,var ,value ,doc) (make-variable-buffer-local ',var) @@ -258,6 +251,8 @@ It needs to be killed when we quit the session.") ;; Doesn't save the point and mark. ;; This is `with-current-buffer' with the added test for live buffers." (defmacro ediff-with-current-buffer (buffer &rest body) + "Evaluates BODY in BUFFER." + (declare (indent 1) (debug (form body))) `(if (ediff-buffer-live-p ,buffer) (save-current-buffer (set-buffer ,buffer) @@ -502,7 +497,7 @@ set local variables that determine how the display looks like." *** of %sEmacs, does not seem to be properly installed. *** *** Please contact your system administrator. " - (if ediff-xemacs-p "X" ""))) + (if (featurep 'xemacs) "X" ""))) ;; Selective browsing @@ -781,8 +776,8 @@ to temp files when Ediff needs to find fine differences." ;; testing for sufficiently high Emacs versions. (defun ediff-check-version (op major minor &optional type-of-emacs) (if (and (boundp 'emacs-major-version) (boundp 'emacs-minor-version)) - (and (cond ((eq type-of-emacs 'xemacs) ediff-xemacs-p) - ((eq type-of-emacs 'emacs) ediff-emacs-p) + (and (cond ((eq type-of-emacs 'xemacs) (featurep 'xemacs)) + ((eq type-of-emacs 'emacs) (featurep 'emacs)) (t t)) (cond ((eq op '=) (and (= emacs-minor-version minor) (= emacs-major-version major))) @@ -904,7 +899,7 @@ to temp files when Ediff needs to find fine differences." (defface ediff-current-diff-A - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "firebrick" :background "pale green")) (((class color)) @@ -925,7 +920,7 @@ this variable represents.") (ediff-hide-face ediff-current-diff-face-A) ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. ;; This means that some user customization may be trashed. -(if (and ediff-xemacs-p +(if (and (featurep 'xemacs) (ediff-has-face-support-p) (not (ediff-color-display-p))) (copy-face 'modeline ediff-current-diff-face-A)) @@ -933,7 +928,7 @@ this variable represents.") (defface ediff-current-diff-B - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "DarkOrchid" :background "Yellow")) (((class color)) @@ -956,14 +951,14 @@ this variable represents.") (ediff-hide-face ediff-current-diff-face-B) ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. ;; This means that some user customization may be trashed. -(if (and ediff-xemacs-p +(if (and (featurep 'xemacs) (ediff-has-face-support-p) (not (ediff-color-display-p))) (copy-face 'modeline ediff-current-diff-face-B)) (defface ediff-current-diff-C - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "Navy" :background "Pink")) (((class color)) @@ -984,14 +979,14 @@ this variable represents.") (ediff-hide-face ediff-current-diff-face-C) ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. ;; This means that some user customization may be trashed. -(if (and ediff-xemacs-p +(if (and (featurep 'xemacs) (ediff-has-face-support-p) (not (ediff-color-display-p))) (copy-face 'modeline ediff-current-diff-face-C)) (defface ediff-current-diff-Ancestor - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "Black" :background "VioletRed")) (((class color)) @@ -1012,14 +1007,14 @@ this variable represents.") (ediff-hide-face ediff-current-diff-face-Ancestor) ;; Until custom.el for XEmacs starts supporting :inverse-video we do this. ;; This means that some user customization may be trashed. -(if (and ediff-xemacs-p +(if (and (featurep 'xemacs) (ediff-has-face-support-p) (not (ediff-color-display-p))) (copy-face 'modeline ediff-current-diff-face-Ancestor)) (defface ediff-fine-diff-A - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "Navy" :background "sky blue")) (((class color)) @@ -1040,7 +1035,7 @@ this variable represents.") (ediff-hide-face ediff-fine-diff-face-A) (defface ediff-fine-diff-B - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "Black" :background "cyan")) (((class color)) @@ -1061,7 +1056,7 @@ this variable represents.") (ediff-hide-face ediff-fine-diff-face-B) (defface ediff-fine-diff-C - (if ediff-emacs-p + (if (featurep 'emacs) '((((type pc)) (:foreground "white" :background "Turquoise")) (((class color) (min-colors 16)) @@ -1087,7 +1082,7 @@ this variable represents.") (ediff-hide-face ediff-fine-diff-face-C) (defface ediff-fine-diff-Ancestor - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "Black" :background "Green")) (((class color)) @@ -1119,7 +1114,7 @@ this variable represents.") (t "Stipple"))) (defface ediff-even-diff-A - (if ediff-emacs-p + (if (featurep 'emacs) `((((type pc)) (:foreground "green3" :background "light grey")) (((class color) (min-colors 16)) @@ -1145,7 +1140,7 @@ this variable represents.") (ediff-hide-face ediff-even-diff-face-A) (defface ediff-even-diff-B - (if ediff-emacs-p + (if (featurep 'emacs) `((((class color) (min-colors 16)) (:foreground "White" :background "Grey")) (((class color)) @@ -1166,7 +1161,7 @@ this variable represents.") (ediff-hide-face ediff-even-diff-face-B) (defface ediff-even-diff-C - (if ediff-emacs-p + (if (featurep 'emacs) `((((type pc)) (:foreground "yellow3" :background "light grey")) (((class color) (min-colors 16)) @@ -1192,7 +1187,7 @@ this variable represents.") (ediff-hide-face ediff-even-diff-face-C) (defface ediff-even-diff-Ancestor - (if ediff-emacs-p + (if (featurep 'emacs) `((((type pc)) (:foreground "cyan3" :background "light grey")) (((class color) (min-colors 16)) @@ -1225,7 +1220,7 @@ this variable represents.") (Ancestor . ediff-even-diff-Ancestor))) (defface ediff-odd-diff-A - (if ediff-emacs-p + (if (featurep 'emacs) '((((type pc)) (:foreground "green3" :background "gray40")) (((class color) (min-colors 16)) @@ -1250,7 +1245,7 @@ this variable represents.") (defface ediff-odd-diff-B - (if ediff-emacs-p + (if (featurep 'emacs) '((((type pc)) (:foreground "White" :background "gray40")) (((class color) (min-colors 16)) @@ -1274,7 +1269,7 @@ this variable represents.") (ediff-hide-face ediff-odd-diff-face-B) (defface ediff-odd-diff-C - (if ediff-emacs-p + (if (featurep 'emacs) '((((type pc)) (:foreground "yellow3" :background "gray40")) (((class color) (min-colors 16)) @@ -1298,7 +1293,7 @@ this variable represents.") (ediff-hide-face ediff-odd-diff-face-C) (defface ediff-odd-diff-Ancestor - (if ediff-emacs-p + (if (featurep 'emacs) '((((class color) (min-colors 16)) (:foreground "cyan3" :background "gray40")) (((class color)) @@ -1581,7 +1576,7 @@ This default should work without changes." ) ((ediff-key-press-event-p event) (point)) - (t (error nil)))) + (t (error "Error")))) (defun ediff-event-buffer (event) (cond ((ediff-mouse-event-p event) @@ -1592,7 +1587,7 @@ This default should work without changes." ) ((ediff-key-press-event-p event) (current-buffer)) - (t (error nil)))) + (t (error "Error")))) (defun ediff-event-key (event-or-key) (ediff-cond-compile-for-xemacs-or-emacs @@ -1626,7 +1621,7 @@ This default should work without changes." (or frame (setq frame (selected-frame))) (if (ediff-window-display-p) (let ((frame-or-wind frame)) - (if ediff-xemacs-p + (if (featurep 'xemacs) (setq frame-or-wind (frame-selected-window frame))) (or do-not-grab-mouse ;; don't set mouse if the user said to never do this @@ -1873,11 +1868,11 @@ Unless optional argument INPLACE is non-nil, return a new string." -;;; Local Variables: -;;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun) -;;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1) -;;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body)) -;;; End: +;; Local Variables: +;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun) +;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1) +;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body)) +;; End: -;;; arch-tag: fa31d384-1e70-4d4b-82a7-3e96307c46f5 +;; arch-tag: fa31d384-1e70-4d4b-82a7-3e96307c46f5 ;;; ediff-init.el ends here |