Skip to content

Instantly share code, notes, and snippets.

@ryanbarrett
Last active January 27, 2026 21:59
Show Gist options
  • Select an option

  • Save ryanbarrett/cca780a237c3f5143bff60a7a7d6ba63 to your computer and use it in GitHub Desktop.

Select an option

Save ryanbarrett/cca780a237c3f5143bff60a7a7d6ba63 to your computer and use it in GitHub Desktop.
# ~/.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