Last active
April 28, 2025 22:04
-
-
Save bcatubig/e9024c5211a1738dc81d0467dce34066 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
# Fix Colors | |
set -g default-terminal "screen-256color" | |
set -as terminal-features ",xterm-256color:RGB" | |
# easy reload config | |
bind-key r source-file ~/.tmux.conf \; display-message "~/.tmux.conf reloaded." | |
# set window split | |
bind-key v split-window -h | |
bind-key b split-window | |
# C-b is not acceptable -- Vim uses it | |
unbind-key C-b | |
set-option -g prefix C-a | |
bind-key C-a last-window | |
bind C new-window | |
bind c new-window -c "#{pane_current_path}" | |
bind '"' split-window -c "#{pane_current_path}" | |
bind % split-window -h -c "#{pane_current_path}" | |
# Rather than constraining window size to the maximum size of any client | |
# connected to the *session*, constrain window size to the maximum size of any | |
# client connected to *that window*. Much more reasonable. | |
setw -g aggressive-resize on | |
# Allows us to use C-a a <command> to send commands to a TMUX session inside | |
# another TMUX session | |
bind-key a send-prefix | |
# Activity monitoring | |
setw -g monitor-activity off | |
set -g visual-activity off | |
setw -g mode-keys vi | |
bind-key -T copy-mode-vi v send -X begin-selection | |
bind-key -T copy-mode-vi V send -X select-line | |
bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel 'pbcopy' | |
# hjkl pane traversal | |
bind h select-pane -L | |
bind j select-pane -D | |
bind k select-pane -U | |
bind l select-pane -R | |
# Scrolling | |
setw -g mouse on | |
# Start windows and panes at 1, not 0 | |
set -g base-index 1 | |
setw -g pane-base-index 1 | |
# Renumber windows | |
set-option -g renumber-windows on | |
# Statusline Colors | |
set -g status-style bg=terminal,fg=terminal | |
# Statusline location | |
set -g status-position bottom | |
# Current window name bold | |
set -g window-status-current-style fg=terminal,bold | |
# Time settings | |
set -g status-right "%I:%M %p, %d-%b-%y, %a" | |
# Increase left length | |
set -g status-left-length 20 | |
# 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 '[email protected]:user/plugin' | |
# set -g @plugin '[email protected]:user/plugin' | |
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) | |
run '~/.tmux/plugins/tpm/tpm' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment