Function: ediff-buffers3

ediff-buffers3 is an autoloaded, interactive and byte-compiled function defined in ediff.el.gz.

Signature

(ediff-buffers3 BUFFER-A BUFFER-B BUFFER-C &optional STARTUP-HOOKS JOB-NAME)

Documentation

Run Ediff on three buffers, BUFFER-A, BUFFER-B, and BUFFER-C.

STARTUP-HOOKS is a list of functions that Emacs calls without arguments after setting up the Ediff buffers. JOB-NAME is a symbol describing the Ediff job type; it defaults to ediff-buffers3, but can also be one of ediff-merge-files-with-ancestor, ediff-last-dir-ancestor, ediff-last-dir-C, ediff-buffers, ediff-merge-buffers, or ediff-merge-buffers-with-ancestor.

Key Bindings

Aliases

ebuffers3

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff.el.gz
;;;###autoload
(defun ediff-buffers3 (buffer-A buffer-B buffer-C
				 &optional startup-hooks job-name)
  "Run Ediff on three buffers, BUFFER-A, BUFFER-B, and BUFFER-C.
STARTUP-HOOKS is a list of functions that Emacs calls without
arguments after setting up the Ediff buffers.  JOB-NAME is a
symbol describing the Ediff job type; it defaults to
`ediff-buffers3', but can also be one of
`ediff-merge-files-with-ancestor', `ediff-last-dir-ancestor',
`ediff-last-dir-C', `ediff-buffers', `ediff-merge-buffers', or
`ediff-merge-buffers-with-ancestor'."
  (interactive
   (let (bf bff)
     (list (setq bf (read-buffer "Buffer A to compare: "
				 (ediff-other-buffer "") t))
	   (setq bff (read-buffer "Buffer B to compare: "
				  (progn
				    ;; realign buffers so that two visible
				    ;; bufs will be at the top
				    (save-window-excursion (other-window 1))
				    (ediff-other-buffer bf))
				  t))
	   (read-buffer "Buffer C to compare: "
				  (progn
				    ;; realign buffers so that three visible
				    ;; bufs will be at the top
				    (save-window-excursion (other-window 1))
				    (ediff-other-buffer (list bf bff)))
				  t)
	   )))
  (or job-name (setq job-name 'ediff-buffers3))
  (ediff-buffers-internal buffer-A buffer-B buffer-C startup-hooks job-name))