如何让flycheck在Emacs Lisp中找到所需的文件?

7
在同一个目录下有两个文件,分别为a.ela-test.ela.el
;; some functions
(provide 'a)

a-test.el

(require 'a)

flycheck在a-test.el中的require上发出警告,提示:

无法打开加载文件:a

我该如何让flycheck在同一目录下找到所需的文件?

1个回答

16

Flycheck在检查Emacs Lisp文件时不使用load-path。相反,它使用flycheck-emacs-lisp-load-path,默认为空。

要使Flycheck使用当前的load-path,请将以下内容添加到您的init.el中:

(setq-default flycheck-emacs-lisp-load-path 'inherit)

然而,我建议在您的项目中使用Cask,然后安装flycheck-cask,以便在Emacs Lisp项目中自动使用正确的加载路径和包目录。


我的当前flycheck设置init.el#L58-L65,但仍然没有成功 :( - Rangi Lin
显然,您需要在项目中使用Cask文件,并且需要使用软件包。如果只是针对init.el,Cask可能过于复杂。只需设置上述变量即可。 - user355252
谢谢你,你救了我的一天! - Pith

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接