feat: use current range for type_of_range()
#564
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds better support for scalameta/metals#3060.
Context:
make_given_range_params()
and related functionality neovim/neovim#15905Currently,
vim.lsp.util.make_given_range_params()
defaults to previous selection as it's using '< and '> registers underneath (code) which are only updated after leaving visual mode. While it might be useful in some cases, using it fortype_of_range()
leads to unresponsive experience.In the new implementation we use getpos() and getcurpos() which returns position that is updated live as selection changes.
Showcase:
hovertype2.mp4