ChangeLog 314 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
2000-09-11  Miles Bader  <miles@lsi.nec.co.jp>

	* diff-mode.el (diff-apply-hunk): Function basically rewritten.
	Now understands non-unified diffs.  Some functionality moved into
	`diff-hunk-text' and `diff-find-text'.  Add OTHER-FILE, DRY-RUN,
	POPUP, and NOERROR arguments.  If DRY-RUN is true, don't actually
	modify anything.  Only reposition point in the patched file if the
	patch succeeds.  Only pop up another window if POPUP is true.
	Emit a message describing what happened if successful, and at what
	line-offset.  Automatically detect reversed hunks and do something
	appropriate.
	(diff-hunk-text, diff-find-text): New functions.
	(diff-filter-lines): Function removed.
	(diff-test-hunk): New function.
	(diff-goto-source): Rewritten in terms of diff-apply-hunk.

Dave Love's avatar
Dave Love committed
17 18 19 20 21 22 23 24 25
2000-09-10  Dave Love  <fx@gnu.org>

	* textmodes/tildify.el: Minor doc/commentary fixes.
	(tildify) <defgroup>: Add :version.

	* faces.el (face-x-resources): Make custom type more specific.
	(frame-background-mode): Use mapc.
	(region) <defcustom>: Add :version.

Stefan Monnier's avatar
Stefan Monnier committed
26 27 28 29 30 31 32
2000-09-08  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-sccs.el (vc-sccs-register): 
	* vc-rcs.el (vc-rcs-register): 
	* vc-cvs.el (vc-cvs-register): Don't clear file's properties.
	* vc.el (vc-register): Clear file's properties.

Gerd Moellmann's avatar
Gerd Moellmann committed
33 34 35 36 37
2000-09-08  Gerd Moellmann  <gerd@gnu.org>

	* faces.el (face-spec-set): Only face-spec-reset-face when
	ATTRS is non-nil.

38 39 40 41
2000-09-08  Eli Zaretskii  <eliz@is.elta.co.il>

	* help.el (help-insert-xref-button): Fix a typo in doc string.

Eli Zaretskii's avatar
Eli Zaretskii committed
42 43
2000-09-07  Eli Zaretskii  <eliz@is.elta.co.il>

Stefan Monnier's avatar
Stefan Monnier committed
44 45
	* international/titdic-cnv.el (quail-cxterm-package-ext-info):
	Fix doc strings of chinese-py-b5, chinese-py, and chinese-tonepy input
46 47
	methods.

Eli Zaretskii's avatar
Eli Zaretskii committed
48 49 50 51 52
	* menu-bar.el (read-mail-item-name): New function.
	(menu-bar-tools-menu): Use it to compute and display the package
	used to read email.
	(menu-bar-tools-menu): Fix typo in GUD's help string.

53 54
2000-09-07  Dave Love  <fx@gnu.org>

55 56
	* diff-mode.el (diff-mouse-goto-source): New function.

Dave Love's avatar
Dave Love committed
57
	* vc-sccs.el: Doc fixes.
Stefan Monnier's avatar
Stefan Monnier committed
58
	(vc-sccs-register-switches, vc-sccs-master-templates): Add :version.
Dave Love's avatar
Dave Love committed
59 60

	* vc-rcs.el: Doc fixes.
Stefan Monnier's avatar
Stefan Monnier committed
61 62
	(vc-rcs-register-switches, vc-rcs-checkin-switches)
	(vc-rcs-checkout-switches, vc-rcs-header)
Dave Love's avatar
Dave Love committed
63 64
	(vc-rcs-master-templates): Add or change :version.

Stefan Monnier's avatar
Stefan Monnier committed
65
	* vc-cvs.el: Doc fixes.
Dave Love's avatar
Dave Love committed
66 67 68
	(vc-cvs-register-switches, vc-cvs-header, vc-cvs-use-edit)
	(vc-cvs-stay-local): Add :version.

69 70
	* menu-bar.el (menu-bar-options-menu): Fix the font-lock toggle.

Kenichi Handa's avatar
Kenichi Handa committed
71 72 73 74
2000-09-07  Kenichi Handa  <handa@etl.go.jp>

	* international/quail.el (quail-help): Fix previous change.

Gerd Moellmann's avatar
Gerd Moellmann committed
75 76
2000-09-07  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
77 78
	* faces.el (color-values): Doc fix.
	
Gerd Moellmann's avatar
Gerd Moellmann committed
79 80 81 82 83 84 85
	* faces.el (frame-set-background-mode): Use frame-parameter
	instead of frame-parameters.

	* frame.el (filtered-frame-list): Reduce consing.
	(frames-on-display-list): Call frame-parameter instead of 
	frame-parameters.
	
Kenichi Handa's avatar
Kenichi Handa committed
86 87 88 89 90
2000-09-07  Kenichi Handa  <handa@etl.go.jp>

	* language/devan-util.el (devanagari-to-indian-region): In the
	loop, change the following char, not preceding char.

Gerd Moellmann's avatar
Gerd Moellmann committed
91 92
2000-09-07  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
93 94 95
	* menu-bar.el (menu-bar-update-buffers): Call frame-parameter
	instead of frame-parameters.

Gerd Moellmann's avatar
Gerd Moellmann committed
96 97 98 99
	* faces.el (set-face-attribute): Simplify by calling 
	internal-set-lisp-face-attribute with FRAME being 0.

	* vc.el: Remove `Id' version control keyword.
Gerd Moellmann's avatar
Gerd Moellmann committed
100

Kenichi Handa's avatar
Kenichi Handa committed
101 102 103 104 105 106 107 108 109 110 111 112
2000-09-07  Kenichi Handa  <handa@etl.go.jp>

	* help.el (help-make-xrefs): Adjusted for the change of
	help-xref-mule-regexp.
	(help-insert-xref-button): New function.

	* international/mule-cmds.el (help-xref-mule-regexp-template):
	Include the pattern for character set.
	(leim): New group.

	* international/quail.el: Don't require face.
	(quail): New group.
Stefan Monnier's avatar
Stefan Monnier committed
113
	(quail-other-command): Dummy command to make quail-help work better.
Kenichi Handa's avatar
Kenichi Handa committed
114 115 116 117 118 119 120 121 122 123
	(quail-keyboard-layout-alist): Add Keyboard type "jp106".
	(quail-keyboard-layout-substitution): New variable.
	(quail-update-keyboard-layout): New function.
	(quail-keyboard-layout-type): New customizable variable.
	(quail-set-keyboard-layout): Call quail-update-keyboard-layout.
	(quail-keyboard-translate): Pay attention to
	quail-keyboard-layout-substitution.
	(quail-insert-kbd-layout): New function.
	(quail-show-keyboard-layout): New function.
	(quail-get-translation): If the definition is a vector of length
Stefan Monnier's avatar
Stefan Monnier committed
124
	1, and the element is a string of length 1, return the character
Kenichi Handa's avatar
Kenichi Handa committed
125 126 127 128 129
	in that string.
	(quail-update-current-translations): Fix the case of
	relative-index out of range.
	(quail-build-decode-map, quail-insert-decode-map): New Functions.
	(quail-help): Show keyboard layout by quail-insert-kbd-layout.
Stefan Monnier's avatar
Stefan Monnier committed
130
	Show key sequences for all available characters.
Kenichi Handa's avatar
Kenichi Handa committed
131 132 133 134 135 136 137 138
	(quail-help-insert-keymap-description): Don't show such verbose
	key bindings as quail-self-insert-command.

	* international/titdic-cnv.el (quail-cxterm-package-ext-info):
	Format changed, and each element now have extra documentations.
	(tit-process-header): Delete invalid characters from TIT-PROMPT.
	Adjusted for the change of quail-cxterm-package-ext-info.

139 140 141 142 143 144
2000-09-06  Gerd Moellmann  <gerd@gnu.org>

	* vc-hooks.el (toplevel): Don't require `vc' during compilation;
	requiring it leads to a recursive loading of vc.el and vc-hooks.el
	during bootstrap.

145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218
2000-09-05  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el: (toplevel): Don't require `dired' at run-time.
	(vc-dired-resynch-file): Remove autoload cookie.

2000-09-05  Andre Spiegel  <spiegel@gnu.org>

	* vc.el: Made several backend functions optional.
	(vc-default-responsible-p): New function.
	(vc-merge): Use RET for first version to trigger merge-news, not
	prefix arg.
	(vc-annotate): Handle backends that do not support annotation.
	(vc-default-merge-news): Removed.  The existence of a merge-news
	implementation is now checked on caller sites.

	* vc-hooks.el (vc-default-mode-line-string): Removed CVS special 
	case.

	* vc-cvs.el (vc-cvs-mode-line-string): New function, handles the 
	special case that has been removed from the default in vc-hooks.el.

2000-09-05  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-log-edit): Properly handle the case where FILE is nil.

2000-09-05  Andre Spiegel  <spiegel@gnu.org>

	* vc-hooks.el: Require vc during compilation.
	(vc-file-setprop): Use `vc-touched-properties' if bound by the new
	macro `with-vc-properties' in vc.el.
	(vc-file-getprop): Doc fix.
	(vc-after-save): Call `vc-dired-resynch-file' only if vc is loaded.
	
	* vc.el: Require dired-aux during compilation.
	(vc-name-assoc-file): Moved to vc-sccs.el.
	(with-vc-properties): New macro.
	(vc-checkin, vc-checkout, vc-revert, vc-cancel-version, 
	vc-finish-steal): Use it.
	(vc-cancel-version): Moved RCS-specific code to vc-rcs.el.  The call
	to the backend-specific function is now supposed to do the checkout,
	too.
	(vc-log-edit): Handle FILE being nil and added a FIXME for log-edit.

	* vc-cvs.el (vc-cvs-checkin, vc-cvs-checkout): Don't bother to 
	set file properties; that gets done in the generic code now.

	* vc-rcs.el (vc-rcs-uncheck): Renamed to `vc-rcs-cancel-version'.
	Changed parameter list, added code from vc.el that does the
	checkout, possibly with a double-take.

	* vc-sccs.el (vc-sccs-name-assoc-file): Moved here from vc.el.
	(vc-sccs-add-triple, vc-sccs-rename-file, vc-sccs-lookup-triple): Use
	the above under the new name.
	(vc-sccs-uncheck): Renamed to `vc-sccs-cancel-version'.  Changed
	parameter list, added checkout command.
	(vc-sccs-checkin, vc-sccs-checkout): Don't bother to set file
	properties; that gets done in the generic code now.

2000-09-05  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el: Docstring fixes (courtesy of checkdoc).

2000-09-05  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-checkout-writable-buffer-hook)
	(vc-checkout-writable-buffer): Remove.
	(vc-start-entry): Always call vc-log-edit, never vc-log-mode.
	(vc-log-mode): Make it into a clean derived major mode.
	(vc-log-edit): Mark buffer unmodified (as vc-log-mode did) and use
	vc-log-mode if log-edit is not available.
	(vc-dired-mode-map): Don't set-keymap-parent yet.
	(vc-dired-mode): Do set-keymap-parent here.
	(vc-dired-buffers-for-dir): Nop if dired is not loaded.

Gerd Moellmann's avatar
Gerd Moellmann committed
219 220 221 222 223 224 225
2000-09-05  Gerd Moellmann  <gerd@gnu.org>

	* faces.el (set-face-attribute, face-spec-reset-face)
	(face-spec-set): Avoid consing by removing calls to `apply'.

	* frame.el (frame-parameter): Move to C code.

226 227 228 229 230
2000-09-05  Dave Love  <fx@gnu.org>

	* help.el (help-manyarg-func-alist): Add ml-prefix-argument-loop,
	insert-before-markers-and-inherit.  Now checked systematically!

Gerd Moellmann's avatar
Gerd Moellmann committed
231 232 233 234 235 236 237 238 239 240 241 242 243
2000-09-05  Alex Schroeder  <alex@gnu.org>

	* sql.el (sql-postgres): Use sql-postgres-options.
	(sql-postgres-options): New variable.

