Что касается less
, это делается все в эмуляторе терминала, потому что less
не знает о мыши.
Он работает с gnome-terminal так, что видит, что программа переключается на альтернативный экран (функция xterm), и поскольку обычная прокрутка с помощью колесика мыши не имеет смысла (альтернативный экран не прокручивается), разработчик решил отправить вверх / управляющие последовательности клавиш курсора вниз. Это работает с less
, как если бы вы нажимали эти клавиши на клавиатуре.
PuTTY не имеет этой функции; его развитие было ледниковым в течение нескольких лет. Аналогичная функция была добавлена в xterm
в 2012 году под названием alternateScroll
.
До этого (или если эта функция не используется), xterm
(которую имитирует Putty) отправляет другую escape-последовательность для колесной мыши, но только если программа отправляет escape-последовательность для включения протокола мыши. less
не делает этого (и на самом деле не ожидает чтения escape-последовательностей мыши xterm
).
Поскольку функция в gnome-terminal опирается на описание терминала с использованием альтернативного экрана, это означает, что он будет работать, скажем, на половине различных систем, поскольку люди, которым нравится или не нравится эта функция, кажутся довольно равномерно разделенными.