我如何阻止 csslint 和 jshint 在 Atom 中检查我的 EJS?
How do I stop csslint and jshint from linting my EJS in Atom?
我正在 Atom 中编辑 EJS 文件。我目前安装了 linter-csslint 和 linter-jshint 包。两者似乎都将 .ejs 文件识别为 .html 并将其标记为 HTML.
这是我看到的
如何让 linter 忽略 .ejs 文件?或者是否有针对 Atom 的特定于 EJS 的 linter?
根据该照片,您似乎安装了 language-ejs
包并且它优先识别语言。这里的问题实际上不是 linters,而是 language-html
包。
在 linter-csslint and linter-jshint, we see that both will lint on language-html
scopes. However, your file is in the language-ejs
scope. What is happening here is that Atom should be locking the scope down to just language-ejs
, but is instead mixing between that and language-html
. The reason that language-html
is also a scope here is seen here 的范围内。
所以自己解决这个问题其实很容易。您可以在本地打开 language-html
包的源代码(应该在 ~/.atom/packages/language-html/grammars/html.cson
中)并删除我上面显示的 ejs
行。然而,更好的长期解决方法是在 language-html
上提出一个你认为 ejs
不在 html
语法范围内的问题。此外,Atom 可能不应该将文件识别为具有多个语法范围,但这是一个更难解决的问题。
永久修复此问题的 PR 是 here。
您可以使用 .jshintignore
个文件 (https://jshint.com/docs/cli/#ignoring-files) 忽略所有 .ejs
个文件。我刚刚自己添加了一个来解决 Atom 中的同样问题,它似乎奏效了。
我创建了 ~/.jshintignore
,内容如下:
*.ejs
值得注意的是,这会影响使用 jshint 的任何其他内容。
您可以转到软件包并禁用该特定软件包。
我正在 Atom 中编辑 EJS 文件。我目前安装了 linter-csslint 和 linter-jshint 包。两者似乎都将 .ejs 文件识别为 .html 并将其标记为 HTML.
这是我看到的
如何让 linter 忽略 .ejs 文件?或者是否有针对 Atom 的特定于 EJS 的 linter?
根据该照片,您似乎安装了 language-ejs
包并且它优先识别语言。这里的问题实际上不是 linters,而是 language-html
包。
在 linter-csslint and linter-jshint, we see that both will lint on language-html
scopes. However, your file is in the language-ejs
scope. What is happening here is that Atom should be locking the scope down to just language-ejs
, but is instead mixing between that and language-html
. The reason that language-html
is also a scope here is seen here 的范围内。
所以自己解决这个问题其实很容易。您可以在本地打开 language-html
包的源代码(应该在 ~/.atom/packages/language-html/grammars/html.cson
中)并删除我上面显示的 ejs
行。然而,更好的长期解决方法是在 language-html
上提出一个你认为 ejs
不在 html
语法范围内的问题。此外,Atom 可能不应该将文件识别为具有多个语法范围,但这是一个更难解决的问题。
永久修复此问题的 PR 是 here。
您可以使用 .jshintignore
个文件 (https://jshint.com/docs/cli/#ignoring-files) 忽略所有 .ejs
个文件。我刚刚自己添加了一个来解决 Atom 中的同样问题,它似乎奏效了。
我创建了 ~/.jshintignore
,内容如下:
*.ejs
值得注意的是,这会影响使用 jshint 的任何其他内容。
您可以转到软件包并禁用该特定软件包。