Variable: ediff-window-setup-function

ediff-window-setup-function is a customizable variable defined in ediff-wind.el.gz.

Value

ediff-setup-windows-default

Documentation

Function called to set up windows.

Ediff provides a choice of three functions:
 (1) ediff-setup-windows-multiframe, which sets the control panel
     in a separate frame.
 (2) ediff-setup-windows-plain, which does everything in one frame
 (3) ediff-setup-windows-default (the default), which does (1)
     on a graphical display and (2) on a text terminal.

The command M-x ediff-toggle-multiframe (ediff-toggle-multiframe) can be used to toggle between the multiframe display and the single frame display. If the multiframe 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 any of the two provided functions, 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.

This variable was added, or its default value changed, in Emacs 24.3.

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff-wind.el.gz
(defcustom ediff-window-setup-function #'ediff-setup-windows-default
  "Function called to set up windows.
Ediff provides a choice of three functions:
 (1) `ediff-setup-windows-multiframe', which sets the control panel
     in a separate frame.
 (2) `ediff-setup-windows-plain', which does everything in one frame
 (3) `ediff-setup-windows-default' (the default), which does (1)
     on a graphical display and (2) on a text terminal.

The command \\[ediff-toggle-multiframe] can be used to toggle
between the multiframe display and the single frame display.  If
the multiframe 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 any of the two provided functions, 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."
  :type '(choice (const :tag "Choose Automatically" ediff-setup-windows-default)
		 (const :tag "Multi Frame" ediff-setup-windows-multiframe)
		 (const :tag "Single Frame" ediff-setup-windows-plain)
		 (function :tag "Other function"))
  :version "24.3")