fix(lsp): enable insertReplaceSupport for use in adjust_start_col #36569

Problem:
With the typescript LSes typescript-language-server and vtsls,
omnicompletion on partial tokens for certain types, such as array
methods, and functions that are attached as attributes to other
functions, either results in no entries populated in the completion menu
(typescript-language-server), or an unfiltered completion menu with all
array methods included, even if they don't share the same prefix as the
partial token being completed (vtsls).

Solution:
Enable insertReplaceSupport and uses the insert portion of the lsp
completion response in adjust_start_col if it's included in the
response.

Completion results are still filtered client side.
This commit is contained in:
Jeff Martin
2025-11-18 23:03:40 -08:00
committed by GitHub
parent b65aadc03e
commit ff792f8e69
3 changed files with 60 additions and 35 deletions

View File

@@ -478,6 +478,7 @@ function protocol.make_client_capabilities()
preselectSupport = false,
deprecatedSupport = true,
documentationFormat = { constants.MarkupKind.Markdown, constants.MarkupKind.PlainText },
insertReplaceSupport = true,
resolveSupport = {
properties = {
'additionalTextEdits',