annotate lisp/ediff-init.el @ 67086:7ae3d744378e

(Custom-reset-standard): Make it handle Custom group buffers correctly. (It used to throw an error in such buffers.) Make it ask for confirmation in group buffers and other Custom buffers containing more than one customization item.
author Luc Teirlinck <teirllm@auburn.edu>
date Tue, 22 Nov 2005 23:28:28 +0000
parents 3b8ee785ce35
children 3bd95f4f2941 2d92f5c9d6ae
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38514
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1 ;;; ediff-init.el --- Macros, variables, and defsubsts used by Ediff
14169
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 13977
diff changeset
2
61310
4efad09bd407 Use (featurep 'xemacs).
Kim F. Storm <storm@cua.dk>
parents: 60151
diff changeset
3 ;; Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
64762
41bb365f41c4 Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 64215
diff changeset
4 ;; 2003, 2004, 2005 Free Software Foundation, Inc.
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
5
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
6 ;; Author: Michael Kifer <kifer@cs.stonybrook.edu>
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
7
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
8 ;; This file is part of GNU Emacs.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
9
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
10 ;; GNU Emacs is free software; you can redistribute it and/or modify
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
11 ;; it under the terms of the GNU General Public License as published by
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
12 ;; the Free Software Foundation; either version 2, or (at your option)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
13 ;; any later version.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
14
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
15 ;; GNU Emacs is distributed in the hope that it will be useful,
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
16 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
18 ;; GNU General Public License for more details.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
19
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
20 ;; You should have received a copy of the GNU General Public License
14169
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 13977
diff changeset
21 ;; along with GNU Emacs; see the file COPYING. If not, write to the
64091
6fb026ad601f Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 64007
diff changeset
22 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
6fb026ad601f Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 64007
diff changeset
23 ;; Boston, MA 02110-1301, USA.
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
24
38422
7a94f1c588c4 Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 36857
diff changeset
25 ;;; Commentary:
7a94f1c588c4 Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 36857
diff changeset
26
14169
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 13977
diff changeset
27 ;;; Code:
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
28
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
29 ;; Start compiler pacifier
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
30 (defvar ediff-metajob-name)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
31 (defvar ediff-meta-buffer)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
32 (defvar pm-color-alist)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
33 (defvar ediff-grab-mouse)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
34 (defvar ediff-mouse-pixel-position)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
35 (defvar ediff-mouse-pixel-threshold)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
36 (defvar ediff-whitespace)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
37 (defvar ediff-multiframe)
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
38 (defvar ediff-use-toolbar-p)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
39 (defvar mswindowsx-bitmap-file-path)
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
40
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
41 (and noninteractive
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
42 (eval-when-compile
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
43 (load "ange-ftp" 'noerror)))
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
44 ;; end pacifier
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
45
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
46 ;; Is it XEmacs?
61310
4efad09bd407 Use (featurep 'xemacs).
Kim F. Storm <storm@cua.dk>
parents: 60151
diff changeset
47 (defconst ediff-xemacs-p (featurep 'xemacs))
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
48 ;; Is it Emacs?
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
49 (defconst ediff-emacs-p (not ediff-xemacs-p))
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
50
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
51 ;; This is used to avoid compilation warnings. When emacs/xemacs forms can
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
52 ;; generate compile time warnings, we use this macro.
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
53 ;; In this case, the macro will expand into the form that is appropriate to the
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
54 ;; compiler at hand.
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
55 ;; Suggested by rms.
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
56 (defmacro ediff-cond-compile-for-xemacs-or-emacs (xemacs-form emacs-form)
61310
4efad09bd407 Use (featurep 'xemacs).
Kim F. Storm <storm@cua.dk>
parents: 60151
diff changeset
57 (if (featurep 'xemacs)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
58 xemacs-form emacs-form))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
59
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
60 (defvar ediff-force-faces nil
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
61 "If t, Ediff will think that it is running on a display that supports faces.
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
62 This is provided as a temporary relief for users of face-capable displays
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
63 that Ediff doesn't know about.")
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
64
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
65 ;; Are we running as a window application or on a TTY?
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
66 (defsubst ediff-device-type ()
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
67 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
68 (device-type (selected-device)) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
69 window-system ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
70 ))
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
71
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
72 ;; in XEmacs: device-type is tty on tty and stream in batch.
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
73 (defun ediff-window-display-p ()
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
74 (and (ediff-device-type) (not (memq (ediff-device-type) '(tty pc stream)))))
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
75
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
76 ;; test if supports faces
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
77 (defun ediff-has-face-support-p ()
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
78 (cond ((ediff-window-display-p))
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
79 (ediff-force-faces)
30089
f7f64f1ccc38 2000-07-05 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 29412
diff changeset
80 ((ediff-color-display-p))
f7f64f1ccc38 2000-07-05 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 29412
diff changeset
81 (ediff-emacs-p (memq (ediff-device-type) '(pc)))
44028
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
82 (ediff-xemacs-p (memq (ediff-device-type) '(tty pc)))
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
83 ))
16766
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
84
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
85 ;; toolbar support for emacs hasn't been implemented in ediff
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
86 (defun ediff-has-toolbar-support-p ()
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
87 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
88 (and (featurep 'toolbar) (console-on-window-system-p)) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
89 nil ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
90 ))
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
91
43220
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
92
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
93 (defun ediff-has-gutter-support-p ()
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
94 (ediff-cond-compile-for-xemacs-or-emacs
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
95 (and (featurep 'gutter) (console-on-window-system-p)) ; xemacs form
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
96 nil ; emacs form
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
97 ))
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
98
69c91aaa067a 2002-02-10 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42602
diff changeset
99
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
100 (defun ediff-use-toolbar-p ()
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
101 (and (ediff-has-toolbar-support-p) ;Can it do it ?
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
102 (boundp 'ediff-use-toolbar-p)
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
103 ediff-use-toolbar-p)) ;Does the user want it ?
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
104
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
105 ;; Defines SYMBOL as an advertised local variable.
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
106 ;; Performs a defvar, then executes `make-variable-buffer-local' on
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
107 ;; the variable. Also sets the `permanent-local' property,
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
108 ;; so that `kill-all-local-variables' (called by major-mode setting
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
109 ;; commands) won't destroy Ediff control variables.
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
110 ;;
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
111 ;; Plagiarised from `emerge-defvar-local' for XEmacs.
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
112 (defmacro ediff-defvar-local (var value doc)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
113 `(progn
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
114 (defvar ,var ,value ,doc)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
115 (make-variable-buffer-local ',var)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
116 (put ',var 'permanent-local t)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
117
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
118
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
119
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
120 ;; Variables that control each Ediff session---local to the control buffer.
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
121
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
122 ;; Mode variables
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
123 ;; The buffer in which the A variant is stored.
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
124 (ediff-defvar-local ediff-buffer-A nil "")
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
125 ;; The buffer in which the B variant is stored.
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
126 (ediff-defvar-local ediff-buffer-B nil "")
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
127 ;; The buffer in which the C variant is stored or where the merge buffer lives.
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
128 (ediff-defvar-local ediff-buffer-C nil "")
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
129 ;; Ancestor buffer
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
130 (ediff-defvar-local ediff-ancestor-buffer nil "")
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
131 ;; The Ediff control buffer
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
132 (ediff-defvar-local ediff-control-buffer nil "")
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
133
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
134 (ediff-defvar-local ediff-temp-indirect-buffer nil
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
135 "If t, the buffer is a temporary indirect buffer.
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
136 It needs to be killed when we quit the session.")
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
137
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
138
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
139 ;; Association between buff-type and ediff-buffer-*
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
140 (defconst ediff-buffer-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
141 '((?A . ediff-buffer-A)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
142 (?B . ediff-buffer-B)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
143 (?C . ediff-buffer-C)))
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
144
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
145 ;;; Macros
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
146 (defmacro ediff-odd-p (arg)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
147 `(eq (logand ,arg 1) 1))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
148
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
149 (defmacro ediff-buffer-live-p (buf)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
150 `(and ,buf (get-buffer ,buf) (buffer-name (get-buffer ,buf))))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
151
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
152 (defmacro ediff-get-buffer (arg)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
153 `(cond ((eq ,arg 'A) ediff-buffer-A)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
154 ((eq ,arg 'B) ediff-buffer-B)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
155 ((eq ,arg 'C) ediff-buffer-C)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
156 ((eq ,arg 'Ancestor) ediff-ancestor-buffer)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
157 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
158
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
159 (defmacro ediff-get-value-according-to-buffer-type (buf-type list)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
160 `(cond ((eq ,buf-type 'A) (nth 0 ,list))
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
161 ((eq ,buf-type 'B) (nth 1 ,list))
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
162 ((eq ,buf-type 'C) (nth 2 ,list))
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
163 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
164
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
165 (defmacro ediff-char-to-buftype (arg)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
166 `(cond ((memq ,arg '(?a ?A)) 'A)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
167 ((memq ,arg '(?b ?B)) 'B)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
168 ((memq ,arg '(?c ?C)) 'C)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
169 ))
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
170
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
171
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
172 ;; A-list is supposed to be of the form (A . symb) (B . symb)...)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
173 ;; where the first part of any association is a buffer type and the second is
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
174 ;; an appropriate symbol. Given buffer-type, this function returns the
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
175 ;; symbol. This is used to avoid using `intern'
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
176 (defsubst ediff-get-symbol-from-alist (buf-type alist)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
177 (cdr (assoc buf-type alist)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
178
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
179 (defconst ediff-difference-vector-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
180 '((A . ediff-difference-vector-A)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
181 (B . ediff-difference-vector-B)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
182 (C . ediff-difference-vector-C)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
183 (Ancestor . ediff-difference-vector-Ancestor)))
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
184
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
185 (defmacro ediff-get-difference (n buf-type)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
186 `(aref
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
187 (symbol-value
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
188 (ediff-get-symbol-from-alist
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
189 ,buf-type ediff-difference-vector-alist))
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
190 ,n))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
191
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
192 ;; Tell if it has been previously determined that the region has
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
193 ;; no diffs other than the white space and newlines
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
194 ;; The argument, N, is the diff region number used by Ediff to index the
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
195 ;; diff vector. It is 1 less than the number seen by the user.
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
196 ;; Returns:
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
197 ;; t if the diffs are whitespace in all buffers
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
198 ;; 'A (in 3-buf comparison only) if there are only whitespace
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
199 ;; diffs in bufs B and C
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
200 ;; 'B (in 3-buf comparison only) if there are only whitespace
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
201 ;; diffs in bufs A and C
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
202 ;; 'C (in 3-buf comparison only) if there are only whitespace
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
203 ;; diffs in bufs A and B
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
204 ;;
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
205 ;; A Difference Vector has the form:
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
206 ;; [diff diff diff ...]
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
207 ;; where each diff has the form:
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
208 ;; [overlay fine-diff-vector no-fine-diffs-flag state-of-difference]
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
209 ;; fine-diff-vector is a vector [fine-diff fine-diff fine-diff ...]
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
210 ;; no-fine-diffs-flag says if there are fine differences.
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
211 ;; state-of-difference is A, B, C, or nil, indicating which buffer is
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
212 ;; different from the other two (used only in 3-way jobs).
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
213 (defmacro ediff-no-fine-diffs-p (n)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
214 `(aref (ediff-get-difference ,n 'A) 2))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
215
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
216 (defmacro ediff-get-diff-overlay-from-diff-record (diff-rec)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
217 `(aref ,diff-rec 0))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
218
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
219 (defmacro ediff-get-diff-overlay (n buf-type)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
220 `(ediff-get-diff-overlay-from-diff-record
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
221 (ediff-get-difference ,n ,buf-type)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
222
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
223 (defmacro ediff-get-fine-diff-vector-from-diff-record (diff-rec)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
224 `(aref ,diff-rec 1))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
225
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
226 (defmacro ediff-set-fine-diff-vector (n buf-type fine-vec)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
227 `(aset (ediff-get-difference ,n ,buf-type) 1 ,fine-vec))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
228
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
229 (defmacro ediff-get-state-of-diff (n buf-type)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
230 `(if (ediff-buffer-live-p ediff-buffer-C)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
231 (aref (ediff-get-difference ,n ,buf-type) 3)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
232 (defmacro ediff-set-state-of-diff (n buf-type val)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
233 `(aset (ediff-get-difference ,n ,buf-type) 3 ,val))
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
234
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
235 (defmacro ediff-get-state-of-merge (n)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
236 `(if ediff-state-of-merge
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
237 (aref (aref ediff-state-of-merge ,n) 0)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
238 (defmacro ediff-set-state-of-merge (n val)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
239 `(if ediff-state-of-merge
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
240 (aset (aref ediff-state-of-merge ,n) 0 ,val)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
241
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
242 (defmacro ediff-get-state-of-ancestor (n)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
243 `(if ediff-state-of-merge
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
244 (aref (aref ediff-state-of-merge ,n) 1)))
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
245
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
246 ;; if flag is t, puts a mark on diff region saying that
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
247 ;; the differences are in white space only. If flag is nil,
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
248 ;; the region is marked as essential (i.e., differences are
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
249 ;; not just in the white space and newlines.)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
250 (defmacro ediff-mark-diff-as-space-only (n flag)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
251 `(aset (ediff-get-difference ,n 'A) 2 ,flag))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
252
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
253 (defmacro ediff-get-fine-diff-vector (n buf-type)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
254 `(ediff-get-fine-diff-vector-from-diff-record
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
255 (ediff-get-difference ,n ,buf-type)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
256
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
257 ;; Macro to switch to BUFFER, evaluate BODY, returns to original buffer.
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
258 ;; Doesn't save the point and mark.
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
259 ;; This is `with-current-buffer' with the added test for live buffers."
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
260 (defmacro ediff-with-current-buffer (buffer &rest body)
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
261 `(if (ediff-buffer-live-p ,buffer)
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
262 (save-current-buffer
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
263 (set-buffer ,buffer)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
264 ,@body)
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
265 (or (eq this-command 'ediff-quit)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
266 (error ediff-KILLED-VITAL-BUFFER))
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
267 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
268
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
269
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
270 (defsubst ediff-multiframe-setup-p ()
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
271 (and (ediff-window-display-p) ediff-multiframe))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
272
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
273 (defmacro ediff-narrow-control-frame-p ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
274 `(and (ediff-multiframe-setup-p)
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
275 (equal ediff-help-message ediff-brief-message-string)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
276
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
277 (defmacro ediff-3way-comparison-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
278 `(memq
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
279 ediff-job-name
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
280 '(ediff-files3 ediff-buffers3)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
281 (ediff-defvar-local ediff-3way-comparison-job nil "")
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
282
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
283 (defmacro ediff-merge-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
284 `(memq
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
285 ediff-job-name
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
286 '(ediff-merge-files
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
287 ediff-merge-buffers
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
288 ediff-merge-files-with-ancestor
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
289 ediff-merge-buffers-with-ancestor
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
290 ediff-merge-revisions
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
291 ediff-merge-revisions-with-ancestor)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
292 (ediff-defvar-local ediff-merge-job nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
293
44028
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
294 (defmacro ediff-patch-job ()
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
295 `(eq ediff-job-name 'epatch))
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
296
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
297 (defmacro ediff-merge-with-ancestor-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
298 `(memq
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
299 ediff-job-name
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
300 '(ediff-merge-files-with-ancestor
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
301 ediff-merge-buffers-with-ancestor
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
302 ediff-merge-revisions-with-ancestor)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
303 (ediff-defvar-local ediff-merge-with-ancestor-job nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
304
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
305 (defmacro ediff-3way-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
306 `(or ediff-3way-comparison-job ediff-merge-job))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
307 (ediff-defvar-local ediff-3way-job nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
308
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
309 ;; A diff3 job is like a 3way job, but ediff-merge doesn't require the use
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
310 ;; of diff3.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
311 (defmacro ediff-diff3-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
312 `(or ediff-3way-comparison-job
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
313 ediff-merge-with-ancestor-job))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
314 (ediff-defvar-local ediff-diff3-job nil "")
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
315
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
316 (defmacro ediff-windows-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
317 `(memq ediff-job-name '(ediff-windows-wordwise ediff-windows-linewise)))
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
318 (ediff-defvar-local ediff-windows-job nil "")
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
319
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
320 (defmacro ediff-word-mode-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
321 `(memq ediff-job-name '(ediff-windows-wordwise ediff-regions-wordwise)))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
322 (ediff-defvar-local ediff-word-mode-job nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
323
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
324 (defmacro ediff-narrow-job ()
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
325 `(memq ediff-job-name '(ediff-windows-wordwise
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
326 ediff-regions-wordwise
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
327 ediff-windows-linewise
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
328 ediff-regions-linewise)))
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
329 (ediff-defvar-local ediff-narrow-job nil "")
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
330
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
331 ;; Note: ediff-merge-directory-revisions-with-ancestor is not treated as an
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
332 ;; ancestor metajob, since it behaves differently.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
333 (defsubst ediff-ancestor-metajob (&optional metajob)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
334 (memq (or metajob ediff-metajob-name)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
335 '(ediff-merge-directories-with-ancestor
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
336 ediff-merge-filegroups-with-ancestor)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
337 (defsubst ediff-revision-metajob (&optional metajob)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
338 (memq (or metajob ediff-metajob-name)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
339 '(ediff-directory-revisions
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
340 ediff-merge-directory-revisions
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
341 ediff-merge-directory-revisions-with-ancestor)))
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
342 (defsubst ediff-patch-metajob (&optional metajob)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
343 (memq (or metajob ediff-metajob-name)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
344 '(ediff-multifile-patch)))
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
345 ;; metajob involving only one group of files, such as multipatch or directory
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
346 ;; revision
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
347 (defsubst ediff-one-filegroup-metajob (&optional metajob)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
348 (or (ediff-revision-metajob metajob)
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
349 (ediff-patch-metajob metajob)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
350 ;; add more here
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
351 ))
43714
1c34b0b56515 * ediff-init.el: comments.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43220
diff changeset
352 ;; jobs suitable for the operation of collecting diffs into a multifile patch
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
353 (defsubst ediff-collect-diffs-metajob (&optional metajob)
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
354 (memq (or metajob ediff-metajob-name)
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
355 '(ediff-directories
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
356 ediff-merge-directories
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
357 ediff-merge-directories-with-ancestor
43714
1c34b0b56515 * ediff-init.el: comments.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43220
diff changeset
358 ediff-directory-revisions
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
359 ediff-merge-directory-revisions
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
360 ediff-merge-directory-revisions-with-ancestor
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
361 ;; add more here
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
362 )))
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
363 (defsubst ediff-merge-metajob (&optional metajob)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
364 (memq (or metajob ediff-metajob-name)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
365 '(ediff-merge-directories
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
366 ediff-merge-directories-with-ancestor
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
367 ediff-merge-directory-revisions
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
368 ediff-merge-directory-revisions-with-ancestor
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
369 ediff-merge-filegroups-with-ancestor
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
370 ;; add more here
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
371 )))
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
372
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
373 (defsubst ediff-metajob3 (&optional metajob)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
374 (memq (or metajob ediff-metajob-name)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
375 '(ediff-merge-directories-with-ancestor
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
376 ediff-merge-filegroups-with-ancestor
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
377 ediff-directories3
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
378 ediff-filegroups3)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
379 (defsubst ediff-comparison-metajob3 (&optional metajob)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
380 (memq (or metajob ediff-metajob-name)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
381 '(ediff-directories3 ediff-filegroups3)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
382
16766
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
383 ;; with no argument, checks if we are in ediff-control-buffer
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
384 ;; with argument, checks if we are in ediff-meta-buffer
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
385 (defun ediff-in-control-buffer-p (&optional meta-buf-p)
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
386 (and (boundp 'ediff-control-buffer)
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
387 (eq (if meta-buf-p ediff-meta-buffer ediff-control-buffer)
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
388 (current-buffer))))
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
389
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
390 (defsubst ediff-barf-if-not-control-buffer (&optional meta-buf-p)
beb94a5271e2 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16248
diff changeset
391 (or (ediff-in-control-buffer-p meta-buf-p)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
392 (error "%S: This command runs in Ediff Control Buffer only!"
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
393 this-command)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
394
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
395 (defgroup ediff-highlighting nil
64007
35df749b5a09 (ediff-highlighting, ediff-merge, ediff-hook): Finish `defgroup' description
Juanma Barranquero <lekktu@gmail.com>
parents: 63534
diff changeset
396 "Hilighting of difference regions in Ediff."
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
397 :prefix "ediff-"
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
398 :group 'ediff)
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
399
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
400 (defgroup ediff-merge nil
64007
35df749b5a09 (ediff-highlighting, ediff-merge, ediff-hook): Finish `defgroup' description
Juanma Barranquero <lekktu@gmail.com>
parents: 63534
diff changeset
401 "Merging utilities."
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
402 :prefix "ediff-"
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
403 :group 'ediff)
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
404
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
405 (defgroup ediff-hook nil
64007
35df749b5a09 (ediff-highlighting, ediff-merge, ediff-hook): Finish `defgroup' description
Juanma Barranquero <lekktu@gmail.com>
parents: 63534
diff changeset
406 "Hooks run by Ediff."
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
407 :prefix "ediff-"
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
408 :group 'ediff)
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
409
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
410 ;; Hook variables
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
411
33019
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
412 (defcustom ediff-before-setup-hook nil
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
413 "*Hooks to run before Ediff begins to set up windows and buffers.
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
414 This hook can be used to save the previous window config, which can be restored
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
415 on ediff-quit or ediff-suspend."
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
416 :type 'hook
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
417 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
418 (defcustom ediff-before-setup-windows-hook nil
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
419 "*Hooks to run before Ediff sets its window configuration.
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
420 This hook is run every time when Ediff arranges its windows.
33019
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
421 This happens each time Ediff detects that the windows were messed up by the
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
422 user."
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
423 :type 'hook
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
424 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
425 (defcustom ediff-after-setup-windows-hook nil
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
426 "*Hooks to run after Ediff sets its window configuration.
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
427 This can be used to set up control window or icon in a desired place."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
428 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
429 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
430 (defcustom ediff-before-setup-control-frame-hook nil
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
431 "*Hooks run before setting up the frame to display Ediff Control Panel.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
432 Can be used to change control frame parameters to position it where it
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
433 is desirable."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
434 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
435 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
436 (defcustom ediff-after-setup-control-frame-hook nil
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
437 "*Hooks run after setting up the frame to display Ediff Control Panel.
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
438 Can be used to move the frame where it is desired."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
439 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
440 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
441 (defcustom ediff-startup-hook nil
33019
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
442 "*Hooks to run in the control buffer after Ediff has been set up and is ready for the job."
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
443 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
444 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
445 (defcustom ediff-select-hook nil
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
446 "*Hooks to run after a difference has been selected."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
447 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
448 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
449 (defcustom ediff-unselect-hook nil
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
450 "*Hooks to run after a difference has been unselected."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
451 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
452 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
453 (defcustom ediff-prepare-buffer-hook nil
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
454 "*Hooks run after buffers A, B, and C are set up.
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
455 For each buffer, the hooks are run with that buffer made current."
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
456 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
457 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
458 (defcustom ediff-load-hook nil
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
459 "*Hook run after Ediff is loaded. Can be used to change defaults."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
460 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
461 :group 'ediff-hook)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
462
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
463 (defcustom ediff-mode-hook nil
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
464 "*Hook run just after ediff-mode is set up in the control buffer.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
465 This is done before any windows or frames are created. One can use it to
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
466 set local variables that determine how the display looks like."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
467 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
468 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
469 (defcustom ediff-keymap-setup-hook nil
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
470 "*Hook run just after the default bindings in Ediff keymap are set up."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
471 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
472 :group 'ediff-hook)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
473
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
474 (defcustom ediff-display-help-hook nil
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
475 "*Hooks run after preparing the help message."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
476 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
477 :group 'ediff-hook)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
478
34860
fdb5d08ced13 2000-12-25 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 33842
diff changeset
479 (defcustom ediff-suspend-hook nil
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
480 "*Hooks to run in the Ediff control buffer when Ediff is suspended."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
481 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
482 :group 'ediff-hook)
34860
fdb5d08ced13 2000-12-25 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 33842
diff changeset
483 (defcustom ediff-quit-hook nil
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
484 "*Hooks to run in the Ediff control buffer after finishing Ediff."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
485 :type 'hook
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
486 :group 'ediff-hook)
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
487 (defcustom ediff-cleanup-hook nil
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
488 "*Hooks to run on exiting Ediff but before killing the control and variant buffers."
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
489 :type 'hook
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
490 :group 'ediff-hook)
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
491
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
492 ;; Error messages
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
493 (defconst ediff-KILLED-VITAL-BUFFER
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
494 "You have killed a vital Ediff buffer---you must leave Ediff now!")
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
495 (defconst ediff-NO-DIFFERENCES
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
496 "Sorry, comparison of identical variants is not what I am made for...")
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
497 (defconst ediff-BAD-DIFF-NUMBER
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
498 ;; %S stands for this-command, %d - diff number, %d - max diff
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
499 "%S: Bad diff region number, %d. Valid numbers are 1 to %d")
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
500 (defconst ediff-BAD-INFO (format "
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
501 *** The Info file for Ediff, a part of the standard distribution
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
502 *** of %sEmacs, does not seem to be properly installed.
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
503 ***
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
504 *** Please contact your system administrator. "
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
505 (if ediff-xemacs-p "X" "")))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
506
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
507 ;; Selective browsing
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
508
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
509 (ediff-defvar-local ediff-skip-diff-region-function 'ediff-show-all-diffs
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
510 "Function that determines the next/previous diff region to show.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
511 Should return t for regions to be ignored and nil otherwise.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
512 This function gets a region number as an argument. The region number
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
513 is the one used internally by Ediff. It is 1 less than the number seen
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
514 by the user.")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
515
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
516 (ediff-defvar-local ediff-hide-regexp-matches-function
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
517 'ediff-hide-regexp-matches
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
518 "Function to use in determining which regions to hide.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
519 See the documentation string of `ediff-hide-regexp-matches' for details.")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
520 (ediff-defvar-local ediff-focus-on-regexp-matches-function
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
521 'ediff-focus-on-regexp-matches
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
522 "Function to use in determining which regions to focus on.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
523 See the documentation string of `ediff-focus-on-regexp-matches' for details.")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
524
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
525 ;; Regexp that determines buf A regions to focus on when skipping to diff
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
526 (ediff-defvar-local ediff-regexp-focus-A "" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
527 ;; Regexp that determines buf B regions to focus on when skipping to diff
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
528 (ediff-defvar-local ediff-regexp-focus-B "" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
529 ;; Regexp that determines buf C regions to focus on when skipping to diff
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
530 (ediff-defvar-local ediff-regexp-focus-C "" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
531 ;; connective that determines whether to focus regions that match both or
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
532 ;; one of the regexps
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
533 (ediff-defvar-local ediff-focus-regexp-connective 'and "")
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
534
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
535 ;; Regexp that determines buf A regions to ignore when skipping to diff
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
536 (ediff-defvar-local ediff-regexp-hide-A "" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
537 ;; Regexp that determines buf B regions to ignore when skipping to diff
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
538 (ediff-defvar-local ediff-regexp-hide-B "" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
539 ;; Regexp that determines buf C regions to ignore when skipping to diff
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
540 (ediff-defvar-local ediff-regexp-hide-C "" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
541 ;; connective that determines whether to hide regions that match both or
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
542 ;; one of the regexps
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
543 (ediff-defvar-local ediff-hide-regexp-connective 'and "")
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
544
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
545
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
546 ;;; Copying difference regions between buffers.
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
547
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
548 ;; A list of killed diffs.
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
549 ;; A diff is saved here if it is replaced by a diff
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
550 ;; from another buffer. This alist has the form:
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
551 ;; \((num (buff-object . diff) (buff-object . diff) (buff-object . diff)) ...),
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
552 ;; where some buffer-objects may be missing.
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
553 (ediff-defvar-local ediff-killed-diffs-alist nil "")
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
554
36857
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
555 ;; Syntax table to use in ediff-forward-word-function
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
556 ;; This is chosen by a heuristic. The important thing is for all buffers to
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
557 ;; have the same syntax table. Which is not too important.
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
558 (ediff-defvar-local ediff-syntax-table nil "")
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
559
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
560
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
561 ;; Highlighting
64820
3b8ee785ce35 Use (featurep 'xemacs).
Richard M. Stallman <rms@gnu.org>
parents: 64762
diff changeset
562 (defcustom ediff-before-flag-bol (if (featurep 'xemacs) (make-glyph "->>") "->>")
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
563 "*Flag placed before a highlighted block of differences, if block starts at beginning of a line."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
564 :type 'string
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
565 :tag "Region before-flag at beginning of line"
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
566 :group 'ediff)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
567
64820
3b8ee785ce35 Use (featurep 'xemacs).
Richard M. Stallman <rms@gnu.org>
parents: 64762
diff changeset
568 (defcustom ediff-after-flag-eol (if (featurep 'xemacs) (make-glyph "<<-") "<<-")
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
569 "*Flag placed after a highlighted block of differences, if block ends at end of a line."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
570 :type 'string
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
571 :tag "Region after-flag at end of line"
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
572 :group 'ediff)
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
573
64820
3b8ee785ce35 Use (featurep 'xemacs).
Richard M. Stallman <rms@gnu.org>
parents: 64762
diff changeset
574 (defcustom ediff-before-flag-mol (if (featurep 'xemacs) (make-glyph "->>") "->>")
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
575 "*Flag placed before a highlighted block of differences, if block starts in mid-line."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
576 :type 'string
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
577 :tag "Region before-flag in the middle of line"
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
578 :group 'ediff)
64820
3b8ee785ce35 Use (featurep 'xemacs).
Richard M. Stallman <rms@gnu.org>
parents: 64762
diff changeset
579 (defcustom ediff-after-flag-mol (if (featurep 'xemacs) (make-glyph "<<-") "<<-")
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
580 "*Flag placed after a highlighted block of differences, if block ends in mid-line."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
581 :type 'string
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
582 :tag "Region after-flag in the middle of line"
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
583 :group 'ediff)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
584
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
585
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
586 (ediff-defvar-local ediff-use-faces t "")
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
587 (defcustom ediff-use-faces t
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
588 "If t, differences are highlighted using faces, if device supports faces.
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
589 If nil, differences are highlighted using ASCII flags, ediff-before-flag
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
590 and ediff-after-flag. On a non-window system, differences are always
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
591 highlighted using ASCII flags."
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
592 :type 'boolean
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
593 :group 'ediff-highlighting)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
594
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
595 ;; this indicates that diff regions are word-size, so fine diffs are
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
596 ;; permanently nixed; used in ediff-windows-wordwise and ediff-regions-wordwise
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
597 (ediff-defvar-local ediff-word-mode nil "")
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
598 ;; Name of the job (ediff-files, ediff-windows, etc.)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
599 (ediff-defvar-local ediff-job-name nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
600
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
601 ;; Narrowing and ediff-region/windows support
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
602 ;; This is a list (overlay-A overlay-B overlay-C)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
603 ;; If set, Ediff compares only those parts of buffers A/B/C that lie within
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
604 ;; the bounds of these overlays.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
605 (ediff-defvar-local ediff-narrow-bounds nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
606
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
607 ;; List (overlay-A overlay-B overlay-C), where each overlay spans the
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
608 ;; entire corresponding buffer.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
609 (ediff-defvar-local ediff-wide-bounds nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
610
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
611 ;; Current visibility boundaries in buffers A, B, and C.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
612 ;; This is also a list of overlays. When the user toggles narrow/widen,
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
613 ;; this list changes from ediff-wide-bounds to ediff-narrow-bounds.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
614 ;; and back.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
615 (ediff-defvar-local ediff-visible-bounds nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
616
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
617 (ediff-defvar-local ediff-start-narrowed t
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
618 "Non-nil means start narrowed, if doing ediff-windows-* or ediff-regions-*")
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
619 (ediff-defvar-local ediff-quit-widened t
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
620 "*Non-nil means: when finished, Ediff widens buffers A/B.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
621 Actually, Ediff restores the scope of visibility that existed at startup.")
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
622
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
623 (defcustom ediff-keep-variants t
42288
3ce98f3e0608 2001-12-24 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42205
diff changeset
624 "*nil means prompt to remove unmodified buffers A/B/C at session end.
13977
11784c04028a (ediff-keep-variants): Doc fix.
Karl Heuer <kwzh@gnu.org>
parents: 13494
diff changeset
625 Supplying a prefix argument to the quit command `q' temporarily reverses the
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
626 meaning of this variable."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
627 :type 'boolean
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
628 :group 'ediff)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
629
21961
ace3a9c44f3a *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21940
diff changeset
630 (ediff-defvar-local ediff-highlight-all-diffs t "")
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
631 (defcustom ediff-highlight-all-diffs t
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
632 "If nil, only the selected differences are highlighted.
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
633 Otherwise, all difference regions are highlighted, but the selected region is
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
634 shown in brighter colors."
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
635 :type 'boolean
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
636 :group 'ediff-highlighting)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
637
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
638
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
639 ;; The suffix of the control buffer name.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
640 (ediff-defvar-local ediff-control-buffer-suffix nil "")
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
641 ;; Same as ediff-control-buffer-suffix, but without <,>.
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
642 ;; It's a number rather than string.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
643 (ediff-defvar-local ediff-control-buffer-number nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
644
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
645
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
646 ;; The original values of ediff-protected-variables for buffer A
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
647 (ediff-defvar-local ediff-buffer-values-orig-A nil "")
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
648 ;; The original values of ediff-protected-variables for buffer B
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
649 (ediff-defvar-local ediff-buffer-values-orig-B nil "")
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
650 ;; The original values of ediff-protected-variables for buffer C
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
651 (ediff-defvar-local ediff-buffer-values-orig-C nil "")
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
652 ;; The original values of ediff-protected-variables for buffer Ancestor
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
653 (ediff-defvar-local ediff-buffer-values-orig-Ancestor nil "")
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
654
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
655 ;; association between buff-type and ediff-buffer-values-orig-*
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
656 (defconst ediff-buffer-values-orig-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
657 '((A . ediff-buffer-values-orig-A)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
658 (B . ediff-buffer-values-orig-B)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
659 (C . ediff-buffer-values-orig-C)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
660 (Ancestor . ediff-buffer-values-orig-Ancestor)))
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
661
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
662 ;; Buffer-local variables to be saved then restored during Ediff sessions
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
663 (defconst ediff-protected-variables '(
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
664 ;;buffer-read-only
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
665 mode-line-format))
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
666
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
667 ;; Vector of differences between the variants. Each difference is
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
668 ;; represented by a vector of two overlays plus a vector of fine diffs,
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
669 ;; plus a no-fine-diffs flag. The first overlay spans the
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
670 ;; difference region in the A buffer and the second overlays the diff in
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
671 ;; the B buffer. If a difference section is empty, the corresponding
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
672 ;; overlay's endpoints coincide.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
673 ;;
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
674 ;; The precise form of a Difference Vector for one buffer is:
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
675 ;; [diff diff diff ...]
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
676 ;; where each diff has the form:
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
677 ;; [diff-overlay fine-diff-vector no-fine-diffs-flag state-of-diff]
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
678 ;; fine-diff-vector is a vector [fine-diff-overlay fine-diff-overlay ...]
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
679 ;; no-fine-diffs-flag says if there are fine differences.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
680 ;; state-of-difference is A, B, C, or nil, indicating which buffer is
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
681 ;; different from the other two (used only in 3-way jobs.
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
682 (ediff-defvar-local ediff-difference-vector-A nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
683 (ediff-defvar-local ediff-difference-vector-B nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
684 (ediff-defvar-local ediff-difference-vector-C nil "")
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
685 (ediff-defvar-local ediff-difference-vector-Ancestor nil "")
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
686 ;; A-list of diff vector types associated with buffer types
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
687 (defconst ediff-difference-vector-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
688 '((A . ediff-difference-vector-A)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
689 (B . ediff-difference-vector-B)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
690 (C . ediff-difference-vector-C)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
691 (Ancestor . ediff-difference-vector-Ancestor)))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
692
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
693 ;; [ status status status ...]
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
694 ;; Each status: [state-of-merge state-of-ancestor]
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
695 ;; state-of-merge is default-A, default-B, prefer-A, or prefer-B. It
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
696 ;; indicates the way a diff region was created in buffer C.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
697 ;; state-of-ancestor says if the corresponding region in ancestor buffer is
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
698 ;; empty.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
699 (ediff-defvar-local ediff-state-of-merge nil "")
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
700
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
701 ;; The difference that is currently selected.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
702 (ediff-defvar-local ediff-current-difference -1 "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
703 ;; Number of differences found.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
704 (ediff-defvar-local ediff-number-of-differences nil "")
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
705
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
706 ;; Buffer containing the output of diff, which is used by Ediff to step
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
707 ;; through files.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
708 (ediff-defvar-local ediff-diff-buffer nil "")
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
709 ;; Like ediff-diff-buffer, but contains context diff. It is not used by
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
710 ;; Ediff, but it is saved in a file, if user requests so.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
711 (ediff-defvar-local ediff-custom-diff-buffer nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
712 ;; Buffer used for diff-style fine differences between regions.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
713 (ediff-defvar-local ediff-fine-diff-buffer nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
714 ;; Temporary buffer used for computing fine differences.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
715 (defconst ediff-tmp-buffer " *ediff-tmp*" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
716 ;; Buffer used for messages
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
717 (defconst ediff-msg-buffer " *ediff-message*" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
718 ;; Buffer containing the output of diff when diff returns errors.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
719 (ediff-defvar-local ediff-error-buffer nil "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
720 ;; Buffer to display debug info
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
721 (ediff-defvar-local ediff-debug-buffer "*ediff-debug*" "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
722
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
723 ;; List of ediff control panels associated with each buffer A/B/C/Ancestor.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
724 ;; Not used any more, but may be needed in the future.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
725 (ediff-defvar-local ediff-this-buffer-ediff-sessions nil "")
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
726
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
727 ;; to be deleted in due time
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
728 ;; List of difference overlays disturbed by working with the current diff.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
729 (defvar ediff-disturbed-overlays nil "")
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
730
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
731 ;; Priority of non-selected overlays.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
732 (defvar ediff-shadow-overlay-priority 100 "")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
733
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
734 (defcustom ediff-version-control-package 'vc
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
735 "Version control package used.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
736 Currently, Ediff supports vc.el, rcs.el, pcl-cvs.el, and generic-sc.el. The
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
737 standard Emacs interface to RCS, CVS, SCCS, etc., is vc.el. However, some
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
738 people find the other two packages more convenient. Set this variable to the
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
739 appropriate symbol: `rcs', `pcl-cvs', or `generic-sc' if you so desire."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
740 :type 'symbol
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
741 :group 'ediff)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
742
38514
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
743 (defcustom ediff-coding-system-for-read 'raw-text
49588
37645a051842 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 47846
diff changeset
744 "*The coding system for read to use when running the diff program as a subprocess.
38514
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
745 In most cases, the default will do. However, under certain circumstances in
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
746 Windows NT/98/95 you might need to use something like 'raw-text-dos here.
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
747 So, if the output that your diff program sends to Emacs contains extra ^M's,
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
748 you might need to experiment here, if the default or 'raw-text-dos doesn't
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
749 work."
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
750 :type 'symbol
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
751 :group 'ediff)
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
752
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
753 (defcustom ediff-coding-system-for-write 'no-conversion
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
754 "*The coding system for write to use when writing out difference regions
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
755 to temp files when Ediff needs to find fine differences."
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
756 :type 'symbol
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
757 :group 'ediff)
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
758
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
759
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
760 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
761 (progn ; xemacs
47520
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
762 (defalias 'ediff-read-event 'next-command-event)
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
763 (defalias 'ediff-overlayp 'extentp)
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
764 (defalias 'ediff-make-overlay 'make-extent)
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
765 (defalias 'ediff-delete-overlay 'delete-extent))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
766 (progn ; emacs
47520
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
767 (defalias 'ediff-read-event 'read-event)
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
768 (defalias 'ediff-overlayp 'overlayp)
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
769 (defalias 'ediff-make-overlay 'make-overlay)
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
770 (defalias 'ediff-delete-overlay 'delete-overlay))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
771 )
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
772
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
773 ;; Check the current version against the major and minor version numbers
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
774 ;; using op: cur-vers op major.minor If emacs-major-version or
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
775 ;; emacs-minor-version are not defined, we assume that the current version
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
776 ;; is hopelessly outdated. We assume that emacs-major-version and
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
777 ;; emacs-minor-version are defined. Otherwise, for Emacs/XEmacs 19, if the
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
778 ;; current minor version is < 10 (xemacs) or < 23 (emacs) the return value
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
779 ;; will be nil (when op is =, >, or >=) and t (when op is <, <=), which may be
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
780 ;; incorrect. However, this gives correct result in our cases, since we are
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
781 ;; testing for sufficiently high Emacs versions.
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
782 (defun ediff-check-version (op major minor &optional type-of-emacs)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
783 (if (and (boundp 'emacs-major-version) (boundp 'emacs-minor-version))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
784 (and (cond ((eq type-of-emacs 'xemacs) ediff-xemacs-p)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
785 ((eq type-of-emacs 'emacs) ediff-emacs-p)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
786 (t t))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
787 (cond ((eq op '=) (and (= emacs-minor-version minor)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
788 (= emacs-major-version major)))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
789 ((memq op '(> >= < <=))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
790 (and (or (funcall op emacs-major-version major)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
791 (= emacs-major-version major))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
792 (if (= emacs-major-version major)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
793 (funcall op emacs-minor-version minor)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
794 t)))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
795 (t
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
796 (error "%S: Invalid op in ediff-check-version" op))))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
797 (cond ((memq op '(= > >=)) nil)
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
798 ((memq op '(< <=)) t))))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
799
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
800
30089
f7f64f1ccc38 2000-07-05 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 29412
diff changeset
801 (defun ediff-color-display-p ()
f7f64f1ccc38 2000-07-05 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 29412
diff changeset
802 (condition-case nil
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
803 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
804 (eq (device-class (selected-device)) 'color) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
805 (if (fboundp 'display-color-p) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
806 (display-color-p)
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
807 (x-display-color-p))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
808 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
809 (error nil)))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
810
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
811
44028
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
812 ;; A var local to each control panel buffer. Indicates highlighting style
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
813 ;; in effect for this buffer: `face', `ascii',
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
814 ;; `off' -- turned off \(on a dumb terminal only\).
49588
37645a051842 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 47846
diff changeset
815 (ediff-defvar-local ediff-highlighting-style
44028
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
816 (if (and (ediff-has-face-support-p) ediff-use-faces) 'face 'ascii)
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
817 "")
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
818
182881d68883 * ediff-diff.el (ediff-install-fine-diff-if-necessary): take
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 43714
diff changeset
819
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
820 (if (ediff-has-face-support-p)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
821 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
822 (progn ; xemacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
823 (defalias 'ediff-valid-color-p 'valid-color-name-p)
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
824 (defalias 'ediff-get-face 'get-face))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
825 (progn ; emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
826 (defalias 'ediff-valid-color-p (if (fboundp 'color-defined-p)
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
827 'color-defined-p
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
828 'x-color-defined-p))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
829 (defalias 'ediff-get-face 'internal-get-face))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
830 ))
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
831
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
832 (if (ediff-window-display-p)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
833 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
834 (progn ; xemacs
47520
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
835 (defalias 'ediff-display-pixel-width 'device-pixel-width)
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
836 (defalias 'ediff-display-pixel-height 'device-pixel-height))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
837 (progn ; emacs
47520
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
838 (defalias 'ediff-display-pixel-width
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
839 (if (fboundp 'display-pixel-width)
47520
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
840 'display-pixel-width
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
841 'x-display-pixel-width))
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
842 (defalias 'ediff-display-pixel-height
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
843 (if (fboundp 'display-pixel-height)
47520
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
844 'display-pixel-height
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
845 'x-display-pixel-height)))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
846 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
847
33019
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
848 ;; A-list of current-diff-overlay symbols associated with buf types
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
849 (defconst ediff-current-diff-overlay-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
850 '((A . ediff-current-diff-overlay-A)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
851 (B . ediff-current-diff-overlay-B)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
852 (C . ediff-current-diff-overlay-C)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
853 (Ancestor . ediff-current-diff-overlay-Ancestor)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
854
33019
6306740f6938 2000-10-29 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 30394
diff changeset
855 ;; A-list of current-diff-face-* symbols associated with buf types
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
856 (defconst ediff-current-diff-face-alist
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
857 '((A . ediff-current-diff-A)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
858 (B . ediff-current-diff-B)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
859 (C . ediff-current-diff-C)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
860 (Ancestor . ediff-current-diff-Ancestor)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
861
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
862
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
863 (defun ediff-set-overlay-face (extent face)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
864 (ediff-overlay-put extent 'face face)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
865 (ediff-overlay-put extent 'help-echo 'ediff-region-help-echo))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
866
30373
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
867 (defun ediff-region-help-echo (extent-or-window &optional overlay point)
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
868 (unless overlay
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
869 (setq overlay extent-or-window))
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
870 (let ((is-current (ediff-overlay-get overlay 'ediff))
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
871 (face (ediff-overlay-get overlay 'face))
30394
557b7595fdcc (ediff-region-help-echo): Bind face-help.
Dave Love <fx@gnu.org>
parents: 30373
diff changeset
872 (diff-num (ediff-overlay-get overlay 'ediff-diff-num))
557b7595fdcc (ediff-region-help-echo): Bind face-help.
Dave Love <fx@gnu.org>
parents: 30373
diff changeset
873 face-help)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
874
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
875 ;; This happens only for refinement overlays
30373
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
876 (if (stringp face)
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
877 (setq face (intern face)))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
878 (setq face-help (and face (get face 'ediff-help-echo)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
879
30330
b1d77f56dfb3 (ediff-region-help-echo): Partially fix for Emacs implementation.
Dave Love <fx@gnu.org>
parents: 30089
diff changeset
880 (cond ((and is-current diff-num) ; current diff region
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
881 (format "Difference region %S -- current" (1+ diff-num)))
30373
6da8732233ea (ediff-region-help-echo): Modify to use overlay
Dave Love <fx@gnu.org>
parents: 30332
diff changeset
882 (face-help) ; refinement of current diff region
30330
b1d77f56dfb3 (ediff-region-help-echo): Partially fix for Emacs implementation.
Dave Love <fx@gnu.org>
parents: 30089
diff changeset
883 (diff-num ; non-current
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
884 (format "Difference region %S -- non-current" (1+ diff-num)))
30330
b1d77f56dfb3 (ediff-region-help-echo): Partially fix for Emacs implementation.
Dave Love <fx@gnu.org>
parents: 30089
diff changeset
885 (t "")) ; none
30332
90ab0623a3e4 Fix last checkin.
Dave Love <fx@gnu.org>
parents: 30330
diff changeset
886 ))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
887
14534
3c38a5112cb6 Make sure `facemenu-unlisted-faces' is bound.
Richard M. Stallman <rms@gnu.org>
parents: 14419
diff changeset
888
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
889 (defun ediff-set-face-pixmap (face pixmap)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
890 "Set face pixmap on a monochrome display."
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
891 (if (and (ediff-window-display-p) (not (ediff-color-display-p)))
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
892 (condition-case nil
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
893 (set-face-background-pixmap face pixmap)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
894 (error
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
895 (message "Pixmap not found for %S: %s" (face-name face) pixmap)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
896 (sit-for 1)))))
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
897
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
898 (defun ediff-hide-face (face)
60151
905bf9de87af * ediff.el (ediff-set-diff-overlays-in-one-buffer,
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 57127
diff changeset
899 (if (and (ediff-has-face-support-p)
905bf9de87af * ediff.el (ediff-set-diff-overlays-in-one-buffer,
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 57127
diff changeset
900 (boundp 'add-to-list)
54576
575ec50746f9 (ediff-hide-face): Check that facemenu-unlisted-faces is bound before using it.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 52401
diff changeset
901 (boundp 'facemenu-unlisted-faces))
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
902 (add-to-list 'facemenu-unlisted-faces face)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
903
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
904
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
905
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
906 (defface ediff-current-diff-A
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
907 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
908 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
909 (:foreground "firebrick" :background "pale green"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
910 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
911 (:foreground "blue3" :background "yellow3"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
912 (t (:inverse-video t)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
913 '((((type tty)) (:foreground "blue3" :background "yellow3"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
914 (((class color)) (:foreground "firebrick" :background "pale green"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
915 (t (:inverse-video t))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
916 "Face for highlighting the selected difference in buffer A."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
917 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
918 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
919 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
920 (defvar ediff-current-diff-face-A 'ediff-current-diff-A
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
921 "Face for highlighting the selected difference in buffer A.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
922 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
923 widget to customize the actual face object `ediff-current-diff-A'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
924 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
925 (ediff-hide-face ediff-current-diff-face-A)
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
926 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
927 ;; This means that some user customization may be trashed.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
928 (if (and ediff-xemacs-p
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
929 (ediff-has-face-support-p)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
930 (not (ediff-color-display-p)))
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
931 (copy-face 'modeline ediff-current-diff-face-A))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
932
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
933
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
934
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
935 (defface ediff-current-diff-B
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
936 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
937 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
938 (:foreground "DarkOrchid" :background "Yellow"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
939 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
940 (:foreground "magenta3" :background "yellow3"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
941 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
942 (t (:inverse-video t)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
943 '((((type tty)) (:foreground "magenta3" :background "yellow3"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
944 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
945 (((class color)) (:foreground "DarkOrchid" :background "Yellow"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
946 (t (:inverse-video t))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
947 "Face for highlighting the selected difference in buffer B."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
948 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
949 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
950 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
951 (defvar ediff-current-diff-face-B 'ediff-current-diff-B
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
952 "Face for highlighting the selected difference in buffer B.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
953 this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
954 widget to customize the actual face `ediff-current-diff-B'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
955 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
956 (ediff-hide-face ediff-current-diff-face-B)
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
957 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
958 ;; This means that some user customization may be trashed.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
959 (if (and ediff-xemacs-p
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
960 (ediff-has-face-support-p)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
961 (not (ediff-color-display-p)))
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
962 (copy-face 'modeline ediff-current-diff-face-B))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
963
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
964
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
965 (defface ediff-current-diff-C
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
966 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
967 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
968 (:foreground "Navy" :background "Pink"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
969 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
970 (:foreground "cyan3" :background "yellow3" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
971 (t (:inverse-video t)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
972 '((((type tty)) (:foreground "cyan3" :background "yellow3" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
973 (((class color)) (:foreground "Navy" :background "Pink"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
974 (t (:inverse-video t))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
975 "Face for highlighting the selected difference in buffer C."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
976 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
977 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
978 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
979 (defvar ediff-current-diff-face-C 'ediff-current-diff-C
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
980 "Face for highlighting the selected difference in buffer C.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
981 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
982 widget to customize the actual face object `ediff-current-diff-C'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
983 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
984 (ediff-hide-face ediff-current-diff-face-C)
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
985 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
986 ;; This means that some user customization may be trashed.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
987 (if (and ediff-xemacs-p
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
988 (ediff-has-face-support-p)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
989 (not (ediff-color-display-p)))
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
990 (copy-face 'modeline ediff-current-diff-face-C))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
991
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
992
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
993 (defface ediff-current-diff-Ancestor
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
994 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
995 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
996 (:foreground "Black" :background "VioletRed"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
997 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
998 (:foreground "black" :background "magenta3"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
999 (t (:inverse-video t)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1000 '((((type tty)) (:foreground "black" :background "magenta3"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1001 (((class color)) (:foreground "Black" :background "VioletRed"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1002 (t (:inverse-video t))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1003 "Face for highlighting the selected difference in buffer Ancestor."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1004 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1005 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1006 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1007 (defvar ediff-current-diff-face-Ancestor 'ediff-current-diff-Ancestor
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1008 "Face for highlighting the selected difference in buffer Ancestor.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1009 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1010 widget to customize the actual face object `ediff-current-diff-Ancestor'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1011 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1012 (ediff-hide-face ediff-current-diff-face-Ancestor)
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1013 ;; Until custom.el for XEmacs starts supporting :inverse-video we do this.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1014 ;; This means that some user customization may be trashed.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1015 (if (and ediff-xemacs-p
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1016 (ediff-has-face-support-p)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1017 (not (ediff-color-display-p)))
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1018 (copy-face 'modeline ediff-current-diff-face-Ancestor))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1019
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1020
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1021 (defface ediff-fine-diff-A
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1022 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1023 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1024 (:foreground "Navy" :background "sky blue"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1025 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1026 (:foreground "white" :background "sky blue" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1027 (t (:underline t :stipple "gray3")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1028 '((((type tty)) (:foreground "white" :background "sky blue" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1029 (((class color)) (:foreground "Navy" :background "sky blue"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1030 (t (:underline t :stipple "gray3"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1031 "Face for highlighting the refinement of the selected diff in buffer A."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1032 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1033 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1034 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1035 (defvar ediff-fine-diff-face-A 'ediff-fine-diff-A
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1036 "Face for highlighting the fine differences in buffer A.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1037 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1038 widget to customize the actual face object `ediff-fine-diff-A'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1039 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1040 (ediff-hide-face ediff-fine-diff-face-A)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1041
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1042 (defface ediff-fine-diff-B
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1043 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1044 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1045 (:foreground "Black" :background "cyan"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1046 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1047 (:foreground "magenta3" :background "cyan3"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1048 (t (:underline t :stipple "gray3")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1049 '((((type tty)) (:foreground "magenta3" :background "cyan3"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1050 (((class color)) (:foreground "Black" :background "cyan"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1051 (t (:underline t :stipple "gray3"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1052 "Face for highlighting the refinement of the selected diff in buffer B."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1053 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1054 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1055 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1056 (defvar ediff-fine-diff-face-B 'ediff-fine-diff-B
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1057 "Face for highlighting the fine differences in buffer B.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1058 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1059 widget to customize the actual face object `ediff-fine-diff-B'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1060 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1061 (ediff-hide-face ediff-fine-diff-face-B)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1062
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1063 (defface ediff-fine-diff-C
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1064 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1065 '((((type pc))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1066 (:foreground "white" :background "Turquoise"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1067 (((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1068 (:foreground "Black" :background "Turquoise"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1069 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1070 (:foreground "yellow3" :background "Turquoise"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1071 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1072 (t (:underline t :stipple "gray3")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1073 '((((type tty)) (:foreground "yellow3" :background "Turquoise"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1074 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1075 (((type pc)) (:foreground "white" :background "Turquoise"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1076 (((class color)) (:foreground "Black" :background "Turquoise"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1077 (t (:underline t :stipple "gray3"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1078 "Face for highlighting the refinement of the selected diff in buffer C."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1079 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1080 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1081 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1082 (defvar ediff-fine-diff-face-C 'ediff-fine-diff-C
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1083 "Face for highlighting the fine differences in buffer C.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1084 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1085 widget to customize the actual face object `ediff-fine-diff-C'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1086 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1087 (ediff-hide-face ediff-fine-diff-face-C)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1088
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1089 (defface ediff-fine-diff-Ancestor
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1090 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1091 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1092 (:foreground "Black" :background "Green"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1093 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1094 (:foreground "red3" :background "green"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1095 (t (:underline t :stipple "gray3")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1096 '((((type tty)) (:foreground "red3" :background "green"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1097 (((class color)) (:foreground "Black" :background "Green"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1098 (t (:underline t :stipple "gray3"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1099 "Face for highlighting the refinement of the selected diff in the ancestor buffer.
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1100 At present, this face is not used and no fine differences are computed for the
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1101 ancestor buffer."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1102 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1103 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1104 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1105 (defvar ediff-fine-diff-face-Ancestor 'ediff-fine-diff-Ancestor
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1106 "Face for highlighting the fine differences in buffer Ancestor.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1107 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1108 widget to customize the actual face object `ediff-fine-diff-Ancestor'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1109 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1110 (ediff-hide-face ediff-fine-diff-face-Ancestor)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1111
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1112 ;; Some installs don't have stipple or Stipple. So, try them in turn.
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1113 (defvar stipple-pixmap
26585
3ec5a485d0ab *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26263
diff changeset
1114 (cond ((not (ediff-has-face-support-p)) nil)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1115 ((and (boundp 'x-bitmap-file-path)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1116 (locate-library "stipple" t x-bitmap-file-path)) "stipple")
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1117 ((and (boundp 'mswindowsx-bitmap-file-path)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1118 (locate-library "stipple" t mswindowsx-bitmap-file-path)) "stipple")
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1119 (t "Stipple")))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1120
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1121 (defface ediff-even-diff-A
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1122 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1123 `((((type pc))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1124 (:foreground "green3" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1125 (((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1126 (:foreground "Black" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1127 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1128 (:foreground "red3" :background "light grey"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1129 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1130 (t (:italic t :stipple ,stipple-pixmap)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1131 `((((type tty)) (:foreground "red3" :background "light grey"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1132 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1133 (((type pc)) (:foreground "green3" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1134 (((class color)) (:foreground "Black" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1135 (t (:italic t :stipple ,stipple-pixmap))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1136 "Face for highlighting even-numbered non-current differences in buffer A."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1137 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1138 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1139 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1140 (defvar ediff-even-diff-face-A 'ediff-even-diff-A
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1141 "Face for highlighting even-numbered non-current differences in buffer A.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1142 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1143 widget to customize the actual face object `ediff-even-diff-A'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1144 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1145 (ediff-hide-face ediff-even-diff-face-A)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1146
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1147 (defface ediff-even-diff-B
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1148 (if ediff-emacs-p
61310
4efad09bd407 Use (featurep 'xemacs).
Kim F. Storm <storm@cua.dk>
parents: 60151
diff changeset
1149 `((((class color) (min-colors 16))
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1150 (:foreground "White" :background "Grey"))
61310
4efad09bd407 Use (featurep 'xemacs).
Kim F. Storm <storm@cua.dk>
parents: 60151
diff changeset
1151 (((class color))
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1152 (:foreground "blue3" :background "Grey" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1153 (t (:italic t :stipple ,stipple-pixmap)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1154 `((((type tty)) (:foreground "blue3" :background "Grey" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1155 (((class color)) (:foreground "White" :background "Grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1156 (t (:italic t :stipple ,stipple-pixmap))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1157 "Face for highlighting even-numbered non-current differences in buffer B."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1158 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1159 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1160 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1161 (defvar ediff-even-diff-face-B 'ediff-even-diff-B
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1162 "Face for highlighting even-numbered non-current differences in buffer B.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1163 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1164 widget to customize the actual face object `ediff-even-diff-B'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1165 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1166 (ediff-hide-face ediff-even-diff-face-B)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1167
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1168 (defface ediff-even-diff-C
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1169 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1170 `((((type pc))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1171 (:foreground "yellow3" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1172 (((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1173 (:foreground "Black" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1174 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1175 (:foreground "yellow3" :background "light grey"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1176 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1177 (t (:italic t :stipple ,stipple-pixmap)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1178 `((((type tty)) (:foreground "yellow3" :background "light grey"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1179 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1180 (((type pc)) (:foreground "yellow3" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1181 (((class color)) (:foreground "Black" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1182 (t (:italic t :stipple ,stipple-pixmap))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1183 "Face for highlighting even-numbered non-current differences in buffer C."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1184 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1185 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1186 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1187 (defvar ediff-even-diff-face-C 'ediff-even-diff-C
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1188 "Face for highlighting even-numbered non-current differences in buffer C.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1189 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1190 widget to customize the actual face object `ediff-even-diff-C'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1191 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1192 (ediff-hide-face ediff-even-diff-face-C)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1193
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1194 (defface ediff-even-diff-Ancestor
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1195 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1196 `((((type pc))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1197 (:foreground "cyan3" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1198 (((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1199 (:foreground "White" :background "Grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1200 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1201 (:foreground "cyan3" :background "light grey"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1202 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1203 (t (:italic t :stipple ,stipple-pixmap)))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1204 `((((type tty)) (:foreground "cyan3" :background "light grey"
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1205 :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1206 (((type pc)) (:foreground "cyan3" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1207 (((class color)) (:foreground "White" :background "Grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1208 (t (:italic t :stipple ,stipple-pixmap))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1209 "Face for highlighting even-numbered non-current differences in the ancestor buffer."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1210 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1211 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1212 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1213 (defvar ediff-even-diff-face-Ancestor 'ediff-even-diff-Ancestor
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1214 "Face for highlighting even-numbered non-current differences in buffer Ancestor.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1215 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1216 widget to customize the actual face object `ediff-even-diff-Ancestor'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1217 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1218 (ediff-hide-face ediff-even-diff-face-Ancestor)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1219
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1220 ;; Association between buffer types and even-diff-face symbols
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1221 (defconst ediff-even-diff-face-alist
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1222 '((A . ediff-even-diff-A)
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1223 (B . ediff-even-diff-B)
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1224 (C . ediff-even-diff-C)
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1225 (Ancestor . ediff-even-diff-Ancestor)))
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1226
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1227 (defface ediff-odd-diff-A
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1228 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1229 '((((type pc))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1230 (:foreground "green3" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1231 (((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1232 (:foreground "White" :background "Grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1233 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1234 (:foreground "red3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1235 (t (:italic t :stipple "gray1")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1236 '((((type tty)) (:foreground "red3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1237 (((type pc)) (:foreground "green3" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1238 (((class color)) (:foreground "White" :background "Grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1239 (t (:italic t :stipple "gray1"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1240 "Face for highlighting odd-numbered non-current differences in buffer A."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1241 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1242 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1243 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1244 (defvar ediff-odd-diff-face-A 'ediff-odd-diff-A
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1245 "Face for highlighting odd-numbered non-current differences in buffer A.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1246 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1247 widget to customize the actual face object `ediff-odd-diff-A'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1248 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1249 (ediff-hide-face ediff-odd-diff-face-A)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1250
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1251
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1252 (defface ediff-odd-diff-B
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1253 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1254 '((((type pc))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1255 (:foreground "White" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1256 (((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1257 (:foreground "Black" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1258 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1259 (:foreground "cyan3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1260 (t (:italic t :stipple "gray1")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1261 '((((type tty)) (:foreground "cyan3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1262 (((type pc)) (:foreground "White" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1263 (((class color)) (:foreground "Black" :background "light grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1264 (t (:italic t :stipple "gray1"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1265 "Face for highlighting odd-numbered non-current differences in buffer B."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1266 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1267 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1268 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1269 (defvar ediff-odd-diff-face-B 'ediff-odd-diff-B
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1270 "Face for highlighting odd-numbered non-current differences in buffer B.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1271 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1272 widget to customize the actual face object `ediff-odd-diff-B'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1273 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1274 (ediff-hide-face ediff-odd-diff-face-B)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1275
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1276 (defface ediff-odd-diff-C
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1277 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1278 '((((type pc))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1279 (:foreground "yellow3" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1280 (((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1281 (:foreground "White" :background "Grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1282 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1283 (:foreground "yellow3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1284 (t (:italic t :stipple "gray1")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1285 '((((type tty)) (:foreground "yellow3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1286 (((type pc)) (:foreground "yellow3" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1287 (((class color)) (:foreground "White" :background "Grey"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1288 (t (:italic t :stipple "gray1"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1289 "Face for highlighting odd-numbered non-current differences in buffer C."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1290 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1291 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1292 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1293 (defvar ediff-odd-diff-face-C 'ediff-odd-diff-C
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1294 "Face for highlighting odd-numbered non-current differences in buffer C.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1295 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1296 widget to customize the actual face object `ediff-odd-diff-C'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1297 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1298 (ediff-hide-face ediff-odd-diff-face-C)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1299
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1300 (defface ediff-odd-diff-Ancestor
57127
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1301 (if ediff-emacs-p
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1302 '((((class color) (min-colors 16))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1303 (:foreground "cyan3" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1304 (((class color))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1305 (:foreground "green3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1306 (t (:italic t :stipple "gray1")))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1307 '((((type tty)) (:foreground "green3" :background "black" :weight bold))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1308 (((class color)) (:foreground "cyan3" :background "gray40"))
a4b2ce7d4d07 From Dan Nicolaescu <dann@ics.uci.edu>
Kim F. Storm <storm@cua.dk>
parents: 54576
diff changeset
1309 (t (:italic t :stipple "gray1"))))
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1310 "Face for highlighting odd-numbered non-current differences in the ancestor buffer."
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1311 :group 'ediff-highlighting)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1312 ;; An internal variable. Ediff takes the face from here. When unhighlighting,
19241
eb1cef5fa337 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19047
diff changeset
1313 ;; this variable is set to nil, then again to the appropriate face.
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1314 (defvar ediff-odd-diff-face-Ancestor 'ediff-odd-diff-Ancestor
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1315 "Face for highlighting odd-numbered non-current differences in buffer Ancestor.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1316 DO NOT CHANGE this variable. Instead, use the customization
63534
02c83ab8178d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-432
Miles Bader <miles@gnu.org>
parents: 61310
diff changeset
1317 widget to customize the actual face object `ediff-odd-diff-Ancestor'
20003
9bc6a4017c8c new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 19241
diff changeset
1318 this variable represents.")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1319 (ediff-hide-face ediff-odd-diff-face-Ancestor)
20343
4327dd36b71b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20206
diff changeset
1320
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1321 ;; Association between buffer types and odd-diff-face symbols
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1322 (defconst ediff-odd-diff-face-alist
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1323 '((A . ediff-odd-diff-A)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1324 (B . ediff-odd-diff-B)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1325 (C . ediff-odd-diff-C)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1326 (Ancestor . ediff-odd-diff-Ancestor)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1327
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1328 ;; A-list of fine-diff face symbols associated with buffer types
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1329 (defconst ediff-fine-diff-face-alist
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1330 '((A . ediff-fine-diff-A)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1331 (B . ediff-fine-diff-B)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1332 (C . ediff-fine-diff-C)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1333 (Ancestor . ediff-fine-diff-Ancestor)))
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1334
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1335 ;; Help echo
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1336 (put ediff-fine-diff-face-A 'ediff-help-echo
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1337 "A `refinement' of the current difference region")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1338 (put ediff-fine-diff-face-B 'ediff-help-echo
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1339 "A `refinement' of the current difference region")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1340 (put ediff-fine-diff-face-C 'ediff-help-echo
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1341 "A `refinement' of the current difference region")
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1342 (put ediff-fine-diff-face-Ancestor 'ediff-help-echo
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1343 "A `refinement' of the current difference region")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1344
34860
fdb5d08ced13 2000-12-25 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 33842
diff changeset
1345 (add-hook 'ediff-quit-hook 'ediff-cleanup-mess)
fdb5d08ced13 2000-12-25 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 33842
diff changeset
1346 (add-hook 'ediff-suspend-hook 'ediff-default-suspend-function)
fdb5d08ced13 2000-12-25 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 33842
diff changeset
1347
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1348
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1349 ;;; Overlays
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1350
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1351 (ediff-defvar-local ediff-current-diff-overlay-A nil
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1352 "Overlay for the current difference region in buffer A.")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1353 (ediff-defvar-local ediff-current-diff-overlay-B nil
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1354 "Overlay for the current difference region in buffer B.")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1355 (ediff-defvar-local ediff-current-diff-overlay-C nil
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1356 "Overlay for the current difference region in buffer C.")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1357 (ediff-defvar-local ediff-current-diff-overlay-Ancestor nil
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1358 "Overlay for the current difference region in the ancestor buffer.")
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1359
38514
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1360 ;; Compute priority of a current ediff overlay.
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1361 (defun ediff-highest-priority (start end buffer)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1362 (let ((pos (max 1 (1- start)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1363 ovr-list)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1364 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1365 (1+ ediff-shadow-overlay-priority) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1366 ;; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1367 (ediff-with-current-buffer buffer
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1368 (while (< pos (min (point-max) (1+ end)))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1369 (setq ovr-list (append (overlays-at pos) ovr-list))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1370 (setq pos (next-overlay-change pos)))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1371 (+ 1 ediff-shadow-overlay-priority
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1372 (apply 'max
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1373 (cons
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1374 1
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1375 (mapcar
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1376 (lambda (ovr)
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1377 (if (and ovr
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1378 ;; exclude ediff overlays from priority
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1379 ;; calculation, or else priority will keep
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1380 ;; increasing
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1381 (null (ediff-overlay-get ovr 'ediff))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1382 (null (ediff-overlay-get ovr 'ediff-diff-num)))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1383 ;; use the overlay priority or 0
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1384 (or (ediff-overlay-get ovr 'priority) 0)
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1385 0))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1386 ovr-list)
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1387 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1388 )))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1389 ) ; ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1390 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1391
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1392
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1393 (defvar ediff-toggle-read-only-function nil
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1394 "*Specifies the function to be used to toggle read-only.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1395 If nil, Ediff tries to deduce the function from the binding of C-x C-q.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1396 Normally, this is the `toggle-read-only' function, but, if version
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1397 control is used, it could be `vc-toggle-read-only' or `rcs-toggle-read-only'.")
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1398
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1399 (defcustom ediff-make-buffers-readonly-at-startup nil
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1400 "*Make all variant buffers read-only when Ediff starts up.
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1401 This property can be toggled interactively."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1402 :type 'boolean
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1403 :group 'ediff)
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1404
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1405
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1406 ;;; Misc
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1407
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1408 ;; if nil, this silences some messages
60151
905bf9de87af * ediff.el (ediff-set-diff-overlays-in-one-buffer,
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 57127
diff changeset
1409 (defconst ediff-verbose-p t)
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1410
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1411 (defcustom ediff-autostore-merges 'group-jobs-only
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1412 "*Save the results of merge jobs automatically.
42288
3ce98f3e0608 2001-12-24 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42205
diff changeset
1413 nil means don't save automatically. t means always save. Anything else
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1414 means save automatically only if the merge job is part of a group of jobs, such
21940
f7e788ea680b new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 21513
diff changeset
1415 as `ediff-merge-directory' or `ediff-merge-directory-revisions'."
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1416 :type '(choice (const nil) (const t) (const group-jobs-only))
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1417 :group 'ediff-merge)
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1418 (make-variable-buffer-local 'ediff-autostore-merges)
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1419
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1420 ;; file where the result of the merge is to be saved. used internally
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1421 (ediff-defvar-local ediff-merge-store-file nil "")
29165
641e43bad886 2000-05-24 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26585
diff changeset
1422
641e43bad886 2000-05-24 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26585
diff changeset
1423 (defcustom ediff-merge-filename-prefix "merge_"
641e43bad886 2000-05-24 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26585
diff changeset
1424 "*Prefix to be attached to saved merge buffers."
641e43bad886 2000-05-24 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26585
diff changeset
1425 :type 'string
641e43bad886 2000-05-24 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 26585
diff changeset
1426 :group 'ediff-merge)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1427
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1428 (defcustom ediff-no-emacs-help-in-control-buffer nil
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1429 "*Non-nil means C-h should not invoke Emacs help in control buffer.
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1430 Instead, C-h would jump to previous difference."
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1431 :type 'boolean
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1432 :group 'ediff)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1433
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1434 ;; This is the same as temporary-file-directory from Emacs 20.3.
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1435 ;; Copied over here because XEmacs doesn't have this variable.
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1436 (defcustom ediff-temp-file-prefix
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1437 (file-name-as-directory
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1438 (cond ((boundp 'temporary-file-directory) temporary-file-directory)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1439 ((fboundp 'temp-directory) (temp-directory))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1440 (t "/tmp/")))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1441 ;;; (file-name-as-directory
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1442 ;;; (cond ((memq system-type '(ms-dos windows-nt))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1443 ;;; (or (getenv "TEMP") (getenv "TMPDIR") (getenv "TMP") "c:/temp"))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1444 ;;; ((memq system-type '(vax-vms axp-vms))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1445 ;;; (or (getenv "TMPDIR") (getenv "TMP") (getenv "TEMP") "SYS$SCRATCH:"))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1446 ;;; (t
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1447 ;;; (or (getenv "TMPDIR") (getenv "TMP") (getenv "TEMP") "/tmp"))))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1448 "*Prefix to put on Ediff temporary file names.
22098
b2c1e573410e (ediff-temp-file-prefix): Use temporary-file-directory.
Richard M. Stallman <rms@gnu.org>
parents: 22088
diff changeset
1449 Do not start with `~/' or `~USERNAME/'."
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1450 :type 'string
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1451 :group 'ediff)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1452
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1453 (defcustom ediff-temp-file-mode 384 ; u=rw only
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1454 "*Mode for Ediff temporary files."
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1455 :type 'integer
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1456 :group 'ediff)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1457
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1458 ;; Metacharacters that have to be protected from the shell when executing
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1459 ;; a diff/diff3 command.
20206
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1460 (defcustom ediff-metachars "[ \t\n!\"#$&'()*;<=>?[\\^`{|~]"
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1461 "Regexp that matches characters that must be quoted with `\\' in shell command line.
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1462 This default should work without changes."
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1463 :type 'string
f44ff2c52fac new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 20003
diff changeset
1464 :group 'ediff)
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1465
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1466 ;; needed to simulate frame-char-width in XEmacs.
64820
3b8ee785ce35 Use (featurep 'xemacs).
Richard M. Stallman <rms@gnu.org>
parents: 64762
diff changeset
1467 (defvar ediff-H-glyph (if (featurep 'xemacs) (make-glyph "H")))
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1468
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1469
18839
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1470 ;; Temporary file used for refining difference regions in buffer A.
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1471 (ediff-defvar-local ediff-temp-file-A nil "")
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1472 ;; Temporary file used for refining difference regions in buffer B.
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1473 (ediff-defvar-local ediff-temp-file-B nil "")
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1474 ;; Temporary file used for refining difference regions in buffer C.
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1475 (ediff-defvar-local ediff-temp-file-C nil "")
1405083241e8 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18054
diff changeset
1476
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1477
38514
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1478 (defun ediff-file-remote-p (file-name)
60151
905bf9de87af * ediff.el (ediff-set-diff-overlays-in-one-buffer,
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 57127
diff changeset
1479 (file-remote-p file-name))
38514
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1480
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1481 ;; File for which we can get attributes, such as size or date
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1482 (defun ediff-listable-file (file-name)
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1483 (let ((handler (find-file-name-handler file-name 'file-local-copy)))
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1484 (or (null handler) (eq handler 'dired-handler-fn))))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1485
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1486
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1487 (defsubst ediff-frame-unsplittable-p (frame)
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
1488 (cdr (assq 'unsplittable (frame-parameters frame))))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1489
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1490 (defsubst ediff-get-next-window (wind prev-wind)
47583
332e69c0d7dc * ediff-init.el (ediff-get-next-window): bug fix.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 47520
diff changeset
1491 (cond ((window-live-p wind) wind)
332e69c0d7dc * ediff-init.el (ediff-get-next-window): bug fix.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 47520
diff changeset
1492 (prev-wind (next-window wind))
332e69c0d7dc * ediff-init.el (ediff-get-next-window): bug fix.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 47520
diff changeset
1493 (t (selected-window))
332e69c0d7dc * ediff-init.el (ediff-get-next-window): bug fix.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 47520
diff changeset
1494 ))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1495
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1496
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1497 (defsubst ediff-kill-buffer-carefully (buf)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1498 "Kill buffer BUF if it exists."
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1499 (if (ediff-buffer-live-p buf)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1500 (kill-buffer (get-buffer buf))))
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1501
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1502 (defsubst ediff-background-face (buf-type dif-num)
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1503 ;; The value of dif-num is always 1- the one that user sees.
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1504 ;; This is why even face is used when dif-num is odd.
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1505 (ediff-get-symbol-from-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1506 buf-type (if (ediff-odd-p dif-num)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1507 ediff-even-diff-face-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1508 ediff-odd-diff-face-alist)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1509 ))
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1510
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1511
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1512 ;; activate faces on diff regions in buffer
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1513 (defun ediff-paint-background-regions-in-one-buffer (buf-type unhighlight)
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1514 (let ((diff-vector
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1515 (eval (ediff-get-symbol-from-alist
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1516 buf-type ediff-difference-vector-alist)))
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1517 overl diff-num)
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1518 (mapcar (lambda (rec)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1519 (setq overl (ediff-get-diff-overlay-from-diff-record rec)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1520 diff-num (ediff-overlay-get overl 'ediff-diff-num))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1521 (if (ediff-overlay-buffer overl)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1522 ;; only if overlay is alive
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1523 (ediff-set-overlay-face
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1524 overl
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1525 (if (not unhighlight)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1526 (ediff-background-face buf-type diff-num))))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1527 )
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1528 diff-vector)))
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1529
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1530
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1531 ;; activate faces on diff regions in all buffers
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1532 (defun ediff-paint-background-regions (&optional unhighlight)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1533 (ediff-paint-background-regions-in-one-buffer
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1534 'A unhighlight)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1535 (ediff-paint-background-regions-in-one-buffer
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1536 'B unhighlight)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1537 (ediff-paint-background-regions-in-one-buffer
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1538 'C unhighlight)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1539 (ediff-paint-background-regions-in-one-buffer
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1540 'Ancestor unhighlight))
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1541
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1542
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1543 ;; arg is a record for a given diff in a difference vector
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1544 ;; this record is itself a vector
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1545 (defsubst ediff-clear-fine-diff-vector (diff-record)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1546 (if diff-record
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1547 (mapcar 'ediff-delete-overlay
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1548 (ediff-get-fine-diff-vector-from-diff-record diff-record))))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1549
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1550 (defsubst ediff-clear-fine-differences-in-one-buffer (n buf-type)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1551 (ediff-clear-fine-diff-vector (ediff-get-difference n buf-type))
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1552 (ediff-set-fine-diff-vector n buf-type nil))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1553
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1554 (defsubst ediff-clear-fine-differences (n)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1555 (ediff-clear-fine-differences-in-one-buffer n 'A)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1556 (ediff-clear-fine-differences-in-one-buffer n 'B)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1557 (if ediff-3way-job
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1558 (ediff-clear-fine-differences-in-one-buffer n 'C)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1559
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1560
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1561 (defsubst ediff-mouse-event-p (event)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1562 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1563 (button-event-p event) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1564 (string-match "mouse" (format "%S" (event-basic-type event))) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1565 ))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1566
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1567
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1568 (defsubst ediff-key-press-event-p (event)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1569 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1570 (key-press-event-p event) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1571 (or (char-or-string-p event) (symbolp event)) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1572 ))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1573
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1574 (defun ediff-event-point (event)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1575 (cond ((ediff-mouse-event-p event)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1576 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1577 (event-point event) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1578 (posn-point (event-start event)) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1579 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1580 )
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1581 ((ediff-key-press-event-p event)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1582 (point))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1583 (t (error nil))))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1584
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1585 (defun ediff-event-buffer (event)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1586 (cond ((ediff-mouse-event-p event)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1587 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1588 (event-buffer event) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1589 (window-buffer (posn-window (event-start event))) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1590 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1591 )
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1592 ((ediff-key-press-event-p event)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1593 (current-buffer))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1594 (t (error nil))))
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1595
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1596 (defun ediff-event-key (event-or-key)
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1597 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1598 (if (eventp event-or-key) (event-key event-or-key) event-or-key) ; xemacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1599 event-or-key ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1600 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1601
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1602
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1603 (defsubst ediff-frame-iconified-p (frame)
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
1604 (if (and (ediff-window-display-p) (frame-live-p frame))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1605 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1606 (frame-iconified-p frame) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1607 (eq (frame-visible-p frame) 'icon) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1608 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1609 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1610
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1611 (defsubst ediff-window-visible-p (wind)
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
1612 ;; under TTY, window-live-p also means window is visible
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1613 (and (window-live-p wind)
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
1614 (or (not (ediff-window-display-p))
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
1615 (frame-visible-p (window-frame wind)))))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1616
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1617
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1618 (defsubst ediff-frame-char-width (frame)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1619 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1620 (/ (frame-pixel-width frame) (frame-width frame)) ; xemacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1621 (frame-char-width frame) ; emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1622 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1623
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1624 (defun ediff-reset-mouse (&optional frame do-not-grab-mouse)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1625 (or frame (setq frame (selected-frame)))
12085
589a32fa67a9 Converted xemacs *screen* nomenclature to *frame*.
Karl Heuer <kwzh@gnu.org>
parents: 11234
diff changeset
1626 (if (ediff-window-display-p)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1627 (let ((frame-or-wind frame))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1628 (if ediff-xemacs-p
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1629 (setq frame-or-wind (frame-selected-window frame)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1630 (or do-not-grab-mouse
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1631 ;; don't set mouse if the user said to never do this
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1632 (not ediff-grab-mouse)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1633 ;; Don't grab on quit, if the user doesn't want to.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1634 ;; If ediff-grab-mouse = t, then mouse won't be grabbed for
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1635 ;; sessions that are not part of a group (this is done in
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1636 ;; ediff-recenter). The condition below affects only terminating
13977
11784c04028a (ediff-keep-variants): Doc fix.
Karl Heuer <kwzh@gnu.org>
parents: 13494
diff changeset
1637 ;; sessions in session groups (in which case mouse is warped into
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1638 ;; a meta buffer).
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1639 (and (eq ediff-grab-mouse 'maybe)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1640 (memq this-command '(ediff-quit ediff-update-diffs)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1641 (set-mouse-position frame-or-wind 1 0))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1642 )))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1643
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1644 (defsubst ediff-spy-after-mouse ()
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1645 (setq ediff-mouse-pixel-position (mouse-pixel-position)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1646
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1647 ;; It is not easy to find out when the user grabs the mouse, since emacs and
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1648 ;; xemacs behave differently when mouse is not in any frame. Also, this is
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1649 ;; sensitive to when the user grabbed mouse. Not used for now.
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1650 (defun ediff-user-grabbed-mouse ()
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1651 (if ediff-mouse-pixel-position
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1652 (cond ((not (eq (car ediff-mouse-pixel-position)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1653 (car (mouse-pixel-position)))))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1654 ((and (car (cdr ediff-mouse-pixel-position))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1655 (car (cdr (mouse-pixel-position)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1656 (cdr (cdr ediff-mouse-pixel-position))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1657 (cdr (cdr (mouse-pixel-position))))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1658 (not (and (< (abs (- (car (cdr ediff-mouse-pixel-position))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1659 (car (cdr (mouse-pixel-position)))))
13977
11784c04028a (ediff-keep-variants): Doc fix.
Karl Heuer <kwzh@gnu.org>
parents: 13494
diff changeset
1660 ediff-mouse-pixel-threshold)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1661 (< (abs (- (cdr (cdr ediff-mouse-pixel-position))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1662 (cdr (cdr (mouse-pixel-position)))))
13977
11784c04028a (ediff-keep-variants): Doc fix.
Karl Heuer <kwzh@gnu.org>
parents: 13494
diff changeset
1663 ediff-mouse-pixel-threshold))))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1664 (t nil))))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1665
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1666 (defsubst ediff-frame-char-height (frame)
49588
37645a051842 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 47846
diff changeset
1667 (ediff-cond-compile-for-xemacs-or-emacs
47846
8e6ed5c1f142 2002-10-12 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 47583
diff changeset
1668 (glyph-height ediff-H-glyph (frame-selected-window frame)) ; xemacs case
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1669 (frame-char-height frame) ; emacs case
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1670 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1671 )
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1672
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1673 ;; Some overlay functions
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1674
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1675 (defsubst ediff-overlay-start (overl)
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1676 (if (ediff-overlayp overl)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1677 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1678 (extent-start-position overl) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1679 (overlay-start overl) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1680 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1681 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1682
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1683 (defsubst ediff-overlay-end (overl)
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1684 (if (ediff-overlayp overl)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1685 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1686 (extent-end-position overl) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1687 (overlay-end overl) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1688 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1689 ))
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1690
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1691 (defsubst ediff-empty-overlay-p (overl)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1692 (= (ediff-overlay-start overl) (ediff-overlay-end overl)))
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1693
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1694 ;; like overlay-buffer in Emacs. In XEmacs, returns nil if the extent is
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1695 ;; dead. Otherwise, works like extent-buffer
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1696 (defun ediff-overlay-buffer (overl)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1697 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1698 (and (extent-live-p overl) (extent-object overl)) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1699 (overlay-buffer overl) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1700 ))
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1701
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1702 ;; like overlay-get in Emacs. In XEmacs, returns nil if the extent is
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1703 ;; dead. Otherwise, like extent-property
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1704 (defun ediff-overlay-get (overl property)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1705 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1706 (and (extent-live-p overl) (extent-property overl property)) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1707 (overlay-get overl property) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1708 ))
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1709
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1710
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1711 ;; These two functions are here because XEmacs refuses to
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1712 ;; handle overlays whose buffers were deleted.
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1713 (defun ediff-move-overlay (overlay beg end &optional buffer)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1714 "Calls `move-overlay' in Emacs and `set-extent-endpoints' in Lemacs.
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1715 Checks if overlay's buffer exists before actually doing the move."
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1716 (let ((buf (and overlay (ediff-overlay-buffer overlay))))
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1717 (if (ediff-buffer-live-p buf)
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1718 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1719 (set-extent-endpoints overlay beg end) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1720 (move-overlay overlay beg end buffer) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1721 )
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1722 ;; buffer's dead
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1723 (if overlay
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1724 (ediff-delete-overlay overlay)))))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1725
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1726 (defun ediff-overlay-put (overlay prop value)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1727 "Calls `overlay-put' or `set-extent-property' depending on Emacs version.
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1728 Checks if overlay's buffer exists."
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1729 (if (ediff-buffer-live-p (ediff-overlay-buffer overlay))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1730 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1731 (set-extent-property overlay prop value) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1732 (overlay-put overlay prop value) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1733 )
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1734 (ediff-delete-overlay overlay)))
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1735
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1736 ;; temporarily uses DIR to abbreviate file name
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1737 ;; if DIR is nil, use default-directory
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1738 (defun ediff-abbreviate-file-name (file &optional dir)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1739 (cond ((stringp dir)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1740 (let ((directory-abbrev-alist (list (cons dir ""))))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1741 (abbreviate-file-name file)))
42602
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1742 (t
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1743 (ediff-cond-compile-for-xemacs-or-emacs
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1744 ;; XEmacs requires addl argument
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1745 (abbreviate-file-name file t) ; xemacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1746 (abbreviate-file-name file)) ; emacs form
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1747 )
633233bf2bbf 2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 42288
diff changeset
1748 ))
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1749
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1750 ;; Takes a directory and returns the parent directory.
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1751 ;; does nothing to `/'. If the ARG is a regular file,
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1752 ;; strip the file AND the last dir.
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1753 (defun ediff-strip-last-dir (dir)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1754 (if (not (stringp dir)) (setq dir default-directory))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1755 (setq dir (expand-file-name dir))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1756 (or (file-directory-p dir) (setq dir (file-name-directory dir)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1757 (let* ((pos (1- (length dir)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1758 (last-char (aref dir pos)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1759 (if (and (> pos 0) (= last-char ?/))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1760 (setq dir (substring dir 0 pos)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1761 (ediff-abbreviate-file-name (file-name-directory dir))))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1762
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1763 (defun ediff-truncate-string-left (str newlen)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1764 ;; leave space for ... on the left
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1765 (let ((len (length str))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1766 substr)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1767 (if (<= len newlen)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1768 str
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1769 (setq newlen (max 0 (- newlen 3)))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1770 (setq substr (substring str (max 0 (- len 1 newlen))))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1771 (concat "..." substr))))
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1772
26263
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1773 (defsubst ediff-nonempty-string-p (string)
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1774 (and (stringp string) (not (string= string ""))))
4f315ca65976 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 25486
diff changeset
1775
35411
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1776 (unless (fboundp 'subst-char-in-string)
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1777 (defun subst-char-in-string (fromchar tochar string &optional inplace)
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1778 "Replace FROMCHAR with TOCHAR in STRING each time it occurs.
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1779 Unless optional argument INPLACE is non-nil, return a new string."
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1780 (let ((i (length string))
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1781 (newstr (if inplace string (copy-sequence string))))
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1782 (while (> i 0)
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1783 (setq i (1- i))
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1784 (if (eq (aref newstr i) fromchar)
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1785 (aset newstr i tochar)))
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1786 newstr)))
be20c22dc16d 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 35377
diff changeset
1787
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1788 (defun ediff-abbrev-jobname (jobname)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1789 (cond ((eq jobname 'ediff-directories)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1790 "Compare two directories")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1791 ((eq jobname 'ediff-files)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1792 "Compare two files")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1793 ((eq jobname 'ediff-buffers)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1794 "Compare two buffers")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1795 ((eq jobname 'ediff-directories3)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1796 "Compare three directories")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1797 ((eq jobname 'ediff-files3)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1798 "Compare three files")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1799 ((eq jobname 'ediff-buffers3)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1800 "Compare three buffers")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1801 ((eq jobname 'ediff-revision)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1802 "Compare file with a version")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1803 ((eq jobname 'ediff-directory-revisions)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1804 "Compare dir files with versions")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1805 ((eq jobname 'ediff-merge-directory-revisions)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1806 "Merge dir files with versions")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1807 ((eq jobname 'ediff-merge-directory-revisions-with-ancestor)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1808 "Merge dir versions via ancestors")
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1809 (t
33842
f6a67d77484a * ediff-diff.el: Moved variables around to have it compile under NT.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 33107
diff changeset
1810 (capitalize
64007
35df749b5a09 (ediff-highlighting, ediff-merge, ediff-hook): Finish `defgroup' description
Juanma Barranquero <lekktu@gmail.com>
parents: 63534
diff changeset
1811 (subst-char-in-string ?- ?\s (substring (symbol-name jobname) 6))))
33842
f6a67d77484a * ediff-diff.el: Moved variables around to have it compile under NT.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 33107
diff changeset
1812 ))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1813
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1814
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1815 ;; If ediff modified mode line, strip the modification
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1816 (defsubst ediff-strip-mode-line-format ()
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1817 (if (member (car mode-line-format) '(" A: " " B: " " C: " " Ancestor: "))
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1818 (setq mode-line-format (nth 2 mode-line-format))))
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1819
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1820 ;; Verify that we have a difference selected.
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1821 (defsubst ediff-valid-difference-p (&optional n)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1822 (or n (setq n ediff-current-difference))
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1823 (and (>= n 0) (< n ediff-number-of-differences)))
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1824
11042
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1825 (defsubst ediff-show-all-diffs (n)
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1826 "Don't skip difference regions."
57316020d271 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1827 nil)
13128
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1828
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1829 (defsubst Xor (a b)
b0ec8d932b35 (ediff-abbreviate-file-name): function modified.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 12212
diff changeset
1830 (or (and a (not b)) (and (not a) b)))
13216
b9dc8cc658d5 Moved defsubsts up.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 13128
diff changeset
1831
b9dc8cc658d5 Moved defsubsts up.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 13128
diff changeset
1832 (defsubst ediff-message-if-verbose (string &rest args)
b9dc8cc658d5 Moved defsubsts up.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 13128
diff changeset
1833 (if ediff-verbose-p
b9dc8cc658d5 Moved defsubsts up.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 13128
diff changeset
1834 (apply 'message string args)))
14582
c768f6d7daaa *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14534
diff changeset
1835
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1836 (defun ediff-file-attributes (filename attr-number)
38514
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1837 (if (ediff-listable-file filename)
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1838 (nth attr-number (file-attributes filename))
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1839 -1)
10482dd382e7 * viper-ex.el (ex-token-list,ex-cmd-execute): Revamped, courtesy
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 38422
diff changeset
1840 )
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1841
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1842 (defsubst ediff-file-size (filename)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1843 (ediff-file-attributes filename 7))
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1844 (defsubst ediff-file-modtime (filename)
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1845 (ediff-file-attributes filename 5))
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1846
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1847
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1848 (defun ediff-convert-standard-filename (fname)
18054
0b9d9cbf3cd4 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16766
diff changeset
1849 (if (fboundp 'convert-standard-filename)
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1850 (convert-standard-filename fname)
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1851 fname))
15480
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1852
43a3308fcf61 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 14582
diff changeset
1853
36857
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1854 (if (fboundp 'with-syntax-table)
47520
a37b476e1aec 2002-09-18 Michael Kifer <kifer@cs.stonybrook.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 44608
diff changeset
1855 (defalias 'ediff-with-syntax-table 'with-syntax-table)
36857
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1856 ;; stolen from subr.el in emacs 21
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1857 (defmacro ediff-with-syntax-table (table &rest body)
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1858 (let ((old-table (make-symbol "table"))
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1859 (old-buffer (make-symbol "buffer")))
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1860 `(let ((,old-table (syntax-table))
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1861 (,old-buffer (current-buffer)))
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1862 (unwind-protect
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1863 (progn
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1864 (set-syntax-table (copy-syntax-table ,table))
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1865 ,@body)
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1866 (save-current-buffer
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1867 (set-buffer ,old-buffer)
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1868 (set-syntax-table ,old-table)))))))
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1869
64215
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1870 (provide 'ediff-init)
a4c59075cac8 * viper-cmd.el (viper--key-maps): new variable.
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 64091
diff changeset
1871
36857
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1872
f6386773ce30 2001-03-17 Michael Kifer <kifer@cs.sunysb.edu>
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 36043
diff changeset
1873
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1874 ;;; Local Variables:
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1875 ;;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun)
19047
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1876 ;;; eval: (put 'ediff-with-current-buffer 'lisp-indent-hook 1)
f90d40b0bff5 new version
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 18839
diff changeset
1877 ;;; eval: (put 'ediff-with-current-buffer 'edebug-form-spec '(form body))
16248
b2fae8abc5b0 *** empty log message ***
Michael Kifer <kifer@cs.stonybrook.edu>
parents: 16169
diff changeset
1878 ;;; End:
33107
5049026c97b1 (ediff-prepare-buffer-hook): Expand docstring, no functional change.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents: 33019
diff changeset
1879
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49588
diff changeset
1880 ;;; arch-tag: fa31d384-1e70-4d4b-82a7-3e96307c46f5
38422
7a94f1c588c4 Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 36857
diff changeset
1881 ;;; ediff-init.el ends here