unbind C-b
bind C-p last-window
bind p send-keys C-p
-bind C-l refresh-client
-bind l refresh-client
bind S split-window -v
bind | split-window -h
bind C-[ copy-mode
bind J select-pane -D
bind K select-pane -U
# Swap panes.
-bind w swap-pane
+bind o swap-pane -D
+bind C-o swap-pane -D
+bind O swap-pane -U
+bind w command-prompt -p "Select [<window>.]<pane> to swap:" 'swap-pane -s . -t %1'
+# Swap windows.
+bind W choose-window "swap-window -t '%%'"
# Show panes.
bind = display-panes
# Move the current pane into a separate window.
bind b break-pane
# Split another pane into this window.
-bind B command-prompt -p "Select [<window>.]<pane> to join:" 'join-pane -s %1'
+bind B command-prompt -p "Select <window>[.<pane>] to join:" 'join-pane -s %1'
# Split vertically.
bind C-\ split-window -v
# Next pane.
bind , select-layout tiled
# Simulate maximising the window.
bind / select-layout even-vertical \; swap-pane -s top \; resize-pane -D 9999
-# Show windows
-bind - list-windows
+# Select windows.
+bind - choose-window
+bind M-0 select-window -t 10
+bind M-1 select-window -t 11
+bind M-2 select-window -t 12
+bind M-3 select-window -t 13
+bind M-4 select-window -t 14
+bind M-5 select-window -t 15
+bind M-6 select-window -t 16
+bind M-7 select-window -t 17
+bind M-8 select-window -t 18
+bind M-9 select-window -t 19
# Set current window title.
bind t command-prompt -p "Set window's title to:" 'rename-window %1'
# Show clock.