# Remap to . unbind-key C-b set-option -g prefix C-t bind-key C-t send-prefix # Disable escape delay. set -sg escape-time 0 # Reload config. bind -n M-r source-file /etc/tmux.conf # Scroll. bind -n M-p copy-mode -u bind -n M-n send-keys Pagedown # Copy mode. setw -g mode-keys vi bind -n M-v copy-mode bind -n M-P choose-buffer; bind -T copy-mode-vi v send -X begin-selection bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "pbcopy" # Selection style. set -g mode-style "fg=#$bg_3 bg=#$accent bold" # Pane style. set -g pane-border-style "fg=#$bg_1" set -g pane-active-border-style "fg=#$bg_1" # Remap split keys. bind -n M-\\ split-window -h -c "#{pane_current_path}" bind -n M-- split-window -v -c "#{pane_current_path}" bind -n M-= select-layout tiled bind -n M-k resize-pane -U 1 bind -n M-j resize-pane -D 1 bind -n M-h resize-pane -L 1 bind -n M-l resize-pane -R 1 bind -n M-A swap-pane -U bind -n M-D swap-pane -D unbind '"' unbind % # Swith panes with alt + hjkl. bind -n M-a select-pane -L bind -n M-d select-pane -R bind -n M-w select-pane -U bind -n M-s select-pane -D # Close pane. bind -n M-c kill-pane bind -n M-C kill-pane -a # Detach. bind -n M-z detach-client bind -n M-Z detach-client -a # Switch sessions. bind -n M-9 switch-client -p bind -n M-0 switch-client -n bind -n M-g choose-session # Resize to smallest client. set -g window-size smallest # Statusbar. bind-key -n M-F set-option -g status; bind-key -n M-f run-shell 'tmux_script togglestatusbar' set -g status-interval 2 set -g status-position bottom set -g status-justify left set -g status-style "bg=#$bg_2 fg=#$fg_3" set -g status-left "#[bold,bg=#$fg_3,fg=#$bg_3] #H-#S #(tmux_script client_count #S)#[bg=#$bg_2,fg=#$fg_3]" set -g status-left-length 50 set -g status-right-length 50 set -g status-right "#(tmux_script statusbar) %d %a #[fg=#$fg_3]#[bold,bg=#$fg_3,fg=#$bg_3] %H:%M " set-window-option -g window-status-separator "" setw -g window-status-current-style "fg=#$fg bold" setw -g window-status-current-format " #W " setw -g window-status-style "" setw -g window-status-format " #W " set-window-option -g visual-bell off setw -g window-status-bell-style "bold blink" # Create new window. bind -n M-Escape new-window -c "#{pane_current_path}" bind -n M-t new-window -c "#{pane_current_path}" # NOTE: for compatibility reasons. # Close window. bind -n M-x kill-window bind -n M-X kill-window -a # Switch window. bind -n M-e next-window bind -n M-q previous-window # Move window. bind -n M-E swap-window -t +1\; select-window -t +1 bind -n M-Q swap-window -t -1\; select-window -t -1 # Env. set-option -g default-terminal "tmux-256color" set-option -g focus-events on set-option -sa terminal-features "RGB" set-option -g update-environment "SSH_CLIENT SSH_TTY DOCKER_CONFIG DOCKER_HOST DISPLAY XAUTHORITY BASH_PATH"