2000-09-05  Alex Schroeder  <alex@gnu.org>

	* sql.el (sql-mode-menu): Work around missing variable mark-active
	in XEmacs.
	(sql-mode): Added call to easy-menu-add for XEmacs compatibility.
	(sql-interactive-mode): Added call to easy-menu-add for XEmacs
	compatibility.

244 245
2000-09-04  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
246 247
	* vc.el (vc-dired-resynch-file): Add autoload cookie.
	
248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266
	* vc.el (toplevel): Require `dired' at run-time for dired-mode-map.

	* Makefile.in (DONTCOMPILE): Fix typo in file name.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc-sccs.el (vc-sccs-latest-on-branch-p): Always return t; we
	don't support anything else under SCCS yet.

	* vc-hooks.el: Minor doc fixes.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-next-action-on-file): Do not visit the file if it's
	not necessary.  If verbose in state `needs-patch', do the same as
	under `up-to-date'.  When NOT verbose and `needs-patch', check out
	latest version instead of `merge-news'.
	(vc-next-action-dired): Don't mess with default-directory here; it
	breaks other parts of dired.  It is the job of the
267
	backend-specific functions to adjust it temporarily if they need it.
268 269 270 271
	(vc-next-action): Remove a special CVS case.
	(vc-clear-headers): New optional arg FILE.
	(vc-checkin, vc-checkout): Set properties vc-state and
	vc-checkout-time properly.
272
	(vc-finish-steal): Call steal-lock, not steal, which doesn't exist.
273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346
	(vc-print-log): Use new backend function `show-log-entry'.
	(vc-cancel-version): Do the checks in a different order.  Added a
	FIXME concerning RCS-only code.

	* vc-rcs.el (vc-rcs-show-log-entry): New function.
	(vc-rcs-checkin, vc-rcs-checkout): Don't set all properties.

	* vc-cvs.el (vc-cvs-show-log-entry): New function.

	* vc-hooks.el (vc-default-mode-line-string): Show state 
	`needs-patch' as a `-' too.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-responsible-backend): New optional arg REGISTER.
	(vc-default-could-register): New function.
	(vc-dired-buffers-for-dir, vc-dired-resynch-file): New functions.
	(vc-resynch-buffer): Call vc-dired-resynch-file.
	(vc-start-entry, vc-finish-logentry, vc-revert-buffer): Use
	vc-resynch-buffer instead of vc-resynch-window.
	(vc-next-action-dired): Don't redisplay here, that gets done as a
	result of the individual file operations.
	(vc-retrieve-snapshot): Corrected prompt order.

	* vc-hooks.el (vc-after-save): Call vc-dired-resynch-file.
	
	* vc-cvs.el (vc-cvs-stay-local): Allow it to be a hostname regexp
	as well.
	(vc-cvs-remote-p): Renamed to vc-cvs-stay-local-p.  Handle
	hostname regexps.  Updated all callers.
	(vc-cvs-responsible-p): Handle directories as well.
	(vc-cvs-could-register): New function.
	(vc-cvs-retrieve-snapshot): Parse "cvs update" output, keep file
	properties up-to-date.
	
	* vc-rcs.el (vc-rcs-register): If there is no RCS subdir, ask the
	user whether to create one.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc-hooks.el (vc-file-not-found-hook): Ask the user whether to
	check out a non-existing file.

	* vc-cvs.el (vc-cvs-checkout): Do the right thing when the
	workfile does not exist.

	* vc.el (vc-version-diff): Use `require' to check for existence of
	diff-mode.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc-cvs.el (vc-cvs-registered): Use new function
	vc-cvs-parse-entry to do the actual work.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc-hooks.el (vc-find-backend-function): If function doesn't
	exist, return nil instead of error.
	(vc-call-backend): Doc fix.

	* vc.el (vc-do-command): Doc fix.
	(vc-finish-logentry): When checking in from vc-dired, choose the
	right backend for logentry check.
	(vc-dired-mode-map): Inherit from dired-mode-map.
	(vc-dired-mode): Local value of dired-move-to-filename-regexp
	simplified.
	(vc-dired-state-info): Removed, updated caller.
	(vc-default-dired-state-info): Use parentheses instead of hyphens.
	(vc-dired-hook): Use vc-BACKEND-dir-state, if available.
	(vc-dired-listing-switches): New variable.
	(vc-directory): Use it, instead of dired-listing-switches.

	* vc-cvs.el (vc-cvs-remote-p): Allow FILE to be a directory, too.
	(vc-cvs-dir-state): New function.
Stefan Monnier's avatar
Stefan Monnier committed
347
	(vc-cvs-dir-state-heuristic): New function, subroutine of the above.
348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698
	(vc-cvs-parse-entry): New function, also to be used in
	vc-cvs-registered.
	
2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-revert-buffer): Hide the frame for dedicated windows
	*or* single-window-frames.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-update-changelog): Split into generic part and default
	implementation.  Doc string adapted.
	(vc-default-update-changelog): New function.  Call the `rcs2log'
	script in exec-directory, to fix a long-standing nuisance.

	* vc-sccs.el (vc-sccs-update-changelog): Dummy implementation that
	simply signals an error.
	
