@@ -63,13 +63,13 @@ use helix_lsp::lsp;
63use url::Url;
63use url::Url;
65impl Document {
65impl Document {
66− pub fn new(state: State) -> Self {
66+ pub fn new(text: Rope) -> Self {
67− let changes = ChangeSet::new(&state.doc);
67+ let changes = ChangeSet::new(&text);
68 let old_state = None;
68 let old_state = None;
71 path: None,
71 path: None,
72− state,
72+ state: State::new(text),
73 mode: Mode::Normal,
73 mode: Mode::Normal,
74 restore_cursor: false,
74 restore_cursor: false,
75 syntax: None,
75 syntax: None,
@@ -93,7 +93,7 @@ impl Document {
94 // TODO: create if not found
94 // TODO: create if not found
96− let mut doc = Self::new(State::new(doc));
96+ let mut doc = Self::new(doc);
98 let language_config = LOADER.language_config_for_file_name(path.as_path());
98 let language_config = LOADER.language_config_for_file_name(path.as_path());
99 doc.set_language(language_config, scopes);
99 doc.set_language(language_config, scopes);
@@ -340,13 +340,10 @@ mod test {
342 fn changeset_to_changes() {
342 fn changeset_to_changes() {
343− use helix_core::{Rope, State, Transaction};
344− // use helix_view::Document;
345 use helix_lsp::{lsp, Client};
343 use helix_lsp::{lsp, Client};
346 let text = Rope::from("hello");
344 let text = Rope::from("hello");
347− let mut state = State::new(text);
345+ let mut doc = Document::new(text);
348− state.selection = Selection::single(5, 5);
346+ doc.set_selection(Selection::single(5, 5));
349− let mut doc = Document::new(state);
351 // insert
348 // insert