Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

My ~/.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

(to make the command keys same as GNOME Teminator)

The situation: after horizontal splitting window into 2 panes, switching to a pane with Ctrl+a Up arrow, I must wait for a while (2-3 seconds) to view shell history commands in this pane. Because if I press the Up again it will switch back to the other pane instead of showing me a shell history command. How can I turn down this?

share|improve this question
    
A potentially useful alternative is to use CTRL + B q, this shows the window numbers in tmux. Pressing CTRL + B q <number> will take you to that window, up/down will be available immediately. You must type the number following q quite quickly. There is a timeout controlling this, too. – Spacen Jasset Feb 26 at 10:53
up vote 22 down vote accepted

Up, Down, Left, and Right (select-pane bindings; and Control- and Meta- of the same keys for resize-pane) are “repeatable” bindings by default (made via bind-key -r). After typing the prefix key and any single repeatable key, you can type any other repeatable key (without having to type the prefix again) within the number of milliseconds specified via the repeat-time session option (the default is 500ms).

You can examine the current value of repeat-time with these shell commands:

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

If you want to disable the repeat for the current session, then type your prefix, a colon, and enter this command:

set-option repeat-time 0

Or, you might be able to find a comfortable non-zero value. If you really do have a value of around 2000 (i.e. 2s), then I would guess that it is being set in /etc/tmux.conf.

If you want to disable repetition (or change the timeout) for all your sessions, then set the global value with this command:

set-option -g repeat-time 0

If you have set a per-session value, you will need to unset it before the global value will take effect in that session (set-option -u repeat-time). You may like to set the global value via your .tmux.conf if you prefer to leave it off “permanently”.

If you only have problems with Up, you could rebind it without -r:

bind-key Up select-pane -U
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.