Tmux config

pull/2/head
Bodaniel Jeanes 2011-11-07 13:29:17 -06:00
parent cb9f2db878
commit baff95c90f
1 changed files with 121 additions and 0 deletions

121
misc/tmux.conf 100644
View File

@ -0,0 +1,121 @@
# Based on https://github.com/lukaszkorecki/DotFiles/blob/master/tmux.conf
setw -g mode-keys vi
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind L last-window
# start indexing windows from 1, just like tabs
set -g base-index 1
set -g default-terminal "screen-256color"
# do not rename windows
setw -g automatic-rename on
# window titles
set -g set-titles on
# display visible indicator of each pane
bind-key w display-panes
# bind P source-file ~/.DotFiles/tmux_scripts/dev-layout
bind R source-file ~/.tmux.conf
# swap panes
bind-key -r J swap-pane -D
bind-key -r K swap-pane -U
# copying and pasting
bind-key [ copy-mode
bind-key ] paste-buffer -s \015
# enable mouse selection in copy mode
setw -g mode-mouse on
# list all paste buffers (default key is '#')
bind-key b list-buffers
# choose buffer to paste interactively (default key was '=')
bind-key p choose-buffer
# delete the most recently copied buffer of text (default key was '-')
bind-key x delete-buffer
# Screen-like key bindings
# new window
bind-key C-c new-window
bind-key c new-window
# quit
bind-key \ confirm-before kill-server
# displays
bind-key * list-clients
# Split windows like vim
# vim's definition of a horizontal/vertical split is reversed from tmux's
#bind-key s split-window -v
#bind-key v split-window -h
# alternatively, use better mnemonics for horizontal/vertical splits
bind-key - split-window -v
bind-key _ split-window -v
bind-key | split-window -h
# resize panes like vim
bind-key -r < resize-pane -L 3
bind-key -r > resize-pane -R 3
bind-key -r + resize-pane -U 1
bind-key -r = resize-pane -D 1
# Statusbar settings
# use vi-style key bindings in the status line
set -g status-keys vi
# amount of time for which status line messages and other indicators
# are displayed. time is in milliseconds.
set -g display-time 2000
# default statusbar colors
set-option -g status-utf8 on
set-option -g status-fg colour15
set-option -g status-bg black
setw -g window-status-fg colour15
setw -g window-status-bg black
setw -g window-status-attr none
setw -g window-status-current-fg black
setw -g window-status-current-bg colour15
setw -g window-status-current-attr bold
setw -g window-status-current-format '(#[fg=red]#I#[default] #W#F)'
setw -g window-status-format '(#[fg=yellow]#I#[default] #W#F)'
# pane dividers colors
setw -g pane-border-fg white
setw -g pane-border-bg black
setw -g pane-active-border-fg black
setw -g pane-active-border-bg black
set-option -g status-left ' ❐ #[fg=red]#S#[default] ▐'
# set-option -g status-right '▐ ♫ #[fg=green]#(~/.DotFiles/bins/current_track )#[default] ▐ ⚡ #[fg=yellow]#(~/.DotFiles/bins/battery )#[default] ▐ ⌚ #[fg=blue]#(date "+%H:%M")#[default] ▐ #[fg=colour200]#(whoami)@#H#[default]'
set-option -g status-right-length 1000
set-option -g status-left-length 60