set -g default-terminal "xterm-256color" set -ag terminal-overrides ",xterm-256color:RGB" set-option -g set-titles on set-option -g set-titles-string '#S: #W' set-window-option -g mode-keys vi # set split keys, splits open in same dir as current bind-key "'" split-window -v -c '#{?pane_path,#{pane_path},#{pane_current_path}}' bind-key ";" split-window -h -c '#{?pane_path,#{pane_path},#{pane_current_path}}' # switch panes w/ vimkeys bind-key h select-pane -L bind-key j select-pane -D bind-key k select-pane -U bind-key l select-pane -R # resize panes w/ vimkeys bind-key -T copy-mode-vi C-h resize-pane -L 1 bind-key -T copy-mode-vi C-j resize-pane -D 1 bind-key -T copy-mode-vi C-k resize-pane -U 1 bind-key -T copy-mode-vi C-l resize-pane -R 1 # fast window switching bind w display-popup -E "tmux list-windows | cut -d ' ' -f 1-2 | grep -v \"^$(tmux display-message -p '#S')\$\" | fzf --reverse | cut -d \":\" -f 1 | xargs tmux select-window -t" # use C-a prefix set-option -g prefix C-a unbind-key C-a bind-key C-a send-prefix # copy-mode bind a copy-mode # kill window bind X kill-window # 1 > 0 set -g base-index 1 set -g pane-base-index 1 # some good settings set-option -g renumber-windows on # reindex when closing window set -s escape-time 0 # fix vi mode delay set -g history-limit 50000 # increase scrollback buffer size set -g display-time 4000 # tmux messages are displayed for 4 seconds setw -g aggressive-resize on # super useful when using "grouped sessions" and multi-monitor setup set -g focus-events on # neovim likes this set -g mouse on # enable mouse # tmux fingers unbind-key f set -g @fingers-key f set -g @fingers-shift-action ':open:' run-shell ~/.config/tmux/tmux-fingers/tmux-fingers.tmux # tmux theme set-option -gq "status" "on" set-option -gq "status-justify" "left" set-option -gq "status-left-length" "100" set-option -gq "status-right-length" "100" set-option -gq "status-right-attr" "none" set-option -gq "message-fg" "#aab2bf" set-option -gq "message-bg" "#282c34" set-option -gq "message-command-fg" "#aab2bf" set-option -gq "message-command-bg" "#282c34" set-option -gq "status-attr" "none" set-option -gq "status-left-attr" "none" set-window-option -gq "window-status-fg" "#282c34" set-window-option -gq "window-status-bg" "#282c34" set-window-option -gq "window-status-attr" "none" set-window-option -gq "window-status-activity-bg" "#282c34" set-window-option -gq "window-status-activity-fg" "#282c34" set-window-option -gq "window-status-activity-attr" "none" set-window-option -gq "window-status-separator" "" set-option -gq "window-style" "fg=#aab2bf" set-option -gq "window-active-style" "fg=#aab2bf" set-option -gq "pane-border-style" "fg=#282c34" set-option -gq "pane-active-border-style" "bg=default,fg=#98c379" set-option -gq "display-panes-active-colour" "#e5c07b" set-option -gq "display-panes-colour" "#61afef" set-option -gq "status-bg" "#282c34" set-option -gq "status-fg" "#aab2bf" set-option -gq "status-right" "" set-option -gq "status-left" "#[fg=#282c34,bg=#98c379,bold] #S #{prefix_highlight}#[fg=#98c379,bg=#282c34,nobold,nounderscore,noitalics]" set-option -gq "window-status-format" "#[fg=#282c34,bg=#282c34,nobold,nounderscore,noitalics]#[fg=#aab2bf,bg=#282c34] #I  #W #[fg=#282c34,bg=#282c34,nobold,nounderscore,noitalics]" set-option -gq "window-status-current-format" "#[fg=#282c34,bg=#3e4452,nobold,nounderscore,noitalics]#[fg=#aab2bf,bg=#3e4452,nobold] #I  #W #[fg=#3e4452,bg=#282c34,nobold,nounderscore,noitalics]" set-window-option -g mode-style "bg=#98c379,fg=#282c34"