-
-
Save auna93/3bfc4ca841e6f007af7890ae375ec2e3 to your computer and use it in GitHub Desktop.
A vim-friendly 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
# change prefix to Ctrl-a (like in gnu-screen) | |
unbind C-b | |
set-option -g prefix C-a | |
bind-key C-a send-prefix | |
# start with window 1 (instead of 0) | |
set -g base-index 1 | |
# start with pane 1 | |
set -g pane-base-index 1 | |
# screen mode | |
set -g default-terminal "screen-256color" | |
# source config file | |
bind r source-file ~/.tmux.conf | |
# history | |
set -g history-limit 4096 | |
# allow terminal scrolling | |
set-option -g terminal-overrides 'xterm*:smcup@:rmcup@' | |
# use vi mode | |
setw -g mode-keys vi | |
set -g status-keys vi | |
# easy-to-remember split pane commands | |
bind | split-window -h | |
bind - split-window -v | |
unbind '"' | |
unbind % | |
# Enable mouse control | |
set -g mouse on | |
# colon : | |
bind : command-prompt | |
# moving between panes with vim movement keys | |
bind h select-pane -L | |
bind j select-pane -D | |
bind k select-pane -U | |
bind l select-pane -R | |
# resize the pane | |
bind-key -r J resize-pane -D 3 | |
bind-key -r K resize-pane -U 3 | |
bind-key -r H resize-pane -L 3 | |
bind-key -r L resize-pane -R 3 | |
# status line | |
set -g status-justify left | |
set -g status-style bg=default,fg=colour12 | |
set -g status-interval 2 | |
# messaging | |
set -g message-style fg=black,bg=yellow | |
set -g message-command-style fg=blue,bg=black | |
# window mode | |
setw -g mode-style bg=colour6,fg=colour0 | |
# window status | |
setw -g window-status-format "#[fg=magenta]#[bg=black] #I #[bg=cyan]#[fg=colour8] #W " | |
setw -g window-status-current-format "#[bg=brightmagenta]#[fg=colour8] #I #[fg=colour8]#[bg=colour14] #W " | |
setw -g window-status-style fg=black,bg=green,reverse | |
# Info on left (I don't have a session display for now) | |
set -g status-left '' | |
# loud or quiet? | |
set-option -g visual-activity off | |
set-option -g visual-bell off | |
set-option -g visual-silence off | |
set-window-option -g monitor-activity off | |
set-option -g bell-action none | |
# tmux clock | |
set -g clock-mode-colour blue | |
# some key-binding changes | |
bind x kill-pane | |
bind X next-layout | |
bind Z previous-layout | |
# window switching | |
bind -n S-down new-window | |
bind -n S-left prev | |
bind -n S-right next | |
bind -n C-left swap-window -t -1 | |
bind -n C-right swap-window -t +1 | |
# The modes | |
setw -g clock-mode-colour colour135 | |
setw -g mode-style fg=colour196,bg=colour238,bold | |
# The panes | |
set -g pane-border-style fg=colour238,bg=colour235 | |
set -g pane-active-border-style fg=colour51,bg=colour236 | |
# The statusbar | |
set -g status-position bottom | |
set -g status-style bg=colour234,fg=colour137,dim | |
set -g status-left '' | |
set -g status-right '#[fg=colour233,bg=colour241,bold] %d/%m #[fg=colour233,bg=colour245,bold] %H:%M:%S ' | |
set -g status-right-length 50 | |
set -g status-left-length 20 | |
setw -g window-status-current-style fg=colour81,bg=colour238,bold | |
setw -g window-status-style fg=colour138,bg=colour235,none | |
setw -g window-status-bell-style fg=colour255,bg=colour1,bold | |
# The messages | |
set -g message-style fg=colour232,bg=colour166,bold |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment