-
Notifications
You must be signed in to change notification settings - Fork 1
/
tmux.conf
118 lines (88 loc) · 3.18 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
# 256 colors by default
#set -g default-terminal "screen-256color"
# enable mouse for 2.1 and up
set -g mouse on
# enable mouse for the old ancients, i.e. here
#set -g mouse-select-window on
#set -g mouse-select-pane on
#set -g mouse-resize-pane on
# reduce escape time to reduce escape delay
# https://github.com/neovim/neovim/issues/2035
set -sg escape-time 10
# enable focus-events for nvim and make 'autoread' better
set-option -g focus-events on
# override RGB settings for nvim and other applications
# set-option -sa terminal-overrides ',xterm-256color:RGB'
# move customize options from C-b C to make space for same folder
bind O customize-mode
unbind C
bind C new-window -c "#{pane_current_path}"
# remap prefix from C-b to C-M-a
#unbind C-b
#set-option -g prefix C-M-a
#bind-key C-M-a send-prefix
# split panes with | and -, with same window
unbind '%'
bind | split-window -h -c "#{pane_current_path}"
unbind '"'
bind - split-window -v -c "#{pane_current_path}"
# reload conf
bind r source-file ~/.tmux.conf
# switch panes with prefix
bind l select-pane -R
bind h select-pane -L
bind j select-pane -U
bind k select-pane -D
# switch panes without prefix
bind -n M-s select-pane -R
bind -n M-h select-pane -L
bind -n M-n select-pane -U
bind -n M-t select-pane -D
######################
### DESIGN CHANGES ###
######################
# panes
set -g pane-border-style fg=colour238,bg=colour235
set -g pane-active-border-style fg=colour51,bg=colour236
## Status bar design
# status line
set -g status-justify left
set -g status-style bg=default,fg=colour12
set -g status-interval 2
# messaging
set -g message-style fg=black,bg=yellow
set -g message-command-style fg=blue,bg=black
# window status
setw -g window-status-format " #F#I:#W#F "
setw -g window-status-current-format " #F#I:#W#F "
setw -g window-status-format "#[fg=magenta]#[bg=black] #I #[bg=cyan]#[fg=colour8] #W "
setw -g window-status-current-format "#[bg=brightmagenta]#[fg=colour8] #I #[fg=colour8]#[bg=colour14] #W "
setw -g window-status-current-style bg=colour0,fg=colour11,dim
setw -g window-status-style bg=green,fg=black,reverse
# Info on left (I don't have a session display for now)
set -g status-left ''
# 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 "screen-256color"
setw -g clock-mode-colour colour135
# window mode
setw -g mode-style bg=colour6,fg=colour0,bold
# statusbar
set -g status-position bottom
set -g status-style bg=colour234,fg=colour137,dim
set -g status-left ''
set -g status-right '#[fg=colour233,bg=colour241,bold] %d/%m #[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 fg=colour81,bg=colour238,bold
setw -g window-status-current-format ' #I#[fg=colour250]:#[fg=colour255]#W#[fg=colour50]#F '
setw -g window-status-style fg=colour138,bg=colour235,none
setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '
setw -g window-status-bell-style bold,fg=colour255,bg=colour1
# }
# The messages {
set -g message-style bold,fg=colour232,bg=colour166