added file rendering

pull/1/head
Jan Hrastnik 4 years ago
parent 8119f1ec3d
commit 8958f06f08

@ -117,6 +117,12 @@ impl State {
Selection::new(ranges.collect(), sel.primary_index) Selection::new(ranges.collect(), sel.primary_index)
// TODO: update selection in state via transaction // TODO: update selection in state via transaction
} }
pub fn file(&self) -> &Rope {
// used to access file contents for rendering to screen
let copy = &self.doc.contents;
copy
}
} }
/// Coordinates are a 0-indexed line and column pair. /// Coordinates are a 0-indexed line and column pair.

@ -2,7 +2,8 @@ use crossterm::{
cursor, cursor,
cursor::position, cursor::position,
event::{self, read, Event, EventStream, KeyCode, KeyEvent}, event::{self, read, Event, EventStream, KeyCode, KeyEvent},
execute, queue, style, execute, queue,
style::Print,
terminal::{self, disable_raw_mode, enable_raw_mode}, terminal::{self, disable_raw_mode, enable_raw_mode},
}; };
use futures::{future::FutureExt, select, StreamExt}; use futures::{future::FutureExt, select, StreamExt};
@ -39,6 +40,10 @@ impl Editor {
fn render(&self) { fn render(&self) {
// TODO: // TODO:
match &self.state {
Some(s) => execute!(stdout(), cursor::MoveTo(0, 0), Print(s.file())).unwrap(),
None => (),
}
} }
pub async fn print_events(&mut self) { pub async fn print_events(&mut self) {

@ -0,0 +1,3 @@
aaa
bbb
ccc
Loading…
Cancel
Save