$ TERM이 screen-256color로 설정된 경우 zsh에서 단축키가 작동하지 않습니다


0

다양한 토론 당으로서 나는 바인딩 opt+를 <-0x1b 0x62opt+ ->합니다 0x1b 0x66. 이것은 zsh에서는 훌륭하지만 tmux에서는 효과적이지 않습니다.

tmux opt+ <-에서는 단어 당 백 워드를 건너 뛰지 만 일부 모드 수정을 수행하는 것 같습니다. s나중에 입력 하면 커서 아래의 문자가 삭제됩니다.

또한 cmd+ ->( 0x05) 및 cmd+ <-( 0x01)에 문제가 있습니다 . zsh에서 해당 키는 줄의 끝과 시작으로 이동하지만 tmux에서는 전혀 작동하지 않습니다.

이 16 진수 코드에 대한 키 바인딩이 없다고 생각하므로 iTerm2에서 tmux로가는 도중에 무언가가 손실된다고 가정합니다 ... readzsh에서 직접 호출 하고 tmux에서 opt위에서 언급 한 바인딩에 대해 동일한 코드를 출력 하지만 그렇지 않습니다. cmdtmux 의 바인딩에 대한 모든 것을 출력합니다 .

편집하다:

나는 조금 더 실험하고 tmux에서 / bin / bash를 사용할 때 바인딩이 제대로 작동하고 tmux에서 zsh를 사용할 때만 깨지는 것을 발견했습니다. .zshrc를로드하지 않고 / bin / zsh를 테스트하여 homebrews zsh에 문제가 있는지 확인했지만 바인딩도 손상되었습니다. 이것이 실제로 zsh의 문제인 것 같습니다.

편집하다:

더 많은 실험! 이것은 내 .tmux.conf에 의해 "screen-256color"로 설정된 $ TERM 환경 변수에 연결된 것으로 보입니다. 색상이 제대로 작동하는 것처럼 보이지만 zsh가이 환경 변수와 함께 실행되면 탐색이 작동을 멈 춥니 다. 실행 TERM=screen-256color zsh하면 문제가 재현됩니다.


bindkey -e.zshrc없이 zsh를 시작한 후 사용 했습니까 ? 그렇지 않으면 일반 터미널에서도 작동하지 않습니다.
SilverWolf

답변:


1

마침내 답을 찾은 것 같습니다! 또는 정확히 어떤 문제가 있는지 확실하지 않기 때문에 해결 방법이 있습니다.

단어 탐색을 위해 명시 적으로 키 바인딩을 구성하면 문제가 해결되었습니다.

bindkey "^[f" forward-word
bindkey "^[b" backward-word

zsh가 $ TERM을 기반으로 다른 키 바인딩을 사용하고있을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.