Skip to content

Instantly share code, notes, and snippets.

@azak-azkaran
Created March 3, 2019 10:55
Show Gist options
  • Save azak-azkaran/0f1206101474d130d7ab1f9c44c43b56 to your computer and use it in GitHub Desktop.
Save azak-azkaran/0f1206101474d130d7ab1f9c44c43b56 to your computer and use it in GitHub Desktop.
# 0 is too far from ` ;)
# Start windows and panes at 1, not 0
set -g base-index 1
setw -g pane-base-index 1
# Automatically set window title
set-window-option -g automatic-rename on
set-option -g set-titles on
set-option -g prefix C-a
#set -g default-terminal screen-256color
set -g status-keys vi
set -g history-limit 10000
setw -g mode-keys vi
setw -g monitor-activity on
bind-key V split-window -h
bind-key S split-window -v
bind-key J resize-pane -D 5
bind-key K resize-pane -U 5
bind-key H resize-pane -L 5
bind-key L resize-pane -R 5
bind-key M-j resize-pane -D
bind-key M-k resize-pane -U
bind-key M-h resize-pane -L
bind-key M-l resize-pane -R
# Vim style pane selection
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Use Alt-vim keys without prefix key to switch panes
bind -n M-h select-pane -L
bind -n M-j select-pane -D
bind -n M-k select-pane -U
bind -n M-l select-pane -R
# Use Alt-arrow keys without prefix key to switch panes
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
# Shift arrow to switch windows
#bind -n S-Left previous-window
#bind -n S-Right next-window
#select and copy
unbind [
unbind enter
bind enter copy-mode
unbind P
bind-key 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-and-cancel
# copy to xclip
# bind -T copy-mode-vi y send -X copy-pipe-and-cancel "xclip -selection c"
# bind to sync panes
bind -n C-b setw synchronize-panes
bind-key @ choose-window 'join-pane -h -s "%%"'
# if prefix is 'C-a'
bind C-a send-prefix
bind a last-window
# No delay for escape key press
set -sg escape-time 0
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
# Other examples:
# set -g @plugin 'github_username/plugin_name'
# set -g @plugin '[email protected]/user/plugin'
# set -g @plugin '[email protected]/user/plugin'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tmux-plugins/tmux-pain-control'
set -g @plugin 'jimeh/tmux-themepack'
set -g @plugin 'tmux-plugins/tmux-yank'
# continuum auto reload
set -g @continuum-restore 'on'
# autstart tmux on boot
set -g @continuum-boot 'false'
# set -g @themepack 'powerline/block/blue'
# disable crtl-l
bind C-l send-keys 'C-l'
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'
source "/usr/share/powerline/bindings/tmux/powerline_tmux_2.1_plus.conf"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment