@@ -730,7 +730,8 @@ pub fn code_action(cx: &mut Context) {
731 // always present here
731 // always present here
732 let action = action.unwrap();
732 let action = action.unwrap();
733− let Some(language_server) = editor.language_server_by_id(action.language_server_id) else {
733+ let Some(language_server) = editor.language_server_by_id(action.language_server_id)
734 editor.set_error("Language Server disappeared");
735 editor.set_error("Language Server disappeared");
@@ -746,15 +747,20 @@ pub fn code_action(cx: &mut Context) {
746 // we support lsp "codeAction/resolve" for `edit` and `command` fields
747 // we support lsp "codeAction/resolve" for `edit` and `command` fields
747 let mut resolved_code_action = None;
748 let mut resolved_code_action = None;
748 if code_action.edit.is_none() || code_action.command.is_none() {
749 if code_action.edit.is_none() || code_action.command.is_none() {
750+ if let Some(future) =
749− if let Some(future) = language_server.resolve_code_action(code_action.clone()) {
751+ language_server.resolve_code_action(code_action.clone())
750 if let Ok(response) = helix_lsp::block_on(future) {
753 if let Ok(response) = helix_lsp::block_on(future) {
754+ if let Ok(code_action) =
751− if let Ok(code_action) = serde_json::from_value::<CodeAction>(response) {
755+ serde_json::from_value::<CodeAction>(response)
752 resolved_code_action = Some(code_action);
757 resolved_code_action = Some(code_action);
762+ let resolved_code_action =
757− let resolved_code_action = resolved_code_action.as_ref().unwrap_or(code_action);
763+ resolved_code_action.as_ref().unwrap_or(code_action);
759 if let Some(ref workspace_edit) = resolved_code_action.edit {
765 if let Some(ref workspace_edit) = resolved_code_action.edit {
760 log::debug!("edit: {:?}", workspace_edit);
766 log::debug!("edit: {:?}", workspace_edit);
@@ -1186,7 +1192,8 @@ pub fn signature_help_impl(cx: &mut Context, invoked: SignatureHelpInvoked) {
1186 // Do not show the message if signature help was invoked
1192 // Do not show the message if signature help was invoked
1187 // automatically on backspace, trigger characters, etc.
1193 // automatically on backspace, trigger characters, etc.
1188 if invoked == SignatureHelpInvoked::Manual {
1194 if invoked == SignatureHelpInvoked::Manual {
1189− cx.editor.set_error("No configured language server supports signature-help");
1196+ .set_error("No configured language server supports signature-help");
@@ -1411,7 +1418,8 @@ pub fn rename_symbol(cx: &mut Context) {
1411 .language_servers_with_feature(LanguageServerFeature::RenameSymbol)
1418 .language_servers_with_feature(LanguageServerFeature::RenameSymbol)
1412 .find(|ls| language_server_id.map_or(true, |id| id == ls.id()))
1419 .find(|ls| language_server_id.map_or(true, |id| id == ls.id()))
1414− cx.editor.set_error("No configured language server supports symbol renaming");
1422+ .set_error("No configured language server supports symbol renaming");