diff options
-rw-r--r-- | src/row.rs | 8 | ||||
-rw-r--r-- | tests/text.rs | 4 |
2 files changed, 10 insertions, 2 deletions
@@ -167,7 +167,9 @@ impl Row { if pos != prev_pos { if !wrapping || prev_pos.row + 1 != pos.row - || prev_pos.col != self.cols() + || prev_pos.col + < self.cols() + - if cell.is_wide() { 1 } else { 0 } || pos.col != 0 { crate::term::MoveFromTo::new(prev_pos, pos) @@ -260,7 +262,9 @@ impl Row { if pos != prev_pos { if !wrapping || prev_pos.row + 1 != pos.row - || prev_pos.col != self.cols() + || prev_pos.col + < self.cols() + - if cell.is_wide() { 1 } else { 0 } || pos.col != 0 { crate::term::MoveFromTo::new(prev_pos, pos) diff --git a/tests/text.rs b/tests/text.rs index 51ee297..d153f11 100644 --- a/tests/text.rs +++ b/tests/text.rs @@ -226,6 +226,10 @@ fn wrap() { assert_eq!(parser.screen().cell(1, 2).unwrap().contents(), "a"); assert_eq!(parser.screen().cell(1, 3).unwrap().contents(), ""); + let mut new_parser = vt100::Parser::default(); + new_parser.process(&parser.screen().contents_formatted()); + assert_eq!(new_parser.screen().contents(), parser.screen().contents()); + parser.process(b"\x1b[H\x1b[J"); assert_eq!(parser.screen().contents(), ""); parser.process(b" "); |