small software-rendered rust tty
Diffstat (limited to 'src/term.rs')
| -rw-r--r-- | src/term.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/term.rs b/src/term.rs index ebfa3ce..125fca4 100644 --- a/src/term.rs +++ b/src/term.rs @@ -75,7 +75,7 @@ impl Terminal { self.cells[self.row * self.size.0 as usize..].len() == self.size.0 as usize * self.size.1 as usize ); - dbg!(self.cursor); + // dbg!(self.cursor); let c = &mut self.cells[self.row * self.size.0 as usize..] // y*w+x [(self.cursor.1 * self.size.0 + self.cursor.0) @@ -117,8 +117,13 @@ impl Terminal { ModeSet(2) => self.style.flags |= DIM, ModeSet(3) => self.style.flags |= ITALIC, ModeSet(4) => self.style.flags |= UNDERLINE, + ModeSet(7) => std::mem::swap( + &mut self.style.bg, + &mut self.style.color, + ), ModeSet(9) => self.style.flags |= STRIKETHROUGH, ModeSet(22) => self.style.flags &= !(BOLD | DIM), + _ => {} } } @@ -187,6 +192,13 @@ impl Terminal { }) => { self.cursor.1 += 1; } + Control(ControlFunction { + start: b'\x1b', + params: [], + bytes: [b'('], + end: b'B', + .. + }) => {} Control(x) => { dbg!(x); println!( |