2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-cvs.el (vc-cvs-checkout): Slight restructuring to make the
	control-flow more clear and to avoid running `cvs' twice.

	* vc.el (vc-next-action-on-file): Doc fix.
	(vc-maybe-resolve-conflicts): Don't just toggle smerge-mode.
	(vc-print-log): Eval `file' before constructing the continuation.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-next-action-on-file): Corrected several messages.
	(vc-merge): Add prefix arg `merge-news'; handle it.

	* vc-cvs.el (vc-cvs-workfile-version): Removed comment that this
	is not reached.  It is.
	(vc-cvs-merge): Set state to 'edited after merge.
	(vc-cvs-merge-news): Set workfile version to nil if not known.
	(vc-cvs-latest-on-branch-p): Recommented.  Candidate for removal.

	* vc-*.el (vc-*-checkout): Switch off coding systems for checkout
	via stdout. (Merge from main line.)
	
2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-finish-logentry): Thinko in the "same comment"
	detection.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-parent-buffer, vc-parent-buffer-name): Protect them
	against kill-all-local-variables.
	(vc-log-edit): Don't save vc-parent-buffer any more.
	(vc-last-comment-match): Initialize to an empty string.
	(vc-post-command-functions): New hook.
	(vc-do-command): Run it.
	(vc-next-action-on-file): Remove unnecessary pop-to-buffer.
	(vc-finish-logentry): Only add the comment to the ring if it's
	different from the last comment entered.
	(vc-new-comment-index): New function.
	(vc-previous-comment): Use it.  Make the minibuffer message
	slightly less terse.
	(vc-comment-search-reverse): Make it work forward as well.  Don't
	set vc-comment-ring-index if no match is found.  Use
	vc-new-comment-index.
	(vc-comment-search-forward): Use vc-comment-search-reverse.
	(vc-dired-mode-map): Don't inherit from dired-mode-map since
	define-derived-mode will do it for us.  Bind `v' to a keymap that
	inherits from vc-prefix-map so that we can bind `vt' without
	binding C-x v t.
	(vc-retrieve-snapshot): Parenthesis typo.

	* vc-cvs.el (vc-cvs-checkin): Raise the max-correct status from 0
	to 1.  Make sure to switch to *vc* before looking for an error
	message.  Use vc-parse-buffer.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-create-snapshot, vc-default-create-snapshot): Swap DIR
	and NAME.
	(vc-retrieve-snapshot): Split into two parts.
	(vc-default-retrieve-snapshot): New function.

	* vc-cvs.el ((vc-cvs-create-snapshot): Swap DIR and NAME.
	(vc-cvs-retrieve-snapshot): New function (untested).
	(vc-cvs-stay-local): Default to t.
	(vc-cvs-remote-p): New function and property.
	(vc-cvs-state): Stay local only if the above is t.
	(vc-handle-cvs): Removed.
	(vc-cvs-registered): Don't check vc-handle-cvs -- it should all be
	done via vc-handled-backends now.
	(vc-cvs-header): Escape Id.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-do-command): Remove unused commands.
	(vc-version-diff): Make sure default-directory ends with a slash.
	Move the window commands into a vc-exec-after.
	(vc-print-log): Move more of the code into the `vc-exec-after'.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-exec-after): Fix disassembly of previous sentinel.
	(vc-print-log): Search current revision from beginning of buffer.
	(vc-revert-buffer): Clear echo area after the diff is finished.
	(vc-prefix-map): Removed definition of "t" for terse display in vc
	dired.
	(vc-dired-mode-map): Inherit from dired-mode-map.  Added
	definition of "vt" for terse display.
	(vc-dired-mode): Fix dired-move-to-filename-regexp.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-exec-after): Avoid caddr.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-exec-after): New function.
	(vc-do-command): Use it to add a termination message for async
	procs.
	(vc-checkout): Try to handle a missing-backend situation.
	(vc-version-diff): Use vc-exec-after to fix the behavior for diffs
	of a directory with a backend using async diffs.
	(vc-print-log): Use vc-exec-after and use log-view-goto-rev if
	present.

	* vc-sccs.el (vc-sccs-state-heuristic): Use
	file-ownership-preserved-p.

	* vc-rcs.el (vc-rcs-state-heuristic): Use
	file-ownership-preserved-p.
	(vc-rcs-checkout): Remove the error-handling for missing-rcs.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc-sccs.el (vc-sccs-workfile-unchanged-p): Fix call to
	vc-do-command.

	* vc.el (vc-next-action-on-file): Use vc-revert-buffer to revert
	when there are no changes.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc-sccs.el (vc-sccs-state-heuristic): Don't use file-writable-p.

	* vc-rcs.el (vc-rcs-state-heuristic): Don't use file-writable-p.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-hooks.el (vc-prefix-map): Move the autoload from vc.el.

	* vc.el (vc-prefix-map): Move the autoload to vc-hooks.el and move
	the `fset' outside of the defvar so that it works even if
	vc-prefix-map was already defined.
	(vc-setup-buffer): New function, split out of vc-do-command.
	(vc-do-command): Allow BUFFER to be t to mean `just use the
	current buffer without any fuss'.
	(vc-version-diff): Change the `diff' backend operation to just put
	the diff in the current buffer without erasing it.  Always use
	*vc-diff* even for directory-diffs.  Use vc-setup-buffer.  Protect
	shrink-window-if-larger-than-buffer.
	(vc-print-log): Change the `print-log' backend operation to just
	put the log in the current buffer without erasing it.  Protect
	shrink-window-if-larger-than-buffer.
	(vc-update-change-log): Fix setd typo.

	* vc-sccs.el (vc-sccs-workfile-unchanged-p): Fix parenthesis.
	(vc-sccs-print-log, vc-sccs-diff): Insert in the current buffer.

	* vc-rcs.el (vc-rcs-print-log): Insert in the current buffer.
	(vc-rcs-diff): Insert in the current buffer and remove unused arg
	CMP.

	* vc-cvs.el (vc-cvs-state, vc-cvs-fetch-status): Use
	with-temp-file.  Use the new BUFFER=t argument to vc-do-command.
	(vc-cvs-print-log, vc-cvs-diff): Insert in the current buffer.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-workfile-unchanged-p): If checkout-time comparison is
	not possible, use vc-BACKEND-workfile-unchanged-p.
	(vc-default-workfile-unchanged-p): New function.  Delegates to a
	full vc-BACKEND-diff.

	* vc-hooks.el (vc-simple-command): Removed.

	* vc-rcs.el (vc-rcs-workfile-unchanged-p): Use vc-do-command
	instead of vc-simple-command.
	(vc-rcs-fetch-master-state): Removed check for unlocked-changes to
	avoid doing a diff when opening a file.
	(vc-rcs-state): Added check for unlocked-changes.
	(vc-rcs-header): Escape Id.
	(vc-rcs-workfile-unchanged-p): Remove optional arg VERSION.
	(vc-rcs-state): Call vc-workfile-unchanged-p, not the RCS-specific
	version.

	* vc-sccs.el (vc-sccs-workfile-unchanged-p): Rewritten.
	(vc-sccs-diff): Remove optional arg CMP.
	(vc-sccs-state): Call vc-workfile-unchanged-p, not the
	SCCS-specific function.

	* vc-cvs.el (vc-cvs-state): Use vc-do-command instead of
	vc-simple-command.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-editable-p): Renamed from vc-writable-p.
	(with-vc-file, vc-merge): Use vc-editable-p.
	(vc-do-command): Remove unused var vc-file and fix the
	doubly-defined `status' var.  Add a user message when starting an
	async command.
	(vc-restore-buffer-context, vc-resynch-buffer, vc-start-entry)
	(vc-finish-steal, vc-checkin, vc-finish-logentry, vc-rename-file):
	Use with-current-buffer.
	(vc-buffer-sync): Use unless.
	(vc-next-action-on-file): If the file is 'edited by read-only,
	make it read-write instead of trying to commit.
	(vc-version-diff, vc-update-change-log): Use `setq
	default-directory' rather than `cd'.
	(vc-log-edit): Don't forget to set default-directory in the
	buffer.

	* vc-sccs.el (vc-sccs-state): Fix obviously wrong parenthesis.
	(vc-sccs-state-heuristic): Use file-writable-p instead of
	comparing userids.
	(vc-sccs-checkout): Use `unless'.

	* vc-rcs.el (vc-rcs-state-heuristic): Use file-writable-p instead
	of comparing userids.
	(vc-rcs-fetch-master-state): Handle the case where rcs is missing.
	Simplify the logic by eliminating unreachable code.
	(vc-rcs-diff): Only pass `2' to vc-do-command if necessary and
	just do a recursive call if we need to retry.
	(vc-rcs-checkout): Handle the case where rcs is missing by making
	the buffer read-write if requested and re-signalling the error.

	* vc-cvs.el (vc-cvs-diff): Remove unused and unsupported argument CMP.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-hooks.el (vc-handled-backends): Docstring change.
	(vc-ignore-vc-files): Mark obsolete.
	(vc-registered): Check vc-ignore-vc-files.
	(vc-find-file-hook, vc-file-not-found-hook): Don't check
	vc-ignore-vc-files.

	* vc-cvs.el (vc-cvs-registered): Obey vc-handle-cvs.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-checkout): Don't do anything special for ange-ftp
	files since ange-ftp already has vc-registered return nil.

	* vc-sccs.el (vc-sccs-state): Use with-temp-buffer.
	(vc-sccs-workfile-version): Use with-temp-buffer and new
	vc-parse-buffer and don't bother setting the property.
	(vc-sccs-add-triple): Use with-current-buffer and
	find-file-noselect.
	(vc-sccs-lookup-triple): New vc-parse-buffer and turn cond -> if.

	* vc-rcs.el (vc-rcs-find-most-recent-rev): New function.  The code
	derives from the old vc-parse-buffer but uses the revision number
	rather than the date (much easier to compare robustly).
	(vc-rcs-fetch-master-state): Use `with-temp-buffer'.  Adapt to the
	new vc-parse-buffer (and vc-rcs-find-most-recent-rev).  Find the
	locking-user more directly.  Check strict locking and set
	checkout-model appropriately.
	(vc-rcs-parse-locks): Remove.
	(vc-rcs-latest-on-branch-p): Use with-temp-buffer and adapt to the
	new vc-parse-buffer (and vc-rcs-find-most-recent-rev).
	(vc-rcs-system-release): Use with-current-buffer and
	vc-parse-buffer.
	(vc-rcs-register, vc-rcs-checkout): Use with-current-buffer.

	* vc-hooks.el (vc-parse-buffer): Lobotomize the monster.
	(vc-simple-command): Docstring fix.
	(vc-registered): Align the way the file-handler is called with the
	way the function itself works.
	(vc-file-owner): Remove.

	* vc-cvs.el (vc-cvs-registered): Use with-temp-buffer.  Reorder
	extraction of fields and call to file-attributes because of a
	temporary bug in rcp.el.
	(vc-cvs-fetch-status): Use with-current-buffer.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-do-command): Use file-relative-name.
	(vc-responsible-backend): Use vc-backend if possible.
	(vc-create-snapshot): Improve the `interactive' spec. Add support
	for branches and dispatch to backend-specific `create-snapshot'.
	(vc-default-create-snapshot): New function, containing the bulk of
	the old vc-create-snapshot.
	(vc-retrieve-snapshot): Improve the interactive spec.

	* vc-hooks.el (vc-header-alist): Move the dummy def from vc.el.
	(vc-backend-hook-functions): Remove.
	(vc-find-backend-function): Don't try to load vc-X-hooks anymore.
	(vc-backend): Reintroduce the test for `file = nil' now that I
	know why it was there (and added a comment to better remember).

	* vc-sccs-hooks.el: Merge into vc-sccs.el * vc-sccs.el: Merge in
	code from vc-sccs-hooks.el.
	(vc-sccs-release, vc-sccs-system-release): Remove.  Don't require
	'vc anymore.
	(vc-sccs-responsible-p): Use expand-file-name instead of concat
	and file-directory-p instead of file-exists-p.
	(vc-sccs-check-headers): Simplify the regexp.

	* vc-rcs-hooks.el: Merge into vc-rcs.el * vc-rcs.el: Merge in code
	from vc-rcs-hooks.el.  Don't require 'vc anymore.
	(vc-rcs-responsible-p): Use expand-file-name instead of concat and
	file-directory-p instead of file-exists-p.

	* vc-cvs-hooks.el: Merge into vc-cvs.el * vc-cvs.el: Merge in code
	from vc-cvs-hooks.el.
	(proto vc-cvs-registered): Require 'vc-cvs instead of
	'vc-cvs-hooks.  Don't require 'vc anymore.
	(vc-cvs-responsible-p): Use expand-file-name instead of concat and
	file-directory-p instead of file-exists-p.
	(vc-cvs-create-snapshot): New function, replacing
	vc-cvs-assign-name.
	(vc-cvs-assign-name): Remove.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-cvs.el (vc-cvs-header): New var.

	* vc-rcs.el (vc-rcs-exists): Remove.
	(vc-rcs-header): New var.

	* vc-sccs.el (vc-sccs-responsible-p, vc-sccs-register): Use
	`vc-sccs-search-project-dir' instead of `vc-sccs-project-dir'.
	(vc-sccs-header): New var.

	* vc.el (vc-do-command): Get rid of the `last' argument.
	(vc-header-alist): Remove, replaced by vc-X-header.
	(vc-insert-headers): Use vc-X-header instead of vc-header-alist.
	(vc-dired-hook): Use expand-file-name instead of concat.
	(vc-directory): Use file-name-as-directory.
	(vc-snapshot-precondition, vc-create-snapshot)
	(vc-retrieve-snapshot): Allow the command to operate on any
	directory.

	* vc-{rcs,sccs,cvs}.el: Update calls to vc-do-command by either
	just removing the 'WORKFILE argument or by removing the 'MASTER
	argument and replacing `file' with (vc-name file).

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el: Update Copyright and add a crude list of backend funs.
	(vc-writable-p): New function.
	(with-vc-file): Use vc-writable-p.
Stefan Monnier's avatar
Stefan Monnier committed
699
	(vc-next-action-on-file): Update call to vc-steal-lock and cleanup.
700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752
	(vc-register): Avoid vc-name.
	(vc-locking-user): Remove.
	(vc-steal-lock): Make the `owner' arg non-optional.
	(vc-merge): Use vc-writable-p instead of vc-locking-user and
	vc-checkout-model.
	(vc-default-dired-state-info): Use vc-state instead of
	vc-locking-user and return special strings for special states.
	(vc-dired-hook): Use vc-up-to-date-p instead of vc-locking-user
	and get rid of one of the special CVS cases.
	(vc-cancel-version): prettify error message with \\[...].
	(vc-rename-master): New function.
	(vc-rename-file): Use vc-BACKEND-rename-file (which might in turn
	use vc-rename-master) instead of vc-BACKEND-record-rename.  Make
	the CVS special case generic.
	(vc-default-record-rename): Remove.
	(vc-file-tree-walk-internal): Only call FUNC for files that are
	under control of some VC backend and replace `concat' with
	expand-file-name.
	(vc-file-tree-walk): Update docstring.
	(vc-version-diff, vc-snapshot-precondition, vc-create-snapshot)
	(vc-retrieve-snapshot): Update call to vc-file-tree-walk.

	* vc-sccs.el (vc-sccs-rename-file): Renamed from
	vc-sccs-record-rename.  Use `find-file-noselect' rather than
	`find-file' and call `vc-rename-master' to do the actual move.
	(vc-sccs-diff): Remove unused `backend' variable.

	* vc-sccs-hooks.el (vc-sccs-registered): Preloaded trivial version
	to delay loading of vc-sccs until it is really used.
	(vc-sccs-master-templates): Preload.
	(vc-sccs-state): Update call to vc-sccs-parse-locks.
	(vc-sccs-project-dir): Remove (merged into
	vc-sccs-search-project-dir).
	(vc-sccs-search-project-dir): Rewrite using file name handling ops
	rather than `concat', make sure it is preloaded and don't bother
	to check that the file actually exists.
	(vc-sccs-parse-locks): Remove unused `file' argument, remove
	`locks' argument (use buffer's content instead) and eliminate n^2
	behavior.

	* vc-rcs.el: Update Copyright.
	(vc-rcs-rename-file): New function.
	(vc-rcs-diff): Remove unused `backend' variable.

	* vc-hooks.el: Update Copyright.
	(vc-backend): Don't accept a nil argument any more.
	(vc-up-to-date-p): Turn into a defsubst.
	(vc-possible-master): New function.
	(vc-check-master-templates): Use `vc-possible-master' and allow
	funs in vc-X-master-templates to return a non-existent file.

	* vc-cvs.el: Update Copyright.
	(vc-cvs-diff): Remove unused `backend' variable.
Stefan Monnier's avatar
Stefan Monnier committed
753
	(vc-cvs-checkout): Only toggle read-only if the buffer is setup right.
754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833

	* vc-cvs-hooks.el: Preload a proto vc-cvs-registered.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-rcs-hooks.el (vc-rcs-registered): Provide a trivial version
	since it can be called from vc-rcs.el.
	(vc-rcs-parse-locks): Cleanup to remove an n^2 behavior.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-version-diff): Expand file name read from the
	minibuffer.  Handle the case when a previous version number can't
	be guessed.  Give suitable messages when there were no differences
	found.
	(vc-clear-headers): Call backend-specific implementation, if one
	exists.
	(vc-cancel-version): Made error checks generic.  When done, clear
	headers generically, too.

	* vc-rcs.el (vc-rcs-clear-headers): New function; code moved here
	from vc-clear-headers in vc.el.

	* vc-rcs-hooks.el (vc-rcs-fetch-master-state): Use vc-parse-buffer
	correctly.
	(vc-rcs-latest-on-branch-p): Made second argument VERSION
	optional.  Handle the case when it's not there.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-locking-user): Moved from vc-hooks.el.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-hooks.el (vc-loadup): Remove.
	(vc-find-backend-function): Use `require'.  Also, handle the case
	where vc-BACKEND-hooks.el doesn't exist.
	(vc-call-backend): Cleanup.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-rcs-hooks.el (vc-rcs-templates-grabbed,
	vc-rcs-grab-templates)
	(vc-rcs-registered): Remove.  The default function works as well.
	* vc-sccs-hooks.el (vc-sccs-templates-grabbed,
	vc-sccs-grab-templates)
	(vc-sccs-registered): Remove.  The default function works as well.

	* vc.el (vc-version-diff): Left out a vc- in call to
	vc-call-backend.
	(vc-default-dired-state-info, vc-default-record-rename)
	(vc-default-merge-news): Update for the new backend argument.

	* vc-hooks.el (vc-find-backend-function): Return a cons cell if
	using the default function.
	(vc-call-backend): If calling the default function, pass it the
	backend as first argument.  Update the docstring accordingly.
	(vc-default-state-heuristic, vc-default-mode-line-string): Update
	for the new backend argument.
	(vc-make-backend-sym): Renamed from vc-make-backend-function.
	(vc-find-backend-function): Use the new name.
	(vc-default-registered): New function.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-merge): Use vc-find-backend-function.

	* vc-hooks.el (vc-backend-functions): Remove.
	(vc-loadup): Don't setup 'vc-functions.
	(vc-find-backend-function): New function.
	(vc-call-backend): Use above fun and populate 'vc-functions
	lazily.
	(vc-backend-defines): Remove.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-register): Put a FIXME note for a newly found bug.
	Call vc-call-backend without the leading vc-.
	(vc-responsible-backend, vc-finish-logentry, vc-annotate)
	(vc-check-headers): Call vc-call-backend without the leading vc-.
