Skip to content

Commit e75565c

Browse files
committed
Advertise support for all the builtin CodeActionKinds
Even thought we don't return all of these we eventually will so might as well advertise now.
1 parent e3ee61f commit e75565c

File tree

1 file changed

+20
-8
lines changed

1 file changed

+20
-8
lines changed

crates/rust-analyzer/src/caps.rs

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
use crate::semantic_tokens;
44

55
use lsp_types::{
6-
CallHierarchyServerCapability, CodeActionProviderCapability, CodeLensOptions,
7-
CompletionOptions, DocumentOnTypeFormattingOptions, FoldingRangeProviderCapability,
8-
ImplementationProviderCapability, RenameOptions, RenameProviderCapability, SaveOptions,
9-
SelectionRangeProviderCapability, SemanticTokensDocumentProvider, SemanticTokensLegend,
10-
SemanticTokensOptions, ServerCapabilities, SignatureHelpOptions, TextDocumentSyncCapability,
11-
TextDocumentSyncKind, TextDocumentSyncOptions, TypeDefinitionProviderCapability,
12-
WorkDoneProgressOptions,
6+
CallHierarchyServerCapability, CodeActionOptions, CodeActionProviderCapability,
7+
CodeLensOptions, CompletionOptions, DocumentOnTypeFormattingOptions,
8+
FoldingRangeProviderCapability, ImplementationProviderCapability, RenameOptions,
9+
RenameProviderCapability, SaveOptions, SelectionRangeProviderCapability,
10+
SemanticTokensDocumentProvider, SemanticTokensLegend, SemanticTokensOptions,
11+
ServerCapabilities, SignatureHelpOptions, TextDocumentSyncCapability, TextDocumentSyncKind,
12+
TextDocumentSyncOptions, TypeDefinitionProviderCapability, WorkDoneProgressOptions,
1313
};
1414

1515
pub fn server_capabilities() -> ServerCapabilities {
@@ -40,7 +40,19 @@ pub fn server_capabilities() -> ServerCapabilities {
4040
document_highlight_provider: Some(true),
4141
document_symbol_provider: Some(true),
4242
workspace_symbol_provider: Some(true),
43-
code_action_provider: Some(CodeActionProviderCapability::Simple(true)),
43+
code_action_provider: Some(CodeActionProviderCapability::Options(CodeActionOptions {
44+
code_action_kinds: Some(vec![
45+
"".to_string(),
46+
lsp_types::code_action_kind::QUICKFIX.to_string(),
47+
lsp_types::code_action_kind::REFACTOR.to_string(),
48+
lsp_types::code_action_kind::REFACTOR_EXTRACT.to_string(),
49+
lsp_types::code_action_kind::REFACTOR_INLINE.to_string(),
50+
lsp_types::code_action_kind::REFACTOR_REWRITE.to_string(),
51+
lsp_types::code_action_kind::SOURCE.to_string(),
52+
lsp_types::code_action_kind::SOURCE_ORGANIZE_IMPORTS.to_string(),
53+
]),
54+
work_done_progress_options: Default::default(),
55+
})),
4456
code_lens_provider: Some(CodeLensOptions { resolve_provider: Some(true) }),
4557
document_formatting_provider: Some(true),
4658
document_range_formatting_provider: None,

0 commit comments

Comments
 (0)