diff options
| -rw-r--r-- | lisp/progmodes/project.el | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index cfe7fc3750a..5070bb0c8ac 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el | |||
| @@ -258,7 +258,8 @@ DIRS must contain directory names." | |||
| 258 | (defun project--value-in-dir (var dir) | 258 | (defun project--value-in-dir (var dir) |
| 259 | (with-temp-buffer | 259 | (with-temp-buffer |
| 260 | (setq default-directory dir) | 260 | (setq default-directory dir) |
| 261 | (hack-dir-local-variables-non-file-buffer) | 261 | (let ((enable-local-variables :all)) |
| 262 | (hack-dir-local-variables-non-file-buffer)) | ||
| 262 | (symbol-value var))) | 263 | (symbol-value var))) |
| 263 | 264 | ||
| 264 | (declare-function grep-read-files "grep") | 265 | (declare-function grep-read-files "grep") |
| @@ -310,12 +311,14 @@ pattern to search for." | |||
| 310 | (user-error "No matches for: %s" regexp)) | 311 | (user-error "No matches for: %s" regexp)) |
| 311 | (xref--show-xrefs xrefs nil))) | 312 | (xref--show-xrefs xrefs nil))) |
| 312 | 313 | ||
| 314 | ;;;###autoload | ||
| 313 | (defun project-find-file () | 315 | (defun project-find-file () |
| 314 | (interactive) | 316 | (interactive) |
| 315 | (let* ((pr (project-current t)) | 317 | (let* ((pr (project-current t)) |
| 316 | (dirs (project-roots pr))) | 318 | (dirs (project-roots pr))) |
| 317 | (project--find-file-in dirs pr))) | 319 | (project--find-file-in dirs pr))) |
| 318 | 320 | ||
| 321 | ;;;###autoload | ||
| 319 | (defun project-or-external-find-file () | 322 | (defun project-or-external-find-file () |
| 320 | (interactive) | 323 | (interactive) |
| 321 | (let* ((pr (project-current t)) | 324 | (let* ((pr (project-current t)) |
| @@ -326,6 +329,7 @@ pattern to search for." | |||
| 326 | 329 | ||
| 327 | ;; FIXME: Uniquely abbreviate the roots? | 330 | ;; FIXME: Uniquely abbreviate the roots? |
| 328 | (defun project--find-file-in (dirs project) | 331 | (defun project--find-file-in (dirs project) |
| 332 | (require 'xref) | ||
| 329 | (let* ((all-files | 333 | (let* ((all-files |
| 330 | (cl-mapcan | 334 | (cl-mapcan |
| 331 | (lambda (dir) | 335 | (lambda (dir) |