Last active
May 18, 2026 17:42
-
-
Save cmbaughman/3a599e1bcb29be16a7dd7517104e076f to your computer and use it in GitHub Desktop.
Tmux Config
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
| # Cool tmux settings | |
| # Unbind default Ctrl-b and set prefix to Ctrl-a for easier use | |
| unbind C-b | |
| set -g prefix C-a | |
| bind C-a send-prefix | |
| # Allow mouse usage for resizing and selecting panes | |
| set -g mouse on | |
| # Start window numbers at 1 | |
| set -g base-index 1 | |
| setw -g pane-base-index 1 | |
| # Make history higher | |
| set -g history-limit 10000 | |
| # Refresh status bar faster | |
| set -g status-interval 1 | |
| # How long to wait for second key in chord | |
| set -sg escape-time 0 | |
| # Navigation # | |
| # Split panes vertically/horizontally with -v and -h | |
| # Create new window | |
| bind c new-window -c "#{pane_current_path}" | |
| # Kill current window | |
| bind & kill-window | |
| # Kill current pane | |
| bind x kill-pane | |
| # Navigation: Alt + h/j/k/l to move between panes | |
| bind h select-pane -L | |
| bind j select-pane -D | |
| bind k select-pane -U | |
| bind l select-pane -R | |
| # Resize panes: Alt + Shift + h/j/k/l | |
| bind H resize-pane -L 5 | |
| bind J resize-pane -D 5 | |
| bind K resize-pane -U 5 | |
| bind L resize-pane -R 5 | |
| # Toggle between last two windows | |
| bind ^ switch-client -l | |
| # Status bar # | |
| # Style | |
| set -g status-style bg=colour236,fg=white | |
| set -g status-left-style fg=black,bg=colour117 | |
| set -g status-right-style fg=black,bg=colour117 | |
| # Left side: Session and host | |
| set -g status-left "#[bg=colour117,fg=black] #S #[default]" | |
| # Right side: Time, Date, and Battery | |
| set -g status-right " #H | %a %b %d | %H:%M " | |
| # Center: Current window list | |
| setw -g window-status-format "#[fg=colour240,bg=colour236] #I:#W #[default]" | |
| setw -g window-status-current-format "#[bg=colour117,fg=black] #I:#W #[default]" | |
| setw -g window-status-separator "" | |
| # Vi Keys for copy/paste | |
| setw -g mode-keys vi | |
| bind-key -T copy-mode-vi v send-keys -X begin-selection | |
| bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel | |
| bind-key -T copy-mode-vi p send-keys -X paste-buffer | |
| # Plugins # | |
| # To use plugins, install TPM: git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm | |
| # Then add plugin lines here and press 'Prefix' + 'I' to install. | |
| # Peep the whole list here: https://github.com/tmux-plugins/list | |
| # | |
| # Example: | |
| # List of plugins | |
| #set -g @plugin 'tmux-plugins/tpm' | |
| #set -g @plugin 'tmux-plugins/tmux-sensible' | |
| # Other examples: | |
| # set -g @plugin 'github_username/plugin_name' | |
| # set -g @plugin 'github_username/plugin_name#branch' | |
| # set -g @plugin 'git@github.com:user/plugin' | |
| # set -g @plugin 'git@bitbucket.com:user/plugin' | |
| # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) | |
| #run '~/.tmux/plugins/tpm/tpm' | |
| # NOTE: After saving and adding plugins, if tmux is already running | |
| # run this to reload: tmux source ~/.tmux.conf |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment