-
Notifications
You must be signed in to change notification settings - Fork 0
/
tmux.conf
65 lines (53 loc) · 2.09 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
# Visual notification of activity in other windows
setw -g monitor-activity on
set -g visual-activity on
# Force a reload of the config file
unbind r
bind r source-file ~/.tmux.conf \; display "Reloaded!"
# Setting the delay between prefix and command
set -sg escape-time 1
# Enable Mouse Integration
set -g mouse on
# Set scrollback history to 10000 (10k)
set -g history-limit 10000
# Set window and pane index to 1 (0 by default)
set -g base-index 1
setw -g pane-base-index 1
set -g renumber-windows on
# Disable confirm before killing
bind x kill-pane
# Map vim movement keys as pane movement keys
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Resize panes using PREFIX H, J, K, L
bind H resize-pane -L 3
bind J resize-pane -D 3
bind K resize-pane -U 3
bind L resize-pane -R 3
# Split horiziontal and vertical splits, instead of % and "
# Also open them in the same directory
bind v split-window -h -c '#{pane_current_path}'
bind s split-window -v -c '#{pane_current_path}'
# Customization things
set -g default-terminal "screen-256color"
set -g status "on"
set -g status-position "top"
set -g status-right-length 60
set -g status-right '#[] [#S] %a %Y-%m-%d #[fg=yellow,bold]%H:%M#[default] '
set -g status-left-length 0
set -g status-left '' # no status-left bar
# Preserve working directory
bind % split-window -h -c "#{pane_current_path}"
bind '"' split-window -c "#{pane_current_path}"
bind c new-window -c "#{pane_current_path}"
# Use vim keybindings in copy mode
setw -g mode-keys vi
bind -T edit-mode-vi Up send-keys -X history-up
bind -T edit-mode-vi Down send-keys -X history-down
unbind -T copy-mode-vi Space ; bind -T copy-mode-vi v send-keys -X begin-selection
unbind -T copy-mode-vi Enter ; bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "reattach-to-user-namespace pbcopy"
unbind -T copy-mode-vi C-v ; bind -T copy-mode-vi C-v send-keys -X rectangle-toggle
unbind -T copy-mode-vi [ ; bind -T copy-mode-vi [ send-keys -X begin-selection
unbind -T copy-mode-vi ] ; bind -T copy-mode-vi ] send-keys -X copy-selection