.dotfiles/.tmux.conf

65 lines
1.9 KiB
Bash

set -g default-terminal "tmux"
set-option -g focus-events on
set-option -sg escape-time 10
set -g destroy-unattached
# should fix cursor shapes in ssh
set -ga terminal-overrides '*:Ss=\E[%p1%d q:Se=\E[ q'
# remap prefix from 'C-b' to 'C-a'
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
bind-key -n C-b set-option -g status #Ctrl+F3 Combo
# split panes using | and -
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
bind c new-window -c "#{pane_current_path}"
unbind '"'
unbind %
# Scroll slower
bind -Tcopy-mode WheelUpPane send -N1 -X scroll-up
bind -Tcopy-mode WheelDownPane send -N1 -X scroll-down
#Use Neovim style navigation
set -g mode-keys vi
# Enable mouse mode (tmux 2.1 and above)
bind-key M \
set-option -g mouse on \;\
display-message 'Mouse: ON'
# Toggle mouse off
bind-key m \
set-option -g mouse off \;\
display-message 'Mouse: OFF'
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Customize status line
# set-option -g status-style bg=default
set-window-option -g status-position top # statusbar position
set -g status-interval 1
set -g window-status-format '#[fg=#777777]#(pwd="#{pane_current_path}"; echo ${pwd####*/})'
set -g window-status-current-format '#[fg=white, bold]#(pwd="#{pane_current_path}"; echo ${pwd####*/})'
set -g status-right-length 120
set -g status-right '#(date +"%H:%M") | #[bold, fg=white]#(whoami)@#(hostname -s) '
set-option -g status-style bg=default
# Add some plugins
set -g @yank_action 'copy-pipe-no-clear'
bind -T copy-mode C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
bind -T copy-mode-vi C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
set -g focus-events on
set -g status-style bg=default
set -g status-left-length 90
set -g status-right-length 90
# set -g status-justify centre