我正在尝试在 cygwin 中的 xterm 中使用 XMing x-server 和 fvwm 窗口管理器来实现鼠标滚轮滚动!
我希望我说得有道理。
我尝试过 rxvt、urxvt、urxvt-X、aterm、mrxvt,但没有成功!
唯一可以实现此功能的地方是 mintty.. 但我不会使用非 X 窗口只是为了在 less 中进行鼠标滚动。
此外,vim 中的鼠标滚动功能正常运作!
实际上,鼠标滚动“有效”,但它被 xterm 捕获而不是在 less 中(这意味着当我向后滚动时,我会看到来自命令 ilne 的先前命令)
最后,我尝试了在线找到的一个可能的解决方案,但它也没有用。
你echo -e '\e[?1000l'
需要打开鼠标捕获。
我是不是遗漏了什么?或者它根本不起作用?
答案1
这在 mintty 中起作用的原因是,当应用程序激活所谓的备用屏幕而不是鼠标报告模式时,它会将鼠标滚轮事件转换为向上/向下箭头按键。我认为 Gnome Terminal 和 KDE Konsole 也会这样做,但显然您尝试的那些没有。
在使用 激活的鼠标报告模式中echo -e '\e[?1000l'
,将发送鼠标事件的特殊控制序列,这需要在应用程序中得到支持。vim
和 之类的功能可以emacs
做到这一点,但less
不能。
答案2
自版本 543 起(增强 272) 现在已支持此功能。要使用它,您需要选项--mouse
。要与 man 一起使用,LESS
环境变量很有用。