Function: project-find-dir
project-find-dir is an autoloaded, interactive and byte-compiled
function defined in project.el.gz.
Signature
(project-find-dir)
Documentation
Start Dired in a directory inside the current project.
Probably introduced at or before Emacs version 28.1.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/project.el.gz
;;;###autoload
(defun project-find-dir ()
"Start Dired in a directory inside the current project."
(interactive)
(let* ((project (project-current t))
(all-files (project-files project))
(completion-ignore-case read-file-name-completion-ignore-case)
;; FIXME: This misses directories without any files directly
;; inside. Consider DIRS-ONLY as an argument for
;; `project-files-filtered', and see
;; https://stackoverflow.com/a/50685235/615245 for possible
;; implementation.
(all-dirs (mapcar #'file-name-directory all-files))
(dir (funcall project-read-file-name-function
"Dired"
;; Some completion UIs show duplicates.
(delete-dups all-dirs)
nil 'file-name-history)))
(dired dir)))