当 stdin 是管道时,为什么“less”无法识别鼠标滚轮?

当 stdin 是管道时,为什么“less”无法识别鼠标滚轮?

我想知道为什么我的less有时无法识别鼠标滚轮(我的终端是 Konsole)。现在我发现了一个模式:只要less的 STDIN 直接来自 shell(这里是 zsh),它似乎就可以工作,例如

$ less somefile.txt

但是当 STDIN 是来自另一个程序的管道时,它不起作用,例如

$ perl report.pl | less
$ git diff # which implicitly invokes `less`

知道我能做些什么吗?

PS:无论何时,只要有人编写了程序,请务必为其起一个 Google 上能找到的名字。搜索less mouse wheel或类似的结果没有帮助。

相关内容