;;; ediff-mult.el --- support for multi-file/multi-buffer processing in Ediff
-;; Copyright (C) 1995-2013 Free Software Foundation, Inc.
+;; Copyright (C) 1995-2016 Free Software Foundation, Inc.
;; Author: Michael Kifer <kifer@cs.stonybrook.edu>
;; Package: ediff
:prefix "ediff-"
:group 'ediff)
-
-;; compiler pacifier
-(eval-when-compile
- (require 'ediff-ptch)
- (require 'ediff))
-;; end pacifier
-
(require 'ediff-init)
+(require 'ediff-diff)
+(require 'ediff-wind)
+(require 'ediff-util)
+
;; meta-buffer
(ediff-defvar-local ediff-meta-buffer nil "")
uh/um:\tunmark all sessions marked for hiding/operation
n,SPC:\tnext session
p,DEL:\tprevious session
- E:\tbrowse Ediff on-line manual
+ E:\tbrowse Ediff manual
T:\ttoggle truncation of long file names
q:\tquit this session group
")
(defcustom ediff-default-filtering-regexp nil
"The default regular expression used as a filename filter in multifile comparisons.
Should be a sexp. For instance (car ediff-filtering-regexp-history) or nil."
- :type 'sexp
+ :type 'sexp ; yuck - why not just a regexp?
+ :risky t
:group 'ediff-mult)
;; This has the form ((meta-buf regexp dir1 dir2 dir3 merge-auto-store-dir)
(setq overl
(if (featurep 'xemacs)
(map-extents
- (lambda (ext maparg)
+ (lambda (ext _maparg)
(if (and
(ediff-overlay-get ext 'ediff-meta-info)
(eq (ediff-overlay-get ext 'ediff-meta-session-number)
;; argument is ignored
-(defun ediff-redraw-registry-buffer (&optional ignore)
+(defun ediff-redraw-registry-buffer (&optional _ignore)
(ediff-with-current-buffer ediff-registry-buffer
(let ((point (point))
elt bufAname bufBname bufCname cur-diff total-diffs pt
(map-extents 'delete-extent)
(mapc 'delete-overlay (overlays-in 1 1)))
- (insert "This is a registry of all active Ediff sessions.
+ (insert (substitute-command-keys "\
+This is a registry of all active Ediff sessions.
Useful commands:
button2, `v', RET over a session record: switch to that session
R in any Ediff session: display session registry
n,SPC: next session
p,DEL: previous session
- E: browse Ediff on-line manual
+ E: browse Ediff manual
q: bury registry
\t\tActive Ediff Sessions:
\t\t----------------------
-")
+"))
;; purge registry list from dead buffers
(mapc (lambda (elt)
(if (not (ediff-buffer-live-p elt))
))
(error "The patch buffer wasn't found"))))
+(declare-function ediff-directories-internal "ediff"
+ (dir1 dir2 dir3 regexp action jobname
+ &optional startup-hooks merge-autostore-dir))
+
+(declare-function ediff-directory-revisions-internal "ediff"
+ (dir1 regexp action jobname
+ &optional startup-hooks merge-autostore-dir))
+
;; This function executes in meta buffer. It knows where event happened.
(defun ediff-filegroup-action ()
(setq point (point-min)))
point))))
+(autoload 'ediff-patch-file-internal "ediff-ptch")
+
;; this is the action invoked when the user selects a patch from the meta
;; buffer.
(defun ediff-patch-file-form-meta (file &optional startup-hooks)