man
本身应该对鼠标滚轮一无所知,并且xfce4-terminal窗口的滚动条不会改变,所以......
当窗口从 X 服务器捕获鼠标滚轮事件时,xfce4-terminal 是否向 pty master fd 发送了一些东西?
如果是,它会向 pty 设备写入什么内容以表现得就像我按下了Down
键一样?
还是我完全错过了什么?
man
本身应该对鼠标滚轮一无所知,并且xfce4-terminal窗口的滚动条不会改变,所以......
当窗口从 X 服务器捕获鼠标滚轮事件时,xfce4-terminal 是否向 pty master fd 发送了一些东西?
如果是,它会向 pty 设备写入什么内容以表现得就像我按下了Down
键一样?
还是我完全错过了什么?
您的寻呼机在备用屏幕缓冲区中显示其内容,该缓冲区选择“备用滚动模式”(您可以看到这是因为垂直滚动条发生了变化 - 它不再允许滚动窗口内容),并且在该模式下,终端翻译鼠标滚轮移动到光标向上/向下控件。这是很久以前在XTerm中引入的,并且在当前的终端中得到了广泛的支持。
要查看用于切换到备用屏幕缓冲区的序列,请运行
你应该看到
esc [ ? 1 0 4 9 h
。这是寻呼机发送到终端的内容。↓由终端发送给正在运行的应用程序的 CSI B 表示。如果您的寻呼机是
less
,您可以通过导出LESS=X
到环境来禁用它(这会跳过终端初始化)。