diff --git a/Cargo.toml b/Cargo.toml index f1faa17..8dd37f7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,6 +8,7 @@ name = "Led" version = "0.0.2" authors = ["Nathan Vegdahl "] license = "MIT" +edition = "2018" [[bin]] name = "led" diff --git a/src/buffer/mod.rs b/src/buffer/mod.rs index f4bf00d..1c4b852 100644 --- a/src/buffer/mod.rs +++ b/src/buffer/mod.rs @@ -1,19 +1,22 @@ #![allow(dead_code)] -use std::fs::File; -use std::io; -use std::io::{BufReader, BufWriter, Write}; -use std::path::{Path, PathBuf}; - -use self::undo_stack::Operation::*; -use self::undo_stack::UndoStack; -use ropey; -use ropey::{Rope, RopeSlice}; -use string_utils::char_count; -use utils::{is_grapheme_boundary, next_grapheme_boundary, prev_grapheme_boundary, RopeGraphemes}; - mod undo_stack; +use std::{ + fs::File, + io::{self, BufReader, BufWriter, Write}, + path::{Path, PathBuf}, +}; + +use ropey::{self, Rope, RopeSlice}; + +use crate::{ + string_utils::char_count, + utils::{is_grapheme_boundary, next_grapheme_boundary, prev_grapheme_boundary, RopeGraphemes}, +}; + +use self::undo_stack::{Operation::*, UndoStack}; + // ============================================================= // Buffer // ============================================================= diff --git a/src/editor/cursor.rs b/src/editor/cursor.rs index 9b41a09..567b3a6 100644 --- a/src/editor/cursor.rs +++ b/src/editor/cursor.rs @@ -1,11 +1,12 @@ #![allow(dead_code)] -use std::cmp::Ordering; -use std::ops::{Index, IndexMut}; -use std::slice::{Iter, IterMut}; +use std::{ + cmp::Ordering, + ops::{Index, IndexMut}, + slice::{Iter, IterMut}, +}; -use buffer::Buffer; -use formatter::LineFormatter; +use crate::{buffer::Buffer, formatter::LineFormatter}; /// A text cursor. Also represents selections when range.0 != range.1. /// diff --git a/src/editor/mod.rs b/src/editor/mod.rs index 887ad74..2dcbae8 100644 --- a/src/editor/mod.rs +++ b/src/editor/mod.rs @@ -1,17 +1,22 @@ #![allow(dead_code)] -use std::collections::HashMap; +mod cursor; + +use std::{ + cmp::{max, min}, + collections::HashMap, + path::{Path, PathBuf}, +}; + +use crate::{ + buffer::Buffer, + formatter::LineFormatter, + formatter::RoundingBehavior::*, + string_utils::{char_count, rope_slice_to_line_ending, LineEnding}, + utils::{digit_count, RopeGraphemes}, +}; use self::cursor::CursorSet; -use buffer::Buffer; -use formatter::LineFormatter; -use formatter::RoundingBehavior::*; -use std::cmp::{max, min}; -use std::path::{Path, PathBuf}; -use string_utils::{char_count, rope_slice_to_line_ending, LineEnding}; -use utils::{digit_count, RopeGraphemes}; - -mod cursor; pub struct Editor { pub buffer: Buffer, diff --git a/src/formatter.rs b/src/formatter.rs index cb594b8..d5d2209 100644 --- a/src/formatter.rs +++ b/src/formatter.rs @@ -1,9 +1,10 @@ #![allow(dead_code)] -use buffer::Buffer; -use ropey::RopeSlice; use std::cmp::min; -use utils::RopeGraphemes; + +use ropey::RopeSlice; + +use crate::{buffer::Buffer, utils::RopeGraphemes}; // Maximum graphemes in a line before a soft line break is forced. // This is necessary to prevent pathological formatting cases which diff --git a/src/string_utils.rs b/src/string_utils.rs index d668811..26b3d73 100644 --- a/src/string_utils.rs +++ b/src/string_utils.rs @@ -1,8 +1,9 @@ #![allow(dead_code)] //! Misc helpful utility functions for TextBuffer related stuff. -use ropey::RopeSlice; use std::iter::repeat; + +use ropey::RopeSlice; use unicode_segmentation::UnicodeSegmentation; pub fn is_line_ending(text: &str) -> bool { diff --git a/src/term_ui/formatter.rs b/src/term_ui/formatter.rs index 14c6450..42b9726 100644 --- a/src/term_ui/formatter.rs +++ b/src/term_ui/formatter.rs @@ -1,9 +1,12 @@ use std::cmp::max; -use formatter::{LineFormatter, RoundingBehavior}; use ropey::RopeSlice; -use string_utils::{rope_slice_is_line_ending, rope_slice_is_whitespace}; -use utils::grapheme_width; + +use crate::{ + formatter::{LineFormatter, RoundingBehavior}, + string_utils::{rope_slice_is_line_ending, rope_slice_is_whitespace}, + utils::grapheme_width, +}; pub enum WrapType { NoWrap, diff --git a/src/term_ui/mod.rs b/src/term_ui/mod.rs index 5ddd025..b0bda73 100644 --- a/src/term_ui/mod.rs +++ b/src/term_ui/mod.rs @@ -1,5 +1,9 @@ #![allow(dead_code)] +pub mod formatter; +mod screen; +pub mod smallstring; + use std; use std::cmp::min; @@ -7,17 +11,17 @@ use termion; use termion::event::{Event, Key}; use termion::input::TermRead; -use self::formatter::ConsoleLineFormatter; -use editor::Editor; -use formatter::{block_index_and_offset, LineFormatter, LINE_BLOCK_LENGTH}; -use string_utils::{line_ending_to_str, rope_slice_is_line_ending, LineEnding}; -use utils::{digit_count, RopeGraphemes}; +use crate::{ + editor::Editor, + formatter::{block_index_and_offset, LineFormatter, LINE_BLOCK_LENGTH}, + string_utils::{line_ending_to_str, rope_slice_is_line_ending, LineEnding}, + utils::{digit_count, RopeGraphemes}, +}; -pub mod formatter; -mod screen; -pub mod smallstring; - -use self::screen::{Color, Screen, Style}; +use self::{ + formatter::ConsoleLineFormatter, + screen::{Color, Screen, Style}, +}; /// Generalized ui loop. macro_rules! ui_loop { diff --git a/src/term_ui/screen.rs b/src/term_ui/screen.rs index 0faaccc..112604a 100644 --- a/src/term_ui/screen.rs +++ b/src/term_ui/screen.rs @@ -3,7 +3,6 @@ use std::cell::RefCell; use std::io; use std::io::{BufWriter, Write}; -use super::smallstring::SmallString; use ropey::RopeSlice; use termion; use termion::color; @@ -11,7 +10,10 @@ use termion::raw::{IntoRawMode, RawTerminal}; use termion::screen::AlternateScreen; use unicode_segmentation::UnicodeSegmentation; use unicode_width::UnicodeWidthStr; -use utils::{grapheme_width, RopeGraphemes}; + +use crate::utils::{grapheme_width, RopeGraphemes}; + +use super::smallstring::SmallString; pub(crate) struct Screen { out: RefCell>>>, diff --git a/src/term_ui/smallstring.rs b/src/term_ui/smallstring.rs index 8bc9578..80bcb66 100644 --- a/src/term_ui/smallstring.rs +++ b/src/term_ui/smallstring.rs @@ -6,7 +6,6 @@ use std::ptr; use std::str; use ropey::RopeSlice; - use smallvec::SmallVec; #[derive(Clone, Default)] diff --git a/src/utils.rs b/src/utils.rs index d8d28bb..4e79477 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -16,7 +16,7 @@ pub fn digit_count(mut n: u32, b: u32) -> u32 { //============================================================= pub fn grapheme_width(slice: &RopeSlice) -> usize { - use term_ui::smallstring::SmallString; + use crate::term_ui::smallstring::SmallString; if let Some(text) = slice.as_str() { return UnicodeWidthStr::width(text); } else { diff --git a/sub_crates/backend/Cargo.toml b/sub_crates/backend/Cargo.toml index 8323296..be0045f 100644 --- a/sub_crates/backend/Cargo.toml +++ b/sub_crates/backend/Cargo.toml @@ -3,6 +3,7 @@ name = "backend" version = "0.1.0" authors = ["Nathan Vegdahl "] license = "MIT" +edition = "2018" [lib] name = "backend"