-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
tmux.conf
161 lines (139 loc) · 6.7 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
157
158
159
160
161
###################################################################################################
###################################################################################################
### tmux Configuration
###
### Author: Stanley Chan
### Github: https://github.com/Happy-Dude
### Version: 12 April 2012
###
### Based on configurations from:
### Eric Harmon: https://github.com/eharmon
### Brandur: http://mutelight.org/articles/practical-tmux
### Cody: http://blog.hawkhost.com/2010/07/02/tmux-%E2%80%93-the-terminal-multiplexer-part-2/
### Alex Young: http://alexyoung.org/2011/12/19/build-an-ide-with-tmux-and-vim/
### Justin Lilly: http://justinlilly.com/dotfiles/tmux.html
###################################################################################################
###################################################################################################
### Character pair Replaced with
# #(shell-command) First line of the command’s output
# #[attributes] Colour or attribute change
# #H Hostname of local host
# #F Current window flag
# #I Current window index
# #P Current pane index
# #S Session name
# #T Current window title
# #W Current window name
# ## A literal ‘#’
### Color Scheme Designer suggestions: http://colorschemedesigner.com/
### Eric's #1B7CE0 as the base color
##### ##### ##### ##### ##### ##### #####
##### ##### Blue Background (Active Window)
##### [#1B7CE0] [#3970A8] [#094C92] [#529FF0] [#7CB4F0]
#####
##### ##### Triad Colors:
##### Darker Orange (Statusbar Right)
##### [#FF5E0C] [#BF6537] [#A63A04] [#FF8649] [#FFA679]
##### Lighter Yellow
##### [#FFC70C] [#BFA037] [#A68104] [#FFD549] [#FFE079]
#####
##### ##### Accented Analogic Colors:
##### Complement Orange
##### [#FF9E0C] [#BF8837] [#A66504] [#FFB649] [#FFC979]
##### Secondary Blue
##### [#3729E4] [#4A42AB] [#170D94] [#685DF2] [#8D85F2]
##### Secondary Orange
##### [#FFC70C] [#BFA037] [#A68104] [#FFD549] [#FFE079]
##### Analogic (Green) (039264 - Statusbar Left)
##### [#0BE19B] [#30A981] [#039264] [#45F0B8] [#72F0C7]
#####
##### ##### ##### ##### ##### ##### #####
##### ##### Silvery-White Text (Active Window)
##### [#1CCCCCC] [#999999] [#854242] [#E5E5E5]
#####
##### ##### Triad Colors:
##### Grey-White (Statusbar Right)
##### [#7A7A7A] [#5C5C5C] [#285050] [#BDBDBD]
##### Dimmed-Silvery White
##### [#BEBEBE] [#8F8F8F] [#677C3E] [#DFDFDF]
#####
##### ##### Accented Analogic Colors:
##### Complement Light-Grey
##### [#A3A3A3] [#7A7A7A] [#356A35] [#D1D1D1]
##### Secondary Silvery-White
##### [#1CCCCCC] [#999999] [#856042] [#E5E5E5]
##### Analogic (Grey) (D1D1D1 - Statusbar Left)
##### [#A3A3A3] [#7A7A7A] [#356A35] [#D1D1D1]
# Set the default terminal string
set-option -g default-terminal "screen-256color"
# Rebind action key; default is C-b
# Compromise: C-b is used by certain apps; C-q should be okay...
# Wanted to bind to capital 'B', but didn't work?
#set-option -g prefix C-a
set-option -g prefix C-q
unbind-key C-b
bind-key C-q send-prefix
# Enable titles and configure them
set-option -g set-titles on
set-option -g set-titles-string "#(whoami)@#H: #(echo $PWD) \"#S\" (#W)#F [#I:#P]"
# Agressive resize
set-window-option -g aggressive-resize on
# Faster command sequences; tmux waits for an escape sequence -- get rid of it
# Realization: with action key mapped to capitals, its hard to follow up gracefully...
#set-option -s escape-time 0
# Let's get 10,000 lines of history
set-option -g history-limit 100000
# Set the lock command to a "screensaver" of sorts (start with lock-server command)
set-option -g lock-command "read -p 'Someone else has attached to this terminal, and you have been detached. Press any key to reattach.'"
# Allow xterm scrollback, while keeping the standard tmux overrides
set-option -g terminal-overrides "xterm*:smcup@:rmcup@,*88col*:colors=88,*256col*:colors=256,xterm*:XT"
# Set the statusbar options
set-option -g status-utf8 # Statusbar in UTF-8
set-option -g status-interval 60 # Redraw statusbar every 60 seconds; default is 15
set-option -g status-bg "#CCCCCC" # Eric's pretty colors
set-option -g message-bg "#CCCCCC"
set-option -g status-left "#[fg=#D1D1D1,bg=#039264]⡇\"#S\"⡇#[fg=#CCCCCC,bg=#333333,bold]#[default]" # Set left information text of statusbar; Display hostname of localhost
set-option -g status-right "#[fg=#BEBEBE,bg=#FF5E0C]⡇#(whoami)@#H⡇#[default]" # Set left information text of statusbar; Display hostname of localhost
set-option -g status-right-length 50 # Maximum characters to display on right info: 25
#set-option -g status-left-length 150 # Maximum characters to display on right info: 150; gets rid of a statusbar-no-stretching problem
# Set the window styles in the status
set-window-option -g utf8 on # Enable UTF-8
set-window-option -g window-status-format " #W[#I:#P]#F " # Window [number : pane] Flag
set-window-option -g window-status-current-format " #W[#I:#P] " # Window [number : pane]
set-window-option -g window-status-current-attr bold
set-window-option -g window-status-current-bg "#1B7AE0" # Eric's pretty colors
set-window-option -g window-status-current-fg white
# Set window notifications
set-window-option -g monitor-activity on
set-option -g visual-activity on
# Clock settings; cyan looks nice with colorscheme and 24-hour mode makes the days look longer :)
set-window-option -g clock-mode-colour cyan
set-window-option -g clock-mode-style 24
# Set window title automatically
set-window-option -g automatic-rename
# Shut off automatic window naming, we're handling this in zsh (and better)
#set-window-option -g automatic-rename off
### Stan: we're not ready for this yet... My zsh learning is not complete [~_~]...
# Rebind pane split shortcuts
unbind % # Remove default binding for splitting vertically
unbind '"' # Remove default binding for splitting horizontally
bind-key - split-window -v # Horizontal split
bind-key | split-window -h # Vertical split
# Vi(m)-like keybindings; movements bounded to hjkl
set-window-option -g mode-keys vi
bind-key h select-pane -L
bind-key j select-pane -D
bind-key k select-pane -U
bind-key l select-pane -R
# Enable mouse support
set-option -g mode-mouse on
set-option -g mouse-utf8 on
set-window-option -g mouse-select-window on
set-window-option -g mouse-select-pane on
set-window-option -g mouse-resize-pane on
# Eric's bindings with Meta key -- need to find out more about this; maybe I won't have conflicts..?
# Key bindings
# M = option with Terminal.app set to 'Use option as meta key', this prevents stomping most application's shortcuts
#bind-key -n -r M-p previous-window
#bind-key -n -r M-n next-window
#bind-key -n -r M-s new-window