emacs/lisp/vc
Tino Calancha 0f3d1b7823 Show ancestor buffer in 3way merges
Add an option ediff-show-ancestor', to control if the ancestor buffer
must be shown in 3way merges (Bug#25493); set it non-nil by default.
Add a toggle to change this option interactively; the original
value of the option is restored on exit.

Update the window setup so that the ancestor buffer is
shown in 3way merges when ediff-show-ancestor is non-nil.

Any operation on ediff windows must take in account the
ancestor window as well, when this is shown.

* lisp/vc/ediff-init.el (ediff-show-ancestor): New option.
(ediff--show-ancestor-orig): New defvar.
* lisp/vc/ediff-wind.el (ediff-window-Ancestor): New defvar.
(ediff-setup-windows-plain-merge, ediff-setup-windows-multiframe-merge):
Display ancestor buffer if ediff-show-ancestor is non-nil.
(ediff-keep-window-config): Expect ancestor window in
ediff-window-config-saved.
(ediff-window-alist): Add entry for the ancestor window.
* lisp/vc/ediff-util.el (ediff-setup-control-buffer):
ediff-window-config-saved contains ancestor window.
(ediff-show-ancestor): Delete this command.
(ediff-setup-keymap): Bind ediff-toggle-show-ancestor to '/' for merge jobs.
(ediff-update-diffs): Compute new diffs using ancestor buffer in 3way merges;
don't cheat it to think that is performing a comparison, that trick is not
necessary anymore: simply call 'ediff-setup-diff-regions-function'
with file-A, file-B and the file ancestor.
(ediff-recenter): Update doc string.  Consider the ancestor buffer.
(ediff--check-ancestor-exists): New defun.
(ediff-toggle-show-ancestor): New command; toggle ediff-show-ancestor.
(ediff--restore-options-on-exit): Restore ediff-show-ancestor on exit.
(ediff-scroll-vertically, ediff-scroll-horizontally)
(ediff-operate-on-windows): Consider the ancestor as well.
* lisp/vc/ediff-help.el (ediff-long-help-message-merge):
List ediff-toggle-show-ancestor.
* doc/misc/ediff.texi (Introduction, Quick Help Commands): Update manual.
; * etc/NEWS: Announce these changes.
2017-03-14 16:12:29 +09:00
..
add-log.el Replace change-log-date-face -> change-log-date 2017-03-08 13:32:21 -05:00
compare-w.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cvs-status.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
diff-mode.el Check if there are hunks before kill or refine a hunk 2017-02-02 22:27:33 +09:00
diff.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ediff-diff.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
ediff-help.el Show ancestor buffer in 3way merges 2017-03-14 16:12:29 +09:00
ediff-hook.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ediff-init.el Show ancestor buffer in 3way merges 2017-03-14 16:12:29 +09:00
ediff-merg.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ediff-mult.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
ediff-ptch.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
ediff-util.el Show ancestor buffer in 3way merges 2017-03-14 16:12:29 +09:00
ediff-vers.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ediff-wind.el Show ancestor buffer in 3way merges 2017-03-14 16:12:29 +09:00
ediff.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
emerge.el ; Replace "25.2" with "26.1" where appropriate, which is almost everywhere 2016-11-17 22:50:40 -08:00
log-edit.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
log-view.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
pcvs-defs.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
pcvs-info.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
pcvs-parse.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
pcvs-util.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
pcvs.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
smerge-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
vc-annotate.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
vc-bzr.el Replace change-log-date-face -> change-log-date 2017-03-08 13:32:21 -05:00
vc-cvs.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
vc-dav.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
vc-dir.el Add more branch support to vc-dir 2017-02-25 10:46:13 -07:00
vc-dispatcher.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
vc-filewise.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
vc-git.el vc-log-outgoing fixes for git; add binding to vc-dir 2017-02-19 21:01:28 -07:00
vc-hg.el Remove stale comments from vc-git and vc-hg 2017-02-19 20:59:35 -07:00
vc-hooks.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
vc-mtn.el Replace change-log-date-face -> change-log-date 2017-03-08 13:32:21 -05:00
vc-rcs.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
vc-sccs.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
vc-src.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
vc-svn.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
vc.el Add more branch support to vc-dir 2017-02-25 10:46:13 -07:00