forked from ryanb/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtmux.conf
139 lines (107 loc) · 3.28 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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
###########################################
# Configuration
###########################################
# use 256 term for pretty colors
set -g default-terminal "screen-256color"
# increase scroll-back history
set -g history-limit 20000
# Notify of activity in other windows
setw -g monitor-activity on
set -g visual-activity on
set -g display-time 2000
# Mouse support
setw -g mouse on
# Disable automatic window renaming
# setw -g automatic-rename off
# Renumber windows when one is closed
set-option -g renumber-windows on
# start window numbering at 1
set-option -g base-index 1
setw -g pane-base-index 1
###########################################
# Key Bindings
###########################################
# Change the prefix key
set -g prefix C-a
unbind C-b
bind C-a send-prefix
# Change key bindings to Vi
set -g status-keys vi
setw -g mode-keys vi
# Force a reload of the config file.
unbind r
bind r source-file ~/.tmux.conf \; display "Reloaded!"
# Tile all windows
unbind =
bind = select-layout tiled
# vim movement bindings
set-window-option -g mode-keys vi
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Allow windows to be moved left or right
bind-key -n C-S-Left swap-window -t -1
bind-key -n C-S-Right swap-window -t +1
# window splitting
unbind %
bind | split-window -h
unbind '"'
bind - split-window -v
# 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
# toggle synchronize-panes
bind e set -g synchronize-panes
#############################################
# Status Bar
#############################################
# panes
set -g pane-border-fg black
set -g pane-active-border-fg brightred
# status bar desgin
set -g status-bg default
set -g status-fg colour12
# set refresh interval for status bar
set -g status-interval 30
# center the status bar
set -g status-justify left
# messaging
set -g message-fg black
set -g message-bg yellow
set -g message-command-fg blue
set -g message-command-bg black
setw -g mode-bg colour6
setw -g mode-fg colour0
set -g status-position bottom
set -g status-bg colour234
set -g status-fg colour137
set -g status-attr dim
# show session, window, pane in left status bar
set -g status-left-length 40
set -g status-left '#[fg=black]#S#[fg=blue] #I:#P#[default]'
# show hostname, date and time on right status bar
set -g status-right '#[fg=colour233,bg=colour241,bold]#H#[fg=colour233,bg=colour245,bold] %m/%d/%Y %I:%M'
set -g status-right-length 50
# ##############################################
# # Colors
# ##############################################
# color status bar
# set -g status-bg green
# set -g status-fg black
# highlight current window
setw -g window-status-current-fg colour81
setw -g window-status-current-bg colour238
setw -g window-status-current-attr bold
setw -g window-status-current-format ' #I#[fg=colour250]:#[fg=colour255]#W#[fg=colour50]#F '
setw -g window-status-fg colour138
setw -g window-status-bg colour235
setw -g window-status-attr none
setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '
setw -g window-status-bell-attr bold
setw -g window-status-bell-fg colour255
setw -g window-status-bell-bg colour1
# setw -g window-status-current-fg blue
# setw -g window-status-current-bg black