]> code.delx.au - gnu-emacs/commitdiff
(cvs-status-checkout): New function.
authorMasatake YAMATO <jet@gyve.org>
Sun, 22 Aug 2004 04:37:44 +0000 (04:37 +0000)
committerMasatake YAMATO <jet@gyve.org>
Sun, 22 Aug 2004 04:37:44 +0000 (04:37 +0000)
(cvs-status-mode-map): Add a key definition for `cvs-status-checkout'.

lisp/ChangeLog
lisp/cvs-status.el

index 3f6a8ced5c459c69d1b29608329211d086143b30..b149e64c024bde96fa9669b597423d6d8eb44417 100644 (file)
@@ -1,3 +1,8 @@
+2004-08-22  Masatake YAMATO  <jet@gyve.org>
+
+       * cvs-status.el (cvs-status-checkout): New function.
+       (cvs-status-mode-map): Add a key definition for `cvs-status-checkout'.
+
 2004-08-21  David Kastrup  <dak@gnu.org>
 
        * net/ange-ftp.el (ange-ftp-hash-entry-exists-p)
index b03182d87e43e70ed4f3d0ddfe6a4f1a3b4ea542..b00984b60f137d1c6a54cb6cb95ed1ca09e8f27d 100644 (file)
@@ -48,7 +48,8 @@
     ("\M-n"    . cvs-status-next)
     ("\M-p"    . cvs-status-prev)
     ("t"       . cvs-status-cvstrees)
-    ("T"       . cvs-status-trees))
+    ("T"       . cvs-status-trees)
+    (">"        . cvs-status-checkout))
   "CVS-Status' keymap."
   :group 'cvs-status
   :inherit 'cvs-mode-map)
@@ -464,6 +465,25 @@ Optional prefix ARG chooses between two representations."
            ;;(sit-for 0)
            ))))))
 
+(defun-cvs-mode (cvs-status-checkout . NOARGS) (dir)
+  "Run cvs-checkout against the tag under the point.
+The files are stored to DIR."
+  (interactive 
+   (let* ((module (cvs-get-module))
+         (branch (cvs-prefix-get 'cvs-branch-prefix))
+         (prompt (format "CVS Checkout Directory for `%s%s': " 
+                        module
+                        (if branch (format "(branch: %s)" branch)
+                          ""))))
+     (list
+      (read-directory-name prompt
+                          nil default-directory nil))))
+  (let ((modules (cvs-string->strings (cvs-get-module)))
+       (flags (cvs-add-branch-prefix
+               (cvs-flags-query 'cvs-checkout-flags "cvs checkout flags")))
+       (cvs-cvsroot (cvs-get-cvsroot)))
+    (cvs-checkout modules dir flags)))
+
 (defun cvs-tree-tags-insert (tags prev)
   (when tags
     (let* ((tag (car tags))