diff --git a/exec/load/ansiterm_lib.js b/exec/load/ansiterm_lib.js index bf15f07c70c7ca226d53eee972f711b332d0045e..cf9037716b2072d61c3fd4082f4f0ff494b8c6eb 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 = {