From 0831d50c9061dd88a9494af80e3264dad5de8647 Mon Sep 17 00:00:00 2001 From: Michael Kifer Date: Sat, 25 Jan 2003 08:09:16 +0000 Subject: [PATCH] 2003-01-25 Michael Kifer * ediff.el (ediff-revision): better defaults. * ediff-vers.el (ediff-vc-latest-version): new function. (ediff-vc-internal): use latest version instead of working version. --- lisp/ChangeLog | 7 +++++++ lisp/ediff-vers.el | 24 ++++++++++++++++++++---- lisp/ediff.el | 10 +++++----- man/ediff.texi | 1 + 4 files changed, 33 insertions(+), 9 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index aa36759dcb4..bfe0c092b4f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2003-01-25 Michael Kifer + + * ediff.el (ediff-revision): better defaults. + + * ediff-vers.el (ediff-vc-latest-version): new function. + (ediff-vc-internal): use latest version instead of working version. + 2003-01-24 Thien-Thi Nguyen * info.el (Info-extract-menu-node-name): When looking for end of menu diff --git a/lisp/ediff-vers.el b/lisp/ediff-vers.el index 88d4ea16d7b..03bc171a657 100644 --- a/lisp/ediff-vers.el +++ b/lisp/ediff-vers.el @@ -52,12 +52,28 @@ ;; end pacifier ;; VC.el support + +(defun ediff-vc-latest-version (file) + "Return the version level of the latest version of FILE in repository." + (if (fboundp 'vc-latest-version) + (vc-latest-version file) + (or (vc-file-getprop file 'vc-latest-version) + (cond ((vc-backend file) + (vc-call state file) + (vc-file-getprop file 'vc-latest-version)) + (t (error "File %s is not under version control" file)))) + )) + + (defun ediff-vc-internal (rev1 rev2 &optional startup-hooks) -;; Run Ediff on versions of the current buffer. -;; If REV2 is "" then compare current buffer with REV1. -;; If the current buffer is named `F', the version is named `F.~REV~'. -;; If `F.~REV~' already exists, it is used instead of being re-created. + ;; Run Ediff on versions of the current buffer. + ;; If REV1 is "", use the latest version of the current buffer's file. + ;; If REV2 is "" then compare current buffer with REV1. + ;; If the current buffer is named `F', the version is named `F.~REV~'. + ;; If `F.~REV~' already exists, it is used instead of being re-created. (let (file1 file2 rev1buf rev2buf) + (if (string= rev1 "") + (setq rev1 (ediff-vc-latest-version (buffer-file-name)))) (save-window-excursion (save-excursion (vc-version-other-window rev1) diff --git a/lisp/ediff.el b/lisp/ediff.el index 44eac2d7abd..351809482aa 100644 --- a/lisp/ediff.el +++ b/lisp/ediff.el @@ -1,13 +1,13 @@ ;;; ediff.el --- a comprehensive visual interface to diff & patch -;; Copyright (C) 1994, 95, 96, 97, 98, 99, 2000, 01, 02 Free Software Foundation, Inc. +;; Copyright (C) 1994, 95, 96, 97, 98, 99, 2000, 01, 02, 03 Free Software Foundation, Inc. ;; Author: Michael Kifer ;; Created: February 2, 1994 ;; Keywords: comparing, merging, patching, tools, unix -(defconst ediff-version "2.77" "The current version of Ediff") -(defconst ediff-date "March 5, 2002" "Date of last update") +(defconst ediff-version "2.78" "The current version of Ediff") +(defconst ediff-date "January 25, 2003" "Date of last update") ;; This file is part of GNU Emacs. @@ -1353,11 +1353,11 @@ Uses `vc.el' or `rcs.el' depending on `ediff-version-control-package'." (let (rev1 rev2) (setq rev1 (read-string - (format "Version 1 to compare (default: %s's working version): " + (format "Revision 1 to compare (default: %s's latest revision): " (file-name-nondirectory file))) rev2 (read-string - (format "Version 2 to compare (default: %s): " + (format "Revision 2 to compare (default: %s's current state): " (file-name-nondirectory file)))) (ediff-load-version-control) (funcall diff --git a/man/ediff.texi b/man/ediff.texi index 3628091126b..fa3774ec08c 100644 --- a/man/ediff.texi +++ b/man/ediff.texi @@ -2434,6 +2434,7 @@ Tibor Polgar (tlp00@@spg.amdahl.com), David Prince (dave0d@@fegs.co.uk), Paul Raines (raines@@slac.stanford.edu), Stefan Reicher (xsteve@@riic.at), +Charles Rich (rich@@merl.com), Bill Richter (richter@@math.nwu.edu), C.S.@: Roberson (roberson@@aur.alcatel.com), Kevin Rodgers (kevin.rodgers@@ihs.com), -- 2.39.2