diff options
author | Tino Calancha <tino.calancha@gmail.com> | 2017-03-14 16:12:29 +0900 |
---|---|---|
committer | Tino Calancha <tino.calancha@gmail.com> | 2017-03-14 16:12:29 +0900 |
commit | 0f3d1b782353fd1fc0ab5f89d47d9e790f44e6b2 (patch) | |
tree | 0f9e4ae51b5bb2aaddc5f38d51c5e25a1bab78d6 /lisp/vc/ediff-help.el | |
parent | e39d593475300ff388cdb69c8134ad513e9310e7 (diff) | |
download | emacs-0f3d1b782353fd1fc0ab5f89d47d9e790f44e6b2.tar.gz emacs-0f3d1b782353fd1fc0ab5f89d47d9e790f44e6b2.tar.bz2 emacs-0f3d1b782353fd1fc0ab5f89d47d9e790f44e6b2.zip |
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.
Diffstat (limited to 'lisp/vc/ediff-help.el')
-rw-r--r-- | lisp/vc/ediff-help.el | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lisp/vc/ediff-help.el b/lisp/vc/ediff-help.el index 3292b4d939d..52a48252075 100644 --- a/lisp/vc/ediff-help.el +++ b/lisp/vc/ediff-help.el @@ -112,7 +112,7 @@ n,SPC -next diff | h -highlighting | r -restore buf C's old diff C-l -recenter | #f/#h -focus/hide regions | + -combine diff regions v/V -scroll up/dn | X -read-only in buf X | wx -save buf X </> -scroll lt/rt | m -wide display | wd -save diff output - ~ -swap variants | s -shrink window C | / -show ancestor buff + ~ -swap variants | s -shrink window C | / -show/hide ancestor buff | $$ -show clashes only | & -merge w/new default | $* -skip changed regions | " |