# Managed by Ansible # General quality of life set -g mouse on set -g history-limit 50000 set -g set-clipboard on set -g renumber-windows on set -g escape-time 10 set -g focus-events on # Use 1-based indexes set -g base-index 1 setw -g pane-base-index 1 # Better terminal/color support set -g default-terminal "tmux-256color" set -ga terminal-overrides ",xterm-256color:Tc" # Vi-style copy mode setw -g mode-keys vi # Status bar set -g status on set -g status-interval 5 set -g status-position bottom set -g status-style "bg=colour235,fg=colour250" set -g status-left-length 80 set -g status-right-length 120 set -g status-left "#[fg=colour82,bold] #S #[fg=colour240]|#[default] " set -g status-right "#[fg=colour245]%Y-%m-%d #[fg=colour82]%H:%M #[fg=colour240]| #[fg=colour39]#H " setw -g window-status-format "#[fg=colour245] #I:#W " setw -g window-status-current-format "#[fg=colour235,bg=colour82,bold] #I:#W " # Pane borders set -g pane-border-style "fg=colour240" set -g pane-active-border-style "fg=colour82" # Easier reload bind r source-file ~/.tmux.conf \; display-message "Reloaded ~/.tmux.conf" # Splits using current directory bind | split-window -h -c "#{pane_current_path}" bind - split-window -v -c "#{pane_current_path}" # New windows keep current directory bind c new-window -c "#{pane_current_path}" # Vim-like pane movement bind h select-pane -L bind j select-pane -D bind k select-pane -U bind l select-pane -R # 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 # Copy mode bindings bind-key -T copy-mode-vi v send-keys -X begin-selection bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel bind-key -T copy-mode-vi Escape send-keys -X cancel