# vim: filetype=tmux # # More settings are in common.nix # # Automatically set window title set-window-option -g automatic-rename on set-option -g set-titles on set -g xterm-keys on setw -g mouse on setw -g monitor-activity on ## Panes # Split panes bind-key | split-window -h bind-key - split-window -v # Send/join panes bind-key j command-prompt -p "join pane from:" "join-pane -s '%%'" bind-key s command-prompt -p "send pane to:" "join-pane -t '%%'" # 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-vim capitalized keys without prefix key to resize panes bind -n M-H resize-pane -L bind -n M-J resize-pane -D bind -n M-K resize-pane -U bind -n M-L resize-pane -R # Shift arrow to switch windows bind -n S-Left previous-window bind -n S-Right next-window # Set current window pane to 80 columns bind-key E resize-pane -x 80 # cycle pane layout bind-key N next-layout bind-key P previous-layout # Toggle synchronizing panes bind-key y setw synchronize-panes ## Text manipulation # vim-like copy/paste setw -g mode-keys vi bind [ copy-mode bind ] paste-buffer # copy/paste with xclip bind-key -Tcopy-mode-vi y send-keys -X copy-pipe-and-cancel 'xclip -sel clip -i' # select buffer to paste from bind Space choose-buffer ## Meta # Reload tmux config bind r source-file ~/.tmux.conf # status line text set -g status-left-length 30 set -g status-left ' {#(wemux status_users)}@#(hostname) | ' set -g status-right '~%Y.%m.%d..%H.%M' # white-ish background with dark-grey text set -g status-style bg=colour0,fg=colour13 # highlight current window set -g window-status-current-style fg=colour0,bg=colour13 set -g window-status-format '#I) #W ' set -g window-status-current-format '#I) #W '