You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When fuzzy completion is used, the wrong label is used when validating a completion item. For example, rust-analyzer could return remove_dir (alias rmdir) as a label, but remove_dir as next text (this late one should be used instead of the first one).
I'm not sure to understand why this section is restricted to non-fuzzy completion value matcher only. The label condition (either item.textEdit.newText, item.insertText or item.label) is useful no matter the completion matcher.
I don't know why fuzzy matching is excluded here.
I would guess that text editing by applying the range does not play well in combination with fuzzy matching. But this is only a guess.
By the way, it has been introduced by @andlrc with his pull request: #178
Maybe @andlrc can enlighten us here.
Instead of removing the special handling of fuzzy matching, an additonal fallback branch might also help. Otherwise the language server specifiation is not fulfilled, which mandates CompletionItem.label shall only be used if there is neither CompletionItem.insertText nor CompletionItem.textEdit.
if item->has_key('textEdit') &&
lspOpts.completionMatcherValue != opt.COMPLETIONMATCHER_FUZZY
elseif item->has_key('textEdit') would still prevent fuzzy completion to get the right label. Let's wait for more context about the condition.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
Related to #583.
When fuzzy completion is used, the wrong label is used when validating a completion item. For example,
rust-analyzercould returnremove_dir (alias rmdir)as a label, butremove_diras next text (this late one should be used instead of the first one).I'm not sure to understand why this section is restricted to non-fuzzy completion value matcher only. The label condition (either
item.textEdit.newText,item.insertTextoritem.label) is useful no matter the completion matcher.