| Commit message (Collapse) | Author | Age |
... | |
|\ \ \
| |/ /
|/| | |
improve vimdoc generation
|
| | | |
|
|\ \ \
| | | |
| | | | |
fix: fix empty line in lsp log after each run
|
| | | |
| | | |
| | | |
| | | | |
fix: address typo and review comments
|
|\ \ \ \
| | | | |
| | | | | |
[RDY] lsp: fix diagnostic reported on terminating EOL character
|
| | |/ /
| |/| | |
|
| | | | |
|
|/ / / |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Fixes https://github.com/neovim/neovim/issues/13989
See https://github.com/microsoft/language-server-protocol/issues/288
|
| | |
| | |
| | |
| | |
| | |
| | | |
Currently it's not 100% clear that without setting these, using the autocomds
to utilize the `textDocument/documentHighlight` functionality, nothing will
actually be visible since the highlight groups don't have any details. This
just adds in a couple simple extra notes to make sure that's done
|
| | |
| | |
| | |
| | | |
(#13986)
|
| | |
| | |
| | |
| | |
| | | |
vim.lsp.callbacks was deprecated a few months ago. This is a cleanup before the release.
Use vim.lsp.handlers instead.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
`lines` can be empty, in which case `#lines[#lines]` failed with an
error:
lsp/util.lua:214: attempt to get length of a nil value
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
* lsp: client stop cleanups
* Add diagnostic clearing to client.stop() method used by nvim-lspconfig
* Clear diagnostic cache to prevent stale diagnostics on client restart
* lsp: Add test for vim.lsp.diagnostic.reset
|
| | |
|
| | |
|
|\ \
| | |
| | | |
[RDY] Notification provider
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds function to notify the user like this:
`:lua vim.notify("hello user")`
embeds log levels vim.log.levels.
you can then reassign vim.notify to for instance
```
function notify_external(msg, log_level, opts)
vim.fn.jobstart({"notify-send", msg })
end
```
|
| |
| |
| |
| | |
Mostly typos I found while reading the code.
|
|/
|
|
|
|
|
|
| |
`pumvisible()` returns a number, and numbers are always `true` in Lua,
so the return value needs to be checked explicitly.
Using https://github.com/neovim/neovim/pull/12900 as context, it appears
the intention was to move into the `if` branch when the completion popup
is not shown (i.e. `vim.fn.pumvisible() == 0`).
|
|
|
| |
We should be consistent in sending the EOL character to servers(I think). Julia expects this to match on bufwrite, or it crashes when vim appends the newline during the write process.
|
| |
|
| |
|
|\
| |
| | |
treesitter: default start and end row when omitted
|
| |
| |
| |
| |
| |
| |
| | |
logic
This function returns the start and stop value if set else the node's range is used
When the node's range is used, the stop is incremented by 1 to make the search inclusive
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add support for default start and end row when omitted in the
query:iter_captures and query:iter_matches functions.
When the start and end row values are omitted, the values of the given
node is used. The end row value is incremented by 1 to include the node end
row in the match.
Updated tests and docs accordingly.
|
| | |
|
| |
| |
| |
| | |
* update lua documentation
* run docgen
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The `workspace/configuration` handler could fail with the following
error if `config.settings` is nil:
runtime/lua/vim/lsp/util.lua:1432: attempt to index local 'settings' (a nil value)"
This ensures that `config.settings` is always initialized to an empty
table.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Add in clienInfo to initalize_params.
Some servers (like Metals in my case) will actually pull this
info from the initalize_params and display it in the logs. I
know from the server perspective it helps at times to have this
available to pull from to have more details about the client and
version. You can see that this is part of the spec here:
microsoft.github.io/language-server-protocol/specification#initialize
|
|/
|
| |
Until we support dynamicRegistration, we should handle the client/registerCapability in core. There are still some language servers that send this request despite dynamicRegistration not being registered client-side (we got an upstream fix for the node ones, but this depends on them bumping vscode-languageserver-node).
|
|
|
|
|
| |
Fixes an issue that tree-sitter always attached to the current buffer,
instead of the provided buffer.
|
|
|
|
|
| |
while there is some controversy, stdpath('cache') looks like a better fit for logs than stdpath('data'): you can remove logs without preventing nvim to work which fits the XDG_CACHE_HOME definition of `user specific non-essential data files`.
|
|
|
| |
* trim trailing whitespace from docs
|
|
|
|
|
|
|
|
|
|
|
| |
* lsp: Add severity_limit for other diagnostics
* docs and tests
* fix: lint
* Add to other types
* fix: lint
|
|
|
|
|
|
|
| |
* fix: Allow subsequent text document edits to pass
* fixup: cleaner code
* add tests
|
|
|
| |
pyright (possibly others) does not send any hint diagnostics if we do not have tagSupport in PublishDiagnosticsClientCapabilities. This PR just adds them.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only the plugin/package manager should "manage" after/. Consumers of
nvim_get_runtime_file() should not need to special case it (if your plugin
manager is broken then fix it instead).
Don't use vim.fn.readfile(). Lua can already read files. It is even
better at it than vim script.
expose M.get_query_files(). Listing the queries is essential for user
config debug, and let plugins do fun things with it.
Abstraction-by-obscurity is not useful (plugins can just cargo cult copy
the code anyway, better with public entry points).
|
|
|
|
|
| |
* LSP: fix window/showMessageRequest to not return nested title
* Add window/showMessageRequest handler to docs
|
|\
| |
| | |
LSP: Move workspace/configuration from nvim-lspconfig to core
|
| | |
|
| |
| |
| |
| | |
nvim-lspconfig
|
|/
|
| |
Change the update of the client.messages.progress table to overwrite only the percentage and message properties on $report, Previously we were overwriting the table which meant client.messages.progress[token].message.title was wiped on report.
|
|
|
| |
Another 3.16 compatibility. Solves Vue crashing currently. Currently not handling the return result, but would allow opening web browser in this case.
|
|
|
|
|
| |
handlers (#13638)
Several language servers are incorrectly invoking handlers which are not yet implemented in core.
|
| |
|
| |
|
|
|
| |
Run hook even when transitioning from some diagnostics to no diagnostics
|