;ELC   
;;; compiled by kwzh@nutrimat.gnu.ai.mit.edu on Wed Jul 17 15:41:45 1996
;;; from file /gd/gnu/emacs/19.0/lisp/ediff-wind.el
;;; emacs version 19.31.94.1.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`ediff-wind.el' was compiled for Emacs 19.29 or later"))


(byte-code "!BBBBBBBBB" [require ediff-init icon-title-format current-load-list top-toolbar-height bottom-toolbar-height left-toolbar-height right-toolbar-height left-toolbar-width right-toolbar-width default-menubar frame-icon-title-format] 2)
#@995 *Function called to set up windows.
Ediff provides a choice of two functions: ediff-setup-windows-plain, for
doing everything in one frame, and ediff-setup-windows-multiframe,
which sets the control panel in a separate frame. Also, if the latter
function detects that one of the buffers A/B is seen in some other frame,
it will try to keep that buffer in that frame.

If you don't like the two functions provided---write your own one.
The basic guidelines:
    1. It should leave the control buffer current and the control window
       selected. 
    2. It should set ediff-window-A, ediff-window-B, ediff-window-C,
       and ediff-control-window to contain window objects that display
       the corresponding buffers.
    3. It should accept the following arguments:
       buffer-A, buffer-B, buffer-C, control-buffer
       Buffer C may not be used in jobs that compare only two buffers.
If you plan to do something fancy, take a close look at how the two
provided functions are written.
(defvar ediff-window-setup-function (byte-code "  " [ediff-window-display-p ediff-setup-windows-multiframe ediff-setup-windows-plain] 1) (#$ . -762))
#@2 
(defvar ediff-multiframe nil (#$ . 1918))
(byte-code "!#" [make-variable-buffer-local ediff-multiframe put permanent-local t] 4)
#@2 
(defvar ediff-merge-window-share 0.45000000000000001 (#$ . 2061))
(byte-code "!#" [make-variable-buffer-local ediff-merge-window-share put permanent-local t] 4)
#@2 
(defvar ediff-control-window nil (#$ . 2236))
(byte-code "!#" [make-variable-buffer-local ediff-control-window put permanent-local t] 4)
#@2 
(defvar ediff-window-A nil (#$ . 2387))
(byte-code "!#" [make-variable-buffer-local ediff-window-A put permanent-local t] 4)
#@2 
(defvar ediff-window-B nil (#$ . 2526))
(byte-code "!#" [make-variable-buffer-local ediff-window-B put permanent-local t] 4)
#@2 
(defvar ediff-window-C nil (#$ . 2665))
(byte-code "!#" [make-variable-buffer-local ediff-window-C put permanent-local t] 4)
#@2 
(defvar ediff-window-config-saved "" (#$ . 2804))
(byte-code "!#" [make-variable-buffer-local ediff-window-config-saved put permanent-local t] 4)
#@407 *The function used to split the main window between buffer-A and buffer-B.
You can set it to a horizontal split instead of the default vertical split
by setting this variable to `split-window-horizontally'.
You can also have your own function to do fancy splits.
This variable has no effect when buffer-A/B are shown in different frames.
In this case, Ediff will use those frames to display these buffers.
(defvar ediff-split-window-function (quote split-window-vertically) (#$ . -2966))
#@407 *The function used to split the main window between buffer-A and buffer-B.
You can set it to a vertical split instead of the default horizontal split
by setting this variable to `split-window-vertically'.
You can also have your own function to do fancy splits.
This variable has no effect when buffer-A/B/C are shown in different frames.
In this case, Ediff will use those frames to display these buffers.
(defvar ediff-merge-split-window-function (quote split-window-horizontally) (#$ . -3461))
#@126 Frame parameters for displaying Ediff Control Panel.
Do not specify width and height here. These are computed automatically.
(defconst ediff-control-frame-parameters (byte-code "!  T B!$  T% B\n" [(name . "Ediff") (minibuffer) (user-position . t) (vertical-scroll-bars) (scrollbar-width . 0) (menu-bar-lines . 0) (auto-lower) (auto-raise . t) top fboundp ediff-display-pixel-height 3000 left ediff-display-pixel-width] 12) (#$ . 3964))
#@2 
(defvar ediff-mouse-pixel-position nil (#$ . 4431))
(byte-code "!#" [make-variable-buffer-local ediff-mouse-pixel-position put permanent-local t] 4)
#@97 If the user moves mouse more than this many pixels, Ediff won't warp mouse into control window.
(defvar ediff-mouse-pixel-threshold 30 (#$ . 4595))
#@231 *If t, Ediff will always grab the mouse and put it in the control frame.
If 'maybe, Ediff will do it sometimes, but not after operations that require
relatively long time. If nil, the mouse will be entirely user's
responsibility.
(defvar ediff-grab-mouse t (#$ . -4750))
#@256 Function to call to determine the desired location for the control panel.
Expects three parameters: the control buffer, the desired width and height
of the control frame. It returns an association list
of the form ((top . <position>) (left . <position>))
(defvar ediff-control-frame-position-function (quote ediff-make-frame-position) (#$ . 5028))
#@248 *The upward shift of control frame from the top of buffer A's frame.
Measured in pixels.
This is used by the default control frame positioning function,
`ediff-make-frame-position'. This variable is provided for easy
customization of the default.
(defvar ediff-control-frame-upward-shift (byte-code " " [ediff-xemacs-p 42 14] 1) (#$ . -5383))
#@331 *The leftward shift of control frame from the right edge of buf A's frame.
Measured in characters.
This is used by the default control frame positioning function,
`ediff-make-frame-position' to adjust the position of the control frame
when it shows the short menu. This variable is provided for easy
customization of the default.
(defvar ediff-narrow-control-frame-leftward-shift (byte-code " " [ediff-xemacs-p 7 3] 1) (#$ . -5740))
#@330 *The rightward shift of control frame from the left edge of buf A's frame.
Measured in characters.
This is used by the default control frame positioning function,
`ediff-make-frame-position' to adjust the position of the control frame
when it shows the full menu. This variable is provided for easy
customization of the default.
(defvar ediff-wide-control-frame-rightward-shift 7 (#$ . -6187))
#@2 
(defvar ediff-wide-display-p nil (#$ . 6586))
(byte-code "!#" [make-variable-buffer-local ediff-wide-display-p put permanent-local t] 4)
#@85 Frame parameters to be restored when the user wants to toggle the wide
display off.
(defvar ediff-wide-display-orig-parameters nil (#$ . 6738))
(byte-code "!#" [make-variable-buffer-local ediff-wide-display-orig-parameters put permanent-local t] 4)
#@36 Frame to be used for wide display.
(defvar ediff-wide-display-frame nil (#$ . 7001))
(byte-code "!#" [make-variable-buffer-local ediff-wide-display-frame put permanent-local t] 4)
#@372 The value is a function that is called to create a wide display.
The function is called without arguments. It should resize the frame in
which buffers A, B, and C are to be displayed, and it should save the old
frame parameters in `ediff-wide-display-orig-parameters'.
The variable `ediff-wide-display-frame' should be set to contain
the frame used for the wide display.
(defvar ediff-make-wide-display-function (quote ediff-make-wide-display) (#$ . 7196))
(byte-code "!#" [make-variable-buffer-local ediff-make-wide-display-function put permanent-local t] 4)
#@2 
(defvar ediff-control-frame nil (#$ . 7769))
(byte-code "!#" [make-variable-buffer-local ediff-control-frame put permanent-local t] 4)
#@434 *If t, keep control panel iconified when help message is off.
This has effect only on a windowing system.
If t, hitting `?' to toggle control panel off iconifies it.

This is only useful in Emacs and only for certain kinds of window managers,
such as TWM and its derivatives, since the window manager must permit
keyboard input to go into icons. XEmacs completely ignores keyboard input
into icons, regardless of the window manager.
(defvar ediff-prefer-iconified-control-frame nil (#$ . -7920))
(defalias 'ediff-get-window-by-clicking #[(wind prev-wind wind-number) "\f\"  	!  	!\"\")6 !. !\f\"  D 	!O 	A@)@))" [nil event message "Select windows by clicking. Please click on Window %d " wind-number ediff-read-event ediff-xemacs-p button-event-p string-match "mouse" format "%S" event-basic-type sit-for 1 beep "Please click on Window %d " event-window position wind] 7])
(defalias 'ediff-select-lowest-window #[nil "	  !  AAA@! )	[  !AAA@WC !	=W \f!*! ," [ediff-xemacs-p select-window frame-lowest-window selected-window lowest-window window-edges bottom-edge other-window -1 last-window t window-search next-window this-window next-bottom-edge nil] 2])
(defalias 'ediff-setup-windows #[(buffer-A buffer-B buffer-C control-buffer) "!  = !  \n!Y p\nC \n!C \n!!C Ύ\nq)N =N !)\n$!" [run-hooks ediff-before-setup-windows-hook selected-window minibuffer-window other-window 1 ediff-window-display-p ediff-setup-windows-plain ediff-window-setup-function ediff-keep-window-config control-buffer StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) this-command ediff-quit error ediff-KILLED-VITAL-BUFFER buffer-A buffer-B buffer-C ediff-after-setup-windows-hook] 5])
(defalias 'ediff-setup-windows-plain #[(buffer-A buffer-B buffer-C control-buffer) "p	  	!  	!!  Ď	q), =, \n!)< 	$	$" [StartBuffer control-buffer get-buffer buffer-name ((set-buffer StartBuffer)) nil ediff-multiframe this-command ediff-quit error ediff-KILLED-VITAL-BUFFER ediff-merge-job ediff-setup-windows-plain-merge buffer-A buffer-B buffer-C ediff-setup-windows-plain-compare] 5])
(defalias 'ediff-setup-windows-plain-merge #[(buf-A buf-B buf-C control-buffer) "	!É	\np	= 	!= 	!!= Ύ	q	)I =I !)   	!! _!]!  Z]! = !  !!	  = !\"! p	 	! 	!! 	q$%\f&) = !) 	!." [ediff-destroy-control-frame control-buffer 1 nil wind-C wind-B wind-A merge-window-lines merge-window-share split-window-function window-min-height StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-merge-window-share ediff-split-window-function this-command ediff-quit error ediff-KILLED-VITAL-BUFFER delete-other-windows split-window-vertically ediff-select-lowest-window ediff-setup-control-buffer other-window 2 round window-height switch-to-buffer buf-A selected-window buf-C select-window buf-B ((set-buffer StartBuffer)) ediff-window-A ediff-window-B ediff-window-C] 7])
(defalias 'ediff-setup-windows-plain-compare #[(buf-A buf-B buf-C control-buffer) "	!É	\n\fp	R 	!R 	!!R Ў	q@!A@!	)^ =^ !)   	!!! 	 = ! !\n\n! = !$! 	   = !%! p	 	! 	!! 	q'(\f)) = !)*\"\" 	!.	" [ediff-destroy-control-frame control-buffer 1 nil wind-C wind-B wind-A wind-B-start wind-A-start three-way-comparison wind-width-or-height split-window-function window-min-height StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-overlay-start ediff-narrow-bounds ediff-split-window-function ediff-3way-comparison-job this-command ediff-quit error ediff-KILLED-VITAL-BUFFER delete-other-windows split-window-vertically ediff-select-lowest-window ediff-setup-control-buffer other-window switch-to-buffer buf-A selected-window window-height window-width 3 buf-B buf-C ((set-buffer StartBuffer)) ediff-window-A ediff-window-B ediff-window-C ediff-windows-job set-window-start] 9])
(defalias 'ediff-setup-windows-multiframe #[(buf-A buf-B buf-C control-buf) "p	  	!  	!!  Ď	q), =, \n!)< 	$	$" [StartBuffer control-buf get-buffer buffer-name ((set-buffer StartBuffer)) t ediff-multiframe this-command ediff-quit error ediff-KILLED-VITAL-BUFFER ediff-merge-job ediff-setup-windows-multiframe-merge buf-A buf-B buf-C ediff-setup-windows-multiframe-compare] 5])
(defalias 'ediff-setup-windows-multiframe-merge #[(buf-A buf-B buf-C control-buf) "!!!	!\n  !\f+ !\n6 \n!p\\ !\\ !!\\ ӎq)g =g !)p ! !! ڎq) = !)    \f  =   = \f!? !? !? !? \f= !?#? \f=$p\"!\"!!\"q&)-=-!)')*+,-!_#_$_!  +!#$!  ,\n!\n!#\n!  \n-$!!    =!! +,#?   '_!])!  )Z]! =! \n	!!  =,!! +,-)+T! ! ,j! ! -! 	! \np!!!q9:\n;9!\f\f!!*)=!)*\"." [ediff-skip-unsuitable-frames ok-unsplittable 1 window-min-height ediff-get-visible-buffer-window buf-A wind-A buf-B wind-B buf-C wind-C window-frame frame-A frame-B frame-C StartBuffer control-buf get-buffer buffer-name ((set-buffer StartBuffer)) ediff-wide-display-p this-command ediff-quit error ediff-KILLED-VITAL-BUFFER force-one-frame ((set-buffer StartBuffer)) ediff-split-window-function split-window-function selected-window orig-wind selected-frame orig-frame frame-live-p ediff-window-ok-for-display use-same-frame use-same-frame-for-AB ((set-buffer StartBuffer)) ediff-merge-window-share merge-window-share nil merge-window-lines designated-minibuffer-frame done-A done-B done-C window-live-p select-window delete-other-windows t other-window switch-to-buffer 2 round window-height split-window-vertically ((set-buffer StartBuffer)) ediff-window-A ediff-window-B ediff-window-C minibuffer-window ediff-setup-control-frame] 5])
(defalias 'ediff-setup-windows-multiframe-compare #[(buf-A buf-B buf-C control-buf) "!!!	!\n  !\f+ !\n6 \n!p^ !^ !!^ ӎq!)i =i !)p ! !! ێq) = !)p ! !! ގq) = !) p ! !! q\") = !)# %~\f=~!?~!?~#X\f=~=~\n!?~\f!?~!?~!?~!l~\f =~\f!?~~ =(*+,-./p!!!q2@!*2A@!+)=!)!(!  -!(!  .\n!!(!\n!  \n/(7  ! #R =J!N!7 7! =d!! #   D>!	! \n-./)-%! ! .%! ! #/%! 	! \np!!!q?@\nA?!\fˁB \f!!,)(=(!)C@D *\"D +\"E ,\"." [ediff-skip-unsuitable-frames ok-unsplittable 1 window-min-height ediff-get-visible-buffer-window buf-A wind-A buf-B wind-B buf-C wind-C window-frame frame-A frame-B frame-C StartBuffer control-buf get-buffer buffer-name ((set-buffer StartBuffer)) frame-live-p ediff-control-frame this-command ediff-quit error ediff-KILLED-VITAL-BUFFER ctl-frame-exists-p ((set-buffer StartBuffer)) ediff-wide-display-p force-one-frame ((set-buffer StartBuffer)) ediff-split-window-function split-window-function ((set-buffer StartBuffer)) ediff-3way-comparison-job three-way-comparison selected-window orig-wind ediff-window-ok-for-display selected-frame use-same-frame nil wind-A-start wind-B-start designated-minibuffer-frame done-A done-B done-C ((set-buffer StartBuffer)) ediff-overlay-start ediff-narrow-bounds window-live-p select-window delete-other-windows t wind-width-or-height switch-to-buffer split-window-vertically window-height window-width 3 other-window ((set-buffer StartBuffer)) ediff-window-A ediff-window-B ediff-window-C minibuffer-window ediff-windows-job set-window-start ediff-setup-control-frame] 3])
(defalias 'ediff-skip-unsuitable-frames #[(&optional ok-unsplittable) " w  \n=j  ![   7 !7 1 !7 !=)[  !_W[ j  !A)j \nb  \"  \n=v !!)" [ediff-window-display-p nil last-window selected-window ediff-frame-has-dedicated-windows selected-frame frame frame-live-p ediff-xemacs-p frame-iconified-p frame-visible-p icon frame-height window-min-height 3 ok-unsplittable unsplittable frame-parameters other-window 1 t select-frame make-frame ((unsplittable))] 3])
(defalias 'ediff-frame-has-dedicated-windows #[(frame) " !#!\n*" [selected-frame nil ans cur-fr select-frame frame walk-windows #[(wind) "	!	 " [window-dedicated-p wind t ans] 2] ignore-minibuffer] 4])
(defalias 'ediff-window-ok-for-display #[(wind) "	! 			!#= 	!!?" [window-live-p wind next-window ignore-minibuffer window-frame ediff-frame-has-dedicated-windows] 6])
(defalias 'ediff-setup-control-frame #[(ctl-buffer designated-minibuffer-frame) "	\np\fI !I !!I ЎqA !!)U =U !)p\fz !z !!z َq) = !)p\f ! !! ێq!  !) = !)  !  ! !=)\n! ! !p\f3!3!!3q!!!)?=?!)!/0?	=V	ed\"T \\8!BB\fBE;\f#\"<\nB?@ D\"A@ D\"B@ D\"C@ D\"DE >F \n\"ebF \n\"G !!H  I\n	J !\nK !L  M \" JN OP Q !!IO@ VIOSOP R !))S !hT =fUM =?\"p\f!!!V qW X !Y X Z M $)=!)p\f!!![ qӁ\\ !)=!." [1 nil adjusted-parameters fwidth fheight lines old-ctl-frame ctl-frame deiconify-ctl-frame dont-iconify-ctl-frame ctl-frame-iconified-p window-min-height StartBuffer ctl-buffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-xemacs-p set-buffer-menubar run-hooks ediff-before-setup-control-frame-hook this-command ediff-quit error ediff-KILLED-VITAL-BUFFER ((set-buffer StartBuffer)) ediff-control-frame ((set-buffer StartBuffer)) frame-live-p make-frame ediff-control-frame-parameters frame ediff-window-display-p frame-iconified-p frame-visible-p icon select-frame window-dedicated-p selected-window delete-other-windows switch-to-buffer ((set-buffer StartBuffer)) make-local-variable frame-title-format frame-icon-title-format icon-title-format ediff-setup-control-buffer ediff-help-message ediff-brief-help-message ediff-toggle-help count-lines ediff-help-message-line-length 2 append minibuffer minibuffer-window designated-minibuffer-frame width height ediff-control-frame-position-function ediff-use-long-help-message (auto-raise) set-specifier top-toolbar-height 0 bottom-toolbar-height left-toolbar-width right-toolbar-width system-type (emx windows-nt windows-95) modify-frame-parameters make-frame-visible ediff-refresh-control-frame ediff-prefer-iconified-control-frame iconify-frame raise-frame set-window-dedicated-p t 7 count sit-for 0.10000000000000001 0.29999999999999999 ediff-frame-iconified-p ediff-reset-mouse ediff-grab-mouse ((set-buffer StartBuffer)) make-local-hook select-frame-hook add-hook ediff-xemacs-select-frame-hook ((set-buffer StartBuffer)) ediff-after-setup-control-frame-hook] 11])
(defalias 'ediff-destroy-control-frame #[(ctl-buffer) "p	@ 	!@ 	!!@ Ď	q < !< 	3 !!))L =L !) " [StartBuffer ctl-buffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-window-display-p frame-live-p ediff-control-frame ctl-frame ediff-xemacs-p set-buffer-menubar default-menubar nil delete-frame this-command ediff-quit error ediff-KILLED-VITAL-BUFFER ediff-skip-unsuitable-frames] 3])
(defalias 'ediff-make-frame-position #[(ctl-buffer ctl-frame-width ctl-frame-height) "p	8	!8	!!8Ď	q!!		\"A!	\"A!!\\_ZZ  !! !)!\\_  !! !)_ !! !)\"#\\\\_Z\\ %\\ '!\" !)_Z^ \"!!!)_Z^]]B.BDC,=C/!)" [StartBuffer ctl-buffer get-buffer buffer-name ((set-buffer StartBuffer)) window-frame ediff-window-A frame-A frame-parameters frame-A-parameters eval assoc top frame-A-top left frame-A-left frame-width frame-A-width ediff-control-frame ctl-frame nil horizontal-adjustment upward-adjustment ctl-frame-top ctl-frame-left ediff-control-buffer-number -14 ediff-control-frame-upward-shift ediff-use-long-help-message frame ediff-xemacs-p frame-pixel-width frame-char-width ediff-wide-control-frame-rightward-shift ctl-frame-width ediff-narrow-control-frame-leftward-shift ediff-display-pixel-height ctl-frame-height glyph-height ediff-H-glyph selected-window frame-char-height ediff-display-pixel-width 1 this-command ediff-quit error ediff-KILLED-VITAL-BUFFER] 7])
(defalias 'ediff-xemacs-select-frame-hook #[nil " 	 \n? 	!" [selected-frame ediff-control-frame ediff-use-long-help-message raise-frame] 2])
#@326 Construct an alist of parameters for the wide display.
Saves the old frame parameters in `ediff-wide-display-orig-parameters'.
The frame to be resized is kept in `ediff-wide-display-frame'.
This function modifies only the left margin and the width of the display.
It assumes that it is called from within the control buffer.
(defalias 'ediff-make-wide-display #[nil "!\n !!!	\n* 	!	!. 	!) Z\"A!]B\"ABDBBD\"," [fboundp ediff-display-pixel-width error "Can't determine display width." window-frame ediff-window-A frame-A frame-parameters frame-A-params frame ediff-xemacs-p frame-pixel-width frame-width frame-char-width cw 5 wd left 0 eval assoc width ediff-wide-display-orig-parameters ediff-wide-display-frame modify-frame-parameters] 6 (#$ . 21589)])
(defalias 'ediff-refresh-mode-lines #[nil "Y W) 	< 	!< 	!!< \"!JHHI HH	k 	!k 	!!k \"!JHH	 	! 	!! \"!JHH\f \f\"  \" 	 	! 	!! \n 	 \n 	 	P  HH ق $   ނ E\" ///!1    E(!E p*++!+!!+q\f-\"@t\"8\"\"E\" )1=4!)p*55!5!!5q-\"@\"8\"\"E\" )1=4!)8(p*		!	!!	q\n-\"@\"8\"\"E\" )'1='4!);;!;!!p*;;!;!!;q\"@i\"8\"	;sՂ	\"@ A 	\"B \"E\")1=4!)," [nil buf-C-state-merge buf-C-state-diff buf-B-state-diff buf-A-state-diff n ediff-current-difference 0 ediff-number-of-differences ediff-buffer-C get-buffer buffer-name intern format "ediff-difference-vector-%S" C 3 ediff-state-of-merge A B "[%s] " "" "[%s%s%s] " " " 1 " AncestorEmpty" ediff-window-display-p ediff-multiframe ediff-help-message ediff-brief-message-string "   " "-- " mode-line-buffer-identification "      Quick Help" mode-line-format ediff-make-narrow-control-buffer-id skip-name ediff-make-wide-control-buffer-id force-mode-line-update frame-live-p ediff-control-frame ediff-refresh-control-frame StartBuffer ediff-buffer-A ((set-buffer StartBuffer)) ediff-diff-status (" A: " " B: " " C: " " Ancestor: ") 2 " A: " this-command ediff-quit error ediff-KILLED-VITAL-BUFFER ediff-buffer-B ((set-buffer StartBuffer)) " B: " ediff-3way-job ((set-buffer StartBuffer)) " C: " ediff-ancestor-buffer ((set-buffer StartBuffer)) " Ancestor: " string-match "prefer-A" "[=diff(B)] " "prefer-B" "[=diff(A)] "] 7])
(defalias 'ediff-refresh-control-frame #[nil " \n B BD\"  \n\"" [ediff-emacs-p modify-frame-parameters ediff-control-frame title ediff-make-base-title icon-name ediff-make-narrow-control-buffer-id frame-title-format frame-icon-title-format (nil)] 5])
(defalias 'ediff-make-narrow-control-buffer-id #[(&optional skip-name) " \n  W \". Y' \". T#P" [skip-name " " ediff-make-base-title ediff-current-difference 0 format " _/%d" ediff-number-of-differences " $/%d" " %d/%d"] 5])
(defalias 'ediff-make-base-title #[nil "\n\"AP" [assoc name ediff-control-frame-parameters ediff-control-buffer-suffix] 3])
(defalias 'ediff-make-wide-control-buffer-id #[nil "W\f \f\"C\fY \f\"CT\f#C" [ediff-current-difference 0 format "%%b   At start of %d diffs" ediff-number-of-differences "%%b   At end of %d diffs" "%%b   diff %d of %d"] 4])
(defalias 'ediff-get-visible-buffer-window #[(buff) " ! !!  \"\"" [buff get-buffer buffer-name ediff-xemacs-p get-buffer-window t visible] 3])
(defalias 'ediff-keep-window-config #[(control-buf) "p=  U? p ! !! Ǝq	\n\f!N  ?N !!) \f!i  ?i !!)  !  ? !!) != \f!=  != \f  &- = \"!)" [control-buf buffer-size 0 StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-control-window ediff-window-A ediff-window-B ediff-window-C C-wind B-wind A-wind ctl-wind wind window-live-p ediff-window-display-p frame-visible-p window-frame ediff-3way-job window-buffer ediff-buffer-A ediff-buffer-B ediff-buffer-C ediff-window-config-saved format "%S%S%S%S%S%S%S" ediff-split-window-function ediff-multiframe ediff-wide-display-p this-command ediff-quit error ediff-KILLED-VITAL-BUFFER] 10])
(provide (quote ediff-wind))
