Клавиша ESC вызывает небольшую задержку в терминале из-за его поведения Alt +

Моя настройка терминала – gnome-terminal + tmux + zsh с привязками vi.

В таких приложениях, как vim или даже в режиме редактирования vi командной строки zsh, мне нужно часто нажимать клавишу ESC, но есть небольшая задержка до того, как эффекты этого ключа произойдут. См. Экран GNU Экран Vim ESC замедляется

После некоторых экспериментов я обнаружил, что нажатие клавиши ESC и сразу другой ключ (скажем, b ) имеет тот же эффект, что и удар Alt + b . Я не знаю, почему это так (вероятно, по старым причинам, когда не было Alt ? Я не знаю). В любом случае, у меня есть две клавиши Alt, и я не хочу этого поведения с помощью клавиши ESC . Я пробовал с C + [ и с той же проблемой с этим тоже.

Я не уверен, кто несет ответственность за это: gnome-terminal или tmux или сама моя ОС (Ubuntu Natty). Любые идеи о том, как обращаться с этим, были бы замечательными.

Обновление : я проверил без tmux на другом терминале (LXTerminal), и там также присутствует задержка.

  • Сводка использования диска для пользователя
  • Почему замена процесса <() не работает с ssh -F
  • LS_COLORS не соблюдается на Cygwin
  • Выполнить команду в режиме zsh vim
  • После установки oh-my-zsh: ... /.zshrc:source:34: нет такого файла или каталога ... /.oh-my-zsh/oh-my-zsh.sh
  • Измените zsh-завершение, чтобы выполнить доработки над подсказкой
  • Как включить вывод скрипта в приглашение zsh
  • как мне получить zsh для * просто * перечислить материал в моем текущем каталоге во время завершения табуляции?
  • 3 Solutions collect form web for “Клавиша ESC вызывает небольшую задержку в терминале из-за его поведения Alt +”

    Вот реальное решение. Добавьте в .tmux.conf следующее:

     set -s escape-time 0 

    Задержка вызвана процедурами ввода, которые, возможно, придется решить, нажата ли функциональная клавиша или нет. Для этого процедура ввода запускает таймер всякий раз, когда он читает символ ESC. Символы, которые считываются с входного сигнала до истечения таймера (скажем, десятая часть секунды), затем интерпретируются как последовательность ESC функциональной клавиши, и эта ESC-последовательность будет сравниваться с известными строками ESC-функций из terminfo или termcap (зависит от того, какие низкоуровневые процедуры используются).

    Конечно, это раздражает приложения, где ESC используется сам по себе, но я не знаю об этом обходного пути.

    Что касается вашего вопроса с поведением ESC a = Meta a :

    Мета ключи не были доступны со всеми клавиатурами. В качестве обходного пути часто разрешалось использовать клавишу ESC для нажатия перед другим ключом.

    Хотя это может не решить проблему напрямую, я обнаружил, что для выхода из режима вставки я могу использовать <Ctrl> c . Это также можно использовать для выхода из экрана прокрутки экрана tmux (который можно вызвать с помощью <leader> PgUP )

    Interesting Posts

    Как установить предыдущую версию пакета .deb и вывести его?

    Причина запуска скрипта после начала работы сети?

    / etc / network / interfaces автоматически запускает pppoe на беспроводном LAN (wlan0) при загрузке, а также делает его постоянным

    Нужно ли монтировать / загружаться на отдельный первичный раздел?

    Как просмотреть доступные пакеты в определенном репозитории на Debian?

    scp stdin: не является tty, и запись не удалась, сброс соединения с помощью одноранговой сети

    Время создания файла Linux. Каковы требования при рассмотрении полезного атрибута?

    Сценарий оболочки декодирования Url

    Как отключить автозапуск Apache и MySQL при включении ПК?

    регулярная проблема буферизации awk при вызове команд оболочки

    Вопрос о виртуализации CentOS и KVM и PCI Passthrough

    Необходимо написать сценарий «thirsty.sh»: BASH

    не удалось увеличить размер диска виртуального диска ubuntu

    ssh без пароля в AIX

    Выход из режима следования с меньшим и журнальным

    Linux и Unix - лучшая ОС в мире.