Rails 7 IRB控制台Delete键失效,插入^[[3~而非执行删除命令
解决Rails 7.0.4下Mac终端Delete键输入
^[[3~的问题 环境信息
- Rails版本:
7.0.4 - Ruby版本:
3.1.2p20 (2022-04-12 revision 4491bb740a) [arm64-darwin21] - 系统:Mac OS
可行解决方案
1. 临时/永久配置Readline绑定
执行以下命令可修复当前会话的Delete键行为:
bind '\e[3~':delete-char
若要永久生效,将上述命令添加到你的shell配置文件(如~/.zshrc或~/.bash_profile),再执行source ~/.zshrc(对应你的shell类型)加载配置。
2. 重新安装Readline依赖
Rails控制台依赖Readline库,升级后可能出现绑定异常,尝试重新安装:
gem uninstall ruby-readline gem install ruby-readline
重启Rails控制台测试效果。
3. 调整终端键盘配置
针对系统默认终端:
- 打开终端偏好设置 → 配置文件 → 键盘
- 找到“Delete”对应的条目,确保动作设置为“发送控制序列:\e[3~”(匹配Readline的删除指令)
4. 临时降级Rails版本
若上述方法无效,可回退到之前正常的Rails版本:
gem uninstall rails gem install rails -v [你之前的有效版本号]
内容的提问来源于stack exchange,提问作者YvesR
相关产品推荐
相关产品推荐

