Commit Graph

175 Commits

Author SHA1 Message Date
w0rp 1ea61162a0 Fix #687 - Check files on enter if they have changed 2017-06-24 12:24:31 +01:00
w0rp f814be45b1 Fix #536 - Implement linter problem type re-mapping 2017-06-14 17:59:13 +01:00
w0rp e88eb6c415 Use BufWinEnter for g:ale_lint_on_enter instead 2017-06-06 17:01:17 +01:00
w0rp 1a62e95733 Do not check files on insert leave 2017-06-05 13:55:18 +01:00
Drew Neil 33b0852c84 Add :ALEFirst and :ALELast commands (#616)
* Add :ALEFirst and :ALELast commands

* Add documentation for ALEFirst and ALELast commands

* Add tests for ale#loclist_jumping#JumpToIndex()

* Fix the loclist jumping tests
2017-06-03 12:45:52 +01:00
w0rp d5ae9b50ea Fix #499 Set an explicit height for the quickfix list, and make the height configurable 2017-06-01 10:39:21 +01:00
w0rp 735a6a2a88 Fix #537 - Add support for balloons 2017-05-31 22:04:33 +01:00
w0rp 6ec965c8e4 #591 Support fixing files on save 2017-05-30 21:32:51 +01:00
w0rp 00d3141962 Fix #577 Add an option preventing linting of large files 2017-05-26 21:21:15 +01:00
w0rp c77cf0e518 #371 Allow buffer variables to be set based on patterns 2017-05-26 15:59:43 +01:00
w0rp 92ade713f2 #323 Document ale#statusline#Count() instead, and encourage its use 2017-05-24 10:23:13 +01:00
w0rp b67c103d06 #309 Add an option for changing the sign column color when problems are detected 2017-05-21 22:42:27 +01:00
w0rp f92bbab8cf #149 - Support Info, style error, and style warning types for problems for signs 2017-05-20 23:32:41 +01:00
w0rp 3530180a73 Suggest functions for fixing issues for ALEFix 2017-05-20 19:02:36 +01:00
w0rp 8ebd15a54d Add commands to run ALEFix, and some tests to cover functionality so far. Add a simple autopep8 function. 2017-05-20 19:02:36 +01:00
w0rp ce2f777e33 Fix #505 Stop g:ale_lint_on_filetype_changed linting when you open buffers 2017-04-26 23:02:00 +01:00
w0rp b7c79974bb #446 Fix g:ale_lint_on_text_changed compatibility issues 2017-04-03 19:04:02 +01:00
taylorskalyo 36f9631512 Add options to facilitate linting only in normal mode (#425)
* [#420] Add options to facilitate linting only in normal mode

ale_lint_on_text_changed:
Allow setting to 'insert' or 'normal' to lint when text is changed only in
insert or normal mode respectively.

ale_lint_on_insert_leave:
This flag can be set to 1 to enable linting when leaving insert mode.

* [#420] Test updated global options

Ale should
- bind to TextChanged events when g:ale_lint_on_text_changed = 1
- bind to TextChanged events when g:ale_lint_on_text_changed = 'always'
- bind to InsertLeave event when g:ale_lint_on_insert_leave = 1
2017-03-30 23:21:37 +01:00
Adriaan Zonnenberg 6a5d8ba5d0 Add :ALEEnable and :ALEDisable commands 2017-03-29 00:04:58 +02:00
Adriaan Zonnenberg fe47649a23 Allow commands to be chained using a `|` 2017-03-28 19:27:07 +02:00
w0rp ab3fd2e849 Fix #130 - Run linters when the filetype is changed 2017-03-27 22:40:25 +01:00
w0rp c9ee3efc11 Enabling linting on save by default, re #333 2017-03-27 20:36:35 +01:00
w0rp 3e13e10e03 #333 Change arguments for ale#Queue so they are more obvious, and check files in more places 2017-03-21 13:38:27 +00:00
w0rp e7d32fe376 #333 Pass in a flag indicating that linters should be run against files, and clear more jobs 2017-03-14 23:51:57 +00:00
w0rp ad49846a48 #376 Use the window ID for a given buffer for setting the loclist 2017-03-09 00:43:53 +00:00
w0rp 75a2dc5ff5 Complain loudly when other conflicting plugins are installed 2017-03-06 23:15:34 +00:00
Jasper Woudenberg edc5dee226 Merge remote-tracking branch 'upstream/master' 2017-03-02 19:04:28 -08:00
w0rp 0e50a7d278 Fix #373 - echo the cursor message after lint cycles or when leaving Insert mode 2017-03-02 23:36:31 +00:00
Jasper Woudenberg 70711022db Add support for error details
Some review needed.
2017-03-01 23:27:48 -08:00
w0rp ceeff6c723 Fix #288 - Add a command for running ALE 2017-02-28 09:10:58 +00:00
w0rp eac0a41ae1 #254 Add an option for logging the output of commands 2017-02-16 23:18:57 +00:00
w0rp ca17b5aebd Add an option for completely disabling command history, and add documentation 2017-02-16 21:33:44 +00:00
w0rp ba1eb90212 #338 Don't do anything from tags files. 2017-02-15 22:03:18 +00:00
w0rp cb60a2c06e Cover ALEToggle with Vader tests 2017-02-15 21:36:16 +00:00
w0rp 721a850e21 Merge pull request #343 from vimeitor/master
Fix spelling
2017-02-15 19:48:41 +00:00
w0rp 0131526261 #254 Add a command for copying ALEInfo to your clipboard quickly 2017-02-14 23:45:22 +00:00
w0rp ed370667c8 #254 Add command history to ALEInfo 2017-02-14 23:44:37 +00:00
Adrià Farrés 4afa415bd9 Fix spelling 2017-02-14 20:26:19 +01:00
w0rp afd0730248 #274 Stop airline from doing anything if ALE doesn't load by using a different flag for loading with a very ugly name 2017-02-14 09:18:54 +00:00
w0rp 810e420510 #274 Don't emit the warning if ALE isn't working for git commits or blank files 2017-02-13 23:48:36 +00:00
w0rp 0589022c76 Include most linter variables in ALEInfo 2017-02-13 22:11:35 +00:00
w0rp 3aa1d57b57 Fix #171 - Implement basic error highlighting 2017-02-13 00:24:25 +00:00
w0rp 4a71638061 Feed files to commands via stdin by first writing the file to a temporary file, and then piping them in via the shell instead 2017-02-11 22:43:13 +00:00
w0rp 926cd1a953 Fix #283 Add an option for using ch_sendraw(), which can be better for some users 2017-02-10 19:34:44 +00:00
w0rp c528ab1eaa Fix #269 Set $TMPDIR to a default value, if not set 2017-02-10 09:45:42 +00:00
Daniel Lupu 6dfed8576e add ALEToggle command (#303)
* add ALEToggle command

* stop active jobs when toggled off

* small logic cleanup & ensure ale can be ran manually while toggled off
2017-02-09 18:47:14 +00:00
DiscoViking a9c650cd05 Add ALEInfo command to get list of available/enabled linters (#273)
* Add ALEInfo command to get list of available/enabled linters for current filetype

* Add Vader tests for ALEInfo command

* Fix ALEInfo tests breaking CI by echoing too much output to screen

* Speculative change to Makefile which seems to fix test hanging problem locally.

* Fix Vader tests to not require a TTY
2017-01-24 15:50:49 +00: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
yfery a23173eeb2 Add option to open loclist/quicklist when there are errors (#266)
* Add option to open loclist/quicklist when there are errors

I copied PR #137, and tries to complete it by correcting some issues and
adding vader tests.

About tests, first time with vader, can you give some feedback if there
are what you expected in PR #137.

* Remove old code + fix indent issue

* add g:ale_keep_list_window_open option

* Correct bug with keep open option

* Add comment into vader file

* Fix errors for Travis CI build
2017-01-22 12:57:05 +00:00
w0rp ca18a80e3e #159 Change the condition for checking for Vim 8 features to work better in MacVim 7. 2016-11-04 10:17:49 +00:00
w0rp 614a30a508 Improve file blacklisting to make Unite.vim not fuck up. 2016-10-31 14:47:08 +00:00
w0rp a6ca60203f Increase the delay for linting on entering a buffer. 2016-10-30 09:29:11 +00:00
w0rp c8821fc049 #144 - Implement commands for moving through warnings/errors 2016-10-26 10:36:53 +01:00
w0rp 73c9a1f965 #148 Do not run ALE for NERDTree or Unite.vim buffers. 2016-10-25 14:09:58 +01:00
w0rp c546f47cc0 Merge everything into the one global map. 2016-10-24 20:21:42 +01:00
w0rp 7481facd73 #107 Stop jobs when buffers close 2016-10-23 22:41:00 +01:00
Bjorn Neergaard dc58db7640
Implement a more efficient statusbar
The statusbar now keeps its state in a separate variable, in order to
avoid excess iterations. The engine now updates said variable on run,
and a new function is made available for external statusbars to call (to
avoid dependencies on internal implementation details of ale).

To keep things light, the status bar code is not loaded unless invoked
by the user or an external plugin. On the first load it will update
itself from the global loclist, after that, the engine will handle all
updates.

The external integration function, `ale#statusline#Count()`, will return
a tuple in the format [E, W] (where E is errors, W is warnings), unless
no data exists (ie, the plugin doesn't have a linter for a file or has
not run yet), in which case it returns 0/false.
2016-10-13 08:51:38 -05:00
w0rp 217bb5cb40 Improve the output of the tests, and fix the style issue again. 2016-10-12 23:55:09 +01:00
w0rp afec4df13f Add a commit with style issues. 2016-10-12 23:21:57 +01:00
w0rp 78bcf96e34 Fix #87 - Allow linter filetypes to be aliased 2016-10-11 23:11:45 +01:00
w0rp 687d66cf25 Merge pull request #95 from neersighted/typos
Return in the statusline compatibility function, fixing #71
2016-10-11 20:48:52 +01:00
Bjorn Neergaard 82f38dcd45
Return in the statusline compatibility function, fixing #71 2016-10-11 14:24:43 -05:00
Bjorn Neergaard fc711a0615
Clean and reorganize flags/preferences 2016-10-11 10:02:36 -05:00
w0rp e9ad21b679 Fix cursor bugs. 2016-10-10 19:56:05 +01: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 6f1ec7306d REVERT "#39 Use getbufline() for MacVim GUI too."
This reverts commit 3083d05afd.
2016-10-10 18:56:39 +01:00
Kabbaj Amine 4149971c08 Minor fixes:
* Ensure that php linter pattern does not include spaces:
    PHP can return errors with extra spaces like the following:
    `PHP Parse error:  syntax error, unexpected end of file in t.php on line 4`

* Set option locally to buffer

* Rename noErrors variable according to the project's naming convention

* Make the jsonlint pattern a little better
2016-10-10 18:05:18 +03:00
w0rp 7acfa72c0d Fix #75 - Explain that you need to update NeoVim in the plugin itself. 2016-10-10 13:16:32 +01:00
w0rp 56894b432e Merge remote-tracking branch 'origin/echo-string-format' 2016-10-10 12:57:27 +01:00
w0rp 3083d05afd #39 Use getbufline() for MacVim GUI too. 2016-10-10 12:54:39 +01:00
KabbAmine e4b3f579fa Echo string format (#76)
* Implement an option to configure the echoed message, #48

Via `g:ale_echo_msg_format` where:
- `%s` is the error message itself
- `%linter%` is the linter name
- `%severity` is the severity type

e.g
let g:ale_echo_msg_fomat = '[%linter%] [%severity%] %s'

* Add new options for defining the string used for errors in echoed
message

`g:ale_echo_msg_error_str` and `g:ale_echo_msg_warning_str`

* Change text output of some linters

Now that the echoed message can be customized, no need to add the type
to the text variable.

* Update README & documentation file

* Fix some typos
* Sort the table of options alphabetically (except echo_msg_x_str options)

* Added echo warning str option to the doc
2016-10-10 12:53:54 +01:00
w0rp f60df660f8 #48 Store the linter name in the loclist objects for later use. 2016-10-09 21:44:50 +01:00
w0rp 8d390384f1 Correct issues with some errors appearing at line 0, not 1. 2016-10-09 21:40:33 +01:00
w0rp 34241edcdb Fix a bug where echoing in modes like visual select caused some errors. 2016-10-09 12:50:51 +01:00
w0rp 8433dbcea9 Remove some trailing whitespace. 2016-10-09 12:50:51 +01:00
w0rp 1ea0eda36c Correct all Vint warnings 2016-10-08 23:55:58 +01:00
w0rp f17a660888 Send the buffers to the linters using getbufline() on Windows, re issue #39 2016-10-08 21:52:41 +01:00
w0rp 20a28b7856 Handle there being no process for a job better in Vim 8, re issue #39. 2016-10-08 21:04:42 +01:00
w0rp 57b157bbae Use shortmess for shortening long echo lines instead. 2016-10-08 18:04:34 +01:00
w0rp af8df256c0 Don't store jobs themselves in maps in Vim 8, as per issue #39. 2016-10-08 17:27:59 +01:00
w0rp 85d8d2f217 Use cmd /c for Windows commands to fix a bug with running linters on Windows. 2016-10-08 16:01:23 +01:00
w0rp 4489514e4b Add a wrapper program for running linters which cannot receive stdin input on Windows. 2016-10-07 21:33:16 +01:00
w0rp da1dcc6bb5 Add support for checking Cython files 2016-10-07 18:33:19 +01:00
w0rp f6e95586dd Merge pull request #58 from KabbAmine/statusline
Add an initial getStatuslineStr function with customizable output
2016-10-07 18:29:36 +01:00
Kabbaj Amine f128f7810d Add an initial ALEGetStatusLine function with customizable output, #25 2016-10-07 19:13:01 +03:00
w0rp d97e25a260 Support reading from both output streams, and fix PHP error parsing, which sometimes logs to stderr, sometimes stdout. 2016-10-07 17:08:11 +01:00
w0rp 596a374c6e Skip setting of signs at line 0 and so on, to avoid any issues there. 2016-10-06 13:01:33 +01:00
w0rp 478c32f85d Fix #42, where some linting isn't run when opening some files. 2016-10-06 11:02:43 +01:00
w0rp f0da729a9d Fix signs to work with other languages, and create fewer dummy signs 2016-10-05 22:41:48 +01:00
w0rp 91dc117bec Update the author line and the filenames for the GCC format pattern. 2016-10-05 11:35:16 +01:00
w0rp 0305e8ad62 Simplify the IDs used for the dummy sign, so it automatically uses the configurable offset value. 2016-10-05 10:59:01 +01:00
w0rp 1fb34d649b Reduce jittering for signs some more. 2016-10-05 10:25:16 +01:00
w0rp ab555a6984 Reduce screen shaking by leaving the dummy sign in place while signs are being added and removed. 2016-10-05 09:31:11 +01:00
w0rp 6ff4ed93a7 Adjust the enter delay again. 2016-10-05 09:28:43 +01:00
w0rp 61dad857a5 Add a very short delay after opening a buffer for running the linter to get it to run more. Increase the delay when typing a bit to reduce juttering. 2016-10-05 09:27:03 +01:00
w0rp 0f96b61825 Fix a bug with loading the wrong user option for warning signs. 2016-10-04 23:00:15 +01:00
w0rp a95aa97780 Add support for linting when a file is saved. 2016-10-04 21:31:47 +01:00
w0rp aebf8e0196 Change the flags file so it uses the get function. 2016-10-04 21:28:54 +01:00
w0rp 6754b9f1f8 Improve the signs feature so it can work with vim-gitgutter and possibly other plugins. 2016-10-04 21:10:36 +01: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