-
Notifications
You must be signed in to change notification settings - Fork 2
/
tmux.conf
156 lines (128 loc) · 4.07 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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
# Defaults
set -g history-limit 1000000
set -g base-index 1
# Weird ESC key lag causes issues in vi
# https://superuser.com/questions/252214/slight-delay-when-switching-modes-in-vim-using-tmux-or-screen/1809494#1809494
set -s escape-time 5
# Conitionals
if-shell 'test -x /opt/local/bin/reattach-to-user-namespace' 'set-option -g default-command "reattach-to-user-namespace -l bash"'
# Set the prefix to ^A.
unbind C-b
set -g prefix ^A
bind a send-prefix
# Next / Previous Window
bind-key C-a last-window
bind-key Space next-window
bind-key C-Space previous-window
# Moving Panes
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
# Split Panes
bind | split-window -h
bind _ split-window -v
unbind '"'
unbind '%'
bind -r < resize-pane -L 2
bind -r > resize-pane -R 2
bind -r + resize-pane -U 2
bind -r - resize-pane -D 2
# Reload config
bind r source-file ~/.tmux.conf
# Esc timeout
set-option -sg escape-time 50
# Use Mouses
set-option -g mouse off
# Make CTRL + Arrow Keys work
set-window-option -g xterm-keys on
# Titles
set-option -g set-titles on
set-option -g set-titles-string '[#S:#I #H] #T'
# Set window notifications
setw -g monitor-activity on
set-option -g visual-activity on
# Automatically set window title
setw -g automatic-rename off
# Highlight active window
set-window-option -g window-status-current-style fg=white,bg=red
# set-window-option -g window-status-current-bg red
# Fix SSH Crap
setenv -g SSH_AUTH_SOCK $HOME/.ssh/ssh_auth_sock
######################
### DESIGN CHANGES ###
######################
# panes
set -g pane-border-style fg=black
set -g pane-active-border-style fg=brightred
## Status bar design
# status line
set -g status on
set -g status-justify left
set -g status-style bg=default,fg=colour12
#set -g status-fg colour12
set -g status-interval 2
# messaging
set -g message-style fg=black,bg=yellow
#set -g message-fg black
#set -g message-bg yellow
set -g message-command-style fg=blue,bg=black
#set -g message-command-fg blue
#set -g message-command-bg black
#window mode
setw -g mode-style bg=colour6,fg=colour0
#setw -g mode-bg colour6
#setw -g mode-fg colour0
# loud or quiet?
set-option -g visual-activity off
set-option -g visual-bell off
set-option -g visual-silence off
set-window-option -g monitor-activity off
set-option -g bell-action none
set -g default-terminal "xterm-256color"
# The modes {
setw -g clock-mode-colour colour135
setw -g mode-style fg=colour196,bg=colour238,bold
#setw -g mode-attr bold
#setw -g mode-fg colour196
#setw -g mode-bg colour238
# }
# The panes {
set -g pane-border-style bg=colour235,fg=colour238
#set -g pane-border-bg colour235
#set -g pane-border-fg colour238
set -g pane-active-border-style bg=colour236,fg=colour51
#set -g pane-active-border-bg colour236
#set -g pane-active-border-fg colour51
# }
# The statusbar {
set -g status-position bottom
set -g status-style bg=colour234,fg=colour137,dim
#set -g status-bg colour234
#set -g status-fg colour137
#set -g status-attr dim
set -g status-left ''
set -g status-right '#[fg=colour244,bg=colour233,bold] #h #[fg=colour233,bg=colour241,bold] %Y-%m-%d #[fg=colour233,bg=colour245,bold] %H:%M:%S '
set -g status-right-length 50
set -g status-left-length 20
setw -g window-status-current-style bg=colour238,fg=colour81,bold
#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]#T#[fg=colour50]#F '
setw -g window-status-style bg=colour235,fg=colour138,none
#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]#T#[fg=colour244]#F '
setw -g window-status-bell-style bg=colour1,fg=colour255,bold
#setw -g window-status-bell-attr bold
#setw -g window-status-bell-fg colour255
#setw -g window-status-bell-bg colour1
# }
# The messages {
set -g message-style bg=colour166,fg=colour232,bold
#set -g message-attr bold
#set -g message-fg colour232
#set -g message-bg colour166
# }