################################################################################ # Base configuration ################################################################################ # Use Ctrl-a as a prefix instead of Ctrl-b set -g prefix C-a unbind C-b # More responsive with sending commands set -sg escape-time 1 # Start counting at 0, easier for keyboard shortcuts set -g base-index 1 set-window-option -g pane-base-index 1 # Status set -g status-interval 20 set -g status-justify centre set -g status-left "#[fg=colour75]#S:#I.#P" #colour75 is an awesome blue set -g status-right "#[fg=colour75]%F %l:%M%P" #colour75 is an awesome blue setw -g monitor-activity on set -g visual-activity on set-option -g mouse on ################################################################################ # Colors ################################################################################ set -g default-terminal "screen-256color" set -g status-fg white set -g status-bg black ################################################################################ # Custom bindings ################################################################################ # Have buffers be more like vim buffers setw -g mode-keys vi unbind [ bind Escape copy-mode unbind p bind p paste-buffer bind-key -T copy-mode-vi 'v' send -X begin-selection bind-key -T copy-mode-vi 'y' send -X copy-selection # Linux bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -in -selection clipboard" bind-key -T copy-mode-vi MouseDragEnd1Pane send -X copy-pipe-and-cancel "xclip -in -selection clipboard" # macOS #bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy" #bind-key -T copy-mode-vi MouseDragEnd1Pane send -X copy-pipe-and-cancel "pbcopy" # Make switch session shortcut repeatable bind -r ( switch-client -p bind -r ) switch-client -n # Reload config with prefix r bind r source-file ~/.tmux.conf \; display "Reloaded" # Send prefix to the terminal bind C-a send-prefix # Create panes bindings bind | split-window -h bind \\ split-window -h bind - split-window -v # Vim bindings bind h select-pane -L bind j select-pane -D bind k select-pane -U bind l select-pane -R 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 -r C-h select-window -t :- bind -r C-l select-window -t :+