-
Notifications
You must be signed in to change notification settings - Fork 0
/
.tmux.conf
85 lines (66 loc) · 2.5 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
# Replace split-window binding
unbind %
bind | split-window -h -c '#{pane_current_path}'
bind - split-window -v -c '#{pane_current_path}'
bind c new-window -c '#{pane_current_path}'
# Set that stupid Esc-Wait off, so VI works again
set-option -sg escape-time 0
# Change terminal
# set -g default-terminal "screen-256color"
# And pass sequences with modifiers xterm compatible
setw -g xterm-keys on
# Disable the mouse
set -g mouse off
# Increase scroll history limit
set -g history-limit 10000
# Set window encoding to utf8
# set-window-option -g utf8 on
# Easy send and join panes
bind-key j command-prompt -p "join pane from:" "join-pane -s '%%'"
bind-key s command-prompt -p "send pane to:" "join-pane -t '%%'"
# Reload config
bind R source-file ~/.tmux.conf \; display-message "Configuration reloaded..."
# Quick process overview
bind '~' split-window "htop || top"
# Toggle synchronize panels
bind S set-window synchronize-panes
# Pretty status line
set -g status-style bg=black,fg=default
set -g status-left '#[fg=yellow]#S'
set -g status-right '#[fg=yellow]#(acpi -b | cut -d" " -f4 | sed 's/,$//') #[fg=default](#(date "+%%a, %%Y-%%m-%%d %%H:%%M")) #[fg=yellow]#(cat /proc/loadavg | cut -d" " -f1-3) '
set -g status-justify centre
# Highlight active window / pane
set-window-option -g window-status-current-style fg=blue,bg=black
set-option -g pane-active-border-style fg=blue
# Set window notifications
# set -g visual-activity off
# set-window-option -g monitor-activity on
# set-window-option -g window-status-activity-fg black
# set-window-option -g window-status-activity-bg yellow
# Remove the window flags from the status line
set-window-option -g window-status-current-format '#I:#W'
set-window-option -g window-status-format '#I:#W'
# Disable the automatic renaming of the window
set -g set-titles off
set-window-option -g automatic-rename off
# Disable repeat in movement
bind-key Up select-pane -U
bind-key Down select-pane -D
bind-key Left select-pane -L
bind-key Right select-pane -R
# Window movement with SHIFT + Arrow
bind-key -r S-Left select-window -p
bind-key -r S-Right select-window -n
# Switch resize setpsize
bind-key -r M-Up resize-pane -U 3
bind-key -r M-Down resize-pane -D 3
bind-key -r M-Home resize-pane -L 3
bind-key -r M-Right resize-pane -R 3
# Move vim like copy mode
# 1) Ctrl+b, [ to enter the copy mode
# 2) v to start the selection
# 3) y to capture the string and leave the copy mode
# 4) Ctrl+b, p to paste the text
set-window-option -g mode-keys vi
unbind p
bind p paste-buffer