/
.tmux.conf
106 lines (86 loc) · 3.11 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
set -g history-limit 10000
set -g base-index 1
setw -g pane-base-index 1
set -g renumber-windows on
# Allows for faster key repetition
set -s escape-time 0
# allows for passing modifiers like shift/ctrl xterm style
set-window-option -g xterm-keys on
unbind C-j
unbind C-w
unbind C-f
set-option -g prefix C-w
bind-key -n C-b send-prefix
# force a reload of the config file
unbind r
bind r source-file ~/.tmux.conf \; display "Reloaded!"
unbind '"'
unbind "'"
bind '"' split-window -h -c "#{pane_current_path}"
bind "'" split-window -v -c "#{pane_current_path}"
bind y set-window-option synchronize-panes
unbind 'down'
unbind 'left'
unbind 'right'
unbind 'up'
bind-key -r C-w last-window
# temporarily disabled to learn directional bindings
# bind-key -r w select-pane -t :.+
# bind-key -r W select-pane -t :.-
bind-key '.' choose-window
bind-key '>' choose-session
bind-key 'x' command-prompt
bind-key b break-pane
bind-key j command-prompt -p "join pane from:" "join-pane -h -s '%%'"
bind-key s command-prompt -p "send pane to:" "break-pane -t :"
# jump
bind-key -rn M-n select-pane -L # left
bind-key -rn M-i select-pane -R # right
bind-key -rn M-o select-pane -U # up
bind-key -rn M-e select-pane -D # down
# resize
bind -rn "C-M-n" resize-pane -L 1 # left
bind -rn "C-M-i" resize-pane -R 1 # right
bind -rn "C-M-o" resize-pane -U 1 # up
bind -rn "C-M-e" resize-pane -D 1 # down
# copy mode
bind-key o copy-mode
setw -g mode-keys emacs
bind-key -T copy-mode j send-keys -X history-top
bind-key -T copy-mode y send-keys -X start-of-line
bind-key -T copy-mode n send-keys -X cursor-left
bind-key -T copy-mode e send-keys -X cursor-down
bind-key -T copy-mode o send-keys -X cursor-up
bind-key -T copy-mode i send-keys -X cursor-right
bind-key -T copy-mode N send-keys -X previous-word
bind-key -T copy-mode I send-keys -X next-word
bind-key -T copy-mode O send-keys -X halfpage-up
bind-key -T copy-mode E send-keys -X halfpage-down
bind-key -T copy-mode "'" send-keys -X end-of-line
bind-key -T copy-mode J send-keys -X history-bottom
unbind-key -T copy-mode u
unbind-key -T copy-mode p
bind-key -T copy-mode u command-prompt -i -p "search down" "send -X search-forward-incremental \"%%%\""
bind-key -T copy-mode p command-prompt -i -p "search up" "send -X search-backward-incremental \"%%%\""
# C-s and C-r to cycle through results
bind-key -T copy-mode Space send-keys -X begin-selection
unbind-key -T copy-mode t
unbind-key -T copy-mode T
unbind-key -T copy-mode Enter
bind-key -T copy-mode t send-keys -X copy-pipe "xclip -sel clip -i"
bind-key h paste-buffer
# status / colors
set -g status-interval 30
set -g status-justify left
set -g status-left-length 40
set -g status-left '#H - '
set-option -g status-right '%Y-%d-%m %H:%M '
set-option -g status-right-length 70
set -g status-bg "#00e676"
set -g status-fg "#000000"
set-window-option -g window-status-current-style fg="#000000",bg="#ffd54f"
set -g window-status-activity-style fg="#eceff1",bg="#2196f3"
set -g pane-border-style fg="#37474f",bg="#ffffff"
set -g pane-active-border-style fg="#37474f",bg="#ffffff"
set -g message-style fg="#000000",bg="#00e676"
set-option -s set-clipboard off