diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index 095c89235ae..23c6b913af0 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el @@ -1608,15 +1608,16 @@ The current buffer's `default-directory' is available as part of (dired (project-root (project-current t)))) ;;;###autoload -(defun project-vc-dir () +(defun project-vc-dir (&optional truenameize) "Run VC-Dir in the current project's root. If TRUENAMEIZE is non-nil, as it is interactively, then if the project root is a symbolic link, resolve it first. This matches the behaviour of \\[vc-dir] when invoked interactively." - (declare (interactive-only vc-dir)) - (interactive) - (vc-dir (abbreviate-file-name - (file-truename (project-root (project-current t)))))) + (interactive "p") + (let ((root (project-root (project-current t)))) + (vc-dir (if truenameize + (abbreviate-file-name (file-truename root)) + root)))) ;;;###autoload (defun project-customize-dirlocals ()