43 lines
1.3 KiB
Bash
43 lines
1.3 KiB
Bash
# set prefix to C-z
|
|
set -g prefix C-z
|
|
unbind C-b
|
|
bind C-z send-prefix
|
|
|
|
# enable mouse support
|
|
set -g mouse on
|
|
|
|
# open new panes in current directory
|
|
bind % split-window -h -c "#{pane_current_path}"
|
|
bind '"' split-window -v -c "#{pane_current_path}"
|
|
|
|
# vim-like pane navigation
|
|
bind h select-pane -L
|
|
bind j select-pane -D
|
|
bind k select-pane -U
|
|
bind l select-pane -R
|
|
# resizing
|
|
bind -r C-h resize-pane -L
|
|
bind -r C-j resize-pane -D
|
|
bind -r C-k resize-pane -U
|
|
bind -r C-l resize-pane -R
|
|
bind -r M-h resize-pane -L 5
|
|
bind -r M-j resize-pane -D 5
|
|
bind -r M-k resize-pane -U 5
|
|
bind -r M-l resize-pane -R 5
|
|
|
|
set -g history-file ~/.local/state/tmux_history
|
|
|
|
# plugins
|
|
set-option -g @plugin 'tmux-plugins/tpm'
|
|
set-option -g @plugin 'noscript/tmux-mighty-scroll'
|
|
set-option -g @mighty-scroll-by-line 'man less pager fzf emacs emacsclient'
|
|
|
|
# install/update tpm
|
|
if-shell "test ! -d ~/.config/tmux/plugins/tpm" {
|
|
run-shell 'git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm'
|
|
}
|
|
# start tpm
|
|
run-shell '~/.config/tmux/plugins/tpm/tpm'
|
|
# install and update plugins in background
|
|
run-shell -b '($TMUX_PLUGIN_MANAGER_PATH/tpm/bin/install_plugins && $TMUX_PLUGIN_MANAGER_PATH/tpm/bin/clean_plugins && $TMUX_PLUGIN_MANAGER_PATH/tpm/bin/update_plugins all && $TMUX_PLUGIN_MANAGER_PATH/tpm/scripts/source_plugins.sh) > /dev/null'
|