ST2:SublimeLinter 忽略 JSHint 设置

Posted

技术标签:

【中文标题】ST2:SublimeLinter 忽略 JSHint 设置【英文标题】:ST2: SublimeLinter ignoring JSHint settings 【发布时间】:2013-11-15 06:16:16 【问题描述】:

我一直在尝试将 SublimeLinter 配置为使用不同的 JSHint 设置,但我的设置被完全忽略了。大多数情况下,我只想能够使用双引号而不会出现 linting 错误。这是我的“用户”SublimeLinter.sublime-settings 中的内容


    "jshint_options":
    
        "evil": true,
        "regexdash": true,
        "browser": true,
        "wsh": true,
        "sub": true,
        "quotmark" : true
    

该文件肯定会被解析,因为它会在格式不正确时引发错误(有趣的是,这包括字符串用单引号引起来的情况)。它不仅忽略了引用偏好——我可以将“evil”设置为 false,它仍然会给我 eval 警告。

有什么想法吗?这是在 OSX 上。

提前致谢。

【问题讨论】:

它是否确实配置为使用 JSHint(而不是 JSLint)?另请注意,quotmark 选项采用字符串(如果您想强制使用双引号,则在您的情况下为 "double")。 evil 是您“放松”的选项,这意味着 JSHint 会警告您默认使用 eval,设置 "evil": true 将禁用警告。 【参考方案1】:

以防万一:jshint_options 在 SublimeLinter-jshint 上不再可用,现在使用 .jshintrc 文件设置设置。请参阅this 和this。

【讨论】:

【参考方案2】:

我遇到了完全相同的问题。 “sublime/preferences/package settings/js hint/set linting preferences”中的默认 .jshintrc 对我也没有任何作用。

为了修复它,我在我正在处理的 Web 项目的根文件夹中创建了一个 .jshintrc 文件。然后我通过 sublime text 打开文件夹,sublinter/jshint 选择了我的设置。

【讨论】:

【参考方案3】:

也许您的 Jshint 选项被 .jshinrc 文件覆盖。根据 SublimeLinter README 文件:

SublimeLinter 支持.jshintrc 文件。如果使用 JSHint,SublimeLinter 将递归搜索目录树(从文件位置到文件系统根目录)。此功能在JSHint README 中指定。

jshint 遵循由 node-jshint 设置的约定(尽管 node 不是必需的),并将尝试从 pwd 开始为您定位配置文件。 (或“当前工作目录”)如果这没有产生 .jshintrc 文件,它将向上移动一级(..)目录树一直到文件系统根目录。如果找到文件,它会立即停止并使用该组配置而不是“jshint_options”。

【讨论】:

以上是关于ST2:SublimeLinter 忽略 JSHint 设置的主要内容,如果未能解决你的问题,请参考以下文章

SublimeLinter-php 或 SublimeLinter-phplint

在 SublimeLinter 的 sublimelinter_executable_map 中设置相对路径

SublimeLinter javascript 与 php

是否可以使用 Visual Studio Code 的 linter 忽略特定警告?

sublimelinter-php 和 sublimelinter-phpcs 有啥区别?

SublimeLinter 3 不工作