summaryrefslogtreecommitdiff
path: root/lisp/progmodes
diff options
context:
space:
mode:
authorDmitry Gutov <dgutov@yandex.ru>2016-01-08 14:32:27 +0300
committerDmitry Gutov <dgutov@yandex.ru>2016-01-08 14:32:39 +0300
commita034dd384c995f09ecf4ec145cfc614a217b4e4e (patch)
tree546826fe67d70433a617b1d95eb323e6004a7cec /lisp/progmodes
parent30abf295e8add1afa3963de7bf4bae9aa2c71434 (diff)
downloademacs-a034dd384c995f09ecf4ec145cfc614a217b4e4e.tar.gz
Fix two project-find-file issues
* lisp/progmodes/project.el (project--value-in-dir): Temporarily set enable-local-variables to :all. (project-find-file, project-or-external-find-file): All autoloads. (project--find-file-in): Require xref.
Diffstat (limited to 'lisp/progmodes')
-rw-r--r--lisp/progmodes/project.el6
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."
(defun project--value-in-dir (var dir)
(with-temp-buffer
(setq default-directory dir)
- (hack-dir-local-variables-non-file-buffer)
+ (let ((enable-local-variables :all))
+ (hack-dir-local-variables-non-file-buffer))
(symbol-value var)))
(declare-function grep-read-files "grep")
@@ -310,12 +311,14 @@ pattern to search for."
(user-error "No matches for: %s" regexp))
(xref--show-xrefs xrefs nil)))
+;;;###autoload
(defun project-find-file ()
(interactive)
(let* ((pr (project-current t))
(dirs (project-roots pr)))
(project--find-file-in dirs pr)))
+;;;###autoload
(defun project-or-external-find-file ()
(interactive)
(let* ((pr (project-current t))
@@ -326,6 +329,7 @@ pattern to search for."
;; FIXME: Uniquely abbreviate the roots?
(defun project--find-file-in (dirs project)
+ (require 'xref)
(let* ((all-files
(cl-mapcan
(lambda (dir)