# Bind r to reload the source unbind C-b set-option -g prefix C-a bind-key C-a send-prefix bind r source ~/.tmux.conf # Remove ESC moving panes, etc set -s escape-time 0 # ------ Controls ------ # ---- Pane Controls ---- # Vim binding for pane switching (needs to take multiple inputs tho) bind h select-pane -L bind j select-pane -D bind k select-pane -U bind l select-pane -R # switch panes using CRTL+hjkl bind -n M-h select-pane -L bind -n M-j select-pane -D bind -n M-k select-pane -U bind -n M-l select-pane -R # Resize Panes with CTRL+Shift+HJKL (or just caps) bind -n M-C-h resize-pane -L 2 bind -n M-C-j resize-pane -D 2 bind -n M-C-k resize-pane -U 2 bind -n M-C-l resize-pane -R 2 # Switch Panes bind -r > swap-pane -D # Next pane bind -r < swap-pane -U # Prev Pan bind -n M-> swap-pane -D # Next pane bind -n M-< swap-pane -U # Next pane # Splits bind -n M-/ split-window -h # Split panes horizontal bind -n M-? split-window -v # Split panes vertically # Close bind -n M-q kill-pane # Zoom into the current pane bind-key z resize-pane -Z bind -n C-z resize-pane -Z # ---- Window Controls ---- #unbind n #unbind p bind -r C-h previous-window # select previous window bind -r C-l next-window # select next window bind Tab last-window # move to last active window # ---- Session Controls ---- bind -n C-s new-session # Buffers bind b list-buffers # list paste buffers bind p paste-buffer # paste from the top paste buffer bind P choose-buffer # Popup Session #bind -n M-g display-popup -E "tmux new-session -A -s scratch" # ------ General ------ # Enable mouse control (clickable windows, panes, resizable panes) set -g mouse on # Disable auto renames set-option -g allow-rename off setw -g automatic-rename off # Display set -g base-index 1 # Start window numbering at 1 setw -g pane-base-index 1 # Start pane numbering at 1 set -g renumber-windows on # Renumber windows on close set -g status-keys vi set -g mode-keys vi # ------ Theme ------ # https://gist.github.com/spicycode/1229612 set -g status-bg black set -g status-fg white set-window-option -g window-status-current-style fg=black,bg=white set -g status-interval 60 set -g status-left-length 30 # https://www.hamvocke.com/blog/a-guide-to-customizing-your-tmux-conf/ # loud or quiet? set -g visual-activity off set -g visual-bell off set -g visual-silence off setw -g monitor-activity off set -g bell-action none # statusbar set -g status-position bottom set -g status-justify centre #set -g status-right-length 50 #set -g status-left-length 20