36

Я знаю, как прокручивать tmux с помощью клавиатуры, но я заметил, что, похоже, есть способ использовать панель прокрутки терминала с GNU Screen. Можно ли это сделать с помощью tmux?

2 ответа2

38

Это возможно как на экране GNU, так и в tmux, и обходной путь аналогичен: обмануть мультиплексоры, заставив их думать, что у терминала нет режима "альтернативного экрана" (например, используемого в pico, mutt и т.д.). Это достигается установкой команд termcap для сеанса.

Для экрана GNU, поместите это в ваш .screenrc:

termcapinfo xterm*|xs|rxvt|terminal ti@:te@

и для tmux добавьте это в ваш .tmux.conf:

set -ga terminal-overrides ',xterm*:smcup@:rmcup@'

Часть команды ' xterm* ' должна быть указана так, как объявлен ваш эмулятор терминала. Некоторая форма xterm является хорошей догадкой, но вы можете проверить свою в большинстве здравомыслящих * nix систем с помощью:

echo $TERM

и это обычно может быть установлено в настройках вашей терминальной программы (то есть: для Apple Terminal.app это в «Настройки-> Профиль-> Дополнительно» (или «Настройки-> Дополнительно-> Эмуляция до появления кода») "Объявить терминал как".

Конечным результатом является то, что переполнение заканчивается в буфере обратной прокрутки терминала, а не исчезает. Конечно, поскольку это один статический буфер, при переключении между экранами или окнами tmux все будет беспорядочно, но это удобно для быстрого переключения, чтобы увидеть вывод команды ls или чего-то подобного.

4

Чтобы включить прокрутку, вы можете включить встроенный режим мыши в вашем ~/.tmux.conf следующим образом:

set -g mode-mouse on

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .