summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-09-11chore(volar): update volar executable name (#4308)BBOOXX
see: johnsoncodehk/volar#876 see: johnsoncodehk/volar/blob/master/packages/vue-language-server/package.json#L11
2022-09-11Deno: find project root using deno.json/deno.jsonc (#4306)Dirk Jonker
Deno LSP automatically detects config files named deno.json or deno.jsonc since version 1.18. For Deno 1.18+ this means that ALE no longer needs to resolve the project root. However, removing the project root logic from ALE means breaking changes for people that are still using an older version. Adding deno.json to the list of looking files to look for will keep the behavior consistent and compatible with the Deno config file naming convention. See also: https://deno.com/blog/v1.18#auto-discovery-of-the-config-file
2022-09-11Add gitlablint support (#3042)Horacio Sanson
2022-09-11Fix 4155 - Show error when project root not found (#4207)Horacio Sanson
2022-09-08Allow to pass options to the buf linter and fix callback. (#4300)Guangqing Chen
* Allow to pass options to the buf linter * Fix the callback of buf linter
2022-09-08omni: find last racket keyword for completion (#4293)D. Ben Knoble
Otherwise it finds the first keyword, which is usually not relevant to the cursor position, and incorrectly calculates the completion position.
2022-09-08Fix typo in plug mapping for `ale_go_to_implementation_in_vsplit` (#4304)Nate Pinsky
2022-09-07Implement buffer-wide virtual text support (#4289)Magnus Groß
* Remove virtual text via types-filter This is more robust and has the additional sideeffect that it will make it easier to implement showing virtual text for all warnings simultaneously. We definitely do not want to do a call to prop_remove() for every virtual text as that will cause noticeable lag when many warnings are present, thus we can use this to remove all virtual text lines with one call in the future. Fixes #4294 refs: https://github.com/vim/vim/pull/10945 * Allow virtual text to appear for all warnings of the buffer This can be enabled with: let g:ale_virtualtext_cursor = 2 It is implemented both for neovim and vim 9.0.0297. Note that sometimes it may appear like some warnings are displayed multiple times. This is not a bug in the virtual text implementation, but a sideeffect of multiple linters returning similar results. For example for Rust, the 'cargo' and 'rls' linters appear to be activated at the same time, but they sometimes return identical errors. This causes the virtual text to show the same warning twice. In the future we can mitigate this problem by removing duplicate errors from our internal location list. However users can also achieve cleaner warnings simply by activating only one linter for each language (or multiple unambiguous linters). For example for Rust, the problem could be solved with: let g:ale_linters = {'rust': ['analyzer']} Fixes #2962 Fixes #3666
2022-09-06Fix virtual text for vim 8.2 (#4291)Magnus Groß
Regression was introduced in d93bc2baf7532818e83bf2fac61fcd591beb6151 The problem was that we did not handle the edge case where there is no last popup to close, which caused old vim versions to enter code by accident that was only supposed to be run by vim 9. We fix this by guarding the if condition for vim 9. Fixes #4290
2022-08-23Allow callbacks for floating preview popups (#4247)Shaun Duncan
* Add extra config options for virtualtext * Undo virtualtext changes and move to floating preview * revert changes to pass hightlight group to floating preview * rename var * Document changes * Add updates based on feedback * Check for string type and attempt to call the function * Fix lint errors Co-authored-by: Shaun Duncan <shaun@speedscale.com>
2022-08-23Use native virtual-text for vim9 (#4281)Magnus Groß
Our current virtual text implementation for vim emulates it by abusing the textprop and popupwin feature from vim 8.2 (for more details see commit 708e810414d124b17b0c42e872b387a7a6c2ea85). This implementation sometimes is janky, for example the popups may leak into other vim windows next to the current window. Luckily, vim just got native virtual-text support as a proper subtype to the prop_add() function. By using the 'text' option, the text property automatically becomes virtual text that is appended to the current line if col is zero. Note that the prop_add() method now returns negative IDs for virtual text properties. This feature was added in vim 9.0.0067, but it got a lot of bugfixes which is why we only use this new API if vim has at least version 9.0.0214. However, there are still some minor bugs with vim's native virtual text, so we might have to bump the version check again in the future. Also see #3906. Now with proper virtual text support for both vim and neovim available, we can tackle #2962 in the future by simply tracking multiple virt-texts instead of just the last one. In the future we might also want to disable our virtual text emulation support for vim, as it is a total hack, but for now we should keep it for backwards compatibility.
2022-08-18Put :ALEInfo in collapsible for bug reports (#4286)Erik Westrup
To make the bug reports a bit more readable. See an example of usage here: https://github.com/dense-analysis/ale/issues/4285
2022-08-18fix #4276: honor b:ale_enabled for hover at cursor (#4277)Hongbo Liu
* fix #4276: honor b:ale_enabled for hover at cursor * fix indention
2022-08-09Add support for syntax_tree fixer (#4268)Mo Lawson
This is the library that now powers prettier/plugin-ruby but is also stands on its own: https://github.com/ruby-syntax-tree/syntax_tree
2022-08-07Add openscad and sca2d support (#4205)Nathan Henrie
2022-07-26Prevent buffering of job output and excessive polling (#4259)Tomáš Janoušek
When 'close_cb' is set for job_start(), but out_cb or err_cb isn't, vim buffers data instead of dropping it (in case someone wanted to read and process it in close_cb), and additionally polls for new data every 10 milliseconds, causing excessive wakeups and CPU usage. Since we don't read the data anywhere outside of out_cb/err_cb, any LSP that prints an error to stderr triggers this and vim keeps spinning until :ALEStopAllLSPs. Fix this by always setting both callbacks, thus dropping any data we're not interested in. See https://github.com/vim/vim/issues/10758 for an upstream report of the excessive polling. It's possible this is intentional, I dunno. Fixes: b42153eb1786 ("Fix #4098 - Clear LSP data when servers crash")
2022-07-26Add support for Dune (#4263)Albert Peschar
* Add support for dune * Add test * Undo reformatting of Markdown file * Refer to ale-ocaml-dune from ale.txt
2022-07-22cairo support (#4256)0xHyoga
* cairo support * supported languages txt * add cairo to ale.txt
2022-07-14Fix 4249 - Revert change to stop compl menu. (#4250)Horacio Sanson
In #4231 some code was added to stop the completion menu if any when opening a new one. This resulted in an issue in Vim that fills the buffer with Ctrl-Z characters when deleting to the end of a line in a position that triggers auto-completion. Since auto-completion seems to work fine on all my tests I am reverting this specific change.
2022-07-07Add support for Laravel Pint (#4238)Michael Dyrynda
* add support, docs, tests for Laravel Pint * fix php-cs-fixer link * add missing project-without-pint * fix indentation * fix pint executable in pint fixer test * fix variables, docs related to pint support
2022-07-04Improve struct and pointer autocompletion in C (#4231)Marios S
* Add explicit trigger characters for C (#4226) * Stop completion before issuing subsequent requests (#4226) Co-authored-by: Marios Sioutis <26476573+s-marios@users.noreply.github.com>
2022-07-02Allow `shfmt` fixer to use `.editorconfig` (#4244)Henrique Barcelos
* fix: added support for local solhint executable * feat: added support for matching parse errors * test: added test for solhint command callback and handler * chore: removed command callback test * refactor: made solhint handler structure closer to eslint * refactor(shfmt-fixer): remove derivation of default CLI arguments
2022-06-29Update tests to use latest neovim 0.7 (#4180)Horacio Sanson
* Update tests to use latest neovim 0.7 * Update CI to use neovim 0.7 * Fix conflict
2022-06-26Update ale-haskell.txt (#4241)Steven Leiva
Change `b:ale_haskell_his_executable` to `b:ale_haskell_hls_executable`.
2022-06-25Show warnings for `dart_analyze` linter (#4237)Gabriel Remus
2022-06-23racket: start completion in a full keyword (#4186)D. Ben Knoble
The default `omni_start_map` is too restrictive for Lisps and Schemes like Racket, which permit hyphens (among other special characters). As recorded in #3870, trying to complete `file-name-from-path` when typing `file-name<C-x><C-o>` would give completions like `namespace` because the hyphen is ignored to find the start of the word for completion. Now the racket filetype searches for the start using the keyword class `\k`, which is more precise.
2022-06-16Add pyflyby fixer (using its tidy-imports script) (#4219)infokiller
* add pyflyby fixer updates * pyflyby: add docs updates * add tests to pyflyby fixer
2022-06-08Replace gitter badge with Discordw0rp
2022-06-08Recommend Discord instead of IRC, actuallyw0rp
2022-06-06Fix README typo (#4225)Danny (he/him)
2022-06-04re-worded confusing grammar (#4223)Paul Thompson
2022-05-29Add support for actionlint options (#4216)Isman Firmansyah
* Add support for actionlint options * fix misaligned doc tags
2022-05-27Allow customization of all floating window borders (#4215)Devin J. Pohly
* Allow customization of all floating window borders Users may not necessarily want the same border character for top+bottom or left+right, so allow all eight border characters to be configured in g:ale_floating_window_border. For backwards compatibility, the old rules are still applied if only six elements are given. * Reorder popup border array for compatibility
2022-05-17Add zig fmt support (#4198)Arash Mousavi
* Add zig fmt support * Review changes * Fix linter errors
2022-05-17Fallback to summary field if detail exists but is empty in terraform linter ↵Michał Padula
(#4157) * Fallback to summary field if detail exists but is empty in terraform linter * Add test * Update terraform.vim * remove whitespaces
2022-05-16Add support for Packer (#4192)Zhuoyun Wei
* Add support for HashiCorp Packer * Add test for packer fmt * Add doc for HCL/Packer * Add link to Packer doc * Also suggest packer fix for packer ft * Add more links to TOC
2022-05-16fixes cpplint url in supported-tools.md (#4204)Krishnakumar Gopalakrishnan, PhD
2022-05-16add rego support (#4199)Reza J. Bavaghoush
* add opa fmt fixer for rego files * add opa linter * add basic tests for linter and fixer * add cspell to the docs
2022-05-15support ember-template-lint 4.x (#4200)James C. Davis
* support ember-template-lint 4.x * update ember-template-lint linter test
2022-05-15Look for .mypy.ini when finding project root (#4202)Fionn Fitzmaurice
We already check for mypy.ini, but the fallback .mypy.ini was ignored.
2022-05-13Close #4201 - Run vimls from Vader by defaultw0rp
2022-05-13Update Vim versions mentioned in ale-development.txtw0rp
2022-05-09Add support for ansible-lint 6.0.0 (#4189)Matt Perry
ansible-lint 6.0.0 removed the `--parseable-severity` option. Use the JSON output in its place. Fixes #4188
2022-05-04Handle golangci_lint warning and error messages correctly (#4182)Richard Jonas
* Handle golangci_lint warning and error messages correctly * Fix linter warning Co-authored-by: Richard Jonas <richard.jonas@derivco.se>
2022-05-04Use stdin for Selene Lua linter (#4183)zandr
When I added Selene as a linter, I wasn't aware it had the option to process stdin using `-`.
2022-05-04fix docs for actionlint (#4181)bretello
Co-authored-by: bretello <bretello@distruzione.org>
2022-05-03Fix 4177 set default yaml linters (#4178)Horacio Sanson
* Fix 4177 set default yaml linters * Fix 4177 set default yaml linters
2022-05-03add yaml actionlint support (github actions) (#4173)bretello
Co-authored-by: bretello <bretello@distruzione.org>
2022-05-02VSCode LSPs for CSS, HTML and JSON (#4175)Dalius Dobravolskas
Switched to `vscode-langservers-extracted` as it is the one most up-to-date.
2022-04-30vscode-json-languageserver support (#4164)Dalius Dobravolskas
* vscode-json-languageserver-bin support VSCode JSON languageserver has schema support for linting and completions. I have enabled snippets support (`snippetSupport`) even if it is not fully supported. `label` that comes with completions response can be used as well. * Test fix. * vscode-json-languageserver instead of vscode-json-languageserver-bin vscode-json-languageserver is more up-to-date (about 1 year old), vscode-json-languageserver-bin is 4 years old. * Use git root. * Documentation update. * Trying to sort ordering issue. * One more attempt * One more attempt * Uppercase seems to win. * Clean-up * Clean-up 2 * Test removed.