branch: elpa/projectile
commit 947bb9eada4ed8c57777dd7027d1d0b373b3b0db
Author: Bozhidar Batsov <[email protected]>
Commit: Bozhidar Batsov <[email protected]>
Allow projectile-dired commands to prompt for a project
Closes #1684
With a prefix argument, projectile-dired, projectile-dired-other-window,
and projectile-dired-other-frame now prompt for a known project to open
in dired, rather than always using the current project.
---
projectile.el | 39 +++++++++++++++++++++++++++------------
1 file changed, 27 insertions(+), 12 deletions(-)
diff --git a/projectile.el b/projectile.el
index aedc66dc56..d70dffb022 100644
--- a/projectile.el
+++ b/projectile.el
@@ -5124,22 +5124,37 @@ The buffers are killed according to the value of
(message "[%s] Saved %d buffers" project-name (length
modified-buffers)))))
;;;###autoload
-(defun projectile-dired ()
- "Open `dired' at the root of the project."
- (interactive)
- (dired (projectile-acquire-root)))
+(defun projectile-dired (&optional arg)
+ "Open `dired' at the root of the project.
+With a prefix argument ARG, prompt for a known project to open in dired."
+ (interactive "P")
+ (dired (if arg
+ (projectile-completing-read
+ "Dired in project: " (projectile-relevant-known-projects)
+ :caller 'projectile-read-project)
+ (projectile-acquire-root))))
;;;###autoload
-(defun projectile-dired-other-window ()
- "Open `dired' at the root of the project in another window."
- (interactive)
- (dired-other-window (projectile-acquire-root)))
+(defun projectile-dired-other-window (&optional arg)
+ "Open `dired' at the root of the project in another window.
+With a prefix argument ARG, prompt for a known project to open in dired."
+ (interactive "P")
+ (dired-other-window (if arg
+ (projectile-completing-read
+ "Dired in project: "
(projectile-relevant-known-projects)
+ :caller 'projectile-read-project)
+ (projectile-acquire-root))))
;;;###autoload
-(defun projectile-dired-other-frame ()
- "Open `dired' at the root of the project in another frame."
- (interactive)
- (dired-other-frame (projectile-acquire-root)))
+(defun projectile-dired-other-frame (&optional arg)
+ "Open `dired' at the root of the project in another frame.
+With a prefix argument ARG, prompt for a known project to open in dired."
+ (interactive "P")
+ (dired-other-frame (if arg
+ (projectile-completing-read
+ "Dired in project: "
(projectile-relevant-known-projects)
+ :caller 'projectile-read-project)
+ (projectile-acquire-root))))
;;;###autoload
(defun projectile-vc (&optional project-root)