Created
October 26, 2016 04:12
-
-
Save amcooper/32310dc41b86628c7da30cde3d689b1a to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 256 colors for vim | |
set -g default-terminal "screen-256color" | |
# Start window numbering at 1 | |
set-option -g base-index 1 | |
set-window-option -g pane-base-index 1 | |
# Cycle panes with C-b C-b | |
unbind ^B | |
bind ^B select-pane -t :.+ | |
# Reload config wtih a key | |
bind-key r source-file ~/.tmux.conf \; display "Config reloaded!" | |
# Mouse works as expected | |
set -g mouse on | |
# Scrolling works as expected | |
set -g terminal-overrides 'xterm*:smcup@:rmcup@' | |
# Use the system clipboard | |
set-option -g default-command "reattach-to-user-namespace -l bash" | |
# Clear the pane and its history | |
bind -n C-k send-keys C-l \; clear-history | |
# 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" | |
bind -n C-\ if-shell "$is_vim" "send-keys C-\\" "select-pane -l" | |
# C-l is taken oer by vim style pane navigation | |
bind C-l send-keys 'C-l' | |
# Use vim keybindings in copy mode | |
setw -g mode-keys vi | |
# Setup 'v' to begin selection as in Vim | |
bind-key -t vi-copy v begin-selection | |
bind-key -t vi-copy y copy-pipe "reattach-to-user-namespace pbcopy" | |
# Update default binding of `Enter` to also use copy-pipe | |
unbind -t vi-copy Enter | |
bind-key -t vi-copy Enter copy-pipe "reattach-to-user-namespace pbcopy" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment