]> code.delx.au - gnu-emacs/blobdiff - lisp/ediff-init.el
New file.
[gnu-emacs] / lisp / ediff-init.el
index 8d05f2def09efefdd4f8fbb96906f020dd8fdc90..a99e643f0e058fcefe1ed4f813d5e9ecab9ee586 100644 (file)
@@ -1,7 +1,7 @@
 ;;; ediff-init.el --- Macros, variables, and defsubsts used by Ediff
 
 ;; Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-;;   2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+;;   2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
 ;; Author: Michael Kifer <kifer@cs.stonybrook.edu>
 
@@ -9,7 +9,7 @@
 
 ;; GNU Emacs is free software; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
+;; the Free Software Foundation; either version 3, or (at your option)
 ;; any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
 (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
@@ -506,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
 
@@ -785,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)))
@@ -908,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))
@@ -929,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))
@@ -937,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))
@@ -960,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))
@@ -988,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))
@@ -1016,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))
@@ -1044,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))
@@ -1065,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))
@@ -1091,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))
@@ -1123,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))
@@ -1149,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))
@@ -1170,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))
@@ -1196,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))
@@ -1229,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))
@@ -1254,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))
@@ -1278,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))
@@ -1302,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))
@@ -1410,7 +1401,7 @@ This property can be toggled interactively."
 ;;; Misc
 
 ;; if nil, this silences some messages
-(defconst ediff-verbose-p t)
+(defvar ediff-verbose-p t)
 
 (defcustom ediff-autostore-merges  'group-jobs-only
   "*Save the results of merge jobs automatically.
@@ -1585,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)
@@ -1596,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
@@ -1630,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