mirror of
https://github.com/ghostty-org/ghostty.git
synced 2026-09-14 18:01:58 +00:00
input: encode alt+escape with MOK2
This commit is contained in:
@@ -237,7 +237,8 @@ pub const keys = keys: {
|
||||
|
||||
result.set(.escape, &.{
|
||||
.{ .mods = .{ .shift = true }, .sequence = "\x1b[27;2;27~" },
|
||||
.{ .mods = .{ .alt = true }, .sequence = "\x1b\x1b" },
|
||||
.{ .mods = .{ .alt = true }, .modify_other_keys = .set, .sequence = "\x1b\x1b" },
|
||||
.{ .mods = .{ .alt = true }, .modify_other_keys = .set_other, .sequence = "\x1b[27;3;27~" },
|
||||
.{ .mods = .{ .alt = true, .shift = true }, .sequence = "\x1b[27;4;27~" },
|
||||
.{ .mods = .{ .ctrl = true }, .sequence = "\x1b[27;5;27~" },
|
||||
.{ .mods = .{ .ctrl = true, .shift = true }, .sequence = "\x1b[27;6;27~" },
|
||||
|
||||
@@ -2033,6 +2033,28 @@ test "legacy: esc with utf8 (dead key state)" {
|
||||
try testing.expectEqualStrings("A", writer.buffered());
|
||||
}
|
||||
|
||||
test "legacy: alt+escape with modify other state 2" {
|
||||
var buf: [128]u8 = undefined;
|
||||
|
||||
{
|
||||
var writer: std.Io.Writer = .fixed(&buf);
|
||||
try legacy(&writer, .{
|
||||
.key = .escape,
|
||||
.mods = .{ .alt = true },
|
||||
}, .{});
|
||||
try testing.expectEqualStrings("\x1b\x1b", writer.buffered());
|
||||
}
|
||||
|
||||
{
|
||||
var writer: std.Io.Writer = .fixed(&buf);
|
||||
try legacy(&writer, .{
|
||||
.key = .escape,
|
||||
.mods = .{ .alt = true },
|
||||
}, .{ .modify_other_keys_state_2 = true });
|
||||
try testing.expectEqualStrings("\x1b[27;3;27~", writer.buffered());
|
||||
}
|
||||
}
|
||||
|
||||
test "legacy: ctrl+shift+minus (underscore on US)" {
|
||||
var buf: [128]u8 = undefined;
|
||||
var writer: std.Io.Writer = .fixed(&buf);
|
||||
|
||||
Reference in New Issue
Block a user