如何更改 OS X 上的 readline 滚动行为?

如何更改 OS X 上的 readline 滚动行为?

我在 Mac OS X 终端中通过 SSH 连接到两个 ubuntu 服务器,然后连接到各种启用 readline 的 shell,例如 MySQL 或 Mongo 客户端。

最近,似乎滚动行为发生了某种变化。当我用鼠标滚动时,readline 本身会在命令之间滚动,而不是像我期望的那样向上翻页。

也就是说,我没有看到 SQL/mongo 结果列表顶部的结果,而是在命令行中向后滚动一个命令,这不是我想要做的。

据我所知,服务器(Ubuntu 14.04)和我的 Mac 都没有发生重大变化。

答案1

您所描述的听起来像这样:一些终端仿真器可以被告知假装滚轮鼠标事件是向上/向下箭头而不是页面滚动。虽然可能存在特殊的控制序列或配置设置(例如交替滚动使用 xterm 时,通常是通过终端描述中的全屏(或备用屏幕)切换来激活的。

虽然 Apple 没有提供 Terminal.app 转义序列的文档,但我看到了Yosemite 在终端中引入了逐行滚动功能暗示他们也做过这样的事。

如果是这种情况,那么您应该能够通过使用终端描述来解决问题,从和smcup功能中省略 47 或 1049 个控件rmcup(并且取决于您是否使用screentmux或者都不使用,关于如何执行此操作的建议会有所不同 - 有些建议很糟糕,特别是当它说只删除功能时)。

相关内容