X-Git-Url: http://git.iain.cx/?p=profile.git;a=blobdiff_plain;f=.tmux.conf;h=2ac48a85204537e90350bcd7cff820564fc90842;hp=e383a3783a3c7bf8bc3f8900987153299cd356d8;hb=47ff5806af2ee0d85d1026cc6a1bd6219bdb9e26;hpb=048f167991e3e1c7c2e7f053fa7854ac803f48b8 diff --git a/.tmux.conf b/.tmux.conf index e383a37..2ac48a8 100644 --- a/.tmux.conf +++ b/.tmux.conf @@ -1,6 +1,10 @@ ################################################################################ # Options. ################################################################################ +# Start in home. The documentation says ~ is supported but tmux 1.7 +# barfs on it. +set -g default-path "$HOME" + # Use vi keys for scrolling etc. # Use lsk -t vi|emacs- to see binds in table choice, copy or edit. setw -g mode-keys vi @@ -37,6 +41,7 @@ bind C-[ copy-mode bind ] paste-buffer bind C-] paste-buffer bind _ setw monitor-activity +bind M-_ setw monitor-silence 10 bind * list-clients bind < command-prompt -p "Load buffer from file:" 'load-buffer %1' bind > command-prompt -p "Save buffer to file:" 'save-buffer %1' @@ -65,16 +70,18 @@ bind -r L next-window # Last window like Vim. bind ^ last-window bind C-^ last-pane +bind C-o last-pane # Top and bottom. bind J select-pane -D bind K select-pane -U # Swap panes. bind o swap-pane -D -bind -r C-o swap-pane -D bind -r O swap-pane -U bind w command-prompt -p "Select [.] to swap:" 'swap-pane -s . -t %1' # Swap windows. bind W choose-window "swap-window -t '%%'" +# Renumber windows. +bind M-w move-window -r -s : -t : # Show panes. bind = display-panes # Move the current pane into a separate window. @@ -134,7 +141,10 @@ bind { copy-mode -u bind '"' list-buffers \; command-prompt -p "Choose buffer to show:" 'show-buffer -b %1' bind "'" new-window -n "[buffer]" "cat > /dev/null" \; paste-buffer # Toggle mouse mode as it is useful despite the flaws listed above. -bind C-m set -g mouse-resize-pane \; set -g mouse-select-pane \; set -g mouse-select-window \; set -g mode-mouse +# As of tmux 1.7 mode-mouse has three possible values so we can no +# longer use an implied toggle. +bind C-m set -g mouse-resize-pane on \; set -g mouse-select-pane on \; set -g mouse-select-window on \; set -g mode-mouse copy-mode +bind M-m set -g mouse-resize-pane off \; set -g mouse-select-pane off \; set -g mouse-select-window off \; set -g mode-mouse off ################################################################################ # Fix missing binds in Vi modes. @@ -166,9 +176,11 @@ set -g display-panes-colour colour17 # Command entry. set -g message-bg colour90 set -g message-fg white +set -g message-command-bg colour88 +set -g message-command-fg white # Active pane set -g pane-active-border-bg default -set -g pane-active-border-fg white +set -g pane-active-border-fg colour31 # Inactive pane. set -g pane-border-bg default set -g pane-border-fg colour17 @@ -178,6 +190,14 @@ setw -g mode-fg white # Monitored windows (in reverse video). setw -g window-status-alert-bg red setw -g window-status-alert-fg white +# As of tmux 1.6 we can highlight different alerts. +setw -g window-status-bell-bg colour22 +setw -g window-status-bell-fg white +setw -g window-status-content-bg colour88 +setw -g window-status-content-fg white +setw -g window-status-content-attr none +setw -g window-status-activity-bg red +setw -g window-status-activity-fg white ################################################################################ # Caption settings.