JSHint integrated into emacs
JavaScript Emacs Lisp
Latest commit a7cc043 Mar 10, 2013 @daleharvey Merge pull request #15 from ralphtheninja/master
bumped jshint.js to r12



Integrate JSHint into Emacs via a node.js server.


jshint-mode was heavily inspired by Kevin Turners lintnode.



download or clone

$ git clone git://github.com/daleharvey/jshint-mode.git


Add the configuration to your .emacs config file:

$jshint-emacs-conf >> ~/.emacs  // or
$npm explore jshint-mode
Exploring /Users/yourname/node_modules/jshint-mode
Type 'exit' or ^D when finished

bash-3.2$ exit

or if you downloaded manually:

(add-to-list 'load-path "~/path/to/jshint-mode")
(require 'flymake-jshint)
(add-hook 'javascript-mode-hook
     (lambda () (flymake-mode t)))

Becareful: If you emacs can't find node program, maybe you should add some config to .emacs like this:

(setenv "PATH" (concat "/usr/local/bin:" (getenv "PATH")))
(setq exec-path

You can use M-x flymake-mode to turn flymake of and on, if you want to turn it on be fault, add the following to your .emacs

;; Turns on flymake for all files which have a flymake mode
(add-hook 'find-file-hook 'flymake-find-file-hook)

Using .jshintrc

By default, jshint-mode will search for the nearest .jshintrc file up the directory tree from the location of each JS file you edit.

Alternatively, you can customize the jshint-mode-jshintrc variable to set the location of a .jshintrc file that will always be used (and will be the only one used).

Note to Emacs.app users

If use Emacs.app on OS X, you need to set the following environment variables:

  • PATH - Add path to your node executable