set-environment -g PATH "/usr/local/bin:/bin:/usr/bin" set -g default-terminal "xterm-256color" set -g history-limit 20000 # Remap prefix unbind C-b set-option -g prefix C-a bind-key C-a send-prefix bind-key -n C-b send-keys C-b #bind-key -n C-b send-prefix setw -g mode-keys vi set-option -g status-keys vi bind | split-window -h -c '#{pane_current_path}' bind - split-window -v -c '#{pane_current_path}' # Switch windows bind-key -n M-Left select-window -t -1 bind-key -n M-Right select-window -t +1 unbind '"' unbind '%' #bind-key -n M-left select-pane -L #bind-key -n M-right select-pane -R #bind-key -n M-up select-pane -U #bind-key -n M-down select-pane -D bind-key -n C-x resize-pane -Z bind-key C-x send-keys C-x bind k clear-history\; display "History cleared" bind-key a set-window-option synchronize-panes bind r source-file ~/.tmux.conf\; display "Conf reloaded!" set -g mouse on #bind-key -Tcopy-mode-vi 'v' send -X begin-selection #bind-key -Tcopy-mode-vi 'y' send -X copy-selection #bind -Tcopy-mode-vi y send -X copy-pipe "xclip -i -sel p -f | xclip -i -sel c" \; display-message "copied to system clipboard" # Smart pane switching with awareness of vim splits # See: https://github.com/christoomey/vim-tmux-navigator is_vim='echo "#{pane_current_command}" | grep -iqE "(^|\/)g?(view|n?vim?x?)(diff)?$"' bind -n C-h if-shell "$is_vim" "send-keys C-h" "select-pane -L" bind -n C-j if-shell "$is_vim" "send-keys C-j" "select-pane -D" bind -n C-k if-shell "$is_vim" "send-keys C-k" "select-pane -U" bind -n C-l if-shell "$is_vim" "send-keys C-l" "select-pane -R" # Nano bind-key C-x send-keys C-x bind-key C-o send-keys C-o # Copying - Most of this is done in tmux-yank! # move x clipboard into tmux paste buffer #bind C-p run "tmux set-buffer \"$(xclip -o)\"; tmux paste-buffer" # move tmux copy buffer into x clipboard # Vi copypaste mode set-window-option -g mode-keys vi set-option -s set-clipboard on set -g @yank_with_mouse off set -g @yank_action 'copy-pipe' if '[ `uname` == Darwin ]' \ 'source-file ~/.tmux/.mac_config' source-file ~/.tmux/.tmux_config_powerline set-option -g set-titles on # Escape timeout for nvim set -sg escape-time 10 # List of plugins set -g @plugin 'tmux-plugins/tpm' #set -g @plugin 'tmux-plugins/tmux-sensible' #set -g @plugin 'tmux-plugins/tmux-sidebar' set -g @plugin 'tmux-plugins/tmux-open' set -g @plugin 'tmux-plugins/tmux-yank' set -g @plugin 'jimeh/tmux-themepack' set -g @themepack 'powerline/double/blue' # Other examples: # set -g @plugin 'github_username/plugin_name' # set -g @plugin 'git@github.com/user/plugin' # set -g @plugin 'git@bitbucket.com/user/plugin' # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) run '~/.tmux/plugins/tpm/tpm || true' # 2>&1 >> /tmp/tpm_out'