A simple CPU rendered GUI IDE experience.
smol fix
| -rw-r--r-- | src/edi.rs | 1 | ||||
| -rw-r--r-- | src/git.rs | 1 | ||||
| -rw-r--r-- | src/main.rs | 1 | ||||
| -rw-r--r-- | src/text.rs | 6 |
4 files changed, 7 insertions, 2 deletions
@@ -219,7 +219,6 @@ impl Editor { .map(|x| x.path().to_owned()) .collect::<Vec<_>>() }); - assert!(me.tree.is_some()); let l = me.workspace.as_ref().map(|(workspace)| { let dh = std::panic::take_hook(); let main = std::thread::current_id(); diff --git a/src/git.rs b/src/git.rs new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/src/git.rs @@ -0,0 +1 @@ + diff --git a/src/main.rs b/src/main.rs index 5314fcf..2c921d8 100644 --- a/src/main.rs +++ b/src/main.rs @@ -40,6 +40,7 @@ mod act; mod edi; mod meta; // mod new; +mod git; mod rnd; mod sym; mod trm; diff --git a/src/text.rs b/src/text.rs index 55cf331..580dab3 100644 --- a/src/text.rs +++ b/src/text.rs @@ -820,7 +820,7 @@ impl TextArea { _ = self.remove(f); } else { ceach!(self.cursor, |cursor| { - _ = self.remove((*cursor) - 1..*cursor); + _ = self.remove(cursor.saturating_sub(1)..*cursor); // FIXME: maybe? }); self.set_ho(); @@ -1460,6 +1460,10 @@ pub fn hl( if end == 4294967295 { break; } + if end < at { + at = end; + continue; + } for &h in &highlight_stack { let y1 = text.byte_to_line(at); let y2 = text.byte_to_line(end); |