# ------------------------------------------------------------------- # Settings # ------------------------------------------------------------------- set -g history-limit 15000 # increase scrollback lines set -g default-command 'bash' # no login shell set -g renumber-windows on # renumber windows sequentially after closing any of them setw -g monitor-activity on # monitor for activity in windows set -g visual-activity on # display status line message for windows with activity (monitor-activity) set -g aggressive-resize on # smart window resizing when multiple attached clients set -sg escape-time 50 # shorter Esc/Alt disambiguation timeout set -sg default-term 'screen-256color' # ------------------------------------------------------------------- # Look and Feel # ------------------------------------------------------------------- # status bar set -g status-style none set -g status-left-style none set -g status-left-length 40 set -g status-left '' set -g status-right-style none set -g status-right-length 150 set -g status-right '#[bg=black,fg=brightblue] #(whoami)@#H #[fg=default]/#[fg=brightblue] #S ' # window status set -g window-status-format ' #I:#W#F ' set -g window-status-current-format ' #I:#W#F ' set -g window-status-style 'fg=colour244' set -g window-status-separator '' set -g window-status-current-style 'bg=brightblack,fg=brightwhite,bold' set -g window-status-activity-style 'bg=black,fg=brightblue' # pane border set -g pane-border-style 'fg=brightblack' set -g pane-active-border-style 'fg=green' # pane number indicator set -g display-panes-colour white set -g display-panes-active-colour brightyellow # clock mode set -g clock-mode-colour white # messages set -g message-style 'bg=blue,fg=brightwhite' set -g message-command-style 'bg=green,fg=brightwhite' set -g mode-style 'bg=blue,fg=brightwhite' # ------------------------------------------------------------------- # Key Bindings # ------------------------------------------------------------------- # act like GNU screen unbind C-b set -g prefix C-a bind-key a send-prefix bind-key A command-prompt "rename-window %%" bind-key C-a last-window bind-key C new-window bind-key c new-window -n 'sh' # new window w/ default title bind-key C-c new-window -n 'sh' # (same as C-a c) bind-key C-d detach # (same as C-a d) bind-key C-n next-window # (same as C-a n) bind-key C-p previous-window # (same as C-a p) bind-key Escape copy-mode unbind-key Space # vim style movement setw -g mode-keys vi bind-key h select-pane -L bind-key j select-pane -D bind-key k select-pane -U bind-key l select-pane -R bind-key J swap-pane -D bind-key K swap-pane -U # vim style window splitting bind-key 's' split-window -v bind-key 'v' split-window -h # Shift+0-9 to select screens 10-19 bind-key ')' select-window -t :10 bind-key '!' select-window -t :11 bind-key '@' select-window -t :12 bind-key '#' select-window -t :13 bind-key '$' select-window -t :14 bind-key '%' select-window -t :15 bind-key '^' select-window -t :16 bind-key '&' select-window -t :17 bind-key '*' select-window -t :18 bind-key '(' select-window -t :19 bind-key R source-file ~/.tmux.conf bind-key C-o select-pane -t :.+ # (same as C-a o) bind-key m setw monitor-activity # toggle monitor-activity