Есть ли способ сделать прокрутку экрана как обычный терминал?


20

Я люблю экран, но это сводит меня с ума, что я должен перестать печатать ввод, нажать CTRL+A [, а затем найти то, что мне нужно.

Есть ли способ заставить колесо прокрутки работать нормально, а не команды прокрутки?

Кроме того, возможно ли включить Shift + PageUp / PageDn?


2
Не ответ, но tmux делает это намного проще. Я пытался сделать это на экране раньше, но, похоже, это всегда связано с отображением тайных escape-кодов, которые зависят от эмулятора терминала.
jw013

aperiodic.net/screen/faq вы, вероятно, просто должны отключить альтернативный экран
Ульрих Дангел

просто чтобы добавить ссылку: прокрутка внутри экрана или пауза вывода
jozxyqk

Ответы:


15

Я использую эти настройки с urxvt в моем ~ / .screenrc:

termcapinfo rxvt-unicode ti@:te@
termcapinfo rxvt ti@:te@
termcapinfo rxvt 'hs:ts=\E]2;:fs=07:ds=\E]2;screen07'

Они позволяют использовать полосу прокрутки и колесико мыши "правильно".

Обратите внимание, что это зависит от типа терминала, поэтому не будет работать, если ваш терминал не относится к типу rxvt. Если это не работает, попробуйте заменить rxvtи rxvt-unicodeна соответствующий тип терминала (запустите printf $TERM.)


2
+1. Использование «xterm» вместо «rxvt» и «rxvt-unicode», Shift-PgUp / -PgDown работает для меня на gnome-Terminal. Но колесико мыши прокручивает историю оболочки.
Даниэль Куллманн

при использовании gnome-терминала колесико мыши прокручивается нормально, то есть в режиме прокрутки.
Даниэль Куллманн

Когда я использую экран в гном-терминале. Не беспокойся об этом ...
Даниэль Куллманн

1
Это также работает для меня, используя xtermвместо rvxt*. Благодарность!
Брайан Эйджи

Не могли бы вы объяснить, что делает каждая из этих команд, пожалуйста?
Тотор

0

проверьте переменную $ TERM, чтобы увидеть, какой терминал вы на самом деле используете. Если его xterm (или xterm *) используют, добавьте это в ~ / .screenrc, чтобы разрешить прокрутку мышью:

termcapinfo xterm* ti@:te@

или чтобы быть более полным:

termcapinfo xterm*|rxvt*|kterm*|Eterm* ti@:te@

в отсутствие изменения ~ / .screenrc вы можете прокрутить с помощью Ctrl-a ESC, а затем использовать стрелки вверх-вниз. д чтобы выйти.

Примечание: вы также можете использовать мышь для изменения фокуса между разделенными окнами, добавив это в ~ / .screenrc

mousetrack on

Term Cap - это независимая от устройства библиотека / база данных описания терминала.

Ссылки / копии с:

Terminal: команда termcapinfo не найдена

https://en.wikipedia.org/wiki/Termcap

/superuser/629004/gnu-screen-change-focus-in-split-windows-with-mouse

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.