changeset 61245:b8fb5fb4b960

(cvs-checkout): Prompt for cvsroot as well.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sun, 03 Apr 2005 21:18:51 +0000
parents 3049c1aae6c5
children ee782d6579a8
files lisp/ChangeLog lisp/pcvs.el
diffstat 2 files changed, 20 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sun Apr 03 20:52:46 2005 +0000
+++ b/lisp/ChangeLog	Sun Apr 03 21:18:51 2005 +0000
@@ -1,3 +1,7 @@
+2005-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* pcvs.el (cvs-checkout): Prompt for cvsroot as well.
+
 2005-04-03  Glenn Morris  <gmorris@ast.cam.ac.uk>
 
 	* filesets.el (filesets-set-default): Doc fix.
@@ -7,7 +11,7 @@
 	* generic.el (define-generic-mode): Add argument to specify
 	keywords for defcustom.
 	(default-generic-mode): Specify :group.
-	
+
 	* generic-x.el: Specify :group for all generic modes.
 
 	* desktop.el (desktop-no-desktop-file-hook)
@@ -7425,8 +7429,7 @@
 
 2004-09-21  Kenichi Handa  <handa@m17n.org>
 
-	* descr-text.el (describe-char): Checking of quail activation
-	fixed.
+	* descr-text.el (describe-char): Checking of quail activation fixed.
 
 2004-09-21  Jay Belanger  <belanger@truman.edu>
 
--- a/lisp/pcvs.el	Sun Apr 03 20:52:46 2005 +0000
+++ b/lisp/pcvs.el	Sun Apr 03 21:18:51 2005 +0000
@@ -918,23 +918,28 @@
 ;;;;
 
 ;;;###autoload
-(defun cvs-checkout (modules dir flags)
+(defun cvs-checkout (modules dir flags &optional root)
   "Run a 'cvs checkout MODULES' in DIR.
 Feed the output to a *cvs* buffer, display it in the current window,
 and run `cvs-mode' on it.
 
 With a prefix argument, prompt for cvs FLAGS to use."
   (interactive
-   (list (cvs-string->strings (read-string "Module(s): " (cvs-get-module)))
-	 (read-directory-name "CVS Checkout Directory: "
-			 nil default-directory nil)
-	 (cvs-add-branch-prefix
-	  (cvs-flags-query 'cvs-checkout-flags "cvs checkout flags"))))
+   (let ((root (cvs-get-cvsroot)))
+     (if (or (null root) current-prefix-arg)
+	 (setq root (read-string "CVS Root: ")))
+     (list (cvs-string->strings (read-string "Module(s): " (cvs-get-module)))
+	   (read-directory-name "CVS Checkout Directory: "
+				nil default-directory nil)
+	   (cvs-add-branch-prefix
+	    (cvs-flags-query 'cvs-checkout-flags "cvs checkout flags"))
+	   root)))
   (when (eq flags t)
     (setf flags (cvs-flags-query 'cvs-checkout-flags nil 'noquery)))
-  (cvs-cmd-do "checkout" (or dir default-directory)
-	      (append flags modules) nil 'new
-	      :noexist t))
+  (let ((cvs-cvsroot root))
+    (cvs-cmd-do "checkout" (or dir default-directory)
+		(append flags modules) nil 'new
+		:noexist t)))
 
 (defun-cvs-mode (cvs-mode-checkout . NOARGS) (dir)
   "Run cvs checkout against the current branch.