Function: eca-rewrite--ediff
eca-rewrite--ediff is a natively compiled function defined in
eca-rewrite.el.
Signature
(eca-rewrite--ediff OV)
Documentation
Show diff between original text and rewrite overlay OV.
Source Code
;; Defined in /nix/store/jklqzw6pzz6j4jrbv8wy0iwgi7jlrbld-emacs-packages-deps/share/emacs/site-lisp/elpa/eca-20260928.1827/eca-rewrite.el
(defun eca-rewrite--ediff (ov)
"Show diff between original text and rewrite overlay OV."
(letrec ((ov-buf (overlay-buffer ov))
(newbuf (eca-rewrite--clone-buffer-with-rewrite ov "*eca-rewrite-ediff*"))
(orig-win (current-window-configuration))
(hide-show-fn (lambda (&optional restore)
(let ((disp (overlay-get ov 'display))
(stored (overlay-get ov 'eca-rewrite--ediff)))
;; Do not toggle overlay-level face; the highlight is carried by the display string.
(overlay-put ov 'display (and restore stored))
(overlay-put ov 'eca-rewrite--ediff (unless restore disp)))))
(on-quit-fn (lambda ()
(when (window-configuration-p orig-win)
(set-window-configuration orig-win))
(funcall hide-show-fn t)
(remove-hook 'ediff-quit-hook on-quit-fn))))
(funcall hide-show-fn)
(add-hook 'ediff-quit-hook on-quit-fn t)
(ediff-buffers ov-buf newbuf)))