Я не верю, что это возможно для работы - во многом так же, как этот подход к прокрутке не будет работать в приложениях, таких как vim
/ nano
.
Можно передавать щелчки мыши приложениям, работающим на терминале, но это расширение используемого вами терминала ... как вы уже говорили, некоторые эмуляторы терминала также могут передавать мышь события колеса, но приложение также должно поддерживать такие события.
Это не сразу возможно, потому что приложения перемещают курсор к абсолютным координатам на терминале и выводят их вывод. Это расширение - старые терминалы могут печатать только новую информацию в нижней части экрана (или на бумаге ... xterm
и друзья являются прямыми потомками от телетайпов). По мере развития технологий появились такие функции, как перемещение курсора по экрану. Теперь мы используем « Эмуляторы терминалов » (вот что такое xterm
), а не физические « Терминалы ».
Когда вы используете Shift + PgUp/PgDn или перетаскиваете полосу прокрутки, вы прокручиваете обратно через « буфер прокрутки » эмулятора терминала - считайте, что вам повезло, что такая вещь есть!
Когда новые строки выводятся внизу, старые строки выталкиваются из верхней части экрана и затем становятся доступными, просматривая буфер обратной прокрутки терминала. Это статично и не изменяется (неизменяемый).
Было бы бессмысленно пытаться просмотреть буфер обратной прокрутки и наблюдать, как приложения корректно перерисовывают себя.
Не забывайте, что буфер терминала и приложение - это две разные вещи!
В tmux
вы можете использовать Ctrl+B, а затем PgUp/PgDn для просмотра буфера обратной прокрутки одной панели (помните, что tmux
фактически является эмулятором терминала, работающим внутри эмулятора терминала). В этот момент tmux
« заморозит » эту панель, и вы сможете прокручивать вверх /вниз и выполнять поиск назад /вперед, используя ?
и /
(так же, как vim
и less
).
Нажмите Return или Ctrl+C, чтобы вернуться вниз и снова взаимодействовать с приложением / оболочкой.