Stefan Monnier's avatar
Stefan Monnier committed
834
	(vc-annotate-time-span): Replace confusing use of `cond' with `or'.
835 836 837 838 839 840 841 842 843
	(vc-annotate-display): Replace confusing use of `cond' with `or'.
	Call vc-call-backend without the leading vc-.

	* vc-cvs.el (tail): Provide vc-cvs.
	* vc-sccs.el (tail): Provide vc-sccs.
	* vc-rcs.el (tail): Provide vc-rcs and remove vc-rcs-logentry-check.

	* vc-hooks.el (vc-backend-hook-functions, vc-backend-functions)
	(vc-make-backend-function, vc-call): Pass names without leading
Stefan Monnier's avatar
Stefan Monnier committed
844
	`vc-' to vc-call-backend so we can blindly prefix them with vc-BACKEND.
845 846 847 848 849 850 851 852 853 854 855 856 857
	(vc-loadup): Don't load vc-X-hooks if vc-X is requested.
	(vc-call-backend): Always try to load vc-X-hooks.
	(vc-registered): Remove vc- in call to vc-call-backend.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-process-filter): New function.
	(vc-do-command): Setup `vc-process-filter' for the async process.
	(vc-maybe-resolve-conflicts): New function to reduce
	code-duplication.  Additionally, it puts the buffer in
	`smerge-mode' if applicable.
	(vc-next-action-on-file): Use `vc-maybe-resolve-conflicts' after
	calling `merge-news'.
Stefan Monnier's avatar
Stefan Monnier committed
858
	(vc-merge): Use `vc-maybe-resolve-conflicts' after calling `merge'.
859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874
	(vc-log-edit): New function.  Replacement for `vc-log-mode' by
	interfacing to log-edit.el.
	(vc-start-entry): Call `vc-log-edit' instead of `vc-log-mode' if
	log-edit is available.
	(vc-resolve-conflicts): Delegate to `smerge-ediff' if available.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-register): Remove `vc-buffer-backend' setup.
	(vc-log-mode-map): New name for vc-log-entry-mode and merge the
	defvar and the initialization.
	(vc-log-mode): Minor docstring fix and use vc-log-mode-map.

	* vc-hooks.el (vc-default-back-end, vc-buffer-backend): Remove.
	(vc-kill-buffer-hook): Remove `vc-buffer-backend' handling.

Stefan Monnier's avatar
Stefan Monnier committed
875
	* vc-cvs-hooks.el (vc-handle-cvs): Make it a defvar and add a FIXME.
876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-file-clear-masterprops): Removed.
	(vc-checkin, vc-revert-buffer): Removed calls to the above.
	(vc-version-diff): Use buffer-size without argument.
	(vc-register): Heed vc-initial-comment.

	* vc-rcs-hooks.el (vc-rcs-fetch-master-state): Fix regexp for
	default branch.

	* vc-rcs.el (vc-rcs-register): Parse command output to find master
	file name and workfile version.
	(vc-rcs-checkout): Removed call to vc-file-clear-masterprops.

	* vc-cvs.el (vc-cvs-merge-news, vc-cvs-checkout): Removed call to
	vc-file-clear-masterprops.

	* vc-sccs.el (vc-sccs-checkout): Removed call to
	vc-file-clear-masterprops.  If writable, set vc-state to 'edited
	rather than user login name.


2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-workfile-unchanged-p): Remove unused argument
	`want-differences-if-changed' and simplify.
	(vc-next-action-on-file) [needs-merge]: Resynch the buffer.
	(vc-revert-buffer): Use `unchanged-p' rather than vc-diff's status
	output (which is invalid for async vc-diff) to decide whether to
	do the revert silently or not.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-hooks.el (vc-loadup): Load files quietly.
	(vc-call-backend): Oops, brain fart.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-cvs.el (vc-cvs-state): Typo.
Stefan Monnier's avatar
Stefan Monnier committed
916
	(vc-cvs-merge-news): Return the status code rather than the error msg.
917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (with-vc-file, vc-next-action, vc-version-diff)
	(vc-dired-mark-locked): Replaced usage of vc-locking-user with
	vc-state or vc-up-to-date-p.
	(vc-merge): Use vc-backend-defines to check whether merging is
	possible.  Set state to 'edited after successful merge.

	* vc-hooks.el (vc-locking-user): If locked by the calling user,
	return that name.  Redocumented.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc.el (vc-recompute-state, vc-next-action-on-file): Update to
	new `vc-state' semantics.
	(vc-finish-steal): Set 'vc-state to 'edited rather than setting
	'vc-locking-user to the current user.
	(vc-merge): Inline vc-backend-merge.  Comment out code that I
	don't understand and hence can't adapt to the new `vc-state' and
	`vc-locking-user' semantics.
	(vc-backend-merge): Remove.

	* vc-{sc,r}cs.el (vc-{sc,r}cs-check{in,out}): Update 'vc-state
	rather than 'vc-locking-user.

	* vc-rcs-hooks.el (vc-rcs-consult-headers): Adapt to new `vc-state'.

	* vc-hooks.el (vc-user-login-name): Simplify the code a tiny bit.
	(vc-state): Don't use 'reserved any more.  Just use the same
	convention as the one used for vc-<backend>-state where the
	locking user (as a string) is returned.
	(vc-locking-user): Update, based on the above convention. The
	'vc-locking-user property has disappeared.
Stefan Monnier's avatar
Stefan Monnier committed
951
	(vc-mode-line, vc-default-mode-line-string): Adapt to new `vc-state'.
952 953 954 955 956 957 958 959 960 961 962 963

	* vc-cvs.el (vc-cvs-state): Don't overwrite a non-heuristic state
	with a heuristic one.
	(vc-cvs-merge-news): Just use 'edited for the case with conflicts.
	(vc-cvs-checkin): Do a trivial parse to set the state in case of
	error.  That allows us to get to 'needs-merge even in the
	stay-local case.  There's still no way to detect 'needs-patch in
	such a setup (or to force an update for that matter).
	(vc-cvs-logentry-check): Remove, the default works as well.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

Stefan Monnier's avatar
Stefan Monnier committed
964
	* vc-cvs.el (vc-cvs-print-log, vc-cvs-diff): Run cvs asynchronously.
965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988

	* vc.el (vc-do-command): kill-all-local-variables, to reset any
	major-mode in which the buffer might have been put earlier.  Use
	`remove' and `when'.  Allow `okstatus' to be `async' and use
	`start-process' in this case.
	(vc-version-diff): Handle the case where the diff looks empty
	because of the use of an async process.

2000-09-04  Andre Spiegel  <spiegel@gnu.org>

	* vc.el (vc-next-action-on-file): Removed optional parameter
	`simple'.  Recompute state unconditionally.
	(vc-default-toggle-read-only): Removed.

	* vc-hooks.el (vc-backend-functions): Removed vc-toggle-read-only.
	(vc-toggle-read-only): Undid prev change.

	* vc-cvs.el (vc-cvs-stay-local): Renamed from
	vc-cvs-simple-toggle.  Redocumented.
	(vc-cvs-state): If locality is wanted, use vc-cvs-state-heuristic.
	(vc-cvs-toggle-read-only): Removed.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

Stefan Monnier's avatar
Stefan Monnier committed
989
	* vc.el (vc-backend-dispatch, vc-annotate-mode-syntax-table): Remove.
990 991 992 993 994 995 996 997
	(vc-prefix-map): Move from vc-hooks.el and make autoloaded.
	(vc-release-greater-or-equal-p): Move to vc-rcs.el.
	(vc-file-clear-masterprops): Braindead "fix".  It was a nop and
	still is. So maybe it should be removed.
	(vc-head-version, vc-find-binary): Remove.
	(vc-recompute-state): Move from vc-hooks.el.
	(vc-next-action-on-file): Add a `simple' argument to allow
	avoiding the `recompute' step (use for vc-cvs-simple-toggle).
Stefan Monnier's avatar
Stefan Monnier committed
998 999
	(vc-default-toggle-read-only, vc-default-record-rename): New funs.
	(vc-next-action, vc-dired-hook): Use vc-state instead of vc-cvs-status.
1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023
	(vc-dired-mode-map): Properly defvar it.
	(vc-print-log): Call log-view-mode if available.
	(small-temporary-file-directory): defvar instead of use boundp.
	(vc-merge-news): Moved to vc-cvs.el.
	(vc-default-merge-news): New function.

	* vc-sccs.el: Require 'vc and 'vc-sccs-hooks.
	(vc-sccs-register-switches): New var, copied off of vc-rcs-hooks.
	(vc-sccs-latest-on-branch-p): Add a `FIXME' for a call to the
	unknown `vc-latest-version' function.  It should probably refer to
	vc-workfile-version or somesuch, but it's very unclear to me and I
	don't have SCCS to test things.

	* vc-sccs-hooks.el: Provide 'vc-sccs-hooks.
	(vc-sccs-state-heuristic): Fix typo.
	(vc-sccs-workfile-unchanged-p): Add missing argument.

	* vc-rcs.el: Require vc and vc-rcs-hooks.
	(vc-rcs-trunk-p, vc-rcs-branch-part): Move to vc-rcs-hooks.
	(vc-rcs-backend-release-p): Remove (use vc-rcs-release-p).
	(vc-release-greater-or-equal-p): Move from vc.
	(vc-rcs-trunk-p, vc-rcs-branch-p, vc-rcs-branch-part,
	vc-rcs-minor-part, vc-rcs-previous-version): Remove duplicates.
	(vc-rcs-checkout): Add a missing `new-version' argument in the
Stefan Monnier's avatar
Stefan Monnier committed
1024
	call to vc-rcs-latest-on-branch-p.  Hopefully that was the right one.
1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041

	* vc-rcs-hooks.el: Provide 'vc-rcs-hooks.
	(vc-rcs-trunk-p, vc-rcs-branch-part): Moved from vc-rcs.el.
	(vc-rcs-latest-on-branch-p): Use the `version' argument rather
	than the apparently unbound `workfile-version'.

	* vc-hooks.el (vc-master-templates): Def the obsolete var.
	(vc-file-prop-obarray): Use `make-vector'.
	(vc-backend-functions): Add new hookable functions
	vc-toggle-read-only, vc-record-rename and vc-merge-news.
	(vc-loadup): If neither backend nor default functions exist, use
	the backend function rather than nil.
	(vc-call-backend): If the function if not bound yet, try to load
	the non-hook file to see if it provides it.
	(vc-call): New macro plus use it wherever possible.
	(vc-backend-subdirectory-name): Use neither `vc-default-back-end'
	nor `vc-find-binary' since it's only called from
Stefan Monnier's avatar
Stefan Monnier committed
1042
	vc-mistrust-permission which is only used once the backend is known.
1043 1044 1045
	(vc-checkout-model): Fix parenthesis.
	(vc-recompute-state, vc-prefix-map): Move to vc.el.

Stefan Monnier's avatar
Stefan Monnier committed
1046
	* vc-cvs.el: Require 'vc and 'vc-cvs-hooks (for compiler warnings).
1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084
	(vc-cvs-release, vc-cvs-system-release): Remove.
	(vc-cvs-use-edit, vc-cvs-simple-toggle): New config variables.
	(vc-cvs-dired-state-info): Use `cvs-state' and slightly different
	status symbols.
	(vc-cvs-parse-status, vc-cvs-state): Move from vc-cvs-hooks.el.
	(vc-cvs-toggle-read-only): First cut at a function to allow a
	cvs-status-free vc-toggle-read-only.
	(vc-cvs-merge-news): Move from cvs-merge-news in vc.el.
	(vc-cvs-checkin): Use vc-recompute-state+vc-state instead of
	vc-cvs-status.  Also set vc-state rather than vc-locking-user.
	(vc-cvs-checkout): Modify access rights directly if the user
	requested not to use `cvs edit'.  And refresh the mode line.

	* vc-cvs-hooks.el: Provide 'vc-cvs-hooks.
	(vc-cvs-state, vc-cvs-parse-status): Move to vc-cvs.el.

2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>

	* vc-cvs.el (vc-cvs-checkout): Docstring fix.  Added a `(if
	workfile' that got lost when the code was extracted from vc.el.
	And merged the tail with the rest of the code (not possible in the
	old vc.el where the tail was shared among all backends).  And
	explicitly set the state to 'edited if `writable' is set.

	* vc-cvs-hooks.el (vc-cvs-registered): Use expand-file-name.
	(vc-cvs-state): Be careful to return the value from
	vc-cvs-parse-state.
	(vc-cvs-parse-status): Use expand-file-name.  Don't set 'vc-state
	property but return it instead.  Also be careful to handle a nil
	or "" `rev' when workfile is non-nil (it was handled properly when
	workfile was nil).

	* vc.el: Removed those pesky unnecessary `(function' quotes.
	(vc-annotate-mode-map, vc-annotate-mode-syntax-table): Initialize
	directly in the defvar.
	(vc-do-command): Bind inhibit-read-only so as to properly handle
	the case where the destination buffer has been made read-only.
	(vc-diff): Delegate to vc-version-diff in all cases.
Stefan Monnier's avatar
Stefan Monnier committed
1085
	(vc-version-diff): Setup the *vc-diff* buffer as was done in vc-diff.
1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107
	(vc-annotate-mode-variables): Removed (code moved partly to
	defvars and partly to vc-annotate-add-menu).
	(vc-annotate-mode): Turned into a derived-mode.
	(vc-annotate-add-menu): Moved in code in
	vc-annotate-mode-variables.
	(vc-update-change-log): Use make-temp-file if available.

2000-09-04  Martin Lorentzson  <martinl@delysid.gnu.org>

	* vc-cvs.el (vc-cvs-revert,vc-cvs-checkout): References to
	`vc-checkout-model' updated to `vc-cvs-update-model'.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc.el (vc-next-action-on-file): Added handling of state
	`unlocked-changes'.
	(vc-checkout-carefully): Is now practically obsolete, unless the
	above is too slow to be enabled unconditionally.
	(vc-update-change-log): Fixed typo.

	* vc-sccs.el (vc-sccs-steal-lock): Renamed from `vc-sccs-steal'.

Stefan Monnier's avatar
Stefan Monnier committed
1108 1109 1110
	* vc-sccs-hooks.el (vc-sccs-state): Somewhat rewritten.
	Now handles state `unlocked-changes'.
	(vc-sccs-workfile-unchanged-p): New function, to support the above.
1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141

	* vc-rcs.el (vc-rcs-steal-lock): Renamed from `vc-rcs-steal'.

	* vc-rcs-hooks.el (vc-rcs-state): Fixed typo.
	(vc-rcs-fetch-master-state): Bug fixes.  Recognize state
	`unlocked-changes'.
	(vc-rcs-workfile-unchanged-p): Renamed from
	`vc-rcs-workfile-unchanged'.  This is not a real backend-specific
	function yet, but supposed to become one soon.

	* vc-hooks.el (vc-backend-functions): Renamed `vc-steal' to
	`vc-steal-lock'.
	(vc-call-backend): Changed error message.
	(vc-state): Added description of state `unlocked-changes'.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-cvs-hooks.el (vc-cvs-registered): Fixed bug that caused it to
	always return t in CVS-controlled directories.

	* vc.el (vc-responsible-backend): New function.
	(vc-register): Largely rewritten.
	(vc-admin): Removed (implementation moved into vc-register).
	(vc-checkin): Redocumented.
	(vc-finish-logentry): If no backend defined yet (because we are in
	the process of registering), use the responsible backend.

	* vc-hooks.el (vc-backend-hook-functions, vc-backend-functions):
	Updated function lists.
	(vc-call-backend): Fixed typo.

Stefan Monnier's avatar
Stefan Monnier committed
1142 1143 1144 1145
	* vc-sccs.el, vc-rcs.el, vc-cvs.el (vc-BACKEND-responsible-p):
	New functions.
	(vc-BACKEND-register): Renamed from `vc-BACKEND-admin'.
	Removed query option.  Redocumented.
1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-rcs.el, vc-cvs.el: Updated everything to use `vc-checkout-model'.

	* vc.el: Updated callers of `vc-checkout-required' to use
	`vc-checkout-model'.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-rcs.el (vc-rcs-backend-release-p): function added.  other
	stuff updated to reference this function instead of the old
	`vc-backend-release-p'.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-sccs-hooks.el (vc-uses-locking): Renamed to
	vc-checkout-model.  Return appropriate values.  Updated callers.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
1167
	* vc.el (vc-backend-release, vc-backend-release-p): Moved to vc-rcs.el.
1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180
	(vc-backend-revert): Function moved into `vc-revert';
	`vc-next-action' must be updated to accomodate this change.
	(vc-backend-steal): Function moved into `vc-finish-steal'.
	(vc-backend-logentry-check): Function moved into
	`vc-finish-logentry'.
	(vc-backend-printlog): Function moved into `vc-print-log'.
	(vc-backend-uncheck): Function moved into `vc-cancel-version'.
	(vc-backend-assign-name): Function moved into
	`vc-create-snapshot'.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-rcs-hooks.el, vc-cvs-hooks.el (vc-uses-locking):
Stefan Monnier's avatar
Stefan Monnier committed
1181 1182
	Rename to vc-checkout-model.  Return appropriate values.
	Update callers.
1183

Stefan Monnier's avatar
Stefan Monnier committed
1184
	* vc-hooks.el (vc-backend-hook-functions): Rename vc-uses-locking
1185
	to vc-checkout-model.
Stefan Monnier's avatar
Stefan Monnier committed
1186 1187
	(vc-checkout-required): Rename to vc-checkout-model.
	Re-implement and re-comment.
1188 1189 1190 1191
	(vc-after-save): Use vc-checkout-model.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
1192 1193 1194
	* vc.el (vc-workfile-unchanged-p,vc-diff,vc-version-diff):
	Update to use the vc-BACKEND-diff functions instead.
	`vc-diff' is now working.
1195

Stefan Monnier's avatar
Stefan Monnier committed
1196
	* vc-rcs.el (vc-rcs-logentry-check): New function.
1197

Stefan Monnier's avatar
Stefan Monnier committed
1198
	* vc-cvs.el (vc-cvs-logentry-check): New function.
1199 1200 1201 1202

	* vc-sccs.el (vc-sccs-diff): Function changed name from
	`vc-backend-diff'.  This makes `vc-diff' work.

Stefan Monnier's avatar
Stefan Monnier committed
1203
	* vc-hooks.el (vc-backend-functions): Add `vc-diff' to the list
1204
	of functions possibly implemented in a vc-BACKEND library.
Stefan Monnier's avatar
Stefan Monnier committed
1205
	(vc-checkout-required): Fix bug that caused an error to be
1206 1207
	signaled during `vc-after-save'.

Stefan Monnier's avatar
Stefan Monnier committed
1208 1209 1210
	* vc.el: Fix typo.
	This checkin is made with our new VC code base for the very first time.
	A simple `(vc-checkin (buffer-file-name))' was used to perform it.
1211 1212 1213 1214 1215 1216

	* vc-cvs.el (vc-cvs-revert,vc-cvs-checkout): Function calls to
	`vc-checkout-required' updated to `vc-cvs-uses-locking'.

	* vc-hooks.el (vc-backend-hook-functions): `vc-checkout-required'
	updated to `vc-uses-locking'.
Stefan Monnier's avatar
Stefan Monnier committed
1217
	(vc-checkout-required): Call to backend function.
1218 1219 1220 1221 1222
	`vc-checkout-required' updated to `vc-uses-locking' instead.

	* vc-rcs-hooks.el (vc-rcs-fetch-master-state): Function calls to
	`vc-checkout-required' updated to `vc-rcs-uses-locking'.

Stefan Monnier's avatar
Stefan Monnier committed
1223
	* vc.el (vc-checkin): Merge with `vc-backend-checkin' and update
1224
	to match the split into various backends.
Stefan Monnier's avatar
Stefan Monnier committed
1225
	(vc-backend-checkin): Remove.  Merge with `vc-checkin'.
1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304
	(vc-retrieve-snapshot): Bug fix.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-sccs.el (vc-sccs-release): Doc fix.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc.el (vc-next-action-on-file): Bug found and fixed.
	(vc-checkout, vc-version-other-window, vc-retrieve-snapshot)
	(vc-cancel-version): Handle of vc-BACKEND-checkout updated.

	* vc-rcs.el (vc-rcs-checkin, vc-rcs-previous-version)
	(vc-rcs-checkout): Name space cleaned up.  No more revision number
	crunching function names that are not prefixed with vc-rcs.
	(vc-rcs-checkout-model): Function added.  References to
	`vc-checkout-model' replaced.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc.el (vc-next-action-on-file): Rewritten for the new state model.
	(vc-backend-merge-news): Renamed to `vc-merge-news'.  (Specific parts
	still need to be split, and implemented for RCS).

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-sccs-hooks.el (vc-sccs-state-heuristic): Bug found and fixed.

	* vc-sccs.el (vc-sccs-admin): Added the query-only option as
	required by the vc.el file.

	* vc-rcs.el (vc-rcs-admin): Added the query-only option as
	required by the vc.el file.
	(vc-rcs-exists): Function added.

	* vc-cvs.el (vc-cvs-admin): Added the query-only option as
	required by the vc.el file.

	* vc.el (vc-admin): Updated to handle selection of appropriate
	backend.  Current implementation is crufty and need re-thinking.

	* vc-hooks.el (vc-parse-buffer): Bug found and fixed.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-cvs.el (vc-cvs-annotate-difference): Updated to handle
	beginning of annotate buffers correctly.

	* vc.el (vc-annotate-get-backend, vc-annotate-display-default)
	(vc-annotate-add-menu, vc-annotate, vc-annotate-display): Annotate
	functionality updated quite a lot to support multiple backends.
	Variables `vc-annotate-mode', `vc-annotate-buffers',
	`vc-annotate-backend' added.

	* vc-hooks.el (vc-backend-functions): `vc-annotate-command',
	`vc-annotate-difference' added to supported backend functions.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-rcs.el, vc-sccs.el, vc-cvs.el (vc-*-checkout):
	Use with-temp-file instead of /bin/sh.  Merged from mainline

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-sccs-hooks.el (vc-sccs-registered): Updated.

	* vc-rcs-hooks.el (vc-rcs-registered): Updated.

	* vc-cvs-hooks.el (vc-cvs-registered): Updated.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-hooks.el: vc-state-heuristic added to
	vc-backend-hook-functions.

	* vc-sccs-hooks.el (vc-sccs-registered): Bug fix.

	* vc-rcs-hooks.el (vc-rcs-registered): Bug fix.

Stefan Monnier's avatar
Stefan Monnier committed
1305 1306
	* vc.el, vc-sccs-hooks.el, vc-rcs-hooks.el, vc-hooks.el: Rename
	`vc-uses-locking' to `vc-checkout-required'.  Rename the `locked'
1307 1308 1309 1310 1311 1312 1313
	state to `reserved'.

	* vc-cvs.el, vc-cvs-hooks.el: Rename `vc-uses-locking' to
	`vc-checkout-required'.  Rename the `locked' state to `reserved'.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

Stefan Monnier's avatar
Stefan Monnier committed
1314
	* vc-rcs-hooks.el: Implement new state model.  Hardly anything
1315 1316
	untouched.

Stefan Monnier's avatar
Stefan Monnier committed
1317
	* vc-rcs.el (vc-rcs-latest-on-branch-p): Move to vc-rcs-hooks.el.
1318

Stefan Monnier's avatar
Stefan Monnier committed
1319
	* vc.el (vc-update-change-log): Use small-temporary-file-directory,
1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334
	if defined.  (Merged from main line, slightly adapted.)

	* vc-cvs.el (vc-cvs-annotate-difference): Handle possible
	millenium problem (merged from mainline).

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-cvs.el: Split the annotate feature into a BACKEND-specific
	part and moved the non-BACKEND stuff to vc.el.

	* vc.el: Split the annotate feature into a BACKEND specific part
	and moved it from the vc-cvs.el file to this one.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

Stefan Monnier's avatar
Stefan Monnier committed
1335 1336 1337
	* vc-hooks.el: Implement new state model.
	(vc-state, vc-state-heuristic, vc-default-state-heuristic): New funs.
	(vc-locking-user): Simplify.  Now only needed if the file is
1338
	locked by somebody else.
Stefan Monnier's avatar
Stefan Monnier committed
1339
	(vc-lock-from-permissions): Remove.  Functionality is in
1340 1341
	vc-sccs-hooks.el and vc-rcs-hooks.el now.
	(vc-mode-line-string): New name for former vc-status.  Adapted.
Stefan Monnier's avatar
Stefan Monnier committed
1342
	(vc-mode-line): Adapt to use the above.  Remove optional parameter.
1343

Stefan Monnier's avatar
Stefan Monnier committed
1344 1345
	* vc-cvs-hooks.el (vc-cvs-state, vc-cvs-state-heuristic): New funs.
	Various simplifications and adaptations all over the place.
1346

Stefan Monnier's avatar
Stefan Monnier committed
1347 1348
	* vc-sccs-hooks.el (vc-sccs-state, vc-sccs-state-heuristic): New funs.
	Simplify and adapt the rest.
1349

Stefan Monnier's avatar
Stefan Monnier committed
1350
	* vc.el (vc-resynch-window): Add TODO comment: check for
1351
	interaction with view mode according to recent RCS change.
Stefan Monnier's avatar
Stefan Monnier committed
1352
	(vc-backend-merge-news): Merge "CMUP" patch from mainline.
1353 1354 1355

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
1356
	* vc.el: Convert the remaining function comments to docstrings.
1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc.el (vc-backend-release, vc-release-greater-or-equal)
	(vc-backend-release-p, vc-trunk-p, vc-branch-p, vc-branch-part)
	(vc-minor-part, vc-previous-version): Functions that operate and
	compare revision numbers got proper documentation.  Comments added
	about their possible removal.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc.el (vc-latest-on-branch-p): Function removed and replaced in
	the vc-backend.el files.

	* vc-sccs.el (vc-sccs-latest-on-branch-p): Function added.

	* vc-rcs.el (vc-rcs-latest-on-branch-p, vc-rcs-trunk-p)
	(vc-rcs-branch-p, vc-rcs-branch-part, vc-rcs-minor-part)
	(vc-rcs-previous-version): Functions added.

	* vc-cvs.el (vc-cvs-latest-on-branch-p): Function added.

	* vc-rcs-hooks.el (vc-rcs-master-templates): Extra `)' removed.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-hooks.el (vc-master-templates): Is really obsolete.
