-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy path.tmux.conf
97 lines (74 loc) · 2.2 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
# Sets -----------------------------------------
# Set default shell to zsh, rather than bash
# set -g default-shell /bin/zsh
# UTF-8 support
set -g status-utf8 on
# Start window index at 1
set -g base-index 1
# TODO: next line currently doesn't work
#set -g status-left ‘#[fg=blue]#H’
# Highlight active window
set-window-option -g window-status-current-fg black
set-window-option -g window-status-current-bg green
set-window-option -g window-status-current-attr dim
# Activity windows
set-window-option -g window-status-activity-fg yellow
set-window-option -g window-status-activity-bg black
set-window-option -g window-status-activity-attr dim
# Background windows
set-window-option -g window-status-fg green
set-window-option -g window-status-bg '#111111'
set-window-option -g window-status-attr dim
# Status line
set -g status-fg white
set -g status-bg '#111111'
set -g status-attr dim
# Set window notifications
setw -g monitor-activity on
set -g visual-activity on
# Automatically set window title
setw -g automatic-rename on
# Mouse interactions
set-option -g mouse-select-pane on
#set-option -g mouse-resize-pane on
#set-option -g mouse-select-window on
set-window-option -g mode-mouse on
set-option -g default-command "reattach-to-user-namespace -l bash"
# Custom keybindings --------------------------
# Rebind Ctrl-b access key to Ctrl-a like GNU Screen
unbind C-b
set-option -g prefix C-a
# Last active window
unbind l
bind C-a last-window
# Horizontal split
unbind '"'
bind s split-window -v
# Vertical split
unbind %
bind v split-window -h
# Use the vim motion keys to move between panes
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Forgiving/lenient shortcuts for previous and next window
bind p previous-window
bind c-p previous-window
bind n next-window
bind c-n next-window
# Pane resizing
bind - resize-pane -U 5
bind + resize-pane -D 5
bind > resize-pane -L 5
bind < resize-pane -R 5
# Vi bindings for copy mode
setw -g mode-keys vi
# TODO: escape is too slow, so disable for now
#unbind [
#bind Escape copy-mode
#unbind ]
#bind p paste-buffer
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection
bind-key -t vi-edit D delete-line