Add tmux configuration
This commit is contained in:
parent
9d8b8ec1d5
commit
307cf06087
1 changed files with 102 additions and 0 deletions
102
.tmux.conf
Normal file
102
.tmux.conf
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
# Status Bar Appearance customization
|
||||||
|
#set -g status-bg black
|
||||||
|
#set -g status-fg white
|
||||||
|
set -g status-bg green
|
||||||
|
set -g window-status-current-bg blue
|
||||||
|
|
||||||
|
# show that activity happens but don't display a huge 'activity happening' notification
|
||||||
|
setw -g monitor-activity on
|
||||||
|
set -g visual-activity off
|
||||||
|
|
||||||
|
# Start counting windows and panes at 1
|
||||||
|
set -g base-index 1
|
||||||
|
setw -g pane-base-index 1
|
||||||
|
|
||||||
|
# Custom modifier key
|
||||||
|
set -g prefix C-Space
|
||||||
|
unbind-key C-b
|
||||||
|
bind-key C-Space send-prefix
|
||||||
|
|
||||||
|
# Terminal improvements
|
||||||
|
set -g terminal-overrides "xterm*:XT:smcup@:rmcup@"
|
||||||
|
set-window-option -g automatic-rename on
|
||||||
|
set -g renumber-windows on
|
||||||
|
set-option -g set-titles on
|
||||||
|
set -g mouse on
|
||||||
|
set -g default-terminal screen-256color
|
||||||
|
set -g status-keys vi
|
||||||
|
set -g history-limit 10000
|
||||||
|
|
||||||
|
# redraw status line every 10s
|
||||||
|
set -g status-interval 10
|
||||||
|
|
||||||
|
# Clear scrollback buffer
|
||||||
|
bind l clear-history
|
||||||
|
|
||||||
|
# Custom key bindings to split the window
|
||||||
|
# split it using modifier key + v or s
|
||||||
|
bind-key v split-window -h
|
||||||
|
bind-key s split-window -v
|
||||||
|
# split it w/o modifier key using - or _
|
||||||
|
bind - split-window -v
|
||||||
|
bind _ split-window -h
|
||||||
|
|
||||||
|
# Reload tmux config
|
||||||
|
bind r source-file ~/.tmux.conf
|
||||||
|
|
||||||
|
# No delay for escape key press
|
||||||
|
set -sg escape-time 0
|
||||||
|
|
||||||
|
# PANE SWITCHING
|
||||||
|
# Bind-key + arrow to switch panes
|
||||||
|
# Switch Panes with Meta (i.e. Alt) HJKL
|
||||||
|
bind-key Left select-pane -L
|
||||||
|
bind-key Right select-pane -R
|
||||||
|
bind-key Up select-pane -U
|
||||||
|
bind-key Down select-pane -D
|
||||||
|
bind -n M-j select-pane -L
|
||||||
|
bind -n M-k select-pane -R
|
||||||
|
bind -n M-h select-pane -U
|
||||||
|
bind -n M-l select-pane -D
|
||||||
|
|
||||||
|
# PANE CREATION
|
||||||
|
# Bind-key + Control arrow to create panes
|
||||||
|
# Create Panes with Control HJKL
|
||||||
|
bind-key C-Down split-window -v
|
||||||
|
bind-key C-Up split-window -v -b
|
||||||
|
bind-key C-Right split-window -h
|
||||||
|
bind-key C-Left split-window -h -b
|
||||||
|
bind -n C-l split-window -v
|
||||||
|
bind -n C-h split-window -v -b
|
||||||
|
bind -n C-k split-window -h
|
||||||
|
bind -n C-j split-window -h -b
|
||||||
|
|
||||||
|
# PANE SIZING
|
||||||
|
# Resize Panes with Meta Shift HJKL
|
||||||
|
bind -n M-J resize-pane -L 2
|
||||||
|
bind -n M-K resize-pane -R 2
|
||||||
|
bind -n M-L resize-pane -D 2
|
||||||
|
bind -n M-H resize-pane -U 2
|
||||||
|
|
||||||
|
# WINDOW SWITCHING
|
||||||
|
# Easier window navigation
|
||||||
|
bind -n C-Tab next-window
|
||||||
|
bind -n C-S-Tab previous-window
|
||||||
|
#bind -n C-S-Left previous-window
|
||||||
|
#bind -n C-S-Right next-window
|
||||||
|
|
||||||
|
# WINDOW ORGANIZATION
|
||||||
|
# Ctrl + Alt + Left/Right to move windows
|
||||||
|
bind-key -n C-M-Left swap-window -t -1
|
||||||
|
bind-key -n C-M-Right swap-window -t +1
|
||||||
|
|
||||||
|
# Copy to cygwin clipboard
|
||||||
|
bind -n C-t run "tmux save-buffer - > /dev/clipboard"
|
||||||
|
|
||||||
|
# PANE & WINDOW DESTRUCTION
|
||||||
|
# Kill tabs quicker
|
||||||
|
bind-key x kill-pane
|
||||||
|
bind-key C-x kill-window
|
||||||
|
|
||||||
|
# Plugins
|
||||||
|
#run-shell ~/.tmux-plugins/resurrect/resurrect.tmux
|
Loading…
Reference in a new issue