diff options
Diffstat (limited to 'cli/lsp/capabilities.rs')
-rw-r--r-- | cli/lsp/capabilities.rs | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/cli/lsp/capabilities.rs b/cli/lsp/capabilities.rs index cf8f150ca..954baaf51 100644 --- a/cli/lsp/capabilities.rs +++ b/cli/lsp/capabilities.rs @@ -6,6 +6,7 @@ ///! client. ///! use lsp_types::ClientCapabilities; +use lsp_types::CompletionOptions; use lsp_types::HoverProviderCapability; use lsp_types::OneOf; use lsp_types::SaveOptions; @@ -13,6 +14,7 @@ use lsp_types::ServerCapabilities; use lsp_types::TextDocumentSyncCapability; use lsp_types::TextDocumentSyncKind; use lsp_types::TextDocumentSyncOptions; +use lsp_types::WorkDoneProgressOptions; pub fn server_capabilities( _client_capabilities: &ClientCapabilities, @@ -28,7 +30,22 @@ pub fn server_capabilities( }, )), hover_provider: Some(HoverProviderCapability::Simple(true)), - completion_provider: None, + completion_provider: Some(CompletionOptions { + trigger_characters: Some(vec![ + ".".to_string(), + "\"".to_string(), + "'".to_string(), + "`".to_string(), + "/".to_string(), + "@".to_string(), + "<".to_string(), + "#".to_string(), + ]), + resolve_provider: None, + work_done_progress_options: WorkDoneProgressOptions { + work_done_progress: None, + }, + }), signature_help_provider: None, declaration_provider: None, definition_provider: Some(OneOf::Left(true)), |