# tmux config - Catppuccin Macchiato theme # Minimal but powerful setup # ───────────────────────────────────────────────────────────── # General Settings # ───────────────────────────────────────────────────────────── # Change prefix from C-b to C-s unbind C-b set -g prefix C-s bind C-s send-prefix # Enable true color support set -g default-terminal "tmux-256color" set -ga terminal-overrides ",*256col*:Tc" set -ga terminal-overrides ",xterm-256color:Tc" # Enable mouse support set -g mouse on # Start windows and panes at 1, not 0 set -g base-index 1 setw -g pane-base-index 1 # Renumber windows when one is closed set -g renumber-windows on # Increase scrollback buffer set -g history-limit 10000 # Reduce escape time (important for Helix/vim) set -sg escape-time 0 # Enable focus events set -g focus-events on # ───────────────────────────────────────────────────────────── # Key Bindings # ───────────────────────────────────────────────────────────── # Reload config bind r source-file ~/.config/tmux/tmux.conf \; display "Config reloaded!" # Split panes with | and - bind | split-window -h -c "#{pane_current_path}" bind - split-window -v -c "#{pane_current_path}" unbind '"' unbind % # Vim-style pane navigation bind h select-pane -L bind j select-pane -D bind k select-pane -U bind l select-pane -R # Resize panes with H/J/K/L 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 # New window in current path bind c new-window -c "#{pane_current_path}" # Quick window switching (no prefix needed) bind -n C-n next-window bind -n C-p previous-window bind -n M-1 select-window -t 1 bind -n M-2 select-window -t 2 bind -n M-3 select-window -t 3 bind -n M-4 select-window -t 4 bind -n M-5 select-window -t 5 # Close window bind x confirm-before -p "Kill window #W? (y/n)" kill-window # ───────────────────────────────────────────────────────────── # Catppuccin Macchiato Colors # ───────────────────────────────────────────────────────────── # Palette # Base: #24273a # Surface0: #363a4f # Surface1: #494d64 # Text: #cad3f5 # Subtext0: #a5adcb # Mauve: #c6a0f6 # Blue: #8aadf4 # Green: #a6da95 # Yellow: #eed49f # Red: #ed8796 # Status bar set -g status-position bottom set -g status-style "bg=#24273a,fg=#cad3f5" set -g status-left-length 30 set -g status-right-length 50 # Status left: session name set -g status-left "#[bg=#c6a0f6,fg=#24273a,bold] #S #[bg=#24273a] " # Status right: date and time set -g status-right "#[fg=#a5adcb]%Y-%m-%d #[fg=#cad3f5]%H:%M #[bg=#8aadf4,fg=#24273a,bold] #h " # Window status set -g window-status-format "#[fg=#a5adcb] #I:#W " set -g window-status-current-format "#[bg=#363a4f,fg=#8aadf4,bold] #I:#W " set -g window-status-separator "" # Pane borders set -g pane-border-style "fg=#363a4f" set -g pane-active-border-style "fg=#c6a0f6" # Message style set -g message-style "bg=#363a4f,fg=#cad3f5" set -g message-command-style "bg=#363a4f,fg=#cad3f5" # Mode style (copy mode, etc.) setw -g mode-style "bg=#363a4f,fg=#cad3f5" # Clock setw -g clock-mode-colour "#c6a0f6"