# enable pbcopy and pbpaste
# https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard/blob/master/README.md
set-option -g default-command "reattach-to-user-namespace -l zsh"

# enable pretty colors
set -g default-terminal "screen-256color"

# increase scroll-back history
set -g history-limit 5000

# use vim key bindings
setw -g mode-keys vi

# disable mouse
setw -g mode-mouse off

# decrease command delay (increases vim responsiveness)
set -sg escape-time 1

# increase repeat time for repeatable commands
set -g repeat-time 1000

# start window index at 1
set -g base-index 1

# start pane index at 1
setw -g pane-base-index 1

###########################
#  Key Bindings
###########################

# tmux prefix
set -g prefix C-a
unbind C-b
bind C-a send-prefix

# paste
unbind C-p
bind C-p paste-buffer

# window splitting
unbind %
bind \ split-window -h
unbind '"'
bind - split-window -v

bind C-x kill-window

# resize panes
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

# create 25% lower split
unbind t
bind t split-window -p 25

# quickly switch panes
unbind ^J
bind ^J select-pane -t :.+

# force reload of the config file
unbind r
bind r source-file ~/.tmux.conf \; display "Reloaded!"

setw -g monitor-activity on
set -g visual-activity on

###########################
# Status Bar / Colors
###########################

# enable UTF-8 support in status bar
set -g status-utf8 on

# set refresh interval
set -g status-interval 30

# center the status bar
set -g status-justify left

# highlight window when it has new activity
setw -g monitor-activity on
set -g visual-activity on

# color status bar
set -g status-bg colour235
set -g status-fg white

# show session, window, pane in status bar
set -g status-left-length 40
set -g status-left '#[fg=green]#S#[fg=blue] #I:#P#[default]'

# show hostname, date, and time in status bar
set-option -g status-right '#[fg=green]#H#[default] %m/%d/%y %I:%M'

# highlight current window
set-window-option -g window-status-current-fg black
set-window-option -g window-status-current-bg green

# set color of active pane
set -g pane-border-fg colour235
set -g pane-border-bg black
set -g pane-active-border-fg green
set -g pane-active-border-bg black
