mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-16 08:46:08 +03:00
KIND OF handle mode 3 (132 col mode)
This gets vttest looking slightly better on test 1, page 4. It still isn't correct but we're looking better.
This commit is contained in:
@ -773,6 +773,23 @@ pub fn setMode(self: *Window, mode: terminal.Mode, enabled: bool) !void {
|
||||
|
||||
.bracketed_paste => self.bracketed_paste = true,
|
||||
|
||||
.enable_mode_3 => self.terminal.modes.enable_mode_3 = @boolToInt(enabled),
|
||||
.@"132_column" => mode3: {
|
||||
// TODO: test this
|
||||
|
||||
// Do nothing if "enable mode 3" is not set.
|
||||
if (self.terminal.modes.enable_mode_3 == 0) break :mode3;
|
||||
|
||||
// Set it
|
||||
self.terminal.modes.@"132_column" = @boolToInt(enabled);
|
||||
|
||||
// TODO: do not clear screen flag mode
|
||||
self.terminal.eraseDisplay(.complete);
|
||||
self.terminal.setCursorPos(1, 1);
|
||||
|
||||
// TODO: left/right margins
|
||||
},
|
||||
|
||||
else => if (enabled) log.warn("unimplemented mode: {}", .{mode}),
|
||||
}
|
||||
}
|
||||
|
@ -47,6 +47,9 @@ modes: packed struct {
|
||||
reverse_colors: u1 = 0, // 5,
|
||||
origin: u1 = 0, // 6
|
||||
autowrap: u1 = 1, // 7
|
||||
|
||||
@"132_column": u1 = 0, // 3,
|
||||
enable_mode_3: u1 = 0, // 40
|
||||
} = .{},
|
||||
|
||||
/// Scrolling region is the area of the screen designated where scrolling
|
||||
|
Reference in New Issue
Block a user