Skip to content

Instantly share code, notes, and snippets.

@rashedInt32
Created January 21, 2026 11:39
Show Gist options
  • Select an option

  • Save rashedInt32/543fdc4daabf5d717c64c765de9160ef to your computer and use it in GitHub Desktop.

Select an option

Save rashedInt32/543fdc4daabf5d717c64c765de9160ef to your computer and use it in GitHub Desktop.
tmux config
##### Terminal Capabilities #####
# Use 256-color with fallback-safe truecolor support
set-option -g focus-events on
set -g default-terminal "tmux-256color"
set -as terminal-overrides ",xterm-256color:Tc"
#set-option -g default-command "zsh -c 'source ~/.zshrc; zsh -i'"
# Enable status bar by default
set -g status on
set -g mouse on
set -g status-position bottom
set -g status on
set -g pane-border-status off
set -g window-size latest
setw -g aggressive-resize on
# Transparent status bar styling with Everforest colors
# Match tokyonight-night theme
#set -g status-style bg=#1a1b26,fg=#c0caf5
# Left and right status
set -g status-bg "#011627"
# Status-left with consistent fg/bg
set -g status-left "#[fg=#7aa2f7,bg=#011627] #S #[fg=default,bg=default]"
set -g status-right ""
set -g window-status-format ""
set -g window-status-current-format ""
set -g status-left-length 50
# Window status
setw -g window-status-style bg=#1a1b26,fg=#7aa2f7
setw -g window-status-current-style bg=#1a1b26,fg=#bb9af7
#setw -g window-status-format "#I:#W"
#setw -g window-status-current-format "#I:#W*"
# Separators for a clean look
set -g status-justify left
# Make escape latency faster (great for vim users)
set -s escape-time 0
# Start windows at index 1
set -g base-index 1
##### Prefix Key #####
# Change prefix to Ctrl-a
unbind C-b
set -g prefix C-a
bind C-a send-prefix
bind r source-file ~/.tmux.conf
# spit window keybindings
# split current window horizontally
bind - split-window -v
# split current window vertically
bind _ split-window -h
# pane navigation
bind -r h select-pane -L # move left
bind -r j select-pane -D # move down
bind -r k select-pane -U # move up
bind -r l select-pane -R # move right
bind > swap-pane -D # swap current pane with the next one
bind < swap-pane -U # swap current pane with the previous one
##### Copy Mode (Vi-style) #####
# Enable vi keybindings in copy mode
setw -g mode-keys vi
# Vim-style visual selection (v) and copy (y) to system clipboard (macOS-specific)
bind -T copy-mode-vi v send -X begin-selection
bind -T copy-mode-vi y send -X copy-pipe-and-cancel "pbcopy"
##### Sessionizer #####
# Sessionizer script
bind-key -r s new-window -n sessionizer "/Users/rashed/.config/.local/scripts/tmux-sessionizer"
# Choose session instead of search
bind-key f choose-session
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment