Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'src/edi/input_handlers/keyboard.rs')
| -rw-r--r-- | src/edi/input_handlers/keyboard.rs | 50 |
1 files changed, 24 insertions, 26 deletions
diff --git a/src/edi/input_handlers/keyboard.rs b/src/edi/input_handlers/keyboard.rs index 7dadc9b..08376aa 100644 --- a/src/edi/input_handlers/keyboard.rs +++ b/src/edi/input_handlers/keyboard.rs @@ -5,11 +5,9 @@ use std::sync::Arc; use Default::default; use lsp_server::ResponseError; -use lsp_types::request::*; use lsp_types::*; use regex::Regex; use ropey::Rope; -use rust_analyzer::lsp::ext::OnTypeFormatting; use rust_fsm::StateMachine; use tokio_util::task::AbortOnDropHandle as DropH; use ttools::{IteratorOfTuples, IteratorOfTuplesWithF, hrf}; @@ -275,10 +273,10 @@ impl Editor { self.hist.lc = self.text.cursor.clone(); self.hist.test_push(&mut self.text); let act = lsp - .request_immediate::<CodeActionResolveRequest>(&act) + .request_immediate::<rust_analyzer::lsp::ext::CodeActionResolveRequest>(&act) .unwrap(); if let Some(x) = act.edit - && let Err(e) = self.apply_wsedit(x) + && let Err(e) = self.apply_swsedit(x) { log::error!("{e}"); } @@ -665,23 +663,22 @@ impl Editor { || t.iter().any(|y| y == x)) && self.text.cursor.inner.len() == 1 && change!(just self).is_some() - && let Ok(Ok(Some(mut x))) = l.request_by::<OnTypeFormatting>( - &DocumentOnTypeFormattingParams { - text_document_position: TextDocumentPositionParams { + && let Ok(Ok(Some(mut x))) = l + .request_by::<rust_analyzer::lsp::ext::DocumentOnTypeFormattingRequest>( + &DocumentOnTypeFormattingParams { text_document: p.tid(), position: self .text .to_l_position(*self.text.cursor.first()) .unwrap(), + ch: x.into(), + options: FormattingOptions { + tab_size: 4, + ..default() + }, }, - ch: x.into(), - options: FormattingOptions { - tab_size: 4, - ..default() - }, - }, - acceptable_duration(), - ) + acceptable_duration(), + ) { x.sort_tedits(); for x in x { @@ -814,15 +811,16 @@ impl Editor { let x = lsp .request_immediate::<lsp_request!("textDocument/rename")>( &RenameParams { - text_document_position: TextDocumentPositionParams { - text_document: f.tid(), - position: self - .text - .to_l_position( - self.text.cursor.first().position, - ) - .unwrap(), - }, + text_document_position_params: + TextDocumentPositionParams { + text_document: f.tid(), + position: self + .text + .to_l_position( + self.text.cursor.first().position, + ) + .unwrap(), + }, new_name, work_done_progress_params: default(), }, @@ -856,7 +854,7 @@ impl Editor { return; } let r = lsp - .request::<lsp_request!("textDocument/codeAction")>( + .request::<rust_analyzer::lsp::ext::CodeActionRequest>( &CodeActionParams { text_document: f.tid(), range: self @@ -867,7 +865,7 @@ impl Editor { ) .unwrap(), context: CodeActionContext { - trigger_kind: Some(CodeActionTriggerKind::INVOKED), + trigger_kind: Some(CodeActionTriggerKind::Invoked), // diagnostics: if let Some((lsp, p)) = lsp!() && let uri = Url::from_file_path(p).unwrap() && let Some(diag) = lsp.requests.diagnostics.get(&uri, &lsp.requests.diagnostics.guard()) { dbg!(diag.iter().filter(|x| { // self.text.l_range(x.range).unwrap().contains(&self.text.cursor) // }).cloned().collect()) } else { vec![] }, |