Sublime Text3如何配置jshint插件(亲测可行)

来源:互联网 发布:汉邦尚品 知乎 编辑:程序博客网 时间:2024/06/05 05:40

经过配置这一插件的坎坷之路,我得到的最佳教训就是:程序员,一定要学好英文!!!

能自己去官网研究的东西,就尽量少去看中文翻译。

Sublime Text是现在很热门的一款编辑器,当然其自身功能已经不同凡响,若有插件相助,简直如虎添翼。对于开发JavaScript的程序而言,一款合适的检测插件很必要。经过一些了解,我选择了jshint作为目标,以下为大致安装步骤。

      1.通过package control安装Sublimelinter,然后安装SublimeLinter-jshint。

      2.安装完后,注意其功能实现需要node.js支持,所以去https://nodejs.org(node.js官网)单击install进行下载安装。


3.完成后,在控制台输入npm install -g jshint

4.此时,一般情况下,你打开编辑器,会发现,已经有了语法校验。


(觉得如上操作不够详尽,可以参考:http://gaohaoyang.github.io/2015/03/26/sublimeLinter/)

然后重点来了,假如你按如上步骤操作,发现没有成功出现提示的话,请继续看下去:

出现这种情况有可能是因为node.js安装位置进行了变更(此仅为本人情况)。

1.此时可以查看SublimeLinter-jshint说明文档,有如下配置说明。依此说明进行操作。


2.请在你的node.js安装目录下搜到一个.jshintrc(不要遗漏开头的点)文件,复制下它的路径。

3.点击下图的 Tools >> SublimeLinter >> open User Settings,打开配置文件 。


4.找到jshint的“args”属性,添加如下内容:["--config", "此处为之前复制的路径"] (效果如下所示)


        5.保存修改后,重启编辑器可见检测生效。


(附:每个人、团体的编码风格和规范不一致,可以用编辑器打开.jshintrc文件进行配置。这也是jshint比jslint更受欢迎的一大特性。)

以下为作者在网上找的其中一个配置(参考一下http://my.oschina.net/u/923974/blog/306695):


{


    "curly"         : true,     // true: Require {} for every new block or scope


    "eqeqeq"        : true,     // true: Require triple equals (===) for comparison


    "immed"         : true,    // true: Require immediate invocations to be wrapped in parens e.g. `(function () { } ());`


    "latedef"       : true,    // true: Require variables/functions to be defined before being used


    "newcap"        : true,    // true: Require capitalization of all constructor functions e.g. `new F()`


    "noarg"         : true,     // true: Prohibit use of `arguments.caller` and `arguments.callee`


    "sub"           : true,     // true: Prohibit use of empty blocks


    "undef"         : true,     // true: Require all non-global variables to be declared (prevents global leaks)


    "boss"          : true,     // true: Require all defined variables be used


    "eqnull"        : true,     // true: Requires all functions run in ES5 Strict Mode


    "es3"           : true,    // {int} Max number of formal params allowed per function


    "node"          : true,    // {int} Max depth of nested blocks (within functions)


    "-W117"         : true    // {int} Max number statements per function


}


OK,就这样。使用愉快。

(作者原创手打,转载请注明。)

0 0
原创粉丝点击