Files
dots/tmux/.tmux.conf
2018-07-29 13:33:07 -05:00

102 lines
3.2 KiB
Bash

set -g default-terminal screen-256color
#remove escape delay
set -s escape-time 0
#change C-b to Ca
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# split panes using | and -
bind | split-window -h
bind - split-window -v
unbind '"'
unbind %
# stop tmux from renaming the window every time you run a command
set-option -g allow-rename off
set-option -g pane-active-border-fg blue
# select panes with vim keys
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# change base from 0 to 1 for reachability
set -g base-index 1
# set vi modes
set -g status-keys vi
set -g mode-keys vi
# enable mouse control (click wind, panes, resizable panes) - as of tmux 2.1
# copy/paste: shift+left click to highlight, then shift+middle to past
#if-shell '[ $(echo "$(tmux -V | cut -d" " -f2) >= 2.1" | bc) -eq 1 ]' \
# 'set -g mouse on' \
# 'set -g mode-mouse on; set -g mouse-resize-pane on; set -g mouse-select-pane on; set -g mouse-select-window on'
set -g mouse on
#'set -g mouse on; set -g mouse-utf8 on' \
bind-key Tab last-window
bind-key BTab previous-window
# prefix-r to reload tmux config
bind-key r source-file ~/.tmux.conf \; display-message "~/.tmux.conf reloaded"
# Basic status bar colors
set-option -g status-bg default
set-option -g status-fg white
# Left side of status bar
set-option -g status-left-length 40
set-option -g status-left "#[fg=colour18,bg=colour12] #S #[fg=default,bg=default] "
# Window status
set-option -g window-status-format "#[fg=colour18,bg=brightblack] #I #[fg=white,bg=black] #W "
set-option -g window-status-current-format "#[fg=colour18,bg=colour7] #I #[fg=colour18,bg=colour4] #W "
set-option -g window-status-separator " "
set-option -g status-justify left
# Right side of status bar
set-option -g status-right-length 40
set-option -g status-right " #[fg=brightwhite,bg=black] %a, %d %b %H:%M #[fg=colour18,bg=colour4] #(whoami)@#h "
# Pane border
set-option -g pane-border-bg default
set-option -g pane-border-fg brightblack
set-option -g pane-active-border-bg default
set-option -g pane-active-border-fg white
# Pane number indicator
set-option -g display-panes-colour brightblack
set-option -g display-panes-active-colour brightwhite
# Clock mode
set-option -g clock-mode-colour white
set-option -g clock-mode-style 24
# use F12 to move to inner/outer tmux sessions when nested
# https://medium.freecodecamp.org/tmux-in-practice-local-and-nested-remote-tmux-sessions-4f7ba5db8795
bind -T root F12 \
set prefix None \;\
set key-table off \;\
set window-status-format "#[fg=colour18,bg=brightblack] #I #[fg=white,bg=black] #W " \;\
set window-status-current-format "#[fg=colour18,bg=brightblac] #I #[fg=white,bg=blac] #W " \;\
set status-bg black \;\
set status-left "#[fg=white,bg=blac] #S #[fg=default,bg=default] " \;\
set status-right " #[fg=brightwhite,bg=black] %a, %d %b %H:%M #[fg=white,bg=blac] #(whoami)@#h " \;\
if -F '#{pane_in_mode}' 'send-keys -X cancel' \;\
#display-message "ENTER inner tmux ..."
bind -T off F12 \
set -u prefix \;\
set -u key-table \;\
set -u window-status-format \;\
set -u window-status-current-format \;\
set -u status-left \;\
set -u status-right \;\
set -u status-bg \;\
#display-message "EXIT inner tmux ..."