在新的 macOS 更新中,数字键盘输入被重新映射到 alacritty

在新的 macOS 更新中,数字键盘输入被重新映射到 alacritty

我的终端一直存在烦人的问题阿拉克里蒂。在 macOS 中,最近更新后,按下数字键盘上的输入键时,它并没有给出我所期望的结果。

普通键盘输入。

❯ whoami
aaron

数字键盘输入。

❯ whoami^C

其中一个与其他不同。^C相当于ctrl + c。这是退出大多数 cli 应用程序的方式。如果我在密码后使用此回车键(例如登录 ssh 时),则问题会更加严重。建立连接后,它会立即断开终端会话。这看起来像是客户端或服务器的问题,而不是我的键盘的问题。经过数小时查看各种日志和网络数据包捕获以隔离此问题后,我仍然不确定发生了什么。这是一个难以识别的问题,尤其是当几周前这一切都按预期工作时。

sw_vers
ProductName:        macOS
ProductVersion:     14.3

答案1

修复 alacritty

检查在键盘上打字时发生的情况。更多信息

alacritty --print-events

[3.734266542s] [INFO ] [alacritty] winit event: WindowEvent { window_id: WindowId(WindowId(4905463248)), event: KeyboardInput { device_id: DeviceId(DeviceId), event: KeyEvent { physical_key: Code(Enter), logical_key: Named(Enter), text: None, location: Standard, state: Released, repeat: false, platform_specific: KeyEventExtra { text_with_all_modifiers: Some("\r"), key_without_modifiers: Named(Enter) } }, is_synthetic: false } }
....
[5.825335959s] [INFO ] [alacritty] winit event: WindowEvent { window_id: WindowId(WindowId(4905463248)), event: KeyboardInput { device_id: DeviceId(DeviceId), event: KeyEvent { physical_key: Code(NumpadEnter), logical_key: Named(Enter), text: Some("\r"), location: Numpad, state: Pressed, repeat: false, platform_specific: KeyEventExtra { text_with_all_modifiers: Some("\u{3}"), key_without_modifiers: Named(Enter) } }, is_synthetic: false } }

尝试隔离这个问题花费的时间比我预期的要长得多。

编辑 alacritty 配置。

nvim ~/.config/alacritty/alacritty.toml

添加

[[keyboard.bindings]]
key = "NumpadEnter"
chars = "\r"

这解决了我遇到问题的一个应用程序 Alacritty 的问题。

测试数字键盘输入。

❯ whoami
aaron

相关内容