From 5fec8c8bfdf0f0e55a7ee84399fb8869f0d5d1eb Mon Sep 17 00:00:00 2001 From: K Simmons Date: Sun, 9 Oct 2022 01:19:22 -0700 Subject: [PATCH] Enable verifying of visual mode selections in neovim backed tests --- .../neovim_backed_test_context.rs | 96 +++++--- crates/vim/src/visual.rs | 226 ++++-------------- .../neovim_backed_test_context_works.json | 2 +- crates/vim/test_data/test_a.json | 2 +- crates/vim/test_data/test_backspace.json | 2 +- .../test_change_around_sentence.json | 2 +- .../test_data/test_change_around_word.json | 2 +- .../test_data/test_change_in_sentence.json | 2 +- crates/vim/test_data/test_change_in_word.json | 2 +- .../test_delete_around_sentence.json | 2 +- .../test_data/test_delete_around_word.json | 2 +- .../test_data/test_delete_in_sentence.json | 2 +- crates/vim/test_data/test_delete_in_word.json | 2 +- crates/vim/test_data/test_e.json | 2 +- .../vim/test_data/test_enter_visual_mode.json | 1 + crates/vim/test_data/test_gg.json | 2 +- crates/vim/test_data/test_h.json | 2 +- .../test_data/test_insert_end_of_line.json | 2 +- .../vim/test_data/test_insert_line_above.json | 2 +- crates/vim/test_data/test_j.json | 2 +- crates/vim/test_data/test_jump_to_end.json | 2 +- .../test_jump_to_line_boundaries.json | 2 +- crates/vim/test_data/test_k.json | 2 +- crates/vim/test_data/test_l.json | 2 +- crates/vim/test_data/test_neovim.json | 2 +- crates/vim/test_data/test_repeated_cb.json | 2 +- crates/vim/test_data/test_repeated_ce.json | 2 +- crates/vim/test_data/test_repeated_cj.json | 2 +- crates/vim/test_data/test_repeated_cl.json | 2 +- crates/vim/test_data/test_repeated_word.json | 2 +- crates/vim/test_data/test_visual_delete.json | 1 + .../test_data/test_visual_line_delete.json | 1 + crates/vim/test_data/test_w.json | 2 +- 33 files changed, 146 insertions(+), 235 deletions(-) create mode 100644 crates/vim/test_data/test_enter_visual_mode.json create mode 100644 crates/vim/test_data/test_visual_delete.json create mode 100644 crates/vim/test_data/test_visual_line_delete.json diff --git a/crates/vim/src/test_contexts/neovim_backed_test_context.rs b/crates/vim/src/test_contexts/neovim_backed_test_context.rs index 6eea30e7f79bcd24424eaadc6bea62edf3d762e7..aa52f0c40b83ca072630fe0a618dd3922309522a 100644 --- a/crates/vim/src/test_contexts/neovim_backed_test_context.rs +++ b/crates/vim/src/test_contexts/neovim_backed_test_context.rs @@ -1,5 +1,5 @@ use std::{ - ops::{Deref, DerefMut}, + ops::{Deref, DerefMut, Range}, path::PathBuf, }; @@ -145,10 +145,17 @@ impl<'a> NeovimBackedTestContext<'a> { self.assertion_context.context() ); - let zed_head = self.update_editor(|editor, cx| editor.selections.newest_display(cx).head()); + let zed_selection = self.update_editor(|editor, cx| editor.selections.newest_display(cx)); + let mut zed_selection_range = zed_selection.range(); + // Zed selections adjust themselves to make the end point visually make sense + if zed_selection.reversed { + *zed_selection_range.end.column_mut() = + zed_selection_range.end.column().saturating_sub(1); + } + let neovim_selection = self.neovim.selection().await; assert_eq!( - self.neovim.head().await, - zed_head, + neovim_selection, + zed_selection_range, "{}", self.assertion_context.context() ); @@ -234,7 +241,7 @@ impl<'a> DerefMut for NeovimBackedTestContext<'a> { #[derive(Serialize, Deserialize)] pub enum NeovimData { Text(String), - Head { row: u32, column: u32 }, + Selection { start: (u32, u32), end: (u32, u32) }, Mode(Option), } @@ -267,6 +274,7 @@ impl NeovimConnection { .await .expect("Could not attach to ui"); + // Makes system act a little more like zed in terms of indentation nvim.set_option("smartindent", nvim_rs::Value::Boolean(true)) .await .expect("Could not set smartindent on startup"); @@ -319,36 +327,64 @@ impl NeovimConnection { } #[cfg(feature = "neovim")] - pub async fn head(&mut self) -> DisplayPoint { - let nvim_row: u32 = self - .nvim - .command_output("echo line('.')") - .await - .unwrap() - .parse::() - .unwrap() - - 1; // Neovim rows start at 1 - let nvim_column: u32 = self - .nvim - .command_output("echo col('.')") - .await - .unwrap() - .parse::() - .unwrap() - - 1; // Neovim columns start at 1 + pub async fn selection(&mut self) -> Range { + let (start, end) = if let Some(Mode::Visual { .. }) = self.mode().await { + self.nvim + .input("") + .await + .expect("Could not exit visual mode"); + let nvim_buffer = self + .nvim + .get_current_buf() + .await + .expect("Could not get neovim buffer"); + let (start_row, start_col) = nvim_buffer + .get_mark("<") + .await + .expect("Could not get selection start"); + let (end_row, end_col) = nvim_buffer + .get_mark(">") + .await + .expect("Could not get selection end"); + self.nvim + .input("gv") + .await + .expect("Could not reselect visual selection"); + + ( + (start_row as u32 - 1, start_col as u32), + (end_row as u32 - 1, end_col as u32), + ) + } else { + let nvim_row: u32 = self + .nvim + .command_output("echo line('.')") + .await + .unwrap() + .parse::() + .unwrap() + - 1; // Neovim rows start at 1 + let nvim_column: u32 = self + .nvim + .command_output("echo col('.')") + .await + .unwrap() + .parse::() + .unwrap() + - 1; // Neovim columns start at 1 + + ((nvim_row, nvim_column), (nvim_row, nvim_column)) + }; - self.data.push_back(NeovimData::Head { - row: nvim_row, - column: nvim_column, - }); + self.data.push_back(NeovimData::Selection { start, end }); - DisplayPoint::new(nvim_row, nvim_column) + DisplayPoint::new(start.0, start.1)..DisplayPoint::new(end.0, end.1) } #[cfg(not(feature = "neovim"))] - pub async fn head(&mut self) -> DisplayPoint { - if let Some(NeovimData::Head { row, column }) = self.data.pop_front() { - DisplayPoint::new(row, column) + pub async fn selection(&mut self) -> Range { + if let Some(NeovimData::Selection { start, end }) = self.data.pop_front() { + DisplayPoint::new(start.0, start.1)..DisplayPoint::new(end.0, end.1) } else { panic!("Invalid test data. Is test deterministic? Try running with '--features neovim' to regenerate"); } diff --git a/crates/vim/src/visual.rs b/crates/vim/src/visual.rs index c4c1ddf9a6507ac84782816483664e50be462630..eb222346ceb3aa99b145c08421474605295992de 100644 --- a/crates/vim/src/visual.rs +++ b/crates/vim/src/visual.rs @@ -280,220 +280,92 @@ pub fn paste(_: &mut Workspace, _: &VisualPaste, cx: &mut ViewContext mod test { use indoc::indoc; - use crate::{state::Mode, test_contexts::VimTestContext}; + use crate::{ + state::Mode, + test_contexts::{NeovimBackedTestContext, VimTestContext}, + }; #[gpui::test] async fn test_enter_visual_mode(cx: &mut gpui::TestAppContext) { - let cx = VimTestContext::new(cx, true).await; - let mut cx = cx - .binding(["v", "w", "j"]) - .mode_after(Mode::Visual { line: false }); - cx.assert( - indoc! {" + let mut cx = NeovimBackedTestContext::new(cx) + .await + .binding(["v", "w", "j"]); + cx.assert_all(indoc! {" The ˇquick brown - fox jumps over - the lazy dog"}, - indoc! {" - The «quick brown - fox jumps ˇ»over - the lazy dog"}, - ); - cx.assert( - indoc! {" - The quick brown - fox jumps over - the ˇlazy dog"}, - indoc! {" - The quick brown - fox jumps over - the «lazy ˇ»dog"}, - ); - cx.assert( - indoc! {" - The quick brown fox jumps ˇover - the lazy dog"}, - indoc! {" - The quick brown - fox jumps «over - ˇ»the lazy dog"}, - ); - let mut cx = cx - .binding(["v", "b", "k"]) - .mode_after(Mode::Visual { line: false }); - cx.assert( - indoc! {" + the ˇlazy dog"}) + .await; + let mut cx = cx.binding(["v", "b", "k"]); + cx.assert_all(indoc! {" The ˇquick brown - fox jumps over - the lazy dog"}, - indoc! {" - «ˇThe q»uick brown - fox jumps over - the lazy dog"}, - ); - cx.assert( - indoc! {" - The quick brown - fox jumps over - the ˇlazy dog"}, - indoc! {" - The quick brown - «ˇfox jumps over - the l»azy dog"}, - ); - cx.assert( - indoc! {" - The quick brown fox jumps ˇover - the lazy dog"}, - indoc! {" - The «ˇquick brown - fox jumps o»ver - the lazy dog"}, - ); + the ˇlazy dog"}) + .await; } #[gpui::test] async fn test_visual_delete(cx: &mut gpui::TestAppContext) { - let cx = VimTestContext::new(cx, true).await; - let mut cx = cx.binding(["v", "w", "x"]); - cx.assert("The quick ˇbrown", "The quickˇ "); + let mut cx = NeovimBackedTestContext::new(cx) + .await + .binding(["v", "w", "x"]); + cx.assert("The quick ˇbrown").await; let mut cx = cx.binding(["v", "w", "j", "x"]); - cx.assert( - indoc! {" + cx.assert(indoc! {" The ˇquick brown fox jumps over - the lazy dog"}, - indoc! {" - The ˇver - the lazy dog"}, - ); + the lazy dog"}) + .await; // Test pasting code copied on delete - cx.simulate_keystrokes(["j", "p"]); - cx.assert_editor_state(indoc! {" - The ver - the lˇquick brown - fox jumps oazy dog"}); + cx.simulate_shared_keystrokes(["j", "p"]).await; + cx.assert_state_matches().await; - cx.assert( - indoc! {" - The quick brown - fox jumps over - the ˇlazy dog"}, - indoc! {" - The quick brown + cx.assert_all(indoc! {" + The ˇquick brown fox jumps over - the ˇog"}, - ); - cx.assert( - indoc! {" - The quick brown - fox jumps ˇover - the lazy dog"}, - indoc! {" - The quick brown - fox jumps ˇhe lazy dog"}, - ); + the ˇlazy dog"}) + .await; let mut cx = cx.binding(["v", "b", "k", "x"]); - cx.assert( - indoc! {" + cx.assert_all(indoc! {" The ˇquick brown - fox jumps over - the lazy dog"}, - indoc! {" - ˇuick brown - fox jumps over - the lazy dog"}, - ); - cx.assert( - indoc! {" - The quick brown - fox jumps over - the ˇlazy dog"}, - indoc! {" - The quick brown - ˇazy dog"}, - ); - cx.assert( - indoc! {" - The quick brown fox jumps ˇover - the lazy dog"}, - indoc! {" - The ˇver - the lazy dog"}, - ); + the ˇlazy dog"}) + .await; } #[gpui::test] async fn test_visual_line_delete(cx: &mut gpui::TestAppContext) { - let cx = VimTestContext::new(cx, true).await; - let mut cx = cx.binding(["shift-v", "x"]); - cx.assert( - indoc! {" + let mut cx = NeovimBackedTestContext::new(cx) + .await + .binding(["shift-v", "x"]); + cx.assert(indoc! {" The quˇick brown fox jumps over - the lazy dog"}, - indoc! {" - fox juˇmps over - the lazy dog"}, - ); + the lazy dog"}) + .await; // Test pasting code copied on delete - cx.simulate_keystroke("p"); - cx.assert_editor_state(indoc! {" - fox jumps over - ˇThe quick brown - the lazy dog"}); + cx.simulate_shared_keystroke("p").await; + cx.assert_state_matches().await; - cx.assert( - indoc! {" + cx.assert_all(indoc! {" The quick brown fox juˇmps over - the lazy dog"}, - indoc! {" - The quick brown - the laˇzy dog"}, - ); - cx.assert( - indoc! {" - The quick brown - fox jumps over - the laˇzy dog"}, - indoc! {" - The quick brown - fox juˇmps over"}, - ); + the laˇzy dog"}) + .await; let mut cx = cx.binding(["shift-v", "j", "x"]); - cx.assert( - indoc! {" + cx.assert(indoc! {" The quˇick brown fox jumps over - the lazy dog"}, - "the laˇzy dog", - ); + the lazy dog"}) + .await; // Test pasting code copied on delete - cx.simulate_keystroke("p"); - cx.assert_editor_state(indoc! {" - the lazy dog - ˇThe quick brown - fox jumps over"}); + cx.simulate_shared_keystroke("p").await; + cx.assert_state_matches().await; - cx.assert( - indoc! {" + cx.assert_all(indoc! {" The quick brown fox juˇmps over - the lazy dog"}, - "The quˇick brown", - ); - cx.assert( - indoc! {" - The quick brown - fox jumps over - the laˇzy dog"}, - indoc! {" - The quick brown - fox juˇmps over"}, - ); + the laˇzy dog"}) + .await; } #[gpui::test] diff --git a/crates/vim/test_data/neovim_backed_test_context_works.json b/crates/vim/test_data/neovim_backed_test_context_works.json index 4b0312565e9aae62aec998a71ea53af44f44aab6..807c9010e894d43c47b62277de177b48bd8f4268 100644 --- a/crates/vim/test_data/neovim_backed_test_context_works.json +++ b/crates/vim/test_data/neovim_backed_test_context_works.json @@ -1 +1 @@ -[{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"This is a test"},{"Head":{"row":0,"column":13}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":""},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"This is a test"},{"Mode":"Normal"},{"Selection":{"start":[0,13],"end":[0,13]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_a.json b/crates/vim/test_data/test_a.json index fc9d170879ed701f86e93e72a6bf7787e7c77b81..32ea8ac6a6fca1bf41c2c5de3b5d49e4280dabb3 100644 --- a/crates/vim/test_data/test_a.json +++ b/crates/vim/test_data/test_a.json @@ -1 +1 @@ -[{"Text":"The quick"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quick"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"The quick"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quick"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_backspace.json b/crates/vim/test_data/test_backspace.json index 3659773665cc82d0ca276dbf7f1cc1899b6ffa29..d002dfa718ced0aafb6ec330ff5e84adf112b5b3 100644 --- a/crates/vim/test_data/test_backspace.json +++ b/crates/vim/test_data/test_backspace.json @@ -1 +1 @@ -[{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":4}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_change_around_sentence.json b/crates/vim/test_data/test_change_around_sentence.json index 9e01890d9fce7d6758063a9fe0b5873c12e4c51c..187e766f118754814c9d1ae3a64c9efc3c8f0a1b 100644 --- a/crates/vim/test_data/test_change_around_sentence.json +++ b/crates/vim/test_data/test_change_around_sentence.json @@ -1 +1 @@ -[{"Text":"Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":27}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":27}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":27}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":27}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Head":{"row":2,"column":13}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Head":{"row":2,"column":13}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Head":{"row":2,"column":13}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":21}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":21}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"Fox Jumps! Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"Fox Jumps! Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"Fox Jumps! Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Insert"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Insert"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Insert"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Insert"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Mode":"Insert"},{"Selection":{"start":[2,13],"end":[2,13]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Mode":"Insert"},{"Selection":{"start":[2,13],"end":[2,13]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Mode":"Insert"},{"Selection":{"start":[2,13],"end":[2,13]}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Mode":"Insert"},{"Selection":{"start":[0,21],"end":[0,21]}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Mode":"Insert"},{"Selection":{"start":[0,21],"end":[0,21]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_change_around_word.json b/crates/vim/test_data/test_change_around_word.json index c8724a6810e3263a7c1d198c398bd16abeef7934..3463c5c6d621e1963c589d44d6212deb51c35e7c 100644 --- a/crates/vim/test_data/test_change_around_word.json +++ b/crates/vim/test_data/test_change_around_word.json @@ -1 +1 @@ -[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":3}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n-jumps over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n-jumps over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n-jumps over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":6}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Head":{"row":10,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n"},{"Head":{"row":11,"column":0}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":2}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Head":{"row":10,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n"},{"Head":{"row":11,"column":0}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,15],"end":[0,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,9],"end":[1,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,12],"end":[2,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,3],"end":[6,3]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,10],"end":[6,10]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,15],"end":[6,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,6],"end":[9,6]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[10,12],"end":[10,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n"},{"Mode":"Insert"},{"Selection":{"start":[11,0],"end":[11,0]}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,15],"end":[0,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,9],"end":[1,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,12],"end":[2,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,10],"end":[6,10]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,15],"end":[6,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,2],"end":[9,2]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[10,12],"end":[10,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n"},{"Mode":"Insert"},{"Selection":{"start":[11,0],"end":[11,0]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_change_in_sentence.json b/crates/vim/test_data/test_change_in_sentence.json index 08dbca368a110319fdce8207aea3ef24581cbb1a..5058d5b569e5508dddec545c80ee2598c3a6c8f6 100644 --- a/crates/vim/test_data/test_change_in_sentence.json +++ b/crates/vim/test_data/test_change_in_sentence.json @@ -1 +1 @@ -[{"Text":" Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown?Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":16}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!Over the lazy."},{"Head":{"row":0,"column":27}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps! "},{"Head":{"row":0,"column":28}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps! "},{"Head":{"row":0,"column":28}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps! "},{"Head":{"row":0,"column":28}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.The quick \nbrown fox jumps over\n"},{"Head":{"row":2,"column":13}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Head":{"row":2,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Head":{"row":2,"column":14}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":21}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":21}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" Brown fox jumps."},{"Head":{"row":0,"column":37}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":" Fox Jumps! Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" Fox Jumps! Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" Fox Jumps! Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown?Fox Jumps! Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,16],"end":[0,16]}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Insert"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps!Over the lazy."},{"Mode":"Insert"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps! "},{"Mode":"Insert"},{"Selection":{"start":[0,28],"end":[0,28]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps! "},{"Mode":"Insert"},{"Selection":{"start":[0,28],"end":[0,28]}},{"Mode":"Insert"},{"Text":"The quick brown? Fox Jumps! "},{"Mode":"Insert"},{"Selection":{"start":[0,28],"end":[0,28]}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.The quick \nbrown fox jumps over\n"},{"Mode":"Insert"},{"Selection":{"start":[2,13],"end":[2,13]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Mode":"Insert"},{"Selection":{"start":[2,14],"end":[2,14]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Mode":"Insert"},{"Selection":{"start":[2,14],"end":[2,14]}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" Brown fox jumps. "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Mode":"Insert"},{"Selection":{"start":[0,21],"end":[0,21]}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" "},{"Mode":"Insert"},{"Selection":{"start":[0,21],"end":[0,21]}},{"Mode":"Insert"},{"Text":"The quick brown.)]'\" Brown fox jumps."},{"Mode":"Insert"},{"Selection":{"start":[0,37],"end":[0,37]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_change_in_word.json b/crates/vim/test_data/test_change_in_word.json index eaa390e50f62a7581949494b07879fc9ae9de5c0..ef65a0929126a670e5ac1a7cfaa4c8053571ec6e 100644 --- a/crates/vim/test_data/test_change_in_word.json +++ b/crates/vim/test_data/test_change_in_word.json @@ -1 +1 @@ -[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":3}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox- over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":6}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Head":{"row":10,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":11,"column":0}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":15}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":2}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Head":{"row":10,"column":12}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":11,"column":0}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,15],"end":[0,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,9],"end":[1,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,12],"end":[2,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,3],"end":[6,3]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,10],"end":[6,10]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,15],"end":[6,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox- over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,6],"end":[9,6]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Mode":"Insert"},{"Selection":{"start":[10,12],"end":[10,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[11,0],"end":[11,0]}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[0,15],"end":[0,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,9],"end":[1,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,12],"end":[2,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,10],"end":[6,10]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[6,15],"end":[6,15]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[9,2],"end":[9,2]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Mode":"Insert"},{"Selection":{"start":[10,12],"end":[10,12]}},{"Mode":"Insert"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Insert"},{"Selection":{"start":[11,0],"end":[11,0]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_delete_around_sentence.json b/crates/vim/test_data/test_delete_around_sentence.json index 479f0cc77c8aff57d10c1fa98b773c0ffea7b41c..b18c6ffa76fcb319a17bfc58edbd899cd0a970ca 100644 --- a/crates/vim/test_data/test_delete_around_sentence.json +++ b/crates/vim/test_data/test_delete_around_sentence.json @@ -1 +1 @@ -[{"Text":"Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":26}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":26}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":26}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Head":{"row":0,"column":26}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Head":{"row":2,"column":12}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Head":{"row":2,"column":12}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Head":{"row":2,"column":12}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":20}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":20}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"Fox Jumps! Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"Fox Jumps! Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"Fox Jumps! Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Normal"},{"Selection":{"start":[0,26],"end":[0,26]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Normal"},{"Selection":{"start":[0,26],"end":[0,26]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Normal"},{"Selection":{"start":[0,26],"end":[0,26]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!"},{"Mode":"Normal"},{"Selection":{"start":[0,26],"end":[0,26]}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Mode":"Normal"},{"Selection":{"start":[2,12],"end":[2,12]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Mode":"Normal"},{"Selection":{"start":[2,12],"end":[2,12]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.\n"},{"Mode":"Normal"},{"Selection":{"start":[2,12],"end":[2,12]}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Mode":"Normal"},{"Selection":{"start":[0,20],"end":[0,20]}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Mode":"Normal"},{"Selection":{"start":[0,20],"end":[0,20]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_delete_around_word.json b/crates/vim/test_data/test_delete_around_word.json index 37e370d3bd1756b74fa1e585795eedeb971e2983..aec3fdd39a33e6cf740be6d3bb14b38aa52cab44 100644 --- a/crates/vim/test_data/test_delete_around_word.json +++ b/crates/vim/test_data/test_delete_around_word.json @@ -1 +1 @@ -[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":9}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":15}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":8}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":3}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":15}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n-jumps over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n-jumps over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n-jumps over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":6}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Head":{"row":10,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog "},{"Head":{"row":10,"column":0}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":9}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":15}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":8}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":15}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":2}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Head":{"row":10,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog "},{"Head":{"row":10,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Normal"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,15],"end":[0,15]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,8],"end":[1,8]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,3],"end":[6,3]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,15],"end":[6,15]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,6],"end":[9,6]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[10,11],"end":[10,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog "},{"Mode":"Normal"},{"Selection":{"start":[10,0],"end":[10,0]}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Normal"},{"Text":"The quick brown jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,15],"end":[0,15]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,8],"end":[1,8]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,15],"end":[6,15]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,2],"end":[9,2]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[10,11],"end":[10,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog "},{"Mode":"Normal"},{"Selection":{"start":[10,0],"end":[10,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_delete_in_sentence.json b/crates/vim/test_data/test_delete_in_sentence.json index 1ecaa01ee65cba1000ccf086ef92f32f79aa9c02..31891d19cbd2b31ed74ba61241b5bbf0c8b02f7d 100644 --- a/crates/vim/test_data/test_delete_in_sentence.json +++ b/crates/vim/test_data/test_delete_in_sentence.json @@ -1 +1 @@ -[{"Text":" Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown?Fox Jumps! Over the lazy."},{"Head":{"row":0,"column":16}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Head":{"row":0,"column":17}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!Over the lazy."},{"Head":{"row":0,"column":27}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps! "},{"Head":{"row":0,"column":27}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps! "},{"Head":{"row":0,"column":27}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps! "},{"Head":{"row":0,"column":27}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.The quick \nbrown fox jumps over\n"},{"Head":{"row":2,"column":13}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Head":{"row":2,"column":13}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Head":{"row":2,"column":13}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":21}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Head":{"row":0,"column":21}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" Brown fox jumps."},{"Head":{"row":0,"column":36}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":" Fox Jumps! Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" Fox Jumps! Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" Fox Jumps! Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick brown?Fox Jumps! Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,16],"end":[0,16]}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Normal"},{"Text":"The quick brown? Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,17],"end":[0,17]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps!Over the lazy."},{"Mode":"Normal"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps! "},{"Mode":"Normal"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps! "},{"Mode":"Normal"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Normal"},{"Text":"The quick brown? Fox Jumps! "},{"Mode":"Normal"},{"Selection":{"start":[0,27],"end":[0,27]}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog.The quick \nbrown fox jumps over\n"},{"Mode":"Normal"},{"Selection":{"start":[2,13],"end":[2,13]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Mode":"Normal"},{"Selection":{"start":[2,13],"end":[2,13]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog. \n"},{"Mode":"Normal"},{"Selection":{"start":[2,13],"end":[2,13]}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":" Brown fox jumps. "},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Mode":"Normal"},{"Selection":{"start":[0,21],"end":[0,21]}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" "},{"Mode":"Normal"},{"Selection":{"start":[0,21],"end":[0,21]}},{"Mode":"Normal"},{"Text":"The quick brown.)]'\" Brown fox jumps."},{"Mode":"Normal"},{"Selection":{"start":[0,36],"end":[0,36]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_delete_in_word.json b/crates/vim/test_data/test_delete_in_word.json index 1960dce67a8eaf57c9abfd35a9bbbf2d90428caf..c15c6ce2085d1963fe7f21ac364eee8ef33700e6 100644 --- a/crates/vim/test_data/test_delete_in_word.json +++ b/crates/vim/test_data/test_delete_in_word.json @@ -1 +1 @@ -[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":14}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":3}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":14}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox- over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":6}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Head":{"row":10,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":11,"column":0}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":0,"column":14}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":1,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":2,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":5,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":6,"column":14}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":7,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":8,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Head":{"row":9,"column":2}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Head":{"row":10,"column":11}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Head":{"row":11,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,9],"end":[1,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThequick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,3],"end":[6,3]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe- brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,4],"end":[6,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,10],"end":[6,10]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,14],"end":[6,14]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox- over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,6],"end":[9,6]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Mode":"Normal"},{"Selection":{"start":[10,11],"end":[10,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[11,0],"end":[11,0]}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumpsover\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[1,9],"end":[1,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog\n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[5,0],"end":[5,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\n brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,0],"end":[6,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quickbrown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,9],"end":[6,9]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,10],"end":[6,10]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown\n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[6,14],"end":[6,14]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n\n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[7,0],"end":[7,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n\n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[8,0],"end":[8,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \nfox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,0],"end":[9,0]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[9,2],"end":[9,2]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog\n\n"},{"Mode":"Normal"},{"Selection":{"start":[10,11],"end":[10,11]}},{"Mode":"Normal"},{"Text":"The quick brown \nfox jumps over\nthe lazy dog \n\n\n\nThe-quick brown \n \n \n fox-jumps over\nthe lazy dog \n\n"},{"Mode":"Normal"},{"Selection":{"start":[11,0],"end":[11,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_e.json b/crates/vim/test_data/test_e.json index bd3c513846bfd3d15aec4559d2bfd8554422f03c..c4650284ddfc2a71e27e1ad070a3155b1863be8b 100644 --- a/crates/vim/test_data/test_e.json +++ b/crates/vim/test_data/test_e.json @@ -1 +1 @@ -[{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":9}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":14}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":8}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":13}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":14}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":14}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":14}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":8}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":13}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,8],"end":[3,8]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,13],"end":[3,13]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,8],"end":[3,8]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,13],"end":[3,13]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_enter_visual_mode.json b/crates/vim/test_data/test_enter_visual_mode.json new file mode 100644 index 0000000000000000000000000000000000000000..43d1e0559a46ffd0bd996e1af0b1b1db22aeed51 --- /dev/null +++ b/crates/vim/test_data/test_enter_visual_mode.json @@ -0,0 +1 @@ +[{"Text":"The quick brown\nfox jumps over\nthe lazy dog"},{"Mode":{"Visual":{"line":false}}},{"Selection":{"start":[0,4],"end":[1,10]}},{"Mode":{"Visual":{"line":false}}},{"Text":"The quick brown\nfox jumps over\nthe lazy dog"},{"Mode":{"Visual":{"line":false}}},{"Selection":{"start":[1,10],"end":[2,0]}},{"Mode":{"Visual":{"line":false}}},{"Text":"The quick brown\nfox jumps over\nthe lazy dog"},{"Mode":{"Visual":{"line":false}}},{"Selection":{"start":[2,4],"end":[2,9]}},{"Mode":{"Visual":{"line":false}}},{"Text":"The quick brown\nfox jumps over\nthe lazy dog"},{"Mode":{"Visual":{"line":false}}},{"Selection":{"start":[0,0],"end":[0,4]}},{"Mode":{"Visual":{"line":false}}},{"Text":"The quick brown\nfox jumps over\nthe lazy dog"},{"Mode":{"Visual":{"line":false}}},{"Selection":{"start":[0,4],"end":[1,10]}},{"Mode":{"Visual":{"line":false}}},{"Text":"The quick brown\nfox jumps over\nthe lazy dog"},{"Mode":{"Visual":{"line":false}}},{"Selection":{"start":[1,0],"end":[2,4]}},{"Mode":{"Visual":{"line":false}}}] \ No newline at end of file diff --git a/crates/vim/test_data/test_gg.json b/crates/vim/test_data/test_gg.json index 7ce13ba6cb7566fe8944e34a3bcf7aee6dbbc060..ef301ba221ca77642cb47ff3803f0466282de694 100644 --- a/crates/vim/test_data/test_gg.json +++ b/crates/vim/test_data/test_gg.json @@ -1 +1 @@ -[{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Head":{"row":0,"column":5}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Head":{"row":0,"column":5}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"},{"Text":"\n\nbrown fox jumps\nover the lazy dog"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,5],"end":[0,5]}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,5],"end":[0,5]}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"},{"Text":"\n\nbrown fox jumps\nover the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_h.json b/crates/vim/test_data/test_h.json index 7626f1b1219e9638f30400e0460068408994eaa2..6eeff7997f69b435ff6d7ad8597648c52ffd0ae9 100644 --- a/crates/vim/test_data/test_h.json +++ b/crates/vim/test_data/test_h.json @@ -1 +1 @@ -[{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":4}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_insert_end_of_line.json b/crates/vim/test_data/test_insert_end_of_line.json index 887ba4dabcdaa9eadade2f7550c845dde0b67463..6b377b0d2057829bc5e8031c83b071f44043b8b1 100644 --- a/crates/vim/test_data/test_insert_end_of_line.json +++ b/crates/vim/test_data/test_insert_end_of_line.json @@ -1 +1 @@ -[{"Text":"\nThe quick\nbrown fox "},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nThe quick\nbrown fox "},{"Head":{"row":1,"column":9}},{"Mode":"Insert"},{"Text":"\nThe quick\nbrown fox "},{"Head":{"row":2,"column":10}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"\nThe quick\nbrown fox "},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nThe quick\nbrown fox "},{"Mode":"Insert"},{"Selection":{"start":[1,9],"end":[1,9]}},{"Mode":"Insert"},{"Text":"\nThe quick\nbrown fox "},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_insert_line_above.json b/crates/vim/test_data/test_insert_line_above.json index 0dc54b6f8845a90f7a984279ffcbd4b16ab0c545..45854367aeb1e866346329f46143a7ec1ac9c4b9 100644 --- a/crates/vim/test_data/test_insert_line_above.json +++ b/crates/vim/test_data/test_insert_line_above.json @@ -1 +1 @@ -[{"Text":"\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nThe quick"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nThe quick\nbrown fox\njumps over"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick\n\nbrown fox\njumps over"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick\nbrown fox\n\njumps over"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick\n\n\nbrown fox"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nThe quick"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nThe quick\nbrown fox\njumps over"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick\n\nbrown fox\njumps over"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick\nbrown fox\n\njumps over"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick\n\n\nbrown fox"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_j.json b/crates/vim/test_data/test_j.json index b3202075f505b64d9b526875e22d56245edac2b7..da373bbcad0fe0b6d4f0f4645d9fd339d7f84e11 100644 --- a/crates/vim/test_data/test_j.json +++ b/crates/vim/test_data/test_j.json @@ -1 +1 @@ -[{"Text":"The quick brown\nfox jumps"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps"},{"Head":{"row":1,"column":5}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps"},{"Head":{"row":1,"column":8}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick brown\nfox jumps"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps"},{"Mode":"Normal"},{"Selection":{"start":[1,5],"end":[1,5]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps"},{"Mode":"Normal"},{"Selection":{"start":[1,8],"end":[1,8]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_jump_to_end.json b/crates/vim/test_data/test_jump_to_end.json index 71bd396efe9fdad2ef3f338dd7152aab33df5465..c556c7cb169a0582c9212d8eb2eb6ec807cc901e 100644 --- a/crates/vim/test_data/test_jump_to_end.json +++ b/crates/vim/test_data/test_jump_to_end.json @@ -1 +1 @@ -[{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Head":{"row":3,"column":16}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown"},{"Head":{"row":2,"column":4}},{"Mode":"Normal"},{"Text":"The quick\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown fox jumps\nover the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[3,16],"end":[3,16]}},{"Mode":"Normal"},{"Text":"The quick\n\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"The quick\n\n"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_jump_to_line_boundaries.json b/crates/vim/test_data/test_jump_to_line_boundaries.json index 48dd51a219b10cd7f814cfa2b05cfe2ccc663d11..386a2db23fb168d715e072881e70ffcf5cd918ff 100644 --- a/crates/vim/test_data/test_jump_to_line_boundaries.json +++ b/crates/vim/test_data/test_jump_to_line_boundaries.json @@ -1 +1 @@ -[{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_k.json b/crates/vim/test_data/test_k.json index d99237d71aba0a883a41c6f955b204da5f2c250e..cd5242c0f39f22b8b2a3b23e64d2f92297b47ba5 100644 --- a/crates/vim/test_data/test_k.json +++ b/crates/vim/test_data/test_k.json @@ -1 +1 @@ -[{"Text":"The quick\nbrown fox jumps"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Head":{"row":0,"column":5}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Head":{"row":0,"column":7}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick\nbrown fox jumps"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Mode":"Normal"},{"Selection":{"start":[0,5],"end":[0,5]}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Mode":"Normal"},{"Selection":{"start":[0,7],"end":[0,7]}},{"Mode":"Normal"},{"Text":"The quick\nbrown fox jumps"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_l.json b/crates/vim/test_data/test_l.json index 33f70e2ee9be06f3e6e9b207a8d1d57fdaf008f2..3d6c4b34936935de580ed3143dcb45e1f06464df 100644 --- a/crates/vim/test_data/test_l.json +++ b/crates/vim/test_data/test_l.json @@ -1 +1 @@ -[{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":1}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":6}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":0,"column":8}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":1,"column":1}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Head":{"row":1,"column":4}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,1],"end":[0,1]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[0,8],"end":[0,8]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[1,1],"end":[1,1]}},{"Mode":"Normal"},{"Text":"The quick\nbrown"},{"Mode":"Normal"},{"Selection":{"start":[1,4],"end":[1,4]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_neovim.json b/crates/vim/test_data/test_neovim.json index 678e4f7852fbc979fd489f15a7bed206955d3433..eba763f6766890f6b82ad903f2ee8e0c4d719c3e 100644 --- a/crates/vim/test_data/test_neovim.json +++ b/crates/vim/test_data/test_neovim.json @@ -1 +1 @@ -[{"Text":"test"},{"Head":{"row":0,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"test"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_repeated_cb.json b/crates/vim/test_data/test_repeated_cb.json index 357e37a8c953d4dfa8c8492c6864427f5b15ee8b..b00195b2d9cee9f3cc15f3bf2e2a1d1aae2b5bd4 100644 --- a/crates/vim/test_data/test_repeated_cb.json +++ b/crates/vim/test_data/test_repeated_cb.json @@ -1 +1 @@ -[{"Text":"The ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Insert"},{"Text":"The brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Insert"},{"Text":"The quick n\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick \n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\njumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox -over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsover\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-ver\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The n\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Insert"},{"Text":"The \n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\njumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsver\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"n\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The \nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Insert"},{"Text":"The quick jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nover\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox ver\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox \nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"n\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Insert"},{"Text":"The quick -over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\nover\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nver\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"n\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The -over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Insert"},{"Text":"The quick over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\nver\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"The ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Insert"},{"Text":"The brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Insert"},{"Text":"The quick n\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick \n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\njumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox -over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-ver\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The n\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Insert"},{"Text":"The \n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Insert"},{"Text":"The quick \nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown\njumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsver\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"n\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The \nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Insert"},{"Text":"The quick jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox ver\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox \nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"n\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Insert"},{"Text":"The quick -over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown\nover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nver\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"ick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"n\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The -over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Insert"},{"Text":"The quick over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Insert"},{"Text":"The quick brown\nver\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_repeated_ce.json b/crates/vim/test_data/test_repeated_ce.json index 32394077e63d8a8da4c704010b2ba366433d5d53..3251127aed9aa15b69e6dfbf164d2eaca15f4949 100644 --- a/crates/vim/test_data/test_repeated_ce.json +++ b/crates/vim/test_data/test_repeated_ce.json @@ -1 +1 @@ -[{"Text":" quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The qu brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quick\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox -over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The qu\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quick jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow-over\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps- lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o lazy dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The qu jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quick-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick browover\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\nover\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nover\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox \nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps- dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":" jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The qu-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quickover\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quover\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quick\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":" quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The qu brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quick\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox -over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":" brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The qu\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quick jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps- lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n dog\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The qu jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quick-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick browover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\nover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox \nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps- dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":" jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The qu-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quickover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quick\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_repeated_cj.json b/crates/vim/test_data/test_repeated_cj.json index f6c81c9a4a8d8e9da9ab3067ee9a949af8f0fc6f..0b8ac804429b4e313ecda571b4b4df579283967e 100644 --- a/crates/vim/test_data/test_repeated_cj.json +++ b/crates/vim/test_data/test_repeated_cj.json @@ -1 +1 @@ -[{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":""},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":""},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_repeated_cl.json b/crates/vim/test_data/test_repeated_cl.json index 7eaf17b24a42c26616dbd098de7702f060a70570..89f6a104af952a6f35b98818b51f1e2c5a8b5925 100644 --- a/crates/vim/test_data/test_repeated_cl.json +++ b/crates/vim/test_data/test_repeated_cl.json @@ -1 +1 @@ -[{"Text":"he quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quck brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quickbrown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox umps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsover\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-ver\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-oer\nthe lazy dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nhe lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"e quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The quk brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quickrown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nx jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox mps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsver\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-er\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-or\nthe lazy dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\ne lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":" quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The qu brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quickown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\n jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox ps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpser\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-r\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The qubrown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quickwn\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\njumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox s-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsr\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nlazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"},{"Text":"uick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":0}},{"Mode":"Insert"},{"Text":"The qurown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":6}},{"Mode":"Insert"},{"Text":"The quickn\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":9}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":14}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\numps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox -over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Head":{"row":2,"column":11}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Insert"}] \ No newline at end of file +[{"Text":"he quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quck brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quickbrown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox umps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsover\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-ver\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-oer\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nhe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"e quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The quk brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quickrown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nx jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox mps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsver\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-er\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-or\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\ne lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":" quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The qu brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quickown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\n jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox ps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpser\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-r\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\n lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The qubrown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quickwn\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\njumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox s-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumpsr\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nlazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"},{"Text":"uick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Insert"},{"Text":"The qurown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Insert"},{"Text":"The quickn\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Insert"},{"Text":"The quick brow\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[0,14],"end":[0,14]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\numps-over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox -over\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-o\nthe lazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[2,11],"end":[2,11]}},{"Mode":"Insert"},{"Text":"The quick brown\n\nfox jumps-over\nazy dog\n"},{"Mode":"Insert"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Insert"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_repeated_word.json b/crates/vim/test_data/test_repeated_word.json index 330ada201317f1815aa3b6f9d03911ff136449e4..54caf22a3eee5bb147b0de9579459812d746a73a 100644 --- a/crates/vim/test_data/test_repeated_word.json +++ b/crates/vim/test_data/test_repeated_word.json @@ -1 +1 @@ -[{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":2,"column":10}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":4}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":3,"column":9}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,9],"end":[3,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,9],"end":[3,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,9],"end":[3,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,9],"end":[3,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,9],"end":[2,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[2,10],"end":[2,10]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,4],"end":[3,4]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[3,9],"end":[3,9]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick brown\n\nfox jumps-over\nthe lazy dog\n"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_visual_delete.json b/crates/vim/test_data/test_visual_delete.json new file mode 100644 index 0000000000000000000000000000000000000000..50750714d0b9edc386a54fd618c385201cc87c4f --- /dev/null +++ b/crates/vim/test_data/test_visual_delete.json @@ -0,0 +1 @@ +[{"Text":"The quick "},{"Mode":"Normal"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Normal"},{"Text":"The ver\nthe lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Normal"},{"Text":"The ver\nthe lquick brown\nfox jumps oazy dog"},{"Mode":"Normal"},{"Selection":{"start":[1,5],"end":[1,5]}},{"Mode":"Normal"},{"Text":"The ver\nthe lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps over\nthe og"},{"Mode":"Normal"},{"Selection":{"start":[2,4],"end":[2,4]}},{"Mode":"Normal"},{"Text":"uick brown\nfox jumps over\nthe lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,0],"end":[0,0]}},{"Mode":"Normal"},{"Text":"The ver\nthe lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,4],"end":[0,4]}},{"Mode":"Normal"},{"Text":"The quick brown\nazy dog"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_visual_line_delete.json b/crates/vim/test_data/test_visual_line_delete.json new file mode 100644 index 0000000000000000000000000000000000000000..e291fe1034f725b3ebe0b6112fbeea0e021517d3 --- /dev/null +++ b/crates/vim/test_data/test_visual_line_delete.json @@ -0,0 +1 @@ +[{"Text":"fox jumps over\nthe lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Normal"},{"Text":"fox jumps over\nThe quick brown\nthe lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick brown\nthe lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[1,6],"end":[1,6]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps over"},{"Mode":"Normal"},{"Selection":{"start":[1,6],"end":[1,6]}},{"Mode":"Normal"},{"Text":"the lazy dog"},{"Mode":"Normal"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Normal"},{"Text":"the lazy dog\nThe quick brown\nfox jumps over"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick brown"},{"Mode":"Normal"},{"Selection":{"start":[0,6],"end":[0,6]}},{"Mode":"Normal"},{"Text":"The quick brown\nfox jumps over"},{"Mode":"Normal"},{"Selection":{"start":[1,6],"end":[1,6]}},{"Mode":"Normal"}] \ No newline at end of file diff --git a/crates/vim/test_data/test_w.json b/crates/vim/test_data/test_w.json index 73954548f9b7f8589965e1a7307a26c339a0d059..b6fadf7ec1f96cee2187a6ef215e80e8d6ed7254 100644 --- a/crates/vim/test_data/test_w.json +++ b/crates/vim/test_data/test_w.json @@ -1 +1 @@ -[{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":9}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":0,"column":10}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":10}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":1,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":2,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":3,"column":10}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":0}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Head":{"row":4,"column":2}},{"Mode":"Normal"}] \ No newline at end of file +[{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,9],"end":[0,9]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[0,10],"end":[0,10]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,10],"end":[3,10]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[1,0],"end":[1,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[2,0],"end":[2,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,0],"end":[3,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[3,10],"end":[3,10]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,0],"end":[4,0]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"},{"Text":"The quick-brown\n\n\nfox_jumps over\nthe"},{"Mode":"Normal"},{"Selection":{"start":[4,2],"end":[4,2]}},{"Mode":"Normal"}] \ No newline at end of file