summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-01-14Use different group names for signs and virtual text (#4704)Ingo Meyer
Since Neovim commit c4afb9788c4f139eb2e3b7aa4d6a6a20b67ba156, the sign API uses extmarks internally. Virtual text is already rendered using extmarks. ALE uses the same group name for both signs and virtual text and as a result, both are placed in the same extmark group. Since ALE deletes all extmarks in the virtual text group after all signs have been placed, no signs are ever shown. This commit fixes this by renaming the sign group from `ale` to `ale_signs`.
2024-01-14Fix E1085: Not a callable type: elm_ls#GetOptions (#4707)samuelhelen
Rename GetOptions to GetInitializationOptions for consistency.
2023-12-10Ruff use json-lines output format (#4656)Finn Steffens
* Ruff use json-lines output format * Fix Ruff: add -q to prevent non json output Using the json-lines output format allows for setting of the end_line, end_col and code field of the handle output. Additionally, the first letter of the code is used to determine the type field. Co-authored-by: w0rp <w0rp@users.noreply.github.com>
2023-12-10fix tempfile for phpmd, to be able to use phpmd 2.14.0 (#4617)Shad
2023-12-08Add support for Scarb in `cairo` files (#4669)MD
* Add support for Scarb in `cairo` files * specify if linter should run on saved
2023-12-07add: support for `nickel format` as `Nickel` fixer (#4665)Yining
Nickel(https://nickel-lang.org/) is a configuration language, like Jsonnet, Cue, Dhall. `nickel`(https://github.com/tweag/nickel) is the main command to run, export and also format Nickel code. this commit adds `nickel format` as a Nickel fixer, together with some tests and documentation.
2023-12-07Add clang-check linter for C (#4662)Jorengarenar
* Close #976 - add clang-check to C linters * Update docs
2023-11-19add b:undo_ftplugin (#4625)D. Ben Knoble
2023-11-16Adding support for ruff formatter (#4645)Joseph Henrich
2023-11-08Fix: Ruff output option (#4632)Adam Blackwater
* fix --output-format option * Add conditionally changing flag based on Ruff version
2023-11-05Fix a typo in README.md (#4647)Julian Gong
Co-authored-by: Julian Gong <julian@meds.com>
2023-09-17Fix #4499 - Fix solhint >= 3.4.0w0rp
Fix solhint for versions >= 3.4.0, while still supporting older versions. The solhint linter code has been moved out of the `handlers` directory as it does not need to be shared between different filetypes. Code has been simplified. Co-authored-by: Henrique Barcelos <16565602+hbarcelos@users.noreply.github.com>
2023-09-16Close #4541 - Fix Haskell project root detectionw0rp
We weren't joining and returning paths correctly for detecting project roots for Haskell projects, and now we are. Co-authored-by: Rodrigo Mesquita <rodrigo.m.mesquita@gmail.com>
2023-09-16Fix #4505 - Handle spaces in markdown fencesw0rp
2023-09-16Fix #3115 - Fix environment variable quoting on Windowsw0rp
2023-09-16#4454 Clean up more tests and codew0rp
* Remove some tests we no longer need * Delete blocks of redundant code * Compress some tests together to simplify them * Remove a little code for ancient linter versions * Escape more executables we didn't escape before * Rename a deno option that didn't match our conventions
2023-09-16Fix grammar in ale-java.txt (#4611)pokir
2023-09-16Stop supporting ale_lsp_rootw0rp
We renamed the ale_lsp_root setting to ale_root long ago. Stop supporting the old setting name.
2023-09-16Close #4458 - Add an ALEStopLSP commandw0rp
Add an ALEStopLSP command to stop all language servers that match a given name. Completions are available for the command. This makes it possible to keep other language servers running other than the one you're interested in stopping.
2023-09-14#4607 No conflicts with nvim-lspconfig by defaultw0rp
Default `g:ale_disable_lsp` to a new mode `'auto'` by default. With this setting applied, ALE will now check for the presence of nvim-lspconfig and automatically turn off particular LSP linters if already configured via nvim-lspconfig. For users that do not use `nvim-lspconfig`, everything should work as before.
2023-09-13Add support for Packwerk (#4594)ymap
Packwerk (https://github.com/Shopify/packwerk) is a Ruby gem used to enforce boundaries and modularize Rails applications.
2023-09-11Add lexical for linting elixir projects (#4580)Axel Clark
2023-09-10Print the most severe problem with virtualtextw0rp
Fix the ordering of virtualtext so we print the most severe problem on a line. If two problems are the most severe, we will print the left-most problem.
2023-09-10Show a single virtualtext message by defaultw0rp
Show only a single virtualtext message per line by default. The setting can be configured to whatever the user wants. This default prevents several linters from spamming the editor with messages that run off into the right margin. Documentation now clarifies that problems have a predictable order, and which message will come first.
2023-09-09fix(json): update vscode json lsp name (#4601)Peter Benjamin
* fix(json): update vscode json lsp name * fix(vscodejson): fallback to previous name Co-authored-by: w0rp <devw0rp@gmail.com>
2023-09-09Remove backwards compatibility with ancient setting namesw0rp
2023-09-09Close #4481 Try .venv first, drop ve-py3w0rp
.venv was going to be the officially recommended default virtualenv directory name in PEP 704, which was not accepted. Still, poetry uses this name by default, as do other projects. We can deem it the first name we should try to search for. ve-py3 was a directory name I can't find mentions of online, and was used in my own projects during the days of migrating from Python 2 to 3. We can just drop it, and people can update their settings if they still need it.
2023-09-09#4442 - Use the same default signs as Neovim diagnosticsw0rp
2023-09-09Close #4442 - Use Neovim diagnostics by defaultw0rp
Use Neovim's diagnostics API by default in recent enough Neovim versions. This will make problems found by ALE play nicely with problems found by other tools.
2023-09-09Clean up documentation typos and formattingw0rp
2023-09-09Add `--globals vim` to luacheck automaticallyw0rp
luacheck will run with `--globals vim` automatically if the file is in runtimepath and `--globals` hasn't already been configured.
2023-09-09#4442 Display error codes in Neovim diagnosticsw0rp
2023-09-08#4442 Configure signs in Neovim diagnosticsw0rp
Respect ALE's options to enable/disable signs in Neovim diagnostics, and use ALE's priority setting.
2023-09-08#4605 Use a single time for InsertLeave emulationw0rp
Use a single timer for InsertLeave emulation to optimise it for many buffers, and specifically lint the buffer we entered insert mode on.
2023-09-08Close #4605 - Emulate InsertLeave modew0rp
Use a repeating timer to emulate InsertLeave mode for users who have not rebound <C-c> to <Esc>, like many experienced Vim users do. This allows ALE to start linting when you finish typing by default without having to know about this quirk in Vim or Neovim.
2023-09-08#4454 Clean up root test directory testsw0rp
Combine cases into smaller tests of tests and remove tests we no longer need. Linter tests have been moved to where they should be.
2023-09-07Give up on Windows tests again for noww0rp
Add directories and files to AppVeyor to make it skip running if it doesn't need to run.
2023-09-07Try windows-2019, as windows-latest is slow as Hellw0rp
2023-09-07Try to fix building Vader againw0rp
2023-09-07Stop redirecting error streams for Vader buildw0rp
2023-09-07Try http:// for downloading Vimw0rp
2023-09-07Attempt running Windows rests relative to GitHub dirw0rp
2023-09-07Try to fix GitHub Actionsw0rp
2023-09-07Try to test ALE on Windows in GitHubw0rp
2023-09-07Update minimum supported NeoVim version to 0.6.0w0rp
Stop officially supporting NeoVim versions below 0.6.0, without necessarily breaking ALE for people using older versions.
2023-09-06Close #3368 - Supercharge :ALEInfow0rp
Make a series of sweeping changes to make :ALEInfo more useful. 1. Deprecate :ALEInfoToClipboard and support :ALEInfo -clipboard 2. Permit :ALEInfo -clip as a shorthand for :ALEInfo -clipboard 3. Support :ALEInfo -preview to render in the preview window 4. Support :ALEInfo -echo for the classic :ALEInfo mode 5. Change the default mode to 'preview', and make it configurable 6. Add syntax highlighting for ALEInfo in preview mode 7. Add a convenience to look up documentatation that explains itself 8. Don't show an empty 'Linter Variables' section
2023-09-06Add an option to save hidden buffersw0rp
When commands are run, it can be useful to just save the hidden buffers so language servers immediately get updated with changes to files without you having to manually save each file. You can now enable this by setting `g:ale_save_hidden` to `1`.
2023-09-05Close #4461 - Use rust-analyzer by defaultw0rp
Use rust-analyzer by default instead of rls, as rls has been deprecated.
2023-09-05Feature: add `forge fmt` as a fixer for Solidity files (#4598)Henrique Barcelos
* feat: add `forge fmt` as a fixer for Solidity
2023-09-05Improve ALEFix performance for neovim (#3974)Magnus Groß
* Avoid performance problems with setbufline() and Treesitter Call nvim_buf_set_lines() instead. Since this is a performance problem only in Neovim (Treesitter is only available there), it doesn't matter that this API is unavailable in Vim. Note: nvim_buf_set_lines() returns E5555, when set nomodifiable is on. Fixes #3669 * Avoid sign flickering The signs flickered because nvim_buf_set_lines() removes all signs from lines that it touches, which will immediately be readded by Ale (causing the brief flicker). This is intended behaviour in neovim [0]. Neovim itself faced this problem in their own LSP formatting sync, although they had the problem with marks instead of signs [1]. Similar to how neovim fixed it by storing and restoring the marks [2], we can do the same thing with signs. In fact it is easier with signs, because sign_placelist() will just ignore and skip invalid line numbers, so we don't need to filter signs that are not valid anymore. [0] https://github.com/neovim/neovim/issues/10880#issuecomment-526466042 [1] https://github.com/neovim/neovim/issues/14307 [2] https://github.com/neovim/neovim/pull/14630