ESC 키는 Alt + 동작으로 인해 터미널이 약간 지연됩니다 효과가 발생하기 전에 약간의 지연이

내 터미널 설정은 vi 바인딩이있는 그놈 터미널 + tmux + zsh입니다.

vim 또는 zsh의 커맨드 라인 vi 편집 모드와 같은 응용 프로그램에서 ESC키 를 자주 눌려 야 하지만이 키의 효과가 발생하기 전에 약간의 지연이 있습니다. 참조 느린 빔 ESC 키를 만드는 GNU 화면

몇 가지 실험을 한 후, ESC키 를 치는 즉시 다른 키 (예 :)를 누르는 b것과 같은 효과가 있음을 발견했습니다 Alt+b. 나는 이것이 왜 그런지 모른다. (아마도 레거시 이유가 없었던가 Alt? 모르겠다). 어느 쪽이든, 나는 두 개의 Alt키를 가지고 있으며 내 ESC키로이 동작을 원하지 않습니다 . 나는 그것을 시도 C+[하고 그것과 같은 문제를 시도 했다.

누가 그놈 터미널이나 tmux 또는 내 OS 자체 (Ubuntu Natty)를 담당하는지 잘 모르겠습니다. 이 문제를 해결하는 방법에 대한 아이디어는 훌륭합니다.

업데이트 : 다른 터미널 (LXTerminal)에서 tmux없이 확인했으며 지연도 있습니다.



답변

실제 수정 사항은 다음과 같습니다. 다음에 추가하십시오 .tmux.conf:

set -s escape-time 0


답변

기능 키를 눌렀는지 여부를 결정해야하는 입력 루틴으로 인해 지연이 발생합니다. 이를 위해 입력 루틴은 ESC 문자를 읽을 때마다 타이머를 시작합니다. 타이머가 다 떨어지기 전에 입력에서 읽은 문자 (10 분의 1 초라고 함)는 기능 키의 ESC 시퀀스로 해석되며이 ESC 시퀀스는 terminfo 또는 termcap 데이터베이스 (사용되는 하위 수준 루틴에 따라 다름)

그러나 ESC가 자체적으로 사용되는 응용 프로그램에는 이것이 성가신 일이지만, 이에 대한 해결 방법은 모르겠습니다.

ESC a= 의 동작으로 질문에 관해 Meta a:

모든 키보드에서 메타 키를 사용할 수있는 것은 아닙니다. 이 문제를 해결하기 위해 종종 다른 키보다 먼저 ESC 키를 누르는 것이 허용되었습니다.


답변

이렇게해도 문제가 직접 해결되지는 않지만 <Ctrl> c삽입 모드를 종료하는 데 사용할 수 있음을 확인했습니다 . 이것은 또한 tmux의 화면 스크롤을 종료하는 데 사용할 수 있습니다 (을 사용하여 호출 할 수 있음 <leader> PgUP)


답변