// block comments allowed on indented code with smarttabs

pull request for issue #547

This update allows for the following if the smarttabs option has been enabled:

	//[space]if(something) {
	//[space][tab]doSomething();
	//[space]}

... which is the result of block commenting out the following code in some text editors:

	if(something) {
	[tab]doSomething();
	}

The smarttabs regex is now doing a negative look-behind for a "//" prior to a [space][tab], and allowing it in that case.
Test cases have been updated to account for this addition as well.
Merge pull request #652 from bmharris/547_block_commented_code

Fix for issue # 547 - // block comments on indented code
Make 'indent' behaviour consistent.

When 'indent' is used as a comment it implies 'white' option. (see
L1973). This behaviour came to us as JSLint's legacy and is outside
of scope of this commit. This commit simply makes it so the 'indent'
option passed as an argument to JSHINT also implies 'white'.

Fixes GH-655.
Experiment to combine all JSHint repos into one.

It is beneficial to have all JSHint-related projects under
one repo. So I am starting this experiment to see how it
goes. I will try to combine JSHint, JSHint Next and Node
JSHint together into one happy program.
Move files to the appropriate directories.

This commit moves files to the appropriate directories and deletes
obsolete ones. There is 100% chance that test the tree at this
point is completely broken so if you find yourself at this commit
move to the later one.
Ported all expresso tests to nodeunit

Since we're merging projects we need just one tool for unit tests.
I really like nodeunit so I ported all expresso tests to nodeunit.

Also in this patch:

 * No more comma-first, even in tests.
 * Grunt instead of Make.
 * I removed all tests that were running JSHint against itself,
	 we will use 'grunt lint' instead.
Copied over JSHint Next source from jshint-next repo.

All tests passed with minor path modifications!
Added 'npm test' and travis config.
Swapped Grunt with ShellJS, fixed lint warnings.

So I decided to swap Grunt with ShellJS for two reasons:

 1. Grunt still ships with JSHint 0.5.9
 2. I will need to write build commands in future and shelljs
    has nice helpers for that.

In addition to that, I fixed all lint warnings in tests.
Moved NPM package (node-jshint) into the main repo.

This commit moves JSHint NPM pacakge into this repo. This change
will allow us to further support NPM package as a main wrapper
around JSHint.

To conform with other tests, I rewrote node-jshint tests using
nodeunit.
Updated non-Node platform wrappers for JSHint.
Added missing comments to cli.js
Added LICENSE and CONTRIBUTING. Updated README
Stylistic fixes for CONTRIBUTING and README
Two spaces instead of tabs in .travis.yml.

Travis-CI thinks that we're a ruby project for some reason. Hopefully
this will fix it.
Copied CLI documentation from node-jshint

Since we're merging all repos together I need to copy some docs so that we don't lose them forever.
Added an FAQ section to the README.

As any other open source project we have a number of questions that
folks keep asking over and over. This FAQ will contain answers to
such questions starting with the "How can I turn off 'mixed tabs and
spaces' warning?".
WSH: Convert numeric parameters to numbers

For some reason, WSH wrapper was passing numeric parameters as
strings and JSHint couldn't understand them. This patch converts
to numbers all parameters that can be converted.

Fixes GH-671.
Fixed stylisting warnings in JSHint wrappers.

Since I made all files to pass the same JSHint settings some
slipped through the cracks and started failing. How embarassing.
This patch fixes that.
Convert all spaces to tabs.

This commit converts all spaces to tabs. This means that if you're
reading this message while using 'git blame' feel free to skip to
the previous commit to find the real author.

Sorry about that.