mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-16 16:56:09 +03:00
CSI W - cursor tabulation control
This commit is contained in:
@ -316,6 +316,36 @@ pub fn Stream(comptime Handler: type) type {
|
|||||||
},
|
},
|
||||||
) else log.warn("unimplemented CSI callback: {}", .{action}),
|
) else log.warn("unimplemented CSI callback: {}", .{action}),
|
||||||
|
|
||||||
|
// Cursor Tabulation Control
|
||||||
|
'W' => switch (action.params.len) {
|
||||||
|
1 => switch (action.params[0]) {
|
||||||
|
0 => if (@hasDecl(T, "tabSet"))
|
||||||
|
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 => {
|
||||||
|
log.warn("invalid cursor tabulation control: {}", .{action});
|
||||||
|
return;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
else => {
|
||||||
|
log.warn("invalid cursor tabulation control: {}", .{action});
|
||||||
|
return;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
// Erase Characters (ECH)
|
// Erase Characters (ECH)
|
||||||
'X' => if (@hasDecl(T, "eraseChars")) try self.handler.eraseChars(
|
'X' => if (@hasDecl(T, "eraseChars")) try self.handler.eraseChars(
|
||||||
switch (action.params.len) {
|
switch (action.params.len) {
|
||||||
|
Reference in New Issue
Block a user