Created
February 18, 2016 16:33
-
-
Save tonatiuh/2cbf742f0205e45b5d40 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
unbind C-b | |
set -g prefix C-Space | |
bind Space send-prefix | |
set -g default-terminal "screen-256color" | |
# invoke reattach-to-user-namespace every time a new window/pane is opened | |
set-option -g default-command "reattach-to-user-namespace -l fish" | |
# 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" | |
# move to panes simulating vim keys | |
bind h select-pane -L | |
bind j select-pane -D | |
bind k select-pane -U | |
bind l select-pane -R | |
bind & kill-window | |
bind-key a send-key C-a # `Ctrl-a a` sends `Ctrl-a` | |
bind-key n command-prompt 'rename-window %%' | |
bind-key N command-prompt 'rename-session %%' | |
bind-key -r < swap-window -t :- | |
bind-key -r > swap-window -t :+ | |
set-window-option -g pane-base-index 1 | |
set -g base-index 1 # start window index of 1 | |
set -sg escape-time 1 # fixes some delay issues in vim | |
# new shells with current directory | |
bind '"' split-window -c "#{pane_current_path}" | |
bind % split-window -h -c "#{pane_current_path}" | |
bind c new-window -c "#{pane_current_path}" -n "shell" | |
# Define my custom menu bar | |
# status bar colors | |
# alignment settings | |
set-option -g status-justify centre | |
# status left options | |
set-option -g status-left-length 20 | |
# window list options | |
setw -g automatic-rename on | |
set-window-option -g window-status-format '#[dim]#I:#[default]#W#[fg=grey,dim]' | |
set-window-option -g window-status-current-format '#[fg=blue,bold]#I#[fg=blue]:#[fg=blue]#W#[fg=dim]' | |
# status left options | |
set -g status-left ' #S ' | |
# status left options | |
set -g status-right ' %a ' | |
set -g status-position top | |
bind-key b set-option status | |
# session name to iterm2 tab name | |
set-option -g set-titles on | |
set-option -g set-titles-string "#{session_name}" | |
# bind a reload key | |
bind R source-file ~/.tmux.conf \; display-message " Config reloaded..". | |
set -g default-shell /usr/local/bin/fish | |
bind -r a select-pane -t .+1 \; resize-pane -Z | |
# set-option -g status on | |
set-option -g status-utf8 on | |
set-option -g status-justify "centre" | |
set-option -g status-left-length 40 | |
set-option -g status-right-length 40 | |
set -g status-bg colour255 | |
set -g status-fg black | |
# set-window-option -g window-status-current-format " #I #W " | |
# mouse support | |
# set -g mode-mouse on | |
# set -g mouse-resize-pane on | |
# set -g mouse-select-pane on | |
# set -g mouse-select-window on | |
set-option -g history-limit 4000 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment