The default escape-time of 500ms made it very annoying to use vim inside of tmux and 50ms seems to make vim responsive enough.
56 lines
2.1 KiB
Bash
56 lines
2.1 KiB
Bash
#
|
|
# Key bindings
|
|
#
|
|
bind-key C-b send-prefix
|
|
|
|
# Open new windows/panes with the path in current pane
|
|
bind c new-window -c '#{pane_current_path}'
|
|
bind | split-window -h -c '#{pane_current_path}'
|
|
bind - split-window -v -c '#{pane_current_path}'
|
|
|
|
bind x kill-pane
|
|
bind X kill-window
|
|
bind r source-file ~/.tmux.conf
|
|
bind . next-window
|
|
bind , previous-window
|
|
bind n command-prompt 'rename-window %%'
|
|
bind N command-prompt 'rename-session %%'
|
|
bind h select-pane -L
|
|
bind j select-pane -D
|
|
bind k select-pane -U
|
|
bind l select-pane -R
|
|
bind -r C-h resize-pane -L 5
|
|
bind -r C-j resize-pane -D 5
|
|
bind -r C-k resize-pane -U 5
|
|
bind -r C-l resize-pane -R 5
|
|
|
|
unbind-key -T copy-mode-vi MouseDragEnd1Pane # Stay in copy mode on drag end
|
|
|
|
#
|
|
# General
|
|
#
|
|
set -gs escape-time 50 # avoid delays with ESC in vim
|
|
set -g base-index 1 # start window numbering from 1
|
|
set -g default-terminal "screen-256color" # display 256 colors
|
|
set -g history-limit 20000 # remember longer history
|
|
setw -g automatic-rename on # automatically rename windows
|
|
setw -g mouse on # enable mouse support
|
|
setw -g pane-base-index 1 # start pane numbering from 1
|
|
|
|
# The shell will increment SHLVL by one when it is started -> unsetting this
|
|
# variable here removes any memory of nesting before tmux was executed and will
|
|
# cause shells to start with level 1 again within the session.
|
|
set-environment -gu SHLVL
|
|
|
|
#
|
|
# Style (status list, colors, ...)
|
|
#
|
|
source-file -q "$XDG_CONFIG_HOME/tmux/tmux-colors.conf"
|
|
|
|
# Fix for clipboard in vim running inside tmux:
|
|
# See http://www.economyofeffort.com/2013/07/29/reattach-to-user-namespace-the-fix-for-your-tmux-in-os-x-woes/
|
|
# See http://stackoverflow.com/a/40154047
|
|
# See https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard
|
|
if-shell 'test "$(uname)" = "Darwin"' \
|
|
'set -g default-command "reattach-to-user-namespace -l $SHELL"'
|
|
|