aboutsummaryrefslogtreecommitdiff
path: root/projectile.el
diff options
context:
space:
mode:
authorJuergen Hoetzel <juergen@hoetzel.info>2022-08-02 17:55:29 +0200
committerBozhidar Batsov <bozhidar@batsov.dev>2022-08-02 19:23:52 +0300
commitd811e2b844a18855776cd7a1da68982917e82fdd (patch)
treed687c3359e5ef8cade0000c997b752a4821575fe /projectile.el
parentdc6e7ff658789e4c6cf7c32a4b4fdf22ef9bc5a3 (diff)
Add a progress reporter to recursive progress discovery
Diffstat (limited to 'projectile.el')
-rw-r--r--projectile.el14
1 files changed, 10 insertions, 4 deletions
diff --git a/projectile.el b/projectile.el
index 7688598..7002b5c 100644
--- a/projectile.el
+++ b/projectile.el
@@ -1087,10 +1087,16 @@ discover projects there."
;; sometimes that directory is an unreadable one at the root of a
;; volume. This is the case, for example, on macOS with the
;; .Spotlight-V100 directory.
- (dolist (dir (ignore-errors (directory-files directory t)))
- (when (and (file-directory-p dir)
- (not (member (file-name-nondirectory dir) '(".." "."))))
- (projectile-discover-projects-in-directory dir (1- depth))))
+ (let ((progress-reporter
+ (make-progress-reporter
+ (format "Projectile is discovering projects in %s..."
+ (propertize directory 'face 'font-lock-keyword-face)))))
+ (progress-reporter-update progress-reporter)
+ (dolist (dir (ignore-errors (directory-files directory t)))
+ (when (and (file-directory-p dir)
+ (not (member (file-name-nondirectory dir) '(".." "."))))
+ (projectile-discover-projects-in-directory dir (1- depth))))
+ (progress-reporter-done progress-reporter))
(when (projectile-project-p directory)
(let ((dir (abbreviate-file-name (projectile-project-root directory))))
(unless (member dir projectile-known-projects)