################################### # # # Custom Binds # # # ################################### # Rebind tmux prefix to to match vim unbind-key C-b set -g prefix Escape bind Escape send-prefix set -s escape-time 0 ################################### # # # Colors # # # ################################### set-option -g status-bg black #base02 set-option -g status-fg yellow #yellow set-option -g status-attr default set-window-option -g window-status-fg brightblue #base0 set-window-option -g window-status-bg default set-window-option -g window-status-current-fg brightred #orange set-window-option -g window-status-current-bg default set-option -g pane-border-fg black #base02 set-option -g pane-active-border-fg brightgreen #base01 set-option -g message-bg black #base02 set-option -g message-fg brightred #orange set-option -g display-panes-active-colour blue #blue set-option -g display-panes-colour brightred #orange set-window-option -g clock-mode-colour green #green set-window-option -g window-status-bell-style fg=black,bg=red #base02, red # Once the prefix is active these binds will matter # and take you to copy mode. bind Space copy-mode bind C-Space copy-mode # Rebind window splitting # j and l split vertically and horizontally, respectively bind j split-window -v bind C-j split-window -v bind l split-window -h bind C-l split-window -h # Smart pane switching with awareness of vim splits # This is the tmux side of the vim-tmux-navigator plugin is_vim='echo "#{pane_current_command}" | grep -iqE "(^|\/)g?(view|n?vim?)(diff)?$"' bind -n C-h if-shell "$is_vim" "send-keys C-h" "select-pane -L" bind -n C-j if-shell "$is_vim" "send-keys C-j" "select-pane -D" bind -n C-k if-shell "$is_vim" "send-keys C-k" "select-pane -U" bind -n C-l if-shell "$is_vim" "send-keys C-l" "select-pane -R" bind -n C-\ if-shell "$is_vim" "send-keys C-\\" "select-pane -l" # Vim keybinds so copy mode behaves more like vim bind-key -t vi-copy 'v' begin-selection bind-key -t vi-copy 'y' copy-selection # Vim keybind so that paste is done more naturally instead of with ] bind p paste-buffer ################################### # # # Custom Settings # # # ################################### # Enable vi-like keybindings set-window-option -g mode-keys vi # Pass-through C- set-window-option -g xterm-keys on