65 lines
1.9 KiB
Bash
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
|