Files
Panama/config/dot/tmux/tmux.conf
2025-11-13 16:59:59 -06:00

84 lines
2.6 KiB
Bash

# True color support (crucial for kitty + neovim)
set -g default-terminal "tmux-256color"
set -ag terminal-overrides ",xterm-256color:RGB"
# Super important for osc52, images, hyperlinks, etc.
set -g allow-passthrough on
# Enable mouse support
set -g mouse on
# Renumber windows when one is closed
set -g renumber-windows on
# Set prefix to C-Space
unbind C-b
set -g prefix C-Space
bind C-Space send-prefix
# Set status bar
#set -g status-bg pink
# Tokyo Night Moon color palette
set -g mode-style "fg=#82aaff,bg=#3b4261"
set -g message-style "fg=#82aaff,bg=#3b4261"
set -g message-command-style "fg=#82aaff,bg=#3b4261"
set -g pane-border-style "fg=#82aaff"
set -g pane-active-border-style "fg=#b172b0"
set -g status-style "fg=#b172b0,bg=#3b4261"
set -g status-bg "#222436"
set -g status-left "#[fg=#1b1d2b,bg=#b172b0,bold] #S #[fg=#1b1d2b,bg=#b172b0,nobold,nounderscore,noitalics]"
set -g status-right "#[fg=#1b1d2b,bg=#82aaff,nobold,nounderscore,noitalics]#[fg=#b172b0,bg=#3b4261] #{prefix_highlight} #[fg=#3b4261,bg=#3b4261]#[fg=#b172b0,bg=#3b4261] %Y/%m/%d %I:%M %p #[fg=#82aaff,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#1b1d2b,bg=#b172b0,bold,italics] #h "
setw -g window-status-format "#[fg=#1b1d2b,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#82aaff,bg=#3b4261] #I #W #F #[fg=#1b1d2b,bg=#3b4261,nobold,nounderscore,noitalics]"
setw -g window-status-current-format "#[fg=#1b1d2b,bg=#3b4261,nobold,nounderscore,noitalics]#[fg=#b172b0,bg=#3b4261,bold] #I #W #F #[fg=#3b4261,bg=#3b4261,nobold,nounderscore,noitalics]"
setw -g window-status-separator ""
# Increase scrollback buffer
set -g history-limit 50000
# Display tmux messages for 4 seconds
set -g display-time 4000
# Refresh status bar every 5 seconds
set -g status-interval 5
# Focus events for neovim autoread
set -g focus-events on
# Aggressive resize (useful for multi-monitor)
setw -g aggressive-resize on
# Reduce escape time (better for neovim)
set -sg escape-time 10
# Split panes using | and -
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
unbind '"'
unbind %
# Reload config
bind r source-file ~/.config/tmux/tmux.conf \; display "Config reloaded!"
# Switch panes with vim keys
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Resize panes with vim keys
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
# Vi mode for copy mode
setw -g mode-keys vi
bind -T copy-mode-vi v send-keys -X begin-selection
bind -T copy-mode-vi y send-keys -X copy-selection-and-cancel