From 00e49dccc122f390f753ad594c905dfd1f399bee Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Fri, 13 May 2022 09:14:32 -0700 Subject: [PATCH] hook up insertLines --- src/Window.zig | 4 ++++ src/terminal/stream.zig | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/Window.zig b/src/Window.zig index ed82d39bc..39d23b69c 100644 --- a/src/Window.zig +++ b/src/Window.zig @@ -561,6 +561,10 @@ pub fn eraseChars(self: *Window, count: usize) !void { try self.terminal.eraseChars(self.alloc, count); } +pub fn insertLines(self: *Window, count: usize) !void { + try self.terminal.insertLines(self.alloc, count); +} + pub fn deleteLines(self: *Window, count: usize) !void { self.terminal.deleteLines(self.alloc, count); } diff --git a/src/terminal/stream.zig b/src/terminal/stream.zig index 044b95cfb..27df12714 100644 --- a/src/terminal/stream.zig +++ b/src/terminal/stream.zig @@ -195,6 +195,14 @@ pub fn Stream(comptime Handler: type) type { }, ) else log.warn("unimplemented CSI callback: {}", .{action}), + // IL - Insert Lines + // TODO: test + 'L' => if (@hasDecl(T, "insertLines")) switch (action.params.len) { + 0 => try self.handler.insertLines(1), + 1 => try self.handler.insertLines(action.params[0]), + else => log.warn("invalid IL command: {}", .{action}), + } else log.warn("unimplemented CSI callback: {}", .{action}), + // DL - Delete Lines // TODO: test 'M' => if (@hasDecl(T, "deleteLines")) switch (action.params.len) {