Dmitry Gutov <dmitry@gutov.dev> writes:
On 21/11/2023 17:17, Spencer Baugh wrote:
(if (equal pr-dir dir-choice)
(read-directory-name "Select directory: " default-directory nil t)
+ (project--add-dir pr-dir)
pr-dir)))
...
(if (equal pr-name dir-choice)
(read-directory-name "Select directory: " default-directory nil t)
- (let ((proj (assoc pr-name choices)))
- (if (stringp proj) proj (project-root (cdr proj)))))))
+ (let* ((proj (assoc pr-name choices))
+ (root (project-root (cdr proj))))
+ (project--add-dir root)
+ root))))
I think in the (equal pr-dir dir-choice) case we want to add the
directory name entered by the user into the "history" anyway, don't
we?
Mmmmaybe? That would change behavior - currently transient projects
don't go into the project--list, and with that change they would. Do
you think they should?
I personally never use transient projects so I don't really know how
they should behave.
Though perhaps there's no need to do it here: 'project-current' calls
'project-remember-project' anyway when maybe-prompt is non-nil.
So what happens if you drop both of the above 'project--add-dir' calls?
project-prompter is also called from project-switch-project, which
doesn't call project-remember-project but should also update the history
IMO.