# Required for yazi set -g allow-passthrough on set -ga update-environment TERM set -ga update-environment TERM_PROGRAM set -g default-terminal "tmux-256color" set -ag terminal-overrides ",*:Tc" # set-option -g default-shell /usr/bin/fish # set -g default-terminal "screen-256color" # # set-window-option -g mode-keys vi # set-window-option -g automatic-rename on set-window-option -g mode-keys vi # Blank space between status and bottom of window set -Fg 'status-format[1]' '#{status-format[0]}' set -g 'status-format[0]' '#[bg=black] ' set -g status 2 # Smart pane switching with awareness of Vim splits. # See: https://github.com/christoomey/vim-tmux-navigator # Adapted to avoid fzf conflicts is_vim="ps -o state= -o comm= -t '#{pane_tty}' \ | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'" multiple_panes="[ $(tmux list-panes | wc -l) -gt 1 ]" bind-key -n 'C-h' if-shell "$is_vim && $multiple_panes" 'send-keys C-h' 'select-pane -L' bind-key -n 'C-j' if-shell "$is_vim && $multiple_panes" 'send-keys C-j' 'select-pane -D' bind-key -n 'C-k' if-shell "$is_vim && $multiple_panes" 'send-keys C-k' 'select-pane -U' bind-key -n 'C-l' if-shell "$is_vim && $multiple_panes" 'send-keys C-l' 'select-pane -R' # bind-key -n C-\ if-shell "$is_vim" "send-keys C-\\" "select-pane -l" bind a resize-pane -Z # Shift arrow to switch windows bind -n C-S-Space previous-window bind -n C-Space next-window # Remove escape delay set -g escape-time 0 # Enable mouse scroll set -g mouse on set-option -g status-right-length 140 # set-option -g status-right "#(curl 'wttr.in/?format=%%c%%t%%20')|#[bg=default] %a %l:%M %p#[default]#(curl 'wttr.in/?format=%%20%%m%%20(%%M)%') |#(sugar --tmux)#[bg=default]" set-option -g status-left-length 140 set-option -g status-left " Session: #[bold,fg=green,bg=black] #S #[fg=black,bg=green] " set-option -g status-justify centre set-option -g window-status-current-format '#[bold,fg=green,bg=black] #{window_name} ' set-option -g window-status-format '#{window_name}'