From 64a02f343477229cefd52d981e9dabc697bb5d26 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Sat, 6 Jan 2018 02:03:04 +0000 Subject: [PATCH] Added line.clear/insert/remove methods and allow screen.clear() to have the portion specified --- exec/load/ansiterm_lib.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/exec/load/ansiterm_lib.js b/exec/load/ansiterm_lib.js index bf15f07c70..cf9037716b 100644 --- a/exec/load/ansiterm_lib.js +++ b/exec/load/ansiterm_lib.js @@ -50,6 +50,11 @@ const defs = { up: 'S', down: 'T', }, + portion: { + to_end: 0, + to_start: 1, + entire: 2, + }, }; function attr(atr, curatr, color) @@ -170,7 +175,13 @@ var cursor_position = { var screen = { scroll: function(dir,n) { return format("\x1b[%s%s", n ? n : "", defs.scroll_dir[dir]); }, - clear: function() { return "\x1b[2J"; } + clear: function(p) { return format("\x1b[%uJ", p ? defs.portion[p] : defs.portion.entire); } +} + +var line = { + clear: function(p) { return format("\x1b[%uK", p ? defs.portion[p] : defs.portion.entire); }, + insert: function(n) { return format("\x1b[%sL", n ? n : ""); }, + remove: function(n) { return format("\x1b[%sM", n ? n : ""); } } var attributes = { -- GitLab