-
Notifications
You must be signed in to change notification settings - Fork 0
/
tmux.conf
108 lines (82 loc) · 3.92 KB
/
tmux.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#######################
## General Settings
#######################
## disable auto window rename
set-window-option -g allow-rename off
## Enable mouse control (clickable windows, panes, resizable panes)
set-option -g -q mouse on
#'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 mouse-select-pane on;set-option mouse-select-window on'
## start window count at 1
setw -g base-index 1
setw -g pane-base-index 1
## No delay for escape key press
set -sg escape-time 0
#######################
## Interactive Bindings
#######################
## C-a as prefix key (Bind-key) for local tmux
set-option -g prefix C-a
## set C-b for remote tmux
bind-key -n C-b send-prefix
## Bind r to reload config
bind r source-file ~/.tmux.conf \; display-message " Config reloaded..."
## Shift+Direction to select next/previous window
bind-key -n S-Left select-window -t -1
bind-key -n S-Right select-window -t +1
## CTRL+Shift+Direction to swap windows
bind-key -n C-S-Left swap-window -t -1
bind-key -n C-S-Right swap-window -t +1
## Alt+Direction to switch pane
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
## Alt+Shift+Direction to swap pane
bind -n M-S-Left swap-pane -U
bind -n M-S-Right swap-pane -D
bind -n M-S-Up swap-pane -U
bind -n M-S-Down swap-pane -D
## Alt+m/M to turn on/off mouse support with version legacy support for <2.1
bind -n M-m set-option -g -q mouse on \; display-message " Mouse ON"
# 'bind -n M-m 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 mouse-select-pane on \; set-option mouse-select-window on \; display " Mouse: ON <2.1"'
bind -n M-M set-option -g -q mouse off \; display-message " Mouse OFF"
# 'bin -n M-M set -g mode-mouse off \; set -g mouse-resize-pane off \; set -g mouse-select-pane off \; set -g mouse-select-window off \; set-option mouse-select-pane off \; set-option mouse-select-window off \; display " Mouse: OFF <2.1"'
## new windows and panes open in same path http://unix.stackexchange.com/questions/12032/create-new-window-with-current-directory-in-tmux
bind c new-window -c "#{pane_current_path}"
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
#######################
## Design Settings
#######################
## set terminal
set -g default-terminal "screen-256color"
set -ga terminal-overrides ",xterm-256color:Tc"
## started from http://www.hamvocke.com/blog/a-guide-to-customizing-your-tmux-conf/
## modes
setw -g clock-mode-colour '#99ff99'
setw -g mode-style bg='#ff6600',fg='#ffffff',bold
## panes
set -g pane-border-style bg='#424242',fg='#222222'
set -g pane-active-border-style bg='#424242',fg='#99ff99'
## statusbar
set -g status-position bottom
set -g status-bg '#212121'
set -g status-fg '#ffffff'
set -g status-style dim
set -g status-left '#{?client_prefix,#[reverse] #(tmux show-option -gqv "prefix") #[noreverse], #[bold]#(tmux show-option -gqv "prefix") }' # http://stackoverflow.com/questions/12003731/give-a-hint-when-press-prefix-key-in-tmux
set -g status-right '#[fg=#99ff99,bg=#222222,bold]#H:#(whoami) #[fg=#222222,bg=#999999,nobold] #(cut -d " " -f 1-3 /proc/loadavg) #[fg=#222222,bg=#999999,bold]%d/%m/%Y %H:%M '
set -g status-right-length 60
set -g status-left-length 50
setw -g window-status-current-format ' #I#[fg=#999999]:#[fg=#ffffff]#W#[fg=#99ff99]#F '
setw -g window-status-current-style bg='#444444',fg='#99ff99',bold
setw -g window-status-format ' #I#[fg=#666666]:#[fg=#999999]#W#[fg=#999999]#F '
setw -g window-status-style bg='#222222',fg='#ffccff',none
setw -g window-status-bell-style bg=colour1,fg=colour255,bold
## messages
set -g message-style bg='#222222',fg='#99ff99',bold
#######################
## Plugins
#######################
#################
## tmux resurrect
run-shell ~/.tmux/tmux-resurrect/resurrect.tmux