diff options
| author | Bozhidar Batsov <bozhidar@batsov.dev> | 2026-02-15 18:22:17 +0200 |
|---|---|---|
| committer | Bozhidar Batsov <bozhidar@batsov.dev> | 2026-02-15 18:22:17 +0200 |
| commit | 0368fa77916840e2a506f9bdecde27c3a8eeb68c (patch) | |
| tree | b0e011ea0141035bade7b116bb55fb7c18433076 | |
| parent | dd06dfd912656d41f2c63066aa8bacb898ddf7a2 (diff) | |
Allow projectile-dired commands to prompt for a projectfeature/1684-dired-prefix-arg
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.
| -rw-r--r-- | projectile.el | 39 |
1 files changed, 27 insertions, 12 deletions
diff --git a/projectile.el b/projectile.el index 6c5306b..456da03 100644 --- a/projectile.el +++ b/projectile.el @@ -5049,22 +5049,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) |
