Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: master
Fetching contributors…

Cannot retrieve contributors at this time

183 lines (157 sloc) 6.535 kB
set -g default-terminal "screen-256color"
set -g default-shell /bin/zsh
set -g history-limit 500000
set-option -g default-command "command -v reattach-to-user-namespace >/dev/null 2>&1 && reattach-to-user-namespace -l $SHELL || $SHELL -l"
set -sg escape-time 0
set -g mode-mouse on
set -g mouse-select-pane on
set -g mouse-select-window on
set -g mouse-resize-pane on
set -g mouse-utf8 on
setw -g mode-mouse on
set -g base-index 1
set -g pane-base-index 1
setw -g mode-keys vi
# notifications
setw -g monitor-activity on
setw -g visual-activity on
# auto rename
set -g automatic-rename on
set -g set-titles on
set -g set-titles-string "#S:#I:#P #W"
# default statusbar colors
set -g status-bg colour18 #faded black
set -g status-fg colour8 #grey
set -g status-attr default
# Left side of status bar
set -g status-left-length 32
set -g status-left '#[bg=colour04,fg=colour00] #S:#I #[default]'
# default window title colors
setw -g window-status-fg default
setw -g window-status-bg default
setw -g window-status-attr dim
set -g window-status-activity-attr bold
set-window-option -g window-status-format '#[fg=colour11]#I#[fg=colour11,dim]:#[default]#W#[fg=colour10]#F'
# active window title colors
setw -g window-status-current-fg colour01 #yellow
setw -g window-status-current-bg default
setw -g window-status-current-attr bright
set-window-option -g window-status-current-format '#[fg=colour11,dim]#I#[fg=colour11,dim]:#[fg=colour21]#W#[default]#F'
# pane border
set -g pane-border-fg colour19 #faded black
set -g pane-active-border-fg colour20 #grey
# message text
set -g message-bg colour18 #faded black
set -g message-fg colour16 #orange
set -g message-attr bold
# pane number display
set -g display-panes-active-colour colour04 #blue
# Right side of status bar
set -g status-right-length 150
set -g status-right '#[fg=colour04]#(date)'
set -g status-right '#[fg=colour18][#[fg=colour007,dim]#T#[fg=colour18]][#[fg=colour004]%Y-%m-%d #[fg=colour21]%H:%M#[default]#[fg=colour18]]'
# clock
setw -g clock-mode-colour colour10 #green
# Control windows
bind-key C-b last-window
set -g renumber-windows on
# reload config
unbind r
bind r source-file ~/.tmux.conf
# Use arrow keys to resize panes
unbind Down
unbind Right
unbind Left
unbind Up
bind Right resize-pane -R 8
bind Left resize-pane -L 8
bind Up resize-pane -U 4
bind Down resize-pane -D 4
bind-key -n M-b last-window
bind-key -n M-o rotate-window
bind-key -n M-z suspend-client
bind-key -n M-Space next-layout
bind-key -n M-! break-pane
#bind-key -n M-" split-window
#bind-key -n M-# list-buffers
#bind-key -n M-$ command-prompt -I #S "rename-session '%%'"
bind-key -n M-% split-window -h
# 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"
# Set key bindings
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# 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"
bind-key 'y' run-shell "tmux save-buffer - | reattach-to-user-namespace pbcopy"\; display-message "copied"
bind-key -n M-& confirm-before -p "kill-window #W? (y/n)" kill-window
#bind-key -n M-' command-prompt -p index "select-window -t ':%%'"
bind-key -n M-( switch-client -p
bind-key -n M-) switch-client -n
#bind-key -n M-+ new-window -d -n tmux-zoom "clear && echo TMUX ZOOM && read" ; swap-pane -s tmux-zoom.0 ; select-window -t tmux-zoom
#bind-key -n M-, command-prompt -I #W "rename-window '%%'"
#bind-key -n M-- last-window ; swap-pane -s tmux-zoom.0 ; kill-window -t tmux-zoom
bind-key -n M-. command-prompt "move-window -t '%%'"
bind-key -n M-0 select-window -t :0
bind-key -n M-1 select-window -t :1
bind-key -n M-2 select-window -t :2
bind-key -n M-3 select-window -t :3
bind-key -n M-4 select-window -t :4
bind-key -n M-5 select-window -t :5
bind-key -n M-6 select-window -t :6
bind-key -n M-7 select-window -t :7
bind-key -n M-8 select-window -t :8
bind-key -n M-9 select-window -t :9
bind-key -n M-: command-prompt
#bind-key -n M-; last-pane
bind-key -n M-= choose-buffer
bind-key -n M-? list-keys
bind-key -n M-D choose-client
bind-key -n M-L switch-client -l
#bind-key -r M-U select-layout -U
bind-key -n M-[ copy-mode
bind-key -n M-] paste-buffer
bind-key -n M-c new-window
#bind-key -n M-d detach-client
bind-key -n M-f command-prompt "find-window '%%'"
bind-key -n M-h select-pane -L
bind-key -n M-i display-message
bind-key -n M-j select-pane -D
bind-key -n M-k select-pane -U
bind-key -n M-l select-pane -R
bind-key -n M-n next-window
bind-key -n M-o select-pane -t :.+
bind-key -n M-p previous-window
bind-key -n M-q display-panes
bind-key -n M-r source-file /Users/p/.tmux.conf
bind-key -n M-s choose-tree
bind-key -n M-t clock-mode
#bind-key -r M-u select-layout -u
bind-key -n M-w choose-window
bind-key -n M-x confirm-before -p "kill-pane #P? (y/n)" kill-pane
bind-key -n M-{ swap-pane -U
bind-key -n M-} swap-pane -D
bind-key -n M-~ show-messages
bind-key -n M-Up resize-pane -U 4
bind-key -n M-Down resize-pane -D 4
bind-key -n M-Left resize-pane -L 4
bind-key -n M-Right resize-pane -R 4
#bind-key M-1 select-layout even-horizontal
#bind-key M-2 select-layout even-vertical
#bind-key M-3 select-layout main-horizontal
#bind-key M-4 select-layout main-vertical
#bind-key M-5 select-layout tiled
#bind-key -n M-a last-window
#bind-key M-n next-window -a
#bind-key M-o rotate-window -D
#bind-key M-p previous-window -a
# Smart pane switching with awareness of vim splits
bind -n C-h run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-h) || tmux select-pane -L"
bind -n C-j run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-j) || tmux select-pane -D"
bind -n C-k run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-k) || tmux select-pane -U"
bind -n C-l run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-l) || tmux select-pane -R"
bind -n C-\ run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys 'C-\\') || tmux select-pane -l"
Jump to Line
Something went wrong with that request. Please try again.