Я установил новый iTerm 2. Он спросил меня в желтой полосе вверху, хочу ли я включить функцию мыши. К сожалению, я не помню точное предложение больше.
Случайно я одобрил. Теперь, когда я использую колесо прокрутки мыши в iTerm, оно больше не прокручивает вверх, а вместо этого запускает историю команд. Как если бы я нажал на курсор вверх.
Я не мог найти правильные настройки, чтобы выключить это снова. Кто-нибудь знает, где я могу переключить эту опцию?
Спасибо за помощь!
ESC [ ? 1 0 4 9 l
илиESC [ ? 1 0 4 7 l
илиESC [ ? 47 l
( gnu.org/software/screen/manual/html_node/Control-Septions.html )Ответы:
Некоторые терминалы, в том числе iTerm2, имеют функцию, которая изменяет поведение мыши с колесиком при запуске полноэкранной программы, например
vi
, или,screen
илиtmux
. Это происходит, когда эти программы используют альтернативный экран , чтобы обеспечить полезную функцию. Обычно при использовании альтернативного экрана в iTerm2 мышь с колесиком действует как полоса прокрутки, прокручивая весь экран вверх / вниз. Но когда эта функция включена, iTerm2 отправляет курсорные клавиши вверх / вниз, внося изменения в историю команд.Как предлагается в другом комментарии, выберите меню « Настройки» :
и в этом, выберите вкладку Advanced . Прокрутите вниз до раздела Мышь ,
и переключить запись для
Колесо прокрутки отправляет клавиши со стрелками в режиме альтернативного экрана
от да к нет . Вам нужно будет перезапустить iTerm2, чтобы изменения вступили в силу. (С iTerm2 v3.1.5 изменения вступают в силу без перезапуска.)
источник
Если вы оказались в ловушке в режиме истории прокрутки, вы можете выйти, запустив vi и выйдя напрямую. Вы также можете выбрать другую программу, которая использует альтернативный экран и выйти из нее напрямую.
Прокрутка истории колесиком мыши в теории никогда не происходит. Это происходит на практике, потому что иногда альтернативный режим экрана переключается неправильно. Принятый ответ решает проблему, отключая полезную функцию, а именно прокрутку в vi, less, ... с помощью колесика мыши или трекпада. Вы можете сохранить опцию из расширенных настроек:
установить на да. Иногда вы будете в ловушке в режиме истории прокрутки. Но если вы знаете, как убежать, это не проблема.
источник
[[A^
и[[B^
к командной строке вместо прокрутки окна. Я знал, что это не нормальное поведение. До этого я оставлял компьютерnano
в оболочке SSH, которая отключалась, когда я закрывал свой ноутбук. Тот внезапный выход был, очевидно, виновником. Простое открытие новой вкладки в iTerm2 исправило это.screen
вы не можете использовать этот трюк для выхода из режима альтернативного экрана. Так что, если вы используетеscreen
много (как я), отключение функции в целом спасает жизнь.Возможно, вам просто нужно выйти из альтернативной консоли.
Пытаться:
tput rmcup
источник
Предпочтения: Дополнительно: Мышь: Колесо прокрутки отправляет клавиши со стрелками в альтернативном режиме.
источник
С iTerm2 вы также можете удерживать Option, используя колесо прокрутки для принудительной прокрутки окна, если вы хотите, чтобы колесо продолжало работать в vim.
источник
Поведение, которое вы видите, является ожидаемым (и правильным) поведением на альтернативном экране. Единственная проблема, с которой вы столкнулись, это то, что вы попали в bash или что-то еще на альтернативном экране, возможно, при потере соединения или из-за убитого vim или менее. Например, вы были
less +F /var/log/something
и были отключены.Вы видите, что кто-то уже написал, что
tput rmcup
команда выйдет на главный экран.Я также пошел дальше и посмотрел некоторые символы управления терминалом. Это может быть любой из:
ESC [ ? 1 0 4 9 l
илиESC [ ? 1 0 4 7 l
илиESC [ ? 47 l
(gnu.org/software/screen/manual/html_node/Control-Septions.html) с предпочтением первого.Я в целом успешен в iTerm2, и на
echo -e '\e[?1049l'
самом деле мне неrmcup
легче вспомнить, восстановить память консоли?источник
У меня была такая же проблема, и ни одно из решений, которые я прочитал и попробовал, не сработало. Что исправило мою проблему, так это отключив Secure Keyboard Entry, и теперь, когда я использую мышь для прокрутки в ssh и в терминальном режиме в macOS 10.13, это работает так, как я этого ожидаю!
источник