Чи може прокручування колеса миші працювати на екрані?


55

Чи є спосіб використовувати колесо миші для прокручування результатів screenсеансу?

Я можу використовувати клавішу прокручування попереднього виходу screenпісля натискання ctrl+a [. Чи можливо це зробити за допомогою колеса миші?

(Я використовую putty, але я не думаю, що це puttyпроблема, я вважаю, що це screenпроблема.)


3
Вам потрібно сказати PuTTY, щоб надсилати події колеса миші в термінал, а не зберігати їх для себе. (Я не знаю, чи можливо, але перевірте інструкцію, це дуже добре.)
Жил "ТАК - перестань бути злим"

Навіть на звичайному сеансі терміналу в screenмені не вдалося змусити прокрутку працювати належним чином поза screen"копіювальним режимом". Я думаю, що це обмеження програми, а не стільки проблема Windows / Putty, але я можу помилитися.
Naftuli Kay

Нам цікаво, ви, хлопці, спробували те саме tmux?
Калеб

@Caleb: колесо миші tmuxпрацює як шарм (хоча я не пробую це з шпаклівкою, у мене немає вікон :))
Торіан

Відповіді:


51

Прокрутка миші та ліфти працюватимуть, якщо ви включите їх у свій .screenrc.

FAQ на екрані

З: Мій панель прокрутки xterm не працює з екраном.

Відповідь: Проблема полягає в тому, що xterm не дозволить прокручувати, якщо вибрано альтернативний буфер тексту. Стандартні визначення термінаcap ініціалізують можливості ti і te перемикаються на альтернативний текстовий буфер і з нього. (Панель прокрутки також не працює, коли ви починаєте, наприклад, "vi"). Ви можете сказати екрану не використовувати ці ініціалізації, додавши рядок termcapinfo xterm ti @: te @ у файл ~ / .screenrc-файл.

Отже, у своєму .screenrc у мене є:

termcapinfo xterm* ti@:te@

У tmux це буде щось на зразок (.tmux.conf):

set -g terminal-overrides 'xterm*:smcup@:rmcup@'

7

Хоча це давнє запитання, метод, який я знайшов найкращим для мене, - це Ctrl + A + ESCкомбінація клавіш. Це робить вихідний екран прокручуваним. На сторінці документації:

Віртуальними терміналами на екрані можна керувати, натискаючи комбінацію клавіш Ctrl + A, а потім натискаючи клавішу, щоб виконати одну з команд, наведених нижче:

Esc дозволяє вам прокручувати вперед і назад у своєму термінальному виході

Документацію ви можете знайти тут


1
Це хороша відповідь, яка вказує на вбудовану функцію екрана, яка вирішує проблему без будь-якої зміни конфігурації.
Хуберт Перрон

2
Варто згадати, що режим копіювання (Ca, ESC) призупиняє будь-який запущений процес у вікні, в якому він використовувався: superuser.com/questions/220139/…
К. Карпентер,

2

Це не остаточне рішення, якщо ви використовуєте це

termcapinfo xterm* ti@:te@

тоді підтримка прокрутки миші буде зламана всередині vim, тобто mouse=vi


Чи можна редагувати .screenrcтак, щоб при введенні vimце було вимкнено та увімкнено під час виходу?
fbence

добре, це прийнятно, оскільки я майже не використовую прокручування миші у vim так чи інакше
andrej

1

Те, що запропонував Жилл, - це, мабуть, найкраща відповідь, якщо це можливо зробити.

Якщо це не так, вирішенням, який повинен працювати, було б використовувати керування x-мишкою для надсилання клавіш зі стрілками вгору та вниз, коли миша прокручується. Я ніколи не використовував екрани з шпаклівкою, але я використав цю налаштування на шпаклівку у Windows, щоб можна було прокручувати текстовий файл з vi або nano. У мене були різні налаштування профілів: один для прокрутки на 3 рядки та одного для прокрутки на 1 рядок.


Коли я використовую vim, я повинен set mouse=aувімкнути прокрутку миші. Це працює в шпаклівці без використання екрана, але це не працює при використанні екрана. Як налаштувати керування x-мишкою?
Крісті

просто завітайте на веб-сайт і завантажте програмне забезпечення, це досить само собою пояснення. Це додаток GUI.
AsherMaximum

1

Колесо прокрутки миші добре працює, наприклад, наприклад, посилається на внутрішній екран, який по черзі працює всередині терміналу gnome, так що це дійсно можливо. У лотці для шпаклівки це не відбувається, тхо.

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