Stefan Monnier's avatar
Stefan Monnier committed
1384
	Comment out the definition for now.  What is the right procedure
1385 1386 1387
	to get rid of it?
	(vc-registered, vc-backend, vc-buffer-backend, vc-name): Largely
	rewritten.
Stefan Monnier's avatar
Stefan Monnier committed
1388
	(vc-default-registered): Remove.
1389 1390 1391 1392 1393
	(vc-check-master-templates): New function; does mostly what the
	above did before.
	(vc-locking-user): Don't rely on the backend to set the property.

	* vc-rcs-hooks.el (vc-rcs-master-templates): Use simpler values.
Stefan Monnier's avatar
Stefan Monnier committed
1394
	Rewrite documentation.
1395 1396
	(vc-rcs-templates-grabbed): New variable.
	(vc-rcs-grab-templates): New function.
Stefan Monnier's avatar
Stefan Monnier committed
1397
	(vc-rcs-registered): Rewrite to use above mechanism.
1398 1399

	* vc-sccs-hooks.el (vc-sccs-master-templates): Use simpler values.
Stefan Monnier's avatar
Stefan Monnier committed
1400
	Rewrite documentation.
1401 1402
	(vc-sccs-templates-grabbed): New variable.
	(vc-sccs-grab-templates): New function.
Stefan Monnier's avatar
Stefan Monnier committed
1403 1404 1405
	(vc-sccs-registered): Rewrite to use above mechanism.
	(vc-sccs-search-project-dir): Rename from vc-search-sccs-project-dir.
	Don't throw the result, simply return it.
1406

Stefan Monnier's avatar
Stefan Monnier committed
1407 1408 1409
	* vc-cvs-hooks.el (vc-cvs-master-templates): Remove.
	(vc-cvs-find-master): Remove.  Code is now in vc-cvs-registered.
	(vc-cvs-registered): Does the check itself now.  Simplify.
1410

Stefan Monnier's avatar
Stefan Monnier committed
1411
	* vc-cvs.el (vc-cvs-revert): Merge and adapt "unedit" patch
1412 1413 1414 1415
	from main line.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
1416
	* vc-cvs.el (vc-cvs-diff): New function.
1417

Stefan Monnier's avatar
Stefan Monnier committed
1418
	* vc-sccs.el (vc-sccs-diff): New function.
1419

Stefan Monnier's avatar
Stefan Monnier committed
1420 1421 1422
	* vc-rcs.el (vc-rcs-diff): New function.
	(vc-rcs-checkout): Bug (typo) found and fixed.
	(vc-rcs-register-switches): New variable.
1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446

	* vc.el (vc-backend-diff): Function removed and placed in the
	backend files.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-cvs.el (vc-cvs-checkout): Function `vc-cvs-checkout' added.

	* vc.el (vc-backend-checkout): Function removed and replaced in
	the vc-backend.el files.

	* vc-sccs.el (vc-sccs-checkout): Added function `vc-sccs-checkout'.

	* vc.el (vc-backend-admin): Removed and replaced in the
	vc-backend.el files.

	* vc.el (Martin): Removed all the annotate functionality since it
	is CVS backend specific.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* spec.txt: Added specification of vc-state.

	* vc-sccs-hooks.el (vc-sccs-master-properties):
Stefan Monnier's avatar
Stefan Monnier committed
1447
	Remove handling of vc-latest-version and
1448 1449
	vc-your-latest-version.  What used to be vc-latest-version, is now
	returned as vc-workfile-version.
Stefan Monnier's avatar
Stefan Monnier committed
1450
	(vc-sccs-workfile-version): Adapt.
1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745

2000-09-04  Dave Love  <fx@gnu.org>

	* vc.el: [Merged from mainline.]
	(vc-dired-mode): Make the dired-move-to-filename-regexp
	regexp match the date, to avoid treating date as file size.
	Add YYYY S option to WESTERN/

