| Commit message (Collapse) | Author | Age |
... | |
|\ \ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
- And address more type errors.
- Removed the `concat` option from `get_node_text` since it was applied
inconsistently and made typing awkward.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Subset of https://github.com/neovim/neovim/pull/22407 that was reverted
in https://github.com/neovim/neovim/pull/22604
If a buffer is renamed sending `didClose` for the old buffer helps
ensure the language server doesn't keep a stale document in memory.
|
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Although using `buffer://` for unsaved file buffers fixes issues with
language servers like eclipse.jdt.ls or ansible-language-server, it
breaks completion and signature help for clangd.
A regression is worse than a fix for something else, so this reverts
commit 896d672736b32a8f4a4fa51844b44f266dcdcc6c.
The spec change is also still in dicussion, see
https://github.com/microsoft/language-server-protocol/pull/1679#discussion_r1130704886
|
|/
|
|
|
|
|
|
|
| |
Never return the changes an only notify them using the `on_changedtree`
callback.
It is not guaranteed for a plugin that it'll be the first one to call
`tree:parse()` and thus get the changes.
Closes #19915
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Ignore instead
|
|/
|
| |
This commit replaces the usage of math.floor((lo + hi) / 2) with the faster and equivalent bit.rshift(lo + hi, 1) for calculating the midpoint in binary search.
|
|
|
|
|
|
| |
* Also fix newly found type mismatch.
* Note that it generates new warnings about using @private client
methods. A proper fix would be to revamp the lsp client documentation
altogether.
|
|
|
|
|
|
| |
Problem: Cairo files are not recognized.
Solution: Add a pattern for Cairo files. (Amaan Qureshi, closes vim/vim#12118)
https://github.com/vim/vim/commit/ff226d49fed2d8fc668084324c7b0f00117c5e74
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
Some built-in ftplugins set omnifunc/tagfunc/formatexpr which causes
lsp.lua:set_defaults() to skip setup of defaults for those filetypes.
For example the C++ ftplugin has:
omnifunc=ccomplete#Complete
Last set from /usr/share/nvim/runtime/ftplugin/c.vim line 30
so the changes done in #95c65a6b221fe6e1cf91e8322e7d7571dc511a71
will always be skipped for C++ files.
Solution:
Overwrite omnifunc/tagfunc/formatexpr options that were set by stock
ftplugin.
Fixes #21001
|
|
|
|
| |
TS ranges are end column exclusive, so fix is_in_node_range
to account for that.
|
|
|
|
|
|
| |
Problem: Odin files are not recognized.
Solution: Add a pattern for Odin files. (Amaan Qureshi, closes vim/vim#12122)
https://github.com/vim/vim/commit/638388b8ef37684e36a7f5d9286bab2d31c28f36
|
|
|
|
|
|
| |
Problem: Unx Tal files are not recognized.
Solution: Add a pattern for Unx Tal files. (Amaan Qureshi, closes vim/vim#12117)
https://github.com/vim/vim/commit/cde1f8714ed2c046aa770c46229e781380122bd7
|
|
|
|
|
|
|
| |
(#22575)
Revert "refactor(treesitter): delegate region calculation to treesitter (#22553)"
This reverts commit 276b647fdba07bf1762d8dd371c4b655b8a418df.
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| | |
omnifunc for builtin lua
|
| |
| |
| |
| |
| |
| |
| | |
also make implicit submodules "uri" and "_inspector" work with completion
this is needed for `:lua=vim.uri_<tab>` wildmenu completion
to work even before uri or _inspector functions are used.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
feat(lsp)!: change semantic token highlighting
Change the default highlights used, and add more highlights per token.
Add an LspTokenUpdate event and a highlight_token function.
:Inspect now shows any highlights applied by token highlighting rules,
default or user-defined.
BREAKING CHANGE: change the default highlight groups used by semantic
token highlighting.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
If major<major but minor>minor, cmp_version_core returns 1
Solution:
- Fix logic in cmp_version_core
- Delete most eq()/gt()/lt() tests, they are redundant.
|
| |
| |
| |
| |
| |
| |
| | |
- version.cmp(): assert valid version
- add test for loading vim.version (the other tests use shared.lua in
the test runner)
- reduce test scopes, reword test descriptions
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Problem:
gen_vimdoc.py / lua2dox.lua does not support @defgroup or \defgroup
except for "api-foo" modules.
Solution:
Modify `gen_vimdoc.py` to look for section names based on `helptag_fmt`.
TODO:
- Support @module ?
https://github.com/LuaLS/lua-language-server/wiki/Annotations#module
|
|
|
|
|
|
|
|
| |
Fixes:
Error SERVER_REQUEST_HANDLER_ERROR: "...di/dev/neovim/neovim/runtime/lua/vim/lsp/_watchfiles.lua
:200: bad argument #1 to 'ipairs' (table expected, got nil)"
Language servers can be started without root_dir or workspace_folders.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
Fixup to #22484.
|
|
|
|
|
|
|
|
|
| |
Problem:
Help tags like vim.treesitter.language.add() are confusing because
`vim.treesitter.language` is (thankfully) not a user-facing module.
Solution:
Ignore the "fstem" when generating "treesitter" tags.
|
|\
| |
| | |
fix(treesitter): maintain cursor position when toggling anonymous nodes
|
| | |
|
| |
| |
| |
| |
| |
| | |
When toggling anonymous nodes in the :InspectTree window, keep the
cursor fixed relative to the node within the tree. This prevents the
cursor from jumping.
|
| |
| |
| | |
fix(treesitter): typos _range.lua
|
| |
| |
| | |
Fixes #22473
|
|/
|
|
|
|
| |
Problem: Bass files are not recognized.
Solution: Add patterns for Bass files. (Amaan Qureshi, closes vim/vim#12088)
https://github.com/vim/vim/commit/4ed914b18a47192f79f342bea5e8f59e120d5260
|