@@ -440,9 +440,12 @@ impl Builder {
440440 chars. next ( ) . is_some_and ( unicode_ident:: is_xid_start)
441441 && chars. all ( unicode_ident:: is_xid_continue)
442442 } )
443- . join ( ", " ) ;
443+ // Deliberately concatenated without separators as adding separators e.g.
444+ // `alias1, alias2` results in LSP clients continuing to display the completion even
445+ // after typing a comma or space.
446+ . join ( "" ) ;
444447 if !lookup_doc_aliases. is_empty ( ) {
445- lookup = SmolStr :: from ( format ! ( "{lookup} {lookup_doc_aliases}" ) ) ;
448+ lookup = SmolStr :: from ( format ! ( "{lookup}{lookup_doc_aliases}" ) ) ;
446449 }
447450 }
448451 if let [ import_edit] = & * self . imports_to_add {
@@ -567,12 +570,9 @@ impl Builder {
567570
568571#[ cfg( test) ]
569572mod tests {
570- use ide_db:: SymbolKind ;
571573 use itertools:: Itertools ;
572574 use test_utils:: assert_eq_text;
573575
574- use crate :: { CompletionItem , CompletionItemKind } ;
575-
576576 use super :: {
577577 CompletionRelevance , CompletionRelevancePostfixMatch , CompletionRelevanceTypeMatch ,
578578 } ;
@@ -647,19 +647,4 @@ mod tests {
647647
648648 check_relevance_score_ordered ( expected_relevance_order) ;
649649 }
650-
651- #[ test]
652- fn exclude_non_identifier_aliases_from_lookup ( ) {
653- let mut item = CompletionItem :: new (
654- CompletionItemKind :: SymbolKind ( SymbolKind :: Trait ) ,
655- Default :: default ( ) ,
656- "PartialOrd" ,
657- ) ;
658- let aliases = [ ">" , "<" , "<=" , ">=" ] ;
659- item. doc_aliases ( aliases. iter ( ) . map ( |& alias| alias. into ( ) ) . collect ( ) ) ;
660- let item = item. build ( & Default :: default ( ) ) ;
661- for alias in aliases {
662- assert ! ( !item. lookup( ) . contains( alias) ) ;
663- }
664- }
665650}
0 commit comments