-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.tmux.conf
133 lines (100 loc) · 3.6 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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
# 0 is too far from ` ;)
set -g prefix C-a
#set -g base-index 1
# Automatically set window title
set-window-option -g automatic-rename on
set-option -g set-titles on
#set -g default-terminal screen-256color
set -g status-keys vi
set -g history-limit 20000
setw -g mode-keys vi
setw -g monitor-activity on
bind-key v split-window -h
bind-key s split-window -v
bind-key J resize-pane -D 5
bind-key K resize-pane -U 5
bind-key H resize-pane -L 5
bind-key L resize-pane -R 5
bind-key M-j resize-pane -D
bind-key M-k resize-pane -U
bind-key M-h resize-pane -L
bind-key M-l resize-pane -R
# Vim style pane selection
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# Use Alt-vim keys without prefix key to switch panes
bind -n M-h select-pane -L
bind -n M-j select-pane -D
bind -n M-k select-pane -U
bind -n M-l select-pane -R
# Use Alt-arrow keys without prefix key to switch panes
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
# Shift arrow to switch windows
bind -n S-Left previous-window
bind -n S-Right next-window
# No delay for escape key press
set -sg escape-time 0
# Reload tmux config
bind r source-file ~/.tmux.conf
# THEME
set -g status-bg black
set -g status-fg white
set -g window-status-current-bg white
set -g window-status-current-fg black
set -g window-status-current-attr bold
set -g status-interval 60
set -g status-left-length 30
set -g status-left '#[fg=green](#S) #(whoami)'
set -g status-right '#[fg=yellow]#(cut -d " " -f 1-3 /proc/loadavg)#[default] #[fg=white]%H:%M#[default]'
unbind-key C-b
## backup prefix for chromebook, since it captures ctrl-space
set-option -g prefix2 "C-a"
bind-key "C-a" last-window
#set-window-option -g automatic-rename on
#set-window-option -g aggressive-resize on
#set-option -g base-index 1
#setw -g mode-mouse on
#set-option -g mouse-select-pane on
#bind-key | split-window -h
#bind-key - split-window -v
###CLIPBOARD selection integration.
###Requires prefix key before the command key
##Copy tmux paste buffer to CLIPBOARD
## bind C-c run "tmux show-buffer | xclip -i -selection clipboard"
## #Copy CLIPBOARD to tmux paste buffer and paste tmux paste buffer
## bind C-v run "tmux set-buffer -- \"$(xclip -o -selection clipboard)\"; tmux paste-buffer"
## setup tmux sessions like normal shells (make sure iTerm2 is set to xterm-256color)
#set-option -g default-terminal "screen-256color"
#set-option -g default-shell /bin/zsh
## use reattach-to-user-namespace if present to give tmux access to the system
## pasteboard (see: https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard)
##set-option -g default-command "reattach-to-user-namespace -l zsh 2>/dev/null || zsh"
## <shift>+r to relad config file
#bind-key R source-file ~/.tmux.conf \; display-message "Config reloaded..."
#set-window-option -g window-status-current-attr 'reverse'
### Vi Bindings ##
## tmux will automatically use vi key bindings in most places because $EDITOR is
## set to 'vim'. However, we still map a few other keys for things like pane
## navigation and resizing
## use "v" and "s" to do vertical/horizontal splits
#unbind-key %
## use vim style copy/paste keys
unbind p
bind p paste-buffer
## use the vim resize keys. the number at the end is how much the pane will be
## resized
#bind-key C-h select-pane -L
#bind-key C-j select-pane -D
#bind-key C-k select-pane -U
#bind-key C-l select-pane -R
## use the vim motion keys to move between panes
#bind-key h resize-pane -L 3
#bind-key l resize-pane -R 3
#bind-key j resize-pane -D 3
#bind-key k resize-pane -U 3
run-shell ~/tmux-yank/yank.tmux