tmux에서 ctrl + 왼쪽 / 오른쪽 키를 전체 단어로 이동하려면 어떻게해야합니까? tmux에서는 작동하지 않습니다. 이는

zsh와 bash에서 ctrl + 화살표를 사용하면 입력 한 위치를 전체 단어로 이동할 수 있지만 tmux에서는 작동하지 않습니다. 이는 쉘을 열 때마다 자동으로 시작하므로 문제가됩니다 .

이 문제를 어떻게 해결할 수 있습니까?



답변

  1. 당신을 편집 ~/.tmux.conf하고 라인을 추가하십시오 :

    set-window-option -g xterm-keys on
    
  2. 아직 영구적으로 작성하지 않으려면 다음을 수행하십시오.

    C-b :set-window-option xterm-keys on
    
  3. 다음을 수행하여 tmux에서 구성을 다시로드하십시오.

    C-b :source-file ~/.tmux.conf
    

자세한 내용은 여기에 :


답변

set-window-option -g xterm-keys on

이 방법의 나 일부있어 및 준 CtrlLeft/Right콘솔,하지만 여전히 정력 다르게 응답했다.

열쇠를 묶는 것이 도움이되지 않는 것 같습니다.

어느 시점에서 기본 터미널을 화면 ( set-option -g default-terminal "screen"in .tmux.conf)으로 설정했습니다.

다음이 변경 내게 준 CtrlLeft/Right다른 모든 것들에 :

set-option -g default-terminal "xterm-256color"

누군가에게 도움이되기를 바랍니다.


답변

msys2 / Cygwin / mintty의 경우 :

에 아래에 추가하십시오 ~/.inputrc.

"\e[1;5C": forward-word   # ctrl + right
"\e[1;5D": backward-word  # ctrl + left

다시로드하면 tmux가 올바르게 작동합니다.


답변

확실하지는 않지만 tmux기본적으로 C-<up/down/left/right>현재 포커스가있는 창의 위 / 아래 / 왼쪽 / 오른쪽 창으로 포커스를 이동하기 위해 바인딩 하기 때문일 수 있습니다 . 창을 자주 사용하지 않으면이 기능을 보지 못할 수 있습니다. 이것이 문제인 경우 다음과 같이 말하여 해당 키를 바인드 해제 할 수 있습니다.

unbind C-Left
unbind C-Right

그것은 그 자체로 충분 하거나 다음을 통해 원하는대로 수동으로 다시 바인딩해야 할 수도 있습니다.

bind -n C-Left <the action you want>
bind -n C-Right <other action you want>


답변

High Sierra의 시스템 환경 설정이 Mission Control에서 사용되도록 설정 되었기 때문에 키가 올바르게 바인딩되지 않았습니다. 이를 선택 해제하면 iTerm2 및 Tmux에서 올바른 바인딩이 작동합니다.

시스템 환경 설정

컨트롤 키를 참조하는 모든 항목을 선택 취소하면 바인딩이 제대로 작동했습니다.


답변