From df9b8f1fbc67eeb3bfd21bf575daf40c1b995330 Mon Sep 17 00:00:00 2001 From: rok Date: Mon, 8 Apr 2024 22:11:01 +0900 Subject: [PATCH] input: fix bs emitting sequence when it should not MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In korean input method on macos, it should simply return empty string. Issue was created after https://github.com/mitchellh/ghostty/pull/1659. ``` gksr # 한ㄱ ``` 'ㄱ' at the end should be removed with single , but for now it requires two to remove 'ㄱ'. --- src/input/KeyEncoder.zig | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/input/KeyEncoder.zig b/src/input/KeyEncoder.zig index 266a32413..d6d9a2b4c 100644 --- a/src/input/KeyEncoder.zig +++ b/src/input/KeyEncoder.zig @@ -266,10 +266,8 @@ fn legacy( if (self.event.utf8.len > 0) { switch (self.event.key) { else => {}, - .enter, - .escape, - .backspace, - => break :pc_style, + .backspace => return "", + .enter, .escape => break :pc_style, } } @@ -1658,7 +1656,7 @@ test "legacy: backspace with utf8 (dead key state)" { }; const actual = try enc.legacy(&buf); - try testing.expectEqualStrings("A", actual); + try testing.expectEqualStrings("", actual); } test "legacy: enter with utf8 (dead key state)" {