From 4b495da368162a5b373d078be4ff51e55bffdf69 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Thu, 21 May 2020 14:26:44 +0200 Subject: Transition OnEnter to WorkspaceSnippetEdit This also changes our handiling of snippet edits on the client side. `editor.insertSnippet` unfortunately forces indentation, which we really don't want to have to deal with. So, let's just implement our manual hacky way of dealing with a simple subset of snippets we actually use in rust-analyzer --- crates/ra_ide/src/typing/on_enter.rs | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'crates/ra_ide') diff --git a/crates/ra_ide/src/typing/on_enter.rs b/crates/ra_ide/src/typing/on_enter.rs index 78a40cc94..85be14ad3 100644 --- a/crates/ra_ide/src/typing/on_enter.rs +++ b/crates/ra_ide/src/typing/on_enter.rs @@ -38,17 +38,15 @@ pub(crate) fn on_enter(db: &RootDatabase, position: FilePosition) -> Option bool { @@ -84,7 +82,7 @@ fn node_indent(file: &SourceFile, token: &SyntaxToken) -> Option { #[cfg(test)] mod tests { - use test_utils::{add_cursor, assert_eq_text, extract_offset}; + use test_utils::{assert_eq_text, extract_offset}; use crate::mock_analysis::single_file; @@ -98,7 +96,6 @@ mod tests { assert_eq!(result.source_file_edits.len(), 1); let mut actual = before.to_string(); result.source_file_edits[0].edit.apply(&mut actual); - let actual = add_cursor(&actual, result.cursor_position.unwrap().offset); Some(actual) } @@ -121,7 +118,7 @@ fn foo() { ", r" /// Some docs -/// <|> +/// $0 fn foo() { } ", @@ -137,7 +134,7 @@ impl S { r" impl S { /// Some - /// <|> docs. + /// $0 docs. fn foo() {} } ", @@ -151,7 +148,7 @@ fn foo() { ", r" /// -/// <|> Some docs +/// $0 Some docs fn foo() { } ", @@ -175,7 +172,7 @@ fn main() { r" fn main() { // Fix - // <|> me + // $0 me let x = 1 + 1; } ", @@ -195,7 +192,7 @@ fn main() { r" fn main() { // Fix - // <|> + // $0 // me let x = 1 + 1; } -- cgit v1.2.3 From ff28c79ebd4c5a9a27542917940def9d4e66eea6 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Thu, 21 May 2020 14:34:27 +0200 Subject: Remove dead code for handling cursor positions --- crates/ra_ide/src/diagnostics.rs | 2 -- crates/ra_ide/src/lib.rs | 1 - crates/ra_ide/src/references/rename.rs | 3 --- 3 files changed, 6 deletions(-) (limited to 'crates/ra_ide') diff --git a/crates/ra_ide/src/diagnostics.rs b/crates/ra_ide/src/diagnostics.rs index 54c2bcc09..c2819bbf7 100644 --- a/crates/ra_ide/src/diagnostics.rs +++ b/crates/ra_ide/src/diagnostics.rs @@ -628,7 +628,6 @@ mod tests { path: "foo.rs", }, ], - cursor_position: None, is_snippet: false, }, ), @@ -685,7 +684,6 @@ mod tests { }, ], file_system_edits: [], - cursor_position: None, is_snippet: false, }, ), diff --git a/crates/ra_ide/src/lib.rs b/crates/ra_ide/src/lib.rs index 83cb498f7..1d7bacbf6 100644 --- a/crates/ra_ide/src/lib.rs +++ b/crates/ra_ide/src/lib.rs @@ -87,7 +87,6 @@ pub use ra_db::{ pub use ra_ide_db::{ change::{AnalysisChange, LibraryData}, line_index::{LineCol, LineIndex}, - line_index_utils::translate_offset_with_edit, search::SearchScope, source_change::{FileSystemEdit, SourceChange, SourceFileEdit}, symbol_index::Query, diff --git a/crates/ra_ide/src/references/rename.rs b/crates/ra_ide/src/references/rename.rs index 62ec8d85d..55c3319cb 100644 --- a/crates/ra_ide/src/references/rename.rs +++ b/crates/ra_ide/src/references/rename.rs @@ -669,7 +669,6 @@ mod tests { dst_path: "bar/foo2.rs", }, ], - cursor_position: None, is_snippet: false, }, }, @@ -722,7 +721,6 @@ mod tests { dst_path: "foo2/mod.rs", }, ], - cursor_position: None, is_snippet: false, }, }, @@ -819,7 +817,6 @@ mod tests { dst_path: "bar/foo2.rs", }, ], - cursor_position: None, is_snippet: false, }, }, -- cgit v1.2.3