From df0f2a5f3b6c4e439215245d19f9e9cadb742581 Mon Sep 17 00:00:00 2001 From: Juri Linkov Date: Mon, 29 Dec 2014 02:47:05 +0200 Subject: [PATCH] * lisp/vc/vc-dir.el (vc-dir-display-file): New command. (vc-dir-mode-map): Bind it to "\C-o". (vc-dir-menu-map): Add it to menu. Fixes: debbugs:19450 --- lisp/ChangeLog | 6 ++++++ lisp/vc/vc-dir.el | 11 +++++++++++ 2 files changed, 17 insertions(+) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index f1501799a22..6982ee9a3dd 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2014-12-29 Juri Linkov + + * vc/vc-dir.el (vc-dir-display-file): New command (bug#19450). + (vc-dir-mode-map): Bind it to "\C-o". + (vc-dir-menu-map): Add it to menu. + 2014-12-29 Dmitry Gutov * progmodes/etags.el (find-tag-other-window) diff --git a/lisp/vc/vc-dir.el b/lisp/vc/vc-dir.el index 54496b9e631..c90bf1c2343 100644 --- a/lisp/vc/vc-dir.el +++ b/lisp/vc/vc-dir.el @@ -169,6 +169,9 @@ See `run-hooks'." (define-key map [ise] '(menu-item "Isearch Files..." vc-dir-isearch :help "Incremental search a string in the marked files")) + (define-key map [display] + '(menu-item "Display in Other Window" vc-dir-display-file + :help "Display the file on the current line, in another window")) (define-key map [open-other] '(menu-item "Open in Other Window" vc-dir-find-file-other-window :help "Find the file on the current line, in another window")) @@ -273,6 +276,7 @@ See `run-hooks'." (define-key map "e" 'vc-dir-find-file) ; dired-mode compatibility (define-key map "\C-m" 'vc-dir-find-file) (define-key map "o" 'vc-dir-find-file-other-window) + (define-key map "\C-o" 'vc-dir-display-file) (define-key map "\C-c\C-c" 'vc-dir-kill-dir-status-process) (define-key map [down-mouse-3] 'vc-dir-menu) (define-key map [mouse-2] 'vc-dir-toggle-mark) @@ -755,6 +759,13 @@ that share the same state." (if event (posn-set-point (event-end event))) (find-file-other-window (vc-dir-current-file))) +(defun vc-dir-display-file (&optional event) + "Display the file on the current line, in another window." + (interactive (list last-nonmenu-event)) + (if event (posn-set-point (event-end event))) + (display-buffer (find-file-noselect (vc-dir-current-file)) + t)) + (defun vc-dir-isearch () "Search for a string through all marked buffers using Isearch." (interactive) -- 2.39.2