2000-09-04  Dave Love  <fx@gnu.org>

	* vc.el: Require `compile' when compiling.
	(vc-logentry-check-hook): New option.
	(vc-steal-lock): Use compose-mail.
	(vc-dired-mode-map): Defvar when compiling.
	(vc-add-triple, vc-record-rename, vc-lookup-triple): Moved to
	vc-sccs.el and renamed.  Callers changed.
	(vc-backend-checkout, vc-backend-logentry-check)
	(vc-backend-merge-news): Doc fix.
	(vc-default-logentry-check): New function.
	(vc-backend-checkin, vc-backend-revert, vc-backend-steal)
	(vc-backend-uncheck, vc-backend-print-log, vc-backend-assign-name)
	(vc-backend-merge): Doc fix.  Use backend functions.
	(vc-check-headers): Use backend functions.

	* vc-cvs.el: Require vc when compiling.
	(vc-cvs-register-switches): Doc fix.
	(vc-annotate-color-map, vc-annotate-menu-elements): Fix custom type.
	(vc-cvs-print-log, vc-cvs-assign-name, vc-cvs-merge)
	(vc-cvs-check-headers, vc-cvs-steal, vc-cvs-revert, vc-cvs-checkin):
	New functions (code from vc.el).
	(vc-annotate-display-default): Fix interactive spec.
	(vc-annotate-time-span): Doc fix.

	* vc-rcs.el: Require vc when compiling.
	(vc-rcs-print-log, vc-rcs-assign-name, vc-rcs-merge)
	(vc-rcs-check-headers, vc-rcs-steal, vc-rcs-uncheck, vc-rcs-revert)
	(vc-rcs-checkin): New functions (code from vc.el).
	(vc-rcs-previous-version, vc-rcs-system-release, vc-rcs-checkout):
	Doc fix.
	(vc-rcs-release): Deleted.  (Duplicated vc-rcs-system-release).

	* vc-sccs.el: Require vc when compiling.
	(vc-sccs-print-log, vc-sccs-assign-name, vc-sccs-merge)
	(vc-sccs-check-headers, vc-sccs-steal, vc-sccs-uncheck)
	(vc-sccs-revert)
	(vc-sccs-checkin, vc-sccs-logentry-check): New functions (code
	from vc.el).
	(vc-sccs-add-triple, vc-sccs-record-rename)
	(vc-sccs-lookup-triple): Moved from vc.el and renamed.
	(vc-sccs-admin): Doc fix.

2000-09-04  Martin Lorentzson  <martinl@gnu.org>

	* vc-rcs.el (vc-rcs-trunk-p, vc-rcs-branch-p, vc-rcs-branch-part)
	(vc-rcs-minor-part, vc-rcs-previous-version, vc-rcs-release)
	(vc-rcs-release-p, vc-rcs-admin, vc-rcs-checkout): New functions
	from vc.el.

	* vc-sccs.el (vc-admin-sccs): Added from vc.el

	* vc-cvs.el: Moved the annotate functionality from vc.el.
	(vc-cvs-admin, vc-cvs-fetch-status): Added from vc.el.

2000-09-04  Dave Love  <fx@gnu.org>

	* vc.el (vc-backend-release): Call vc-system-release.

	* vc-sccs.el (vc-sccs-system-release):
	Renamed from vc-sccs-backend-release.

	* vc-rcs.el (vc-rcs-system-release):
	Renamed from vc-rcs-backend-release.

	* vc-cvs.el (vc-cvs-system-release):
	Renamed from vc-cvs-backend-release.

2000-09-04  Dave Love  <fx@gnu.org>

	* vc.el (vc-rcs-release, vc-cvs-release, vc-sccs-release): Moved to
	backend files.
	(vc-backend-release): Dispatch to backend functions.
	(vc-backend-release-p): Don't mention CVS, RCS.  [The SCCS case
	probably needs attention.]

	* vc-sccs.el, vc-rcs.el (vc-sccs-release): Moved from vc.el.
	(vc-sccs-backend-release): New function.

	* vc-cvs.el (vc-cvs-release): Moved from vc.el.
	(vc-cvs-backend-release): New function.

	* vc.el (vc-dired-mode, vc-dired-reformat-line, vc-dired-purge):
	Doc fix.
	(vc-fetch-cvs-status): Moved to vc-cvs.el and renamed.
	(vc-default-dired-state-info): New function.
	(vc-dired-state-info): Dispatch to backends.
	(vc-dired-hook): Doc fix.  Simplify, pending removal of CVS specifics.

	* vc-cvs.el (vc-cvs-dired-state-info, vc-cvs-fetch-status): Moved
	from vc.el and renamed.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc.el (vc-file-clear-masterprops, vc-latest-on-branch-p)
	(vc-version-other-window, vc-backend-assign-name): Removed
	references to vc-latest-version; sometimes changed into
	vc-workfile-version.

	* vc-rcs-hooks.el (vc-master-workfile-version): Renamed to
	vc-rcs-master-workfile-version.
	(vc-rcs-workfile-version): Use the above.  Don't call
	vc-latest-version (that was unreachable code, anyway).
	(vc-rcs-fetch-master-properties): Doc fix.

	* vc-hooks.el (vc-latest-version, vc-your-latest-version): Removed.
	(vc-backend-hook-functions): Removed them from this list, too.
	(vc-fetch-properties): Removed.
	(vc-workfile-version): Doc fix.

	* vc-rcs-hooks.el (vc-rcs-consult-headers): New function.
	(vc-rcs-workfile-version, vc-rcs-locking-user)
	(vc-rcs-uses-locking): Use it.

	* vc-hooks.el (vc-consult-rcs-headers):
	Moved into vc-rcs-hooks.el, under the name
	vc-rcs-consult-headers.

	* vc-cvs-hooks.el (vc-cvs-workfile-version): Don't consult RCS
	headers.
	(vc-cvs-find-master): Use this name only; correct different
	versions of the name.

	* vc-sccs-hooks.el (vc-sccs-master-locks, vc-sccs-master-locking-user):
	New functions.
	(vc-sccs-locking-user): Use the latter.

	* vc-rcs-hooks.el (vc-rcs-master-locks, vc-rcs-master-locking-user):
	New functions.

	* vc-hooks.el (vc-master-locks, vc-master-locking-user):
	Moved into both
	vc-rcs-hooks.el and vc-sccs-hooks.el.  These properties and access
	functions are implementation details of those two backends.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-rcs-hooks.el (vc-rcs-fetch-master-properties)
	(vc-rcs-parse-locks): RCS-specific code moved here from vc-hooks.

	* vc-sccs-hooks.el (vc-sccs-fetch-master-properties)
	(vc-sccs-parse-locks): SCCS-specific code moved here from
	vc-hooks.

	* vc-cvs-hooks.el (vc-cvs-fetch-master-properties): CVS-specific
	code moved here from vc-hooks.

	* vc-hooks.el (vc-parse-locks, vc-fetch-master-properties): Split
	into back-end specific parts and removed.  Callers not updated
	yet; because I guess these callers will disappear into back-end
	specific files anyway.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc.el (with-vc-file, vc-next-action-on-file, vc-merge)
	(vc-backend-checkout): Changed calls to `vc-checkout-model' to
	`vc-uses-locking'.

	* vc-hooks.el (vc-checkout-model): Renamed to vc-uses-locking.
	Store yes/no in the property, and return t/nil.  Updated all
	callers.

	* vc-sccs-hooks.el (vc-sccs-checkout-model): Renamed to
	vc-sccs-uses-locking.  Don't set property.
	(vc-sccs-locking-user): Don't set property.

	* vc-cvs-hooks.el (vc-cvs-checkout-model): Renamed to
	vc-cvs-uses-locking.  Don't set property here; leave that to
	vc-hooks.
	(vc-cvs-locking-user): Reflect above change.  Streamlined.

	* vc-rcs-hooks.el (vc-rcs-checkout-model): Renamed to
	vc-rcs-uses-locking.
	(vc-rcs-locking-user): Reflect above change.

2000-09-04  Dave Love  <fx@gnu.org>

	* vc-sccs-hooks.el (vc-sccs-checkout-model): New function.

	* vc-rcs-hooks.el (vc-rcs-checkout-model): New function.

	* vc-hooks.el (vc-checkout-model): Punt to backends.

	* vc-cvs-hooks.el (vc-cvs-checkout-model): New function.

	* vc.el (vc-fetch-cvs-status): Use renamed vc-cvs-parse-status.

	* vc-rcs-hooks.el (vc-rcs-workfile-version, vc-rcs-locking-user):
	New functions.

	* vc-sccs-hooks.el (vc-sccs-workfile-version, vc-sccs-locking-user):
	New functions.

	* vc-cvs-hooks.el (vc-handle-cvs): Doc fix.
	(vc-cvs-workfile-version, vc-cvs-locking-user): New functions.

	* vc-hooks.el (vc-default-locking-user): New function.
	(vc-locking-user, vc-workfile-version): Punt to backends.

2000-09-04  Dave Love  <fx@gnu.org>

	* vc-hooks.el (vc-rcsdiff-knows-brief, vc-rcs-lock-from-diff)
	(vc-master-workfile-version): Moved from vc-hooks.

	* vc-rcs-hooks.el: Fix duplicate code in last change.

	* vc-rcs-hooks.el: Require vc-hooks when compiling.
	(vc-rcs-master-templates): Improve :type.
	(vc-rcsdiff-knows-brief, vc-rcs-lock-from-diff,
	vc-master-workfile-version): Moved from vc-hooks.

	* vc-sccs-hooks.el: Require vc-hooks when compiling.
	(vc-sccs-master-templates): Improve :type.
	(vc-sccs-lock-file): Moved/renamed from vc-hooks.el vc-lock-file.

	* vc-hooks.el (vc-lock-file): Moved to vc-sccs-hooks and renamed.

	* vc-cvs-hooks.el: Require vc-hooks when compiling.
	(vc-cvs-master-templates): Improve :type.  Use
	vc-cvs-find-cvs-master.
	(vc-handle-cvs, vc-cvs-parse-status, vc-cvs-status): Moved here
	from vc-hooks.
	(vc-vc-find-cvs-master): Renamed to vc-cvs-find-cvs-master.

	* vc-hooks.el (vc-handle-cvs, vc-cvs-parse-status, vc-cvs-status):
	Moved to vc-cvs-hooks.

	* vc-hooks.el: Add doc strings in various places.  Simplify the
	minor mode setup.
	(vc-handled-backends): New user variable.
	(vc-parse-buffer, vc-insert-file, vc-default-registered): Minor
	simplification.

2000-09-04  Dave Love  <fx@gnu.org>

	* vc.el: Some doc fixes for autoloaded and interactive functions.
	Fix compilation warnings from ediff stuff.
	(vc-rcs-release, vc-cvs-release, vc-sccs-release): Custom fix.

	* vc-sccs-hooks.el (vc-sccs-master-templates): Add :version.

	* vc-cvs-hooks.el (vc-cvs-master-templates): Add :version.

	* vc-rcs-hooks.el (vc-rcs-master-templates): Add :version.

2000-09-04  Dave Love  <fx@gnu.org>

	* vc-hooks.el (vc-backend-hook-functions, vc-backend-functions):
	New variable.
	(vc-make-backend-function, vc-loadup, vc-call-backend)
	(vc-backend-defines): New functions.

	* vc-hooks.el: Various doc fixes.
	(vc-default-back-end, vc-follow-symlinks): Custom fix.
	(vc-match-substring): Function removed.  Callers changed to use
	match-string.
	(vc-lock-file, vc-consult-rcs-headers, vc-kill-buffer-hook):
	Simplify.

2000-09-04  Dave Love  <fx@gnu.org>

	* vc-sccs-hooks.el (vc-sccs-master-templates): Fix doc, custom
	type.
	(vc-sccs-project-dir, vc-search-sccs-project-dir)
	(vc-sccs-registered): Doc fix.

	* vc-cvs-hooks.el (vc-cvs-master-templates): Fix doc, custom type.
	(vc-cvs-registered): Doc fix.

	* vc-rcs-hooks.el (vc-rcs-master-templates): Fix doc, custom type.
	(vc-rcs-registered): Doc fix.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-rcs-hooks.el, vc-cvs-hooks.el, vc-sccs-hooks.el: New file.

	* vc-hooks.el: vc-registered has been renamed
	vc-default-registered.  Some functions have been moved to the
	backend specific files.  they all support the
	vc-BACKEND-registered functions.

2000-09-04  Andre Spiegel  <spiegel@inf.fu-berlin.de>

	* vc-hooks.el: This is 1998-11-11T18:47:32Z!kwzh@gnu.org from the emacs sources

	* vc.el: This is 1999-03-13T05:04:24Z!kwzh@gnu.org from the emacs sources

1746 1747
2000-09-04  Dave Love  <fx@gnu.org>

1748 1749 1750 1751 1752 1753
	* mouse.el (mouse-major-mode-menu, mouse-popup-menubar): Run
	menu-bar-update-hook.

	* help.el (help-manyarg-func-alist): Add
	find-operation-coding-system.

1754 1755 1756 1757 1758
	* wid-edit.el (widget-sexp-validate): Fix garbled code.

	* custom.el (custom-set-variables): Print message about errors in
	setting.

Andrew Innes's avatar
Andrew Innes committed
1759 1760 1761 1762
2000-09-03  Andrew Innes  <andrewi@gnu.org>

	* makefile.w32-in: Change to DOS line endings.

1763 1764 1765 1766 1767
2000-09-02  Eli Zaretskii  <eliz@is.elta.co.il>

	* mouse.el (mouse-popup-menubar): Supply the prompt string for
	minor-mode keymaps, if they don't have one.

1768 1769 1770 1771 1772
2000-09-02  Eli Zaretskii  <eliz@is.elta.co.il>

	* eshell/esh-module.el (eval-when-compile): Don't lose if
	esh-module.el's file name is truncated to DOS 8+3 limits.

John Wiegley's avatar
John Wiegley committed
1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797
2000-09-01  John Wiegley  <johnw@gnu.org>

	* pcomplete.el (pcomplete-dirs-or-entries): Added a missing
	predicate, which caused entries in the completion list to be
	doubled.

2000-08-30  John Wiegley  <johnw@gnu.org>

	* eshell/esh-mode.el (eshell-mode): Bound C-c M-d to toggle direct
	sending to subprocesses.  Also, hook pre-command-hook if
	`eshell-send-direct-to-subprocesses' is non-nil.
	(eshell-send-direct-to-subprocesses): New config variable.  If t,
	subprocess input is send immediately.
	(eshell-toggle-direct-send): New function.
	(eshell-self-insert-command): New function.
	(eshell-intercept-commands): New function.
	(eshell-send-input): If direct subprocess sending is enabled,
	don't echo any input to the Eshell buffer.  Let the subprocess
	handle that.  This requires "stty echo" in bash, for example.

2000-08-28  John Wiegley  <johnw@gnu.org>

	* eshell/esh-var.el (pcomplete/eshell-mode/unset): Added
	completion function for Eshell's implementation of `unset'.

1798 1799 1800 1801
2000-09-02  Eli Zaretskii  <eliz@is.elta.co.il>

	* info.el (Info-directory-list): Doc fix.

Peter Breton's avatar
Peter Breton committed
1802 1803 1804 1805 1806
2000-08-31  Peter Breton  <pbreton@ne.mediaone.net>

	* filecache.el (file-cache-add-directory-using-find): Don't quote 
	wildcards on MS-DOS. Suggested by Eli Zaretskii <eliz@is.elta.co.il>.

Kenichi Handa's avatar
Kenichi Handa committed
1807 1808 1809 1810 1811
2000-08-31  Kenichi Handa  <handa@etl.go.jp>

	* help.el (help-make-xrefs): Don't make hyperlinks for incorrect
	coding systems.

