Прокрутка на основі інтерфейсу користувача


0

Емулятори графічного інтерфейсу, такі як xfce4-термінал, мають кілька способів прокручування буфера терміналу. Насамперед:

  1. shift- (pgup / pgdown, home / end, up / down)
  2. колесо миші
  3. клацання і перетягування на смузі прокручування

Я хочу, щоб всі три працювали в межах tmux.

Я знаю, 3 не буде працювати на розділених екранах. Я з цим добре. Я не буду використовувати розділені екрани.

Я знаю, що є set -g mouse on. Це лише номер 2 у вищенаведеному списку. Я дійсно хочу всіх трьох у цьому списку.

Екран GNU насправді має цю здатність. Ви використовуєте лінію

termcapinfo xterm* ti@:te@

у .screenrc. Я хотів би подібну поведінку. Я не використовую екран GNU, оскільки він дуже погано обробляє зміну терміналу.

Відповіді:


0

Я не вірю, що це можливо для роботи - так само, як цей підхід для прокрутки не буде працювати в таких додатках vim / nano.

Можливо, кліки миші передаються до додатків, що працюють на терміналі, але це розширення терміналу, який ви використовуєте ... як ви вже сказали, також можливо, що деякі емулятори терміналу передають мишу події колеса, але програма також повинна підтримувати подібні події.


Це не відразу, тому що програми переміщують курсор до абсолютних координат на терміналі і виводять їх вихід. Це розширення - старі термінали могли друкувати тільки нову інформацію в нижній частині екрана (або паперу ... xterm друзі - прямі нащадки від телетайпів ). Оскільки технологія прогресувала, були введені функції, такі як переміщення курсору по екрану. Тепер ми використовуємо " Емулятори терміналів " (ось що xterm є), а не фізичний " Термінали ".

При використанні Shift + PgUp / PgDn або перетягніть смугу прокручування, ви прокручуєте назад через емулятор терміналу " буфер прокрутки "- порахуйте собі пощастило, є така річ!

Коли в нижній частині виводяться нові рядки, старі рядки виштовхуються з верхньої частини екрану і доступні для перегляду буфера прокрутки терміналу. Це статичне й не змінюється ( незмінний ).

Було б нерозумно намагатися переглядати буфер прокрутки, а спостерігати за додатками правильно повторно малювати.

Не забувайте, що буфер терміналу, а додаток - дві дуже різні речі!


В tmux можна використовувати Ctrl + B потім PgUp / PgDn переглянути буфер прокручування однієї панелі (пам'ятайте, tmux ефективно емулятор термінала, що працює всередині емулятора терміналу). На даний момент tmux воля " заморозити "Ця панель, і ви зможете прокручувати вгору / вниз і шукати назад / вперед ? і / (такий же як і vim і less ).

Натисніть Повернення або Ctrl + C щоб повернутися до нижнього та знову взаємодіяти з програмою / оболонкою.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.