Commit Graph

45 Commits

Author SHA1 Message Date
w0rp
bdad25eefd Add a function for getting matches, and use it to simplify a lot of code 2017-04-18 00:35:53 +01:00
w0rp
e237add9fd Move path functions to their own file 2017-04-17 23:29:02 +01:00
Jon Smithers
dbf4f03607 Enable jshint to extract javascript from html 2017-04-17 00:11:39 -04:00
Rafał Cieślak
2643f9f119 Flow: Fix case where 1st msg points to different file (#477)
* Flow: Fix case where 1st msg points to different file

* Remove `bufnr` from Flow handler output

* Fix the failing test & add a new one
2017-04-16 11:45:42 +01:00
w0rp
e97dada261 #427 Implement buffer variable overrides for all linter options 2017-04-16 01:24:08 +01:00
Adriaan Zonnenberg
4b0f3257dd Remove 'col' from linters where it is hardcoded to 1 (#434)
* Remove 'col' from linters where it is hardcoded to 1

When 'col' is 1, the first column will get highlighted for no reason. It
should be 0 (which is the default).

In the scalac linter there was also a check about the outcome of
`stridx`. It would set l:col to 0 if it was -1, and then it uses
`'col': l:col + 1` to convert the outcome of `stridx` to the actual
column number. This will make 'col' equals 1 when there is no match. We
can remove the check because `-1 + 1 = 0`.

* Remove outdated comments about vcol

vcol was added as a default, and the loclists that follow these comments
do not contain 'vcol' anymore
2017-03-30 23:33:38 +01:00
w0rp
a4220b99a6 Fix #421 Automatically detect create-react-app paths 2017-03-29 00:21:27 +01:00
w0rp
3cababc83b Fix #386 report problems with eslint configuration files 2017-03-09 21:05:00 +00:00
w0rp
b2fe1b2567 Copy all loclist items returned from handlers, and set up defaults for convenience 2017-02-26 14:51:22 +00:00
w0rp
49f7ce4f6d Fix #246 Don't run flow if there's no .flowconfig 2017-02-10 22:47:56 +00:00
w0rp
b0190fd080 Merge pull request #306 from ahmedelgabri/standardjs
Add standard linter
2017-02-09 18:56:40 +00:00
Daniel Lupu
d8efd4fa73 add xo support (#304)
* add xo support

* add documentation

* Fix a screw up when fixing conflicts

* Fix it harder
2017-02-09 18:54:49 +00:00
Ahmed El Gabri
119695bd08
Add standard linter 2017-02-05 21:19:34 +01:00
w0rp
d7ed49f849 Add a script for custom checks to enforce using the abort flag for functions and trailing whitespace, and fix existing issues. 2017-01-22 14:54:57 +00:00
Zefei Xuan
2c176a234e added eslint option to pass in more options 2017-01-05 00:28:32 -08:00
w0rp
771bfe3b18 #193 Fix a parsing error for parsing errors with eslint 2016-12-22 11:16:22 +00:00
Andrey Popp
d700da8cb8 Flow linter improvements (#176)
* Fix flow linter to provide filename of the buffer

Related #173

* Fix flow linter not to fail on empty response

* Various improvement to message parsing
2016-11-21 09:53:18 +00:00
delianides
8d5353831e
flow linting should only happen on flow typed files. 2016-11-03 15:51:49 -04:00
Zach Perrault
4088347901 Add FlowType support (#157)
* Add `javascript/flow` linter

* Add documentation for flow

* Remove a line from the docs that was from eslint

* Only run if flow gives output; Correct link in doc

* Address PR feedback #157
2016-11-01 09:00:08 +00:00
w0rp
226b4ed586 Add node_modules support for JSHint, and use the global config as a fallback. 2016-10-23 13:25:50 +01:00
w0rp
36461b69d7 Support loading eslint from node_modules, re issue #118. 2016-10-23 13:04:41 +01:00
Bjorn Neergaard
f49f615ef6
Add support for dot-seperate linters, improve linter tests
This PR first and formost implements support for dot-seperate filetypes,
a very trivial change.

This closes #132

But more importantly, this PR vastly improves the test quality for
`ale#linter#Get`. It enables us to reset the state of ale's internal
linter cache, to facilitate better testing, as well as making use of
mocked linters instead of depending on linters on disk (which may
change). In addition, a dummy linter is defined to test the autoloading
behavior.

Header guards were removed from all linters as:

* A: ale won't try and load linters if they already exist in memory
* B: we can't reset state for testing if they can't be loaded again
2016-10-21 21:02:20 -05:00
w0rp
7a06d276c2 #131 Keep the error types in the message for eslint 2016-10-20 18:07:55 +01:00
w0rp
78bcf96e34 Fix #87 - Allow linter filetypes to be aliased 2016-10-11 23:11:45 +01:00
Bjorn Neergaard
c290e2cd60
Remove many redundant handlers 2016-10-11 09:22:47 -05:00
Bjorn Neergaard
fb4b797dd2
Use explicit scope in all ale_linters
vint -s is now clean
2016-10-11 06:14:26 -05:00
Bjorn Neergaard
7f0ce89d2b First pass at optimizing ale to autoload (#80)
* First pass at optimizing ale to autoload

First off, the structure/function names should be revised a bit,
but I will wait for @w0rp's input before unifying the naming style.
Second off, the docs probably need some more work, I just did some
simple find-and-replace work.

With that said, this pull brings major performance gains for ale. On my
slowest system, fully loading ale and all its code takes around 150ms.

I have moved all of ale's autoload-able code to autoload/, and in
addition, implemented lazy-loading of linters. This brings load time on
that same system down to 5ms.

The only downside of lazy loading is that `g:ale_linters` cannot be
changed at runtime; however, it also speeds up performance at runtime by
simplfying the logic greatly.

Please let me know what you think!

Closes #59

* Address Travis/Vint errors

For some reason, ale isn't running vint for me...

* Incorporate feedback, make fixes

Lazy-loading logic is much improved.

* Add header comments; remove incorrect workaround

* Remove unneeded plugin guards

* Fix lazy-loading linter logic

Set the wrong variable....

* Fix capitialization
2016-10-10 19:51:29 +01:00
w0rp
0680f875fe Add an option for configuring the path for JSHint. 2016-10-10 19:07:01 +01:00
w0rp
3cdd057b11 Add support for changing the eslint executable. 2016-10-06 13:42:52 +01:00
w0rp
36acde533f Fix loading of JSHint configuration files. 2016-10-06 12:56:09 +01:00
jwilliams108
63bed5368c correctly parse eslint warning type 2016-10-06 20:21:29 +11:00
w0rp
c6dc324add Add a function for finding nearest files, and use it to fix JSHint so it will find configuration files automatically. 2016-10-04 18:24:46 +01:00
w0rp
705f4232c0 Add support for formatting filenames into commands, and use it to fix linting with older eslint versions. 2016-10-04 13:50:44 +01:00
Prashanth Chandra
51b7d7bc95 Add comment headers to ale_linters 2016-10-04 03:07:59 +08:00
Paolo Gavocanov
9051878466 Add support for javascript.jsx filetype 2016-10-03 10:56:59 +03:00
Chris Kyrouac
c856d00c7c Add name and author to jshint 2016-09-15 20:44:05 -04:00
Chris Kyrouac
641aa8afc3 Add jshint linter 2016-09-15 20:44:05 -04:00
w0rp
192b3db3ee Credit fijshion for his work in the files, and make the new linters work again by adding the now required name arguments. 2016-09-15 21:09:04 +01:00
w0rp
d97d05e508 Merge pull request #1 from fijshion/jscslinter
Add jscs linter
2016-09-15 21:00:57 +01:00
w0rp
8cc28cdfbd Add support for Bash and other shells. Add support for reading from stderr, and for generating the executable from functions. Both were needed to support shell linting. 2016-09-15 20:20:41 +01:00
Chris Kyrouac
8c7b158690 Add jscs linter 2016-09-14 15:22:29 -04:00
w0rp
7fa437985f Fix issues with switching buffers rapidly causing errors by remembering the buffer and passing the buffer value to various functions. 2016-09-14 11:47:52 +01:00
w0rp
d438da2b3b Fix the eslint linter so it won't throw away lines if one earlier line doesn't match. 2016-09-13 22:26:04 +01:00
w0rp
37065bb252 Fix a bug with eslint parsing which mistakenly cleared markers 2016-09-09 22:25:26 +01:00
w0rp
11c11e578f Add linting with eslint in NeoVim, with a few bugs. 2016-09-09 00:23:26 +01:00