Andrew Innes's avatar
Andrew Innes committed
1812 1813 1814 1815 1816 1817
2000-08-30  Andrew Innes  <andrewi@gnu.org>

	* timer.el (run-with-idle-timer): Undo last change, so that timer
	is not activated immediately if Emacs is already idle.  Some
	existing code relies on this behaviour.

Miles Bader's avatar
Miles Bader committed
1818 1819 1820 1821 1822
2000-08-30  Miles Bader  <miles@gnu.org>

	* frame.el (set-frame-font): Do completion of font-name for
	interactive use.

Kenichi Handa's avatar
Kenichi Handa committed
1823 1824 1825 1826 1827
2000-08-30  Kenichi Handa  <handa@etl.go.jp>

	* international/quail.el (quail-start-translation): Bind locally
	last-command-event, last-command, and this-command.
	(quail-start-conversion): Likewise.
Kenichi Handa's avatar
Kenichi Handa committed
1828
	(quail-self-insert-command): Fix docstring.
Kenichi Handa's avatar
Kenichi Handa committed
1829

1830 1831 1832 1833 1834 1835
2000-08-29  Gerd Moellmann  <gerd@gnu.org>

	* progmodes/executable.el
	(executable-make-buffer-file-executable-if-script-p): Check that
	buffer contains at least 2 characters.

Eli Zaretskii's avatar
Eli Zaretskii committed
1836 1837 1838 1839
2000-08-29  Eli Zaretskii  <eliz@is.elta.co.il>

	* help.el (help-make-xrefs, help-xref-mule-regexp): Doc fix.

Dave Love's avatar
Dave Love committed
1840 1841
2000-08-29  Dave Love  <fx@gnu.org>

Dave Love's avatar
Dave Love committed
1842 1843 1844 1845 1846
	* diff-mode.el (diff-mode) <defgroup>: Add :version.
	(diff-mode-shared-map): Bind mouse-2.
	(diff-imenu-generic-expression): New variable.
	(diff-mode): Use it.

Dave Love's avatar
Dave Love committed
1847 1848 1849 1850
	* mouse.el (mouse-major-mode-menu): Use local-key-binding.
	(mouse-popup-menubar): Add minor mode menus.
	(popup-menu): Check for lookup-key returning number.

Miles Bader's avatar
Miles Bader committed
1851 1852 1853 1854 1855
2000-08-29  Miles Bader  <miles@gnu.org>

	* comint.el (comint-send-input): Create overlays using the proper
	front/read-advance arguments.
	
1856 1857 1858 1859 1860 1861 1862 1863 1864
2000-08-29  Vinicius Jose Latorre  <vinicius@cpqd.com.br>

	* ps-print.el: Even/odd pages printing.  Doc fix.
	(ps-print-version): New version number (6.0).
	(ps-setup, ps-print-page-p, ps-background-text, ps-background-image)
	(ps-background, ps-begin-file, ps-begin-job): Code fix.
	(ps-print-duplex-feature): Variable eliminated.
	(ps-even-or-odd-pages): New variable.

1865
	* progmodes/ebnf2ps.el: Doc fix.
Gerd Moellmann's avatar
Gerd Moellmann committed
1866 1867 1868 1869 1870
	(ebnf-version): New version (3.3).
	(ebnf-user-arrow): Change variable customization to sexp.
	(ebnf-user-arrow): Function eliminated.
	(ebnf-eps-finish-and-write, ebnf-insert-ebnf-prologue): Code fix.
	
Kenichi Handa's avatar
Kenichi Handa committed
1871 1872
2000-08-29  Kenichi Handa  <handa@etl.go.jp>

1873
	* help.el (help-xref-mule-regexp): New variable.
Kenichi Handa's avatar
Kenichi Handa committed
1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893
	(help-make-xrefs): Handle help-xref-mule-regexp.

	* international/mule-cmds.el (help-xref-mule-regexp-template): New
	variable.
	(describe-input-method): Temporarily activate the specfied input
	method to display the information.
	(describe-language-environment): Hyperlinks to mule related items.

	* international/mule-diag.el (charset-multibyte-form-string): New
	function.
	(list-character-sets-1): Use charset-multibyte-form-string.
	(describe-character-set): New function.
	(describe-coding-system): Hyperlinks to safe character sets.

	* international/quail.el (quail-help): New arg PACKAGE.
	Hyperlinks to mule related items.
	(quail-help-insert-keymap-description): Use
	substitute-command-keys instead of describe-bindings.
	(quail-translation-help): Hyperlinks to mule related items.

John Wiegley's avatar
John Wiegley committed
1894 1895
2000-08-28  John Wiegley  <johnw@gnu.org>

John Wiegley's avatar
John Wiegley committed
1896 1897 1898 1899
	* eshell/esh-util.el (eshell-flatten-list): It's not too wise to
	have a defsubst call itself.  Made `eshell-flatten-list' back into
	a function again.

John Wiegley's avatar
John Wiegley committed
1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910
	* eshell/em-smart.el (eshell-smart-redisplay): Added a safety
	catch, in case re-centering point at bottom messes up the display.
	This happens frequently in Emacs 21, due I believe to variable
	line heights.

	* eshell/esh-mode.el (eshell-find-tag): Require `etags', in order
	to call `find-tag-interactive'.

	* eshell/em-dirs.el (eshell/cd): Use buffered printing to display
	the list of remember directories.

John Wiegley's avatar
John Wiegley committed
1911 1912 1913 1914
2000-08-28  John Wiegley  <johnw@gnu.org>

	* align.el: Test align-region-separate to see if it's a symbol.

1915
2000-08-28  John Wiegley  <johnw@gnu.org>
John Wiegley's avatar
John Wiegley committed
1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001

	* eshell/esh-util.el (eshell-flatten-list): Made this function
	into a defsubst form.  It gets used very frequently, although
	calls don't occur all that often.

	* eshell/em-dirs.el (eshell/cd): Flatten the argument list before
	examining it.

	* eshell/esh-cmd.el (eshell-rewrite-while-command):
	(eshell-rewrite-for-command): Use `eshell-copy-handles' instead of
	`eshell-protect'.
	(eshell-copy-handles): Created a new macro for duplicating the
	current set of open handles.  This is needed by the looping
	functions.
	(eshell-do-eval): Fixed while and if, so that the eshell-test-body
	is not incorrectly stomped on.

	* eshell/em-cmpl.el (eshell-cmpl-use-paring): Mirror
	declaration for pcomplete-use-paring.
	(eshell-cmpl-initialize): Set pcomplete-use-paring based on the
	value of eshell-cmpl-use-paring.
	* pcomplete.el (pcomplete-use-paring): New config variable, to
	indicate whether paring should be used.
	(pcomplete-do-complete): If pcomplete-use-paring is t, pare out
	completion alternatives that have already been used.

	* eshell/esh-mode.el (eshell-repeat-argument): Added function,
	bound to C-c C-y, which will repeat the previous N arguments
	(based on prefix argument).
	(eshell-mode): Bind C-c C-y to eshell-repeat-argument.

	* eshell/esh-cmd.el (eshell/which): Don't kill the *Help* buffer
	if there is no *Help* buffer.  This is for XEmacs, which renames
	its help buffers uniquely.  TODO: Find out what the current buffer
	name to delete is.

	* eshell/esh-util.el (eshell-read-passwd-file): Only keep the
	first entry that correlates to a passwd/group number.  Later
	entries (used for group/user name aliasing to multiple IDs) are
	ignored.

	* eshell/em-xtra.el (eshell/expr): 
	* eshell/em-unix.el (eshell/du, eshell/cat, eshell/make) 
	(eshell-grep, eshell/diff, eshell/locate): 
	* eshell/em-dirs.el (eshell-dirs-substitute-cd): Flatten the
	argument list, before passing it to the system command.

	* eshell/esh-mode.el (eshell-find-tag): Added a special version of
	`find-tag' for use at final position in Eshell buffers (which
	otherwise triggers an error on Emacs 21).
	(eshell-mode): Bind M-. to `eshell-find-tag' with the Eshell
	buffer, if it is currently bound to `find-tag'.

	* pcmpl-gnu.el (pcmpl-gnu-makefile-regexps): Include GNUmakefile
	in the list of matched Makefile names.
	(pcmpl-gnu-make-rule-names): If GNUmakefile exists in the current
	directory, prefer its contents to Makefile.

	* eshell/em-dirs.el (eshell/cd): cd commands that look up
	directory parts (like "cd old new", or "cd =regexp"), are now case
	sensitive on non-Windows/DOS platforms.

	* eshell/esh-mode.el (eshell-parse-command-input): When a user
	types RET after an open delimiter (like "), display a message
	indicating that Eshell is waiting for the closing delimiter.

	* eshell/esh-var.el (eshell/unset): Added a command for unsetting
	environment variables.

	* eshell/em-unix.el (eshell/diff): Added logic to fail more
	gracefully if the user enters incorrect arguments.

	* eshell/esh-mode.el (eshell-mode): Disable auto-fill-function in
	Eshell buffers.

	* eshell/esh-var.el (eshell-interpolate-variable): 
	* eshell/esh-mode.el (eshell-move-argument): 
	* eshell/em-unix.el (eshell-du-sum-directory):
	* eshell/em-rebind.el (eshell-delchar-or-maybe-eof):
	* eshell/em-ls.el (eshell-ls-decorated-name): Use /= instead of
	(not (= ...)).

	* eshell/em-unix.el (eshell-shuffle-files): Added use of `apply',
	to ensure the `preserve' flag gets propagated when doing recursive
	directory copies.

2002
2000-08-28  Stefan Monnier  <monnier@cs.yale.edu>
John Wiegley's avatar
John Wiegley committed
2003 2004 2005 2006 2007 2008

	* eshell/em-hist.el (eshell-put-history, eshell-get-history):
	Don't convert \n into \0177 in memory.
	(eshell-read-history, eshell-write-history): Convert \n to \0177,
	and back again, when reading and writing.
	
2009
2000-08-28  Eli Zaretskii  <eliz@is.elta.co.il>
John Wiegley's avatar
John Wiegley committed
2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037

	* eshell/esh-util.el (eshell-processp): Added to relieve constant
	testing of `fboundp' on `processp'.

	* eshell/esh-proc.el (eshell/kill): Use eshell-processp.
	(eshell/jobs): Don't call process-list if it is not bound.
	(eshell-gather-process-output): Support systems where async
	subprocesses aren't supported.
	(eshell-scratch-buffer, eshell-last-sync-output-start): New
	variables.

	* eshell/esh-cmd.el (eshell-resume-eval): Handle the case when
	eshell-do-eval returns t.
	(eshell-do-pipelines-synchronously): New defmacro.
	(eshell-execute-pipeline): Call it instead of eshell-do-pipelines
	when async subprocesses aren't supported.
	(eshell-do-eval): Use eshell-processp.  Don't throw eshell-defer
	if async subprocesses aren't supported.
	(eshell-resume-command): Don't assume STATUS is a string.

	* eshell/em-unix.el (eshell/rm): Use eshell-processp.

	* eshell/esh-io.el (eshell-virtual-targets): Doc fix.
	(eshell-close-target, eshell-get-target): Use eshell-processp.
	(eshell-print, eshell-error, eshell-errorn, eshell-printn): Doc
	fix.
	(eshell-get-target, eshell-create-handles): Doc fix.

2038
2000-08-28  Miles Bader  <miles@lsi.nec.co.jp>
John Wiegley's avatar
John Wiegley committed
2039

2040
	* eshell/em-smart.el (eshell-smart-maybe-jump-to-end): Change the
John Wiegley's avatar
John Wiegley committed
2041 2042 2043 2044 2045 2046
	criterion to include commands that output something, as long as it
	leaves both the command and the end-of-buffer visible when the
	command has exited.
	(eshell-review-quick-commands): Adjust the help doc string