forked from syl20bnr/config
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.tmux.conf
130 lines (103 loc) · 3.65 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
# ----------------------------------------------------------------------------
# Settings
# ----------------------------------------------------------------------------
set -g default-shell /usr/bin/fish
set default-path "$PWD"
set -g default-terminal "screen-256color"
# Static window names but dynamic pane titles
set -g allow-rename off
set -g set-titles on
setw -g automatic-rename on
setw -g monitor-activity on
# start indexes at 1 instead of 0 for easy selection with keyboard
set -g base-index 1
setw -g pane-base-index 1
# enable utf8 support
set -g utf8
setw -g utf8 on
# timings
set -s escape-time 1
set -g repeat-time 9999
set -g display-time 1500
## set window notifications
set -g visual-activity on
set -g visual-content on
# ----------------------------------------------------------------------------
# Key Bindings
# ----------------------------------------------------------------------------
# remove default crappy key bindings
unbind C-b
# custom prefix key
set -g prefix C-a
bind C-a send-prefix
# vi mode ftw
setw -g mode-keys vi
# more vim like keys for selection
bind -t vi-copy 'v' begin-selection
bind -t vi-copy 'y' copy-selection
# better mnemonic for split keys
bind -r | split-window -h
bind -r - split-window -v
# vi like navigation
bind -r h select-pane -L
bind -r j select-pane -D
bind -r k select-pane -U
bind -r l select-pane -R
bind -r C-k select-window -t :-
bind -r C-j select-window -t :+
# vi like resizing
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
bind -r z resize-pane -Z
# to send same commands on all panes
bind -r s setw synchronize-panes
# reload tmux configuration inline
bind -r C-r source-file ~/.tmux.conf \; display "Configuration file reloaded!"
# detach
bind -r C-d detach
# kill the session
bind -r C-x kill-session
# ----------------------------------------------------------------------------
# Status bar
# ----------------------------------------------------------------------------
#source ~/.config/powerline/powerline/bindings/tmux/powerline.conf
set -g status-utf8 on
set -g status-position bottom
set -g status-interval 1
set -g status-justify centre
set -g status-left '#{?client_prefix,#[bright]#[bg=#cb4b16]#[fg=#000000] <P> #[bg=default] ,}#[bright]#[fg=#8e908c]S:#S #[default](W:#{session_windows}/P:#{window_panes}) |'
set -g status-right '| #(whoami)@#H | IP:#(ifconfig | grep "inet " | grep -v 127.0.0.1 | cut -d: -f2 | cut -d \\ -f1) | Local:%Y-%m-%d %H:%M'
set -g status-right-length 100
set -g status-left-length 120
## highlight active window
setw -g window-status-format ''
setw -g window-status-current-format '#[bright]#[fg=#4d4d4c][#F] #[bright]#[fg=colour64]#I-#W#[default]#[fg=#4d4d4c] / #[bright]#[fg=#3e999f]#P-#T'
# ----------------------------------------------------------------------------
# Colors
# ----------------------------------------------------------------------------
# A tomorrow-ish color theme
## set status bar
set -g status-bg default
set -g status-fg "#8e908c"
## highlight active window
setw -g window-status-current-attr dim
setw -g window-status-current-bg default
setw -g window-status-current-fg "#d6d6d6"
## highlight activity in status bar
setw -g window-status-activity-fg "#3e999f"
setw -g window-status-activity-bg "#4d4d4c"
## pane border and colors
set -g pane-active-border-bg default
set -g pane-active-border-fg "#3e999f"
set -g pane-border-bg default
set -g pane-border-fg "#d6d6d6"
set -g clock-mode-colour "#3e999f"
set -g clock-mode-style 24
set -g message-bg "#3e999f"
set -g message-fg "#ffffff"
set -g message-command-bg "#3e999f"
set -g message-command-fg "#ffffff"
set -g mode-bg "#3e999f"
set -g mode-fg "#ffffff"