summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/init-git.el15
1 files changed, 15 insertions, 0 deletions
diff --git a/lisp/init-git.el b/lisp/init-git.el
index 0bf98be..10413f9 100644
--- a/lisp/init-git.el
+++ b/lisp/init-git.el
@@ -18,4 +18,19 @@
;; magit keybinding
(global-set-key (kbd "C-x m") 'magit-status)
+(defun magit-visit-item-noselect (&optional other-window)
+ "Visit current item, but don't select it."
+ (interactive "P")
+ (let ((current-window (selected-window)))
+ (magit-visit-item other-window)
+ (select-window current-window)))
+
+(add-hook 'magit-status-mode-hook
+ (lambda ()
+ ;; make C-o and o behave as in dired
+ (define-key magit-status-mode-map (kbd "C-o")
+ 'magit-visit-item-noselect)
+ (define-key magit-status-mode-map (kbd "o")
+ 'magit-visit-item)))
+
(provide 'init-git)