in *vc* to be re-set each time this function uses it.
Discard current dir from front of FILE later on,
and only if last = `WORKFILE'.
Undo Dec 10 change:
(vc-directory, vc-dired-reformat-line): Changed back.
(vc-directory-18): Old function restored.
(vc-dir-all-files): Function deleted.
(vc-next-action-on-file): If file is not registered,
check file out after registering it.
(vc-next-action-dired): Restore the window configuration after
doing vc-next-action on each file in a VC-dired buffer.
(file-regular-p-18): New function.
(file-regular-p): Define, if not already defined.
away relative-pathname information. This function no longer sets the
default directory. Also, mark the *vc* output buffer unmodified.
(vc-revert-buffer1): Handle font-lock mode correctly.
(vc-diff, vc-print-log): vc-do-command no longer sets the default
directory, but doing so is advantageous for these cases.
(file-executable-p-18): Better portability to Emacs 18.
(vc-directory-exclusion-list, vc-file-tree-walk-internal):
Implement the new variable vc-directory-exclusion-list to prune
tree walks. Initial value tells it to ignore SCCS and RCS subdirectories.
immediately checked out again, so set vc-checkout-time.
(vc-fetch-properties): CVS 1.4A1 says "Repository revision".
(vc-locking-user): Do something sensible when the backend
is CVS. May return a numerical UID or a string when CVS is used.
(vc-dired-reformat-line): Handle numerical arguments.
(vc-backend-checkout): Don't extract CVS files twice.
(vc-next-action-on-file): Handle return value from
vc-backend-merge-news correctly.
(vc-rename-file): Fixed call to vc-backend-dispatch.
(vc-make-buffer-writable-hook): New hook, for CVS only.
(vc-header-alist): Added header for CVS.
(vc-next-action-on-file): Added support for CVS.
(vc-next-action, vc-checkin, vc-revert-buffer): Doc fixes.
(vc-rename-file): Disable if the backend is CVS.
(vc-log-info): New arguments: LAST and FLAGS, passed on to
vc-do-command. All callers updated.
(vc-fetch-properties): Implement support for CVS files.
(vc-backend-checkin): Args REV and COMMENT no longer optional.
Implement support for CVS.
(vc-backend-revert): Implement support for CVS.
(vc-backend-diff): Treat files which are added, but not yet committed,
specially (diff them against /dev/null).
(vc-backend-merge-news): New function.
(vc-log-mode): Talk a little about CVS in the comment.
(vc-log-info): Simplify code.
(vc-do-command): New argument LAST. All callers updated.
Legal values for LAST are 'MASTER and 'BASE.
(vc-backend-dispatch): New argument C, used by CVS. All callers
updated, but many just passes an (error "NYI") form.
(vc-backend-admin): Issue a "cvs add" (but not a "cvs commit").
(vc-backend-checkout, vc-backend-logentry-check, vc-backend-print-log,
vc-backend-assign-name, vc-backend-diff, vc-check-headers): Handle CVS.
(vc-backend-steal, vc-backend-uncheck): Give error if using CVS.
(vc-backend-diff): Fixed typo in SCCS code.
to discard the extra arg some shells make.
(vc-rename-file): Add autoload cookie.
(vc-steal-lock): (1) Function should be non-interactive, because it
doesn't work when called directly by the user. (2) Don't display
revision "nil" when stealing lock if revision is unknown. (3) Put
"Stolen lock on <file>" instead of just the file name in the Subject
of the notification message.
Set vc-log-operation-hook locally.
(vc-next-action-on-file): Not here.
(vc-admin): Pass new arg.
(vc-checkin): Pass new arg instead of setting vc-log-operation-hook.
specifying whether we want to compute the differences if the
file is changed. Otherwise, use cmp instead of diff.
(vc-next-action-on-file): Use new vc-workfile-unchanged-p option;
this avoids recomputing the differences in some cases.
(vc-backend-diff): OLDVERS is now optional; all callers changed.
New optional argument CMP says to use `cmp' rather than `diff'.
allows vc-next-action on all marked files in a dired buffer to work.
(vc-finish-logentry) There isn't necessarily a *VC-log-entry* buffer
to remove if this function was called from within a dired buffer. Fix
its handling of this case.
working file ourselves; that way, if `co' fails, we won't have
deleted the working file.
(vc-backend-steal): Don't delete the working file. Use `rcs -u -l',
not `rcs -u ; rcs -l'; it's faster. Use vc-backend-dispatch -- the
old code couldn't have possibly worked.
add-change-log-entry-other-window. Call add-change-log-entry instead of
add-change-log-entry-other-window; pass it t for OTHER-WINDOW and NEW-ENTRY
args. Go to bol before filling.
FILE before passing it to vc-mode-line. Everyplace else passes
vc-mode-line full filenames, and vc-mode-line now needs the real
file name to decide which version-control system the file is under.
vc-update-change-log doesn't support it anyway.
Don't bind default-directory. Instead pass second arg to file-relative-name.
(vc-update-change-log): Use find-change-log instead of hardcoding.
(vc-registration-error): New function.
(vc-next-action, vc-diff, vc-print-log, vc-backend-diff): Use it to
make VC's error messages more uniform.
(vc-directory, vc-revert-buffer1): Quote lambdas with (function ...)
for Emacs 18.
(compilation-old-error-list): Set if undefined, for Emacs 18.
arg on an empty buffer.
(vc-directory): Better directory format --- replace the user and group IDs
with locking-user (if any).
(vc-finish-logentry, vc-next-comment, vc-previous-comment): Replace
*VC-comment-buffer* with a ring vector.
(vc-checkout): Now rejects attempts to check out files via FTP.
The `derived buffers' in the mode (the VC log buffer, status buffers,
and most buffer output commands) now know which file buffer was their
parent, and most commands will try to find such a parent buffer when
executed from within a special buffer.
docs.
(vc-finish-logentry, vc-next-comment, vc-previous-comment,
vc-comment-search-forward, vc-comment-search-backward) The VC comment
ring is now a separate buffer from *VC-log*; editing of old comments
is no longer destructive.
before starting the expensive rcs2log process.
Use call-process instead of shell-command to invoke rcs2log;
this avoids undesired shell escapes and is more robust about errors.
Put mark at point-min, so that the new insertion is in the region.
(vc-checkin-hook): Fix `runs-hooks' typo.
(vc-checkout-writeable-buffer-hook): New var.
(vc-next-action): Fix bug: initial checkin was botched when C-x v v
was applied to a new file while vc-initial-comment was non-nil.
(vc-register): Don't barf when registering a new, empty buffer.
(vc-directory): The `No files are currently registered'
message was wrongly worded, because sometimes the message talks
about locked files, not registered files.
(vc-file-tree-walk): Change (apply 'funcall ...) to (apply
...), since the 'funcall is redundant.
When traversing a directory tree, message
"Traversing directory XXX" so that the user can see what progress is
being made. Traversal can take a long time. Omit first argument,
since it is always the current directory. All callers changed.
(vc-file-tree-walk-internal): New function.
(vc-do-command, vc-diff, vc-version-diff, vc-backend-diff):
Remove redundant calls to `format'.
(vc-diff): Remove unused variable `old'.
(vc-version-diff): When recursively generating a difference
listing, don't append the latest output unless diff was actually run;
otherwise, you'll get the output from the previous file by mistake.
argument, but leave interactive usage the same.
* vc.el (vc-resynch-window): Call vc-revert-buffer1 with the newly
appropriate arguments. This seems to be the only file which was
adjusted for the new meaning of the revert-buffer arguments.
* vc.el (vc-next-action): Pass t as NOQUERY argument to
vc-resynch-window here too. This means that all uses of
vc-resynch-window pass t; I'm going to wait until I understand the
situation better before I rip out the NOQUERY argument
altogether.
* vc.el (vc-revert-buffer1): Try to preserve the position of mark
as well as point.
(vc-position-context, vc-find-position-by-context): New functions
to help with that, made out of the old innards of vc-revert-buffer1.
(vc-checkout, vc-finish-logentry, vc-revert-buffer, vc-finish-steal):
Supply t as NOQUERY arg for vc-resynch-window.
(vc-next-action): Don't revert workfile from master if buffer is modified.
(vc-log-after-operation-hook): New internal defvar.
(vc-checkin): Set vc-log-after-operation-hook to 'vc-checkin-hook.
(vc-finish-logentry): (run-hooks vc-log-after-operation-hook) at end.
(vc-update-change-log): When doing all visited files, remove directory
names from file names that are in default-directory.