aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAram Drevekenin <aram@poor.dev>2021-05-05 17:09:24 +0200
committerGitHub <noreply@github.com>2021-05-05 17:09:24 +0200
commit837cb8d15ad2237af72080edad7ca0c3dbb8f3ae (patch)
treee267d719f15c5bdb1dbcca76e92d837bab399e09 /src
parentchore(plugin): shuffle helper library names and versions (diff)
downloadsl0ppij-837cb8d15ad2237af72080edad7ca0c3dbb8f3ae.tar.gz
sl0ppij-837cb8d15ad2237af72080edad7ca0c3dbb8f3ae.tar.xz
sl0ppij-837cb8d15ad2237af72080edad7ca0c3dbb8f3ae.zip
fix(compatibility): pass vttest 8 (#461)
* fix(compatibility): pass vttest 8 * style(comment): remove unused * style(grid): sometimes it's just easier to do what clippy wants...
Diffstat (limited to 'src')
-rw-r--r--src/client/panes/grid.rs14
-rw-r--r--src/client/panes/unit/grid_tests.rs72
-rw-r--r--src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_0.snap30
-rw-r--r--src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_1.snap30
-rw-r--r--src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_2.snap30
-rw-r--r--src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_3.snap30
-rw-r--r--src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_4.snap30
-rw-r--r--src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_5.snap30
-rw-r--r--src/tests/fixtures/vttest8-021
-rw-r--r--src/tests/fixtures/vttest8-122
-rw-r--r--src/tests/fixtures/vttest8-223
-rw-r--r--src/tests/fixtures/vttest8-325
-rw-r--r--src/tests/fixtures/vttest8-427
-rw-r--r--src/tests/fixtures/vttest8-533
14 files changed, 416 insertions, 1 deletions
diff --git a/src/client/panes/grid.rs b/src/client/panes/grid.rs
index e0d460d2..e893fd32 100644
--- a/src/client/panes/grid.rs
+++ b/src/client/panes/grid.rs
@@ -178,6 +178,7 @@ pub struct Grid {
pub should_render: bool,
pub cursor_key_mode: bool, // DECCKM - when set, cursor keys should send ANSI direction codes (eg. "OD") instead of the arrow keys (eg. "")
pub erasure_mode: bool, // ERM
+ pub insert_mode: bool,
pub disable_linewrap: bool,
pub clear_viewport_before_rendering: bool,
pub width: usize,
@@ -212,6 +213,7 @@ impl Grid {
should_render: true,
cursor_key_mode: false,
erasure_mode: false,
+ insert_mode: false,
disable_linewrap: false,
alternative_lines_above_viewport_and_cursor: None,
clear_viewport_before_rendering: false,
@@ -606,7 +608,13 @@ impl Grid {
}
pub fn add_character_at_cursor_position(&mut self, terminal_character: TerminalCharacter) {
match self.viewport.get_mut(self.cursor.y) {
- Some(row) => row.add_character_at(terminal_character, self.cursor.x),
+ Some(row) => {
+ if self.insert_mode {
+ row.insert_character_at(terminal_character, self.cursor.x);
+ } else {
+ row.add_character_at(terminal_character, self.cursor.x);
+ }
+ }
None => {
// pad lines until cursor if they do not exist
for _ in self.viewport.len()..self.cursor.y {
@@ -1095,6 +1103,8 @@ impl vte::Perform for Grid {
}
_ => {}
};
+ } else if let Some(&4) = params.get(0) {
+ self.insert_mode = false;
}
} else if c == 'h' {
let first_intermediate_is_questionmark = match _intermediates.get(0) {
@@ -1138,6 +1148,8 @@ impl vte::Perform for Grid {
}
_ => {}
};
+ } else if let Some(&4) = params.get(0) {
+ self.insert_mode = true;
}
} else if c == 'r' {
if params.len() > 1 {
diff --git a/src/client/panes/unit/grid_tests.rs b/src/client/panes/unit/grid_tests.rs
index f2de7d56..b590f404 100644
--- a/src/client/panes/unit/grid_tests.rs
+++ b/src/client/panes/unit/grid_tests.rs
@@ -275,3 +275,75 @@ fn vttest3_0() {
}
assert_snapshot!(format!("{:?}", grid));
}
+
+#[test]
+fn vttest8_0() {
+ let mut vte_parser = vte::Parser::new();
+ let mut grid = Grid::new(51, 97);
+ let fixture_name = "vttest8-0";
+ let content = read_fixture(fixture_name);
+ for byte in content {
+ vte_parser.advance(&mut grid, byte);
+ }
+ assert_snapshot!(format!("{:?}", grid));
+}
+
+#[test]
+fn vttest8_1() {
+ let mut vte_parser = vte::Parser::new();
+ let mut grid = Grid::new(51, 97);
+ let fixture_name = "vttest8-1";
+ let content = read_fixture(fixture_name);
+ for byte in content {
+ vte_parser.advance(&mut grid, byte);
+ }
+ assert_snapshot!(format!("{:?}", grid));
+}
+
+#[test]
+fn vttest8_2() {
+ let mut vte_parser = vte::Parser::new();
+ let mut grid = Grid::new(51, 97);
+ let fixture_name = "vttest8-2";
+ let content = read_fixture(fixture_name);
+ for byte in content {
+ vte_parser.advance(&mut grid, byte);
+ }
+ assert_snapshot!(format!("{:?}", grid));
+}
+
+#[test]
+fn vttest8_3() {
+ let mut vte_parser = vte::Parser::new();
+ let mut grid = Grid::new(51, 97);
+ let fixture_name = "vttest8-3";
+ let content = read_fixture(fixture_name);
+ for byte in content {
+ vte_parser.advance(&mut grid, byte);
+ }
+ assert_snapshot!(format!("{:?}", grid));
+}
+
+#[test]
+fn vttest8_4() {
+ let mut vte_parser = vte::Parser::new();
+ let mut grid = Grid::new(51, 97);
+ let fixture_name = "vttest8-4";
+ let content = read_fixture(fixture_name);
+ for byte in content {
+ vte_parser.advance(&mut grid, byte);
+ }
+ assert_snapshot!(format!("{:?}", grid));
+}
+
+#[test]
+fn vttest8_5() {
+ let mut vte_parser = vte::Parser::new();
+ let mut grid = Grid::new(51, 97);
+ let fixture_name = "vttest8-5";
+ let content = read_fixture(fixture_name);
+ for byte in content {
+ vte_parser.advance(&mut grid, byte);
+ }
+ assert_snapshot!(format!("{:?}", grid));
+}
diff --git a/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_0.snap b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_0.snap
new file mode 100644
index 00000000..97beab77
--- /dev/null
+++ b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_0.snap
@@ -0,0 +1,30 @@
+---
+source: src/client/panes/./unit/grid_tests.rs
+expression: "format!(\"{:?}\", grid)"
+
+---
+00 (C): AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+01 (C): Top line: A's, bottom line: X's, this line, nothing more. Push <RETURN>
+02 (C):
+03 (C):
+04 (C):
+05 (C):
+06 (C):
+07 (C):
+08 (C):
+09 (C):
+10 (C):
+11 (C):
+12 (C):
+13 (C):
+14 (C):
+15 (C):
+16 (C):
+17 (C):
+18 (C):
+19 (C):
+20 (C):
+21 (C):
+22 (C):
+23 (C): XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+
diff --git a/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_1.snap b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_1.snap
new file mode 100644
index 00000000..7490db07
--- /dev/null
+++ b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_1.snap
@@ -0,0 +1,30 @@
+---
+source: src/client/panes/./unit/grid_tests.rs
+expression: "format!(\"{:?}\", grid)"
+
+---
+00 (C): A******************************************************************************BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+01 (C):
+02 (C):
+03 (C): Test of 'Insert Mode'. The top line should be 'A*** ... ***B'. Push <RETURN>
+04 (C):
+05 (C):
+06 (C):
+07 (C):
+08 (C):
+09 (C):
+10 (C):
+11 (C):
+12 (C):
+13 (C):
+14 (C):
+15 (C):
+16 (C):
+17 (C):
+18 (C):
+19 (C):
+20 (C):
+21 (C):
+22 (C):
+23 (C):
+
diff --git a/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_2.snap b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_2.snap
new file mode 100644
index 00000000..7d5a4c68
--- /dev/null
+++ b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_2.snap
@@ -0,0 +1,30 @@
+---
+source: src/client/panes/./unit/grid_tests.rs
+expression: "format!(\"{:?}\", grid)"
+
+---
+00 (C): ABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+01 (C):
+02 (C):
+03 (C): Test of 'Delete Character'. The top line should be 'AB'. Push <RETURN>
+04 (C):
+05 (C):
+06 (C):
+07 (C):
+08 (C):
+09 (C):
+10 (C):
+11 (C):
+12 (C):
+13 (C):
+14 (C):
+15 (C):
+16 (C):
+17 (C):
+18 (C):
+19 (C):
+20 (C):
+21 (C):
+22 (C):
+23 (C):
+
diff --git a/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_3.snap b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_3.snap
new file mode 100644
index 00000000..3bfd896e
--- /dev/null
+++ b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_3.snap
@@ -0,0 +1,30 @@
+---
+source: src/client/panes/./unit/grid_tests.rs
+expression: "format!(\"{:?}\", grid)"
+
+---
+00 (C): AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+01 (C): BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+02 (C): CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+03 (C): The right column should be staggered DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
+04 (C): by one. Push <RETURN>EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
+05 (C): FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+06 (C): GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
+07 (C): HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+08 (C): IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
+09 (C): JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
+10 (C): KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
+11 (C): LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
+12 (C): MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
+13 (C): NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
+14 (C): OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
+15 (C): PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP
+16 (C): QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ
+17 (C): RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR
+18 (C): SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
+19 (C): TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+20 (C): UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
+21 (C): VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
+22 (C): WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
+23 (C): XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+
diff --git a/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_4.snap b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_4.snap
new file mode 100644
index 00000000..8a7e8b35
--- /dev/null
+++ b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_4.snap
@@ -0,0 +1,30 @@
+---
+source: src/client/panes/./unit/grid_tests.rs
+expression: "format!(\"{:?}\", grid)"
+
+---
+00 (C): AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+01 (C): BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+02 (C): CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+03 (C): The right column should be staggered
+04 (C): by one. Push <RETURN>EEEEEEEEEEEEE
+05 (C): FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+06 (C): GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
+07 (C): HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+08 (C): IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
+09 (C): JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
+10 (C): KKKKKKKKKKKKKKKKKKKKKKKKKKKKK
+11 (C): LLLLLLLLLLLLLLLLLLLLLLLLLLLL
+12 (C): MMMMMMMMMMMMMMMMMMMMMMMMMMM
+13 (C): NNNNNNNNNNNNNNNNNNNNNNNNNN
+14 (C): OOOOOOOOOOOOOOOOOOOOOOOOO
+15 (C): PPPPPPPPPPPPPPPPPPPPPPPP
+16 (C): QQQQQQQQQQQQQQQQQQQQQQQ
+17 (C): RRRRRRRRRRRRRRRRRRRRRR
+18 (C): SSSSSSSSSSSSSSSSSSSSS
+19 (C): TTTTTTTTTTTTTTTTTTTT
+20 (C): UUUUUUUUUUUUUUUUUUU
+21 (C): VVVVVVVVVVVVVVVVVV
+22 (C): WWWWWWWWWWWWWWWWW
+23 (C): XXXXXXXXXXXXXXXX
+
diff --git a/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_5.snap b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_5.snap
new file mode 100644
index 00000000..34354a91
--- /dev/null
+++ b/src/client/panes/unit/snapshots/zellij__client__panes__grid__grid_tests__vttest8_5.snap
@@ -0,0 +1,30 @@
+---
+source: src/client/panes/./unit/grid_tests.rs
+expression: "format!(\"{:?}\", grid)"
+
+---
+00 (C): If your terminal has the ANSI 'Insert Character' function
+01 (C): (the VT102 does not), then you should see a line like this
+02 (C): A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
+03 (C): below:
+04 (C):
+05 (C): A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
+06 (C):
+07 (C):
+08 (C):
+09 (C): Push <RETURN>
+10 (C):
+11 (C):
+12 (C):
+13 (C):
+14 (C):
+15 (C):
+16 (C):
+17 (C):
+18 (C):
+19 (C):
+20 (C):
+21 (C):
+22 (C):
+23 (C):
+
diff --git a/src/tests/fixtures/vttest8-0 b/src/tests/fixtures/vttest8-0
new file mode 100644
index 00000000..7ec76f98
--- /dev/null
+++ b/src/tests/fixtures/vttest8-0
@@ -0,0 +1,21 @@
+⏎(B ⏎ Welcome to fish, the friendly interactive shell
+[?2004h]0;fish /home/aram/code/zellij(B⋊>(B ~/c/zellij(B on main(B ⨯ 16:22:35(B   v16:22:35(B  v(B16:22:35(B  ttest(B16:22:35(B  ttest(B16:22:35(B  test(B16:22:35(B  est(B16:22:35(B  st(B16:22:35(B  t(B16:22:35(B  vttest(B16:22:35(B  16:22:35(B  
+(B[?2004l]0;vttest /home/aram/code/zellij(B [?1l[?3l[?4l[?5l[?6l[?7h[?8l[?40h[?45lVT100 test program, version 2.7 (20210210)Line speed 38400bd Choose test type:
+
+ 0. Exit
+ 1. Test of cursor movements
+ 2. Test of screen features
+ 3. Test of character sets
+ 4. Test of double-sized characters
+ 5. Test of keyboard
+ 6. Test of terminal reports
+ 7. Test of VT52 mode
+ 8. Test of VT102 features (Insert/Delete Char/Line)
+ 9. Test of known bugs
+ 10. Test of reset and self-test
+ 11. Test non-VT100 (e.g., VT220, XTERM) terminals
+ 12. Modify test-parameters
+
+ Enter choice number (0 - 12): 8
+[?3lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXScreen accordion test (Insert & Delete Line). Push <RETURN>
+M[?6h[?6lTop line: A's, bottom line: X's, this line, nothing more. Push <RETURN> \ No newline at end of file
diff --git a/src/tests/fixtures/vttest8-1 b/src/tests/fixtures/vttest8-1
new file mode 100644
index 00000000..d8bd05e9
--- /dev/null
+++ b/src/tests/fixtures/vttest8-1
@@ -0,0 +1,22 @@
+⏎(B ⏎ Welcome to fish, the friendly interactive shell
+[?2004h]0;fish /home/aram/code/zellij(B⋊>(B ~/c/zellij(B on main(B ⨯ 16:23:11(B   v16:23:11(B  v(B16:23:11(B  ttest(B16:23:11(B  ttest(B16:23:11(B  test(B16:23:11(B  est(B16:23:11(B  st(B16:23:11(B  t(B16:23:11(B  vttest(B16:23:11(B  16:23:11(B  
+(B[?2004l]0;vttest /home/aram/code/zellij(B [?1l[?3l[?4l[?5l[?6l[?7h[?8l[?40h[?45lVT100 test program, version 2.7 (20210210)Line speed 38400bd Choose test type:
+
+ 0. Exit
+ 1. Test of cursor movements
+ 2. Test of screen features
+ 3. Test of character sets
+ 4. Test of double-sized characters
+ 5. Test of keyboard
+ 6. Test of terminal reports
+ 7. Test of VT52 mode
+ 8. Test of VT102 features (Insert/Delete Char/Line)
+ 9. Test of known bugs
+ 10. Test of reset and self-test
+ 11. Test non-VT100 (e.g., VT220, XTERM) terminals
+ 12. Modify test-parameters
+
+ Enter choice number (0 - 12): 8
+[?3lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXScreen accordion test (Insert & Delete Line). Push <RETURN>
+M[?6h[?6lTop line: A's, bottom line: X's, this line, nothing more. Push <RETURN>
+B******************************************************************************Test of 'Insert Mode'. The top line should be 'A*** ... ***B'. Push <RETURN> \ No newline at end of file
diff --git a/src/tests/fixtures/vttest8-2 b/src/tests/fixtures/vttest8-2
new file mode 100644
index 00000000..d2fb8e29
--- /dev/null
+++ b/src/tests/fixtures/vttest8-2
@@ -0,0 +1,23 @@
+⏎(B ⏎ Welcome to fish, the friendly interactive shell
+[?2004h]0;fish /home/aram/code/zellij(B⋊>(B ~/c/zellij(B on main(B ⨯ 16:23:46(B   v16:23:46(B  v(B16:23:46(B  ttest(B16:23:46(B  ttest(B16:23:46(B  test(B16:23:46(B  est(B16:23:46(B  st(B16:23:46(B  t(B16:23:46(B  vttest(B16:23:46(B  16:23:46(B  
+(B[?2004l]0;vttest /home/aram/code/zellij(B [?1l[?3l[?4l[?5l[?6l[?7h[?8l[?40h[?45lVT100 test program, version 2.7 (20210210)Line speed 38400bd Choose test type:
+
+ 0. Exit
+ 1. Test of cursor movements
+ 2. Test of screen features
+ 3. Test of character sets
+ 4. Test of double-sized characters
+ 5. Test of keyboard
+ 6. Test of terminal reports
+ 7. Test of VT52 mode
+ 8. Test of VT102 features (Insert/Delete Char/Line)
+ 9. Test of known bugs
+ 10. Test of reset and self-test
+ 11. Test non-VT100 (e.g., VT220, XTERM) terminals
+ 12. Modify test-parameters
+
+ Enter choice number (0 - 12): 8
+[?3lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXScreen accordion test (Insert & Delete Line). Push <RETURN>
+M[?6h[?6lTop line: A's, bottom line: X's, this line, nothing more. Push <RETURN>
+B******************************************************************************Test of 'Insert Mode'. The top line should be 'A*** ... ***B'. Push <RETURN>
+MTest of 'Delete Character'. The top line should be 'AB'. Push <RETURN> \ No newline at end of file
diff --git a/src/tests/fixtures/vttest8-3 b/src/tests/fixtures/vttest8-3
new file mode 100644
index 00000000..5488a905
--- /dev/null
+++ b/src/tests/fixtures/vttest8-3
@@ -0,0 +1,25 @@
+⏎(B ⏎ Welcome to fish, the friendly interactive shell
+[?2004h]0;fish /home/aram/code/zellij(B⋊>(B ~/c/zellij(B on main(B ⨯ 16:24:22(B   v16:24:22(B  v(B16:24:22(B  ttest(B16:24:22(B  ttest(B16:24:22(B  test(B16:24:22(B  est(B16:24:22(B  st(B16:24:22(B  t(B16:24:22(B  vttest(B16:24:22(B  16:24:22(B  
+(B[?2004l]0;vttest /home/aram/code/zellij(B [?1l[?3l[?4l[?5l[?6l[?7h[?8l[?40h[?45lVT100 test program, version 2.7 (20210210)Line speed 38400bd Choose test type:
+
+ 0. Exit
+ 1. Test of cursor movements
+ 2. Test of screen features
+ 3. Test of character sets
+ 4. Test of double-sized characters
+ 5. Test of keyboard
+ 6. Test of terminal reports
+ 7. Test of VT52 mode
+ 8. Test of VT102 features (Insert/Delete Char/Line)
+ 9. Test of known bugs
+ 10. Test of reset and self-test
+ 11. Test non-VT100 (e.g., VT220, XTERM) terminals
+ 12. Modify test-parameters
+
+ Enter choice number (0 - 12): 8
+[?3lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXScreen accordion test (Insert & Delete Line). Push <RETURN>
+M[?6h[?6lTop line: A's, bottom line: X's, this line, nothing more. Push <RETURN>
+B******************************************************************************Test of 'Insert Mode'. The top line should be 'A*** ... ***B'. Push <RETURN>
+MTest of 'Delete Character'. The top line should be 'AB'. Push <RETURN>
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXThe right column should be staggered
+by one. Push <RETURN> \ No newline at end of file
diff --git a/src/tests/fixtures/vttest8-4 b/src/tests/fixtures/vttest8-4
new file mode 100644
index 00000000..d1e4a60f
--- /dev/null
+++ b/src/tests/fixtures/vttest8-4
@@ -0,0 +1,27 @@
+⏎(B ⏎ Welcome to fish, the friendly interactive shell
+[?2004h]0;fish /home/aram/code/zellij(B⋊>(B ~/c/zellij(B on main(B ⨯ 16:25:04(B   v16:25:04(B  v(B16:25:04(B  ttest(B16:25:04(B  ttest(B16:25:04(B  test(B16:25:04(B  est(B16:25:04(B  st(B16:25:04(B  t(B16:25:04(B  vttest(B16:25:04(B  16:25:04(B  
+(B[?2004l]0;vttest /home/aram/code/zellij(B [?1l[?3l[?4l[?5l[?6l[?7h[?8l[?40h[?45lVT100 test program, version 2.7 (20210210)Line speed 38400bd Choose test type:
+
+ 0. Exit
+ 1. Test of cursor movements
+ 2. Test of screen features
+ 3. Test of character sets
+ 4. Test of double-sized characters
+ 5. Test of keyboard
+ 6. Test of terminal reports
+ 7. Test of VT52 mode
+ 8. Test of VT102 features (Insert/Delete Char/Line)
+ 9. Test of known bugs
+ 10. Test of reset and self-test
+ 11. Test non-VT100 (e.g., VT220, XTERM) terminals
+ 12. Modify test-parameters
+
+ Enter choice number (0 - 12): 8
+[?3lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXScreen accordion test (Insert & Delete Line). Push <RETURN>
+M[?6h[?6lTop line: A's, bottom line: X's, this line, nothing more. Push <RETURN>
+B******************************************************************************Test of 'Insert Mode'. The top line should be 'A*** ... ***B'. Push <RETURN>
+MTest of 'Delete Character'. The top line should be 'AB'. Push <RETURN>
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXThe right column should be staggered
+by one. Push <RETURN>
+#6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA#6BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB#6CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC#6DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD#6EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE#6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF#6GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG#6HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH#6IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII#6JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ#6KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK#6LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL#6MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM#6NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN#6OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO#6PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP#6QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ#6RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR#6SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS#6TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT#6UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU#6VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV#6WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW#6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXThe right column should be staggered
+by one. Push <RETURN> \ No newline at end of file
diff --git a/src/tests/fixtures/vttest8-5 b/src/tests/fixtures/vttest8-5
new file mode 100644
index 00000000..9fe1c4e6
--- /dev/null
+++ b/src/tests/fixtures/vttest8-5
@@ -0,0 +1,33 @@
+⏎(B ⏎ Welcome to fish, the friendly interactive shell
+[?2004h]0;fish /home/aram/code/zellij(B⋊>(B ~/c/zellij(B on main(B ⨯ 16:25:40(B   v16:25:40(B  v(B16:25:40(B  ttest(B16:25:40(B  ttest(B16:25:40(B  test(B16:25:40(B  est(B16:25:40(B  st(B16:25:40(B  t(B16:25:40(B  vttest(B16:25:40(B  16:25:40(B  
+(B[?2004l]0;vttest /home/aram/code/zellij(B [?1l[?3l[?4l[?5l[?6l[?7h[?8l[?40h[?45lVT100 test program, version 2.7 (20210210)Line speed 38400bd Choose test type:
+
+ 0. Exit
+ 1. Test of cursor movements
+ 2. Test of screen features
+ 3. Test of character sets
+ 4. Test of double-sized characters
+ 5. Test of keyboard
+ 6. Test of terminal reports
+ 7. Test of VT52 mode
+ 8. Test of VT102 features (Insert/Delete Char/Line)
+ 9. Test of known bugs
+ 10. Test of reset and self-test
+ 11. Test non-VT100 (e.g., VT220, XTERM) terminals
+ 12. Modify test-parameters
+
+ Enter choice number (0 - 12): 8
+[?3lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXScreen accordion test (Insert & Delete Line). Push <RETURN>
+M[?6h[?6lTop line: A's, bottom line: X's, this line, nothing more. Push <RETURN>
+B******************************************************************************Test of 'Insert Mode'. The top line should be 'A*** ... ***B'. Push <RETURN>
+MTest of 'Delete Character'. The top line should be 'AB'. Push <RETURN>
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXThe right column should be staggered
+by one. Push <RETURN>
+#6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA#6BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB#6CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC#6DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD#6EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE#6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF#6GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG#6HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH#6IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII#6JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ#6KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK#6LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL#6MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM#6NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN#6OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO#6PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP#6QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ#6RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR#6SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS#6TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT#6UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU#6VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV#6WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW#6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXThe right column should be staggered
+by one. Push <RETURN>
+If your terminal has the ANSI 'Insert Character' function
+(the VT102 does not), then you should see a line like this
+ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
+below:
+
+Z[2@Y[2@X[2@W[2@V[2@U[2@T[2@S[2@R[2@Q[2@P[2@O[2@N[2@M[2@L[2@K[2@J[2@I[2@H[2@G[2@F[2@E[2@D[2@C[2@B[2@A[2@Push <RETURN> \ No newline at end of file