# Set a Ctrl-b shortcut for reloading your tmux config bind r source-file ~/.tmux.conf # Set the prefix key and some key bindings to match GNU Screen bind-key C-a send-prefix # Status bar customization set-option -g status-bg black set-option -g status-fg white set-option -g status-interval 5 set-option -g status-left-length 90 set-option -g status-right-length 60 set-option -g status-justify left set-option -g status-right '#[fg=white]%a %d %b %R' # Rename your terminals set-option -g set-titles on set-option -g set-titles-string '#T - #(curl ipecho.net/plain;echo)' # Disable auto rename window title set -g allow-rename off setw -g automatic-rename off # start window numbers at 1 to match keyboard order with tmux window order set -g base-index 1 setw -g pane-base-index 1 # split panes using | and - bind | split-window -h bind - split-window -v unbind '"' unbind % # Remap window navigation to vim unbind-key j bind-key j select-pane -D unbind-key k bind-key k select-pane -U unbind-key h bind-key h select-pane -L unbind-key l bind-key l select-pane -R # Use Alt-arrow keys without prefix key to switch panes bind -n M-Left select-pane -L bind -n M-Right select-pane -R bind -n M-Up select-pane -U bind -n M-Down select-pane -D # Shift-movement keys will resize panes bind -r H resize-pane -L 5 bind -r J resize-pane -D 5 bind -r K resize-pane -U 5 bind -r L resize-pane -R 5 bind-key -r C-h select-window -t :- bind-key -r C-l select-window -t :+ # shortcut for synchronize-panes toggle bind m set-window-option synchronize-panes # Shift arrow to switch windows bind -n S-Left previous-window bind -n S-Right next-window # No delay for escape key press set -sg escape-time 0 # Enable mouse mode (tmux 2.1 and above) set -g mouse on # Scrollback buffer n lines set -g history-limit 100000 # Local config if-shell "[ -f ~/.tmux.conf.local ]" 'source ~/.tmux.conf.local'