You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

85 lines
2.4 KiB
Plaintext

################################################################################
# Base configuration
################################################################################
# Use Ctrl-a as a prefix instead of Ctrl-b
set -g prefix C-a
unbind C-b
# More responsive with sending commands
set -sg escape-time 1
4 years ago
set-option -g history-limit 10000
# Start counting at 0, easier for keyboard shortcuts
set -g base-index 1
set-window-option -g pane-base-index 1
# Status
set -g status-interval 20
set -g status-justify centre
set -g status-left "#[fg=colour75]#S:#I.#P" #colour75 is an awesome blue
set -g status-right "#[fg=colour75]%F %l:%M%P" #colour75 is an awesome blue
setw -g monitor-activity on
set -g visual-activity on
set-option -g mouse on
################################################################################
# Colors
################################################################################
set -g default-terminal "screen-256color"
set -g status-fg white
set -g status-bg black
################################################################################
# Custom bindings
################################################################################
# Have buffers be more like vim buffers
setw -g mode-keys vi
unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
bind-key -T copy-mode-vi 'v' send -X begin-selection
bind-key -T copy-mode-vi 'y' send -X copy-selection
# Linux
4 years ago
#bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -in -selection clipboard"
#bind-key -T copy-mode-vi MouseDragEnd1Pane send -X copy-pipe-and-cancel "xclip -in -selection clipboard"
# macOS
4 years ago
bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi MouseDragEnd1Pane send -X copy-pipe-and-cancel "pbcopy"
# Make switch session shortcut repeatable
bind -r ( switch-client -p
bind -r ) switch-client -n
# Reload config with prefix r
bind r source-file ~/.tmux.conf \; display "Reloaded"
# Send prefix to the terminal
bind C-a send-prefix
# Create panes bindings
bind | split-window -h
bind \\ split-window -h
bind - split-window -v
# Vim bindings
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
bind -r C-h select-window -t :-
bind -r C-l select-window -t :+