【发布时间】:2015-05-17 23:14:10
【问题描述】:
通常,在 emacs 上编辑 JavaScript 时,我使用 flycheck 和 jshint 来检查语法错误。所以我全局安装了jshint,.emacs文件中的以下命令在js-mode中使用flycheck:
(require 'flycheck)
(add-hook 'js-mode-hook
(lambda () (flycheck-mode t)))
但我也参与了一个项目,他们使用 eslint 来定义语法规则。我在那个项目文件夹中有一个.dir-locals.el 文件,目前它只定义了所需的表格:
((nil . ((tab-width . 4)
(js-indent-level . 4)))
(js-mode . ((tab-width . 4)
(js-indent-level . 4)))
(html-mode . ((tab-width . 4)
(sgml-basic-offset . 4))))
是否有可能,也许在.dir-locals.el 文件的帮助下,告诉 emacs 在这个特定的项目文件夹中使用 flycheck 和 eslint,同时在其余项目中继续使用 flycheck 和 jshint?我听说以下几行应该可以解决从 jshint 切换到 eslint 的问题,但我不完全确定在哪里添加它们:
(setq flycheck-disabled-checkers '(javascript-jshint))
(setq flycheck-checkers '(javascript-eslint))
(如你所料,我对设置 emacs 一点也不擅长,所以我将非常感谢具体的指导。)
【问题讨论】: