-
Notifications
You must be signed in to change notification settings - Fork 1
/
tmux.conf
101 lines (79 loc) · 3.08 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
# Setting up the colors and copy/paste
set -g default-terminal "screen-256color"
# The following three are to get copy paste workign under OS/X
# make sure you run 'brew install reattach-to-user-namespace'
set-option -g default-command "reattach-to-user-namespace -l zsh"
bind C-c run "tmux save-buffer - | reattach-to-user-namespace pbcopy"
bind C-v run "tmux set-buffer $(reattach-to-user-namespace pbpaste); tmux paste-buffer"
# Set pane keys
#bind-key C-a last-windowset-option -g prefix C-a
# Make it use C-a, similar to screen..
unbind C-b
unbind l
set -g prefix C-a
# Reload key
bind r source-file ~/.tmux.conf \; display 'Reloaded!'
# Nested tmux
bind-key a send-prefix
# Allow windows to be different sizes for different clients if they aren't looking at the same window
setw -g aggressive-resize on
# Setting up VIM pane / window managment
unbind %
bind | split-window -h
bind - split-window -v
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# window navigation
bind-key -n M-C-h prev
bind-key -n M-C-l next
# fix wait time for escape (helps with tmux and vim)
set -s escape-time 0
# pane movement - send a pane from one window to another, and vice versa
# bind-key b command-prompt -p "join pane from:" "join-pane -s '%%'"
# bind-key s command-prompt -p "send pane to:" "join-pane -t '%%'"
# Easily jump back to the last active window
bind-key C-a last-window
# Resize panes any which like using VIM shortcuts
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
# history and mouse scrolling
set -g history-limit 100000
set -g mouse on
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'select-pane -t=; copy-mode -e; send-keys -M'"
bind -n WheelDownPane select-pane -t= \; send-keys -M
# change number for windows and panes
set -g base-index 1
setw -g pane-base-index 1
set -g renumber-windows on
# Setup status bar
set -g status-justify centre
set -g status-left-length 40
set -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P"
# Solaried Themeing
set-option -g status-bg colour235 #base02
set-option -g status-fg colour136 #yellow
set-option -g status-attr default
# default window title colors
set-window-option -g window-status-fg colour244
set-window-option -g window-status-bg default
set-window-option -g window-status-attr dim
# active window title colors
set-window-option -g window-status-current-fg colour166 #orange
set-window-option -g window-status-current-bg default
#set-window-option -g window-status-current-attr bright
# pane border
set-option -g pane-border-fg colour235 #base02
set-option -g pane-active-border-fg colour240 #base01
# message text
set-option -g message-bg colour235 #base02
set-option -g message-fg colour166 #orange
# pane number display
set-option -g display-panes-active-colour colour33 #blue
set-option -g display-panes-colour colour166 #orange
# clock
set-window-option -g clock-mode-colour colour64 #green
#set-option -g status-left '[Battery: #(/usr/local/bin/power.sh)] #[default] Windows:'