Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

a JSLint server for more expedient linting

branch: master

This branch is 0 commits ahead and 0 commits behind master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 views
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.rst
Octocat-spinner-32 app.js
Octocat-spinner-32 flymake-jslint.el
Octocat-spinner-32 fulljslint.js
Octocat-spinner-32 jslint.curl
Octocat-spinner-32 package.json
README.rst

lintnode - a JSLint server for more expedient linting

I was setting up flymake-mode with JSLint, and thinking it was pretty great, but that rhino start-up cost is pretty big for a flymake application. If we just kept JSLint running, wouldn't that be a lot faster?

Then I caught a talk on the node.js server, and saw a way.

In my environment, this cuts jslint invocation time in half.

This project also depends on the Express framework, with the underscore and haml packages. I recommend installation with npm to manage these dependencies.

The jslint.curl script depends on curl, but you can easily reproduce it with any other http client.

Usage

$ node lintnode/app.js --port 3003 &
Express started at http://localhost:3003/ in development mode

$ lintnode/jslint.curl myfilthycode.js

The exit code of jslint.curl is currently not nearly as relevant as the output on standard out. The output should be fully compatible with JSLint's Rhino version.

Emacs Usage

See the included flymake-jslint.el.

Configuration

jslint_port may be passed on the node command line with the --port parameter. It defaults to 3003.

jstlint_options can be configured by passing the --exclude option to app.js. e.g.

$ node app.js --exclude nomen,undef

or

$ node app.js --set maxlen:80,node

Alternatively they can be configured within emacs by setting the variable lintnode-jslint-excludes

For documentation on JSLint's options, see JSLint options.

Support

This project is hosted at github, which has a wiki and an issue tracker:

http://github.com/davidmiller/lintnode

License

This software is distributed under the same license as JSLint, which looks like the MIT License with one additional clause:

The Software shall be used for Good, not Evil.
Something went wrong with that request. Please try again.