-
Notifications
You must be signed in to change notification settings - Fork 0
/
.tmux.conf
102 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
# C-z FTW
set -g prefix C-z
unbind C-b
bind C-z send-prefix
# term & shell
set -g default-terminal "tmux-256color"
set -g default-command "$SHELL"
# splitting
unbind %
bind-key h split-window -h
bind-key v split-window -v
# regular bindings
bind-key C-z last-window
bind-key C-n next-window
bind-key C-u next-window -a
bind-key C-p previous-window
bind-key K kill-window
bind-key z send-prefix
bind-key M set-window-option monitor-activity on
bind-key m set-window-option monitor-activity off
bind-key _ set-window-option monitor-silence 5
bind-key - set-window-option monitor-silence 0
bind-key C-j choose-window 'join-pane -s "%%"'
bind-key C-m select-pane -m
bind-key \` switch-client -t'{marked}'
bind-key < swap-window -t -1
bind-key > swap-window -t +1
bind-key C-s display-popup -E "tmux list-sessions | cut -d: -f1 | fzf --reverse | xargs tmux switch-client -t"
# bindings for windows > 9
bind-key j select-window -t :10
bind-key k select-window -t :11
bind-key l select-window -t :12
bind-key a select-window -t :13
bind-key b select-window -t :14
# copy/paste
bind-key ( copy-mode
bind-key C-y paste-buffer
bind-key -T copy-mode M-w send-keys -X copy-pipe-and-cancel "DISPLAY=:0 xclip -i -sel clipboard > /dev/null"
bind-key M-y run-shell "xclip -o | tmux load-buffer -b xclip - ; tmux paste-buffer -b xclip -d"
# # utf-8
# set-option -g status-utf8 on
# set-window-option -g utf8 on
# ssh agent
set -g update-environment "DISPLAY SSH_ASKPASS SSH_AGENT_PID SSH_CONNECTION WINDOWID XAUTHORITY"
setenv -g SSH_AUTH_SOCK $HOME/.ssh/ssh_auth_sock.$HOSTNAME
# look and feel
set -g history-limit 100000
set -g status-interval 5
set -g status-left '#[fg=colour20,bold,bg=colour118]#(~/bin/home/maildir-new.py)'
set -g status-right "#[fg=colour232,bold,bg=colour72]#(sensors 2> /dev/null | awk /'^Core 0/{print $3}') #(cut -d ' ' -f 1-3 /proc/loadavg)#[fg=colour20,bold,bg=colour202][#S@#h]"
setw -g alternate-screen off
set -g allow-rename on
set -g set-titles off
setw -g mode-style bg=colour160
setw -g status-style bg=colour235,fg=colour250
setw -g status-left-style bg=colour16,fg=colour255,bold
setw -g window-status-format "#{s/..//:window_index}#W#F"
setw -g window-status-current-format "#{s/..//:window_index}#W#F"
setw -g window-status-separator " "
setw -g window-status-style bg=colour235,fg=colour250
setw -g window-status-current-style bg=colour45,fg=colour232,bold
setw -g window-status-bell-style bg=colour196,fg=colour255,bold
setw -g window-status-activity-style fg=colour46,bg=colour232
setw -g xterm-keys on
setw -g automatic-rename off
# Default session
#new -d -s "main"
# activity/bell
#set -g bell-on-alert on
setw -g monitor-activity off
setw -g monitor-silence 0
set -g visual-activity off
set -g visual-silence off
set -g activity-action any
# terminal-overrides
set -as terminal-overrides ',*:smxx=\E[9m'
set -as terminal-overrides ',*:sitm=\E[3m'
## plugins via tpm
# extrakto
set -g @plugin 'sdelafond/extrakto'
set -g @extrakto_split_direction 'v'
set -g @extrakto_split_size 8
set -g @extrakto_clip_tool "~/bin/tmux-yank.sh"
set -g @extrakto_grab_key 'ctrl-r'
set -g @extrakto_grab_area 'recent'
set -g @extrakto_insert_key 'ctrl-e'
set -g @extrakto_edit_key 'ctrl-o'
run /usr/share/tmux-plugin-manager/tpm