Last active
January 27, 2026 21:59
-
-
Save ryanbarrett/cca780a237c3f5143bff60a7a7d6ba63 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # ~/.tmux.conf | |
| # git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tp | |
| # | |
| # ============================================================================ | |
| # PREFIX & CORE SETTINGS | |
| # ============================================================================ | |
| #unbind C-b | |
| #set -g prefix C-o | |
| #bind C-o send-prefix | |
| set -g default-terminal "screen-256color" | |
| set -g mouse on | |
| set -g base-index 1 | |
| setw -g pane-base-index 1 | |
| set -g renumber-windows on | |
| set -g history-limit 10000 | |
| # Fix "Size Missing" issue | |
| set -g status-interval 1 | |
| # ============================================================================ | |
| # KEY BINDINGS | |
| # ============================================================================ | |
| # Splits | |
| bind | split-window -h -c "#{pane_current_path}" | |
| bind - split-window -v -c "#{pane_current_path}" | |
| # Pane navigation | |
| bind h select-pane -L | |
| bind j select-pane -D | |
| bind k select-pane -U | |
| bind l select-pane -R | |
| # Quick pane swap | |
| bind o select-pane -t :.+ | |
| # Window management | |
| bind c new-window -c "#{pane_current_path}" | |
| # Reload config | |
| bind r source-file ~/.tmux.conf \; display "Config reloaded" | |
| # Quick layout setup | |
| bind L source-file ~/.tmux/layouts/ai-workspace.conf | |
| # ============================================================================ | |
| # CYBERPUNK-SOLAR COLOR SCHEME | |
| # ============================================================================ | |
| # Base colors | |
| BG_DARK="#0a0e14" | |
| BG_LIGHT="#1a1f29" | |
| FG_BRIGHT="#e6e1cf" | |
| FG_DIM="#95949a" | |
| ACCENT_CYAN="#59c2ff" | |
| ACCENT_MAGENTA="#d2a6ff" | |
| ACCENT_YELLOW="#ffb454" | |
| ACCENT_GREEN="#7fd962" | |
| # ============================================================================ | |
| # STATUS BAR - TOP (Tab list | PWD) | |
| # ============================================================================ | |
| set -g status-position top | |
| set -g status-justify left | |
| set -g status-style "bg=$BG_DARK,fg=$FG_BRIGHT" | |
| # Left: Tab list | |
| set -g status-left-length 100 | |
| set -g status-left "#[bg=$ACCENT_CYAN,fg=$BG_DARK,bold] TABS #[bg=$BG_LIGHT,fg=$FG_BRIGHT] " | |
| # Window list format | |
| setw -g window-status-format "#[bg=$BG_LIGHT,fg=$FG_DIM] #I:#W " | |
| setw -g window-status-current-format "#[bg=$ACCENT_MAGENTA,fg=$BG_DARK,bold] #I:#W " | |
| setw -g window-status-separator "" | |
| # Right: Current pane PWD | |
| set -g status-right-length 100 | |
| set -g status-right "#[bg=$BG_LIGHT,fg=$ACCENT_YELLOW] #{pane_current_path} #[bg=$ACCENT_CYAN,fg=$BG_DARK,bold] PWD " | |
| # ============================================================================ | |
| # STATUS BAR - BOTTOM (Session | Pane titles | Clock | Hostname) | |
| # ============================================================================ | |
| set -g status 2 | |
| set -g status-format[1] "#[align=left,bg=$BG_DARK,fg=$FG_BRIGHT]#[bg=$ACCENT_GREEN,fg=$BG_DARK,bold] #S #[bg=$BG_LIGHT,fg=$FG_BRIGHT] #{pane_title} #[align=right,bg=$BG_LIGHT,fg=$ACCENT_YELLOW] %Y-%m-%d %H:%M #[bg=$ACCENT_MAGENTA,fg=$BG_DARK,bold] #H " | |
| # ============================================================================ | |
| # PANE BORDERS | |
| # ============================================================================ | |
| set -g pane-border-style "fg=$FG_DIM" | |
| set -g pane-active-border-style "fg=$ACCENT_CYAN" | |
| # ============================================================================ | |
| # AUTO-RESTORE SESSION (requires tmux-resurrect + tmux-continuum) | |
| # ============================================================================ | |
| set -g @plugin 'tmux-plugins/tpm' | |
| set -g @plugin 'tmux-plugins/tmux-resurrect' | |
| set -g @plugin 'tmux-plugins/tmux-continuum' | |
| set -g @continuum-restore 'on' | |
| set -g @continuum-save-interval '5' | |
| set -g @resurrect-capture-pane-contents 'on' | |
| # Use a hook that triggers once the session is attached and dimensions are known | |
| set-hook -g after-new-session "split-window -h -l 50%; split-window -v -l 50%; select-pane -t 0" | |
| # ============================================================================ | |
| # TPM INITIALIZATION (must be at bottom) | |
| # ============================================================================ | |
| run '~/.tmux/plugins/tpm/tpm' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment