-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.tmux.conf
156 lines (122 loc) · 2.52 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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
# Tmux config
# ============
# bindings {{{
unbind C-b
set -g prefix ^B
bind b send-prefix
# Bind appropriate commands similar to screen.
# lockscreen ^X x
unbind ^X
bind ^X lock-server
unbind x
bind x lock-server
# screen ^C c
unbind ^C
bind ^C new-window
unbind c
bind c new-window
# detach ^D d
unbind ^D
bind ^D detach
# displays *
unbind *
bind * list-clients
# next ^@ ^N sp n
unbind ^@
bind ^@ next-window
unbind ^N
bind ^N next-window
unbind " "
bind " " next-window
unbind n
bind n next-window
# title A
unbind A
bind A command-prompt "rename-window %%"
unbind P
bind P pipe-pane -o "cat >>~/#W.log" \; display "Toggled logging to ~/#W.log"
# other ^A
unbind ^A
# bind ^A last-window
unbind ^B
bind ^B last-window
# Toggle Max pane size
unbind ^M
bind-key ^M resize-pane -Z
# swap window backward
unbind ^T
bind-key ^T swap-window -t :-1
# prev ^H ^P p ^?
unbind ^H
bind ^H previous-window
unbind ^P
bind ^P previous-window
unbind p
bind p previous-window
unbind BSpace
bind BSpace previous-window
bind T run-shell tmux-toggle-prefix
bind S run-shell tmux-toggle-session
bind C run-shell tmux-win-cmd
unbind k
bind k new-window -n cht fzf-cheat
# windows ^W w
unbind ^W
bind ^W list-windows
unbind w
bind w list-windows
# quit \
unbind \
bind \ confirm-before "kill-server"
# kill K
unbind K
bind K confirm-before "kill-window"
# redisplay ^L l
unbind ^L
bind ^L refresh-client
unbind l
bind l refresh-client
# split -v |
unbind |
bind | split-window
# :kB: focus up
unbind Tab
bind Tab select-pane -t:.+
unbind BTab
bind BTab select-pane -t:.-
# " windowlist -b
unbind '"'
bind '"' choose-window
# move x clipboard into tmux paste buffer
bind C-p run "tmux set-buffer \"$(xclip -o)\"; tmux paste-buffer"
# move tmux copy buffer into x clipboard
bind C-y run "tmux save-buffer - | xclip -i"
# swap window
bind-key > swap-window -t :+
bind-key < swap-window -t :-
# }}} bindings
##### config
# ========
# commands
set -g default-command $SHELL
set -g default-shell $SHELL
set-option -g renumber-windows on
# part of tmux-sensible
# use 1 for base index
# set -g base-index 1
set -g base-index 0
##########
# Bindings
unbind r
bind r source-file ~/.tmux.conf \; display "Config Reloaded!"
source ~/.tmux
source ~/.tmux.local
# {{{ plugins
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
# https://github.com/tmux-plugins/tpm
run '~/.tmux/plugins/tpm/tpm'
# }}} plugins