tmux에서 접두사 키와 명령 키 사이의 시간 초과를 줄이는 방법은 무엇입니까?


45

~/.tmux.conf:

set -g prefix C-a
unbind C-b
bind C-a send-prefix

bind-key o split-window -v
bind-key e split-window -h

bind-key w kill-pane

(GNOME Teminator와 동일한 명령 키를 만들기 위해)

상황 : 가로 창을 두 창으로 나누고 Ctrl+ a Up화살표 가있는 창으로 전환 한 후이 창에서 쉘 기록 명령을 보려면 잠시 (2-3 초) 기다려야합니다. 내가 Up다시 누르면 쉘 히스토리 명령을 표시하는 대신 다른 창으로 다시 전환되기 때문입니다. 이걸 어떻게 거절 할 수 있습니까?


잠재적으로 유용한 대안은 CTRL + B q를 사용하는 것입니다. 이것은 tmux의 창 번호를 보여줍니다. CTRL + B q <숫자>를 누르면 해당 창으로 이동하고 위 / 아래로 즉시 사용할 수 있습니다. q 다음에 나오는 숫자를 매우 빠르게 입력해야합니다. 이것을 제어하는 ​​타임 아웃도 있습니다.
Spacen Jasset

답변:


53

위, 아래, 왼쪽 및 오른쪽 ( select-pane바인딩 및에 대한 동일한 키의 제어 및 메타 resize-pane)은 기본적으로 "반복 가능"바인딩입니다 (를 통해 작성 bind-key -r). 접두사 키와 단일 반복 가능 키를 입력 한 후 repeat-time세션 옵션을 통해 지정된 밀리 초 (기본값은 500ms) 내에 다른 반복 가능 키를 입력 할 수 있습니다 (접두사를 다시 입력하지 않아도 됨 ).

repeat-time다음 셸 명령으로 현재 값을 확인할 수 있습니다 .

tmux show-options -g | grep \^repeat-time     # global
tmux show-options    | grep \^repeat-time     # this session

현재 세션에 대해 반복을 사용하지 않으려면 접 두부 (콜론)를 입력하고 다음 명령을 입력하십시오.

set-option repeat-time 0

또는 0이 아닌 편안한 값을 찾을 수 있습니다. 실제로 약 2000 (예 : 2 초)의 값을 가지고 있다면에 설정되어 있다고 생각합니다 /etc/tmux.conf.

모든 세션에 대해 반복을 비활성화하거나 시간 초과를 변경하려면 다음 명령을 사용하여 전역 값을 설정하십시오.

set-option -g repeat-time 0

세션 당 값을 설정 한 경우 전역 값이 해당 세션에 적용되기 전에 설정을 해제해야합니다 ( set-option -u repeat-time). .tmux.conf"영구적으로"꺼두기를 원한다면 전역 값을 설정할 수 있습니다 .

Up에만 문제가있는 경우 다음을 수행하지 않고 리 바인드 할 수 있습니다 -r.

bind-key Up select-pane -U

4

원하는 경우 특정 키 바인딩에 대해 반복을 끌 수도 있습니다. 예를 들어, 창 사이를 전환하기위한 기본 바인딩은 다음과 같습니다.

bind-key -r Up    select-pane -U
bind-key -r Down  select-pane -D
bind-key -r Left  select-pane -L
bind-key -r Right select-pane -R

-r깃발 없이 이것을 다시 만들 수 있습니다.

bind-key    Up    select-pane -U
bind-key    Down  select-pane -D
bind-key    Left  select-pane -L
bind-key    Right select-pane -R

개인적으로, 나는 창 전환이 반복 불가능한 것을 선호합니다. 창을 여러 개의 작은 창으로 나누면 반복이 좋지만 창에서 실행되는 응용 프로그램 (쉘 기록, vim 등)과 키 충돌이 발생할 수 있습니다 (설명한 것처럼). 어쨌든 일반적으로 창당 창을 2 개 이하로합니다. 그러나 각자 자신에게.

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