New revision in http://www-verimag.imag.fr/~moy/bzr/dvc/moy/
------------------------------------------------------------
revno: 566
revision-id: [email protected]
parent: [email protected]
committer: Matthieu Moy <[email protected]>
branch nick: moy
timestamp: Fri 2009-08-21 15:55:25 +0200
message:
  xgit: more git-specific keys in diff-mode


=== modified file 'lisp/xgit.el'
--- a/lisp/xgit.el      2009-08-21 13:36:31 +0000
+++ b/lisp/xgit.el      2009-08-21 13:55:25 +0000
@@ -86,6 +86,11 @@
                                  ,xgit-executable nil "add" "-p" "--"
                                  ,@args)))))
 
+(defun xgit-add-patch-all ()
+  "Call `xgit-add-patch' without argument, to run plain 'git add -p'"
+  (interactive)
+  (xgit-add-patch nil))
+
 ;;;###autoload
 (defun xgit-dvc-add-files (&rest files)
   "Run git add.
@@ -321,6 +326,11 @@
   (interactive)
   (xgit-status t))
 
+(defun xgit-status-add-patch ()
+  "Run `xgit-add-patch' on selected files."
+  (interactive)
+  (xgit-add-patch (dvc-current-file-list)))
+
 (defun xgit-status-add-u ()
   "Run \"git add -u\" and refresh current buffer."
   (interactive)
@@ -348,7 +358,13 @@
 (defvar xgit-diff-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map [?A] 'xgit-status-add-u)
-    (define-key map [?R] 'xgit-status-reset-mixed)
+    (define-key map [?G ?r] 'xgit-status-reset-mixed)
+    (define-key map [?G ?p] 'xgit-status-add-patch)
+    (define-key map [?G ?P] 'xgit-add-patch-all)
+    ;; 's'taged.
+    (define-key map [?G ?s] 'xgit-diff-cached)
+    ;; 'u'nstaged.
+    (define-key map [?G ?u] 'xgit-diff-index)
     map))
 
 (easy-menu-define xgit-diff-mode-menu xgit-diff-mode-map


_______________________________________________
Dvc-dev mailing list
[email protected]
https://mail.gna.org/listinfo/dvc-dev

Reply via email to