mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-16 16:56:09 +03:00
CSI ? W
This commit is contained in:
@ -317,33 +317,39 @@ pub fn Stream(comptime Handler: type) type {
|
|||||||
) else log.warn("unimplemented CSI callback: {}", .{action}),
|
) else log.warn("unimplemented CSI callback: {}", .{action}),
|
||||||
|
|
||||||
// Cursor Tabulation Control
|
// Cursor Tabulation Control
|
||||||
'W' => switch (action.params.len) {
|
'W' => {
|
||||||
1 => switch (action.params[0]) {
|
switch (action.params.len) {
|
||||||
0 => if (@hasDecl(T, "tabSet"))
|
0 => if (action.intermediates.len == 1 and action.intermediates[0] == '?') {
|
||||||
try self.handler.tabSet()
|
if (@hasDecl(T, "tabClear"))
|
||||||
else
|
try self.handler.tabClear(.all)
|
||||||
log.warn("unimplemented tab set callback: {}", .{action}),
|
else
|
||||||
|
log.warn("unimplemented tab clear callback: {}", .{action});
|
||||||
2 => if (@hasDecl(T, "tabClear"))
|
|
||||||
try self.handler.tabClear(.current)
|
|
||||||
else
|
|
||||||
log.warn("unimplemented tab clear callback: {}", .{action}),
|
|
||||||
|
|
||||||
5 => if (@hasDecl(T, "tabClear"))
|
|
||||||
try self.handler.tabClear(.all)
|
|
||||||
else
|
|
||||||
log.warn("unimplemented tab clear callback: {}", .{action}),
|
|
||||||
|
|
||||||
else => {
|
|
||||||
log.warn("invalid cursor tabulation control: {}", .{action});
|
|
||||||
return;
|
|
||||||
},
|
},
|
||||||
},
|
|
||||||
|
|
||||||
else => {
|
1 => switch (action.params[0]) {
|
||||||
log.warn("invalid cursor tabulation control: {}", .{action});
|
0 => if (@hasDecl(T, "tabSet"))
|
||||||
return;
|
try self.handler.tabSet()
|
||||||
},
|
else
|
||||||
|
log.warn("unimplemented tab set callback: {}", .{action}),
|
||||||
|
|
||||||
|
2 => if (@hasDecl(T, "tabClear"))
|
||||||
|
try self.handler.tabClear(.current)
|
||||||
|
else
|
||||||
|
log.warn("unimplemented tab clear callback: {}", .{action}),
|
||||||
|
|
||||||
|
5 => if (@hasDecl(T, "tabClear"))
|
||||||
|
try self.handler.tabClear(.all)
|
||||||
|
else
|
||||||
|
log.warn("unimplemented tab clear callback: {}", .{action}),
|
||||||
|
|
||||||
|
else => {},
|
||||||
|
},
|
||||||
|
|
||||||
|
else => {},
|
||||||
|
}
|
||||||
|
|
||||||
|
log.warn("invalid cursor tabulation control: {}", .{action});
|
||||||
|
return;
|
||||||
},
|
},
|
||||||
|
|
||||||
// Erase Characters (ECH)
|
// Erase Characters (ECH)
|
||||||
|
Reference in New Issue
Block a user