-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Neovim 0.6 Diagnostic API] ALE as the source of diagnostics to Neovim's new Diagnostic module #4005
Comments
This would be awesome to see! I even tried to switch to null-ls but something in how it's architected made the linting/fixing lock up the editor on save. ALE at its core feels much more stable than these new Lua reimplementation plugins, at least at this time, so I'd love to keep using this and unify the diagnostics :) |
I don't see why we can't support this. It looks like a few simple function calls. We'd just need to check a flag being enabled to send diagnostics to NeoVim's system in |
I don't use NeoVim myself, but someone who does can open a pull request for this. |
Just to iterate on the design a bit before anyone codes… Are you thinking this flag would be a "one or the other" kind of thing? e.g.
|
@w0rp Just to clarify, is |
Hey @w0rp just wanted to ping you on the questions above, so I can make sure my PR will be shaped in a way that works best for you :) |
@dbalatero Yeah, you use that to send all problems to ALE. I started calling the collection of errors, warnings, and info "problems" a while ago. |
To clarify, it's an internal function not to be called by other scripts that ALE calls to display everything. |
Thanks! |
I have a PR up with this working: #4135 |
I and @Angelchev took the work of @dbalatero and @mathstuf and got this done now. There will be tweaks that can be done to make it better later, but the basic functionality works now. |
Hello ALE developers,
Spawning a new from my comment in #3528.
Neovim 0.6 was recently released with the main feature being the new vim.diagnostic API. Previously diagnostics were a part of the native LSP client; but now it's an extracted stand-alone top level module.
Linting plugins such as nvim-lint and null-ls are now using that API.
Can ALE also be enhanced to do the same? Does the architecture allow for that?
Aka, can ALE be a diagnostic source for display by another diagnostic engine? ALE has long had the option to be end-point for other diagnostic sources (aka CoC feeding it's diagnostics to ALE for display and navigation). But, this issue is wanting to go the other way; use ALE simply as the runner and then feed it's diagnostics to Neovim's new diagnostic module. The benefit for Neovim folks is a single source of display (signs, virtual-text, underlines) and a single set of mappings to navigate diagnostics.
Many thanks.
The text was updated successfully, but these errors were encountered: