10

Чего я хотел бы добиться, так это прокручивать колесо мыши, к чему я привык в обычной сессии ssh. В командной строке bash мышь должна прокручивать вывод моего терминала, а внутри less/vim - альтернативный буфер, который они используют, чтобы при выходе ничего не оставалось из текста, показанного внутри less. Если я отключу альтернативные возможности буфера в .screenrc, вот так:

termcapinfo xterm ti@:te@

тогда он также отключен для vim/less, и прокрутка колесика мыши ими не будет обрабатываться. Включение эмуляции внутреннего альтернативного буфера экрана, например:

altscreen on

Помогает только в восстановлении вывода bash после выхода less/vim. Не в прокрутке колесика мыши внутри них.

Итак, есть ли какая-либо опция экрана, может быть, в некоторой экранной вилке / альтернативе, которая запрещает использование альтернативного буфера самим экраном?

1 ответ1

1

Вы можете захотеть использовать tmux вместо экрана (https://tmux.github.io). В Tmux есть поддержка мыши xterm, поэтому вы можете использовать колесо прокрутки для прокрутки буфера, не отключая альтернативные буферы.

Обратите внимание, что конфигурация по умолчанию в tmux использует ctrl-b в качестве префикса, но вы можете легко изменить его на ctrl-a, а также добавить экранные привязки, чтобы упростить его. Тонны примеров этого онлайн, такого как http://blog.obnox.de/tmux-with-screen-like-key-bindings/

Обязательно добавьте mouse on в конфигурацию, чтобы поддержка мыши xterm работала. В качестве дополнительного бонуса он также позволит вам щелкать между окнами и панелями и использовать мышь, чтобы изменить их размер.

Tmux также имеет ряд других преимуществ, особенно вертикальные разбиения (которые, я думаю, теперь, наконец, добавлены на экран) и возможность иметь много разделений (панелей) в одном окне.

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